Skip to content
This repository was archived by the owner on Jun 24, 2022. It is now read-only.

GUB updates expat/libpng/pixman/cairo/lilypond#86

Draft
knupero wants to merge 4 commits into
gperciva:masterfrom
knupero:master
Draft

GUB updates expat/libpng/pixman/cairo/lilypond#86
knupero wants to merge 4 commits into
gperciva:masterfrom
knupero:master

Conversation

@knupero

@knupero knupero commented Jul 18, 2021

Copy link
Copy Markdown

expat: Download link broken, update to current version recommended because of security issues.

libpng: upstream bugfix
cairo: replace outdated version, needed by new lilypond cairo backend
pixman: replace outdated version, needed by updated cairo

lilypond: update to allow lilypond with cairo backend. With these patches it is possible to build lilypond with and without the new cairo backend.

Knut Petersen added 3 commits July 18, 2021 09:35
Old download link is gone, old version was insecure.

Signed-off-by: Knut Petersen <knupero@gmail.com>
Update Cairo and Pixman to the newest stable versions,
update libpng to newest 1.2.x version.

Signed-off-by: Knut Petersen <knupero@gmail.com>
Signed-off-by: Knut Petersen <knupero@gmail.com>
@hahnjo

hahnjo commented Jul 18, 2021

Copy link
Copy Markdown

I'm against adding the dependency from lilypond to cairo: The code isn't there yet and even if it is, I don't think we should enable the experimental backend for users.

@knupero

knupero commented Jul 18, 2021

Copy link
Copy Markdown
Author

Well, since this discussion was not entirely unpredictable, I have already split the pull request code into three patches.

I don't expect a big discussion about the expat patch. By the way, the previously used version is still available, they just renamed it to expat-2.1.0-RENAMED-VULNERABLE-PLEASE-USE-2.3.0-INSTEAD.tar.gz. However, the same thing happened with version 2.3.0, so the only thing left to do was to update to 2.4.1.

The patch for the spec files of Libpng/Pixman/Cairo means a significant improvement of the graphics stack available in GUB. It think it could be accepted even if the Lilypond developer community decides against the integration of a Cairo backend.

Basically, the patch for the Lilypond spec file has the following effects:

1: Bootstrapping of GUB takes a bit longer since the three packages have to be compiled for the four architectures we support.

2: If a version of Lilypond is built that does not use or require LibPng/Pixman/Cairo, the patch does not change anything in the built Lilypond package. The patch only has an effect if a Lilypond version is built that can use LibPng/Pixman/Cairo.

I don't know if this patch will ever be integrated into Gub. For me, however, it is logical to provide a patch for GUB in addition to a Lilypond patch if the Lilypond patch would otherwise be pointless.

@knupero knupero closed this Jul 18, 2021
@knupero knupero reopened this Jul 18, 2021
@hahnjo

hahnjo commented Jul 19, 2021

Copy link
Copy Markdown

The patch for the spec files of Libpng/Pixman/Cairo means a significant improvement of the graphics stack available in GUB.

I'm not against this one.

If a version of Lilypond is built that does not use or require LibPng/Pixman/Cairo, the patch does not change anything in the built Lilypond package. The patch only has an effect if a Lilypond version is built that can use LibPng/Pixman/Cairo.

This is wrong. GUB will gather all dependent libraries into the installer, and that is pointless as long as we don't want to ship it or the patch(es) didn't even land in the repository.

@knupero knupero marked this pull request as draft July 26, 2021 00:54
@knupero

knupero commented Jul 26, 2021

Copy link
Copy Markdown
Author

As I want to use three commits added to cairo on 2021/07/23 and 2021/07/24 I've set this to draft status.
One of those commits fixes the page-link with page forward reference problem,.
2 commits fix broken cairo error detection (write errors were not detected by the cairo pdf backend and the cairo svg backend.

The lilypond cairo backend will require cairo,
but the pdf and the svg backend of cairo were
unable to detect write errors.

The pdf backend was unable to generate correct
internal page links if page was a reference to
a page greater than the current page.

In the version used here these three bugs
have been fixed.

Since January 2021 the cairo test suite also
depends on glibc. We do not need the test
suite, and we don't want it. The easiest
fix is a patch as configure does not allow
to disable the test suite.
@knupero

knupero commented Jul 28, 2021

Copy link
Copy Markdown
Author

Ready for the lilypond cairo backend ... i leave the draft status unchanged until it is clear that a cairo backend for lilypond will be accepted.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants