lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

make test-baseline fails for every guile-v2


From: Thomas Morley
Subject: make test-baseline fails for every guile-v2
Date: Sun, 27 Oct 2019 22:22:30 +0100

Hi,

I'm used to test building LilyPond-master against upstream
guilev2-versions, though I've to confess I limited testing to `make´
and `make doc´.
Nevertheless, recently I tried `make test-baseline´ and it failed with
_every_ guilev2, even with guile-2.0.14.

Then I went back to branch guile-v2-work and compiled it with
guile-2.0.14, which was guaranteed to work with the guilev2-patches in
this branch. And indeed it still works. This leads to the conclusion
the problem is in upstream LilyPond (at least for guile-2.0.14).
Thus I went up, patch by patch, and could identify two patches
preventing success for `make test-baseline´:

commit 96cdc755b547688c46097ba6a155aa1085ea7ac4
Author: David Kastrup <address@hidden>
Date:   Sun Feb 5 16:43:21 2017 +0100

    Issue 5056/2: Don't assume uninstantiable engravers to be symbols

and


commit 51b6513eeeaea69293bd4f554f8021529ae85a49
Author: Dan Eble <address@hidden>
Date:   Mon Jul 2 13:36:48 2018 -0400

    Issue 5366: Move warnings out of find/create context functions

    The motivation for this is that Context::find_create_context () and
    find_context_near () should probably be merged for maintainability,
    but one of the differences between them that must be dealt with is
    that find_create_context () logs when it fails and find_context_near
    () does not.  Adding warnings to find_context_near () risks being too
    noisy, leaving the option taken here.

    The new method Context::diagnostic_id (name, id) returns a formatted
    string (e.g. "Voice" or "Voice = mel") for use in a log message.  It
    is used for the warnings that are being moved as well as a few other
    existing warnings to increase consistency.




To verify, I checked out a new local branch out of
e57c27dc14a188bfdbcf0b1af9af0564218d9cdf
applied a bunch of patches for guilev2 (attached zip), reverted the
suspicious patches locally (attached as well) and compiled with
guile-2.0.14.
I've got a successful `make´ and `make test-baseline´. Didn't try
`make doc´ (worked already in a former test).

Some guessing:
Both reverted patches use
ly_scm_write_string
Maybe there's some problem there, similar to that of ly_scm2string,
fixed with Antonio's patch:
[PATCH 09/18] Fix ly_scm2string() to work with guile-2.0
(Find it in the attached zip as well)

Though, an attempt to fix ly_scm2string is out of my depth.

Furthermore, reverting said patches is not sufficient for a
successfull `make test-baseline´ with guile-2.2.x or guile-2.9.x.
More guessing:
Perhaps those guile-versions are more picky and a fix for
ly_scm_write_string would make them work as well, because
ly_scm_write_string is used at more than the two mentioned places.


Dan, David, I cc-ed you, because said patches are yours.


Thanks,
  Harm

Attachment: 0183-Revert-Issue-5056-2-Don-t-assume-uninstantiable-engr.patch
Description: Text Data

Attachment: 0001-Revert-Issue-5366-Move-warnings-out-of-find-create-c.patch
Description: Text Data

Attachment: patches-for-guile-2-9-1.zip
Description: Zip archive


reply via email to

[Prev in Thread] Current Thread [Next in Thread]