| #36964 |
Documentation incorrectly states that persistent connections don't work with runserver
|
Cleanup/optimization
|
Shubh Rai
|
Documentation
|
| #36960 |
Django never uses psycopg 3's optimised timestamptzloader
|
Cleanup/optimization
|
|
Database layer (models, ORM)
|
| #36958 |
Have test client reload logging when logging setting changed
|
Cleanup/optimization
|
SnippyCodes
|
Testing framework
|
| #36956 |
import_string logic for AttributeError is too broad, can be improved under Python 3.10+
|
Cleanup/optimization
|
Glenn Matthews
|
Utilities
|
| #36953 |
Refactor Django mail tests
|
Cleanup/optimization
|
Mike Edmunds
|
Core (Mail)
|
| #36949 |
Missing label on each <select> in a fieldset
|
Bug
|
Eliana Rosselli
|
Forms
|
| #36947 |
Changing a field's db_comment unnecessarily alters column type
|
Bug
|
Clifford Gama
|
Migrations
|
| #36945 |
.values() and .order_by() miss FilteredRelation when resolving aliases shadowing relationship traversals
|
Bug
|
Sarah Boyce
|
Database layer (models, ORM)
|
| #36943 |
Autoreloader hides exceptions from urlconf module
|
Cleanup/optimization
|
Varun Kasyap Pentamaraju
|
Utilities
|
| #36940 |
Improve ASGI script prefix path_info handling
|
Bug
|
Khadyot Takale
|
HTTP handling
|
| #36939 |
Connecting the same signal multiple times with weak=True allocates new memory that is never deallocated
|
Bug
|
Juho Hautala
|
Core (Other)
|
| #36938 |
Unioning an ordered queryset fails on Oracle unless a limit is taken
|
Bug
|
|
Database layer (models, ORM)
|
| #36933 |
Yes/no admin icons hard to differentiate with dichromatic viewing deficiency
|
Cleanup/optimization
|
Paul K. Gerke
|
contrib.admin
|
| #36930 |
Using a custom ModelChoices (not IntegerChoices or TextChoices) member as the default value of a model field doesn't select the default value in form's select
|
Bug
|
Antoine Humbert
|
Database layer (models, ORM)
|
| #36927 |
Optimize Field.deconstruct()
|
Cleanup/optimization
|
Adam Johnson
|
Database layer (models, ORM)
|
| #36926 |
Admin list_display does not use boolean icons when traversing relations
|
Cleanup/optimization
|
Huwaiza
|
contrib.admin
|
| #36925 |
InlineModelAdmin docs do not mention view_on_site as a shared feature with ModelAdmin
|
Cleanup/optimization
|
James Aylett
|
Documentation
|
| #36924 |
FieldError when using selected_related on ForeignObject together with defer
|
Bug
|
Vishy Algo
|
Database layer (models, ORM)
|
| #36919 |
Allow `TaskResult` (and `Task`) to be pickled
|
Cleanup/optimization
|
Varun Kasyap Pentamaraju
|
Tasks
|
| #36916 |
Add support for streaming with TaskGroups
|
New feature
|
Thomas Grainger
|
HTTP handling
|
| #36913 |
Optimise ChoiceField / MultipleChoiceField handling of duplicate submissions
|
Cleanup/optimization
|
Sarah Boyce
|
Forms
|
| #36912 |
Q.create() doesn't validate connectors as Q.__init__() does
|
Cleanup/optimization
|
Sarah Boyce
|
Database layer (models, ORM)
|
| #36909 |
Avoid using context.request directly in querystring template tag
|
Bug
|
Yogya Chugh
|
Template system
|
| #36907 |
Docs for email `fail_silently` are incorrect and inconsistent
|
Cleanup/optimization
|
Ahmed Asar
|
Documentation
|
| #36906 |
Oracle guard for coalescing text & varchar doesn't fathom JSONField
|
Bug
|
Sarah Boyce
|
Database layer (models, ORM)
|
| #36905 |
Remove safe parameter from JsonResponse
|
Cleanup/optimization
|
Timothy Schilling
|
HTTP handling
|
| #36904 |
Form Field label – improve documentation to explain how to omit labels
|
Cleanup/optimization
|
Amar
|
Documentation
|
| #36901 |
Centralize mitigations against timing attacks targeting user enumeration
|
Cleanup/optimization
|
Sarah Boyce
|
contrib.auth
|
| #36900 |
startproject and startapp do not sanitize filename from Content-Disposition header
|
Bug
|
ar3ph
|
Core (Management commands)
|
| #36897 |
Improve repercent_broken_unicode() performance
|
Cleanup/optimization
|
beestarkdev
|
Utilities
|
| #36894 |
Email fail_silently, auth_user, auth_password are ignored when connection param provided
|
Cleanup/optimization
|
Praful Gulani
|
Core (Mail)
|
| #36892 |
Lazy Tuples in field Choices generate repeated migrations with no changes
|
Bug
|
Praful Gulani
|
Migrations
|
| #36888 |
acreate method doesn't call asave
|
Bug
|
Mateusz Szymanowski
|
Database layer (models, ORM)
|
| #36885 |
Long verbose names in the admin filter sidebar cause main area to reduce to unusable width
|
Bug
|
Harsh007
|
contrib.admin
|
| #36884 |
Translation of admin log messages fails due to case inconsistency in field names
|
Bug
|
Thrishagowdabl
|
contrib.admin
|
| #36882 |
Add debug instrumentation for callproc() in CursorDebugWrapper
|
New feature
|
akshaytheflash
|
Database layer (models, ORM)
|
| #36881 |
Documented list of supported fields for ModelAdmin.search_fields is inaccurate
|
Bug
|
Amar
|
Documentation
|
| #36880 |
Postgres hash exclusion constraints are not considered totally unique
|
Bug
|
Karthik
|
Database layer (models, ORM)
|
| #36877 |
Order of update operations behaves differently on MySQL compared to other databases
|
Cleanup/optimization
|
Samir Shah
|
Documentation
|
| #36874 |
Speed up mask/unmask cipher secret functions
|
Cleanup/optimization
|
Tim Lansen
|
CSRF
|
| #36864 |
Automatic shell imports cannot reliably handle submodules
|
Bug
|
Jacob Walls
|
Core (Management commands)
|
| #36863 |
Under WSGI, multiple calls to asgiref.sync.async_to_sync within the same request do not share the same event loop.
|
Cleanup/optimization
|
Vishy Algo
|
HTTP handling
|
| #36862 |
Clarify RemoteUserMiddleware usage and deployment requirements under ASGI
|
Cleanup/optimization
|
Kundan Yadav
|
Documentation
|
| #36859 |
SimpleTestCase.assertContains can't be called multiple times on a streaming response
|
New feature
|
Baptiste Mispelon
|
Testing framework
|
| #36849 |
Moved GEOS Error Messages to Exceptions
|
Cleanup/optimization
|
David Smith
|
GIS
|
| #36846 |
ContentType.get_object_for_this_type() raises inappropriate exception type for removed models
|
Cleanup/optimization
|
Nilesh Pahari
|
contrib.contenttypes
|
| #36835 |
Add all public API classes to django.template.__all__
|
Cleanup/optimization
|
Praful Gulani
|
Template system
|
| #36830 |
Store the cache alias on the cache backend instance
|
New feature
|
amirreza
|
Core (Cache system)
|
| #36828 |
Evaluate using <fieldset> on ClearableFileInput
|
Cleanup/optimization
|
Youngkwang Yang
|
Forms
|
| #36825 |
CSP nonces are not applied in the Django admin
|
New feature
|
Kundan Yadav
|
contrib.admin
|
| #36816 |
Allow **kwargs in @task decorator to support custom Task subclasses
|
New feature
|
Nilesh Pahari
|
Tasks
|
| #36813 |
Convert system checks for max_length and max_digits to __init__() checks.
|
Cleanup/optimization
|
Mehraz Hossain Rumman
|
Database layer (models, ORM)
|
| #36809 |
Allow EmailValidator to customize error messages depending on the part that failed validation
|
Cleanup/optimization
|
jaffar Khan
|
Core (Other)
|
| #36803 |
Make AlterField a no-op when ManyToManyField's through.db_table remains the same between renames.
|
Cleanup/optimization
|
Clifford Gama
|
Migrations
|
| #36799 |
Create a how-to on how to test a pre-release version of Django
|
Cleanup/optimization
|
Parvez Khan
|
Documentation
|
| #36795 |
Always quote user-provided aliases
|
Cleanup/optimization
|
Simon Charette
|
Database layer (models, ORM)
|
| #36784 |
Add CSP support to Django's script object and media objects
|
New feature
|
Johannes Maron
|
Forms
|
| #36779 |
DeleteModel can lead to missing FK constraints
|
Bug
|
Vishy Algo
|
Migrations
|
| #36775 |
Raise ImproperlyConfigured when Feed.link is missing instead of failing with AttributeError
|
Cleanup/optimization
|
yureiblack
|
contrib.syndication
|
| #36770 |
SQLite threading tests are flaky when parallel test suite runs in forkserver mode
|
Cleanup/optimization
|
Kundan Yadav
|
Testing framework
|
| #36767 |
Allow overriding redirect URL max length in `HttpResponseRedirectBase`
|
Cleanup/optimization
|
Varun Kasyap Pentamaraju
|
HTTP handling
|
| #36754 |
Broken migration created when GeneratedField's expression references a foreign key that has been deferred to another initial migration file
|
Bug
|
Ou7law007
|
Migrations
|
| #36732 |
Sitemaps with i18n=True fetch the entire queryset of items before paginating
|
Cleanup/optimization
|
Augusto Pontes
|
contrib.sitemaps
|
| #36729 |
Pre-compile regular expressions as standard
|
Cleanup/optimization
|
Jake Howard
|
Utilities
|
| #36727 |
Deprecate get_placeholder in favor of get_placeholder_sql
|
Cleanup/optimization
|
Simon Charette
|
Database layer (models, ORM)
|
| #36700 |
ASGIHandler creates reference cycles that require a gc pass to free
|
Cleanup/optimization
|
farthestmage
|
HTTP handling
|
| #36694 |
PostGIS backend silently ignores most Index options when targeting a single GeometryField (expressions, condition, include, opclasses)
|
Bug
|
Clifford Gama
|
GIS
|
| #36682 |
RecursionError when traversing several reverse relations with FilteredRelation
|
Bug
|
Augusto Pontes
|
Database layer (models, ORM)
|
| #36679 |
Basque locale date format does not handle conditional suffixes (date declination)
|
Bug
|
uloidi
|
Internationalization
|
| #36670 |
Admin filter_vertical widget selector chooser has incorrect background color
|
Bug
|
Antoliny
|
contrib.admin
|
| #36667 |
How to Request PR Reviews Without Overstepping
|
Cleanup/optimization
|
JyothsnaMS
|
Documentation
|
| #36664 |
Python 3.15 compatibility.
|
New feature
|
Mariusz Felisiak
|
Core (Other)
|
| #36662 |
django.contrib.messages Storage creates circular references with Request objects
|
Cleanup/optimization
|
Augusto Pontes
|
contrib.messages
|
| #36657 |
Make advanced ORM functionality more discoverable
|
New feature
|
Segni Mekonnen
|
Documentation
|
| #36653 |
FORCE_SCRIPT_NAME is not respected for static URLs
|
Bug
|
Xingzhe Li
|
contrib.staticfiles
|
| #36649 |
Add `|=` update operator support to `MultiValueDict` and `QueryDict`.
|
New feature
|
Adam Johnson
|
HTTP handling
|
| #36642 |
makemessages provides invalid locale suggestions when attempting to format the locale string
|
Bug
|
Stephen kihuni
|
Internationalization
|
| #36640 |
Error messages should use aria-errormessage
|
Cleanup/optimization
|
|
Forms
|
| #36632 |
AlterIndexTogether in historical migration drops overlapping indices
|
Bug
|
nzioker
|
Database layer (models, ORM)
|
| #36630 |
Semantic structure and accessibility improvements for the admin navigation sidebar.
|
Bug
|
Antoliny
|
contrib.admin
|
| #36629 |
In the admin m2m widget filter_vertical, the “choose all” button is missing.
|
Bug
|
Nilesh Pahari
|
contrib.admin
|
| #36621 |
Button position issue when using admin filter_vertical.
|
Bug
|
Antoliny
|
contrib.admin
|
| #36608 |
Clarify dumpdata behavior and docs for custom serializers with internal_use_only flag
|
Cleanup/optimization
|
ksauder
|
Core (Management commands)
|
| #36600 |
Misleading wording in description of dispatch_uid
|
Bug
|
Amar
|
Documentation
|
| #36593 |
Deprecate select_related() with no arguments
|
Cleanup/optimization
|
Adam Johnson
|
Database layer (models, ORM)
|
| #36588 |
Harden `django.utils.archive` against decompression bombs
|
Cleanup/optimization
|
Marcelo Elizeche Landó
|
Utilities
|
| #36582 |
Accessibility improvement for required field labels for inline forms in the admin.
|
Cleanup/optimization
|
Antoliny
|
contrib.admin
|
| #36579 |
yesno filter broken for translations that do not respect the ascii comma
|
Cleanup/optimization
|
Klaas van Schelven
|
Template system
|
| #36575 |
Document using a link for LogoutView
|
Cleanup/optimization
|
Abhimanyu Singh Negi
|
Documentation
|
| #36571 |
Deprecated usage of BINARY expr in MySQL lookups
|
Cleanup/optimization
|
|
Database layer (models, ORM)
|
| #36554 |
When the object __str__ is long, the object title is truncated in TabularInline.
|
Bug
|
Antoliny
|
contrib.admin
|
| #36553 |
Improve the semantic structure of admin widgets.
|
Cleanup/optimization
|
Antoliny
|
contrib.admin
|
| #36550 |
AssertionError raised when bulk creation model with primary key set via pre_save (e.g. auto_now_add) on databases with can_return_columns_from_insert
|
Bug
|
Abhimanyu Singh Negi
|
Database layer (models, ORM)
|
| #36546 |
Deprecate django.utils.crypto.constant_time_compare()
|
Cleanup/optimization
|
Pravin
|
Utilities
|
| #36542 |
AdminSite views (such as login) leak sensitive POST data
|
Bug
|
Ankan Giri
|
contrib.admin
|
| #36539 |
Label for related fields should use related model verbose_name attribute for field
|
Cleanup/optimization
|
Leandro de Souza
|
contrib.admin
|
| #36533 |
manage.py startapp <name> <directory> fails to create new app
|
Bug
|
jefferies917
|
Core (Management commands)
|
| #36529 |
Improvement of the filter and model selection sidebar on the admin changelist page for mobile screens.
|
New feature
|
Antoliny
|
contrib.admin
|
| #36523 |
Implement helper method to find module path of value
|
Cleanup/optimization
|
shrutisachan08
|
Utilities
|
| #36510 |
Header text for pagination contains title of table while it's the only pagination on the page.
|
Cleanup/optimization
|
SnippyCodes
|
contrib.admin
|