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

Increasing MSRV problem with wasmer version auto-updating #174

Open
brew0722 opened this issue Mar 11, 2022 · 2 comments
Open

Increasing MSRV problem with wasmer version auto-updating #174

brew0722 opened this issue Mar 11, 2022 · 2 comments
Assignees
Labels
Blocker priority: blocker bug Something isn't working

Comments

@brew0722
Copy link
Contributor

brew0722 commented Mar 11, 2022

cosmwasm 0.16.3 uses wasmer 2.0.

However, wasmer 2.0 does not pin subpackages to 2.0, so the minor version is automatically increased. (2.0 -> 2.2)
The problem is that wasmer 2.2's MSRV is different from 2.0. Previously it was rust 1.54, but rust 1.55 is required.

We were able to restrict the wasmer version via cargo.lock in the cosmwasm and wasmvm repo.

But the problem arises again with contracts.
For test logic of contracts, refer to cosmwasm-vm package as dev-dependencies. So, the contract again has wasmer 2.2.0 dependency, and the above problem is reproduced.

After all, a lower rust version can compile the contract, but cannot test that. Until cargo.lock limits the wasmer subpackages.
So we must bump-up up to cosmwasm 0.16.4 with msrv of 1.55.0.

@brew0722 brew0722 self-assigned this Mar 11, 2022
@brew0722 brew0722 changed the title increasing MSRV problem with wasmer version auto-updating Increasing MSRV problem with wasmer version auto-updating Mar 11, 2022
@brew0722
Copy link
Contributor Author

This is precisely because of hashbrown 0.12.0 of rkyv's dependencies used by wasmer.
The problem of wasmer version automatically updating was solved by pinning subpackages to "=2.2.0" in 2.2.0.
But the rkyv is still not pinned so the same problem is reproduced.

This problem has been fixed in cosmwasm 0.16.5, but it may occur again in the process of developing a new contract or updating an existing contract.
CosmWasm/cosmwasm#1244

@brew0722
Copy link
Contributor Author

similar issue CosmWasm/cosmwasm#1204

I recommend that you look at all the comments on the above issues.
Fundamentally, the problem arises because there is no specifications of the cargo dependency system and msrv.
This bomb can be brust again anywhere we use Rust.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Blocker priority: blocker bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant