Page MenuHomeSoftware Heritage

hypothesis_strategies: Generate raw_manifest
ClosedPublic

Authored by vlorentz on Dec 15 2021, 6:55 PM.

Details

Diff Detail

Repository
rDMOD Data model
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

Build has FAILED

Patch application report for D6847 (id=24817)

Could not rebase; Attempt merge onto 9b21d2d88f...

Updating 9b21d2d..7d3af67
Fast-forward
 swh/model/hypothesis_strategies.py | 86 ++++++++++++++++++++++++++++----------
 swh/model/model.py                 | 73 ++++++++++++++++++++++++++------
 swh/model/tests/test_model.py      | 82 ++++++++++++++++++++++++++++++++++++
 3 files changed, 205 insertions(+), 36 deletions(-)
Changes applied before test
commit 7d3af67587bd0d44deb1caf5281907a53dd840a6
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Wed Dec 15 18:54:28 2021 +0100

    hypothesis_strategies: Generate raw_manifest

commit 92859f2405cd96bcf6a93b8048844c8f03dc7775
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Thu Dec 9 12:33:32 2021 +0100

    model: Exclude 'raw_manifest' from dictionaries when it is null
    
    1. Most objects do not need it so it's a waste of space
    2. This means we just extend the existing format (some objects will
       have that key in their dict) instead of changing it (retroactively
       adding it to all objects)

commit d94a7e850507de5267c315ea8b84d4fb023df890
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Wed Dec 8 16:28:25 2021 +0100

    model: Add a raw_manifest attribute
    
    This will be used to store the original manifest of 'weird' git objects,
    when we cannot reasonably represent them otherwise.

commit 6c2115a47b1a14c68b94d0a60bd2aa0227dd49c1
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Wed Dec 15 15:30:50 2021 +0100

    hypothesis_strategies: Generate only consistent directory entry permissions.

Link to build: https://jenkins.softwareheritage.org/job/DMOD/job/tests-on-diff/433/
See console output for more information: https://jenkins.softwareheritage.org/job/DMOD/job/tests-on-diff/433/console

Harbormaster returned this revision to the author for changes because remote builds failed.Dec 15 2021, 6:56 PM
Harbormaster failed remote builds in B25662: Diff 24817!

Build is green

Patch application report for D6847 (id=24820)

Could not rebase; Attempt merge onto 9b21d2d88f...

Updating 9b21d2d..fb8beb8
Fast-forward
 swh/model/hypothesis_strategies.py | 86 ++++++++++++++++++++++++++++----------
 swh/model/model.py                 | 73 ++++++++++++++++++++++++++------
 swh/model/tests/test_model.py      | 85 +++++++++++++++++++++++++++++++++++--
 3 files changed, 205 insertions(+), 39 deletions(-)
Changes applied before test
commit fb8beb8f53570540010697ea524a57204768a921
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Wed Dec 15 18:54:28 2021 +0100

    hypothesis_strategies: Generate raw_manifest

commit 92859f2405cd96bcf6a93b8048844c8f03dc7775
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Thu Dec 9 12:33:32 2021 +0100

    model: Exclude 'raw_manifest' from dictionaries when it is null
    
    1. Most objects do not need it so it's a waste of space
    2. This means we just extend the existing format (some objects will
       have that key in their dict) instead of changing it (retroactively
       adding it to all objects)

commit d94a7e850507de5267c315ea8b84d4fb023df890
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Wed Dec 8 16:28:25 2021 +0100

    model: Add a raw_manifest attribute
    
    This will be used to store the original manifest of 'weird' git objects,
    when we cannot reasonably represent them otherwise.

commit 6c2115a47b1a14c68b94d0a60bd2aa0227dd49c1
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Wed Dec 15 15:30:50 2021 +0100

    hypothesis_strategies: Generate only consistent directory entry permissions.

See https://jenkins.softwareheritage.org/job/DMOD/job/tests-on-diff/434/ for more details.

olasd added a subscriber: olasd.

I wonder if there would be a way of passing an explicit with_raw_manifest flag to the generating functions, rather than generating them and throwing them out after the fact. I get that we want to generate the field "most of the time" anyway, so maybe it's not worth bothering.

swh/model/hypothesis_strategies.py
282

I think this TODO is handled now.

This revision is now accepted and ready to land.Dec 20 2021, 1:02 PM

Good point, I didn't think of that. It's probably not worth the trouble though; we can change it later of Hypothesis starts complaining

This revision was landed with ongoing or failed builds.Dec 22 2021, 1:22 PM
This revision was automatically updated to reflect the committed changes.

Build is green

Patch application report for D6847 (id=24899)

Could not rebase; Attempt merge onto 9e1e14a829...

Updating 9e1e14a..9d517c1
Fast-forward
 swh/model/hypothesis_strategies.py | 53 ++++++++++++++++--------
 swh/model/model.py                 | 73 ++++++++++++++++++++++++++------
 swh/model/tests/test_model.py      | 85 ++++++++++++++++++++++++++++++++++++--
 3 files changed, 178 insertions(+), 33 deletions(-)
Changes applied before test
commit 9d517c179240ebf788dfeb4ecc3468e630b3e360
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Wed Dec 15 18:54:28 2021 +0100

    hypothesis_strategies: Generate raw_manifest

commit 2abbf7346a5f8789065544cfd0f690d5329edd06
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Thu Dec 9 12:33:32 2021 +0100

    model: Exclude 'raw_manifest' from dictionaries when it is null
    
    1. Most objects do not need it so it's a waste of space
    2. This means we just extend the existing format (some objects will
       have that key in their dict) instead of changing it (retroactively
       adding it to all objects)

commit f6144a15fa507ffd4e7acca207bcf5272ed16fbd
Author: Valentin Lorentz <vlorentz@softwareheritage.org>
Date:   Wed Dec 8 16:28:25 2021 +0100

    model: Add a raw_manifest attribute
    
    This will be used to store the original manifest of 'weird' git objects,
    when we cannot reasonably represent them otherwise.

See https://jenkins.softwareheritage.org/job/DMOD/job/tests-on-diff/438/ for more details.