Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(proto)!: grpc server and client support #50

Merged
merged 30 commits into from
Mar 12, 2024
Merged

feat(proto)!: grpc server and client support #50

merged 30 commits into from
Mar 12, 2024

Conversation

lklimek
Copy link
Collaborator

@lklimek lklimek commented Feb 20, 2024

Issue being fixed or feature implemented

We need support for gRPC in the rs-tenderdash-abci library

What was done?

Added feature to generate gRPC code in tenderdash-proto.

In case of tenderdash-proto usage, tenderdash-abci is not required.

How Has This Been Tested?

Integrated into Platform's rs-drive-abci as part of multi-thread effort.

Added new feature grpc to tenderdash-abci and tenderdash-proto.

Breaking Changes

no_std support in tenderdash-proto requires default-features=false and is experimental

Checklist:

  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have added or updated relevant unit/integration/functional/e2e tests
  • I have made corresponding changes to the documentation

For repository code-owners and collaborators only

  • I have assigned this pull request to a milestone

@lklimek lklimek changed the title feat(proto): grpc server and client support feat(proto)!: grpc server and client support Mar 1, 2024
abci/tests/grpc.rs Outdated Show resolved Hide resolved
@lklimek lklimek changed the base branch from master to fix/consensus-params-json March 1, 2024 15:48
@lklimek lklimek marked this pull request as ready for review March 1, 2024 15:51
abci/tests/grpc.rs Show resolved Hide resolved
proto-compiler/src/lib.rs Show resolved Hide resolved
Base automatically changed from fix/consensus-params-json to master March 4, 2024 15:34
proto/src/protobuf.rs Outdated Show resolved Hide resolved
@lklimek lklimek changed the base branch from master to fix/consensus-params-serialization March 8, 2024 08:53
Base automatically changed from fix/consensus-params-serialization to master March 8, 2024 09:04
@lklimek lklimek requested a review from shumkov March 8, 2024 09:06
@lklimek lklimek enabled auto-merge (squash) March 11, 2024 19:25
Copy link
Member

