<style>
.promo li a {
    float: left;
    width: 130px;
    height: 20px;
    text-align: center;
    margin: 10px 30px;
    padding: 150px 0 0 0;
    background-position: 0 50%;
    background-size: 130px auto;
    background-repeat: no-repeat;
    font-size: 120%;
    color: black;
}
.promo li {
    list-style: none;
}
</style>

# Django REST framework 3.16

At the Internet, on March 28th, 2025, we are happy to announce the release of Django REST framework 3.16.

## Updated Django and Python support

The latest release now fully supports Django 5.1 and the upcoming 5.2 LTS as well as Python 3.13.

The current minimum versions of Django is now 4.2 and Python 3.9.

## Django LoginRequiredMiddleware

The new `LoginRequiredMiddleware` introduced by Django 5.1 can now be used alongside Django REST Framework, however it is not honored for API views as an equivalent behavior can be configured via `DEFAULT_AUTHENTICATION_CLASSES`. See [our dedicated section](../api-guide/authentication.md#django-51-loginrequiredmiddleware) in the docs for more information.

## Improved support for UniqueConstraint

The generation of validators for [UniqueConstraint](https://docs.djangoproject.com/en/stable/ref/models/constraints/#uniqueconstraint) has been improved to support better nullable fields and constraints with conditions.

## Other fixes and improvements

There are a number of fixes and minor improvements in this release, ranging from documentation, internal infrastructure (typing, testing, requirements, deprecation, etc.), security and overall behavior.

See the [release notes](release-notes.md) page for a complete listing.
