Wiki - https://fedoraproject.org/wiki/Changes/Libical4 This is a proposed Change for Fedora Linux. This document represents a proposed Change. As part of the Changes process, proposals are publicly announced in order to receive community feedback. This proposal will only be implemented if approved by the Fedora Engineering Steering Committee. == Summary == Update the `libical` library to its 4.x series. It's the next generation of the `libical` library, on which the upstream focuses the most right now. == Owner == * Name: [[User:mcrha| Milan Crha]] * Email: <mcrha at redhat dot com> == Detailed Description == The `libical` upstream begun to focus the main development on the new 4.x series, which is not API compatible with the 3.x series. These cannot be used by a single executable together, similar to `libsoup2` and `libsoup3`. Unlike `libsoup`, it does not verify in runtime whether the other library is also loaded, thus it it harder to spot the leftovers. Luckily, there are not that many direct dependencies which use either `libical` or `libical-glib`, thus I'd go even without a compact package and just flip the switch. == Feedback == I asked for an opinion [https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/OAT6OWZ6OCN74HVAGHZB5SSHP6BMOU6E/ on the devel list] with almost no feedback. I built the dependencies [https://copr.fedorainfracloud.org/coprs/mcrha/libical-4.x/builds/ in COPR] checking which dependencies need a custom patch and which can be build with either `libical` 3.x or 4.x. I also proposed patches to some of the projects which needed them. == Benefit to Fedora == Stay on the latest `libical` upstream stable series. == Scope == * Proposal owners: Just adapting the `libical'` spec file, already prepared in the COPR * Other developers: Simply rebuild the package against the new `libical` for those whom are ready, or carry a custom patch to port to the new API changes. * Release engineering: [https://forge.fedoraproject.org/releng/tickets/issues/13504 #13504] * Policies and guidelines: N/A (not needed for this Change) * Trademark approval: N/A (not needed for this Change) * Alignment with the Fedora Strategy: == Upgrade/compatibility impact == C API/ABI: Applications not rebuilt will fail to run due to the soname change. == Early Testing (Optional) == Do you require 'QA Blueprint' support? N Propose pull request with the needed packaging changes is here: https://src.fedoraproject.org/rpms/libical/pull-request/2 COPR build with the main users rebuilt is here: https://copr.fedorainfracloud.org/coprs/mcrha/libical-4.x/ == How To Test == There should be no user visible changes, depending whether any of the library users provide different features for different versions on the `libical`. == User Experience == It depends on the applications using the library. == Dependencies == The users of the `libical` development packages: $ dnf repoquery --whatrequires "pkgconfig(libical)" \ --whatrequires "pkgconfig(libical-glib)" \ --whatrequires "libical-glib-devel" \ --whatrequires "libical-devel" \ --recursive --disablerepo=* --enablerepo=rawhide --srpm akonadi-calendar akonadi-search calendarsupport eventviews evolution evolution-data-server folks incidenceeditor kcalutils kf6-kcalendarcore kitinerary ktnef libkgapi (excluding `libical` itself and `kf5` packages, which are orphaned at the moment). Packages requiring `libical`: $ dnf repoquery --whatrequires "libical" --recursive --srpm --disablerepo=* --enablerepo=rawhide GoldenCheetah akonadi-calendar akonadi-calendar-tools akonadi-import-wizard akonadi-search akonadiconsole akregator almanah asterisk baresip bijiben blivet-gui blogilo bluedevil blueman bluez bubblemail cairo-dock cairo-dock-plug-ins calendarsupport calindori calligraplan calls chatty cinnamon claws-mail cyrus-imapd digikam digikam-gmic-qt eventviews evolution evolution-data-server evolution-ews evolution-rspam folks g3kb-switch gdm geary glabels gnokii gnome-applets gnome-bluetooth gnome-browser-connector gnome-calendar gnome-contacts gnome-flashback gnome-initial-setup gnome-panel gnome-phone-manager gnome-pomodoro gnome-session gnome-shell gnome-shell-extension-appindicator gnome-shell-extension-background-logo gnome-shell-extension-blur-my-shell gnome-shell-extension-bubblemail gnome-shell-extension-dash-to-dock gnome-shell-extension-dash-to-panel gnome-shell-extension-disconnect-wifi gnome-shell-extension-forge gnome-shell-extension-freon gnome-shell-extension-gamemode gnome-shell-extension-gamerzilla gnome-shell-extension-gsconnect gnome-shell-extension-ibus-font gnome-shell-extension-just-perfection gnome-shell-extension-kimpanel gnome-shell-extension-logo-menu gnome-shell-extension-netspeed gnome-shell-extension-pidgin gnome-shell-extension-pipewire-settings gnome-shell-extension-pop-shell gnome-shell-extension-refresh-wifi gnome-shell-extension-suspend-button gnome-shell-extension-system-monitor-applet gnome-shell-extension-unite gnome-shell-extension-vertical-workspaces gnome-shell-extensions gnome-shell-frippery gnome-todo gparted gpaste grantlee-editor incidenceeditor itinerary kaddressbook kalarm kcalutils kdepim kdepim-addons kdepim-runtime kdepimlibs kf6-kcalendarcore kio-gdrive kitinerary kleopatra kmail kmail-account-wizard kmailtransport kmymoney kongress kontact korganizer ktnef kuser libkgapi libksieve mailcommon mailimporter maui-agenda maui-mauikit-calendar mbox-importer merkuro messagelib mimetreeparser noctalia orage osmo phosh phosh-mobile-settings phrog pidgin-chime pim-data-exporter pim-sieve-editor pimcommon recoll redwax-tool syncevolution vakzination workrave xpra yaru-theme zanshin == Contingency Plan == * Contingency mechanism: ** ABI Breakage: If the mass rebuild is unsuccessful or reveals widespread, unresolvable issues, revert to the 3.x series. * Contingency deadline: Beta freeze * Blocks release? Yes == Documentation == Upstream has a migration guide at https://github.com/libical/libical/blob/4.0/docs/MigrationGuide_to_4.md == Release Notes == -- Aoife Moloney Fedora Operations Architect Fedora Project Matrix: @amoloney:fedora.im IRC: amoloney -- _______________________________________________ devel-announce mailing list -- devel-announce@lists.fedoraproject.org To unsubscribe send an email to devel-announce-leave@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel-announce@lists.fedoraproject.org Do not reply to spam, report it: https://forge.fedoraproject.org/infra/tickets/issues/new
No comments:
Post a Comment