Subject: CVS commit: pkgsrc/print/pmw
From: Patrick Welche
Date: 2018-09-17 17:15:21
Message id: 20180917151521.F2E6CFBF8@cvs.NetBSD.org

Log Message:
Update pmw to 4.30

Version 4.30 15-June-2018
-------------------------

1. If a "movement" was coded without any staves (for example, for a title
   page), there was the possibility of a segmentation crash due to memory
   corruption. This is a very old bug, surprisingly never triggered before.

2. Added the "tripletize" feature, somewhat of an experiment.

3. Allow semicolon and comma after any note, not just quavers and shorter, to
   make life easier when halvenotes and doublenotes are being used.

4. Implement [doublenotes] and [halvenotes] to alter note lengths without
   affecting time signatures.

5. Make -norepeat a synonym of -norepeats because I keep forgetting.

6. Make "stafflines" a synonym of "stavelines" because \ 
staff/stave are supposed
   to be interchangeable throughout.

7. Added an optional thickness to -drawstavelines.

8. Repeats in the middle of bars are now honoured in MIDI output.

9. If there were more than 20 text strings preceding a note, PMW could crash.
   The limit has been increased to 50, and a test for overflow is now in place.

10. Arrange to free heap memory so tests can run with -fsanitize=address.

11. If a chord was repeated multiple times by 'x' followed by a number greater
    than 1, a data overrun could occur. There is now also a hard error if there
    are too many notes in a chord (the limit is now 16).

12. If a midichannel directive contained a volume setting, undefined memory was
    being copied accidentally (but never used).

13. Several code refactorizations to tidy up suspect code picked up by gcc and
    clang sanitizers.

14. "Printtime" and "printkey" directives used to apply to \ 
the entire piece;
    even if set in the second movement they would affect the first. Now they
    apply only to the movement they are set in and any that follow.

15. Some other changes for "printkey":

    (a) At a mid-stave change of key, PMW used to check for C major or A minor
    when deciding whether to automatically insert a previous key cancellation
    signature using natural signs, though in one case the test for A minor was
    missing. Now it checks for a key signature of zero width, which means that
    if "printkey" defines an empty string for the new key, a cancellation
    signature will be generated.

    (b) Previously, a cancellation signature took no notice of any \ 
"printkey"
    setting. There is now an optional second argument for "printkey" that
    specifies what to print for a cancellation. If not supplied, an empty
    string is used.

16. Added four new characters to the music font: reverse turns and half circles.

17. Characters from the PMW-Alpha font were not being correctly included in the
    documentation PDF (something changed and I didn't notice). This has been
    fixed by including the type 3 PostScript font explicitly when building the
    PDF from SDoP's PostScript output.

Files:
RevisionActionfile
1.4modifypkgsrc/print/pmw/Makefile
1.5modifypkgsrc/print/pmw/distinfo