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

Sync Feature Branch With Main #6662

Conversation

gjermundgaraba
Copy link
Contributor

Description

This PR pulls all the changes from main into the feature branch.
The only change I made was to update a call to GetMsgTransfer (commented in changes ->)


Before we can merge this PR, please make sure that all the following items have been
checked off. If any of the checklist items are not applicable, please leave them but
write a little note why.

  • Targeted PR against the correct branch (see CONTRIBUTING.md).
  • Linked to GitHub issue with discussion and accepted design, OR link to spec that describes this work.
  • Code follows the module structure standards and Go style guide.
  • Wrote unit and integration tests.
  • Updated relevant documentation (docs/).
  • Added relevant godoc comments.
  • Provide a conventional commit message to follow the repository standards.
  • Include a descriptive changelog entry when appropriate. This may be left to the discretion of the PR reviewers. (e.g. chores should be omitted from changelog)
  • Re-reviewed Files changed in the GitHub PR explorer.
  • Review SonarCloud Report in the comment section below once CI passes.

dependabot bot and others added 16 commits June 16, 2024 20:11
)

Bumps [bufbuild/buf-setup-action](https://github.com/bufbuild/buf-setup-action) from 1.32.2 to 1.33.0.
- [Release notes](https://github.com/bufbuild/buf-setup-action/releases)
- [Commits](bufbuild/buf-setup-action@v1.32.2...v1.33.0)

---
updated-dependencies:
- dependency-name: bufbuild/buf-setup-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Update 00-intro.md

spelling error fix

* Update 06-channel-upgrades.md

spelling error fix

* Update 05-v3-to-v4.md

spelling error fix

* Update ics08-requirements.md

spelling error fix

* Update ics08-requirements.md

spelling error fix
* chore(deps): bump github.com/spf13/cobra from 1.8.0 to 1.8.1

Bumps [github.com/spf13/cobra](https://github.com/spf13/cobra) from 1.8.0 to 1.8.1.
- [Release notes](https://github.com/spf13/cobra/releases)
- [Commits](spf13/cobra@v1.8.0...v1.8.1)

---
updated-dependencies:
- dependency-name: github.com/spf13/cobra
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* deps: bump cobra to 1.8.1 in all mods and tidy.

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: DimitrisJim <d.f.hilliard@gmail.com>
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 5.4.0 to 6.0.0.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](docker/build-push-action@ca052bb...c382f71)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Adding proto files for ics20-v2 (#6110)

* chore: adding proto files for ics20-v2

* chore: add newline

* update amount -> string (#6120)

* Update MsgTransfer to accept sdk.Coins instead of sdk.Coin (#6113)

* fix: allow base denom with trailing slash (#6148)

* imp: add CurrentVersion, EscrowVersion (#6160)

* add CurrentVersion, EscrowVersion, update tests

* update hardcoded transfer channel version from interchaintest

* chore: add function for converting packet data from v1 to v3 (#6116)

---------

Co-authored-by: Charly <charly@interchain.berlin>

* chore: implement required `FungibleTokenPacketData` v3 interface methods (#6126)

* imp: `getMultiDenomFungibleTokenPacketData`to be used in packet unmarshalling/conversion (#6226)

* chore: adding proto files for ics20-v2

* chore: add newline

* chore: modify MsgTransfer to accept coins instead of coin

* chore: reverted unintentional comment changes

* chore: reverted unintentional comment changes

* chore: adding test for conversion fn

* chore: fix e2e linter

* chore: adding docs

* chore: addressing PR feedback

* chore: remove duplicate import

* chore: addressing PR feedback

* chore: moved extration logic into internal package

* chore: commented out failing test

* chore: adding link to issue

* chore: remove duplicate import

* chore: fix linting errors

* FungibleTokenPacketData interface methods + tests

* linter

* wip: token validation

* update trace identifier validation in Token + tests

* rm Printf

* update with pr review

* add CurrentVersion, EscrowVersion, update tests

* pr review

* fix e2e tests

* pr review

* update e2e test version

* linter

* update hardcoded transfer channel version from interchaintest

* update hardcoded transfer channel version from interchaintest

* wip packet unmarshaller

* wip

* wip testing

* update test

* linter

* rm unnecessary version changes

* rm unnecessary artifacts

* update callbacks test

* update comment

* pr review

* rename getMultiDenomFungibleTokenPacketData to unmarshalPacketDataBytesToICS20V2

---------

Co-authored-by: chatton <github.qpeyb@simplelogin.fr>
Co-authored-by: Carlos Rodriguez <carlos@interchain.io>

* chore: implement version checking for channel handshake application callbacks (#6175)

* add SupportedVersions array for different ics20 versions, add version checking on channel handshake application callbacks

* add tests

* update pr review

* pr review

* last few pr review nits

* linter

* add version counter proposing

* fix missing app versino

* update code + tests to return our proposed version if counterparty version is invalid

* remove if statement

* address review comments: return ics20-2 if counterparty version is not supported

---------

Co-authored-by: Carlos Rodriguez <carlos@interchain.io>

* imp: update transfer authz implementation to account for multi denom transfers (#6252)

* add transfer authz code + tests

* linter

* address review comments

---------

Co-authored-by: Carlos Rodriguez <carlos@interchain.io>

* ics20-v2: backwards compatibility for transfer rpc and packet callbacks (#6189)

* chore: adding proto files for ics20-v2

* chore: add newline

* chore: modify MsgTransfer to accept coins instead of coin

* chore: reverted unintentional comment changes

* chore: reverted unintentional comment changes

* chore: adding test for conversion fn

* chore: fix e2e linter

* chore: adding docs

* chore: addressing PR feedback

* chore: remove duplicate import

* chore: addressing PR feedback

* chore: moved extration logic into internal package

* chore: commented out failing test

* chore: adding link to issue

* chore: remove duplicate import

* chore: fix linting errors

* FungibleTokenPacketData interface methods + tests

* linter

* wip: token validation

* update trace identifier validation in Token + tests

* rm Printf

* update with pr review

* pr review

* linter

* rm unused function: linter

* wip pr feedback

* fix test

* pr review

* lintttttt

* wip: backwards compatibility for transfer rpc

* implement changes for ics20-v2 packet data for onRecvPacket, onAcknowledgePacket and onTimeoutPacket

* fix callbacks tests

* lint

---------

Co-authored-by: chatton <github.qpeyb@simplelogin.fr>
Co-authored-by: Charly <charly@interchain.berlin>

* multidenom transfer test + ics20-v2 channel upgrade test

* some fixes

* changes to transfer tx CLI to support multiple denoms

* lint

* import renaming

* Use type with V2 suffix for package data (#6330)

* Adding additional comments and changing version variable names (#6345)

* chore: correctly claim capability

* lint

* imp: change ics20 events to emit token set (#6348)

* refactor: quick change to tokens event attribute

* fix: various tests

* lint

* lint:fixeroni

* imp: remove events variable in favour of direct event emission

---------

Co-authored-by: DimitrisJim <d.f.hilliard@gmail.com>

* imp: check length tokens array against maximum allowed (#6349)

* check length of tokens array against maximum allowed

* chore: add note on arbitrary selection

---------

Co-authored-by: Colin Axnér <25233464+colin-axner@users.noreply.github.com>

* Modify UnmarshalPacketData interface to allow additional args (#6341)

* api(port)!: Allow passing of context, port and channel identifier to unmarshal packet data interface as disussed.

This allows us to grab the app version in transfer and unmarshal the packet based on that instead of a hacky unmarshal v2 then v1 and whatever happens.

* lint: as we do

* callbacks: fix signature of UnmarshalPacketData as per changes, make refactors to hopefully simplify signatures.

* chore: lint and remove some todos.

* review: address feedback.

* Refactor packet data unmarshalling to use specific version (#6354)

* chore: specifically unmarshal v1 or v2 without brute force

* chore: fix TestPacketDataUnmarshalerInterface test in transfer module

* Pass dest values OnRecv, refactor GetExpectedEvents

* chore: fixing TestGetCallbackData test

* chore: fixed remaining tests in callbacks module

* test: simplify callbacks test, revert back to previous behaviour

* chore: fix test case name

* chore: addressing PR feedback

* chore: added docstring for unmarshalPacketDataBytesToICS20V2

---------

Co-authored-by: DimitrisJim <d.f.hilliard@gmail.com>
Co-authored-by: Colin Axnér <25233464+colin-axner@users.noreply.github.com>

* chore: fixing tests

* imp: self review comments for ics20-v2 (#6360)

* refactor: address various self review comments

* revert: unnecessary change

* lint

* imp: self review on ics20-v2 part 2 (#6364)

* refactor: apply review suggestions

* imp: additional updates

* refactor: make ValidateIBCDenom private

* Update modules/apps/transfer/types/msgs.go

Co-authored-by: Cian Hatton <cian@interchain.io>

* apply review suggestions

---------

Co-authored-by: Cian Hatton <cian@interchain.io>

* chore: move functions from internal/denom back to trace.go (#6368)

* chore: move functions from internal/denom to trace.go

* lint

* lint: the comeback

* imp: ics20 v2 self review part 3 (#6373)

* imp: self review items

* apply jim's suggestion

* Update modules/apps/transfer/keeper/msg_server_test.go

* Update modules/apps/transfer/ibc_module.go

* Update modules/apps/transfer/ibc_module.go

* chore: remove duplicate test case

* chore: address minor nits (#6374)

* Refactor msgs_test.go to use expError (#6367)

* chore: refactoring msgs_test.go to use expError

* chore: updating expected errors

* chore: update MsgUpdateParams and lint

---------

Co-authored-by: DimitrisJim <d.f.hilliard@gmail.com>

* chore: remove unused chain variable in setup (#6371)

* use new queries in e2e

* add test for error ack multidenom transfer

* downgrade test to ics20-1

* add test to upgrade channel to fee middleware and ICS20 v2

* revert some unnecessary changes

* add transfer failure multidenom test to compatibility

* updates to multidenom invalid adress test

* fix value comparison

* review comments

---------

Co-authored-by: Cian Hatton <cian@interchain.io>
Co-authored-by: Charly <charly@interchain.io>
Co-authored-by: Charly <charly@interchain.berlin>
Co-authored-by: chatton <github.qpeyb@simplelogin.fr>
Co-authored-by: Colin Axnér <25233464+colin-axner@users.noreply.github.com>
Co-authored-by: DimitrisJim <d.f.hilliard@gmail.com>
* chore: add compatibility tests for v7.6.x

* Update ica-unordered-channel.json

* Update incentivized-transfer-2.json
…etupTest #1 (#6629)

* wip: refactoring tests to create chains in SetupSuite

* chore: refactoring memo test to use new setup fns

* chore: replace calls to setup chains and relayer with calls to get relayer and get channel

* chore: fix wiring in ThreeChainSetup

* chore: remove unused fn

* chore: add modification function based on chain inputs

* chore: update grandpa test with new structure

* chore: remove single chain methods

* chore: move upgrade tests into different files

* chore: fixing client tests

* chore: use paths associated with the test

* chore: add getter to fetch paths

* chore: fix client tests

* chore: fix misbehaviour test

* chore: fix misbehaviour test

* chore: mereg main

* chore: pr feedback
…gs (#6633)

* refactor: adapt merkle path to use repeated bytes in favour of strings

* chore: add changelog
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6.0.0 to 6.0.1.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](docker/build-push-action@c382f71...94f8f8c)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* wip: improvements

* more improvements

* alignment

* update the light client integration section

* nit

* adding some extra imports

* Apply suggestions from code review

Co-authored-by: Damian Nolan <damiannolan@gmail.com>

---------

Co-authored-by: Damian Nolan <damiannolan@gmail.com>
s.GetTimeoutHeight(ctx, chainB),
0,
"",
transfertypes.Forwarding{},
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Just had to add forwarding here. Besides that, no changes.

@gjermundgaraba gjermundgaraba added the priority PRs that need prompt reviews label Jun 20, 2024
Copy link

sonarcloud bot commented Jun 20, 2024

Copy link
Contributor

@chatton chatton left a comment

Choose a reason for hiding this comment

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

LGTM! happy to do a merge commit once the tests (excluding wasm) was looking good! Thanks for handling this

Copy link
Contributor

@crodriguezvega crodriguezvega left a comment

Choose a reason for hiding this comment

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

Thank you for taking care of this, @gjermundgaraba!

@gjermundgaraba
Copy link
Contributor Author

@chatton There are two (non-wasm) tests still failing, but even after updating local values I cannot reproduce.

@chatton
Copy link
Contributor

chatton commented Jun 20, 2024

@gjermundgaraba let's still go ahead and merge I think, the test is passing locally for me also. It's annoying but I think we can get this merged to keep progress going on ics20-v2

@chatton chatton merged commit 1ca1f2f into feat/ics20-v2-path-forwarding Jun 20, 2024
82 of 90 checks passed
@chatton chatton deleted the gjermund/merge-main-to-feat-ics20-v2-path-fowarding branch June 20, 2024 13:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
priority PRs that need prompt reviews
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants