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

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

Draft
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

knupero
Copy link

@knupero knupero commented Jul 18, 2021

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 <[email protected]>
Update Cairo and Pixman to the newest stable versions,
update libpng to newest 1.2.x version.

Signed-off-by: Knut Petersen <[email protected]>
@hahnjo
Copy link

hahnjo commented Jul 18, 2021

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
Copy link
Author

knupero commented Jul 18, 2021

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
Copy link

hahnjo commented Jul 19, 2021

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
Copy link
Author

knupero commented Jul 26, 2021

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
Copy link
Author

knupero commented Jul 28, 2021

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