Latest Python Updates

Latest Programming Updates: Python, Django, PySpark, PyCharm, VS-Code, and More! 🐍

Python 3.15.0 alpha 5 (yes, another alpha!)

Posted by Hugo


www.python.org/downloads/release/python-3150a5/ Python 3.15 is still in development. This release, 3.15.0a5, is the fifth of eight planned alpha releases. Alpha releases are intended to make it easier to test the current state of new features and bug fixes and to test the release process. During the alpha phase, features may be added up until the start of the beta phase (2026-05-05) and, if necessary, may be modified or deleted up until the release candidate phase (2026-07-28). Please keep in mind that this is a preview release and its use is recommended for production environments. Many new features for Python 3.15 are still being planned and written. Among the new major new features and changes so far: The next pre-release of Python 3.15 will be 3.15.0a6, currently scheduled for 2026-02-10. At last it was given out that some time next day the ship would certainly sail. So next morning, Queequeg and I took a very early start. Thanks to all of the many volunteers who help make Python Development and these releases possible! Please consider supporting our efforts by volunteering yourself or through organisation contributions to the . Python Software Foundation Regards from a still snowfully subzero Helsinki, Your release team, Hugo van Kemenade Ned Deily Steve Dower �ukasz Langa

Python 3.15.0 alpha 4

Posted by Hugo


www.python.org/downloads/release/python-3150a4/ Python 3.15 is still in development. This release, 3.15.0a4, is the fourth of seven planned alpha releases. Alpha releases are intended to make it easier to test the current state of new features and bug fixes and to test the release process. During the alpha phase, features may be added up until the start of the beta phase (2026-05-05) and, if necessary, may be modified or deleted up until the release candidate phase (2026-07-28). Please keep in mind that this is a preview release and its use is recommended for production environments. Many new features for Python 3.15 are still being planned and written. Among the new major new features and changes so far: The next pre-release of Python 3.15 will be 3.15.0a5, currently scheduled for 2026-02-10. Upon this every soul was confounded; for the phenomenon just then observed by Ahab had unaccountably escaped every one else; but its very blinding palpableness must have been the cause. Thrusting his head half way into the binnacle, Ahab caught one glimpse of the compasses; his uplifted arm slowly fell; for a moment he almost seemed to stagger. Standing behind him Starbuck looked, and lo! the two compasses pointed East, and the Pequod was as infallibly going West. But ere the first wild alarm could get out abroad among the crew, the old man with a rigid laugh exclaimed, “I have it! It has happened before. Mr. Starbuck, last night’s thunder turned our compasses—that’s all. Thou hast before now heard of such a thing, I take it.” “Aye; but never before has it happened to me, sir,” said the pale mate, gloomily. Thanks to all of the many volunteers who help make Python Development and these releases possible! Please consider supporting our efforts by volunteering yourself or through organisation contributions to the . Python Software Foundation Regards from a snowfully subzero Helsinki, Your release team, Hugo van Kemenade Ned Deily Steve Dower Å�ukasz Langa

Python 3.15.0 alpha 3

Posted by Hugo


www.python.org/downloads/release/python-3150a3/ Python 3.15 is still in development. This release, 3.15.0a3, is the third of seven planned alpha releases. Alpha releases are intended to make it easier to test the current state of new features and bug fixes and to test the release process. During the alpha phase, features may be added up until the start of the beta phase (2026-05-05) and, if necessary, may be modified or deleted up until the release candidate phase (2026-07-28). Please keep in mind that this is a preview release and its use is recommended for production environments. Many new features for Python 3.15 are still being planned and written. Among the new major new features and changes so far: The next pre-release of Python 3.15 will be 3.15.0a4, currently scheduled for 2026-01-13. Instantly the captain ran forward, and in a loud voice commanded his crew to desist from hoisting the cutting-tackles, and at once cast loose the cables and chains confining the whales to the ship. “What now?” said the Guernsey-man, when the Captain had returned to them. “Why, let me see; yes, you may as well tell him now that—that—in fact, tell him I’ve diddled him, and (aside to himself) perhaps somebody else.” Thanks to all of the many volunteers who help make Python Development and these releases possible! Please consider supporting our efforts by volunteering yourself or through organisation contributions to the . Python Software Foundation Regards from an even deeper darker Helsinki, Your release team, Hugo van Kemenade Ned Deily Steve Dower Å�ukasz Langa

Python 3.14.2 and 3.13.11 are now available!

Posted by Hugo


Two more, just three days after the last? Yes! We found some regressions, so here’s an expedited pair of releases. They also come with some bonus security fixes. www.python.org/downloads/release/python-3142/ Python 3.14.2 is the second maintenance release of 3.14, containing 18 bugfixes, build improvements and documentation changes since 3.14.1. This is an expedited release to fix the following regressions: : Exceptions in in running programs while upgrading Python. gh-142206 : Exceptions in dataclasses without method. gh-142214 : Segmentation faults and assertion failures in insertdict. gh-142218 : Crash when using multiple capturing groups in gh-140797 And these security fixes: : Remove quadratic behavior in node ID cache clearing () gh-142145 CVE-2025-12084 : Fix a potential virtual memory allocation denial of service in http.server gh-119452 See the full . changelog www.python.org/downloads/release/python-31311/ Python 3.13.11 is the eleventh maintenance release of 3.13. This is an expedited release to fix the following regressions: : Exceptions in in running programs while upgrading Python. gh-142206 : Segmentation faults and assertion failures in insertdict. gh-142218 : Crash when using multiple capturing groups in gh-140797 And these security fixes: : Remove quadratic behavior in node ID cache clearing () gh-142145 CVE-2025-12084 : Fix a potential denial of service in http.client gh-119451 : Fix a potential virtual memory allocation denial of service in http.server gh-119452 See the full . changelog Thanks to all of the many volunteers who help make Python Development and these releases possible! Please consider supporting our efforts by volunteering yourself or through organisation contributions to the . Python Software Foundation Regards from deeper darker Helsinki, Your release team, Hugo van Kemenade Thomas Wouters Ned Deily Steve Dower Å�ukasz Langa

Python 3.13.10 is now available, too, you know!

Posted by Thomas Wouters


Python 3.13.10

The latest version of Python 3.13 is now available! Python 3.13.10 is the tenth maintenance release of 3.13, containing around 300 bugfixes, build improvements and documentation changes since 3.13.9. Full Changelog Thanks to all of the many volunteers who help make Python Development and these releases possible! Please consider supporting our efforts by volunteering yourself or through organization contributions to the Python Software Foundation. Regards from your package managers,

Python 3.14.1 is now available!

Posted by Hugo


This is first maintenance release of Python 3.14

Python 3.14.1 is the first maintenance release of 3.14, containing around 558 bugfixes, build improvements and documentation changes since 3.14.0. Major new features of the 3.14 series, compared to 3.13 Some of the major new features and changes in Python 3.14 are: For more details on the changes to Python 3.14, see . What’s new in Python 3.14 The installer we offer for Windows is being replaced by our new install manager, which can be installed from or from its . See for more information. The JSON file available for download contains the list of all the installable packages available as part of this release, including file URLs and hashes, but is not required to install the latest release. The traditional installer will remain available throughout the 3.14 and 3.15 releases. the Windows Store download page our documentation Seki Takakazu (é–¢ å­�å’Œ; c. March 1642 – December 5, 1708) was a Japanese mathematician and samurai who laid the foundations of Japanese mathematics, later known as (和算, from (“Japanese”) and (“calculation”). Seki was a contemporary of Isaac Newton and Gottfried Leibniz but worked independently. He created a new algebraic system, worked on infinitesimal calculus, and is credited with the discovery of Bernoulli numbers (before Bernoulli’s birth). Seki also using a polygon with 131,072 sides inscribed within a circle, using an acceleration method now known as Aitken’s delta-squared process, which was rediscovered by Alexander Aitken in 1926. calculated Ï€ to 11 decimal places Thanks to all of the many volunteers who help make Python Development and these releases possible! Please consider supporting our efforts by volunteering yourself or through organisation contributions to the . Python Software Foundation Regards from deepest darkest Helsinki, Your release team, Hugo van Kemenade Ned Deily Steve Dower Å�ukasz Langa

Python 3.15.0 alpha 2

Posted by Hugo


Major new features of the 3.15 series, compared to 3.14

https://www.python.org/downloads/release/python-3150a2/ Python 3.15 is still in development. This release, 3.15.0a2, is the second of seven planned alpha releases. Alpha releases are intended to make it easier to test the current state of new features and bug fixes and to test the release process. During the alpha phase, features may be added up until the start of the beta phase (2026-05-05) and, if necessary, may be modified or deleted up until the release candidate phase (2026-07-28). Please keep in mind that this is a preview release and its use is recommended for production environments. Many new features for Python 3.15 are still being planned and written. Among the new major new features and changes so far: The next pre-release of Python 3.15 will be 3.15.0a3, currently scheduled for 2025-12-16. “An hour,” said Ahab, standing rooted in his boat’s stern; and he gazed beyond the whale’s place, towards the dim blue spaces and wide wooing vacancies to leeward. It was only an instant; for again his eyes seemed whirling round in his head as he swept the watery circle. The breeze now freshened; the sea began to swell. “The birds!—the birds!” cried Tashtego. Thanks to all of the many volunteers who help make Python Development and these releases possible! Please consider supporting our efforts by volunteering yourself or through organisation contributions to the . Python Software Foundation Regards from a crisp and sunny subzero Helsinki, Your release team, Hugo van Kemenade Ned Deily Steve Dower Å�ukasz Langa

Latest Django Updates

Latest Programming Updates: Python, Django, PySpark, PyCharm, VS-Code, and More! 🐍

DSF member of the month - Omar Abou Mrad

Posted by Sarah Abderemane •


For January 2026, we welcome Omar Abou Mrad as our DSF member of the month! ⭐ Omar is a helper in Django Discord server, he has helped and continuesly help folks around the world in their Django journey! He is part of the Discord Staff Team. He has been a DSF member since June 2024. You can learn more about Omar by visiting Omar's website and his GitHub Profile. Let’s spend some time getting to know Omar better! Can you tell us a little about yourself? (hobbies, education, etc) Hello! My name is Omar Abou Mrad, a 47-year-old husband to a beautiful wife and father of three teenage boys. I’m from Lebanon (Middle East), have a Computer Science background, and currently work as a Technical Lead on a day-to-day basis. I’m mostly high on life and quite enthusiastic about technology, sports, food, and much more! I love learning new things and I love helping people. Most of my friends, acquaintances, and generally people online know me as Xterm. I have already an idea but where your nickname "Xterm" comes from? xterm is simply the terminal emulator for the X Window System. I first encountered it back in the mid to late 90s when I started using Redhat 2.0 operating system. things weren’t easy to set up back then, and the terminal was where you spent most of your time. Nevertheless, I had to wait months (or was it years?) on end for the nickname "Xterm" to expire on Freenode back in mid 2000s, before I snatched and registered it. Alas, I did! Xterm, c'est moi! >:-] How did you start using Django? We landed on Django (~1.1) fairly early at work, as we wanted to use Python with an ORM while building websites for different clients. The real challenge came when we took on a project responsible for managing operations, traceability, and reporting at a pipe-manufacturing company. By that time, most of the team was already well-versed in Django (~1.6), and we went head-on into building one of the most complicated applications we had done to date, everything from the back office to operators’ devices connected to a Django-powered system. Since then, most of our projects have been built with Django at the core. We love Django. What other framework do you know and if there is anything you would like to have in Django if you had magical powers? I've used a multitude of frameworks professionally before Django, primarily in Java (EE, SeamFramework, ...) and .NET (ASP.NET, ASP.NET MVC) as well as sampling different frameworks for educational purposes. I suppose if I could snap my fingers and get things to exist in django it wouldn't be something new as much as it is official support of: Built-in and opinionated way to deal with hierarchical data in the ORM alongside the supporting API for building and traversing them optimally. Built-in websockets support. Essentially the django-channel experience. Built-in ORM support for common constructs like CTEs, and possibly the ability to transition from raw SQL into a queryset pipeline. But since we're finger-snapping things to existence, it would be awesome if every component of django (core, orm, templates, forms, "all") could be installed separately in such a way that you could cherry pick what you want to install, so we could dismiss those pesky (cough) arguments (cough) about Django being bulky. What projects are you working on now? I'm involved in numerous projects currently at work, most of which are based on Django, but the one I'm working right now consists of doing integrations and synchronizations with SAP HANA for different modules, in different applications. It's quite the challenge, which makes it twice the fun. Which Django libraries are your favorite (core or 3rd party)? django-debug-toolbar hands down. It is an absolute beast of a library and a required tool. It is also the lib that influenced DryORM django-extensions obviously, for its numerous helper commands (shell_plus --print-sql, runserver_plus... and much more!) django-mptt while unmaintained, it remains one of my personal favorites for hierarchical data. It's a true piece of art. I would like to mention that I'm extremely thankful for any and all core and 3rd Party libraries out there! What are the top three things in Django that you like? In no particular order: The ORM; We love it, it fits nicely with the rest of the components. I feel we should not dismiss what sets Django apart from most frameworks; Its defaults, the conventions, and how opinionated it is; If you avoid overriding the defaults that you get, you'll end up with a codebase that anyone can read, understand and maintain easily. (This is quite subjective and some may very well disagree! ^.^) The documentation. Django’s documentation is among the best out there: comprehensive, exhaustive, and incredibly well written. You are helping a lot of folks in Django Discord, what do you think is needed to be a good helper according to you? First and foremost, I want to highlight what an excellent staff team we have on the Official Django Discord. While I don’t feel I hold a candle to what the rest of the team does daily, we complement each other very well. To me, being a good helper means: Having patience. You’ve built skills over many years, and not everyone is at the same stage. People will ask unreasonable or incorrect questions, and sometimes they simply won’t listen. Guiding people toward figuring things out themselves. Giving a direct solution rarely helps in the long run. There are no scoreboards when it comes to helping others. Teaching how to break problems down and reduce noise, especially how to produce the bare minimum code needed to reproduce an issue. Point them to the official documentation first, and teaching them how to find answers. Staying humble. No one knows everything, and you can always learn from your peers. Dry ORM is really appreciated! What motivated you to create the project? Imagine you're having a discussion with a djangonaut friend or colleague about some data modeling, or answering some question or concern they have, or reviewing some ORM code in a repository on github, or helping someone on IRC, Slack, Discord, the forums... or simply you want to do some quick ORM experiment but not disturb your current project. The most common ways people deal with this, is by having a throw-away project that they add models to, generate migrations, open the shell, run the queries they want, reset the db if needed, copy the models and the shell code into some code sharing site, then send the link to the recipient. Not to mention needing to store the code they experiment with in either separate scripts or management commands so they can have them as references for later. I loved what DDT gave me with the queries transparency, I loved experimenting in the shell with shell_plus --print-sql and I needed to share things online. All of this was cumbersome and that’s when DryORM came into existence, simplifying the entire process into a single code snippet. The need grew massively when I became a helper on Official Django Discord and noticed we (Staff) could greatly benefit from having this tool not only to assist others, but share knowledge among ourselves. While I never truly wanted to go public with it, I was encouraged by my peers on Discord to share it and since then, they've been extremely supportive and assisted in its evolution. The unexpected thing however, was for DryORM to be used in the official code tracker, or the forums, or even in Github PRs! Ever since, I've decided to put a lot of focus and effort on having features that can support the django contributors in their quest evolve Django. So here's a shout-out to everyone that use DryORM! I believe you are the main maintainer, do you need help on something? Yes, I am and thank you! I think the application has reached a point where new feature releases will slow down, so it’s entering more of a maintenance phase now, which I can manage. Hopefully soon we'll have the discord bot executing ORM snippet :-] What are your hobbies or what do you do when you’re not working? Oh wow, not working, what's that like! :-] Early mornings are usually reserved for weight training.\ Followed by a long, full workday.\ Then escorting and watching the kids at practice.\ Evenings are spent with my wife.\ Late nights are either light gaming or some tech-related reading and prototyping.\ Weekends look very similar, just with many more kids sports matches! Is there anything else you’d like to say? I want to thank everyone who helped make Django what it is today. If you’re reading this and aren’t yet part of the Discord community, I invite you to join us! You’ll find many like-minded people to discuss your interests with. Whether you’re there to help, get help, or just hang around, it’s a fun place to be. Thank you for doing the interview, Omar!

Django bugfix releases issued: 5.2.10, 6.0.1

Posted by Jacob Walls •


Today we've issued the 5.2.10 and 6.0.1 bugfix releases. The release packages and checksums are available from our downloads page, as well as from the Python Package Index. The PGP key ID used for these releases is Jacob Walls: 131403F4D16D8DC7

DSF member of the month - Clifford Gama

Posted by Sarah Abderemane •


For December 2025, we welcome Clifford Gama as our DSF member of the month! ⭐ Clifford contributed to Django core with more than 5 PRs merged in few months! He is part of the Triage and Review Team. He has been a DSF member since October 2024. You can learn more about Clifford by visiting Clifford's website and his GitHub Profile. Let’s spend some time getting to know Clifford better! Can you tell us a little about yourself (hobbies, education, etc) I'm Clifford. I hold a Bachelor's degree in Mechanical Engineering from the University of Zimbabwe. How did you start using Django? During my first year in college, I was also exploring open online courses on EDx and I came across CS50's introduction to web development. After watching the introductory lecture -- which introduced me to git and GitHub -- I discovered Django's excellent documentation and got started on the polls tutorial. The docs were so comprehensive and helpful I never felt the need to return to CS50. (I generally prefer comprehensive first-hand, written learning material over summaries and videos.) At the time, I had already experimented with flask, but I guess mainly because I didn't know SQL and because flask didn't have an ORM, I never quite picked it up. With Django I felt like I was taking a learning fast-track where I'd learn everything I needed in one go! And that's how I started using Django. What projects are you working on now? At the moment, I’ve been focusing on improving my core skills in preparation for remote work, so I haven’t been starting new projects because of that. That said, I’ve been working on a client project involving generating large, image-heavy PDFs with WeasyPrint, where I’ve been investigating performance bottlenecks and ways to speed up generation time, which was previously around 30 minutes 😱. What are you learning about these days? I’ve been reading Boost Your Git DX by Adam Johnson and learning how to boost my Git and shell developer experience, which has been a great read. Aside from that, inspired by some blogs and talks by Haki Benita, I am also learning about software design and performance. Additionally, I am working on improving my general fluency in Python. What other framework do you know and if there is anything you would like to have in Django if you had magical powers? I am not familiar with any other frameworks, but if I had magic powers I'd add production-grade static-file serving in Django. Django libraries are your favorite (core or 3rd party)? The ORM, Wagtail and Django's admin. What are the top three things in Django that you like? The community The documentation Djangonaut Space and the way new contributors are welcomed How did you start contributing to Django? I started contributing to Django in August last year, which is when I discovered the community, which was a real game changer for me. Python was my first course at university, and I loved it because it was creative and there was no limit to what I could build with it. Whenever I saw a problem in another course that could be solved programmatically, I jumped at it. My proudest project from that time was building an NxN matrix determinant calculator after learning about recursion and spotting the opportunity in an algebra class. After COVID lockdown, I gave programming up for a while. With more time on my hands, I found myself prioritizing programming over core courses, so I took a break. Last year, I returned to it when I faced a problem that I could only solve with Django. My goal was simply to build an app quickly and go back to being a non-programmer, but along the way I thought I found a bug in Django, filed a ticket, and ended up writing a documentation PR. That’s when I really discovered the Django community. What attracted me most was that contributions are held to high standards, but experienced developers are always ready to help you reach them. Contributing was collaborative, pushing everyone to do their best. It was a learning opportunity too good to pass up. How did you join the Triage and Review team? About the time after I contributed my first PR, I started looking at open tickets to find more to work on, and keep on learning. Sometimes a ticket was awaiting triage, in which case the first step was to triage it before assigning it to working on it, and sometimes the ticket I wanted was already taken, in which case I'd look at the PR if available. Reviewing a PR can be a faster way to learn about a particular part of the codebase, because someone has already done most of the investigative part of work, so I reviewed PRs as well. After a while I got an invitation from Sarah Boyce, one of the fellows, to join the team. I didn't even know that I could join before I got the invitation, so I was thrilled! How the work is going so far? It’s been rewarding. I’ve gained familiarity with the Django codebase and real experience collaborating with others, which already exceeds what I expected when I started contributing. One unexpected highlight was forming a friendship through one of the first PRs I reviewed. SiHyun Lee and I are now both part of the triage and review team, and I’m grateful for that connection. What are your hobbies or what do you do when you’re not working? My main hobby is storytelling in a broad sense. In fact, it was a key reason I returned to programming after a long break. I enjoy discovering enduring stories from different cultures, times, and media—ranging from the deeply personal and literary to the distant and philosophical. I recently watched two Japanese classics and found I quite love them. I wrote about one of the films on my blog, and I also get to practice my Japanese, which I’ve been learning on Duolingo for about two years. I also enjoy playing speed chess. Do you have any suggestions for people who would like to start triage and review tickets and PRs? If there’s an issue you care about, or one that touches a part of the codebase you’re familiar with or curious about, jump in. Tickets aren’t always available to work on, but reviews always are, and they’re open to everyone. Reviewing helps PRs move faster, including your own if you have any open, sharpens your understanding of a component, and often clarifies the problem itself. As Simon Charette puts it: “Triaging issues and spending time understanding them is often more valuable than landing code itself as it strengthen our common understanding of the problem and allow us to build a consistent experience accross the diverse interfaces Django provides.” And you can put it on your CV! Is there anything else you’d like to say? I’m grateful to everyone who contributes to making every part of Django what it is. I’m particularly thankful to whoever nominated me to be the DSF Member of the month. I am optimistic about the future of Django. Django 6.1 is already shaping up with new features, and there are new projects like Django Bolt coming up. Happy new year 🎊! Thank you for doing the interview, Clifford and happy new year to the Django community 💚!

Hitting the Home Stretch: Help Us Reach the Django Software Foundation's Year-End Goal!

Posted by Jeff Triplett •


As we wrap up another strong year for the Django community, we wanted to share an update and a thank you. This year, we raised our fundraising goal from $200,000 to $300,000, and we are excited to say we are now over 88% of the way there. That puts us firmly in the home stretch, and a little more support will help us close the gap and reach 100%. So why the higher goal this year? We expanded the Django Fellows program to include a third Fellow. In August, we welcomed Jacob Tyler Walls as our newest Django Fellow. That extra capacity gives the team more flexibility and resilience, whether someone is taking parental leave, time off around holidays, or stepping away briefly for other reasons. It also makes it easier for Fellows to attend more Django events and stay connected with the community, all while keeping the project running smoothly without putting too much pressure on any one person. We are also preparing to raise funds for an executive director role early next year. That work is coming soon, but right now, the priority is finishing this year strong. We want to say a sincere thank you to our existing sponsors and to everyone who has donated so far. Your support directly funds stable Django releases, security work, community programs, and the long-term health of the framework. If you or your organization have end-of-year matching funds or a giving program, this is a great moment to put them to use and help push us past the finish line. If you would like to help us reach that final stretch, you can find all the details on our fundraising page Other ways to support Django: Benevity Workplace Giving Program: If your employer participates, you can make donations to the DSF via payroll deduction. Sponsor Django via GitHub Sponsors: Support Django directly through GitHub's sponsorship platform. Official Merch Store: Buy official t-shirts, accessories, and more to support Django. Thank you for helping support Django and the people who make it possible. We are incredibly grateful for this community and everything you do to keep Django strong.

