SRU the current 2.48.7 stable update

Bug #1884326 reported by Olivier Tilloy
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
librsvg (Ubuntu)
Fix Released
High
Olivier Tilloy
Focal
Fix Released
High
Olivier Tilloy

Bug Description

* Impact
That's the current GNOME stable update, which fixes a number of issues: https://gitlab.gnome.org/GNOME/librsvg/-/blob/librsvg-2.48/NEWS

* Test case

The update is part of GNOME stable updates
https://wiki.ubuntu.com/StableReleaseUpdates/GNOME

Smoke testing by opening SVG images with eog or importing them with gimp can be performed to ensure there are no regressions.

* Regression potential

This is a bugfix-only stable micro-release, however librsvg is a core component with a number of reverse dependencies. A combination of autopkgtests and manual smoke testing to try and detect SVG rendering issues should be performed.

Olivier Tilloy (osomon)
Changed in librsvg (Ubuntu):
assignee: nobody → Olivier Tilloy (osomon)
importance: Undecided → High
status: New → Fix Released
Changed in librsvg (Ubuntu Focal):
assignee: nobody → Olivier Tilloy (osomon)
importance: Undecided → High
status: New → In Progress
Revision history for this message
Olivier Tilloy (osomon) wrote :

Attaching a debdiff for the SRU, please sponsor.

Changed in librsvg (Ubuntu Focal):
status: In Progress → Fix Committed
Revision history for this message
Brian Murray (brian-murray) wrote :

The Stable Release Update policy for GNOME says "GNOME (only the core modules and apps, not the entirety of what is hosted on gnome.org) (approved on 2012-06-22)" . Is librsvg part of the core modules and apps? There has never been an SRU of librsvg before.

Changed in librsvg (Ubuntu Focal):
status: Fix Committed → Incomplete
Revision history for this message
Olivier Tilloy (osomon) wrote :

Brian: librsvg is indeed not a direct dependency of the gnome-core metapackage, however it is a direct dependency of other core components and apps such as gnome-shell and eog. In that regard I think it qualifies, but we should probably clarify the policy to clearly map to https://gitlab.gnome.org/GNOME/gnome-build-meta/-/tree/master/elements.

Regardless, this is a bugfix update and the desktop team would like to update it as a SRU, thanks for considering it!

Changed in librsvg (Ubuntu Focal):
status: Incomplete → Fix Committed
Revision history for this message
Łukasz Zemczak (sil2100) wrote :

Hey Olivier! I looked at the librsvg upload in the queue just now. I'm a bit worried about the symbols removal in librsvg2-2. Looking at the diff:

diff -Nru librsvg-2.48.2/debian/librsvg2-2.symbols librsvg-2.48.7/debian/librsvg2-2.symbols
--- librsvg-2.48.2/debian/librsvg2-2.symbols 2020-04-07 20:23:36.000000000 +0000
+++ librsvg-2.48.7/debian/librsvg2-2.symbols 2020-06-19 21:19:37.000000000 +0000
@@ -55,8 +55,6 @@
  rsvg_rust_handle_get_base_url@Base 2.46.0
  rsvg_rust_handle_get_dimensions@Base 2.46.0
  rsvg_rust_handle_get_dimensions_sub@Base 2.46.0
- rsvg_rust_handle_get_dpi_x@Base 2.46.0
- rsvg_rust_handle_get_dpi_y@Base 2.46.0
  rsvg_rust_handle_get_geometry_for_element@Base 2.46.0
  rsvg_rust_handle_get_geometry_for_layer@Base 2.46.0
  rsvg_rust_handle_get_intrinsic_dimensions@Base 2.46.0
@@ -76,8 +74,7 @@
  rsvg_rust_handle_render_layer@Base 2.46.0
  rsvg_rust_handle_set_base_gfile@Base 2.46.0
  rsvg_rust_handle_set_base_url@Base 2.46.0
- rsvg_rust_handle_set_dpi_x@Base 2.46.0
- rsvg_rust_handle_set_dpi_y@Base 2.46.0
+ rsvg_rust_handle_set_dpi_x_y@Base 2.48.5
  rsvg_rust_handle_set_size_callback@Base 2.46.0
  rsvg_rust_handle_set_stylesheet@Base 2.47.3
  rsvg_rust_handle_set_testing@Base 2.46.0

Doesn't his break the current ABI? Those seem to be public symbols that are being removed. Doesn't this warrant a librsvg soname bump, to something like librsvg2-3 or something? I'm worried about this breaking existing applications.

Was this investigated? Am I just being overly paranoid?

Changed in librsvg (Ubuntu Focal):
status: Fix Committed → Incomplete
Revision history for this message
Olivier Tilloy (osomon) wrote :

Hey Łukasz, that's a good point.

Those are not public symbols, they are part of the implementation-specific layer of librsvg (all symbols named "rsvg_rust_*" fall in this category).

Neither the C headers nor the GObject introspection and Vala vapi files installed by librsvg2-dev expose them. The symbols are exported in the so file though, so there is a very slim chance that they might be used in the wild. However according to http://codesearch.debian.net/ they are not used in Debian, and Google doesn't return any meaningful reference in third-party code either, so this looks quite safe to me.

This is not the first time something like this happens in the librsvg Debian package without a soname bump, FWIW: https://salsa.debian.org/gnome-team/librsvg/-/commit/8c692609c3bba7d70bb269082a2e3b16f2f19007.

Revision history for this message
Łukasz Zemczak (sil2100) wrote : Please test proposed package

Hello Olivier, or anyone else affected,

Accepted librsvg into focal-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/librsvg/2.48.7-1ubuntu0.20.04.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-focal to verification-done-focal. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-focal. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in librsvg (Ubuntu Focal):
status: Incomplete → Fix Committed
tags: added: verification-needed verification-needed-focal
Revision history for this message
Olivier Tilloy (osomon) wrote :

I updated librsvg to 2.48.7-1ubuntu0.20.04.1 from focal-proposed in an otherwise fully up-to-date focal VM (amd64), logged out and back in, and did some extensive smoke testing, both targetted (opening and manipulating various SVG images in eog and gimp), and general (launched several applications and verified that they render correctly their UI and content).
Everything looks fine, I couldn't spot any regression.

tags: added: verification-done-focal
removed: verification-needed-focal
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package librsvg - 2.48.7-1ubuntu0.20.04.1

---------------
librsvg (2.48.7-1ubuntu0.20.04.1) focal; urgency=medium

  * SRU new upstream release to focal (LP: #1884326)

 -- Olivier Tilloy <email address hidden> Fri, 19 Jun 2020 23:19:37 +0200

Changed in librsvg (Ubuntu Focal):
status: Fix Committed → Fix Released
Revision history for this message
Łukasz Zemczak (sil2100) wrote : Update Released

The verification of the Stable Release Update for librsvg has completed successfully and the package is now being released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.