lilypond-auto
[Top][All Lists]
Advanced

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

[Lilypond-auto] [LilyIssues-auto] [testlilyissues:issues] #5721 lilypond


From: Auto mailings of changes to Lily Issues via Testlilyissues-auto
Subject: [Lilypond-auto] [LilyIssues-auto] [testlilyissues:issues] #5721 lilypond-book: Rewrite processing of snippets
Date: Thu, 06 Feb 2020 11:23:42 -0000

pushed to staging

commit a621f28387363d4c71b90e3a0d0686a5d2bedccf
Author:     Jonas Hahnfeld <address@hidden>
AuthorDate: Sun Feb 2 10:36:54 2020 +0100
Commit:     Jonas Hahnfeld <address@hidden>
CommitDate: Thu Feb 6 12:00:42 2020 +0100

    Issue 5721/2: Revert "Disable Python's hash randomization"

    Now that lilypond-book uses a real hash function, remove the workaround.
    This reverts commit 04a0dc897629d1606d12d54b5c0e15e9cd003652.

commit c2808fd480612a55ff8aec91480d9097ae05359b
Author:     Jonas Hahnfeld <address@hidden>
AuthorDate: Thu Jan 30 21:45:54 2020 +0100
Commit:     Jonas Hahnfeld <address@hidden>
CommitDate: Thu Feb 6 12:00:34 2020 +0100

    Issue 5721/1: lilypond-book: Rewrite processing of snippets

    The previous version relied on a stable hash() method, both for the
    ordering in a set() and for the list's checksum. This probably worked
    with Python 2 and up to Python 3.2, but later versions use a random
    seed for invocations of hash(). This ensures different hash values for
    subsequent invocations to make malicious attacks more difficult.

    The new code uses hashlib.md5() and .hexdigest() instead which returns
    a deterministic result across runs. It also sorts the snippets' names
    which leads to more stable profiling results for 'make check'.
    This change also tries to improve performance by writing snippets with
    the same basename only once. Additionally it solves potential problems
    if the build directory has the string '.ly' in its path.

[issues:#5721] lilypond-book: Rewrite processing of snippets

Status: Fixed
Labels: Fixed_2_21_0
Created: Sat Feb 01, 2020 11:55 AM UTC by Jonas Hahnfeld
Last Updated: Thu Feb 06, 2020 06:20 AM UTC
Owner: Jonas Hahnfeld

lilypond-book: Rewrite processing of snippets

The previous version relied on a stable hash() method, both for the
ordering in a set() and for the list's checksum. This probably worked
with Python 2 and up to Python 3.2, but later versions use a random
seed for invocations of hash(). This ensures different hash values for
subsequent invocations to make malicious attacks more difficult.

The new code uses hashlib.md5() and .hexdigest() instead which returns
a deterministic result across runs. It also sorts the snippets' names
which leads to more stable profiling results for 'make check'.
This change also tries to improve performance by writing snippets with
the same basename only once. Additionally it solves potential problems
if the build directory has the string '.ly' in its path.

http://codereview.appspot.com/555220043


Sent from sourceforge.net because address@hidden is subscribed to https://sourceforge.net/p/testlilyissues/issues/

To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/testlilyissues/admin/issues/options. Or, if this is a mailing list, you can unsubscribe from the mailing list.

_______________________________________________
Testlilyissues-auto mailing list
address@hidden
https://lists.sourceforge.net/lists/listinfo/testlilyissues-auto

reply via email to

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