Introducing the 2026 DSF Board

Posted by Jeff Triplett •


Thank You to Our Outgoing Directors We extend our gratitude to Thibaud Colas and Sarah Abderemane, who are completing their terms on the board. Their contributions shaped the foundation in meaningful ways, and the following highlights only scratch the surface of their work. Thibaud served as President in 2025 and Secretary in 2024. He was instrumental in governance improvements, the Django CNA initiative, election administration, and creating our first annual report. He also led our birthday campaign and helped with the creation of several new working groups this year. His thoughtful leadership helped the board navigate complex decisions. Sarah served as Vice President in 2025 and contributed significantly to our outreach efforts, working group coordination, and membership management. She also served as a point of contact for the Django CNA initiative alongside Thibaud. Both Thibaud and Sarah did too many things to list here. They were amazing ambassadors for the DSF, representing the board at many conferences and events. They will be deeply missed, and we are happy to have their continued membership and guidance in our many working groups. On behalf of the board, thank you both for your commitment to Django and the DSF. The community is better for your service. Thank You to Our 2025 Officers Thank you to Tom Carrick and Jacob Kaplan-Moss for their service as officers in 2025. Tom served as Secretary, keeping our meetings organized and our records in order. Jacob served as Treasurer, providing careful stewardship of the foundation's finances. Their dedication helped guide the DSF through another successful year. Welcome to Our Newly Elected Directors We welcome Priya Pahwa and Ryan Cheley to the board, and congratulate Jacob Kaplan-Moss on his re-election. 2026 DSF Board Officers The board unanimously elected our officers for 2026: President: Jeff Triplett Vice President: Abigail Gbadago Treasurer: Ryan Cheley Secretary: Priya Pahwa Jacob Kaplan-Moss Paolo Melchiorre Tom Carrick I'm honored to serve as President for 2026. The DSF has important work ahead, and I'm looking forward to building on the foundation that previous boards have established. Our monthly board meeting minutes may be found at dsf-minutes, and December's minutes are available. If you have a great idea for the upcoming year or feel something needs our attention, please reach out to us via our Contact the DSF page. We're always open to hearing from you.

