[PATCH v4 0/7] Add support for series dependencies
Aaron Conole
aconole at redhat.com
Sat Feb 8 02:13:29 AEDT 2025
Adam Hassick <ahassick at iol.unh.edu> writes:
> Aaron,
>
> Please take a look at the new version of this series and let me know
> if this implementation, where the feature may be enabled per-project,
> is satisfactory.
LGTM - Thanks for working on this, Adam!
> Regards,
> Adam
>
> On Thu, Jan 30, 2025 at 2:56 PM Adam Hassick <ahassick at iol.unh.edu> 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.
>>
>> 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
>>
>> --
>> 2.48.1
>>
> _______________________________________________
> Patchwork mailing list
> Patchwork at lists.ozlabs.org
> https://lists.ozlabs.org/listinfo/patchwork
More information about the Patchwork
mailing list