Skip to content

Conversation

weihanglo
Copy link
Member

What does this PR try to resolve?

Although we've already check rustcflags in cargo test suite,
a basic test against real work debuggers is still wholesome.

How should we test and review this PR?

Have lldb installed, then run the new test lldb_works_after_trimmed.

Additional information

This is actually a test in preparation of a fix in rustc I am working on,
but should be fine to land this without knowing that fix.

I also plan to work on adding more test with windbg/cdb,
though I haven't found a good way to test on Windows without a physicall Windows machine.

@rustbot
Copy link
Collaborator

rustbot commented Dec 1, 2023

r? @epage

(rustbot has picked a reviewer for you, use r? to override)

@rustbot rustbot added A-infrastructure Area: infrastructure around the cargo repo, ci, releases, etc. A-testing-cargo-itself Area: cargo's tests S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Dec 1, 2023
@epage
Copy link
Contributor

epage commented Dec 1, 2023

Since we don't have anything like this before, whats the test-time cost of doing this?

@weihanglo
Copy link
Member Author

Since we don't have anything like this before, whats the test-time cost of doing this?

For the test itself, it is fairly fast. It took 2s to run cargo +nightly t --test testsuite lldb_works_after_trimmed on M1 macbook. Here is a list of test time for all trim paths tests:

test profile_trim_paths::gated_manifest ... ok <0.993s>
test profile_trim_paths::gated_config_toml ... ok <1.048s>
test profile_trim_paths::multiple_options ... ok <1.417s>
test profile_trim_paths::profile_merge_works ... ok <0.636s>
test profile_trim_paths::diagnostics_works ... ok <1.671s>
test profile_trim_paths::release_profile_default_to_object ... ok <0.460s>
test profile_trim_paths::path_dependency ... ok <1.964s>
test profile_trim_paths::path_dependency_outside_workspace ... ok <1.162s>
test profile_trim_paths::git_dependency ... ok <2.217s>
test profile_trim_paths::lldb_works_after_trimmed ... ok <2.421s>
test profile_trim_paths::one_option ... ok <2.549s>
test profile_trim_paths::registry_dependency ... ok <1.504s>
test profile_trim_paths::custom_build_env_var_trim_paths ... ok <5.197s>

For the entire CI time, the cost is download time of apt install lldb. Around 4-5 seconds for 100MB extra download.

@epage
Copy link
Contributor

epage commented Dec 1, 2023

@bors r+

@bors
Copy link
Contributor

bors commented Dec 1, 2023

📌 Commit 5c32fe0 has been approved by epage

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Dec 1, 2023
@bors
Copy link
Contributor

bors commented Dec 1, 2023

⌛ Testing commit 5c32fe0 with merge c192d98...

@bors
Copy link
Contributor

bors commented Dec 1, 2023

☀️ Test successful - checks-actions
Approved by: epage
Pushing c192d98 to master...

@bors bors merged commit c192d98 into rust-lang:master Dec 1, 2023
bors added a commit to rust-lang-ci/rust that referenced this pull request Dec 2, 2023
Update cargo

25 commits in 26333c732095d207aa05932ce863d850fb309386..58fb23140972092a12f7011d17a7db1d99e3eacf
2023-11-28 20:07:39 +0000 to 2023-12-02 14:15:16 +0000
- test(install): use TCP connection instead of thread sleep (rust-lang/cargo#13099)
- test(mdman): Switch to snapbox (rust-lang/cargo#13098)
- Include declared list of features in fingerprint for `-Zcheck-cfg` (rust-lang/cargo#13012)
- chore(deps): update compatible (rust-lang/cargo#13083)
- chore(ci): Always update gix packages together (rust-lang/cargo#13093)
- chore(deps): update rust crate windows-sys to 0.52 (rust-lang/cargo#13089)
- refactor(toml): Decouple logic from schema (rust-lang/cargo#13080)
- Have cargo add --optional &lt;dep&gt; create a &lt;dep&gt; = "dep:&lt;dep&gt; feature (rust-lang/cargo#13071)
- Add `--public` for `cargo add` (rust-lang/cargo#13046)
- chore(deps): update rust crate toml_edit to 0.21.0 (rust-lang/cargo#13088)
- chore(deps): update rust crate rusqlite to 0.30.0 (rust-lang/cargo#13087)
- test(trim-paths): exercise with real world debugger (rust-lang/cargo#13091)
- Fixed uninstall a running binary failed on Windows (rust-lang/cargo#13053)
- chore(deps): update rust crate itertools to 0.12.0 (rust-lang/cargo#13086)
- Add more options to registry test support. (rust-lang/cargo#13085)
- Don't filter on workspace members when scraping doc examples (rust-lang/cargo#13077)
- Remove the outdated comment (rust-lang/cargo#13076)
- fix(resolver): Remove unused public-deps error handling (rust-lang/cargo#13036)
- Fixes error count display is different when there's only one error left (rust-lang/cargo#12484)
- fix: reorder `--remap-path-prefix` flags for `-Zbuild-std` (rust-lang/cargo#13065)
- remove jobserver env var in some tests (rust-lang/cargo#13072)
- doc: clarify different target has different set of `CARGO_CFG_*` values (rust-lang/cargo#13069)
- docs: remove review capacity notice in PR template (rust-lang/cargo#13070)
- chore(deps): update rust crate openssl to 0.10.60 [security] (rust-lang/cargo#13068)
- fix(resolver): De-prioritize no-rust-version in MSRV resolver (rust-lang/cargo#13066)

r? ghost
bors added a commit to rust-lang-ci/rust that referenced this pull request Dec 2, 2023
Update cargo

27 commits in 26333c732095d207aa05932ce863d850fb309386..623b788496b3e51dc2f9282373cf0f6971a229b5
2023-11-28 20:07:39 +0000 to 2023-12-02 18:10:03 +0000
- docs(book): make old title anchorable (rust-lang/cargo#13102)
- Revert "chore(deps): update rust crate openssl to 0.10.60 [security]" (rust-lang/cargo#13101)
- test(install): use TCP connection instead of thread sleep (rust-lang/cargo#13099)
- test(mdman): Switch to snapbox (rust-lang/cargo#13098)
- Include declared list of features in fingerprint for `-Zcheck-cfg` (rust-lang/cargo#13012)
- chore(deps): update compatible (rust-lang/cargo#13083)
- chore(ci): Always update gix packages together (rust-lang/cargo#13093)
- chore(deps): update rust crate windows-sys to 0.52 (rust-lang/cargo#13089)
- refactor(toml): Decouple logic from schema (rust-lang/cargo#13080)
- Have cargo add --optional &lt;dep&gt; create a &lt;dep&gt; = "dep:&lt;dep&gt; feature (rust-lang/cargo#13071)
- Add `--public` for `cargo add` (rust-lang/cargo#13046)
- chore(deps): update rust crate toml_edit to 0.21.0 (rust-lang/cargo#13088)
- chore(deps): update rust crate rusqlite to 0.30.0 (rust-lang/cargo#13087)
- test(trim-paths): exercise with real world debugger (rust-lang/cargo#13091)
- Fixed uninstall a running binary failed on Windows (rust-lang/cargo#13053)
- chore(deps): update rust crate itertools to 0.12.0 (rust-lang/cargo#13086)
- Add more options to registry test support. (rust-lang/cargo#13085)
- Don't filter on workspace members when scraping doc examples (rust-lang/cargo#13077)
- Remove the outdated comment (rust-lang/cargo#13076)
- fix(resolver): Remove unused public-deps error handling (rust-lang/cargo#13036)
- Fixes error count display is different when there's only one error left (rust-lang/cargo#12484)
- fix: reorder `--remap-path-prefix` flags for `-Zbuild-std` (rust-lang/cargo#13065)
- remove jobserver env var in some tests (rust-lang/cargo#13072)
- doc: clarify different target has different set of `CARGO_CFG_*` values (rust-lang/cargo#13069)
- docs: remove review capacity notice in PR template (rust-lang/cargo#13070)
- chore(deps): update rust crate openssl to 0.10.60 [security] (rust-lang/cargo#13068)
- fix(resolver): De-prioritize no-rust-version in MSRV resolver (rust-lang/cargo#13066)
@weihanglo weihanglo deleted the trim-paths-lldb branch December 5, 2023 19:44
@ehuss ehuss added this to the 1.76.0 milestone Dec 6, 2023
@weihanglo weihanglo added the Z-trim-paths Nightly: path sanitization label Dec 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-infrastructure Area: infrastructure around the cargo repo, ci, releases, etc. A-testing-cargo-itself Area: cargo's tests S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. Z-trim-paths Nightly: path sanitization
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants