-
Notifications
You must be signed in to change notification settings - Fork 2.8k
fix(timing)!: remove --timings=<FMT> optional format values
#16420
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
Conversation
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.
Does it require an FCP?
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.
Might be good to get a vibe check in case there is interest in build analysis having X amount of functionality before it can replace --timings=json
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.
This has entered FCP: #16420 (comment).
I personally don't think we need to wait for the extra 10 days.
- People may not notice the removal until at least it hits nightly.
- People care about the evolution of timing report may have already followed the goal update in https://blog.rust-lang.org/2026/01/05/project-goals-2025-december-update/
- This is a nightly feature.
I am fine if we still want to wait for the full FCP.
Arguments to remove it * The `--timings=json` is obsolete as `-Zbuild-analysis` logging is a more approachable option, which doesn't need passing `--timings=json` ahead of time. * There is no support infra built around `--timings=json` yet, while for `-Zbuild-analysis` we have `cargo report timings` already. * `--timings=json` is a UI feature inherently unstable, and has no tests. Counterargument: * `--timings=json` outputs to stdout, but there is no alternative yet also outputs to stdout.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
|
@rfcbot fcp merge T-cargo This removes support for |
|
Team member @weihanglo has proposed to merge this. The next step is review by the rest of the tagged team members: No concerns currently listed. Once a majority of reviewers approve (and at most 2 approvals are outstanding), this will enter its final comment period. If you spot a major issue that hasn't been raised at any point in this process, please speak up! See this document for info about what commands tagged team members can give me. |
|
🔔 This is now entering its final comment period, as per the review above. 🔔 |
Update cargo submodule 24 commits in 94c368ad2b9db0f0da5bdd8421cea13786ce4412..fc4c92b64d1e0046b66cbdc747cc1c17af8b35a0 2025-12-26 19:39:15 +0000 to 2026-01-08 06:54:56 +0000 - Fixed incorrect version comparision during build script dependency selection (rust-lang/cargo#16486) - refactor: new type for unit index (rust-lang/cargo#16485) - feat(test): Make CARGO_BIN_EXE_ available at runtime (rust-lang/cargo#16421) - fix(package): detect dirty files when run from workspace member (rust-lang/cargo#16479) - fix(timing)!: remove `--timings=<FMT>` optional format values (rust-lang/cargo#16420) - docs(unstable): expand docs for `-Zbuild-analysis` (rust-lang/cargo#16476) - test: add `-Zunstable-options` with custom targets (rust-lang/cargo#16467) - feat(report): add cargo report rebuilds (rust-lang/cargo#16456) - feat(test-support): Use test name for dir when running tests (rust-lang/cargo#16121) - refactor: Migrate some cases to expect/reason (rust-lang/cargo#16461) - docs(build-script): clarify OUT_DIR is not cleaned between builds (rust-lang/cargo#16437) - chore: Update dependencies (rust-lang/cargo#16460) - Update handlebars to 6.4.0 (rust-lang/cargo#16457) - chore(deps): update alpine docker tag to v3.23 (rust-lang/cargo#16454) - Any build scripts can now use cargo::metadata=KEY=VALUE (rust-lang/cargo#16436) - fix(log): add `dependencies` field to `UnitRegistered` (rust-lang/cargo#16448) - Implement fine grain locking for `build-dir` (rust-lang/cargo#16155) - feat(resolver): List features when no close match (rust-lang/cargo#16445) - feat(report): new command `cargo report sessions` (rust-lang/cargo#16428) - feat (patch): Display where the patch was defined in patch-related error messages (rust-lang/cargo#16407) - test(build-rs): Reduce from 'build' to 'check' where possible (rust-lang/cargo#16444) - feat(toml): TOML 1.1 parse support (rust-lang/cargo#16415) - feat(report): support --manifest-path in `cargo report timings` (rust-lang/cargo#16441) - fix(vendor): recursively filter git files in subdirectories (rust-lang/cargo#16439)
What does this PR try to resolve?
Arguments to remove it
--timings=jsonis obsolete as-Zbuild-analysislogging isa more approachable option, which doesn't need passing
--timings=jsonahead of time.--timings=jsonyet,while for
-Zbuild-analysiswe havecargo report timingsalready.--timings=jsonis a UI feature inherently unstable, and has no tests.Counterargument:
--timings=jsonoutputs to stdout, but there is no alternative yetalso outputs to stdout.
feat(log): add output control #16418 was an attempt to add that back,
but we then decide to punt until seeing requests or needs.
How to test and review this PR?
cargo help buildand check the manpagecargo build --helpand cehck the help textcargo build --timingsand it works