On Mon, Mar 10, 2025 at 6:33 PM Stephen Finucane <step...@that.guru> wrote: > > On Sat, 2025-03-08 at 11:51 +0000, Stephen Finucane wrote: > > On Thu, 2025-01-30 at 14:56 -0500, Adam Hassick wrote: > > > This patch series adds support for series dependencies. A series > > > dependency may be declared by another series when that series alone will > > > not apply, compile, or otherwise function properly without the dependent > > > series. > > > > > > Including the "Depends-on" tag in any patch commit message or in the cover > > > letter blurb will signal Patchwork to add the referenced series as a > > > dependency. The value for this tag may be a message ID of the dependent > > > series cover letter or any patch in the dependent series. Or, > > > alternatively, it may be the web URL of the dependent series or any patch > > > in that series. > > > > > > This feature is disabled by default and can be enabled on a per-project > > > basis via the "parse_dependencies" feature flag. The feature flag is > > > exposed via the Patchwork REST API. > > > > Apologies for the delay getting to this. I think I've reviewed > > everything now. I have one main change made, as highlighted in my > > reviews, but this is otherwise great work 🙏 I'll attempt to get that > > change wrapped up tomorrow (as I'm out of time today) and pushed. > > This is merged now. When you've time, please take a look and ensure > you're happy with the end result. I've another few series to get > through, then we can cut a new release with this included. Thanks again > for the great work.
Very nice, thank you. I've reviewed the applied changes and these look good to me. There will be a follow-up change to git-pw coming soon to implement applying any dependent series when using the "apply" subcommand. > Stephen > > > > > Cheers, > > Stephen > > > > > > > > v2: > > > * Use message IDs instead of object IDs. > > > * Check for invalid dependencies before adding them. > > > > > > v3: > > > * Fix a few nits in the parser. > > > * Update migrations. > > > > > > v4: > > > * Add a feature flag to the Project object. > > > * Change parser to only parse dependencies when the feature flag is > > > enabled. > > > > > > Adam Hassick (7): > > > models: Add fields for series dependencies > > > api: Add fields to series detail view > > > parser: Parse "Depends-on" tags in emails > > > tests: Add tests for new functionality > > > docs: Add feature info and increment API version > > > docs: Add generated API schemas > > > release-notes: Add release note > > > > > > docs/api/rest/index.rst | 42 +- > > > docs/api/rest/schemas/v1.3.rst | 4 +- > > > docs/api/rest/schemas/v1.4.rst | 5 + > > > docs/api/schemas/generate-schemas.py | 4 +- > > > docs/api/schemas/latest/patchwork.yaml | 21 +- > > > docs/api/schemas/patchwork.j2 | 23 + > > > docs/api/schemas/v1.4/patchwork.yaml | 3245 +++++++++++++++++ > > > docs/usage/overview.rst | 13 + > > > patchwork/api/project.py | 2 + > > > patchwork/api/series.py | 26 +- > > > .../migrations/0048_series_dependencies.py | 32 + > > > patchwork/models.py | 30 + > > > patchwork/parser.py | 92 +- > > > patchwork/tests/api/test_project.py | 28 + > > > patchwork/tests/api/test_series.py | 33 +- > > > .../tests/series/dependency-base-patch.mbox | 102 + > > > .../series/dependency-multi-2.mbox.template | 110 + > > > .../series/dependency-multi.mbox.template | 109 + > > > .../series/dependency-one-cover.mbox.template | 128 + > > > .../dependency-one-first-patch.mbox.template | 125 + > > > patchwork/tests/test_parser.py | 52 + > > > patchwork/tests/test_series.py | 302 ++ > > > patchwork/urls.py | 10 +- > > > ...-series-dependencies-6696458586e795c7.yaml | 22 + > > > 24 files changed, 4528 insertions(+), 32 deletions(-) > > > create mode 100644 docs/api/rest/schemas/v1.4.rst > > > create mode 100644 docs/api/schemas/v1.4/patchwork.yaml > > > create mode 100644 patchwork/migrations/0048_series_dependencies.py > > > create mode 100644 patchwork/tests/series/dependency-base-patch.mbox > > > create mode 100644 > > > patchwork/tests/series/dependency-multi-2.mbox.template > > > create mode 100644 patchwork/tests/series/dependency-multi.mbox.template > > > create mode 100644 > > > patchwork/tests/series/dependency-one-cover.mbox.template > > > create mode 100644 > > > patchwork/tests/series/dependency-one-first-patch.mbox.template > > > create mode 100644 > > > releasenotes/notes/add-series-dependencies-6696458586e795c7.yaml > > > > > > > _______________________________________________ > > Patchwork mailing list > > Patchwork@lists.ozlabs.org > > https://lists.ozlabs.org/listinfo/patchwork > _______________________________________________ Patchwork mailing list Patchwork@lists.ozlabs.org https://lists.ozlabs.org/listinfo/patchwork