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

TASK: fix handling of icu major version migrations #212

Open
yselkowitz opened this issue Dec 6, 2024 · 1 comment
Open

TASK: fix handling of icu major version migrations #212

yselkowitz opened this issue Dec 6, 2024 · 1 comment
Assignees
Labels
bug Something isn't working question Further information is requested

Comments

@yselkowitz
Copy link
Member

yselkowitz commented Dec 6, 2024

What does the ELN SIG need to do?

ICU major version migrations are handled differently than other SONAME bumps. The icu package is bumped, and libicuNN compat package (where NN is the previous major version) is created, but no dependents are rebuilt; the latter is left to individual maintainers. The problem with that in respect to ELN is that there is no chance for EBS to trigger a build of libicuNN when icu is bumped, and the result is failed composes (with unresolved dependencies on the old SONAMEs). This has been a consistent issue in ELN, and just happened again today with the icu 74->76 migration; we should try to find a way to solve it.

Some ideas that have come to mind:

  • Add libicu76 (not a typo) to CR in advance. It would cause a warning due to it not existing until icu is bumped to 77+, but as soon as it does appear, it should then be rebuilt right away. Once that has happened, that would need to be updated to the then-new major version (77+) and so on (once it exists having been built once, then it need not be explicitly listed anymore, as it would be pulled in as a dependency until everything had been rebuilt).
  • Add a version-specific provides to CR instead, e.g. libicudata.so.76()(64bit), which now would be libicu (subpackage of icu) but would automatically trigger a libicu76 build when icu is next bumped. I'm not sure if CR would accept that though (it technically should, since it is installable by that name). Here again, it would need to be updated following a major version bump.
  • Add libicu* to CR; wildcards are handled as expected, but it would mean that the compat build would continue to be pulled in even after everything in ELN is rebuilt for the new version until the compat version is fully retired from rawhide.
  • Get the icu maintainer(s) to manually build (the first time) libicuNN for ELN in tandem with the rawhide build. This would rely on them remembering to do so though.
@yselkowitz yselkowitz added bug Something isn't working question Further information is requested labels Dec 6, 2024
@yselkowitz
Copy link
Member Author

/cc @asamalik wrt current CR capabilities

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants