erigon-pulse/interfaces
ledgerwatch e3f3dd3c9b
Integration tests 1 (#1793)
* Initial commit

* Add sentry gRPC interface

* p2psentry directory

* Update README.md

* Update README.md

* Update README.md

* Add go package

* Correct syntax

* add external downloader interface (#2)

* Add txpool (#3)

* Add private API (#4)

* Invert control.proto, add PeerMinBlock, Separare incoming Tx message into a separate stream (#5)

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>

* Separate upload messages into its own stream (#6)

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>

* Only send changed accounts to listeners (#7)

* Txpool interface doc (#9)

* Add architecture diagram source and picture (#10)

* Typed hashes (#11)

* Typed hashes

* Fix PeerId

* 64-bit tx nonce

* Add proper golang packages, max_block into p2p sentry Status (#12)

* Add proper golang packages, max_block into p2p sentry Status

* Change EtherReply to address

Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>

* Add Rust infrastructure (#13)

* DB stats methods removed by https://github.com/ledgerwatch/turbo-geth/pull/1665

* more p2p methods (#15)

* add mining methods (#16)

* First draft of Consensus gRPC interface (#14)

* Update Rust build

* Fix interfaces in architecture diagram (#17)

* Fix KV interface provider

* Fix Consensus interface provider

* drop java attributes (#18)

* tx pool remove unused import (#19)

* ethbackend: add protocol version and client version (#20)

* Add missing ethbackend I/F (#21)

* Add interface versioning mechanism (#23)

Add versioning in KV interface

Co-authored-by: Artem Vorotnikov <artem@vorotnikov.me>

* spec of tx pool method (#24)

* spec of tx pool method (#25)

* Update version.proto

* Refactor interface versioning

* Refactor interface versioning

* Testing interface

* Remove tree

* Fix

* Build testing protos

* Fix

* Fix

* Update to the newer interfaces

* Add ProtocolVersion and ClientVersion stubs

* Hook up ProtocolVersion and ClientVersion

* Remove service

* Add compatibility checks for RPC daemon

* Fix typos

* Properly update DB schema version

* Fix test

* Add test for KV compatibility|

* Info messages about compability for RPC daemon

* DB schema version to be one key

* Update release intructions

Co-authored-by: Artem Vorotnikov <artem@vorotnikov.me>
Co-authored-by: b00ris <b00ris@mail.ru>
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
Co-authored-by: lightclient <14004106+lightclient@users.noreply.github.com>
Co-authored-by: canepat <16927169+canepat@users.noreply.github.com>
Co-authored-by: Alex Sharov <AskAlexSharov@gmail.com>
Co-authored-by: canepat <tullio.canepa@gmail.com>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2021-04-24 16:46:29 +01:00
..
.github/workflows solve mess with git subtree (#1729) 2021-04-15 15:58:26 +07:00
consensus_engine solve mess with git subtree (#1729) 2021-04-15 15:58:26 +07:00
p2psentry solve mess with git subtree (#1729) 2021-04-15 15:58:26 +07:00
remote Integration tests 1 (#1793) 2021-04-24 16:46:29 +01:00
snapshot_downloader solve mess with git subtree (#1729) 2021-04-15 15:58:26 +07:00
src solve mess with git subtree (#1729) 2021-04-15 15:58:26 +07:00
testing Integration tests 1 (#1793) 2021-04-24 16:46:29 +01:00
txpool Integration tests 1 (#1793) 2021-04-24 16:46:29 +01:00
types Integration tests 1 (#1793) 2021-04-24 16:46:29 +01:00
.gitignore solve mess with git subtree (#1729) 2021-04-15 15:58:26 +07:00
build.rs solve mess with git subtree (#1729) 2021-04-15 15:58:26 +07:00
Cargo.toml solve mess with git subtree (#1729) 2021-04-15 15:58:26 +07:00
LICENSE solve mess with git subtree (#1729) 2021-04-15 15:58:26 +07:00
README.md solve mess with git subtree (#1729) 2021-04-15 15:58:26 +07:00
turbo-geth-architecture.png Integration tests 1 (#1793) 2021-04-24 16:46:29 +01:00
turbo-geth.drawio Integration tests 1 (#1793) 2021-04-24 16:46:29 +01:00

Interfaces

Interfaces for turbo-geth components. Currently it is a collection of .proto files describing gRPC interfaces between components, but later documentation about each interface, its components, as well as required version of gRPC will be added

What's in this repo

  • Protobuf definitions
  • Wrappers:
    • Rust crate with autogenerated client and server based on Tonic

NOTE: You are free to ignore provided wrappers and use the .proto files directly

Suggested integration into other repositories

git subtree add --prefix interfaces --squash https://github.com/ledgerwatch/interfaces master

When you need to update the subtree to a specific commit or tag, you can use this command:

git subtree pull --prefix interfaces --squash https://github.com/ledgerwatch/interfaces <tag_or_commit>