Release Notes - Django REST framework (original) (raw)

Versioning

As REST Framework is considered feature-complete, most releases are expected to be minor releases.

Deprecation policy

REST framework releases follow a formal deprecation policy, which is in line with Django's deprecation policy.

The timeline for deprecation of a feature present in version 1.0 would work as follows:

Note that in line with Django's policy, any parts of the framework not mentioned in the documentation should generally be considered private API, and may be subject to change.

Upgrading

To upgrade Django REST framework to the latest version, use pip:

pip install -U djangorestframework

You can determine your currently installed version using pip show:

pip show djangorestframework

3.16.x series

3.16.0

Date: 28th March 2025

This release is considered a significant release to improve upstream support with Django and Python. Some of these may change the behaviour of existing features and pre-existing behaviour. Specifically, some fixes were added to around the support of UniqueConstraint with nullable fields which will improve built-in serializer validation.

Features

Bug fixes

Translations

Removals

Documentation and internal changes

New Contributors

Full Changelog: https://github.com/encode/django-rest-framework/compare/3.15.2...3.16.0

3.15.x series

3.15.2

Date: 14th June 2024

3.15.1

Date: 22nd March 2024

3.15.0

Date: 15th March 2024

3.14.x series

3.14.0

Date: 22nd September 2022

3.13.x series

3.13.1

Date: 15th December 2021

3.13.0

Date: 13th December 2021


3.12.x series

3.12.4

Date: 26th March 2021

3.12.3

Date: 25th March 2021

3.12.2

Date: 13th October 2020

3.12.1

Date: 28th September 2020

3.12.0

Date: 28th September 2020


3.11.x series

3.11.2

Date: 30th September 2020

3.11.1

Date: 5th August 2020

3.11.0

Date: 12th December 2019

3.10.x series

3.10.3

Date: 4th September 2019

3.10.2

Date: 29th July 2019

3.10.1

Date: 17th July 2019

3.10.0

Date: 15th July 2019

3.9.x series

3.9.4

Date: 10th May 2019

This is a maintenance release that fixes an error handling bug under Python 2.

3.9.3

Date: 29th April 2019

This is the last Django REST Framework release that will support Python 2. Be sure to upgrade to Python 3 before upgrading to Django REST Framework 3.10.

3.9.2

Date: 3rd March 2019

3.9.1

Date: 16th January 2019

3.9.0

Date: 18th October 2018

3.8.x series

3.8.2

Date: 6th April 2018

3.8.1

Date: 4th April 2018

3.8.0

Date: 3rd April 2018

def perform_create(self, serializer):  
    serializer.save(owner=self.request.user)  

Alternatively you may override save() or create() or update() on the serializer as appropriate.

@property  
def data(self):  
    """  
    Drop `maybe_none` field if None.  
    """  
    data = super().data  
    if 'maybe_none' in data and data['maybe_none'] is None:  
        del data['maybe_none']  
    return data  

3.7.x series

3.7.7

Date: 21st December 2017

3.7.6

Date: 21st December 2017

3.7.5

Date: 21st December 2017

3.7.4

Date: 20th December 2017

3.7.3

Date: 6th November 2017

3.7.2

Date: 6th November 2017

3.7.1

Date: 16th October 2017

3.7.0

Date: 6th October 2017

3.6.x series

3.6.4

Date: 21st August 2017

3.6.3

Date: 12th May 2017

3.6.2

Date: 10th March 2017

3.6.1

Date: 9th March 2017

3.6.0

Date: 9th March 2017

See the release announcement.


3.5.x series

3.5.4

Date: 10th February 2017

3.5.3

Date: 7th November 2016

3.5.2

Date: 1st November 2016

3.5.1

Date: 21st October 2016

3.5.0

Date: 20th October 2016


3.4.x series

3.4.7

Date: 21st September 2016

3.4.6

Date: 23rd August 2016

3.4.5

Date: 19th August 2016

3.4.4

Date: 12th August 2016

3.4.3

Date: 5th August 2016

3.4.2

Date: 5th August 2016

3.4.1

Date: 28th July 2016

3.4.0

Date: 14th July 2016


3.3.x series

3.3.3

Date: 14th March 2016.

3.3.2

Date: 14th December 2015.

3.3.1

Date: 4th November 2015.

3.3.0

Date: 28th October 2015.


3.2.x series

3.2.5

Date: 27th October 2015.

3.2.4

Date: 21th September 2015.

3.2.3

Date: 24th August 2015.

3.2.2

Date: 13th August 2015.

3.2.1

Date: 7th August 2015.

3.2.0

Date: 6th August 2015.


3.1.x series

3.1.3

Date: 4th June 2015.

3.1.2

Date: 13rd May 2015.

3.1.1

Date: 23rd March 2015.

3.1.0

Date: 5th March 2015.

For full details see the 3.1 release announcement.


3.0.x series

3.0.5

Date: 10th February 2015.

3.0.4

Date: 28th January 2015.

3.0.3

Date: 8th January 2015.

3.0.2

Date: 17th December 2014.

3.0.1

Date: 11th December 2014.

3.0.0

Date: 1st December 2014

For full details see the 3.0 release announcement.


For older release notes, please see the version 2.x documentation.