You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There are quite a few problems with the umbrella crate although it is a good step in the right direction. There are a few issues
1. Umbrella crate doesn't work with macros
I recently updated one of our libraries (polytope-labs/sc-simnode#48) to the umbrella crate only to discover it is incompatible with the macros in:
sp-runtime-interface
cumulus-pallet-parachain-system
2. Missing features for individual crates
The umbrella crate does not allow for using crate-specific features, for example sp-core has the feature: full_crypto, sp-io has the feature: disable_panic_handler. And there are a lot more crates with their own features which are critical to downstream dependencies. None of these features are included in the umbrella crate. There needs to be script which pulls in all of the features of the individual crates in to the umbrella crate.
3. Umbrella crate has a very weird semver on crates.io
This is to me, perhaps the most important issue. The latest umbrella crate has a version v0.7.0 which corresponds to stable2409. But this versioning strategy is uncorrellated with the actual github versioning which would be 1.16.0. It's important that we use the same version everywhere to avoid confusion and dependency hell for downstream users. The umbrella crate should follow the official github release versioning. This would mean publishing the correct version for the polkadot-sdk crate that corresponds with it's github tag. Eg instead of 0.8.0 for stable2412 this should be v1.17.0.
This also allows for publishing patch versions, in between stable releases.
The text was updated successfully, but these errors were encountered:
There are quite a few problems with the umbrella crate although it is a good step in the right direction. There are a few issues
1. Umbrella crate doesn't work with macros
I recently updated one of our libraries (polytope-labs/sc-simnode#48) to the umbrella crate only to discover it is incompatible with the macros in:
2. Missing features for individual crates
The umbrella crate does not allow for using crate-specific features, for example
sp-core
has the feature:full_crypto
, sp-io has the feature:disable_panic_handler
. And there are a lot more crates with their own features which are critical to downstream dependencies. None of these features are included in the umbrella crate. There needs to be script which pulls in all of the features of the individual crates in to the umbrella crate.3. Umbrella crate has a very weird semver on crates.io
This is to me, perhaps the most important issue. The latest umbrella crate has a version
v0.7.0
which corresponds tostable2409
. But this versioning strategy is uncorrellated with the actual github versioning which would be1.16.0
. It's important that we use the same version everywhere to avoid confusion and dependency hell for downstream users. The umbrella crate should follow the official github release versioning. This would mean publishing the correct version for thepolkadot-sdk
crate that corresponds with it's github tag. Eg instead of0.8.0
forstable2412
this should bev1.17.0
.This also allows for publishing patch versions, in between stable releases.
The text was updated successfully, but these errors were encountered: