Extract Platform to a separate crate.#7375
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,CfgExprtypes to a new crate named "cargo-platform". The intent here is to give users ofcargo_metadataa 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.rsexample, 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.