-
Notifications
You must be signed in to change notification settings - Fork 67
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
Optimize compile times by replacing the dependency on the cargo crate #69
Comments
This is probably related to #16. 🙂 |
Yes, that would be an amazing optimization, simply not building cargo :) |
cargo-geiger would likely also need to inject a RUSTC_WRAPPER environment variable and call |
Following on from the comment on #16 the remaining usages of the cargo crate are
I have raised #165 to cleanup a trait only used in unit testing, and add a comment relating to |
The current compile times are a bit painful, mainly caused by cargo having a huge number dependencies. The obvious solution could be to reduce the number of dependencies of cargo.
Another very nice direction could be to use cargo as a subprocess, no building cargo at all! Can cargo output all the data needed by cargo-geiger?
If not, what's missing? Make this list and then open an issue in the cargo repo and ask if a PR adding that missing data export would be welcome.Use cargo_metadata.Summary
cargo_metadata
to explore the dependency tree. Use cargo_metadata to explore the dependency tree. #16cargo
executable with theRUSTC_WRAPPER
environment variable set to some executable installed bycargo-geiger
, let's see if the same executable,cargo-geiger
, can be used for this purpose and detect if the first argument isrustc
. See https://doc.rust-lang.org/cargo/reference/environment-variables.html. Consider using: https://doc.rust-lang.org/std/env/fn.current_exe.htmlcargo
as a dependency.The text was updated successfully, but these errors were encountered: