summaryrefslogtreecommitdiff
path: root/releasenotes
Commit message (Collapse)AuthorAge
...
* Add support for Django REST Framework 3.9Stephen Finucane2018-10-18
| | | | | | | As with 3.7 and 3.8, there are no breaking changes we need to be concerned with here. Signed-off-by: Stephen Finucane <stephen@that.guru>
* REST: Allow setting of values using embedded serializersStephen Finucane2018-10-14
| | | | | | | | | | | | | Unfortunately, the use of embedded serializers for some fields breaks the ability to update these fields, either via the HTML interface (where the widget is totally busted) or via a client like 'git-pw'. What we actually want is to be able to update these fields like normal primary key but show them using the embedded serializer. We do just this by using a modified variant of the PrimaryKeyRelatedField and using the serializers simply for displaying. Signed-off-by: Stephen Finucane <stephen@that.guru> Closes: #216
* REST: Don't allow settings of some project fieldsStephen Finucane2018-10-14
| | | | | | | | These should only be configurable by superusers as invalid configuration can break things. Signed-off-by: Stephen Finucane <stephen@that.guru> Closes: #217
* docs: Add release notes for recent bug fixesStephen Finucane2018-10-14
| | | | | | We need to start adding these as part of the bug fix itself. Signed-off-by: Stephen Finucane <stephen@that.guru>
* docs: Call out Python 3 dependency for Django 2.0Stephen Finucane2018-10-06
| | | | | | Just for those that don't read the Django release notes. Signed-off-by: Stephen Finucane <stephen@that.guru>
* Add support for Django 2.1Stephen Finucane2018-10-06
| | | | | | For once, this just works. Yay! Signed-off-by: Stephen Finucane <stephen@that.guru>
* Add support for django-filter 2.0Stephen Finucane2018-10-06
| | | | | | | | This is necessary for Django 2.1 support. We retain support for django-filter 1.0 and 1.1 as 2.0 is Python 3-only. Thankfully there is essentially zero cost in doing so for now. Signed-off-by: Stephen Finucane <stephen@that.guru>
* docs: Add release note for Django 1.8 to 1.10 removalStephen Finucane2018-09-10
| | | | | Signed-off-by: Stephen Finucane <stephen@that.guru> Fixes: e97bd5ca0 ("Remove support for Django 1.8, 1.9, 1.10")
* docs: Add release note for recent DB optimizationsStephen Finucane2018-09-10
| | | | Signed-off-by: Stephen Finucane <stephen@that.guru>
* Add support for Django 2.0Stephen Finucane2018-08-26
| | | | | | | | | | | | | | | | | | | | | | | | Nothing too complicated here except for the addition of a new compat wrapper, which will be removed again shortly. According to the Django release notes, Django should function with Python 3.4. However, it was not possible to get this functioning due to the below error: Traceback (most recent call last): File ".../patchwork/manage.py", line 11, in <module> ... File ".../django/db/models/fields/related.py", line 313, in contribute_to_class 'app_label': cls._meta.app_label.lower(), TypeError: unsupported operand type(s) for %: 'bytes' and 'dict' This does not appear to be an issue with Patchwork but the exact root cause has not been identified. As a result, only Python 3.5 and 3.6 are marked as supported for this Django version. As this is the first Python 3-only dependency we have, we need to start making use of the 'python_version' environment marker. Signed-off-by: Stephen Finucane <stephen@that.guru> Signed-off-by: Daniel Axtens <dja@axtens.net>
* Add support for django-filter 1.1Stephen Finucane2018-08-26
| | | | | | | There's one warning to handle here. Signed-off-by: Stephen Finucane <stephen@that.guru> Signed-off-by: Daniel Axtens <dja@axtens.net>
* Add support for Django REST Framework 3.7, 3.8Stephen Finucane2018-08-26
| | | | | | | | No breaking changes that concern us here. Signed-off-by: Stephen Finucane <stephen@that.guru> Reviewed-by: Daniel Axtens <dja@axtens.net> Signed-off-by: Daniel Axtens <dja@axtens.net>
* pwclient/get: Add suffix to created patchPetr Vorel2018-06-18
| | | | | Signed-off-by: Petr Vorel <petr.vorel@gmail.com> Reviewed-by: Stephen Finucane <stephen@that.guru>
* views: Raise 404 if downloading non-existent dependenciesStephen Finucane2018-06-13
| | | | | | | | | | | | | If a patch was processed by Patchwork before series support was added, it will not have a series associated with it. As a result, it is not possible to extract the dependencies for that patch from the series and a 404 should be raised. This was not previously handled correctly. Signed-off-by: Stephen Finucane <stephen@that.guru> Reviewed-by: Daniel Axtens <dja@axtens.net> Reported-by: John McNamara <john.mcnamara@intel.com> Fixes: e2dfd490 ("views: Add 'series' parameter to '/mbox' endpoint") Closes: #189
* parsemail.sh: don't set the python versionAli Alnubani2018-06-06
| | | | | | | This is to fix using the wrong python version when inside a virtualenv. Signed-off-by: Ali Alnubani <alialnu@mellanox.com> Signed-off-by: Stephen Finucane <stephen@that.guru>
* docs: Resolve typos in release notesStephen Finucane2018-05-21
| | | | Signed-off-by: Stephen Finucane <stephen@that.guru>
* REST: Base filters on Django's ModelMultipleChoiceFieldStephen Finucane2018-05-10
| | | | | | | | | | Introduce a modified version of Django's ModelMultipleChoiceField that allows us to query on multiple fields. Signed-off-by: Stephen Finucane <stephen@that.guru> Fixes: #156 [dja: commit message, expand docs] Signed-off-by: Daniel Axtens <dja@axtens.net>
* docs: Prepare for 2.1.0-rc1Daniel Axtens2018-05-08
| | | | | | | | | Patchwork v2.1.0 will be Eolienne. Move the "unreleased" notes to eolienne. We'll add a new 'unreleased' right after tagging the final 2.1.0 Signed-off-by: Daniel Axtens <dja@axtens.net>
* REST: Add comments to patch and cover endpointsVeronika Kabatova2018-04-27
| | | | | Signed-off-by: Veronika Kabatova <vkabatov@redhat.com> Reviewed-by: Stephen Finucane <stephen@that.guru>
* docs: Add release note for changes to 'headers' fieldStephen Finucane2018-04-25
| | | | Signed-off-by: Stephen Finucane <stephen@that.guru>
* docs: Fix a release note issueStephen Finucane2018-04-14
| | | | | | | | | | | | | | You can't have a space before the closing double backticks of a literal block. This was generating the following (unhelpful) error message: patchwork/docs/releases/unreleased.rst:82:Inline literal start-string without end-string. reno should have better error messages but that's a problem for another day. Signed-off-by: Stephen Finucane <stephen@that.guru> Signed-off-by: Daniel Axtens <dja@axtens.net>
* Fix stuff around mbox header changesVeronika Kabatova2018-04-11
| | | | | | | | | | | | | | | | | | | | Bundle tests got broken after the subject in mbox was changed from the parsed version to the original one because the tests checked for the presence of patch's name in the response. Fixing this turned out to be a bit tricky since the tests check the mbox attachment and HTML responses separately, so we need a string that would be present in both (the intuitive idea of checking X-Patchwork-Id won't work well). Add the patch's name to the content of the test patch so we can continue testing things the same way, checking for the presence of patch's name. Also add a releasenote notifying about the inclusion of the original headers. Reverts: b2a25342 ("Use parsed subject for mboxes") Fixes: 01b9cbb9 ("Include all email headers in mboxes") Signed-off-by: Veronika Kabatova <vkabatov@redhat.com> Reviewed-by: Stephen Finucane <stephen@that.guru>
* Avoid timezone confusionVeronika Kabatova2018-03-08
| | | | | | | | | | | | | | | | | | | | | | | Patchwork saves patches, comments etc with UTC timezone and reports this time when opening the patch details. However, internally generated processes such as events are reported with the instance's local time. There's nothing wrong with that and making PW timezone-aware would add useless complexity, but in a world-wide collaboration a lot of confusion may arise as the timezone is not reported at all. Instance's local time might be very different from the local time of CI integrating with PW, which is different from the local time of person dealing with it etc. Use UTC everywhere by default instead of UTC for sumbissions and local timezone for internally generated events (which is not reported). Signed-off-by: Veronika Kabatova <vkabatov@redhat.com> [dja: - squash 2 patches: https://patchwork.ozlabs.org/patch/876744/ https://patchwork.ozlabs.org/patch/877815/ - minor changes to both patches - rejig order of migrations and adjust wording: "happened sooner" -> "happened earlier"] Tested-by: Daniel Axtens <dja@axtens.net> Signed-off-by: Daniel Axtens <dja@axtens.net>
* Implement list filteringVeronika Kabatova2018-02-27
| | | | | | | | | | | | | | | Sometimes, multiple projects reside at the same mailing list. So far, Patchwork only allowed a single project per mailing list, which made it impossible for these projects to use Patchwork (unless they did some dirty hacks). Add a new property `subject_match` to projects and implement filtering on (list_id, subject_match) match instead of solely list_id. Instance admin can specify a regex on a per-project basis when the project is created. Signed-off-by: Veronika Kabatova <vkabatov@redhat.com> Signed-off-by: Stephen Finucane <stephen@that.guru>
* REST: Add 'mbox' to cover-letter responseStephen Finucane2018-01-10
| | | | | | | This should have been here in the first place. Not sure why it was missed. Signed-off-by: Stephen Finucane <stephen@that.guru>
* REST: Allow filtering of users by usernamesStephen Finucane2018-01-09
| | | | Signed-off-by: Stephen Finucane <stephen@that.guru>
* REST: Allow filtering of submitters by emailStephen Finucane2018-01-09
| | | | | | | This means we don't need to make a request to '/people' to filter things like patches or series. Signed-off-by: Stephen Finucane <stephen@that.guru>
* Modify sections used in release notesStephen Finucane2018-01-09
| | | | | | | | Add an 'api' section and remove 'security' and 'issues'. The former will helps us group REST API related changes, while the latter are not currently used and are unlikely to ever be used. Signed-off-by: Stephen Finucane <stephen@that.guru>
* Add support for Python 3.6Stephen Finucane2018-01-04
| | | | | | | | | This is simply a case of adding the required tox environment and updating the docs. We don't support Python 3.3 so the docs are updated accordingly. Signed-off-by: Stephen Finucane <stephen@that.guru> Reviewed-by: Daniel Axtens <dja@axtens.net>
* Remove support for Django 1.6, 1.7Stephen Finucane2018-01-04
| | | | | | | | | | | | These versions are massively outdated and the only reason for keeping them was to allow installation on RHEL 7 using the version provided via EPEL. No one's actually using this so just kill it. This also allows us to remove support for django-filter 0.11, which was only retained for use with these older versions of Django. Signed-off-by: Stephen Finucane <stephen@that.guru> Reviewed-by: Daniel Axtens <dja@axtens.net>
* templates: Add click-to-copy patch ID ("mpe mode") to patch detail pageAndrew Donnellan2018-01-04
| | | | | | | | | Similar to what we already do on the patch list page, display the patch ID on the patch detail page and make it a click-to-copy button. Closes: #115 ("Show copy-able patch ID ("mpe mode") on patch detail page") Signed-off-by: Andrew Donnellan <andrew.donnellan@au1.ibm.com> Signed-off-by: Stephen Finucane <stephen@that.guru>
* Add release note for Django 1.11 supportStephen Finucane2017-12-03
| | | | Signed-off-by: Stephen Finucane <stephen@that.guru>
* docs: Fix prelude for 2.0.0Stephen Finucane2017-05-30
| | | | | | | Turns out 'prelude' sections can't be lists. Signed-off-by: Stephen Finucane <stephen@that.guru> Fixes: dd72ff6 ("docs: Add prelude section for v2.0.0")
* Add missing release for pwclient unicode fixesStephen Finucane2017-05-30
| | | | | | This was missed in '5e3b234'. Signed-off-by: Stephen Finucane <stephen@that.guru>
* docs: Add prelude section for v2.0.0Stephen Finucane2017-05-30
| | | | | | | Call out the two most important features in this release: the REST API and series/cover letter support. Signed-off-by: Stephen Finucane <stephen@that.guru>
* models: Centralize generation of filenamesStephen Finucane2017-05-30
| | | | | | | | | | | Move filename generation to a mixin. This allows us to reuse the code for other items like cover letters. Some unncessary 'strip' calls are removed as their unnecessary. This allows us to change the file extension for diffs to 'diff', which is a little more accurate. Signed-off-by: Stephen Finucane <stephen@that.guru>
* docs: Correct pre-release regexStephen Finucane2017-05-26
| | | | | | | There's no dot before the rc version. Signed-off-by: Stephen Finucane <stephen@that.guru> Fixes: b02c43d ("docs: Add pre-release regex")
* docs: Document Check.context type changeStephen Finucane2017-05-10
| | | | | | Check contexts must now be slugs. Document this in the release notes. Signed-off-by: Stephen Finucane <stephen@that.guru>
* doc: The REST API can now be used with Django < 1.8Stephen Finucane2017-05-04
| | | | | | | | | | | The release notes stated that the REST API was only compatible with Django 1.8. However, with the merge of commit '646366cc', this is no longer the case. We would rather people didn't use these older versions of Django, but let's not lie. Signed-off-by: Stephen Finucane <stephen@that.guru>
* docs: Add pre-release regexStephen Finucane2017-05-04
| | | | | | ...in preparation for 'v2.0.0-rc1'. Signed-off-by: Stephen Finucane <stephen@that.guru>
* docs: Add a configuration guideStephen Finucane2017-04-29
| | | | | | | | | | This should simplify matters for folks that don't have much experience with Django. It also serves to highlight the 'ENABLE_REST_API' option. A release note is also added to capture the rename of DEFAULT_PATCHES_PER_PAGE that has occurred during this cycle. Signed-off-by: Stephen Finucane <stephen@that.guru>
* Add release note for Mercurial series supportStephen Finucane2017-04-28
| | | | Signed-off-by: Stephen Finucane <stephen@that.guru>
* Add reno for release notes managementStephen Finucane2017-04-18
An initial patch to add reno and create a base directory for release notes. Signed-off-by: Stephen Finucane <stephen@that.guru>