-
Notifications
You must be signed in to change notification settings - Fork 133
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
test: enable sandbox build with --no-default-features #73
Conversation
utACK 3720b7d |
@@ -19,9 +19,9 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" | |||
|
|||
[[package]] | |||
name = "aes" | |||
version = "0.8.3" | |||
version = "0.8.4" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems like this slipped in by mistake?
Run which tests though? This seems to disable the tests entirely, not just the binary downloads If the goal is to skip tests entirely, couldn't the nixpkg process skip Out of curiosity, would it be possible to get nix to supply the binaries in the expected location, so that the build stage skips downloading them but the tests would still work? |
it only runs these
yes i'll just do that. |
For this purpose |
tests can be skipped but dev-dependencies are in the Cargo.lock on which tools like crane are based on, thus failing the build It may be the case to re-consider this |
Is there no way to tell Alternatively, maybe add an env var build option for
It's possible, but adding a new feature for this feels kinda hacky >.< |
this seems more hacky than adding a feature for this?
the option to skip downloads is not specifying the feature to download? |
Yes, stripping it like that is admittedly more hacky >.< But this solution is at least isolated in the context where its needed and doesn't effect other upstream projects.
I'm a bit hesitant about adding a feature for this because then we have to make sure that every script or CI configuration with And then, if you have another project that depends on OTOH, if this used a build time environment variable instead, it could be passed directly from the nix building environment down to the crates that need it ( |
I am not convinced because it can cause other issues but ok. |
Yes exactly 🙏 I can do the same for
You mean that the env var approach can cause other issues? |
Yes, like having a different version of the daemon in the PATH in comparison to the specified feature
great! |
Well you can still use Also, IIUC mismatching the feature version and actual version was already possible via
Added to electrumd in shesek/electrumd#1 A similar change is also needed in elementsd. And we'll also need to update electrs to use the latest {bitcoin,elements,electrum}d releases. |
I already did elementsd |
Cool! I opened #79 to update the dependencies here. |
I'm making a nixpkgs derivation for this repo, which is built in a sandbox with no network access.
This PR allows tests to be run with
--no-default-features
to disable the binary downloads in the bitcoind, elementsd, and electrumd dev dependencies. Default features will still download them.