Commit Graph

984 Commits

Author SHA1 Message Date
Etan Kissling 2172e248aa
bump `nim-web3` to `ab3dfabea24dda4771afcb9c0df1607c0eb75602` (#5351)
- add `{.raises.}` annotation to `writeValue`
- add EIP-4844 fields to `TransactionObject`
2023-08-25 00:16:15 +00:00
Tanguy 36413c8f21
Bump libp2p for gossipsub improvements (#5229)
* Bump libp2p

* Add bandwidthEstimate param

* Fix typo and type

* Add config for light client

* Fix unit

* Add debug prefix

---------

Co-authored-by: Jacek Sieka <jacek@status.im>
Co-authored-by: diegomrsantos <diegomrsantos@gmail.com>
Co-authored-by: Diego <diego@status.im>
2023-08-24 16:04:19 +02:00
Jacek Sieka 0043a07c6f
NimYAML: bump to 1.1.0 (#5346)
We were using a status-based fork with additional Nim 1.2 support -
should not needed anymore so this PR bumps it to a clean upstream
version
2023-08-24 16:01:34 +02:00
Etan Kissling d28facf4c4
bump `nim-json-rpc` to `60c4c9b5f28b530d5d89fd14c337af1d86390a82` (#5341)
- fix router example
- fix ws server param type
- improve RPC client logging
2023-08-23 19:36:32 +03:00
Etan Kissling cf3fd7d811
bump `nim-confutils` to `674c9e4c8e0cad2b7193cc9a59c12d39a397750f` (#5330)
- explicitly initialize `result`
2023-08-20 12:46:45 +02:00
Etan Kissling 474d9a3f20
bump `nim-confutils` to `d784b823be28532aadd77af5c983b6ba18cf33d8` (#5329)
- fail on error while processing `secondarySources`
- add `{.raises.}` annotation to `writeValue`
2023-08-20 10:10:15 +00:00
Etan Kissling b4b40fa7d2
bump `nim-chronicles` / `nim-json-serialization` (#5319)
* bump `nim-chronicles` to `71556f84af16cd275a8ae4c2390060481c6fedf7`

- remove Nim 1.2 and 1.4 support; test Nim 2.0 in CI
- suppress some more `IOError` when logging

* bump `nim-json-serialization` to `85b7ea093cb85ee4f433a617b97571bd709d30df`

- add `readValue` implementations for case objects
- add `{.raises.}` annotation to `writeValue`
2023-08-20 02:24:03 +00:00
Etan Kissling a2f85e4b67
bump `nim-ssz-serialization` to `947f39fd34f3e73dc5b9465600e84ab98e848a56` (#5327)
- remove SingleMemberUnion read/write support
- note upstream Nim tracking bug
- remove rest of SingleMemberUnion
- remove spurious `{.raises.}`
2023-08-20 01:26:13 +02:00
Etan Kissling ad60ba027d
bump `nim-eth` to `894ec07d9f977a5ef9487630b71764df9163982f` (#5325)
- fix `{.raises.}` annotation to `writeValue`
2023-08-19 20:34:29 +00:00
Etan Kissling 82037fab54
bump `nim-serialization` to `4bdbc29e54fe54049950e352bb969aab97173b35` (#5322)
- add `{.raises.}` annotation to `writeValue`
2023-08-19 14:17:27 +00:00
tersec 6fd4983f6b
EIP-4788/parentBeaconBlockRoot fixes (#5318) 2023-08-19 08:38:17 +00:00
Jacek Sieka 5b879e3bc2
blscurve: bump for cleanups (#5311) 2023-08-18 01:01:03 +00:00
Jacek Sieka a150bc93a6
blst: 0.3.11 (#5300)
```
Essential changes:

    security bugfix in Go bindings
    run-time switch in portable build
    no-std support [exercised with limited stack size of 56K]
    serde support
blst_miller_loop_n interface, with parallelized Rust and Go
counterparts
    optional blst_fr_pentaroot subroutine
    Emscripten bindings
    hardened security on non-asm platforms
```
2023-08-16 18:13:58 +00:00
Jacek Sieka ddddfc41aa
bearssl: bump to 0.2.1 (#5298) 2023-08-16 15:42:01 +00:00
Jacek Sieka b39e71335d
ssz: bump for 10% hash_tree_root perf increase, json loading fix (#5292)
* move file loading out of timed ncli section to focus benchmark on
deserialization rather than disk loading
* JSON loading fix included in bump, but does not practically happen
since we generally don't load hashlist from JSON
2023-08-15 13:28:33 +00:00
Eugene Kabanov 255131d331
Bump chronos. (#5281)
Add current/last connection query to the connection information.
2023-08-15 13:14:34 +02:00
Jacek Sieka 3c9fc49411
reduce ncli/research imports (#5275)
* reduce ncli/research imports

avoids ssl, most of chronos etc, speeds up compiles

* copyright
2023-08-10 14:52:49 +02:00
Jacek Sieka a154a42205
bump ssz (small speedup) (#5282) 2023-08-09 19:40:57 +00:00
tersec 8e398001fe
bump nimcrypto to f118a5f86b04fbfd388b584d749f93bb3795f88f (#5279) 2023-08-09 06:40:03 +00:00
Etan Kissling 2b57a221de
bump `nim-blscurve` to `337ab727eb8a38a0a71725f6f01ce55563f355c0` (#5274)
- bump blst
- add sig aggregation bench
- allow subtracting from aggregate for when participation is high
- add `{.push: raises: [].}` annotation
2023-08-08 12:20:08 +00:00
andri lim e194d7b4ab
bump ssz-serialization to 4edfffe2b8d338444ef0b754954fba3b9fe78b9d (#5266) 2023-08-07 07:45:34 +00:00
Etan Kissling f0774564a8
bump `nim-web3` to `04f56c593a035af1b7bebdc726543a2a73826412` (#5241)
- fix `TransactionObject` type up through mainnet
- fix `Quantity` parsing on 32-bit platform
2023-08-03 17:18:57 +00:00
Jacek Sieka b8a32419b8
async batch verification (+40% sig verification throughput) (#5176)
* async batch verification

When batch verification is done, the main thread is blocked reducing
concurrency.

With this PR, the new thread signalling primitive in chronos is used to
offload the full batch verification process to a separate thread
allowing the main threads to continue async operations while the other
threads verify signatures.

Similar to previous behavior, the number of ongoing batch verifications
is capped to prevent runaway resource usage.

In addition to the asynchronous processing, 3 addition changes help
drive throughput:

* A loop is used for batch accumulation: this prevents a stampede of
small batches in eager mode where both the eager and the scheduled batch
runner would pick batches off the queue, prematurely picking "fresh"
batches off the queue
* An additional small wait is introduced for small batches - this helps
create slightly larger batches which make better used of the increased
concurrency
* Up to 2 batches are scheduled to the threadpool during high pressure,
reducing startup latency for the threads

Together, these changes increase attestation verification throughput
under load up to 30%.

* fixup

* Update submodules

* fix blst build issues (and a PIC warning)

* bump

---------

Co-authored-by: Zahary Karadjov <zahary@gmail.com>
2023-08-03 11:36:45 +03:00
tersec 0a4036baee
bump nim-eth to d217d309eb12e39d2a642feae1d9d27157b88352 (#5237) 2023-08-03 02:13:36 +00:00
henridf 28194468c9
Rename "data gas" to "blob gas" (#5216)
* Rename data gas to blob gas

* Update vendor/nim-eth and vendor/nim-web3
2023-08-02 22:07:57 +00:00
Etan Kissling 32e8bfe911
bump `nim-confutils` to `dbe8d61f7fbb1cb9d74b38f9012406c8071aa9e9` (#5228)
- return empty completion lines on unsupported `COMP_POINT`
- require `secondarySources` to be `gcsafe`
2023-08-01 01:23:55 +00:00
Etan Kissling 66160d986f
bump `gnosis-chain-configs` to `b90374a1c63703db8235fcdb65aff2e909bc42b5` (#5227)
- fix: bootstrap_nodes.txt
2023-08-01 01:23:46 +00:00
tersec 909a7c2d07
use v1.4.0-beta.1 consensus spec tests (#5230) 2023-07-31 21:51:06 +00:00
Jacek Sieka e8379389e7
speed up state/block loading (#5207)
* speed up state/block loading

When loading blocks and states from db/era, we currently redundantly
check their CRC32 - for a state, this costs 50ms of loading time
presently (110mb uncompressed size) on a decent laptop.

* remove `maxDecompressedDbRecordSize` - not actually used on recent
data since we store the framed format - also, we're in luck: we blew
past the limit quite some time ago
* fix obsolete exception-based error checking
* avoid `zeroMem` when reading from era store

see https://github.com/status-im/nim-snappy/pull/22 for benchmarks

* bump snappy
2023-07-26 10:47:46 +03:00
Eugene Kabanov df80ae68fa
REST server metrics and connections API endpoints. (#5193)
* Add new REST endpoints to monitor REST server connections and new chronos metrics.

* Bump head versions of chronos and presto.

* Bump chronos with regression fix.

* Remove outdated tests which was supposed to test pipeline mode.

* Disable pipeline mode in resttest.

* Update copyright year.

* Upgrade test_signing_node to start use AsyncProcess instead of std library's osproc.
Bump chronos to check graceful shutdown.

* Update AllTests.

* Bump chronos.
2023-07-21 16:54:09 +02:00
Jacek Sieka bf400d37ab
bump: ssz, stew
* https://github.com/status-im/nim-ssz-serialization/pull/53
* avoid some `zeroMem`
2023-07-21 15:21:59 +02:00
Etan Kissling 2954e7fac7
bump `nim-web3` to `9795b85a390ae02a931274ae92b3e67c8df6a0b8` (#5201)
- add `mixHash`, `withdrawals` fields to `BlockObject`
2023-07-20 02:02:12 +02:00
tersec c549fe6a65
bump nim-json-rpc to 32200345f80a3b5f72e15d1b4e9363363d95a1cd (#5187) 2023-07-12 22:44:17 +02:00
Etan Kissling 7fc99ff040
bump `gnosis-chain-configs` to `9f01035125054f16022929116dfbd0190f7bafd7` (#5175)
- Adding new bootnodes
2023-07-10 15:46:57 +00:00
Jacek Sieka b2c421f5d6
eth: bump (#5165)
> sqlite3: better error message
  > Use results Opt for discv5 getNode and resolve
  > implement EIP-4844: Shard Blobs Transactions
  > Enable tests with also json sink and fix failures
  > Style fixes and comment improvements on uTP code
  > fixes related to stint breaking changes
  > Fix potentential uTP socket leak for socket in SynSent state
  > Avoid double socket destroy on timed-out uTP SYN-ACK
  > remove stddefects import
  > use correct exception in `parseCmdArg`
2023-07-06 10:20:06 +00:00
Jacek Sieka fa481dcb14
small bumps (#5164)
1.2/1.4 removals and cleanups
2023-07-06 10:16:27 +00:00
Jacek Sieka 1e227b2704
stew without results (#4862)
https://github.com/status-im/nim-stew/pull/185

also an assortment of other stew fixes
2023-07-05 16:06:45 +00:00
tersec b4c4f0955e
https://github.com/ethereum/consensus-specs/pull/3421 https://github.com/ethereum/execution-apis/pull/420 (#5147) 2023-06-30 08:14:20 +00:00
Etan Kissling e8f3bfdb08
bump `nimbus-build-system` to `fe9bc3f3759ae1add6bf8c899db2e75327f03782` (#5132)
- switch to Nim `v1.6.14`
2023-06-29 16:06:14 +00:00
tersec 66febf2444
bump nim-blscurve to b71a16312699f6d26dee6a710b4aafea6ee5680d (#5143) 2023-06-29 11:13:15 +00:00
tersec 657f115210
bump nim-faststreams to 720fc5e5c8e428d9d0af618e1e27c44b42350309 (#5129) 2023-06-27 20:50:49 +02:00
tersec 9dbf63d8ca
use v1.4.0-beta.0 consensus spec test vectors (#5120) 2023-06-24 12:27:15 +00:00
Etan Kissling cbc4cef981
bump `gnosis-chain-configs` to `19060cb894ea0fb8ff3c8ec2fd26c0433f56c52c` (#5114)
https://github.com/gnosischain/configs/pull/12

- Schedule shapella for gnosis
2023-06-22 11:14:02 +03:00
Etan Kissling 6175fa8a79
bump `nimbus-build-system` to `239c3a7fbb88fd241da0ade3246fd2e5fcff4f25` (#5111)
- Use upstream build system when possible
- Fix checking out of recent Nim tags in shallow repo
- install Nimble CA cert when `skipIntegrityCheck`
2023-06-21 17:00:51 +02:00
Tanguy d00788ab29
Bump libp2p to fix incoming connections (#5102) 2023-06-20 17:40:47 +02:00
Etan Kissling 3dd256b686
bump `nim-zlib` to `f34ca261efd90f118dc1647beefd2f7a69b05d93` (#5096)
* bump `nim-zlib` to `f34ca261efd90f118dc1647beefd2f7a69b05d93`

- ignore *.exe
- nim 1.6 adjustment
- update github action to v3
- use Nim 2.0 in CI
- test both refc and ORC in post-1.6 Nim versions
- remove Nim 1.2 and 1.4 support

* bump `nim-websock` for compatibility

`nim-websock` `fea05cde8b123b38d1a0a8524b77efbc84daa848` is needed

- reduce compiler warnings
2023-06-19 18:47:11 +00:00
Etan Kissling a92b249892
bump `nim-websock` to `4c5e225eeb342a3b9cfb2fbdddd92d00568b5553` (#5097)
- Remove newRng
- Fix closing hangs
- Remove recvMsg pre-allocation
2023-06-19 13:11:30 +00:00
Etan Kissling 4da9517f25
bump `nim-serialization` to `384eb2561ee755446cff512a8e057325848b86a7` (#5086)
- readFieldIMPL workaround when orc enabled
- remove nimble.lock
- remove nim 1.2 and nim 1.4 from ci
- remove Defect raises from makeFieldReadersTable
- another attempt to reduce compiler warnings
- More fix to exception tracking and generic_suite
- bump version to 0.2.0
- avoid implicit synthesis of `CaseTransition`
- make nimble file consistent with test matrix
- workaround for `NimYAML` issue
2023-06-17 08:41:01 +02:00
Tanguy 98ab0afcc3
Bump libp2p (#5079)
* Bump libp2p

* Switch to unstable
2023-06-15 12:59:35 +00:00
Etan Kissling aab26379ff
bump `eth2-networks` to `e930d81f7c9db816c88d1a9336be8cef858f7f4d` (#5077)
- remove `SAFE_SLOTS_TO_UPDATE_JUSTIFIED`
2023-06-14 18:18:02 +00:00