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

icu4c@75 75.1 (new formula) #169239

Merged
merged 91 commits into from
Oct 7, 2024
Merged

icu4c@75 75.1 (new formula) #169239

merged 91 commits into from
Oct 7, 2024

Conversation

cho-m
Copy link
Member

@cho-m cho-m commented Apr 16, 2024

Created with brew bump-formula-pr.


Major changes

This release introduces C++17 minimum which impacts various dependents.

Versioning attempt

As reference:

May try versioning approach and test largest dep group to see if it improves anything.

EDIT: The largest connected deps group means at least 42 formulae need to be migrated on macOS (more if including Linux due to libxml2 and other common dependencies).

@cho-m cho-m marked this pull request as draft April 16, 2024 22:14
@github-actions github-actions bot added bump-formula-pr PR was created using `brew bump-formula-pr` CI-linux-self-hosted Build on Linux self-hosted runner long build Set a long timeout for formula testing labels Apr 16, 2024
@cho-m cho-m added pre-release Artifact is pre-release CI-no-fail-fast Continue CI tests despite failing GitHub Actions matrix builds. labels Apr 16, 2024
@github-actions github-actions bot added automerge-skip `brew pr-automerge` will skip this pull request new formula PR adds a new formula to Homebrew/homebrew-core labels Apr 17, 2024
Copy link
Contributor

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 github-actions bot added the stale No recent activity label Apr 20, 2024
@cho-m cho-m added in progress Stale bot should stay away and removed stale No recent activity pre-release Artifact is pre-release labels Apr 20, 2024
@cho-m cho-m added the CI-long-timeout [DEPRECATED] Use longer GitHub Actions CI timeout. label Apr 26, 2024
@fxcoudert
Copy link
Member

fxcoudert commented Apr 26, 2024

harfbuzz not happy:

  In file included from ../src/hb-icu.cc:39:
  In file included from /opt/homebrew/Cellar/icu4c@75/75.1/include/unicode/unorm2.h:35:
  In file included from /opt/homebrew/Cellar/icu4c@75/75.1/include/unicode/uset.h:36:
  /opt/homebrew/Cellar/icu4c@75/75.1/include/unicode/localpointer.h:561:26: error: 'auto' not allowed in template parameter until C++17
  template <typename Type, auto closeFunction>
                           ^~~~
  In file included from ../src/hb-icu.cc:39:
  In file included from /opt/homebrew/Cellar/icu4c@75/75.1/include/unicode/unorm2.h:35:
  /opt/homebrew/Cellar/icu4c@75/75.1/include/unicode/uset.h:358:53: error: value of type 'void (USet *)' is not implicitly convertible to 'int'
  U_DEFINE_LOCAL_OPEN_POINTER(LocalUSetPointer, USet, uset_close);
                                                      ^~~~~~~~~~
  /opt/homebrew/Cellar/icu4c@75/75.1/include/unicode/urename.h:1753:20: note: expanded from macro 'uset_close'
  #define uset_close U_ICU_ENTRY_POINT_RENAME(uset_close)
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  /opt/homebrew/Cellar/icu4c@75/75.1/include/unicode/uvernum.h:123:47: note: expanded from macro 'U_ICU_ENTRY_POINT_RENAME'
  #       define U_ICU_ENTRY_POINT_RENAME(x)    U_DEF2_ICU_ENTRY_POINT_RENAME(x,U_ICU_VERSION_SUFFIX)
                                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  /opt/homebrew/Cellar/icu4c@75/75.1/include/unicode/uvernum.h:122:51: note: expanded from macro 'U_DEF2_ICU_ENTRY_POINT_RENAME'
  #       define U_DEF2_ICU_ENTRY_POINT_RENAME(x,y) U_DEF_ICU_ENTRY_POINT_RENAME(x,y)
                                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  /opt/homebrew/Cellar/icu4c@75/75.1/include/unicode/uvernum.h:121:50: note: expanded from macro 'U_DEF_ICU_ENTRY_POINT_RENAME'
  #       define U_DEF_ICU_ENTRY_POINT_RENAME(x,y) x ## y
                                                   ^~~~~~
  <scratch space>:71:1: note: expanded from here
  uset_close_75
  ^~~~~~~~~~~~~
  /opt/homebrew/Cellar/icu4c@75/75.1/include/unicode/localpointer.h:551:68: note: expanded from macro 'U_DEFINE_LOCAL_OPEN_POINTER'
      using LocalPointerClassName = internal::LocalOpenPointer<Type, closeFunction>
                                                                     ^~~~~~~~~~~~~
  In file included from ../src/hb-icu.cc:39:
  /opt/homebrew/Cellar/icu4c@75/75.1/include/unicode/unorm2.h:286:69: error: value of type 'void (UNormalizer2 *)' is not implicitly convertible to 'int'
  U_DEFINE_LOCAL_OPEN_POINTER(LocalUNormalizer2Pointer, UNormalizer2, unorm2_close);
                                                                      ^~~~~~~~~~~~
  /opt/homebrew/Cellar/icu4c@75/75.1/include/unicode/urename.h:1257:22: note: expanded from macro 'unorm2_close'
  #define unorm2_close U_ICU_ENTRY_POINT_RENAME(unorm2_close)
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  /opt/homebrew/Cellar/icu4c@75/75.1/include/unicode/uvernum.h:123:47: note: expanded from macro 'U_ICU_ENTRY_POINT_RENAME'
  #       define U_ICU_ENTRY_POINT_RENAME(x)    U_DEF2_ICU_ENTRY_POINT_RENAME(x,U_ICU_VERSION_SUFFIX)
                                                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  /opt/homebrew/Cellar/icu4c@75/75.1/include/unicode/uvernum.h:122:51: note: expanded from macro 'U_DEF2_ICU_ENTRY_POINT_RENAME'
  #       define U_DEF2_ICU_ENTRY_POINT_RENAME(x,y) U_DEF_ICU_ENTRY_POINT_RENAME(x,y)
                                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  /opt/homebrew/Cellar/icu4c@75/75.1/include/unicode/uvernum.h:121:50: note: expanded from macro 'U_DEF_ICU_ENTRY_POINT_RENAME'
  #       define U_DEF_ICU_ENTRY_POINT_RENAME(x,y) x ## y
                                                   ^~~~~~
  <scratch space>:141:1: note: expanded from here
  unorm2_close_75
  ^~~~~~~~~~~~~~~
  /opt/homebrew/Cellar/icu4c@75/75.1/include/unicode/localpointer.h:551:68: note: expanded from macro 'U_DEFINE_LOCAL_OPEN_POINTER'
      using LocalPointerClassName = internal::LocalOpenPointer<Type, closeFunction>
                                                                     ^~~~~~~~~~~~~
  3 errors generated.

