[PATCH v3 0/7] Add support for series dependencies

Adam Hassick ahassick at iol.unh.edu
Sat Nov 16 07:40:07 AEDT 2024


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.

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.

Adam Hassick (7):
  models: Add field for series dependencies
  api: Add fields to series detail view
  parser: Parse "Depends-on" tags in emails
  tests: Add tests for new functionality
  docs: 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        |   18 +-
 docs/api/schemas/patchwork.j2                 |   18 +
 docs/api/schemas/v1.4/patchwork.yaml          | 3242 +++++++++++++++++
 docs/usage/overview.rst                       |   11 +
 patchwork/api/series.py                       |   26 +-
 .../migrations/0048_series_dependencies.py    |   23 +
 patchwork/models.py                           |   26 +
 patchwork/parser.py                           |   85 +-
 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                |  271 ++
 patchwork/urls.py                             |   10 +-
 ...-series-dependencies-6696458586e795c7.yaml |   18 +
 22 files changed, 4430 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.47.0



More information about the Patchwork mailing list