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

Fix logic for determining prefer-dynamic for a dylib. #9252

Merged
merged 1 commit into from
Mar 13, 2021

Conversation

ehuss
Copy link
Contributor

@ehuss ehuss commented Mar 11, 2021

The logic for determining if a dylib should use prefer-dynamic used to be something like "do not use prefer-dynamic if it is the current package".

The current logic has a strange behavior where it works as intended if there is only one package in the workspace, but a workspace with multiple packages will always use prefer-dynamic.

Instead of using current_opt, which isn't a good concept to use in a workspace, I switched this to be "primary" (a package selected on the command-line).

History

@rust-highfive
Copy link

r? @alexcrichton

(rust-highfive has picked a reviewer for you, use r? to override)

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Mar 11, 2021
@ehuss
Copy link
Contributor Author

ehuss commented Mar 11, 2021

@alexcrichton, before moving forward with this, I'd like to better understand the motivation for why it works this way. Can you explain what the reasoning is?

@alexcrichton
Copy link
Member

Honestly at this point I have no idea. I barely know of any use cases of dylib crate types much less intermediate dependencies.

AFAIK there's no real story about dylib dependencies in Rust right now so changing this seems fine by me.

r=me if you're ok landing

@ehuss
Copy link
Contributor Author

ehuss commented Mar 12, 2021

OK, understood. Since this is clearly broken, I'll go ahead and merge, hopefully it doesn't break anyone relying on it.

@bors r=alexcrichton

@bors
Copy link
Collaborator

bors commented Mar 12, 2021

📌 Commit 48e0306 has been approved by alexcrichton

@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 Mar 12, 2021
@bors
Copy link
Collaborator

bors commented Mar 12, 2021

⌛ Testing commit 48e0306 with merge c43e485eb0d7c97ae7db97821c4c9e735c965fd2...

@bors
Copy link
Collaborator

bors commented Mar 12, 2021

💔 Test failed - checks-actions

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

ehuss commented Mar 12, 2021

The lincheck script is a little out-of-sync with the latest nightly (rust-lang/rust#82950), it should resolve itself after the next nightly comes out (~7 hours from now). I'll wait for that and try again later.

@ehuss
Copy link
Contributor Author

ehuss commented Mar 13, 2021

@bors retry

@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 Mar 13, 2021
@bors
Copy link
Collaborator

bors commented Mar 13, 2021

⌛ Testing commit 48e0306 with merge 32da9ea...

@bors
Copy link
Collaborator

bors commented Mar 13, 2021

☀️ Test successful - checks-actions
Approved by: alexcrichton
Pushing 32da9ea to master...

@bors bors merged commit 32da9ea into rust-lang:master Mar 13, 2021
Dylan-DPC-zz pushed a commit to Dylan-DPC-zz/rust that referenced this pull request Mar 13, 2021
Update cargo

7 commits in 970bc67c3775781b9708c8a36893576b9459c64a..32da9eaa5de5be241cf8096ca6b749a157194f77
2021-03-07 18:09:40 +0000 to 2021-03-13 01:18:40 +0000
- Fix logic for determining prefer-dynamic for a dylib. (rust-lang/cargo#9252)
- Fix issue with filtering exclusive target dependencies. (rust-lang/cargo#9255)
- Update pkgid-spec docs. (rust-lang/cargo#9249)
- Wordsmith the edition documentation a bit more (rust-lang/cargo#9233)
- Package ID specification urls must contain a host (rust-lang/cargo#9188)
- Add documentation for JSON message_path. (rust-lang/cargo#9247)
- Fix filter_platform to run on targets other than x86. (rust-lang/cargo#9246)
JohnTitor added a commit to JohnTitor/rust that referenced this pull request Mar 14, 2021
Update cargo

7 commits in 970bc67c3775781b9708c8a36893576b9459c64a..32da9eaa5de5be241cf8096ca6b749a157194f77
2021-03-07 18:09:40 +0000 to 2021-03-13 01:18:40 +0000
- Fix logic for determining prefer-dynamic for a dylib. (rust-lang/cargo#9252)
- Fix issue with filtering exclusive target dependencies. (rust-lang/cargo#9255)
- Update pkgid-spec docs. (rust-lang/cargo#9249)
- Wordsmith the edition documentation a bit more (rust-lang/cargo#9233)
- Package ID specification urls must contain a host (rust-lang/cargo#9188)
- Add documentation for JSON message_path. (rust-lang/cargo#9247)
- Fix filter_platform to run on targets other than x86. (rust-lang/cargo#9246)
@ehuss ehuss added this to the 1.52.0 milestone Feb 6, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
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.

4 participants