See harfbuzz/harfbuzz#4671 and https://cgit.freebsd.org/ports/commit/?id=4816cd49210c3c1413219b8884a17655cf4be340

@cho-m
Copy link
Member Author

cho-m commented Apr 26, 2024

Sounds like the ICU's minimum C++ standard is now C++17. Can try to force it, but may cause problems with dependents.

@github-actions github-actions bot removed the CI-long-timeout [DEPRECATED] Use longer GitHub Actions CI timeout. label Apr 26, 2024
@cho-m cho-m added the CI-long-timeout [DEPRECATED] Use longer GitHub Actions CI timeout. label Apr 27, 2024
@github-actions github-actions bot removed the CI-long-timeout [DEPRECATED] Use longer GitHub Actions CI timeout. label Apr 27, 2024
@cho-m cho-m added the CI-long-timeout [DEPRECATED] Use longer GitHub Actions CI timeout. label Apr 27, 2024
@github-actions github-actions bot removed the CI-long-timeout [DEPRECATED] Use longer GitHub Actions CI timeout. label Apr 29, 2024
@SMillerDev SMillerDev force-pushed the bump-icu4c-75.1 branch 2 times, most recently from 2b86906 to 0f40fb6 Compare May 13, 2024 16:15
@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 Oct 7, 2024
@BrewTestBot BrewTestBot added this pull request to the merge queue Oct 7, 2024
Merged via the queue into master with commit 3bfae86 Oct 7, 2024
15 checks passed
@BrewTestBot BrewTestBot deleted the bump-icu4c-75.1 branch October 7, 2024 13:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bump-formula-pr PR was created using `brew bump-formula-pr` CI-linux-self-hosted Build on Linux self-hosted runner CI-linux-self-hosted-deps Test dependents on Linux self-hosted runner CI-no-fail-fast Continue CI tests despite failing GitHub Actions matrix builds. CI-no-fail-fast-deps Continue dependent tests despite failing GitHub Actions matrix tests. CI-published-bottle-commits The commits for the built bottles have been pushed to the PR branch. in progress Stale bot should stay away long build Set a long timeout for formula testing long dependent tests Set a long timeout for dependent testing new formula PR adds a new formula to Homebrew/homebrew-core no long build conflict Do not allow merging other pull requests when files conflict with this one
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants