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

mkdocs: fix linkage #163476

Merged
merged 2 commits into from
Feb 21, 2024
Merged

mkdocs: fix linkage #163476

merged 2 commits into from
Feb 21, 2024

Conversation

p-linnane
Copy link
Member

  • 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>?

Signed-off-by: Patrick Linnane <[email protected]>
@p-linnane p-linnane added the CI-syntax-only Change only affects brew syntax, not the install. Only run syntax CI. label Feb 21, 2024
@github-actions github-actions bot added the python Python use is a significant feature of the PR or issue label Feb 21, 2024
@Bo98
Copy link
Member

Bo98 commented Feb 21, 2024

Seems weird to be syntax only to introduce a dependency when the current bottles aren't using it no? The linkage of the current bottles shouldn't be broken, otherwise brew linkage would have caught that. PyYAML has a fast and slow mode depending on whether libyaml was present at build time.

@p-linnane
Copy link
Member Author

Working through a bunch of indirect linkage stuff so we can get Homebrew/brew#16718 merged.

@Bo98
Copy link
Member

Bo98 commented Feb 21, 2024

Ok so if it's already in the dep tree indirectly, doesn't that mean all Python dependents have it indirectly as there's no other dependencies here?

@p-linnane
Copy link
Member Author

Ok this is strange. Compiling locally I'm not seeing any linkage with libyaml like all of the other formulae we've had to push this to recently: https://github.com/Homebrew/homebrew-core/pulls?q=is%3Apr+sort%3Aupdated-desc+is%3Amerged+fix+linkage

Using arxiv_latex_cleaner as an example, our current bottles show this linkage:

╰─ brew linkage arxiv_latex_cleaner
System libraries:
  /usr/lib/libSystem.B.dylib
Homebrew libraries:
  /opt/homebrew/opt/libyaml/lib/libyaml-0.2.dylib (libyaml)
Undeclared dependencies with linkage:
  libyaml
Dependencies with no linkage:
  pillow

This is despite libyaml not being in the tree (other than due to the PR where I added it). Not sure what is going on here now.

@Bo98
Copy link
Member

Bo98 commented Feb 21, 2024

arxiv_latex_cleaner bottles were rebuilt in #163377. Do you have an example where bottles were not rebuilt?

@Bo98
Copy link
Member

Bo98 commented Feb 21, 2024

To be clear, the behaviour I expect is that libyaml linkage is introduced by adding this dependency (and is a good idea to do so, for opportunistic linkage reasons + performance in some cases), but would require a bottle rebuild for that to show.

For example, cookiecutter after #163103:

==> brew linkage --cached cookiecutter
System libraries:
  /usr/lib/libSystem.B.dylib

cookiecutter after #163327:

==> brew linkage --cached cookiecutter
System libraries:
  /usr/lib/libSystem.B.dylib
Homebrew libraries:
  /opt/homebrew/opt/libyaml/lib/libyaml-0.2.dylib (libyaml)
Dependencies with no linkage:
  python-certifi

@p-linnane
Copy link
Member Author

So essentially we need to do a rebuild and publish those bottles when adding libyaml for pyyaml? I can run back through and check everything and rebuild if so.

@Bo98
Copy link
Member

Bo98 commented Feb 21, 2024

Yes

@p-linnane p-linnane removed the CI-syntax-only Change only affects brew syntax, not the install. Only run syntax CI. label Feb 21, 2024
@p-linnane
Copy link
Member Author

Thank you for the clarification. I have a better understanding now. I've kicked off a rebuild in this PR, and will run back through the previous ones to get those handled as well.

Copy link
Contributor

🤖 An automated task has requested bottles to be published to this PR.

@github-actions github-actions bot added the CI-published-bottle-commits The commits for the built bottles have been pushed to the PR branch. label Feb 21, 2024
@BrewTestBot BrewTestBot added this pull request to the merge queue Feb 21, 2024
Merged via the queue into master with commit 99a95c7 Feb 21, 2024
12 checks passed
@BrewTestBot BrewTestBot deleted the mkdocs-fix-linkage branch February 21, 2024 05:12
@github-actions github-actions bot added the outdated PR was locked due to age label Mar 23, 2024
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Mar 23, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
CI-published-bottle-commits The commits for the built bottles have been pushed to the PR branch. outdated PR was locked due to age python Python use is a significant feature of the PR or issue
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants