Comments (6)
This seems to have happened because the cosmos-sdk-proto
crate is included via a path
; this is hiding the fact that the crate will reference the published version elsewhere, but not when built locally. To reproduce, you can apply this diff:
diff --git a/cosmrs/Cargo.toml b/cosmrs/Cargo.toml
index bbfa8ee..d3b75d8 100644
--- a/cosmrs/Cargo.toml
+++ b/cosmrs/Cargo.toml
@@ -12,7 +12,7 @@ edition = "2021"
rust-version = "1.56"
[dependencies]
-cosmos-sdk-proto = { version = "0.8", default-features = false, path = "../cosmos-sdk-proto" }
+cosmos-sdk-proto = { version = "0.8", default-features = false }
ecdsa = { version = "0.13", features = ["std"] }
eyre = "0.6"
k256 = { version = "0.10", features = ["ecdsa", "sha256"] }
And then try to run the tests.
It might be worth decoupling the publishing process for these two crates to prevent this in the future.
from cosmos-rust.
I was literally about to post the same issue here as I attempted to build using version 0.4.0 : )
What seems that has happened is that even though a new version of cosmrs
was released, nothing was done [in terms of releases] for the cosmos-sdk-proto
crate, even though it got changed between cosmrs
0.3.0 and 0.4.0. The notable difference includes the protobuf path changes:
cosmrs 0.3.0:
pub mod cosmwasm {
/// Messages and services handling CosmWasm.
pub mod wasm {
pub mod v1beta1 {
include!("prost/cosmwasm.wasm.v1beta1.rs");
}
}
}
cosmrs 0.4.0
pub mod cosmwasm {
/// Messages and services handling CosmWasm.
pub mod wasm {
pub mod v1 {
include!("prost/cosmwasm.wasm.v1.rs");
}
}
}
Thus, it would be amazing if cosmos-sdk-proto
was updated to 0.9
and was put into cosmrs
0.4.1 release.
from cosmos-rust.
I agree with your assessment. PR to release cosmos-sdk-proto
v0.9 here: #167
from cosmos-rust.
I'd recommend not relying on path
when publishing, otherwise it's difficult to detect these discrepancies between published and unpublished changes in deps.
from cosmos-rust.
I'd recommend not relying on path when publishing
What are you suggesting exactly? Removing it to publish, then always following up with another commit to add it back? Seems tedious.
from cosmos-rust.
Fixed by #168
from cosmos-rust.
Related Issues (20)
- TallyParams Undocumented Decimal Type HOT 2
- Enable cosmrs support `no_std` HOT 5
- Maybe Can Use only one crate `cosmos-sdk-proto` or `ibc-proto-rs` HOT 6
- Sync versions with tendermint-rs?
- wasm-bindgen issue when using cosmrs in CosmWasm HOT 10
- Type URLs for x/authz messages not present HOT 4
- Add additional derive macros to Prost generated types HOT 19
- gov/v1 HOT 2
- Does this crate only supports gRPC for querying contracts states? HOT 4
- proto build fails because of deprecated buf template HOT 1
- Update crypto lib HOT 2
- Error: failed to load state at height 0; version mismatch on immutable IAVL tree; version does not exist. Version has either been pruned, or is for a future block height (latest height: 0): invalid request HOT 1
- 405 Method Not Allowed HOT 2
- Update ibc-go types HOT 1
- Error with user entered invalid UTF8 for protobuf structs.
- bug: cargo run ends in an error
- proto-build: bump COSMOS_SDK_REV to v0.47 or higher HOT 3
- Querying `minimum_gas_price` HOT 3
- How to output the private key and print it to the terminal? HOT 2
- Abandon `cosmos-sdk-proto` in favor of `ibc-proto`? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cosmos-rust.