* rename provedID
rename provedID to counterpartyChosenID for connection and channel. Update if statement in handshake and tests. Ref: https://github.com/cosmos/cosmos-sdk/pull/7439#discussion_r498858944
* update docs
Co-authored-by: Christopher Goes <cwgoes@pluranimity.org>
The simd target is removed in favor of build/install targets:
- build runs go build ./... with all appropriate flags and args.
- install runs go install ./... with all approriate flags and args.
localnet-start now depends on build-linux [1].
[1] This should hopefully put a smile on @alexanderbez's face!
Remove unused install scripts and snapcraft build files.
* update channel handshake
Add ProvedID to ChanOpenTry which allows for flexible handshake identifier selection. Add CounterpartyChannelID to OpenAck. Update and add to handshake tests. Modify msgs_test. Counterparty ValidateBasic will return nil on an empty channel identifier to allow for flexible handshake identifier selection to succeed.
* Update x/ibc/core/04-channel/keeper/handshake.go
* add conn open init docs
* update docs for conn open try and conn open ack
* update channel docs
* update connopeninit
Update ConnOpenInit to reflect changes in https://github.com/cosmos/ics/pull/482. An additional version field is added to the connection handshake and connection open init message to take in an optional field. If this field is empty, then the default versions are used for connection handshake version negotiation.
* add version compatibility check in open init
* implement partial changes to conn open try
* partial implementation of conn open ack changes
* fix tests
* add handshake tests
* make proto
* fix conflicts
* fix lint
* fix lint
* increase code cov
Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>
* update solo machine proto types to use enum for uniqueness
* move data type to SignatureAndData
Adjusts SignatureAndData proto definition to take in a DataType. Updates misbehaviour basic validation to do checks on the data type. Adds unmarshaling tests.
* split signature bytes creation to allow for function reusing. Stuck on strange error on testing codec.go
* fix test bug
* update UnmarshalByType and refactor misbehaviour handle
Rename CanUnmarshalDataByType -> UnmarshalDataByType. Return a new interface and error. Refactor tests to work. Refactor misbehaviour_handle.go to check unmarshaling of the data and DRY code by separating signature and data checks into its own function. Update godoc.
* add tests to codec_test.go
* self review + lint
* update spec
* fix lint
* Update x/ibc/light-clients/solomachine/spec/01_concepts.md
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
* increase code cov, update spec
apply most of @fedekunze comments.
* format spec
* make proto
* fix merge conflicts
* make proto
* fix conflicts
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Federico Kunze <federico.kunze94@gmail.com>
* Add fee payer to protobuf definition
* Compile new tx type
* Use FeePayer from Tx, add it to required signers
* Add unit tests on proper handling of FeePayer field
* Use string address for fee payer field
* Update logic for string feePayer
* add multisig support to testing pkg
Adds single and multisig public key support to the testing package. Fix build associated with changes.
* update clientstate tests to use singlesig and multsig
* add singlesig and multisig tests for consensus state, header, and misbehaviour
* add singlesig and multisig for solomachine handlers
* add spec
* fix lgtm
* fixes from self review
* fix lint?
* fix build
* increase code cov
* Update x/ibc/light-clients/solomachine/types/client_state.go
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
* apply @fedekunze review suggestions
Add comment to VerifyMultisignature explaining why it uses the nested function. Switch panic to require. Add comment for secp256k1 key usage. Ref: https://github.com/cosmos/cosmos-sdk/pull/7383#pullrequestreview-496591518
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Christopher Goes <cwgoes@pluranimity.org>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
* add check in header updates for non decreasing timestamp
Add check in update.go that the header timestamp is non decreasing compared to the consensus state timestamp. Unit test added in update_test.go
* update error message
* update godoc
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
* Update QueryTendermint to take in tendermint height
Update QueryTendermint to subtract the provided height by one to query at the IAVL height.
* Update x/ibc/client/query.go
Co-authored-by: Christopher Goes <cwgoes@pluranimity.org>
* update height check to > 2
Update height check to ensure that the client context height is greater than two before decrementing. Queries at height 0 and 1 are not expected to succeed. Documentation was updated to reflect this reasoning
* update query to return error for height <= 2
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
Co-authored-by: Christopher Goes <cwgoes@pluranimity.org>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
* adr-27: adding
Each ADR should have an abstract and an example use case to quickly present the goal.
Here, adding this to DR 027: Deterministic Protobuf Serialization
* review update
* added link to TxRaw
* added list of major use-cases
* updated wording in context and abstract
* updated the adr-020 part
* add consequences and motivation for TxRaw
* Update docs/architecture/adr-027-deterministic-protobuf-serialization.md
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
* Update docs/architecture/adr-027-deterministic-protobuf-serialization.md
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
* Update docs/architecture/adr-027-deterministic-protobuf-serialization.md
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
* Update docs/architecture/adr-027-deterministic-protobuf-serialization.md
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
* Update docs/architecture/adr-027-deterministic-protobuf-serialization.md
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
* rewording
* Update docs/architecture/adr-027-deterministic-protobuf-serialization.md
Co-authored-by: Simon Warta <2603011+webmaster128@users.noreply.github.com>
* Update docs/architecture/adr-027-deterministic-protobuf-serialization.md
Co-authored-by: Simon Warta <2603011+webmaster128@users.noreply.github.com>
* Update docs/architecture/adr-027-deterministic-protobuf-serialization.md
Co-authored-by: Simon Warta <2603011+webmaster128@users.noreply.github.com>
Co-authored-by: Amaury Martiny <amaury.martiny@protonmail.com>
Co-authored-by: Simon Warta <2603011+webmaster128@users.noreply.github.com>
Co-authored-by: Cory <cjlevinson@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
* setup: update linter make jobs
* go lint: remove wsl from golangci-lint config
* rollback to use disable-all
* bring back vendor rules
* lint fails on golangci-lint error
Co-authored-by: Alessio Treglia <alessio@tendermint.com>