Django Code of Conduct Transparency Report 2025

Posted by Dan Ryan •


The Code of Conduct working group received 4 reports and met 12 times in 2025. This transparency report is a brief account of how those reports were handled. This year’s number is lower than previous years in part because of the formation of the Online Community Working Group which handles moderation on our official spaces and has been able to act directly on smaller scale infractions. In some cases we received additional reporting while investigating initial reports, but have not counted those as separate instances. This working group conducts business in several ways. It has online meetings, typically once per month. It also discusses issues in a Slack channel, but most cases are handled in the meetings. The group welcomed three new members this year: Ariane Djeupang, Natalia Bidart, and Priya Pahwa. Natalia was selected by the new Online Communities Working Group as their liaison to the Code of Conduct Working group; Ariane and Priya were elected by the working group. The group also saw Jay Miller step down this year. We all want to thank Jay for his continued role in our community and for all the work he did with the Code of Conduct group. It was the group’s intention to work with a consultant to update our Code of Conduct and processes. We reached out to two consultants to help with that work, but unfortunately we weren’t able to engage either to get that work completed. We hope to progress with that in 2026. In the meantime, we made a few internal process tweaks - creating up a new “ask CoC” channel with key stakeholders to discuss moderation and CoC enforcement, and having our team set up as moderators in GitHub until we find a better model. Two reports from late 2024 carried into this year. Two reports resulted in suspensions from the relevant platforms. Another was shared with local event organizers. Finally, this section provides a brief summary of the kinds of cases that were handled: One case involved repeated violations of the Discourse rules about self promotion. The working group recommended a suspension from the forum. One case involved repeated behavior across several platforms that discouraged participation and created problems for others. The working group recommended a suspension from all relevant platforms and working groups. One case involved an incident at a PSF-sponsored event. The information was passed on to the local organizers.

Online Community Working Group GitHub repo and project

Posted by Online Community Working Group •


The Online Community Working Group has introduced a new GitHub repository designed to manage and track ideas, suggestions, and improvements across Django's various online community platforms. Introducing the Online Community Working Group Repository Primarily inspired by the rollout of the New Features repository, the Online Community Working Group has launched their own version that works in conjunction with the Online Community Working Group Ideas GitHub project to provide a mechanism to gather feedback, suggestions, and ideas from across the online community and track their progression. The primary aim is to help better align Django's presence across multiple online platforms by providing: Centralisation: A community-platform-agnostic place to collect feedback, suggestions, and ideas from members of any of Django's online communities. Visibility: With a variety of platforms in use across the community, some of which require an account before their content can even be read, discussions can happen in what effectively amount to private silos. This centralised repository allows all suggestions and ideas to be viewed by everybody, regardless of their community platform of choice. Consistency: A suggestion for one platform can often be a good idea for another. Issues and ideas raised centrally can be assessed against all platforms to better align Django's online community experience. How to use the Online Community Working Group Repo If you have an idea or a suggestion for any of Django's online community platforms (such as the Forum, Discord, or elsewhere), the process starts by creating an issue in the new repository. You'll be asked to summarise the idea, and answer a couple of short questions regarding which platform it applies to and the rationale behind your idea. The suggestion will be visible on the public board, and people will be able to react to the idea with emoji responses as a quick measure of support, or provide longer-form answers as comments on the issue. The Online Community Working Group will review, triage, and respond to all suggestions, before deciding whether or how they can be implemented across the community. Existing Online Communities Note that we're not asking that you stop using any mechanisms in place within the particular community you're a part of currently—the Discord #suggestions channel is not going away, for example. However, we may ask that a suggestion or idea flagged within a particular platform be raised via this new GitHub repo instead, in order increase its visibility, apply it to multiple communities, or simply better track its resolution. Conclusion The Online Community Working Group was relatively recently set up, with the aim of improving the experience for members of all Django's communities online. This new repository takes a first step in that direction. Check out the repository at django/online-community-working-group on GitHub to learn more and start helping shape Django's truly excellent community presence online.

Django 6.0 released

Posted by Natalia Bidart •


