-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Extract Platform to a separate crate. #7375
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
Conversation
r? @Eh2406 (rust_highfive has picked a reviewer for you, use r? to override) |
See #7376 for an alternative approach for this. |
I agree that this is pretty nontrivial and probably not a great solution for Do you think, though, that even for pure Cargo-only purposes this still isn't worth it? |
If there are no objections, I'm fine with splitting it out. Before merging, I'd like to get feedback from someone (@pietroalbini ?) on the publish script and whether it will be useful. Some notes on it:
|
cc @Mark-Simulacrum who's going to manage the 1.38 release. |
I don't mind having it but so long as the number of crates is less than 5 or so I'm fine with manual publishing - it's not too hard to cd around and run cargo publish. The main "slowness" comes from needing to wait for the publish verification to complete so that I know I'm not doing anything wrong :) |
@bors: r+ Ok sounds good! Let's go ahead and merge this and we can figure out publication closer to the release itself if anything becomes a snag. |
📌 Commit 57c96c1 has been approved by |
Extract Platform to a separate crate. This moves the `Platform`, `Cfg`, `CfgExpr` types to a new crate named "cargo-platform". The intent here is to give users of `cargo_metadata` a way of parsing and inspecting cargo's platform values. Along the way, I rewrote the error handling to remove `failure`, and to slightly improve the output. I'm having doubts whether or not this is a good idea. As you can see from the `examples/matches.rs` example, it is nontrivial to use this (which also misses cargo's config values and environment variables). I don't know if anyone will actually use this. If this doesn't seem to have value, I would suggest closing it. I've also included a sample script, `publish.py`, for publishing cargo itself. I suspect it will need tweaking, but I figure it would be a start and open for feedback.
☀️ Test successful - checks-azure |
11 commits in b6c6f685b38d523580813b0031677c2298f458ea..aa6b7e01abce30091cc594cb23a15c46cead6e24 2019-09-19 21:10:09 +0000 to 2019-09-24 17:19:12 +0000 - Fix interpretation of `--features a b` on the CLI (rust-lang/cargo#7419) - Update env_logger requirement from 0.6.0 to 0.7.0 (rust-lang/cargo#7422) - Update some unstable docs (rust-lang/cargo#7407) - Fix xcompile tests. (rust-lang/cargo#7408) - -Ztimings: Fix more scale problems. (rust-lang/cargo#7403) - Fix some rendering issues with -Ztimings. (rust-lang/cargo#7397) - -Ztimings: show max jobs/cpus (rust-lang/cargo#7398) - Fix -Ztimings with doc tests. (rust-lang/cargo#7395) - Add documentation for the -Zdoctest-xcompile feature (rust-lang/cargo#7391) - Fix integration tests waiting for binaries to finish. (rust-lang/cargo#7394) - Extract Platform to a separate crate. (rust-lang/cargo#7375)
…tsakis Update cargo 11 commits in b6c6f685b38d523580813b0031677c2298f458ea..aa6b7e01abce30091cc594cb23a15c46cead6e24 2019-09-19 21:10:09 +0000 to 2019-09-24 17:19:12 +0000 - Fix interpretation of `--features a b` on the CLI (rust-lang/cargo#7419) - Update env_logger requirement from 0.6.0 to 0.7.0 (rust-lang/cargo#7422) - Update some unstable docs (rust-lang/cargo#7407) - Fix xcompile tests. (rust-lang/cargo#7408) - -Ztimings: Fix more scale problems. (rust-lang/cargo#7403) - Fix some rendering issues with -Ztimings. (rust-lang/cargo#7397) - -Ztimings: show max jobs/cpus (rust-lang/cargo#7398) - Fix -Ztimings with doc tests. (rust-lang/cargo#7395) - Add documentation for the -Zdoctest-xcompile feature (rust-lang/cargo#7391) - Fix integration tests waiting for binaries to finish. (rust-lang/cargo#7394) - Extract Platform to a separate crate. (rust-lang/cargo#7375)
This moves the
Platform
,Cfg
,CfgExpr
types to a new crate named "cargo-platform". The intent here is to give users ofcargo_metadata
a way of parsing and inspecting cargo's platform values.Along the way, I rewrote the error handling to remove
failure
, and to slightly improve the output.I'm having doubts whether or not this is a good idea. As you can see from the
examples/matches.rs
example, it is nontrivial to use this (which also misses cargo's config values and environment variables). I don't know if anyone will actually use this. If this doesn't seem to have value, I would suggest closing it.I've also included a sample script,
publish.py
, for publishing cargo itself. I suspect it will need tweaking, but I figure it would be a start and open for feedback.