-
Notifications
You must be signed in to change notification settings - Fork 2.9k
Tracking Issue for cargo config #9301
Copy link
Copy link
Open
Labels
A-configurationArea: cargo config files and env varsArea: cargo config files and env varsC-tracking-issueCategory: A tracking issue for something unstable.Category: A tracking issue for something unstable.S-needs-mentorStatus: Issue or feature is accepted, but needs a team member to commit to helping and reviewing.Status: Issue or feature is accepted, but needs a team member to commit to helping and reviewing.S-waiting-on-feedbackStatus: An implemented feature is waiting on community feedback for bugs or design concerns.Status: An implemented feature is waiting on community feedback for bugs or design concerns.Z-cargo-configNightly: cargo config subcommandNightly: cargo config subcommand
Metadata
Metadata
Assignees
Labels
A-configurationArea: cargo config files and env varsArea: cargo config files and env varsC-tracking-issueCategory: A tracking issue for something unstable.Category: A tracking issue for something unstable.S-needs-mentorStatus: Issue or feature is accepted, but needs a team member to commit to helping and reviewing.Status: Issue or feature is accepted, but needs a team member to commit to helping and reviewing.S-waiting-on-feedbackStatus: An implemented feature is waiting on community feedback for bugs or design concerns.Status: An implemented feature is waiting on community feedback for bugs or design concerns.Z-cargo-configNightly: cargo config subcommandNightly: cargo config subcommand
Type
Fields
Give feedbackNo fields configured for issues without a type.
Projects
Status
Unstable, baking
Summary
Original issue: #2362Nightly: cargo config subcommand
Implementation: #9302
Design doc: https://hackmd.io/@ehuss/rkjp32Fg_
Documentation: https://doc.rust-lang.org/nightly/cargo/reference/unstable.html#cargo-config
Issues: Z-cargo-config
cargo configis a new subcommand for displaying config values.Unresolved issues
cargo config getalso includes sensitive information liketoken. Should there be some way to redact or remove sensitive things?Future extensions
setanddeletesubcommands.Needs a comment-preserving toml editor.editsubcommand which launches an editor. There are some decisions to be made on how it decides which file to edit.config get 'target."cfg(target_os=\"linux\")".runner'Unfortunately toml doesn't expose the parsing functions to make this easy. Could dofrom_str("{} = 1", key), and then collect all the key components. I wouldn't want that in the normal Config.get() path, though, for performance. I think it is fine to stabilize without this, since it can be added later, and is probably not a use case that I can imagine anyone needing.toml-value,toml-table,sh-value. The only one that seems useful to me issh-value, but I'm uncertain how that could handle maps (maybe just error in that case?).--show-originand--merged=noonly supports TOML. I don't know how JSON could display either of those, and I don't think it is important.--includes=noflag to disable include handling. I'm not sure if that is really necessary. The--merged=noflag will show includes and where values are coming from.cargo configdoes not fetch values fromCargo.toml. This could be confusing for things like profiles. There could be a flag like--merge-manifestor--manifest=Cargo.tomlto support that?build.rustflagswon't necessarily get the flags cargo actually uses. Maybeconfig getcould have special "computed" keys that take this into consideration? (see design doc)About tracking issues
Tracking issues are used to record the overall progress of implementation.
They are also used as hubs connecting to other relevant issues, e.g., bugs or open design questions.
A tracking issue is however not meant for large scale discussion, questions, or bug reports about a feature.
Instead, open a dedicated issue for the specific matter and add the relevant feature gate label.