Django 4 Beta 1 Released
Written by Alex Denham   
Tuesday, 02 November 2021

The next major version of Django is now available in beta. The new release adds support for functional unique constraints, has a new more secure password hasher, and uses more Python standard libraries.

Django is a high-level Python Web framework for creating full stack dynamic websites. Django takes care of user authentication, content administration, site maps and RSS feeds to make website development easier.

django

The new release has a new expressions positional argument for UniqueConstraint(), meaning developers can create functional unique constraints on expressions and database functions. A unique constraint is usually set up on a database or SQL query as a column constraint to ensure unique values in the column, and to prevent duplicate values from appearing in the column. Constraints are usually enforced by the SQL database engine. In Postgresql, developers can create a functional unique index with 'Lower' and it will work as a case insensitive unique constraint. The new support makes it possible to pass this from Django.

The next improvement in the new release is a new password hasher. The scrypt password hasher is more secure and recommended over PBKDF2. Like PBKDF2, scrypt uses a set number of iterations to slow down brute-force attacks, but is designed to use more memory compared to other password-based key derivation functions to limit the amount of parallelism an attacker can use. This reduces the option for attackers with sufficient resources to launch large-scale parallel attacks to speed up the attacking process.

Another improvement is that the Python standard library’s zoneinfo is now the default timezone implementation in Django.

The developers say that the beta is feature complete, and only bugs in the new features and regressions from earlier versions of Django will be fixed between now and 4.0 final. The current release schedule calls for a release candidate in a month from now with the final release to follow about two weeks after that around December 6.

Django 4.0 supports Python 3.8, 3.9, and 3.10. The Django 3.2.x series is the last to support Python 3.6 and 3.7. Django 4 beta can be downloaded from the Django project's download page.

 django

More Information

Django Project Website

Related Articles

Django 3 Adds Support For ASGI

Django 1.3 released

 

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.

Banner


GitHub Launches Enterprise Data Residency
30/09/2024

GitHub has announced an option offering tighter control over where data is stored to meet regional requirements. The GitHub Enterprise Cloud data residency feature will launch on October 29 for the Eu [ ... ]



Microsoft Releases Dev Proxy 0.21
08/10/2024

Microsoft has released an update to Dev Proxy, its command-line API simulator. The updated version, v0.21, adds the ability to simulate authentication and authorization using API keys and OAuth2 among [ ... ]


More News

espbook

 

Comments




or email your comment to: comments@i-programmer.info