Version 3.7.4 Release (#5650)

* Update version for 3.7.4 Release

* Add release notes to 01587b9eb1

* Django 2.0 is now final.

* Add trove classifer for Django 2.0

* Finalise release notes for v3.7.4

* Set release date: December 20, 2017

* Update Transifex

* Add release note for #5691

* Move Issue links to bottom
This commit is contained in:
Carlton Gibson 2017-12-20 15:28:31 +01:00 committed by GitHub
parent 6de12e574e
commit a81e60ff39
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 134 additions and 38 deletions

View File

@ -53,7 +53,7 @@ There is a live example API for testing purposes, [available here][sandbox].
# Requirements
* Python (2.7, 3.4, 3.5, 3.6)
* Django (1.10, 1.11, 2.0rc1)
* Django (1.10, 1.11, 2.0)
# Installation

View File

@ -42,9 +42,9 @@ You can determine your currently installed version using `pip freeze`:
### 3.7.4
**Date**: UNRELEASED
**Date**: [20th December 2017][3.7.4-milestone]
* Extract method for `manual_fields` processing [#5633][gh5633]
* Schema: Extract method for `manual_fields` processing [#5633][gh5633]
Allows for easier customisation of `manual_fields` processing, for example
to provide per-method manual fields. `AutoSchema` adds `get_manual_fields`,
@ -54,10 +54,51 @@ You can determine your currently installed version using `pip freeze`:
Note: `AutoSchema.__init__` now ensures `manual_fields` is a list.
Previously may have been stored internally as `None`.
[gh5633]: https://github.com/encode/django-rest-framework/issues/5633
* Remove ulrparse compatability shim; use six instead [#5579][gh5579]
* Drop compat wrapper for `TimeDelta.total_seconds()` [#5577][gh5577]
* Clean up all whitespace throughout project [#5578][gh5578]
* Compat cleanup [#5581][gh5581]
* Add pygments CSS block in browsable API views [#5584][gh5584] [#5587][gh5587]
* Remove `set_rollback()` from compat [#5591][gh5591]
* Fix request body/POST access [#5590][gh5590]
* Rename test to reference correct issue [#5610][gh5610]
* Documentation Fixes [#5611][gh5611] [#5612][gh5612]
* Remove references to unsupported Django versions in docs and code [#5602][gh5602]
* Test Serializer exclude for declared fields [#5599][gh5599]
* Fixed schema generation for filter backends [#5613][gh5613]
* Minor cleanup for ModelSerializer tests [#5598][gh5598]
* Reimplement request attribute access w/ `__getattr__` [#5617][gh5617]
* Fixed SchemaJSRenderer renders invalid Javascript [#5607][gh5607]
* Make Django 2.0 support official/explicit [#5619][gh5619]
* Perform type check on passed request argument [#5618][gh5618]
* Fix AttributeError hiding on request authenticators [#5600][gh5600]
* Update test requirements [#5626][gh5626]
* Docs: `Serializer._declared_fields` enable modifying fields on a serializer [#5629][gh5629]
* Fix packaging [#5624][gh5624]
* Fix readme rendering for PyPI, add readme build to CI [#5625][gh5625]
* Update tutorial [#5622][gh5622]
* Non-required fields with `allow_null=True` should not imply a default value [#5639][gh5639]
* Docs: Add `allow_null` serialization output note [#5641][gh5641]
* Update to use the Django 2.0 release in tox.ini [#5645][gh5645]
* Fix `Serializer.data` for Browsable API rendering when provided invalid `data` [#5646][gh5646]
* Docs: Note AutoSchema limitations on bare APIView [#5649][gh5649]
* Add `.basename` and `.reverse_action()` to ViewSet [#5648][gh5648]
* Docs: Fix typos in serializers documentation [#5652][gh5652]
* Fix `override_settings` compat [#5668][gh5668]
* Add DEFAULT_SCHEMA_CLASS setting [#5658][gh5658]
* Add docs note re generated BooleanField being `required=False` [#5665][gh5665]
* Add 'dist' build [#5656][gh5656]
* Fix typo in docstring [#5678][gh5678]
* Docs: Add `UNAUTHENTICATED_USER = None` note [#5679][gh5679]
* Update OPTIONS example from “Documenting Your API” [#5680][gh5680]
* Docs: Add note on object permissions for FBVs [#5681][gh5681]
* Docs: Add example to `to_representation` docs [#5682][gh5682]
* Add link to Classy DRF in docs [#5683][gh5683]
* Document ViewSet.action [#5685][gh5685]
* Fix schema docs typo [#5687][gh5687]
* Fix URL pattern parsing in schema generation [#5689][gh5689]
* Add example using `source=*` to custom field docs. [#5688][gh5688]
* Fix format_suffix_patterns behavior with Django 2 path() routes [#5691][gh5691]
### 3.7.3
@ -882,6 +923,7 @@ For older release notes, [please see the version 2.x documentation][old-release-
[3.7.1-milestone]: https://github.com/encode/django-rest-framework/milestone/58?closed=1
[3.7.2-milestone]: https://github.com/encode/django-rest-framework/milestone/59?closed=1
[3.7.3-milestone]: https://github.com/encode/django-rest-framework/milestone/60?closed=1
[3.7.4-milestone]: https://github.com/encode/django-rest-framework/milestone/62?closed=1
<!-- 3.0.1 -->
@ -1640,3 +1682,54 @@ For older release notes, [please see the version 2.x documentation][old-release-
<!-- 3.7.3 -->
[gh5567]: https://github.com/encode/django-rest-framework/issues/5567
<!-- 3.7.4 -->
[gh5691]: https://github.com/encode/django-rest-framework/issues/5691
[gh5688]: https://github.com/encode/django-rest-framework/issues/5688
[gh5689]: https://github.com/encode/django-rest-framework/issues/5689
[gh5687]: https://github.com/encode/django-rest-framework/issues/5687
[gh5685]: https://github.com/encode/django-rest-framework/issues/5685
[gh5683]: https://github.com/encode/django-rest-framework/issues/5683
[gh5682]: https://github.com/encode/django-rest-framework/issues/5682
[gh5681]: https://github.com/encode/django-rest-framework/issues/5681
[gh5680]: https://github.com/encode/django-rest-framework/issues/5680
[gh5679]: https://github.com/encode/django-rest-framework/issues/5679
[gh5678]: https://github.com/encode/django-rest-framework/issues/5678
[gh5656]: https://github.com/encode/django-rest-framework/issues/5656
[gh5665]: https://github.com/encode/django-rest-framework/issues/5665
[gh5658]: https://github.com/encode/django-rest-framework/issues/5658
[gh5668]: https://github.com/encode/django-rest-framework/issues/5668
[gh5652]: https://github.com/encode/django-rest-framework/issues/5652
[gh5648]: https://github.com/encode/django-rest-framework/issues/5648
[gh5649]: https://github.com/encode/django-rest-framework/issues/5649
[gh5646]: https://github.com/encode/django-rest-framework/issues/5646
[gh5645]: https://github.com/encode/django-rest-framework/issues/5645
[gh5641]: https://github.com/encode/django-rest-framework/issues/5641
[gh5639]: https://github.com/encode/django-rest-framework/issues/5639
[gh5622]: https://github.com/encode/django-rest-framework/issues/5622
[gh5625]: https://github.com/encode/django-rest-framework/issues/5625
[gh5624]: https://github.com/encode/django-rest-framework/issues/5624
[gh5629]: https://github.com/encode/django-rest-framework/issues/5629
[gh5626]: https://github.com/encode/django-rest-framework/issues/5626
[gh5600]: https://github.com/encode/django-rest-framework/issues/5600
[gh5618]: https://github.com/encode/django-rest-framework/issues/5618
[gh5619]: https://github.com/encode/django-rest-framework/issues/5619
[gh5607]: https://github.com/encode/django-rest-framework/issues/5607
[gh5617]: https://github.com/encode/django-rest-framework/issues/5617
[gh5598]: https://github.com/encode/django-rest-framework/issues/5598
[gh5613]: https://github.com/encode/django-rest-framework/issues/5613
[gh5599]: https://github.com/encode/django-rest-framework/issues/5599
[gh5602]: https://github.com/encode/django-rest-framework/issues/5602
[gh5612]: https://github.com/encode/django-rest-framework/issues/5612
[gh5611]: https://github.com/encode/django-rest-framework/issues/5611
[gh5610]: https://github.com/encode/django-rest-framework/issues/5610
[gh5590]: https://github.com/encode/django-rest-framework/issues/5590
[gh5591]: https://github.com/encode/django-rest-framework/issues/5591
[gh5587]: https://github.com/encode/django-rest-framework/issues/5587
[gh5584]: https://github.com/encode/django-rest-framework/issues/5584
[gh5581]: https://github.com/encode/django-rest-framework/issues/5581
[gh5578]: https://github.com/encode/django-rest-framework/issues/5578
[gh5577]: https://github.com/encode/django-rest-framework/issues/5577
[gh5579]: https://github.com/encode/django-rest-framework/issues/5579
[gh5633]: https://github.com/encode/django-rest-framework/issues/5633

View File

@ -8,7 +8,7 @@ ______ _____ _____ _____ __
"""
__title__ = 'Django REST framework'
__version__ = '3.7.3'
__version__ = '3.7.4'
__author__ = 'Tom Christie'
__license__ = 'BSD 2-Clause'
__copyright__ = 'Copyright 2011-2017 Tom Christie'

View File

@ -3,6 +3,7 @@
# This file is distributed under the same license as the PACKAGE package.
#
# Translators:
# Håken Lid <haakenlid@gmail.com>, 2017
# Petter Kjelkenes <kjelkenes@gmail.com>, 2015
# Thomas Bruun <thomas.bruun@gmail.com>, 2017
msgid ""
@ -10,8 +11,8 @@ msgstr ""
"Project-Id-Version: Django REST framework\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-07-12 16:13+0100\n"
"PO-Revision-Date: 2017-11-01 09:58+0000\n"
"Last-Translator: Thomas Bruun <thomas.bruun@gmail.com>\n"
"PO-Revision-Date: 2017-11-28 15:25+0000\n"
"Last-Translator: Håken Lid <haakenlid@gmail.com>\n"
"Language-Team: Norwegian Bokmål (http://www.transifex.com/django-rest-framework-1/django-rest-framework/language/nb/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@ -25,7 +26,7 @@ msgstr "Ugyldig basic header. Ingen legitimasjon gitt."
#: authentication.py:76
msgid "Invalid basic header. Credentials string should not contain spaces."
msgstr "Ugylid basic header. Legitimasjonsstreng bør ikke inneholde mellomrom."
msgstr "Ugyldig basic header. Legitimasjonsstreng bør ikke inneholde mellomrom."
#: authentication.py:82
msgid "Invalid basic header. Credentials not correctly base64 encoded."
@ -58,35 +59,35 @@ msgstr "Ugyldig token."
#: authtoken/apps.py:7
msgid "Auth Token"
msgstr ""
msgstr "Auth Token"
#: authtoken/models.py:15
msgid "Key"
msgstr ""
msgstr "Nøkkel"
#: authtoken/models.py:18
msgid "User"
msgstr ""
msgstr "Bruker"
#: authtoken/models.py:20
msgid "Created"
msgstr ""
msgstr "Opprettet"
#: authtoken/models.py:29
msgid "Token"
msgstr ""
msgstr "Token"
#: authtoken/models.py:30
msgid "Tokens"
msgstr ""
msgstr "Tokener"
#: authtoken/serializers.py:8
msgid "Username"
msgstr ""
msgstr "Brukernavn"
#: authtoken/serializers.py:9
msgid "Password"
msgstr ""
msgstr "Passord"
#: authtoken/serializers.py:20
msgid "User account is disabled."
@ -98,7 +99,7 @@ msgstr "Kan ikke logge inn med gitt legitimasjon."
#: authtoken/serializers.py:26
msgid "Must include \"username\" and \"password\"."
msgstr "Må inkludere \"username\" og \"password\"."
msgstr "Må inneholde \"username\" og \"password\"."
#: exceptions.py:49
msgid "A server error occurred."
@ -316,15 +317,15 @@ msgstr "Send inn"
#: filters.py:336
msgid "ascending"
msgstr ""
msgstr "stigende"
#: filters.py:337
msgid "descending"
msgstr ""
msgstr "synkende"
#: pagination.py:193
msgid "Invalid page."
msgstr ""
msgstr "Ugyldig side"
#: pagination.py:427
msgid "Invalid cursor"
@ -426,7 +427,7 @@ msgstr "Ugyldig versjon i URL-banen."
#: versioning.py:115
msgid "Invalid version in URL path. Does not match any version namespace."
msgstr ""
msgstr "Ugyldig versjon i URL. Passer ikke med noen eksisterende versjon."
#: versioning.py:147
msgid "Invalid version in hostname."

View File

@ -7,13 +7,14 @@
# Ederson Mota Pereira <edermp@gmail.com>, 2015
# Filipe Rinaldi <filipe.rinaldi@gmail.com>, 2015
# Hugo Leonardo Chalhoub Mendonça <hugoleonardocm@live.com>, 2015
# Jonatas Baldin <jonatas.baldin@gmail.com>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Django REST framework\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-07-12 16:13+0100\n"
"PO-Revision-Date: 2017-08-03 14:58+0000\n"
"Last-Translator: Thomas Christie <tom@tomchristie.com>\n"
"PO-Revision-Date: 2017-12-06 09:53+0000\n"
"Last-Translator: Jonatas Baldin <jonatas.baldin@gmail.com>\n"
"Language-Team: Portuguese (Brazil) (http://www.transifex.com/django-rest-framework-1/django-rest-framework/language/pt_BR/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@ -60,35 +61,35 @@ msgstr "Token inválido."
#: authtoken/apps.py:7
msgid "Auth Token"
msgstr ""
msgstr "Token de autenticação"
#: authtoken/models.py:15
msgid "Key"
msgstr ""
msgstr "Chave"
#: authtoken/models.py:18
msgid "User"
msgstr ""
msgstr "Usuário"
#: authtoken/models.py:20
msgid "Created"
msgstr ""
msgstr "Criado"
#: authtoken/models.py:29
msgid "Token"
msgstr ""
msgstr "Token"
#: authtoken/models.py:30
msgid "Tokens"
msgstr ""
msgstr "Tokens"
#: authtoken/serializers.py:8
msgid "Username"
msgstr ""
msgstr "Nome do usuário"
#: authtoken/serializers.py:9
msgid "Password"
msgstr ""
msgstr "Senha"
#: authtoken/serializers.py:20
msgid "User account is disabled."
@ -318,15 +319,15 @@ msgstr "Enviar"
#: filters.py:336
msgid "ascending"
msgstr ""
msgstr "ascendente"
#: filters.py:337
msgid "descending"
msgstr ""
msgstr "descendente"
#: pagination.py:193
msgid "Invalid page."
msgstr ""
msgstr "Página inválida."
#: pagination.py:427
msgid "Invalid cursor"
@ -428,7 +429,7 @@ msgstr "Versão inválida no caminho de URL."
#: versioning.py:115
msgid "Invalid version in URL path. Does not match any version namespace."
msgstr ""
msgstr "Versão inválida no caminho da URL. Não corresponde a nenhuma versão do namespace."
#: versioning.py:147
msgid "Invalid version in hostname."

View File

@ -69,6 +69,7 @@ setup(
'Framework :: Django',
'Framework :: Django :: 1.10',
'Framework :: Django :: 1.11',
'Framework :: Django :: 2.0',
'Intended Audience :: Developers',
'License :: OSI Approved :: BSD License',
'Operating System :: OS Independent',