News
Django security releases issued: 4.2.3, 4.1.10, and 3.2.20
These releases address a new security issue. All users of Django are encouraged to upgrade as soon as possible.
Announcing the 2023 Python Software Foundation Board Election Results!
Congratulations to the 5 new members.
PyCharm & DSF Campaign 2023
In collaboration with JetBrains, Django Software Foundation (DSF) is running a fundraiser from July 3rd to July 23rd, offering a 30% discount on a year of PyCharm, with all proceeds supporting DSF. Purchasing also grants a free month of JetBrains Academy access with courses like Django, SQL, and Git.
Updates to Django
Updates to Django
From Django Review and Triage Team Member Sarah Boyce...
Last week we had a massive 20 pull requests merged into Django by 11 different contributors - including 2 first time contributors! Congratulations to Jonathan Weth and Cerebro Cerberus for having their first commits merged into Django - welcome on board!
Changes this week include adding support for GDAL 3.7 and dropping support for GDAL 2.2 and 2.3. Support for GEOS 3.6 and 3.7 has also been dropped. These are stated in the backwards incompatible changes of 5.0.
Also, from Django 5.0, the force_insert
argument of Model.save()
now allows specifying a tuple of parent classes to be inserted.
This might be useful to you if you use multi-table inheritance, see the docs on forcing an INSERT or UPDATE for more details!
Congratulations to Akash Kumar Sen for delivering this and thank you to Simon Charette for reviewing and guiding the change!
Interested in multi-table inheritance? There's a ticket on allowing QuerySet.bulk_create()
for multi-table inheritance #28821.
There's been work on it in the past but now might be the perfect time to push this forward! Look forward to welcoming you on board!
Sponsored Link 1
Learn More About our Django Services
At HackSoft, we offer expert Django software development, consultation and support, to help you build robust and scalable software.
Articles
Unlocking Performance: A Guide to Async Support in Django
This guide provides valuable insights and practical tips for new and experienced developers to leverage async programming in Django for non-blocking operations, improved scalability, and enhanced responsiveness.
Django June 2023 - Python Morsels
A summary of Django tips collected from #DjangoJune posts on Mastodon and Twitter in 2023.
Organizing Database Queries: Managers vs. QuerySets
Django Fellow Mariusz Felisiak writes on two core features of the Django ORM: Managers and QuerySets.
Proposing a struct syntax for Python
Brett Cannon proposes adding a new 'struct' syntax to Python, a construct where parameter names directly map to attribute names, simplifying data structure creation.
Two Ways to Turbo-Charge tox
This article discusses strategies for speeding up tox runs beyond the traditional parallel approach. While these methods may not significantly impact performance in continuous integration systems like GitHub Actions, they can greatly enhance the efficiency of local development.
Videos
DjangoCon Europe 2023: Keynote: A speedrunning guide to software development
Tobias Kunze gave the Keynote this year and it was a wonderful talk about how we continue to learn as software developers. Highly recommended to view.
DjangoCon Europe 2023: Do the holes in Swiss cheese leak abstractions?
Django uses abstractions everywhere--the ORM, request/response cycle, etc.--and they are powerful but also can be leaky. Sometimes a sequence of events can lead to an accident or outage.
Sponsored Link 2
Blaze.horse — Django Starter Kit
Big tech thinks everyone needs to build aircraft carriers, but all you need is a horse. We’ve distilled what we’ve learned, making all the little picky decisions so you don’t have to: just get to work on your project!
Podcasts
Django Chat #142: Django REST Framework (Replay)
A discussion of Django REST Framework, how it integrates with traditional Django, and its core features.
Projects
zappa/Zappa
The Zappa "Serverless Python" project is back under a new repository. If you want to run Django in a serverless environment, check out Zappa.