Commit Graph

6160 Commits

Author SHA1 Message Date
Jacek Sieka b98f46c04d
Avoid global in p2p macro (fixes #4578) (#5719)
* Avoid global in p2p macro (fixes #4578)

* copy p2p macro to this repo and start de-crufting it
* make protocol registration dynamic, removing light client hacks et al
* split out light client protocol into its own file

* cleanups

* Option -> Opt
* remove more cruft

* further split beacon_sync

this allows the light client to respond to peer metadata messages
without exposing the block sync protocol

* better protocol init

* "constant" protocol index

* avoid casts

* copyright

* move some discovery code to discovery

* avoid extraneous data copy when sending chunks

* remove redundant forkdigest field

* document how to connect to a specific peer
2024-01-13 11:54:24 +02:00
tersec 69af8f943e
implement blob_sidecar Beacon API streaming (#5728) 2024-01-13 11:52:13 +02:00
andri lim a45609c4a3
Switch to llvm-mingw for faster Windows CI (#5729)
* Switch to llvm-mingw for faster Windows CI

* Enable ubsan of Windows CI
2024-01-13 11:45:20 +02:00
zah 00d05f8170
Use the latest web3signer (#5732)
Other changes:

* Include java in the Nix development shell
  (so users are able to run the web3signer)

* Update the simulation config files to the latest spec
  (so the web3signer accepts them)
2024-01-13 10:37:09 +02:00
tersec 1559a09184
add more logging of KZG commitments, proofs, and blobs (#5735) 2024-01-13 07:44:40 +01:00
andri lim 017f9f1103
bump nim-web3 to bf1ce869b5f76d9744444b248f6f5c6c782fedc7 (#5722)
Etan Kissling (2):
  remove unused `skip0xPrefix`
  keep the internal count helper

Will (1):
  Bugfix/nully values (#61)

Yuriy Glukhov (5):
  Contract constructor support
  Fixed compilation error in exec function
  Added string encoding
  Fixed source->from field of EthCall
  More flexibility to contract DSL, Async contract caller

jangko (5):
  Reduce compiler warnings when using Nim v2
  Migrate to json-serialization
  Add tests of json rpc marshalled types
  Resolve contract_dsl ambiguity
  Event handler passing around JsonString instead of JsonNode
  Share encoder between json-rpc and chronicles (#119)
  Simplify generic constraint of rpc and chronicles encoders
  Feature/execution api spec (#69)
  v0.3.0

bump nim-json-rpc to a6475e49b26d3afc58aaa3d67621c94eafef8efb
coffeepots (1):
  Use nim-json-serialization for RPCs (#172)

jangko (10):
  Add copyright to source file
  Remove StringOfJson
  Fix optional parameter parsing fails in rpc macro with generics
  Rename jrpc_sys module back to jsonmarshal
  Reenable test hhtps
  Add test for createRpcSigsFromNim and createSingleRpcSig
  Let the OS choose the port for tests
  Add onProcessMessage hook to client
  Fix example in the README.md
  Move errors module back to json_rpc folder
  Upgrade rpc router internals (#178)
  RPC server handle null return value correctly
  v0.3.0

kdeme (1):
  Add example test case that currently fails the Option parsing
2024-01-13 08:36:17 +07:00
tersec c815e71af0
rest of EF KZG test harnesses (#5734) 2024-01-13 01:31:29 +00:00
tersec aef3879652
some EF KZG test harnesses (#5733) 2024-01-12 22:29:43 +00:00
Etan Kissling 16256a5230
display current fork (+ next fork if applicable) in slot start / status (#5731)
Extend slot start message and default status bar with information about
current head fork and the next fork transition (corresponding to head).
This is useful to know whether a synced client is aware of a future fork
and can also be useful when syncing from old forks to follow progress
across the various forks.

```
 peers: 8 ❯ finalized: 741c2ce2:230474 ❯ head: b330f58b:230477:20 ❯ fork: Capella (next: Deneb:231680) ❯ time: 230599:24 (7379192) ❯ sync: 00h24m (99.63%) 2.6492slots/s (QwQUwQPQDQ:7375263)/opt
```

```
INF 2024-01-12 12:18:00.001+01:00 Slot start                                 topics="beacnde" slot=7379190 epoch=230599 fork="Capella (next: Deneb:231680)" sync="--h--m (99.62%) 0.0000slots/s (wwwwwwwwww:7375167)/opt" peers=0 head=741c2ce2:7375168 finalized=230472:723abe7e delay=1ms861us
```
2024-01-12 21:40:34 +01:00
Etan Kissling b54bbdecae
bump `gnosis-chain-configs` to `ff5fbe9aecbf28df9beedb662920eeee537629b0` (#5725)
- Add deneb config vars to Chiado config
- Schedule Deneb on Chiado
2024-01-12 11:31:07 +01:00
tersec bf5611cf7c
rm aspirational reference to EL-unimplemented pull request from docs (#5673) 2024-01-11 22:46:43 +00:00
tersec 251143fd51
attest to known valid block when possible (#5313)
* attest to known valid block when possible

* cleaner approach; slot is always == attestation slot itself

* copyright year linting
2024-01-11 22:34:10 +00:00
dependabot[bot] b44e3ede1a
Bump jinja2 from 3.1.2 to 3.1.3 in /docs (#5727)
Bumps [jinja2](https://github.com/pallets/jinja) from 3.1.2 to 3.1.3.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/jinja/compare/3.1.2...3.1.3)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-11 20:06:25 +00:00
dependabot[bot] 143dd70591
Bump jinja2 from 3.0.3 to 3.1.3 in /ncli (#5726)
Bumps [jinja2](https://github.com/pallets/jinja) from 3.0.3 to 3.1.3.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/jinja/compare/3.0.3...3.1.3)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-11 19:17:25 +00:00
Jacek Sieka e4a1ae67df
ssz: bump (#5717)
height-based merkleizer
2024-01-11 18:34:44 +01:00
jangko a5297a352c
Use GITHUB_OUTPUT to replace set output in main CI 2024-01-11 10:14:32 +07:00
dependabot[bot] 4221fbb144
Bump fonttools from 4.28.5 to 4.43.0 in /ncli (#5721)
Bumps [fonttools](https://github.com/fonttools/fonttools) from 4.28.5 to 4.43.0.
- [Release notes](https://github.com/fonttools/fonttools/releases)
- [Changelog](https://github.com/fonttools/fonttools/blob/main/NEWS.rst)
- [Commits](https://github.com/fonttools/fonttools/compare/4.28.5...4.43.0)

---
updated-dependencies:
- dependency-name: fonttools
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-09 21:42:14 +00:00
Etan Kissling 95e9740506
use `forks` sugar in `loadForkedState` testing function (#5720)
Adjust `loadForkedState` to use `withState` sugar to reduce code
duplication.
2024-01-09 17:27:32 +00:00
tersec 07455e67a9
`proc` to `func` in engine authentication (#5718) 2024-01-08 21:12:58 +00:00
Zahary Karadjov 401d6bac91
Merge branch 'stable' into unstable 2024-01-08 19:06:46 +02:00
Zahary Karadjov 0e63f8fdba
Version 24.1.1 2024-01-08 19:06:03 +02:00
Etan Kissling 3c9d17a9d2
fix crash when attaching to syncing EL (#5695)
In #5664, `nim-json-rpc` dependency got bumped which included a change
in behaviour when processing `null` data for heap allocated objects.

- https://github.com/status-im/nim-json-rpc/pull/176

Old behaviour was to raise an exception, while new behaviour is to set
the value to `nil` but treat it as a successful parse. Old exceptions
were similar to "Parameter [result] expected JObject but got JNull".

As part of the `nim-json-rpc` bump in #5664, `el_manager.nim` was not
updated to match the new behaviour, leading to crash whenever its logic
assumes that a successfully parsed web3 `BlockObject` (heap allocated)
may be assumed to be non-`nil`.

As a quick remedy, the `el_manager.nim` is updated to transform `nil`
responses for `BlockObject` into `ValueError`, allowing reuse of the
existing and tested exception based processing.
2024-01-08 18:58:33 +02:00
Etan Kissling f84f320cba
fix crash when attaching to syncing EL (#5695)
In #5664, `nim-json-rpc` dependency got bumped which included a change
in behaviour when processing `null` data for heap allocated objects.

- https://github.com/status-im/nim-json-rpc/pull/176

Old behaviour was to raise an exception, while new behaviour is to set
the value to `nil` but treat it as a successful parse. Old exceptions
were similar to "Parameter [result] expected JObject but got JNull".

As part of the `nim-json-rpc` bump in #5664, `el_manager.nim` was not
updated to match the new behaviour, leading to crash whenever its logic
assumes that a successfully parsed web3 `BlockObject` (heap allocated)
may be assumed to be non-`nil`.

As a quick remedy, the `el_manager.nim` is updated to transform `nil`
responses for `BlockObject` into `ValueError`, allowing reuse of the
existing and tested exception based processing.
2024-01-08 18:53:29 +02:00
Etan Kissling d2d1a93936
bump `nim-zlib` to `a2f44bb7f65571a894227ff6fde9298a104e03a5` (#5713)
- run UBSAN as part of unit tests in Linux
- bump: v1.2.13
2024-01-07 11:31:15 +01:00
Etan Kissling ac4c5daab0
bump `sepolia` to `694c7fd8d2d004e81c53d383010a9bf09768f4bc` (#5715)
- Update README.md
- add netstats
- fix
- Add LearnWeb3's faucet to the README
2024-01-07 05:48:02 +00:00
Etan Kissling 4e2ab36aa1
bump `nimcrypto` to `a079df92424968d46a6ac258299ce9380aa153f2` (#5714)
- Add GCM[T] "traditional" API calls encrypt/decrypt.
2024-01-07 05:02:22 +00:00
Etan Kissling 19798a0205
bump `nim-websock` to `f8ed9b40a5ff27ad02a3c237c4905b0924e3f982` (#5712)
- use still-supported versions of Ubuntu and macOS in GitHub Actions CI
- try py3 for autobahn
- Remove Nim 1.2
- Handle cancellation in close
- make nimble file consistent with CI setup
- replace `utils` module with direct `generate` calls
2024-01-07 03:12:41 +00:00
Etan Kissling 4da15ac6f3
bump `nim-unicodedb` to `04a154eee0b8a2ad313e24ba46a4e5b4e0b9036f` (#5711)
- collation data
- collation optimization
- collation missing bitops
2024-01-07 02:18:29 +00:00
Etan Kissling ee83cadf3e
bump `nim-toml-serialization` to `868d8c31e5857a0bbdebaba2ff531536063c83fa` (#5710)
- allow manually triggering CI
- Fix grammatical errors of README.md
- Fix breaking changes introduces by upstream nim-serialization
- Remove unreachable code
- Fix cache key of Nim binaries
- Increase stack size of Windows
- Add note to increase stack size on Windows
- add `{.raises.}` annotation to `writeValue`
- add more missing `{.raises.}` annotations
- version 0.2.8
- Add table of contents to README.md
2024-01-07 01:22:51 +00:00
Etan Kissling 304ac0161e
bump `nim-taskpools` to `15e23ef1cf0860330dcc32f50fcce5f840031e28` (#5709)
- bump nimble
2024-01-07 00:46:06 +00:00
Etan Kissling 97afa6812b
bump `nim-ssz-serialization` to `f87c99be04f3051fe2d9b4facf5e6e71251e8555` (#5708)
- Fix error on decoding of an empty list in an SSZ Union
2024-01-06 23:32:44 +00:00
Etan Kissling 10ec5565b0
bump `nim-serialization` to `4d541ec43454809904fc4c3c0a7436410ad597d2` (#5707)
- Add useDefaultWriterIn, useDefaultReaderIn, useDefaultWriterFor, and useDefaultReaderFor
- v0.2.2
- symbol conflict workaround
2024-01-06 22:45:36 +00:00
Etan Kissling b70bb1dfa6
bump `nim-secp256k1` to `7246d91c667f4cc3759fdd50339caa45a2ecd8be` (#5706)
- bump: 0.3.2
2024-01-06 22:21:48 +00:00
Etan Kissling 264868279b
bump `nim-nat-traversal` to `14e016503fe6488230e6d0e59396efde96bd9252` (#5705)
- libnatpmp: add OS env var to Windows build command
2024-01-06 21:11:12 +00:00
Etan Kissling 41d1532d29
bump `nim-json-serialization` to `3f1ce24ee116daedbc9c8be525e63ec03e185a28` (#5700)
- Add JsonVoid, JsonNumber, and JsonValueRef to JsonWriter
- Add JsonWriter helper procs to README.md
- v0.2.2
- Improve nested structure depth limit check
- Fix JsonValueRef nil comparison
- Reduce declared but not used warning
- Restore accidentally deleted raises pragma
- Switch to mingw-llvm for faster Windows CI
- Increase stack size on Windows when running CI
2024-01-06 21:36:59 +01:00
Etan Kissling 2ff05f0682
bump `nim-libbacktrace` to `aad5aa227c43a83984245b180c6c295ce9ff561b` (#5704)
- Move CI to Github Actions
2024-01-06 19:57:59 +00:00
Etan Kissling d180d867d2
bump `nim-chronicles` to `ccbb7566d1a06bfc1ec42dd8da74a47f1d3b3f4b` (#5703)
- bind to the correct LogLevel
2024-01-06 19:09:49 +00:00
Etan Kissling f9938b6d1a
bump `nim-bearssl` to `d55d3a86d7ec3ad11b244e17b3bad490bfbd076d` (#5702)
- Switch to llvm-mingw in Windows CI
2024-01-06 18:33:01 +00:00
Etan Kissling 05e27f319f
bump `holesky` to `f0ba4cabc55fdcd251c25d61ad594cabdd4ad2b9` (#5701)
- Add Chainstack Faucet
2024-01-06 16:42:37 +00:00
Etan Kissling 185b452249
bump `nim-web3` to `45d09b29d22da63052b259679539a3d4141273a7` (#5699)
- Refactoring, contract dsl wasm compatibility, encode/decode fixes.
2024-01-06 16:41:59 +01:00
Jacek Sieka 62cbdeefc5
verify `genesis_time` more strictly (fixes #1667) (#5694)
Bogus values lead to crashes down the line when timers overflow
2024-01-06 15:26:56 +01:00
Etan Kissling 3fa4556bc2
bump `nim-json-rpc` to `08d7fccfe2025d5a2ecca68e6e7b4dd4a7974a8e` (#5698)
- fix improper yield usage
- v0.2.0
2024-01-06 14:13:54 +01:00
Jacek Sieka ba7e8a8f84
chronos: bump (#5697)
Was missing a PR
2024-01-06 11:15:39 +01:00
Etan Kissling 508f3b6368
add missing `std/` prefix to more imports (#5696)
Bumping some `std` imports to explicitly include the prefix.
Also add explicit `./` prefix for local directory imports.
2024-01-06 07:18:28 +01:00
Jacek Sieka 38f4aa2a4a
metrics: bump (#5692)
* more efficient
* unused thread no longer created
2024-01-05 18:17:54 +00:00
Jacek Sieka 3f525acb87
chronos: bump (#5684)
This PR causes a few new warnings to appear - these are harmless but
will need addressing separately as they span several libraries.

* new asyncraises syntax
* asyncraises support in several modules
* `sink` usage reduces spurious copying
* `?` compatiblity for `async` + `results`
* remove `-d:chronosStrictException` (obsolete)
2024-01-05 10:08:38 +01:00
Etan Kissling 7a89404404
bump `nimbus-build-system` to `cf0c9cfa408189c6d428799bf2e9da8d0c0f7f08` (#5690)
- switch to Nim `v1.6.18`
2024-01-04 10:06:26 +01:00
Zahary Karadjov 4d094422eb
Merge branch 'stable' into unstable 2024-01-04 02:54:16 +02:00
Zahary Karadjov 47e035f3d1
Final release notes for v24.1.0 2024-01-04 02:30:58 +02:00
Zahary Karadjov 00ba72a73e
Version 24.1.0 2024-01-04 01:24:00 +02:00