Skip to content

rust: add caveats #218316

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

Merged
merged 1 commit into from
Apr 13, 2025
Merged

rust: add caveats #218316

merged 1 commit into from
Apr 13, 2025

Conversation

rami3l
Copy link
Contributor

@rami3l rami3l commented Apr 5, 2025

  • Have you followed the guidelines for contributing?
  • Have you ensured that your commits follow the commit style guide?
  • Have you checked that there aren't other open pull requests for the same formula update/change?
  • Have you built your formula locally with HOMEBREW_NO_INSTALL_FROM_API=1 brew install --build-from-source <formula>, where <formula> is the name of the formula you're submitting?
  • Is your test running fine brew test <formula>, where <formula> is the name of the formula you're submitting?
  • Does your build pass brew audit --strict <formula> (after doing HOMEBREW_NO_INSTALL_FROM_API=1 brew install --build-from-source <formula>)? If this is a new formula, does it pass brew audit --new <formula>?

Hello, it's me again on behalf of the rustup team here!

We have noticed a common issue with a regular brew user developing with Rust:

  1. They often start with a perfectly fine rustup installation (either installed with or without brew).
  2. After issuing brew install rust (usually implicitly as a build dependency), the binaries provided by that package will shadow existing rustup-provided binaries.
  3. The existing rustup-installed toolchains/components might seem "gone", causing subtle breakages that are essentially out of our control.

We already have warnings when brew install rust happens before rustup is installed, but unfortunately checking the existence of a brew-managed Rust installation will be much more costly afterwards, so I'm making this PR hoping to further inform potential users of this conflict in the "after" case.

Hopefully closes rust-lang/rustup#1236.

@github-actions github-actions bot added long build Set a long timeout for formula testing long dependent tests Set a long timeout for dependent testing labels Apr 5, 2025
@rami3l
Copy link
Contributor Author

rami3l commented Apr 5, 2025

(I believe there's nothing wrong with my addition; it's just that the rust formula has to be updated before merging this.)

@rami3l
Copy link
Contributor Author

rami3l commented Apr 5, 2025

Now that #218030 has been merged, I'll sync this real quick...

@github-actions github-actions bot added automerge-skip `brew pr-automerge` will skip this pull request CI-build-dependents-from-source Pass --build-dependents-from-source to brew test-bot. labels Apr 5, 2025
@github-actions github-actions bot removed the automerge-skip `brew pr-automerge` will skip this pull request label Apr 5, 2025
@bevanjkay bevanjkay added the CI-syntax-only Change only affects brew syntax, not the install. Only run syntax CI. label Apr 5, 2025
@rami3l
Copy link
Contributor Author

rami3l commented Apr 5, 2025

@bevanjkay Thanks for the prompt triage!

Is there anything else I can do to help this PR getting merged?
Many thanks in advance! 🙏

Copy link
Member

@chenrui333 chenrui333 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

make sense to me

@chenrui333 chenrui333 added the automerge-skip `brew pr-automerge` will skip this pull request label Apr 5, 2025
@chenrui333 chenrui333 requested a review from a team April 5, 2025 16:38
@github-actions github-actions bot removed the automerge-skip `brew pr-automerge` will skip this pull request label Apr 7, 2025
Copy link
Member

@ZhongRuoyu ZhongRuoyu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks better to me, thanks @rami3l!

Copy link
Member

@MikeMcQuaid MikeMcQuaid left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the PR! Still needs a bit of work here.

@github-actions github-actions bot added the autosquash Automatically squash pull request commits according to Homebrew style. label Apr 13, 2025
@github-actions github-actions bot removed the autosquash Automatically squash pull request commits according to Homebrew style. label Apr 13, 2025
@rami3l rami3l requested a review from MikeMcQuaid April 13, 2025 02:46
@BrewTestBot BrewTestBot added this pull request to the merge queue Apr 13, 2025
Merged via the queue into Homebrew:master with commit 36f710d Apr 13, 2025
16 checks passed
@rami3l
Copy link
Contributor Author

rami3l commented Apr 13, 2025

@daeho-ro Thanks a lot for the approval! Would you mind having a look at the related #219866 as well? Many thanks in advance 🙏

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI-build-dependents-from-source Pass --build-dependents-from-source to brew test-bot. CI-syntax-only Change only affects brew syntax, not the install. Only run syntax CI. long build Set a long timeout for formula testing long dependent tests Set a long timeout for dependent testing
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Homebrew conflicts with rustup (detect and warn about it?)
7 participants