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

Compatibility check doesn't seem to handle non semantic versions properyly, emits a warning #1337

Closed
2 of 5 tasks
andynog opened this issue Sep 8, 2021 · 1 comment · Fixed by #1357
Closed
2 of 5 tasks
Labels
I: CLI Internal: related to the relayer's CLI
Milestone

Comments

@andynog
Copy link
Contributor

andynog commented Sep 8, 2021

Crate

ibc-relayer

Summary of Bug

Hermes might issue a warning when a theoretically valid version (but not semantic version).

Version

v.0.6.2

Steps to Reproduce

Running Hermes on a chain that has a version such as 0.42.0-rc0 might trigger this. For example the compatibility list requires >=0.41.3 and <= 0.42.6.

Sep 08 10:30:46.443 WARN Hermes health check failed while verifying the application compatibility for chain regen-1:http://[ip_address]:9090/; caused by: SDK module at version '0.42.0-rc0' does not meet compatibility requirements >=0.41.3, <=0.42.6 for application regen:v1.0.0-1b7c80ef102d3ae7cc40bba3ceccd97a64dadbfd Sep 08 10:30:46.443 WARN some Hermes features may not work in this mode!

Acceptance Criteria

I'm not sure if there's a easy way to check compatibility if chains don't follow a semantic versioning scheme. Since this is a warning it's not a high priority for now. Just reporting it.


For Admin Use

  • Not duplicate issue
  • Appropriate labels applied
  • Appropriate milestone (priority) applied
  • Appropriate contributors tagged
  • Contributor assigned/self-assigned
@andynog andynog added the I: CLI Internal: related to the relayer's CLI label Sep 8, 2021
@adizere adizere modified the milestones: 10.2021, 11.2021 Sep 10, 2021
@romac
Copy link
Member

romac commented Sep 16, 2021

This indeed follows the semver spec: (emphasis mine)

A pre-release version indicates that the version is unstable and might not satisfy the intended compatibility requirements as denoted by its associated normal version

Which means that the spec leaves the handling of pre-release version to us. If we feel that's the right to do, I guess we could match against the version without the pre-release version. What do you think @andynog @adizere?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
I: CLI Internal: related to the relayer's CLI
Projects
None yet
3 participants