Le 18/07/2021 à 11:12, Thomas Morley a écrit :
Hi all, consider the follwing code, moving Mark_engraver: \score { << \new Staff b1 \new Dynamics \with { \consists "Mark_engraver" } { s2 \mark \default s2 } >> \layout { \context { \Score \remove "Mark_engraver" } } } with 2.22.0 it works, with 2.23.3 I get: programming error: cyclic dependency: calculation-in-progress encountered for #'adjacent-pure-heights (VerticalAxisGroup) continuing, cross fingers Similar for https://lsr.di.unimi.it/LSR/Item?id=1010 Is this a bug or on purpose? If not a bug, how to avoid the programming error? Thanks, Harm
15e9d3010cfcede094e5907b87d55737df839572 is the first bad commit commit 15e9d3010cfcede094e5907b87d55737df839572 Author: Jean Abou Samra <j...@abou-samra.fr> Date: Wed May 26 16:56:06 2021 +0200 Unconditionally warn about cyclic dependencies Check for cyclic dependencies and warn about them even in non-debug builds. This is useful even for users: if LilyPond has a bug that lies in a cyclic dependency, it is better to be informed about it so you have a change to report it to the mailing lists rather than have LilyPond behave surprisingly without any indication why. It is also useful for those who extend LilyPond in Scheme, who (from experience) can hit cyclic dependencies relatively easily. Finally, it is useful for developers, because we might get more bug reports. This is also consistent with the code for pure heights, which always warns about dependency cycles. As a result, the check in get_grob_direction can be removed since get_property now does the job. input/regression/debug-property-callbacks.ly | 22 ++++++++++++++++++++++ lily/directional-element-interface.cc | 7 ------- lily/grob-property.cc | 8 -------- 3 files changed, 22 insertions(+), 15 deletions(-) create mode 100644 input/regression/debug-property-callbacks.ly So it's a bug uncovered in development versions but already present in 2.22. I'm rather glad that this commit had the intended effect! I just opened https://gitlab.com/lilypond/lilypond/-/issues/6156. Given that so far this input seemed to work without surprising effects in the printed score, I suppose you could simply ignore the warning. Cheers, Jean