The Django team is happy to announce the release of Django 6.0. The release notes assembles a mosaic of modern tools and thoughtful design. A few highlights are: Template Partials: modularize templates using small, named fragments for cleaner, more maintainable code. (GSoC project by Farhan Ali Raza, mentored by Carlton Gibson) Background Tasks: run code outside the HTTP request-response cycle with a built-in, flexible task framework. (Jake Howard) Content Security Policy (CSP): easily configure and enforce browser-level security policies to protect against content injection. (Rob Hudson) Modernized Email API: compose and send emails with Python's EmailMessage class for a cleaner, Unicode-friendly interface. (Mike Edmunds) You can get Django 6.0 from our downloads page or from the Python Package Index. The PGP key ID used for this release is Natalia Bidart: 2EE82A8D9470983E With the release of Django 6.0, Django 5.2 has reached the end of mainstream support. The final minor bug fix release, 5.2.9, was issued yesterday. Django 5.2 will receive security and data loss fixes until April 2028. All users are encouraged to upgrade before then to continue receiving fixes for security issues. Django 5.1 has reached the end of extended support. The final security release, 5.1.15, was issued on Dec. 2, 2025. All Django 5.1 users are encouraged to upgrade to a supported Django version. See the downloads page for a table of supported versions and the future release schedule.

Django security releases issued: 5.2.9, 5.1.15, and 4.2.27

Posted by Natalia Bidart •


In accordance with our security release policy, the Django team is issuing releases for Django 5.2.9, Django 5.1.15, and Django 4.2.27. These releases address the security issues detailed below. We encourage all users of Django to upgrade as soon as possible. CVE-2025-13372: Potential SQL injection in FilteredRelation column aliases on PostgreSQL FilteredRelation was subject to SQL injection in column aliases, using a suitably crafted dictionary, with dictionary expansion, as the **kwargs passed to QuerySet.annotate() or QuerySet.alias() on PostgreSQL. Thanks to Stackered for the report. This issue has severity "high" according to the Django security policy. CVE-2025-64460: Potential denial-of-service vulnerability in XML serializer text extraction Algorithmic complexity in django.core.serializers.xml_serializer.getInnerText() allowed a remote attacker to cause a potential denial-of-service triggering CPU and memory exhaustion via specially crafted XML input submitted to a service that invokes XML Deserializer. The vulnerability resulted from repeated string concatenation while recursively collecting text nodes, which produced superlinear computation resulting in service degradation or outage. Thanks to Seokchan Yoon (https://ch4n3.kr/) for the report. This issue has severity "moderate" according to the Django security policy. Affected supported versions Django main Django 6.0 (currently at release candidate status) Django 5.2 Django 5.1 Django 4.2 Resolution Patches to resolve the issue have been applied to Django's main, 6.0 (currently at release candidate status), 5.2, 5.1, and 4.2 branches. The patches may be obtained from the following changesets. CVE-2025-13372: Potential SQL injection in FilteredRelation column aliases on PostgreSQL On the main branch On the 6.0 branch On the 5.2 branch On the 5.1 branch On the 4.2 branch CVE-2025-64460: Potential denial-of-service vulnerability in XML serializer text extraction On the main branch On the 6.0 branch On the 5.2 branch On the 5.1 branch On the 4.2 branch The following releases have been issued Django 5.2.9 (download Django 5.2.9 | 5.2.9 checksums) Django 5.1.15 (download Django 5.1.15 | 5.1.15 checksums) Django 4.2.27 (download Django 4.2.27 | 4.2.27 checksums) The PGP key ID used for this release is Natalia Bidart: 2EE82A8D9470983E General notes regarding security reporting As always, we ask that potential security issues be reported via private email to security@djangoproject.com, and not via Django's Trac instance, nor via the Django Forum. Please see our security policies for further information.

2026 DSF Board Election Results

Posted by Thibaud Colas •


The 2026 DSF Board Election has closed, and the following candidates have been elected: Jacob Kaplan-Moss Priya Pahwa Ryan Cheley They will all serve two years for their term. 2026 Board Directors elected for the 2025 DSF Board - Abigail Gbadago, Jeff Triplett, Paolo Melchiorre, Tom Carrick - are continuing with one year left to serve on the board. Therefore, the combined 2026 DSF Board of Directors are: Abigail Gbadago Jacob Kaplan-Moss* Jeff Triplett Paolo Melchiorre Priya Pahwa* Ryan Cheley* Tom Carrick * Elected to a two year term Congratulations to our winners, and a huge thank you to our departing board members Sarah Abderemane and Thibaud Colas. Thank you again to everyone who nominated themselves. Even if you were not successful, you gave our community the chance to make their voices heard in who they wanted to represent them.