Opened 3 years ago
Closed 3 years ago
#64005 closed defect (fixed)
cairo was updated to 1.17.4
Reported by: | ryandesign (Ryan Carsten Schmidt) | Owned by: | mascguy (Christopher Nielsen) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | i0ntempest | |
Port: | cairo |
Description
The cairo port was updated to 1.17.4 in [e1e53f19f7ad0e7c754af3dd872a3adf54e8d9c4/macports-ports]. I didn't approve that; in fact I explained in #63398 why we should not do that. (It is not a stable version.) Why was it done anyway?
Change History (9)
comment:1 Changed 3 years ago by mascguy (Christopher Nielsen)
comment:2 follow-up: 3 Changed 3 years ago by mascguy (Christopher Nielsen)
Cc: | mascguy removed |
---|---|
Owner: | set to mascguy |
Status: | new → assigned |
Ryan, I'll have to do some digging during my lunch break. But perhaps one of the GIMP dependencies - and/or GIMP itself - may have required the latest Cairo release. (Despite 1.17.x being considered less-than-stable.)
That's the only thing I can think of at the moment, as otherwise we tried to respect all of your comments/feedback.
More to follow though.
comment:3 Changed 3 years ago by mascguy (Christopher Nielsen)
Replying to mascguy:
Ryan, I'll have to do some digging during my lunch break. But perhaps one of the GIMP dependencies - and/or GIMP itself - may have required the latest Cairo release. (Despite 1.17.x being considered less-than-stable.)
That's the only thing I can think of at the moment, as otherwise we tried to respect all of your comments/feedback.
More to follow though.
Longer-term, we may need to support multiple versions of foundational ports like cairo
, pango
, glib2
, etc - via the same segregation scheme used for Boost and OpenSSL - as being locked into one version causes serious dependency hell. That's something I'd take care of maintaining though, so that you don't have to deal with it.
I'm hoping to avoid that as much as possible, so don't get too nervous just yet. (And we'll certainly give you an opportunity to chime in, and provide feedback, before going crazy with more versioned ports.) But just a proactive heads-up, for future thought/consideration.
comment:4 follow-up: 5 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)
As far as I know, cairo, pango, and glib2 have always striven to be highly backward compatible, so I would most strongly oppose the creation of multiple segregated ports for them. It should completely suffice to have -devel ports for those wishing to explore new features or bug fixes, as we have already had for a long time.
cairo 1.16.0 is the latest stable version; the port should be at that version. Hopefully the developers of gimp did not depend upon things not included in that version. If they did, then we should ask the developers of cairo to release 1.18.0 stable.
comment:5 follow-up: 6 Changed 3 years ago by mascguy (Christopher Nielsen)
Replying to ryandesign:
As far as I know, cairo, pango, and glib2 have always striven to be highly backward compatible, so I would most strongly oppose the creation of multiple segregated ports for them. It should completely suffice to have -devel ports for those wishing to explore new features or bug fixes, as we have already had for a long time.
Agreed, and to reiterate, the desire is to avoid creation of additional ports when possible. Indeed, perhaps cairo
and pango
weren't the best examples.
But in the case of glib2
, we're presently using an older release, due to various concerns voiced during the GIMP 2.10.28 upgrade. And if we supported multiple segregated versions, we could have the best of both worlds: Keep the older release for the umpteen different ports that may break, but still move forward for dependents when desired/possible.
So I'm not sure I agree, at least for glib2
.
cairo 1.16.0 is the latest stable version; the port should be at that version. Hopefully the developers of gimp did not depend upon things not included in that version. If they did, then we should ask the developers of cairo to release 1.18.0 stable.
Still need to look into this further.
comment:6 follow-up: 7 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)
Replying to mascguy:
But in the case of
glib2
, we're presently using an older release, due to various concerns voiced during the GIMP 2.10.28 upgrade.
Oh. Could you point me to what those concerns were? I recently updated glib2-devel to the next major version and was planning on updating glib2 as well, not aware there were problems with doing so.
And what's the verdict with regard to why cairo was updated to an unstable version?
comment:7 follow-up: 8 Changed 3 years ago by mascguy (Christopher Nielsen)
Replying to ryandesign:
Oh. Could you point me to what those concerns were? I recently updated glib2-devel to the next major version and was planning on updating glib2 as well, not aware there were problems with doing so.
The key concern was that we might break ports dependent on glib2
. But so long as we gradually update it - per the approach you're currently following - there aren't any concerns, at least from my perspective.
And what's the verdict with regard to why cairo was updated to an unstable version?
Sorry for the delay on this. It may simply have been an oversight on my part, but can't say for sure.
So, I'm currently rebuilding a number of direct dependents with Cairo 1.16.0, to see whether there are any issues. And while this list is only a small subset of all dependents, it's a starting point:
- cairomm
- clutter
- cogl
- darktable
- frei0r-plugins
- grass7
- gstreamer1-gst-plugins-good
- harfbuzz-devel
- libchamplain
- libiodbc
- librsvg
- libspectre
- pango
- poppler
- py27-cairo
- py310-cairo
- py39-cairo
- rrdtool
- texlive-bin
- webkit2-gtk
But from a practical perspective: Given that Cairo 1.17.4 has been in use for a few months now - without any known issues (I believe?) - is it worth the effort of reverting to 1.16.0? (If nothing else, we'll need to rev-bump every direct dependent.)
comment:8 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)
Replying to mascguy:
Replying to ryandesign:
Oh. Could you point me to what those concerns were? I recently updated glib2-devel to the next major version and was planning on updating glib2 as well, not aware there were problems with doing so.
The key concern was that we might break ports dependent on
glib2
. But so long as we gradually update it - per the approach you're currently following - there aren't any concerns, at least from my perspective.
Ok. I thought you were referring to a specific known build failure that would occur in gimp2 if we were to update glib2 to a newer version.
Given that Cairo 1.17.4 has been in use for a few months now - without any known issues (I believe?) - is it worth the effort of reverting to 1.16.0? (If nothing else, we'll need to rev-bump every direct dependent.)
Yeah let's keep it then. I'll fix the livecheck to only track stable versions again.
comment:9 Changed 3 years ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
I thought we had reverted all such commits, before merging the GIMP 2.10.28 update PR.
I'll have to go back and review, Oct 7 feels like a lifetime ago...