@shumkov shumkov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@lklimek lklimek merged commit 672f8ba into master Mar 12, 2024
11 checks passed
@lklimek lklimek deleted the feat/grpc branch March 12, 2024 09:08
lklimek added a commit that referenced this pull request Mar 20, 2024
commit 17ed6e7
Author: lklimek <[email protected]>
Date:   Fri Mar 15 17:56:00 2024 +0100

    fix: release.sh platform deps update broken (#57)

commit af64c65
Author: lklimek <[email protected]>
Date:   Fri Mar 15 17:29:40 2024 +0100

    fix(proto-compiler): existence of unzipped tenderdash sources not verified correctly (#56)

    * fix(proto-compiler): better detection of missing protobuf files

    * build: release 0.14.0-dev.9

commit 86ba24b
Author: lklimek <[email protected]>
Date:   Wed Mar 13 15:46:59 2024 +0100

    build: release v0.14.0-dev.8 for tenderdash 0.14.0-dev.4 (#55)

commit 672f8ba
Author: lklimek <[email protected]>
Date:   Tue Mar 12 06:34:13 2024 +0100

    feat(proto)!: grpc server and client support (#50)

    * feat(proto): grpc server and client support

    * chore: make ServerRuntime public

    * test(proto): test grpc server with tenderdash in docker

    * chore(proto): fix imports

    * chore: build issues

    * chore: abci grpc-server feature

    * chore: imports and features

    * chore: grpc test

    * chore: re-export tonic

    * chore: fix missing serde serialization

    * chore(proto): fix feature flags

    * chore(proto): fix warn

    * fix: wrong json serialization of ConsensusParams

    * fix: wrong json serialization of ConsensusParams

    * chore: fix build

    * chore: simplify features

    * chore: self review, simplify features

    * chore: comments

    * test(abci): grpc test uses latest tenderdash tag

    * chore: bump version to 0.14.0-dev.7 for tenderdash v0.14.0-dev.3, abci 0.26.0

    * chore: fix missing serde serialization

    * fix: wrong json serialization of ConsensusParams

    * build(deps): update chrono and replace deprecated fn calls

    ---------

    Co-authored-by: Ivan Shumkov <[email protected]>

commit c5ece7b
Author: lklimek <[email protected]>
Date:   Fri Mar 8 10:03:42 2024 +0100

    build(deps): bump chrono and replace deprecated calls (#54)

    * build(deps): update chrono and replace deprecated fn calls

commit 784a0c5
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Mon Mar 4 16:34:57 2024 +0100

    build(deps): update bollard requirement from 0.15.0 to 0.16.0 (#53)

    Updates the requirements on [bollard](https://github.com/fussybeaver/bollard) to permit the latest version.
    - [Release notes](https://github.com/fussybeaver/bollard/releases)
    - [Commits](fussybeaver/bollard@v0.15.0...v0.16.0)

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

    Signed-off-by: dependabot[bot] <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

commit 1b8829e
Author: lklimek <[email protected]>
Date:   Mon Mar 4 16:33:58 2024 +0100

    fix(proto)!: wrong json serialization of consensus params (#51)

    * fix: wrong json serialization of ConsensusParams

    * chore: fix build

commit 309f589
Author: lklimek <[email protected]>
Date:   Thu Feb 29 11:30:04 2024 +0100

    fix: tenderdash-proto rebuilt with every run due to changed *.proto (#52)

    * fix: tenderdash-proto rebuilt with every run due to changed *.proto files

    * refactor: self review

    * chore: fix GHA build errors

    * chore: clippy

    * chore: build errs fix

commit 8b5afe6
Author: lklimek <[email protected]>
Date:   Tue Feb 20 09:49:49 2024 +0100

    fix(abci): tenderdash version check requires exact version match (#49)

    fix(abci): version match fixed

commit a2151d4
Author: Lukasz Klimek <[email protected]>
Date:   Fri Feb 2 12:35:26 2024 +0100

    build: release script to update versions

commit 701ba0f
Author: lklimek <[email protected]>
Date:   Thu Feb 1 15:31:46 2024 +0100

    feat!: support ThresholdRecoverRaw in tenderdash v0.14 (#43)

    * chore: clippy

    * fix: use TENDERDASH_COMMITISH env var if set

    * feat: support ThresholdRecoverRaw vote extensions

    * chore: bump version to 0.14.0-dev.1

    * chore: bump version to 0.14.0-dev.6

    * chore: set default Tenderdash version to v0.14.0-dev.2

    * feat: threshold raw vote extensions sign_hash

    * fix: take TENDERDASH_VERSION  from td version.go

    * chore: fmt

    * refactor(abci)!: renames in signature processing

    * chore(abci): add comments to remove tracing:: in signatures once stable

commit 2810894
Author: lklimek <[email protected]>
Date:   Wed Jan 31 15:52:44 2024 +0100

    build(deps): use protoc 25.2 (#47)

    * build(deps): use protoc 25.2

    * chore: fix typo

commit 556f3a9
Author: Quantum Explorer <[email protected]>
Date:   Sat Jan 6 20:41:43 2024 +0700

    fix: bump version

commit b6ed3ba
Author: Quantum Explorer <[email protected]>
Date:   Sat Jan 6 20:13:32 2024 +0700

    fix: bump version

commit e4de597
Author: Quantum Explorer <[email protected]>
Date:   Sat Jan 6 18:54:50 2024 +0700

    fix: bump version

commit 6ebfaa3
Author: lklimek <[email protected]>
Date:   Wed Dec 20 07:28:05 2023 +0100

    build: retry download of tenderdash zip on unzip failures (#46)

    fix: retry download of tenderdash zip on unzip failures

commit b4df654
Author: lklimek <[email protected]>
Date:   Mon Dec 18 18:38:54 2023 +0100

    chore: release for tenderdash 0.14.0-dev.1 (#45)

commit 865fd05
Author: lklimek <[email protected]>
Date:   Thu Dec 14 14:04:57 2023 +0100

    feat: use TENDERDASH_COMMITISH env var to set tenderdash rev to use (#44)

    * fix: use TENDERDASH_COMMITISH env var if set

    * chore: fix nightly build issues

commit f413119
Author: lklimek <[email protected]>
Date:   Mon Oct 9 13:08:57 2023 +0200

    build: release 0.13.1 for tenderdash 0.13.2+ (#42)

    build: release 0.13.1 for tenderdash 0.13.2

commit 32cff5c
Author: lklimek <[email protected]>
Date:   Mon Oct 9 12:53:22 2023 +0200

    fix(tenderdash-abci): ensure crate features build without default features (#39)

    * fix(tenderdash-abci): correct handling of features

    * chore: change resolver in cargo.toml to 2

    * fix: missing prost-derive feature in proto

commit 2a98bf2
Author: lklimek <[email protected]>
Date:   Thu Oct 5 21:30:53 2023 +0200

    fix(tenderdash-abci): deadlock on multiple msgs received (#41)

commit 3280669
Author: lklimek <[email protected]>
Date:   Thu Oct 5 21:25:50 2023 +0200

    ci: remove sccache from github actions (#40)

commit 6934428
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Tue Oct 3 16:29:53 2023 +0200

    build(deps): update prost requirement from 0.11 to 0.12 (#34)

    Updates the requirements on [prost](https://github.com/tokio-rs/prost) to permit the latest version.
    - [Release notes](https://github.com/tokio-rs/prost/releases)
    - [Commits](tokio-rs/prost@prost-build-0.11.1...v0.12.0)

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

    Signed-off-by: dependabot[bot] <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

commit 94f9714
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Tue Oct 3 16:29:41 2023 +0200

    build(deps): update prost-build requirement from 0.11 to 0.12 (#33)

    Updates the requirements on [prost-build](https://github.com/tokio-rs/prost) to permit the latest version.
    - [Release notes](https://github.com/tokio-rs/prost/releases)
    - [Commits](tokio-rs/prost@prost-build-0.11.1...v0.12.0)

    ---
    updated-dependencies:
    - dependency-name: prost-build
      dependency-type: direct:production
    ...

    Signed-off-by: dependabot[bot] <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

commit f4235c1
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Tue Oct 3 16:22:02 2023 +0200

    build(deps): update bollard requirement from 0.14.0 to 0.15.0 (#37)

    Updates the requirements on [bollard](https://github.com/fussybeaver/bollard) to permit the latest version.
    - [Release notes](https://github.com/fussybeaver/bollard/releases)
    - [Commits](fussybeaver/bollard@v0.14.0...v0.15.0)

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

    Signed-off-by: dependabot[bot] <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

commit 45fc447
Author: lklimek <[email protected]>
Date:   Wed Sep 13 14:05:30 2023 +0200

    chore: release rs-tenderdash-abci v0.13.0 for tenderdash v0.13.0 (#36)

    chore: release Tenderdash v0.13.0

commit f2b15b8
Author: lklimek <[email protected]>
Date:   Fri Sep 8 16:32:23 2023 +0200

    feat(abci): support tracing::span inside rs-tenderdash-abci (#35)

    * feat(proto): DeriveFrom for ABCI Request Value

    * feat(abci): add tracing spans

    * feat: add request id to tracing span

    * chore: log exception responses on error! level and simplify span

    * chore: minor improvements  and docs

    * chore: traced exception format same as response

    * chore: minor fix

    * chore: cargo fmt

    * fix: doctest

commit 00454db
Author: lklimek <[email protected]>
Date:   Thu Jul 20 17:11:05 2023 +0200

    feat(proto): Timestamp::from_milis() (#24)

    * build: upgrade to tenderdash v0.13.0-dev.1

    * chore: formatting improvement to restart GHA

    * feat(proto): Timestamp::from_milis()

    * chore(proto): panic when timestamp millis out of range + tests

    * chore: unify cargo.toml dependency code style

commit b397f63
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Thu Jul 20 13:28:10 2023 +0200

    build(deps): update num-derive requirement from 0.3 to 0.4 (#26)

    Updates the requirements on [num-derive](https://github.com/rust-num/num-derive) to permit the latest version.
    - [Changelog](https://github.com/rust-num/num-derive/blob/master/RELEASES.md)
    - [Commits](rust-num/num-derive@num-derive-0.3.0...num-derive-0.4.0)

    ---
    updated-dependencies:
    - dependency-name: num-derive
      dependency-type: direct:production
    ...

    Signed-off-by: dependabot[bot] <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

commit a0efded
Author: lklimek <[email protected]>
Date:   Thu Jul 20 13:27:21 2023 +0200

    build: remove sccache from docker build process (#32)

    build: remove sccache from docker

commit 8ed0188
Author: Dmitrii Golubev <[email protected]>
Date:   Thu Jul 20 09:21:40 2023 +0200

    chore: upgrade tenderdash version to 0.13.0-dev.2 (#31)

commit 0bb35a3
Author: Dmitrii Golubev <[email protected]>
Date:   Thu Jul 13 17:54:16 2023 +0200

    revert: "refactor: make self for offer_snapshot mutable (#27)" (#30)

    Revert "refactor: make self for offer_snapshot mutable (#27)"

    This reverts commit f9f4685.

commit f9f4685
Author: Dmitrii Golubev <[email protected]>
Date:   Thu Jul 13 17:10:03 2023 +0200

    refactor: make self for offer_snapshot mutable (#27)

    * refactor: make self for offer_snapshot mutable

commit c161fd6
Author: Lukasz Klimek <[email protected]>
Date:   Wed Jun 28 16:34:08 2023 +0200

    chore: release for tenderdash 0.12.0

commit 29b5056
Author: lklimek <[email protected]>
Date:   Mon Jun 26 09:51:40 2023 +0200

    feat: graceful shutdown (#23)

    * feat: graceful shutdown

    * feat: async net io

    * chore: graceful shutdown

    * chore: graceful shutdown

    * chore: unix graceful shutdown

    * chore: simplify code

    * chore: child token

    * chore: use child token to NOT kill calling server

    * fix: missing tokio feature

    * chore:  clippy

    * chore: apply peer review feedback

commit e7b27c3
Author: lklimek <[email protected]>
Date:   Tue Jun 6 11:33:15 2023 +0200

    feat: impl SignDigest for CanonicalVote for easier light client verification (#22)

    feat: impl SignDigest for CanonicalVote

commit a177503
Author: lklimek <[email protected]>
Date:   Thu Apr 27 18:16:26 2023 +0200

    chore!: move signature functions to abci and more strict type controls (#21)

    * fix(proto): signature: state id must have 32 bytes

    * fix(proto): added block id constraint

    * chore: move signature processing from proto to abci as proto is no_std

    * chore(abci): log sign bytes on trace lvl

    * chore: signatures

    * chore(abci): more strict type checks

    * chore: signs: restore reverse()

    * chore(abci): minor code improvements

commit 623e225
Author: Quantum Explorer <[email protected]>
Date:   Wed Apr 19 09:33:46 2023 +0700

    updated gitignore

commit e66a7d6
Author: lklimek <[email protected]>
Date:   Mon Apr 17 20:20:32 2023 +0200

    feat(proto): add sign_digest() to commit and vote extension (#20)

    * refactor(proto)!: replace flex_error with thiserror

    * feat(proto): add sign_bytes() to commit and vote

    * Revert "refactor(proto)!: replace flex_error with thiserror"

    This reverts commit 45014e9.

    * chore(proto): adjust errors

    * feat(proto): impl SignBytes for VoteExtension

    * refactor(proto): delete SignContext

    * feat(proto): add SignDigest trait for commit

    * chore(proto): sign_digest borrows quorum hash

    * test(proto): test sign_digest()

    * fix(proto):  writing &Vec instead of &[\_]

    * chore(proto): self-review

    * chore(proto): make SignBytes public for tests

commit d61717a
Author: lklimek <[email protected]>
Date:   Fri Apr 7 08:10:53 2023 +0200

    test: build rs-tenderdash-abci in Docker (#14)

    * build: sample Dockerfile image

    * chore: fix dockerfile

    * chore: try to fix caching

    * chore: dockerfile improvements

    * build: disable arm64 build

    * build: simplify Dockerfile

    * build(docker): silence apt-get

    * build(github): docer image only for arm

    * chore(Dockerfile): trying to get arm to build

    * build(docker): trying to fix arm build

    * build(docker): fixed image for arm

    * build(docker): refer to correct branch

    * build(github): on PR, build only amd64 image

    * chore: typo

    * chore: typo

    * chore: typo

    * chore: typo

    * build(proto-compiler): use vendored-openssl

    * build(docker): add Alpine docker image to be built

    * build(docker): typo

    * build(github): build only amd64 on non-master branch

    * build(github): enable sccache

    * build(github): enable Github cache for sccache in Docker images

    * build(docker): minor caching fix

    * build(docker): avoid sccache port conflicts on parallel build in github

    * build(github): allow manual run of docker job

    * build(docker): add missing dependency for arm64

    * chore: remove unused dependencies

    * chore: display some stats

    * chore(proto-compiler): use vendored openssl

    * chore: fix comments

    * build(github): don't cache /target to use less space

    * build(github): don't precompile protobuf definitions

    * chore(proto-compiler): replace openssl with openssl-sys

    * Revert "build(github): don't precompile protobuf definitions"

    This reverts commit 8a49d5d.

    * chore(proto-compiler): optimize dependencies

    * refactor(proto-compiler): use ureq instead of reqwest to improve performance

commit 313c683
Author: lklimek <[email protected]>
Date:   Mon Apr 3 12:40:25 2023 +0200

    revert(abci): remove RefUniwndSafe trait from RequestDispatcher (#19)

commit 96878db
Author: lklimek <[email protected]>
Date:   Fri Mar 31 19:13:31 2023 +0200

    refactor(proto-compiler): download protobuf definitions via https instead of git (#18)

    * feat: use submodules instead of git2 crate to get protobuf definitions

    * test(proto): ensure that tenderdash version we use is correct

    * build(github): enable checkout submodules

    * build(github): enable checkout submodules

    * Revert " build(github): enable checkout submodules"

    This reverts commit 2ba1db3.

    * build(github): enable checkout submodules

    * chote(proto-compiler): use git checkout on tenderdash submodule

    * chore(proto-compiler): fix git handling

    * chore(proto-compiler): git fetch update shallow

    * chore(proto-compiler): fetch tags

    * chore(proto-compiler): update submodule as needed

    * chore(proto-compiler): download tenderdash sources zip instead of cloning git repo

    * chore(proto-compiler): create cache (/target) dir if not exist

    * build(github): don't checkout submodules anymore
lklimek added a commit that referenced this pull request Mar 25, 2024
* doc: README

* build(github): deploy docs to github pages

* build(github-pages): only deploy from master branch

* chore: trying to get github-pages working

* build(github-pages): copy README.md as pages index

* build(github-pages): separate workflow for github pages

* chore: code cleanup

* build(github-pages): add permissions

* chore(github-pages): set tenderdash_abci as default page

* chore: add docs url in cargo.toml

* build(github-pages): exclude tenderdash-proto-compiler

* chore: move github pages GHA code to separate pr

* Squashed commit of the following:

commit 17ed6e7
Author: lklimek <[email protected]>
Date:   Fri Mar 15 17:56:00 2024 +0100

    fix: release.sh platform deps update broken (#57)

commit af64c65
Author: lklimek <[email protected]>
Date:   Fri Mar 15 17:29:40 2024 +0100

    fix(proto-compiler): existence of unzipped tenderdash sources not verified correctly (#56)

    * fix(proto-compiler): better detection of missing protobuf files

    * build: release 0.14.0-dev.9

commit 86ba24b
Author: lklimek <[email protected]>
Date:   Wed Mar 13 15:46:59 2024 +0100

    build: release v0.14.0-dev.8 for tenderdash 0.14.0-dev.4 (#55)

commit 672f8ba
Author: lklimek <[email protected]>
Date:   Tue Mar 12 06:34:13 2024 +0100

    feat(proto)!: grpc server and client support (#50)

    * feat(proto): grpc server and client support

    * chore: make ServerRuntime public

    * test(proto): test grpc server with tenderdash in docker

    * chore(proto): fix imports

    * chore: build issues

    * chore: abci grpc-server feature

    * chore: imports and features

    * chore: grpc test

    * chore: re-export tonic

    * chore: fix missing serde serialization

    * chore(proto): fix feature flags

    * chore(proto): fix warn

    * fix: wrong json serialization of ConsensusParams

    * fix: wrong json serialization of ConsensusParams

    * chore: fix build

    * chore: simplify features

    * chore: self review, simplify features

    * chore: comments

    * test(abci): grpc test uses latest tenderdash tag

    * chore: bump version to 0.14.0-dev.7 for tenderdash v0.14.0-dev.3, abci 0.26.0

    * chore: fix missing serde serialization

    * fix: wrong json serialization of ConsensusParams

    * build(deps): update chrono and replace deprecated fn calls

    ---------

    Co-authored-by: Ivan Shumkov <[email protected]>

commit c5ece7b
Author: lklimek <[email protected]>
Date:   Fri Mar 8 10:03:42 2024 +0100

    build(deps): bump chrono and replace deprecated calls (#54)

    * build(deps): update chrono and replace deprecated fn calls

commit 784a0c5
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Mon Mar 4 16:34:57 2024 +0100

    build(deps): update bollard requirement from 0.15.0 to 0.16.0 (#53)

    Updates the requirements on [bollard](https://github.com/fussybeaver/bollard) to permit the latest version.
    - [Release notes](https://github.com/fussybeaver/bollard/releases)
    - [Commits](fussybeaver/bollard@v0.15.0...v0.16.0)

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

    Signed-off-by: dependabot[bot] <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

commit 1b8829e
Author: lklimek <[email protected]>
Date:   Mon Mar 4 16:33:58 2024 +0100

    fix(proto)!: wrong json serialization of consensus params (#51)

    * fix: wrong json serialization of ConsensusParams

    * chore: fix build

commit 309f589
Author: lklimek <[email protected]>
Date:   Thu Feb 29 11:30:04 2024 +0100

    fix: tenderdash-proto rebuilt with every run due to changed *.proto (#52)

    * fix: tenderdash-proto rebuilt with every run due to changed *.proto files

    * refactor: self review

    * chore: fix GHA build errors

    * chore: clippy

    * chore: build errs fix

commit 8b5afe6
Author: lklimek <[email protected]>
Date:   Tue Feb 20 09:49:49 2024 +0100

    fix(abci): tenderdash version check requires exact version match (#49)

    fix(abci): version match fixed

commit a2151d4
Author: Lukasz Klimek <[email protected]>
Date:   Fri Feb 2 12:35:26 2024 +0100

    build: release script to update versions

commit 701ba0f
Author: lklimek <[email protected]>
Date:   Thu Feb 1 15:31:46 2024 +0100

    feat!: support ThresholdRecoverRaw in tenderdash v0.14 (#43)

    * chore: clippy

    * fix: use TENDERDASH_COMMITISH env var if set

    * feat: support ThresholdRecoverRaw vote extensions

    * chore: bump version to 0.14.0-dev.1

    * chore: bump version to 0.14.0-dev.6

    * chore: set default Tenderdash version to v0.14.0-dev.2

    * feat: threshold raw vote extensions sign_hash

    * fix: take TENDERDASH_VERSION  from td version.go

    * chore: fmt

    * refactor(abci)!: renames in signature processing

    * chore(abci): add comments to remove tracing:: in signatures once stable

commit 2810894
Author: lklimek <[email protected]>
Date:   Wed Jan 31 15:52:44 2024 +0100

    build(deps): use protoc 25.2 (#47)

    * build(deps): use protoc 25.2

    * chore: fix typo

commit 556f3a9
Author: Quantum Explorer <[email protected]>
Date:   Sat Jan 6 20:41:43 2024 +0700

    fix: bump version

commit b6ed3ba
Author: Quantum Explorer <[email protected]>
Date:   Sat Jan 6 20:13:32 2024 +0700

    fix: bump version

commit e4de597
Author: Quantum Explorer <[email protected]>
Date:   Sat Jan 6 18:54:50 2024 +0700

    fix: bump version

commit 6ebfaa3
Author: lklimek <[email protected]>
Date:   Wed Dec 20 07:28:05 2023 +0100

    build: retry download of tenderdash zip on unzip failures (#46)

    fix: retry download of tenderdash zip on unzip failures

commit b4df654
Author: lklimek <[email protected]>
Date:   Mon Dec 18 18:38:54 2023 +0100

    chore: release for tenderdash 0.14.0-dev.1 (#45)

commit 865fd05
Author: lklimek <[email protected]>
Date:   Thu Dec 14 14:04:57 2023 +0100

    feat: use TENDERDASH_COMMITISH env var to set tenderdash rev to use (#44)

    * fix: use TENDERDASH_COMMITISH env var if set

    * chore: fix nightly build issues

commit f413119
Author: lklimek <[email protected]>
Date:   Mon Oct 9 13:08:57 2023 +0200

    build: release 0.13.1 for tenderdash 0.13.2+ (#42)

    build: release 0.13.1 for tenderdash 0.13.2

commit 32cff5c
Author: lklimek <[email protected]>
Date:   Mon Oct 9 12:53:22 2023 +0200

    fix(tenderdash-abci): ensure crate features build without default features (#39)

    * fix(tenderdash-abci): correct handling of features

    * chore: change resolver in cargo.toml to 2

    * fix: missing prost-derive feature in proto

commit 2a98bf2
Author: lklimek <[email protected]>
Date:   Thu Oct 5 21:30:53 2023 +0200

    fix(tenderdash-abci): deadlock on multiple msgs received (#41)

commit 3280669
Author: lklimek <[email protected]>
Date:   Thu Oct 5 21:25:50 2023 +0200

    ci: remove sccache from github actions (#40)

commit 6934428
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Tue Oct 3 16:29:53 2023 +0200

    build(deps): update prost requirement from 0.11 to 0.12 (#34)

    Updates the requirements on [prost](https://github.com/tokio-rs/prost) to permit the latest version.
    - [Release notes](https://github.com/tokio-rs/prost/releases)
    - [Commits](tokio-rs/prost@prost-build-0.11.1...v0.12.0)

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

    Signed-off-by: dependabot[bot] <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

commit 94f9714
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Tue Oct 3 16:29:41 2023 +0200

    build(deps): update prost-build requirement from 0.11 to 0.12 (#33)

    Updates the requirements on [prost-build](https://github.com/tokio-rs/prost) to permit the latest version.
    - [Release notes](https://github.com/tokio-rs/prost/releases)
    - [Commits](tokio-rs/prost@prost-build-0.11.1...v0.12.0)

    ---
    updated-dependencies:
    - dependency-name: prost-build
      dependency-type: direct:production
    ...

    Signed-off-by: dependabot[bot] <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

commit f4235c1
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Tue Oct 3 16:22:02 2023 +0200

    build(deps): update bollard requirement from 0.14.0 to 0.15.0 (#37)

    Updates the requirements on [bollard](https://github.com/fussybeaver/bollard) to permit the latest version.
    - [Release notes](https://github.com/fussybeaver/bollard/releases)
    - [Commits](fussybeaver/bollard@v0.14.0...v0.15.0)

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

    Signed-off-by: dependabot[bot] <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

commit 45fc447
Author: lklimek <[email protected]>
Date:   Wed Sep 13 14:05:30 2023 +0200

    chore: release rs-tenderdash-abci v0.13.0 for tenderdash v0.13.0 (#36)

    chore: release Tenderdash v0.13.0

commit f2b15b8
Author: lklimek <[email protected]>
Date:   Fri Sep 8 16:32:23 2023 +0200

    feat(abci): support tracing::span inside rs-tenderdash-abci (#35)

    * feat(proto): DeriveFrom for ABCI Request Value

    * feat(abci): add tracing spans

    * feat: add request id to tracing span

    * chore: log exception responses on error! level and simplify span

    * chore: minor improvements  and docs

    * chore: traced exception format same as response

    * chore: minor fix

    * chore: cargo fmt

    * fix: doctest

commit 00454db
Author: lklimek <[email protected]>
Date:   Thu Jul 20 17:11:05 2023 +0200

    feat(proto): Timestamp::from_milis() (#24)

    * build: upgrade to tenderdash v0.13.0-dev.1

    * chore: formatting improvement to restart GHA

    * feat(proto): Timestamp::from_milis()

    * chore(proto): panic when timestamp millis out of range + tests

    * chore: unify cargo.toml dependency code style

commit b397f63
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Thu Jul 20 13:28:10 2023 +0200

    build(deps): update num-derive requirement from 0.3 to 0.4 (#26)

    Updates the requirements on [num-derive](https://github.com/rust-num/num-derive) to permit the latest version.
    - [Changelog](https://github.com/rust-num/num-derive/blob/master/RELEASES.md)
    - [Commits](rust-num/num-derive@num-derive-0.3.0...num-derive-0.4.0)

    ---
    updated-dependencies:
    - dependency-name: num-derive
      dependency-type: direct:production
    ...

    Signed-off-by: dependabot[bot] <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

commit a0efded
Author: lklimek <[email protected]>
Date:   Thu Jul 20 13:27:21 2023 +0200

    build: remove sccache from docker build process (#32)

    build: remove sccache from docker

commit 8ed0188
Author: Dmitrii Golubev <[email protected]>
Date:   Thu Jul 20 09:21:40 2023 +0200

    chore: upgrade tenderdash version to 0.13.0-dev.2 (#31)

commit 0bb35a3
Author: Dmitrii Golubev <[email protected]>
Date:   Thu Jul 13 17:54:16 2023 +0200

    revert: "refactor: make self for offer_snapshot mutable (#27)" (#30)

    Revert "refactor: make self for offer_snapshot mutable (#27)"

    This reverts commit f9f4685.

commit f9f4685
Author: Dmitrii Golubev <[email protected]>
Date:   Thu Jul 13 17:10:03 2023 +0200

    refactor: make self for offer_snapshot mutable (#27)

    * refactor: make self for offer_snapshot mutable

commit c161fd6
Author: Lukasz Klimek <[email protected]>
Date:   Wed Jun 28 16:34:08 2023 +0200

    chore: release for tenderdash 0.12.0

commit 29b5056
Author: lklimek <[email protected]>
Date:   Mon Jun 26 09:51:40 2023 +0200

    feat: graceful shutdown (#23)

    * feat: graceful shutdown

    * feat: async net io

    * chore: graceful shutdown

    * chore: graceful shutdown

    * chore: unix graceful shutdown

    * chore: simplify code

    * chore: child token

    * chore: use child token to NOT kill calling server

    * fix: missing tokio feature

    * chore:  clippy

    * chore: apply peer review feedback

commit e7b27c3
Author: lklimek <[email protected]>
Date:   Tue Jun 6 11:33:15 2023 +0200

    feat: impl SignDigest for CanonicalVote for easier light client verification (#22)

    feat: impl SignDigest for CanonicalVote

commit a177503
Author: lklimek <[email protected]>
Date:   Thu Apr 27 18:16:26 2023 +0200

    chore!: move signature functions to abci and more strict type controls (#21)

    * fix(proto): signature: state id must have 32 bytes

    * fix(proto): added block id constraint

    * chore: move signature processing from proto to abci as proto is no_std

    * chore(abci): log sign bytes on trace lvl

    * chore: signatures

    * chore(abci): more strict type checks

    * chore: signs: restore reverse()

    * chore(abci): minor code improvements

commit 623e225
Author: Quantum Explorer <[email protected]>
Date:   Wed Apr 19 09:33:46 2023 +0700

    updated gitignore

commit e66a7d6
Author: lklimek <[email protected]>
Date:   Mon Apr 17 20:20:32 2023 +0200

    feat(proto): add sign_digest() to commit and vote extension (#20)

    * refactor(proto)!: replace flex_error with thiserror

    * feat(proto): add sign_bytes() to commit and vote

    * Revert "refactor(proto)!: replace flex_error with thiserror"

    This reverts commit 45014e9.

    * chore(proto): adjust errors

    * feat(proto): impl SignBytes for VoteExtension

    * refactor(proto): delete SignContext

    * feat(proto): add SignDigest trait for commit

    * chore(proto): sign_digest borrows quorum hash

    * test(proto): test sign_digest()

    * fix(proto):  writing &Vec instead of &[\_]

    * chore(proto): self-review

    * chore(proto): make SignBytes public for tests

commit d61717a
Author: lklimek <[email protected]>
Date:   Fri Apr 7 08:10:53 2023 +0200

    test: build rs-tenderdash-abci in Docker (#14)

    * build: sample Dockerfile image

    * chore: fix dockerfile

    * chore: try to fix caching

    * chore: dockerfile improvements

    * build: disable arm64 build

    * build: simplify Dockerfile

    * build(docker): silence apt-get

    * build(github): docer image only for arm

    * chore(Dockerfile): trying to get arm to build

    * build(docker): trying to fix arm build

    * build(docker): fixed image for arm

    * build(docker): refer to correct branch

    * build(github): on PR, build only amd64 image

    * chore: typo

    * chore: typo

    * chore: typo

    * chore: typo

    * build(proto-compiler): use vendored-openssl

    * build(docker): add Alpine docker image to be built

    * build(docker): typo

    * build(github): build only amd64 on non-master branch

    * build(github): enable sccache

    * build(github): enable Github cache for sccache in Docker images

    * build(docker): minor caching fix

    * build(docker): avoid sccache port conflicts on parallel build in github

    * build(github): allow manual run of docker job

    * build(docker): add missing dependency for arm64

    * chore: remove unused dependencies

    * chore: display some stats

    * chore(proto-compiler): use vendored openssl

    * chore: fix comments

    * build(github): don't cache /target to use less space

    * build(github): don't precompile protobuf definitions

    * chore(proto-compiler): replace openssl with openssl-sys

    * Revert "build(github): don't precompile protobuf definitions"

    This reverts commit 8a49d5d.

    * chore(proto-compiler): optimize dependencies

    * refactor(proto-compiler): use ureq instead of reqwest to improve performance

commit 313c683
Author: lklimek <[email protected]>
Date:   Mon Apr 3 12:40:25 2023 +0200

    revert(abci): remove RefUniwndSafe trait from RequestDispatcher (#19)

commit 96878db
Author: lklimek <[email protected]>
Date:   Fri Mar 31 19:13:31 2023 +0200

    refactor(proto-compiler): download protobuf definitions via https instead of git (#18)

    * feat: use submodules instead of git2 crate to get protobuf definitions

    * test(proto): ensure that tenderdash version we use is correct

    * build(github): enable checkout submodules

    * build(github): enable checkout submodules

    * Revert " build(github): enable checkout submodules"

    This reverts commit 2ba1db3.

    * build(github): enable checkout submodules

    * chote(proto-compiler): use git checkout on tenderdash submodule

    * chore(proto-compiler): fix git handling

    * chore(proto-compiler): git fetch update shallow

    * chore(proto-compiler): fetch tags

    * chore(proto-compiler): update submodule as needed

    * chore(proto-compiler): download tenderdash sources zip instead of cloning git repo

    * chore(proto-compiler): create cache (/target) dir if not exist

    * build(github): don't checkout submodules anymore

* doc: Using custom protocol buffers definitions
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants