[cairo] Release management for Cairo
Dave Yeo
dave.r.yeo at gmail.com
Sun Apr 25 23:56:08 UTC 2021
On 04/25/21 09:12 AM, Emmanuele Bassi wrote:
> First of all: Cairo is full of conditionally built code that is barely
> maintained, and seldom enabled. This makes maintenance more complicated
> because nobody is really exercising the whole code base except for some
> long tail end user. Cairo has too many science experiments, and too many
> small fiefdoms, and not enough people that care about the whole project.
> People end up enabling some random feature without realising that it's a
> trap; downstream packagers don't really know what to enable at compile
> time, either.
>
> For this reason, I'd like to whittle down the size of the code base. The
> following backends would need to go:
>
> - OS/2
> - BeOS
> - Qt
> - DRM
> - GL (GLES, EGL, GLX, WGL)
> - Cogl
> - DirectFB
> - XML
>
> The supported backends would be:
>
> - image
> - recording
> - Xlib
> - XCB
> - Win32
> - Quartz [1]
> - Tee [2]
> - SVG
> - PDF
> - PS
>
> This is, essentially, the currently exercised subset of Cairo that GTK
> needs in order to work, plus the requirements of other users of Cairo
> according to Debian's code search. I'd like to be able to say: "if you
> want to keep a backend alive, please show up and maintain it", but the
> truth is: none of the backends I'd like to remove are really used by
> anything that is currently relevant outside of a moderately long tail of
> niche users. If you rely on custom builds for your project/product, I'm
> sure you can also continue using Cairo 1.16. I'd be happy to backport
> all the relevant changes to the 1.16 branch, before sealing it for good.
As an OS/2 user, it would be a shame to see the os2surface dropped,
though I do notice that currently "yum info cairo" reports that it is
version 1.12.18 that ships with current OS/2.
It is understandable about the maintenance burden, and currently we
don't have meson support and meson seems pretty rigid so adding support
would be non-trivial from a quick look, especially as OS/2 (actually
ArcOS, www.arcanoae.com) currently only ships Python2.
I do think that even after backporting any relevant fixes to the 1.16
branch, it should be left open for other fixes. I maintain a few parts
of OS/2 such as the screensaver which uses Cairo for some modules and
have patches that should be applied. I haven't posted them due to the
lack of maintainer-ship amongst other reasons.
Dave
More information about the cairo
mailing list