homebrew-core icon indicating copy to clipboard operation
homebrew-core copied to clipboard

libxml2 2.14.0

Open BrewTestBot opened this issue 8 months ago • 9 comments

Created by brew bump


Created with brew bump-formula-pr.


  • [ ] libheif as a bottle
  ==> Installing graphicsmagick dependency: libheif
  ==> Downloading https://ghcr.io/v2/homebrew/core/libheif/manifests/1.19.8
  Already downloaded: /home/linuxbrew/.cache/Homebrew/downloads/9a8450ec41fd4c7c2cdeff26ce6cf4a7eb12049f3c0a19cd10c191990b6af14f--libheif-1.19.8.bottle_manifest.json
  ==> Pouring libheif--1.19.8.x86_64_linux.bottle.tar.gz
  ==> /home/linuxbrew/.linuxbrew/opt/shared-mime-info/bin/update-mime-database /home/linuxbrew/.linuxbrew/share/mime
  Last 150 lines from /github/home/bottles/logs/libheif/post_install.01.update-mime-database:
  2025-05-05 20:30:33 +0000
  
  /home/linuxbrew/.linuxbrew/opt/shared-mime-info/bin/update-mime-database
  /home/linuxbrew/.linuxbrew/share/mime
  
  Directory '/home/linuxbrew/.linuxbrew/share/mime/packages' does not exist!
  You can try again using:
    brew postinstall libheif
  Warning: The post-install step did not complete successfully
  Warning: Removed Sorbet lines from backtrace!
  ==> Summary
  /home/linuxbrew/.linuxbrew/Cellar/libheif/1.19.8: 32 files, 7.6MB
Truncated install --only-dependencies graphicsmagick output
  • [ ] gwyddion #222539
configure.ac:886: the top level
  configure:27754: error: possibly undefined macro: AC_LIB_PREPARE_PREFIX
        If this token and others are legitimate, please use m4_pattern_allow.
        See the Autoconf documentation.
  configure:27755: error: possibly undefined macro: AC_LIB_RPATH
  configure:27762: error: possibly undefined macro: AC_LIB_LINKFLAGS_BODY
  configure:27[87](https://github.com/Homebrew/homebrew-core/actions/runs/14851606178/job/41696383271?pr=222539#step:3:88)5: error: possibly undefined macro: AC_LIB_APPENDTOVAR
  autoreconf: error: /usr/local/Cellar/autoconf/2.72/bin/autoconf failed with exit status: 1

linux revisions

BrewTestBot avatar Mar 27 '25 17:03 BrewTestBot

  • relates to https://github.com/Homebrew/homebrew-core/pull/216802

chenrui333 avatar Mar 27 '25 17:03 chenrui333

Could you perhaps include #212088 with this?

For developers who dynamically link libxml2 in their project outside of brew, every time boost upgrades libicudata and libicuuc, all those binaries break and need to be recompiled.

The goal was to also bundle a static libxml2 library so we can avoid this problem.

(To be clear, I understand that brew's philosophy is to dynamically link everything, but I'm talking about projects outside of brew which may use libxml2. Requiring everyone to use dynamic libraries means asking them to recompile lots of binaries whenever the brew dependencies are updated)

mahrud avatar Apr 01 '25 21:04 mahrud

This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. To keep this pull request open, add a help wanted or in progress label.

github-actions[bot] avatar Apr 04 '25 00:04 github-actions[bot]

but I'm talking about projects outside of brew which may use libxml2.

So projects depending on the brew libraries without being in brew?

Requiring everyone to use dynamic libraries means asking them to recompile lots of binaries whenever the brew dependencies are updated

I'm not sure how that would happen, the whole idea of dynamic libraries is to avoid that situation. Could you open a discussion for this so I can help figure out how to avoid that?

SMillerDev avatar Apr 07 '25 09:04 SMillerDev

I don't think we can make it.

What if we add new formula and change for each of them like blue-green? So there will be two formula,

  • libxml2 and libxml2@14 whatever
  • move dependents from libxml2 to libxml2@14
  • once all moved, change libxml2 from libxml2@14 and syntax change for dependents.

Expected problem is

  • the use of uses_from_macos "libxml2"..
  • lib will be conflict... 😭

daeho-ro avatar May 17 '25 11:05 daeho-ro

yeah, it would be good to have [email protected] to help with migration.

chenrui333 avatar Jun 17 '25 19:06 chenrui333

What's the current state? Because we can do a staging branch again where we add the bumps.

@Homebrew/maintainers to get some more eyes on this

SMillerDev avatar Jun 17 '25 20:06 SMillerDev

Looks like everything that was bumped did build fine on macOS (except gwyddion but that is already fixed) so things are looking healthy so far. Linux errors are again mostly because some dependencies weren't bumped.

That's the main issue it looks like - all the errors I'm seeing here in CI are directly caused by us missing some revision bumps. I suspect most are because of uses_from_macos "libxml2". I agree we probably need a staging branch for Linux, though would be nice get the full list of formulae to bump sorted first and then it should be fairly easy from there.

Bo98 avatar Jun 18 '25 05:06 Bo98

Luckily, ABI breaks in libxml2 are rare so this is hopefully a one-off rather than something we need to worry about regularly.

Bo98 avatar Jun 18 '25 05:06 Bo98

Changes are made. Once the build is done can I ask you to do the staging branch @Bo98 ?

SMillerDev avatar Jun 19 '25 09:06 SMillerDev

Closing in favour of https://github.com/Homebrew/homebrew-core/pull/230117

SMillerDev avatar Jul 22 '25 15:07 SMillerDev