Skip to content
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

Don't query permutations of the path prefix. #11936

Merged
merged 1 commit into from
Apr 5, 2023

Conversation

ehuss
Copy link
Contributor

@ehuss ehuss commented Apr 5, 2023

This fixes the use of the UncanonicalizedIter to not create permutations that are not valid paths if the crate has a dash or underscore in the first four characters of the name.

Previously it was permuting the path in the prefix, creating invalid paths. For example, my-tool would create a path like my/_t/my-tool which isn't valid since the filename doesn't match the prefix directories.

This fixes it so that it permutes just the name, and then generates the index path after permuting it.

The test included here goes from 16 queries to just 4 queries.

Fixes #11935

@rustbot
Copy link
Collaborator

rustbot commented Apr 5, 2023

r? @weihanglo

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

@rustbot rustbot added A-registries Area: registries A-testing-cargo-itself Area: cargo's tests S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Apr 5, 2023
@arlosi
Copy link
Contributor

arlosi commented Apr 5, 2023

@bors r+

@bors
Copy link
Contributor

bors commented Apr 5, 2023

📌 Commit 1ee340c has been approved by arlosi

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 Apr 5, 2023
@bors
Copy link
Contributor

bors commented Apr 5, 2023

⌛ Testing commit 1ee340c with merge 41f7888...

@bors
Copy link
Contributor

bors commented Apr 5, 2023

☀️ Test successful - checks-actions
Approved by: arlosi
Pushing 41f7888 to master...

@bors bors merged commit 41f7888 into rust-lang:master Apr 5, 2023
@arlosi arlosi added the beta-nominated Nominated to backport to the beta branch. label Apr 6, 2023
bors added a commit to rust-lang-ci/rust that referenced this pull request Apr 11, 2023
Update cargo

17 commits in 0e474cfd7b16b018cf46e95da3f6a5b2f1f6a9e7..7bf43f028ba5eb1f4d70d271c2546c38512c9875
2023-03-31 23:15:58 +0000 to 2023-04-10 16:01:41 +0000

- docs(pkgid): Consistently use @ (rust-lang/cargo#11956)
- Fix credential token format validation. (rust-lang/cargo#11951)
- Validate token on publish. (rust-lang/cargo#11952)
- Clarify docs on `-C` that it appears before the command. (rust-lang/cargo#11947)
- Add `try_canonicalize` and use it over `std::fs::canonicalize` (rust-lang/cargo#11866)
- Fix typo (rust-lang/cargo#11944)
- docs(changelog): Change wording about auto-fix message (rust-lang/cargo#11943)
- Update home repo URL (rust-lang/cargo#11941)
- doc(changelog): `[env]` is a table, not a stable (rust-lang/cargo#11942)
- Stop using UncanonicalizedIter for QueryKind::Exact (rust-lang/cargo#11937)
- Don't query permutations of the path prefix. (rust-lang/cargo#11936)
- Fix typo in variable name (rust-lang/cargo#11931)
- Fix Cargo warning about unused sparse configuration key (rust-lang/cargo#11930)
- Switch benchsuite to the index archive. (rust-lang/cargo#11933)
- Update git2 (rust-lang/cargo#11928)
- Publish docs: Clarify requirements about the state of the index after publish. (rust-lang/cargo#11926)
- Call out the differences between the index JSON and the API or metadata. (rust-lang/cargo#11927)
@ehuss ehuss added this to the 1.70.0 milestone Apr 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-registries Area: registries A-testing-cargo-itself Area: cargo's tests beta-nominated Nominated to backport to the beta branch. S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

UncanonicalizedIter generates invalid paths
5 participants