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

Publish 0.34 RC versions to DockerHub #5266

Closed
webmaster128 opened this issue Aug 19, 2020 · 6 comments
Closed

Publish 0.34 RC versions to DockerHub #5266

webmaster128 opened this issue Aug 19, 2020 · 6 comments

Comments

@webmaster128
Copy link

Hey Tendermint team!

The CosmJS folks would love to start building a Tendermint 0.34 compatible client in order to connect to Stargate-based chains and Tendermint directly. We develop a Tendermint RPC client that does not depend on any particular blockchain to keep things modular. Testing this client is possible using the docker images from https://hub.docker.com/r/tendermint/tendermint/ (using --proxy_app=kvstore).

Could you upload the latest 0.34 RC and upcoming RCs there as well? This would allow us to create a client independent of simapp development.

@webmaster128 webmaster128 changed the title Publish rc versions to DockerHub Publish 0.34 RC versions to DockerHub Aug 19, 2020
@tac0turtle
Copy link
Contributor

tac0turtle commented Aug 19, 2020

@alessio could you help with this?

@webmaster128 we do upload master to docker hub on every push. We don't plan on breaking the rpc before 0.34 is cut so you can use that as well

@webmaster128
Copy link
Author

@webmaster128 we do upload master to docker hub on every push. We don't plan on breaking the rpc before 0.34 is cut so you can use that as well

Thank you, I was not aware of this option. I always looked for something like 0.34-xyz.

@melekes
Copy link
Contributor

melekes commented Aug 25, 2020

yep, master tag should suffice for testing. I am going to close this.

@melekes melekes closed this as completed Aug 25, 2020
@webmaster128
Copy link
Author

Using the latest tag works indeed, thank you for pointing out this option.

However, it is far from an ideal solution because

  • CI jobs that run tendermint/tendermint:latest as a testing backend become non-deterministic
  • You always have to docker pull … to update the image which takes multiple seconds. With versioned tags you can just docker run … which pulls on demand
  • There is back and forth about API changes (rpc: events from WebSocket subscription are concatenated #5373) where it helps communication to know the state of the API in a particular version. As a user of Tendermint, I don't have versions like 0.34.0-ed046966 easily available.
  • For CosmJS's communication we'd need to be able to say our library supports Tendermint 0.34.0-rcXYZ or create a ticket upgrade Tendermint from -rc{n} to -rc{n+1}

Given that, I'd appreciate if you considered re-opening this ticket.

@willclarktech
Copy link

Hello @marbar3778, as predicted by @webmaster128 our CI runs have broken, apparently because of a change in tendermint/tendermint:latest. We now have lots of test failures like the following:

1) Client 0.34.x With HttpClient can call a bunch of methods
@cosmjs/tendermint-rpc:   - TypeError: Cannot read property 'total' of undefined
@cosmjs/tendermint-rpc:   /home/circleci/project/packages/tendermint-rpc/src/v0-33/responses.ts:266:54
@cosmjs/tendermint-rpc:       hash: fromHex(assertNotEmpty(data.hash)),
@cosmjs/tendermint-rpc:       parts: {
@cosmjs/tendermint-rpc:         total: Integer.parse(assertNotEmpty(data.parts.total)),
@cosmjs/tendermint-rpc:                                                        ~
@cosmjs/tendermint-rpc:         hash: fromHex(assertNotEmpty(data.parts.hash)),
@cosmjs/tendermint-rpc:       },

Of course, we can fix this by updating our code to match what's coming back from latest, but it would be much more convenient for us if we could choose when we update our code rather than being forced to whenever breaking changes occur.

@tac0turtle
Copy link
Contributor

I need to backport the docker update, will do that now, rc6 should have a docker image

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

No branches or pull requests

4 participants