Unreleased

v3.0.0-46

New Features

  • Patch comments and cover letter comments can be marked ‘addressed’ or ‘unaddressed’ to reflect whether the comment has been addressed by the patch and cover letter submitter or a reviewer. The current state of a comment is shown in the header when showing a comment and users with edit permission can toggle the state using an adjacent button.

Bug Fixes

  • Fixed a compatability issue with Django 3.1 that prevented users from resetting their password. (#394)

API Changes

  • The API version has been updated to v1.3.

  • A new REST API endpoint is available at /api/covers/<cover_id>/comments/<comment_id>/. This can be used to retrieve and update (e.g. addressed state) details about a specific cover comment.

  • A new REST API endpoint is available at /api/patches/<patch_id>/comments/<comment_id>/. This can be used to retrieve and update (e.g. addressed state) details about a specific patch comment.

  • The list_archive_url field will now be correctly shown for patch comments and cover letter comments. (#391)

v3.0.0

Prelude

There are two main changes in this release: the removal of Python 2.7 support and the resolution of the longstanding performance issues introduced by the Submission model. On top of this, there is the usual bump in requirements, a significant amount of fixes to the documentation for the REST API, and the squashing of all migrations introduced in versions up to and including v2.2.0.

New Features

Upgrade Notes

  • Django 1.11, 2.0 and 2.1 are no longer supported. These are no longer supported upstream and most distributions provide a newer version.

  • djangorestframework 3.6, 3.7, 3.8 and 3.9 are no longer supported. These were only used with Django 1.11 to 2.1 and are not compatible with any version now supported by Patchwork.

  • django-filter 1.1.0 is no longer supported. This was only used with Django 1.11 and is not compatible with any version now supported by Patchwork.

  • Python 2.7 and 3.5 are no longer supported. These are no longer supported upstream and most distributions provide a newer version.

Bug Fixes

  • An issue that preventing updating bundles via the REST API without updating the included patches has been resolved. (#357)

  • The parser module now uses an atomic select-insert when creating new patch, cover letter and comment entries. This prevents the integrity errors from being logged in the DB logs. (#358)

  • Resolve a bug that would prevent listing patches for a project via the browseable API view when logged in with admin permissions (issue #379)

  • Previously, it was possible to create a project with a linkname containing invalid URL characters. This would result in broken URLs. We now validate this field and restrict characters to unicode slugs (unicode letters, numbers, underscores and hyphens).

API Changes

  • The REST API now supports filtering patches and cover letters by message ID, using the msgid query parameter. Don’t include leading or trailing angle brackets.