-
Notifications
You must be signed in to change notification settings - Fork 629
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Consider re-exporting rocksdb crate from store #6301
Comments
I don’t know if this is really an issue. Yes, we need to update the version in three places but that’s hardly a large number. Indexer uses rocksdb directly because it creates its own database unrelated to store. runtime-params-estimator uses the crate to bypass all of the abstraction. It doesn’t feel right to export rocksdb through store just to facilitate easy abstraction layer breaking. |
Yeah, that's a valid point. I guess I could argue a bit that exposing just the crate (as opposed to There's also rust-lang/cargo#10497 which presumably would allow us to fix this in a more principled way in a near future? |
Move all dependencies to root Cargo.toml file and refer to it using inheritance in all members of the workspace. This will hopefully help reduce noise when updating a package in the future. The only exception is `rand` dependency in core/crypto crate which needs to be held back at older version because of ed25519-dalek. Doing this, put union on cargo features in the root Cargo.toml so features don’t need to be enabled in member crates. The one exception to this rule is serde_json’s preserve_order feature which is only enabled in tools that need it. Fixes: #6301 Fixes: #7674
Move all dependencies to root Cargo.toml file and refer to it using inheritance in all members of the workspace. This will hopefully help reduce noise when updating a package in the future. The only exception is `rand` dependency in core/crypto crate which needs to be held back at older version because of ed25519-dalek. Doing this, put union on cargo features in the root Cargo.toml so features don’t need to be enabled in member crates. The one exception to this rule is serde_json’s preserve_order feature which is only enabled in tools that need it. Fixes: #6301 Fixes: #7674
#6300 made me realize that we specify version of rocks we use in several places. This is a bit subomtimal. In the
store/lib.rs
we might want to addpub extern crate rocksdb;
to have the version specified in just one Cargo.tomlThe text was updated successfully, but these errors were encountered: