Some tickets
Ready for 1.2 ...
1.2 review ...
- #17461
- Document presumed order of foreign keys on intermediate M2M model
- #22997
- Migration fails when removing explicit primary key
- #24529
- Allow double squashing of migrations
- #25409
- Allow url and groups of urls to be easily tagged and selected
- #28236
- Integrate dj-database-url into Django
- #28646
- Migration calls "CREATE INDEX" when one already exists when 'unique' field attribute is added (PostgreSQL)
- #32519
- Add support for using key and path transforms in update() for JSONFields.
- #32577
- Add support for `UUIDAutoField` `DEFAULT_AUTO_FIELD`
- #32819
- Fields’ help text and errors should be associated with input
- #34555
- ModelBase metaclass implementation prevents addition of model fields via __init_subclass__
- #34699
- Filtering on annotated TruncSecond expression gives unexpected result.
- #35718
- Add JSONArray Func
- #35813
- Makemigrations not properly tracking changes to unmanaged models
- #35827
- Model subclass with __init_subclass__ doesn't get correct _meta instance
- #35829
- Update/Fix Font Awesome icons
- #35859
- Add DEP14 Tasks interface
- #35886
- Move object-based script media assets to the public API
- #35891
- Confirm support for GDAL 3.10
- #35894
- Move away from the term "patch" to refer to a contribution/pull request in the contributor documentation
- #35940
- SelectFilter choose/remove buttons missing keyboard-friendly state management
- #35941
- Add composite GenericForeignKey support
- #35959
- Admin "Change password" Button Visible with Only "Can view user" Permission
- #35961
- Support PEP639-style license indicator in pyproject.yaml
- #35967
- TransactionTestCase.serialized_rollback reads from real database rather than test when using read replica for a model instance created in a migration with a ManyToManyField
- #35974
- Use router.allow_relation in RelatedManager.add and GenericRelatedObjectManager.add
- #35980
- Make Django release artifacts PEP 625 compliant
- #35998
- Add caching to urlize
- #35999
- Remove references of the #django IRC channel as a place to get help/place to promote things
- #36010
- compilemessages reports errors only once
- #36013
- Inconsistent handling of IDNs in urlize and AdminURLFieldWidget
- #36023
- Update content_disposition_header to handle control chars.
Bugs left in 1.2 ...
- #897
- Bi-Directional ManyToMany in Admin
- #1028
- High-level feed framework should make more feed elements available
- #1688
- Permissions don't get translated in admin interface
- #2137
- Add drag and drop ordering for inlines to set order_with_respect_to in admin interface
- #2259
- Primary keys should be readonly by default in admin
- #2361
- QuerySet.filter(m2mfield__isnull=False) may return duplicates
- #2539
- Custom tags and filters can be restricted by namespace
- #2750
- ManyToManyField ignores 'default' option
- #2901
- Enable admin log display to be restricted to a specific site
- #3254
- full text search support for postgres, oracle and mssql
- #3461
- DatabaseWrapper should pass through args and kwargs to underlying database adapter
- #3569
- extend Atom feed support for other fields
- #4140
- oracle: manage.py syncdb fails with ORA-06552 when a fieldname is a keyword
- #4147
- Add some i18n hooks to DateFormat
- #4848
- Allow inline fields to be "mixed in" with the models' own fields
- #5349
- Shouldn't the item_enclosure_url automatically prefixed with the current site?
- #5372
- Cache inline ForeignKey options
- #5518
- Capitalized verbose names for models
- #5745
- MySQL Collations/Charsets and Engines
- #5793
- Allow custom attributes in Meta classes
- #5797
- decorator_from_middleware can cause middleware hooks to run out of correct order.
- #5815
- Adds per-view cache refreshing (clearing)
- #5865
- cycle template tag should accept a single argument
- #5899
- Allow admin fieldsets to be collapsible but not initially collapsed
- #6148
- Add generic support for database schemas
- #6343
- % symbols not escaped in db_column column names when preparing queries
- #6363
- Login page is redisplayed without any message if AdminSite.has_permission() returns False
- #6376
- Allow using custom gettext domains
- #6396
- Remove customization-unfriendly admin template tags
- #6489
- Add selected and enabled_from for JS calendar
- #6870
- pre_delete should be sent before collecting ForeignKey relationships
- #6989
- Inability to define DNS_NAME in django.core.mail results in e-mail messages being rejected or marked as spam
- #7018
- Make ModelForm multiple inheritance possible
- #7556
- inspectdb fails in MySql if a table references a table outside the current schema
- #7623
- Multi-table inheritance: Add the ability create child instance from existing parent
- #7835
- Provide the ability for model definitions that are only availably during testing
- #8122
- Better way of testing for cookies
- #8165
- When using can_order=True on formset, ordered_forms is not avaible when formset.is_valid() is false
- #8264
- Replace get_absolute_url with more sane alternative
- #8408
- Add a new meta option: don't do count(*) in admin
- #8472
- Add "Recent Actions" panel to app_index template
- #8851
- Add a default option to list_filter in the admin interface
- #8912
- File storage and save/commit=False
- #8972
- Add ability to delete selected vector features within the Geodjango/OpenLayers Admin map interface
- #9025
- Nested Inline Support in Admin
- #9093
- Extend inclusion tag syntax to allow custom templates
- #9107
- URL arguments to set values of fields in admin don't work for inlines
- #9173
- Conditional content of template blocks
- #9198
- Make the {% include %} strip a trailing newline
- #9318
- "Virtual" behaviour for signal dispatcher and model inheritance
- #9357
- Unable to subclass form Media class
- #9363
- Add a traceback to each query in CursorDebugWrapper
- #9373
- "This field is required" error even on empty inlines formsets in the admin model page, when hiding a choice field of a custom form.
- #9388
- Made month and year selectable in admin calender widget.
- #9435
- Check out behaviour of wsgi backend with PATH_INFO being an empty string
- #9631
- FieldFile assumes efficient Storage.size
- #9682
- icontains can be case-sensitive on MySQL
- #9739
- Admin does not correctly prefill DataTimeField from URL
- #9757
- Make IfNode a baseclass for other if nodes to subclass
- #9976
- Generic Foreign Keys should have a nice widget(ala raw_id)
- #10060
- Multiple table annotation failure
- #10088
- for_share() as well as for_update() addition to Model.QuerySet
- #10191
- Fix / Add support for radiobuttons after adding item with popup in Django Admin
- #10227
- Support a related_default on OneToOne fields
- #10244
- FileFields can't be set to NULL in the db
- #10305
- Add a form instantiation hook for contrib.admin add/change views
- #10403
- provide declarative syntax to define FormSets - including ModelFormSet and InlineFormSet
- #10449
- HTML accents not escaped out when using forms
- #10554
- Response.set_cookie should allow setting two cookies of the same name.
- #10686
- Add class name interpolation in Meta.permissions codenames
- #10761
- ModelAdmin.queryset() is missing a mechanism for specifying different querysets for changelist and change object views
- #10850
- Impossible to stop a large file upload mid-stream
- #10874
- ModelFormMetaclass does not provide easy way of extending
- #10919
- Add an option to disable display of related items on admin's delete confirmation page (to prevent large memory usage on complex objects)
- #10944
- Site app should be able to make absolute URLs.
- #10961
- Allow users to override forward and reverse relationships on proxy models with !ForeignKey fields.
- #10964
- Admin for group doesn't allow to easily add users to the group
- #11265
- ForeignKey/OneToOneField should support user-defined id attribute name
- #11294
- Django administration Model list always shows Decimal with decimal places
- #11383
- Admin action 'Delete selected' check only global model delete permission
- #11479
- cache_page and last_modified decorators can't be used together
- #11505
- Django's TestCase should reset the cache
- #11506
- session.flush should not delete the old session
- #11541
- F() expressions don't allow assignment of Foreign Key values on instances
- #11561
- raw_id_fields requires that the user has change permissions on the model class that is being linked to
- #11580
- Unable to query TextField against oracle nclob 10Gr4
- #11593
- Incomplete support for app-level testing
- #11651
- Allow list_editable form fields to be customized separately from changeform fields.
- #11688
- verbose_name should allow dynamical translation based on a number
- #11760
- Placeholder for through value in ManyToManyField of abstract class
- #12007
- djangoadmin loaddata gives odd error if it runs out of memory
- #12044
- Add extra_context to admin action delete_selected
- #12089
- test client fails to collect sub-contexts
- #12090
- Show admin actions on the edit pages too
- #12096
- Model fields are not accessible as attributes of the model class
- #12134
- contrib.admin.RelatedFieldWidgetWrapper.__deepcopy__() should copy() the widget attrs
- #12157
- FileSystemStorage does file I/O inefficiently, despite providing options to permit larger blocksizes
- #12203
- ManyToManyField with through model can't be used in admin
- #12221
- Allow custom management commands to define bash completion arguments
- #12227
- PREPEND_WWW breaks the test client
- #12238
- ModelAdmin ignores dynamic fields of ModelForm
- #12246
- contrib.admin's JavaScript functions should be namespaced
- #12264
- calendar.js depends on jsi18n but date widgets using it do not specify as required media
- #12382
- Deleting an inline can delete the whole inlined model instance recursively
- #12416
- Improve KML Serialization
- #12498
- Add multi-field validators
- #12509
- Feature: Selector Inlines
- #12529
- manage.py syncdb doesn't check tables by using mangled names with Oracle backend
- #12627
- If all fields are readonly or editable=False, their ModelForm is always valid and can raise exceptions
- #12651
- AutoSlugField, that can recreate unique slugs during saving.
- #12697
- Prevent deletion of some rows in a formset
- #12733
- Added support for Extent aggregate on mysql databases
- #12772
- Allow loading template tags by fully qualified python module path
- #12938
- not possible to validate a many-to-many at the model
- #13033
- MySQL full text search in admin
- #13091
- admin list_editable with unique_together raises Integrity Error
- #13127
- Template tag "perms" doesn't support object level permission checking
- #13145
- Allow the prefix used for empty_form on FormSets to be customized
- #13224
- style of m2m readonly_fields in admin change_form
- #13240
- Modify RelatedManager and ManyRelatedManager add() and remove() to accept QuerySets and iterables
- #13291
- Allow `color_style()` and `parse_color_setting()` to be used with custom colour palettes.
- #13313
- Custom Default Manager with extra __init__ arguments fails if model is used in a ManyToManyField
- #13314
- "FileField" validation does not account for "upload_to" when counting characters
- #13327
- FileField/ImageField accessor methods throw unnecessary exceptions when they are blank or null.
- #13339
- Date(Time)Field.to_python() fails to parse localized month names
- #13369
- Should be easier to add a MultipleChoice for reverse relationships on ModelAdmins
- #13376
- Messages should have an "expire" flag
- #13528
- db_table truncation is applied based on the properties of the default database
- #13539
- The delete confirmation page does not check for object-level permissions when building the related list
- #13559
- Need a contextprocessor for current site
- #13564
- Provide class attributes for form fields
- #13659
- Make the request accessible in callables used in ModelAdmin.list_display
- #13664
- Enable admin permission checks from outside the ModelAdmin
- #13677
- ModelFormSet may query wrong database backend
- #13680
- loaddata should issue a warning when attempting to load data using an unknown serialization format even when it is unspecified
- #13757
- Signal inconsistency between auto_created and manually defined intermediate models for m2m fields
- #13841
- Allow context processors access to current version of context
- #13871
- contrib.admin:list_editable - ForeignKey performance is O(m*n)
- #13878
- Formset validation refactoring and valid_forms property of fieldsets
- #13879
- method_decorator doesn't supports decorators with arguments
- #13883
- SelectBox.js with grouping (optgroup elements)
- #13910
- Add generator version of Template.render(Context)
- #13917
- Multiple popup window feature of related objects popup through id_to_windowname
- #13960
- abstract file upload/download handling
- #14035
- Cannot access POST after request.encoding was set to a custom value
- #14039
- FileField special-casing breaks MultiValueField including a FileField
- #14063
- Validating form file fields is hard
- #14087
- django.core.management.get_commands only sees commands in the last package of a namespace package
- #14129
- Slovenian translation plural-forms
- #14174
- Support for string interpolation in lazy translation
- #14287
- TEST_MIRROR is not respected in routers
- #14336
- list_display should be able to contain sortable references to annotated fields
- #14365
- Make template-rendering signals available also in DEBUG mode
- #14645
- Exclude query with multiple conditions for the same multi-value relation not correct
- #14688
- BaseInlineFormSet does not support "auto_id"
- #14705
- Model Field Order not influenced by MRO of superclasses
- #14760
- Admin inlines with file/image field fails to save_as
- #14832
- Impossible to create inline objects if form validates but is unchanged
- #14844
- i18n blocktrans tag pluralization feature limited by gettext constraints and shared local tag context
- #14904
- TextField with unique (or in unique_together) constraint breaks for large inputs in Postgres
- #14974
- Add support for translation backends other than gettext
- #15015
- Mixing read-only with ability to add new instances using a FormSet
- #15049
- Using annotation before and after filter gives wrong results
- #15130
- Model.validate_unique method doesn't take in account multi-db
- #15156
- Ordinal numbers in English and in other locales
- #15179
- django.test.client.Client.login fake HttpRequest is not run through middlewares
- #15220
- replace SelectFilter2.js with a jQuery plugin
- #15231
- Admin DateTimeShortcuts + Inlines performance
- #15559
- Distinct queries will cause errors with some custom model fields
- #15574
- IndexError: list index out of range caused by inline formsets
- #15602
- Using get_readonly_fields and StackedInline/TabularInline admin objects doesn't allow creating new objects, immutible existing objects
- #15610
- Generic Foreign Keys break when used with multi-db.
- #15725
- No easy way to get default model values into a ModelForm for validation
- #15727
- Add support for Content-Security-Policy (CSP) to core
- #15759
- list_editable should respect per-object permissions
- #15817
- ImageField having [width|height]_field set sytematically compute the image dimensions in ModelForm validation process
- #15855
- cache_page decorator bypasses any Vary headers set in middleware
- #15879
- multipart/form-data filename="" not handled as file
- #15881
- FilteredSelectMultiple does not respect order
- #15894
- SITE_CACHE does not invalidate in multiprocess environments
- #16022
- Cyclic reference in FieldFile causes memory usage to grow considerably
- #16149
- Allow disabling choices in a <select>
- #16260
- Ability to change dismissRelatedLookupPopup on custom callback function
- #16306
- Form field documentation documents optional keyword arguments as field attributes.
- #16328
- FilePathField should include blank option even when required=True
- #16376
- Support for database links
- #16429
- Allow refresh of path choices for FilePathField
- #16465
- Admin history view should also show history of super-object(s)
- #16505
- Consider a different interface for get_next_by_FOO and get_previous_by_FOO
- #16508
- Provide real support for virtual fields
- #16521
- Provide keyboard shortcuts in admin
- #16549
- In Django models, save/delete preconditions would help in handling optimistic concurrency control problems
- #16603
- Unnecessary join when using a reverse foreign-key filter and reverse foreign-key aggregate call
- #16614
- Support server-side cursors for queryset iteration in database backends
- #16674
- Django's WSGI Handler should report exceptions to the start_response() callback
- #16730
- serializing forms which use FilteredSelectMultiple
- #16732
- Unable to have abstract model with unique_together
- #16752
- Multi-db without a 'default' database
- #16774
- Backtracking URL resolver
- #16915
- contrib.admin should use a variable to select base_site template
- #16920
- Models with GenericRelation are unnecessarily validated for clashes in reverse manager accessor
- #17018
- LayerMapping - entries skipped when ForeignKey field has related model missing and null = True
- #17096
- Strengthen the makemessages command's safe-guarding of po files
- #17193
- Send templated email.
- #17208
- Dogfood class-based views in contrib.admin
- #17224
- determine and document the use of default option in context of FileField
- #17235
- Multipartparser shouldn't leave request.POST/request.FILES mutable
- #17337
- [nonrel] Support for non-integer AutoFields
- #17345
- Allow ordering override on ManyToManyField
- #17508
- DateDetailView should accept less specific dates, ie Year/Month or just Year
- #17522
- ModelAdmin.ordering validation too strict
- #17631
- edge case: django.test.client should handle fields and files with the same name
- #17659
- django_admin_log searches are slow
- #17664
- {% if %} template tag silences exceptions inconsistently
- #17688
- No m2m_changed signal sent to when referenced object is deleted
- #17726
- Admin's Recent Actions broken for multiple admin site instances with unique registered models
- #17753
- Internationalizing URL Patterns Redirect should be 404
- #17814
- Add a way to override related_name on models that you can't edit
- #17834
- ETag generated from empty content can break http caching
- #17854
- Add database-specific checks for the maximum supported values of DecimalField max_digits, decimal_places
- #17881
- Implement BaseModelAdmin.get_raw_id_fields, similar to get_readonly_fields
- #17975
- Make sessions more robust
- #18098
- order_with_respect_to should construct set_RELATED_order() method name from related_name
- #18148
- django.contrib.sites.managers.CurrentSiteManager should be able to span multiple models
- #18150
- Uploading a file ending with a backslash fails
- #18243
- Management shell should make it easy to force LOGGING_CONFIG=None
- #18283
- FileField should not reuse FieldFiles
- #18296
- Make creating apps inside project folder more intuitive with manage.py startapp command
- #18357
- BaseGenericInlineFormSet in Django Admin does not set generic foreign key fields when constructing form
- #18427
- limit_choices_to won't limit correctly
- #18543
- Non image file can be saved to ImageField
- #18597
- `BaseInlineFormSet` should attempt to get it's queryset from it's instance related manager before falling back to it's model's default manager
- #18603
- Adding support for PEP 302 importers
- #18615
- Allow retrieval of the signature age using the signing API
- #18654
- Support for model properties that are not fields in LayerMapping
- #18655
- Media files should be served using file storage API
- #18665
- Allow registering custom admin views with the admin's index
- #18736
- Flexible filters for django admin
- #18844
- Allow Oracle DatabaseWrapper to support session options extra kwargs as settings.DATABASE_OPTIONS
- #18855
- persist a socket across reloads of the dev server
- #18879
- FilteredSelectMultiple loses data
- #18887
- LineString array method (property) returns different data type without and with NumPy installed
- #18914
- Add a way to add items to the admin's object tools using Python code
- #19149
- Generic Relation not cascading with Multi table inheritance.
- #19201
- session data should always contain the expiry date
- #19221
- Check that cache keys are string
- #19255
- BaseGenericInlineFormSet runs validation methods before linking form instances to their related object
- #19303
- ModelAdmin.formfield_overrides is ignored for fields with choices
- #19396
- Allow customized ModelState classes
- #19515
- Increase the max_length of Redirect.old_path/new_path
- #19527
- Allow QuerySet.bulk_create() to set the primary key of its objects
- #19544
- IntegrityError during ManyToMany add() on Oracle or for user-defined through relationships.
- #19649
- Cookie message storage does not set Vary: Cookie
- #19710
- ModelAdmin exclude behaviour not consistent with ModelAdmin behaviour
- #19755
- Incremental filter
- #19806
- django_bash_completion clobbers upstream completion of ‘python’
- #19948
- Improve connection reset under PostgreSQL
- #20024
- QuerySet.exclude() does not work with lists containing a 'None' element.
- #20034
- Upload handlers provide no way to retrieve previously parsed POST variables
- #20057
- Reverse related manager should be a manager INSTANCE, not CLASS
- #20127
- Unify subquery generation in the ORM
- #20151
- get_deleted_objects does not check permissions on proxy model objects without ModelAdmin
- #20226
- Django problematic when Oracle when column/table names are mixed case
- #20313
- AnonymousUser should follow custom User implementation
- #20372
- using registration/logged_out.html template overrides admin logout
- #20434
- Have a template tag grammar instead of handling token/parser for every tag, and make it possible to introspect the grammar.
- #20481
- Provide official hooks for execution profiling
- #20516
- Allow use of prepared statements
- #20535
- Unnecessary join created for intermediate table between two M2M tables
- #20551
- Duplicate fixture labels
- #20589
- contrib.auth.handlers.modwsgi fails for some backends
- #20605
- Allow extending the default auth permissions
- #20671
- Custom backend get_user function is assumed to search by primary key
- #20712
- staticfiles and serving post-processed files through development server
- #20749
- Add validation for type of Field.choices arguments
- #20752
- Error signals are not reliable, especially when dealing with database errors
- #20757
- A more Object-Oriented URLResolver
- #20824
- User Auth: A Complete Solution for Email Login Handling
- #20915
- Remove django.test.client dependency on django.contrib.auth (and .sessions?)
- #20960
- DEFAULT_TABLESPACE should be part of DATABASES
- #21065
- Internally choosing how to process a template is inconsistent
- #21076
- Offer the ability to store a hash of session IDs rather than the ID itself
- #21080
- collectstatic post-processing fails for references inside comments
- #21135
- Admin: Support for editing OneToOne related models in RELATED model
- #21143
- runtests might execute queries against the normal database instead of the testdatabase
- #21273
- Add read only support for Oracle XE to django.contrib.gis
- #21278
- Using dumpdata to create unit test fixtures causes duplicate foreign keys for auth permissions. Excluding auth causes other referenced auth models to be missing.
- #21286
- Fix commented out tests in serializers.test_data
- #21289
- Add login rate limiting to contrib.auth
- #21295
- Add on_update support
- #21381
- Remove contrib.redirects dependency on contrib.sites
- #21392
- changepassword option to read from stdin
- #21429
- BaseCommand should use logging instead of custom output wrappers
- #21442
- Configurable request parsing.
- #21454
- Ignoring certain fields on INSERT and UPDATE queries
- #21461
- Add pre_update and post_update signals
- #21523
- Models DateField to_python method no longer supports mock dates.
- #21540
- TestCase with multiple assertRaises fails with TransactionManagementError
- #21602
- FileSystemStorage._save() Should Save to a Temporary Filename and Rename to Attempt to be Atomic
- #21604
- Embed raw queries as subqueries when used with an __in filter
- #21699
- Provide a way to define a model without being registered into the app registry / Get rid of get_registered_model
- #21739
- When running tests fixture error output isn't visible
- #21742
- Unable to prevent creation of a database during test runs
- #21772
- additional context for included templates can override current context
- #21777
- Make request exception handling more robust to subsequent exceptions
- #21837
- auth.User Email - non-RFC spec case normalization
- #21906
- dumpdata should not use router.allow_migrate
- #21949
- Django doesn't log much at high verbosity levels
- #21961
- Add support for database-level cascading options
- #21963
- makemessages still ignores translations in templates with inline comment tags
- #21978
- Add optional gunicorn support to runserver
- #21987
- Allow Media objects to have their own MEDIA_TYPES
- #22016
- Automatically reload i18n files on change, when DEBUG is True
- #22079
- TestClient serialization of GET params with empty list as value
- #22088
- XML deserializer strips leading whitespace on loaddata
- #22125
- Unnecessary creation of index for ManyToManyField
- #22158
- Allow model level custom lookups
- #22226
- Reversing admin URLs requires undocumented filter admin_urlquote.
- #22274
- better tutorial for geodjango
- #22298
- Rename Form Media to Static (or get rid of Form Media completely?)
- #22425
- provide ability to abort URL resolution early
- #22439
- LiveServerTestCase handles error messages inconsistently
- #22449
- Colorize output of test results
- #22479
- Support byte range requests in django.views.static.serve
- #22492
- provide a way to prevent database queries on model objects
- #22503
- Inconsistent behavior when a QuerySet is sliced
- #22536
- Exceptions using date-based generic views with MySQL, USE_TZ=True and bad data
- #22633
- LANGUAGE_CODE should be automatically set based on system locale
- #22666
- GenericIPAddressField index never used on PostgreSQL
- #22673
- inspectdb not support database schema on postgresql with name different of "public"
- #22689
- inlines with sliced and ordered querysets save incorrectly when underlying data has changed since page load
- #22724
- Improve SingleObjectMixin
- #22752
- Allow PasswordResetForm email to render URLs based on the current namespace
- #22757
- prefetch_related isn't as effecient as it could be with GenericForeignKey and proxy models
- #22761
- Migrating from an auto to natural key with foreign model and 'to' FK
- #22775
- Management command sqlall should support unmanaged models
- #22887
- unique_for_date error message in Field has untranslated param lookup_type
- #22977
- No validation error when ForeignKey related_name clashes with manager name.
- #22995
- Deprecate auto_now and auto_now_add and document alternatives
- #22997
- Migration fails when removing explicit primary key
- #23027
- Add database-backend-specific checks
- #23034
- Add migrations support for adding ManyToMany "through" model
- #23051
- QuerySet.only() fail to work with reverse o2o relationships
- #23076
- Cascaded deletion of polymorphic models fails
- #23242
- Add an option to avoid slow date_hierarchy queries on a big tables
- #23251
- Use a temporary folder to store uploaded files during tests
- #23268
- Fixtures: Natural Key support for Generic Foreign Keys
- #23318
- Management command dbshell does not use DATABASE[...]['OPTIONS'] to set env PGOPTIONS
- #23319
- Django uses unnecessary join in concrete inheritance
- #23321
- Remove .mo files from the Django Git repository
- #23326
- DatabaseCache must implement incr to guarantee atomic increment
- #23337
- CircularDependencyError when squashing migrations
- #23356
- Unable to create template tag which behaves similar to {% verbatim %}
- #23424
- Verbatim tag fails to render curly braces
- #23435
- GenericForeignKey should be indexed
- #23501
- remove/add fields programatically in modelform fails in admin
- #23521
- removal of concrete Model from bases doesn't remove it from ModelState bases
- #23533
- Hook for default QuerySet filtering defined on the QuerySet itself.
- #23557
- Prevent silent extension of explicit GROUP BY when using order_by
- #23559
- Staff (not superusers) should not manage perms of Users
- #23577
- Rename operations should rename indexes, constraints, sequences and triggers named after their former value
- #23595
- “add” button for related fields in admin interface should send 'limit_choices_to' parameter to add form
- #23687
- Prevent `ContentType.objects.get_for_model` from creating objects for deferred, auto_created and swapped models
- #23746
- Allow assertNumQueries to clear caches before it runs
- #23764
- sessions.backends.cache.SessionStore does not respect settings.SESSION_SERIALIZER
- #23771
- Optimisation idea for Paginator object
- #23843
- Test failures on Oracle/Python3
- #23854
- Add custom SelectRelated classes
- #23870
- Sliced QuerySets in ModelChoiceField
- #23902
- Migrating between Geography / Geometry types fails
- #23931
- db_manager() method doesn't increment creation_counter
- #23964
- Support for Meta.constraints validation in BaseModelFormSet.validate_unique().
- #23996
- Allow AlterOrderWithRespectTo to order existing data
- #24039
- Filtering using __in on a count annotated queryset returns empty results
- #24082
- Unique=True on TextField or CharField should not create an index
- #24117
- make admin not require context_processors
- #24182
- Document or improve limitations for doing queries in field defaults
- #24199
- string_if_invalid doesn't provide information in many cases
- #24203
- Optimisation: adding multiple fields to same model should attempt to run single ALTER TABLE statement
- #24213
- RFC 2231 Section 4.1 is not implemented
- #24218
- Use sub-query in ORM when distinct and order_by columns do not match
- #24227
- isinstance checks on ForeignKey/ManyToManyField should be replaced with field.many_to_one/field.many_to_many
- #24228
- Signals have unclear & inconsistent transaction handling
- #24246
- Model field names, lookups and transforms should be checked for collisions.
- #24267
- Simplify Query.build_filter()
- #24306
- Support for UNLOGGED tables in PostgreSQL
- #24312
- Make it possible to import models safely at any time
- #24313
- Deprecate the class_prepared signal
- #24317
- Deprecate field.rel, replace it with real field instances
- #24342
- Add EnumField model/form fields
- #24363
- Combine ALTER TABLE .. MODIFY statements for multiple columns into one statement.
- #24396
- Migrate only required models to the "other" database
- #24421
- Querying a reverse ForeignObject relation using exclude() fails
- #24446
- ATOMIC_REQUESTS add extra queries if the view was already in a transaction
- #24462
- Add a new QuerySet operation to use current results as a subquery
- #24470
- Serialization of base classes is not customizable for migrations
- #24481
- Improve sqlmigrate to be more flexible and allow bypassing migrations on disk
- #24484
- Add a helpful message when running tests with models without migrations
- #24506
- Migrations are crashing after changing foreign key from auth.Group model to a proxy model of auth.Group
- #24523
- django.apps.registry.populate() does not handle failures in app_config.ready()
- #24529
- Allow double squashing of migrations
- #24539
- Attempt to create object with repeated value on a custom PK raises IntegrityError on wrong field
- #24572
- Migration plan may be broken when applying migrations on a clean database
- #24577
- Restrict extending and including to require templates from the same engine.
- #24580
- Add test for untested condition in admin_list template tag.
- #24581
- Explicitly raise an exception if ManyToManyField._get_m2m_attr fails to match
- #24612
- Confusing error message when using only/defer through deleted related field
- #24622
- Response "context" and "templates" not available in the Test Client when using Jinja2 - Django 1.8
- #24632
- PostgreSQL table inheritance
- #24638
- Support adding an SQL comment in queries
- #24648
- Model fields that reference settings that differ between dev and prod trigger the autodetector
- #24669
- Migrations should only be marked as run on "their" db
- #24686
- Support for Moving a model between two Django apps
- #24711
- Allow flush management command to drop tables and re-run migrations
- #24754
- Implementation of global permissions
- #24759
- Add or document a way to test data migrations
- #24778
- Data Migration from Fixture
- #24800
- Add logging of applied/unapplied migrations
- #24810
- Reopen database connection automatically when no transaction is active
- #24823
- FileField with callable default raises error with forms
- #24886
- Add process_lhs() method for Transform
- #24901
- makemigrations should create empty migrations dir for any installed app without it
- #24920
- Database type NUMERIC with no parameters is not supported
- #24928
- Add UUIDField, RangeField, JSONField, etc to database introspection
- #24933
- Make FormSet management forms optional
- #24947
- Move admin changelist filters into a separate class (Mixin)
- #25020
- Provide/log related args (SQL query, params, proc) with database errors
- #25024
- Discrepancy between /admin/ DateTimePicker.js date format and SHORT_DATE_FORMAT in /en/ lang
- #25068
- Metaclass conflict when doing createmigrations in ModelState.render
- #25139
- ModelFormSet: allow swapping unique values
- #25154
- In the event of a failure, make migrations output the operation that failed
- #25177
- Filter reference field on model to a date difference raise a TypeError
- #25195
- update_or_create doesn't understand F() operations
- #25197
- Add a more friendly widget for HStoreField
- #25230
- Change to Query.get_count() causes big performance hit
- #25243
- inspectdb crashes if SQLite foreign key references sqlite_master
- #25245
- Incorrect query arising from using NOT-clauses & multiple relation references affected node position in Q
- #25247
- makemigrations unable to generate necessary migration for making a superclass abstract
- #25251
- Inconsistent availability of data from migrations in TestCases when using --keepdb
- #25265
- DB Backend cannot specify query class.
- #25281
- Permission strings don't uniquely identify permissions
- #25287
- Multiplying and dividing connectors for duration expressions are not supported on SQLite and MySQL.
- #25306
- Allow a limit_choices_to callable to accept the current model instance
- #25342
- Altitude of Point object for equality check
- #25387
- ModelAdmin actions don't get access to the ActionForm
- #25409
- Allow url and groups of urls to be easily tagged and selected
- #25418
- URL Validator to check only hostname part without domain nor tld
- #25425
- Enforce calling resolve_expression before as_sql on all expressions
- #25446
- Can't use PostGIS function ST_OrderingEquals with GeoDjango
- #25464
- Allow skipping IN clause on prefetch queries
- #25504
- Django test teardown fails when there is no default database
- #25540
- Reusing databases doesn't work on PostgreSQL for migrations tests
- #25541
- Improve error reporting when loading invalid JSON fixtures
- #25591
- Cannot QuerySet.update DateRangeField using F() expressions
- #25594
- Difficult to customize model field default_validators and have them used on both model and form fields
- #25600
- Template `if` tag behavior change with 1.8, OneToOneField, RelatedObjectDoesNotExist is True?
- #25612
- django.contrib.auth should include support for 2fa out of the box
- #25643
- Allow update() with aggregates and joins via subqueries
- #25656
- Recent Actions admin section contains link to edit form even when user does not have edit permission
- #25701
- Add warning to an admin list_view if too many queries are being used
- #25704
- Response time in WSGIRequestHandler.log_request
- #25705
- Parameters are not adapted or quoted in Query.__str__
- #25706
- Support CSP default-src 'self' on Django Admin GIS
- #25741
- Make 'request' available to syndication.Feed methods
- #25756
- ArrayField does not work with FileField
- #25762
- Optimize numberformat.format
- #25789
- Inefficient Queries Generated due to not using WHERE EXISTS
- #25857
- DateTimeShortcuts.js could try and consume all DATE_INPUT_FORMATS.
- #25866
- Django migrations not picking up max_length change on FileField
- #25872
- Add a trans/blocktrans option to force HTML escaping
- #25880
- Forms created by formset_factory's extra parameter don't have instance set
- #25889
- Organize tests in tests/queries
- #25902
- Add system check for project-wide database table name conflicts
- #25937
- Failure when using expressions.DateTime on NULL values and aggregating
- #25946
- Negated clauses' "isnull" added term does not take field transforms into account
- #25947
- Query's str() method fails when 'default' database is empty
- #25955
- FK constraints are not checked at the end of nested atomic blocks
- #25980
- Disabled ModelMultipleChoiceField can't handle querysets as an initial value
- #25991
- A new implementation for exclude() queries
- #26066
- Admin listview could handle a table wider than the screen more elegantly
- #26149
- Invalid migration generated when using order_with_respect_to and a unique_together constraint
- #26220
- Allow SingleObjectTemplateResponseMixin to get a template_name from form_class if it's a ModelForm
- #26223
- Squashing migrations with preserve_default=False keeps the default
- #26258
- Jinja2 rendered templates are not safe by default
- #26300
- Convert contrib.flatpages views to class-based views
- #26329
- StaticFilesStorage permits leading slash, CachedStaticFilesStorage doesn't
- #26340
- Cannot rollback to a savepoint explicitly after an IntegrityError when autocommit is disabled
- #26355
- Add support for PostgreSQL's array_append to ArrayField
- #26369
- Allow override of hardcoded defaults in model Field.formfield()
- #26372
- admin_order_field ignored when shadowing model field
- #26379
- Inconsistent behaviour of filter() on related model (RelatedManager)
- #26401
- Allow auth machinery to be used without installing auth app
- #26407
- Investigate applying transitive reduction to migration graph.
- #26423
- Make EmailValidator use HTML5 validation rather than more complicated regular expressions
- #26434
- Inconsistent results of QuerySet count() method using PostgreSQL backend prior and post the QuerySet evaluation
- #26459
- Allow providing DecimalField with a custom context
- #26472
- Allow finer granularity in the ability to silence checks
- #26506
- Implement support for TABLESAMPLE
- #26530
- Batch operations on large querysets
- #26556
- set_language with i18n_patterns doesn't work all the time
- #26562
- Introduce Storage and FileSystemStorage alternate save behaviour
- #26565
- Allow Prefetch query to use .values()
- #26583
- Add an option to silence collectstatic clashing files warnings
- #26609
- Add system check for field choices using unorderable iterables
- #26619
- BaseCache incr method will reset the timeout
- #26624
- Error when running sqlmigrate after dropping index (of index_together) without actually migrating
- #26626
- Update decorator_from_middleware to work with new-style middleware
- #26630
- Defered constraint checks flush after `post_delete` signal
- #26650
- Automatically apply Cast based on output_field
- #26661
- Why not using AppConfig's name attribute instead of app_name in urls.py?
- #26683
- Oracle DBs: Add option to use VARCHAR2 data type
- #26714
- Add examples for KMLSitemap and KMZSitemap
- #26722
- Django silently discarding the user-provided on_delete with GenericRelation
- #26739
- Backward operation for RemoveField does not allow a default value in case the field is not null.
- #26756
- Changing of model's verbose_name does not change the names of the model's permissions
- #26769
- Expose verbosity level in migrations
- #26803
- Add a statistics option to makemessages
- #26810
- DATA_UPLOAD_MAX_NUMBER_FIELDS not taken into account in admin mass actions
- #26822
- New migrations not applied on clone databases (sqlite) when using --parallel and --keepdb option
- #26834
- MinValueValidator/MaxValueValidator not forwarded to form field for ModelForm
- #26982
- Allow easy removal of "novalidate" in admin
- #27029
- Make EmailValidator accept non-ASCII characters
- #27060
- Take indexes into account in inspectdb command
- #27074
- connection.is_usable() raises AttributeError after the connection is closed
- #27080
- `as_manager` on QuerySet should pass down `use_in_migrations` to new Manager instance
- #27095
- Queries involving postgres Array fields can't include expressions as elements
- #27109
- Make Flatpage swappable
- #27157
- AdminForm may crash if model_admin argument is None
- #27202
- Investigate RenameMethodsBase effect on yaml serialization
- #27222
- Refresh fields that are expressions after Model.save()
- #27229
- Allow using aggregates in ModelAdmin.list_display
- #27303
- Selecting multiple admin list_filters across relations return results that don't match both filters
- #27317
- Make Form subclasses combine Form.Media from all parents
- #27319
- Circular ForeignKeys between two unmanaged models produce incomplete migrations
- #27325
- Offer a solution for static file serving suitable for production use
- #27339
- Adding an AutoField prompts for a default which creates a broken migration
- #27357
- Variant of FilePathField that uses a Storage backend
- #27380
- Add the 'raw' argument with the 'm2m_changed' signal
- #27447
- Provide an easy way to test sending of signals
- #27460
- Allow declaring a GenericRelation from an abstract model to another abstract model
- #27464
- SRID should be stored in DB on MySQL backend
- #27465
- Allow EmailMessage to load attachments from the Storage API
- #27466
- Use a datepicker widget for Date[Time]RangeField in admin
- #27477
- Use QuerySet.select_for_update() in admin change form to fix race condition
- #27487
- ModelAdmin.formfield_overrides on ManyToManyField isn't compatible with CheckboxSelectMultiple
- #27489
- Renaming a model doesn't rename the permission name and codename
- #27503
- Provide a way for to-many rels to be used without the db
- #27510
- Allow custom keyword arguments to modelform_factory in ModelFormMixin
- #27574
- support geodetic distance calculation on MySQL 5.7+
- #27575
- Make host validation run on all requests
- #27580
- add special field for storing content types
- #27614
- Store the DB used in the state before calling Model._save_table()
- #27620
- Add a TransactionMiddleware
- #27624
- Optimize ORM by using more immutable data structures
- #27645
- Move Settings.__init__ checks to system checks
- #27646
- Add QuerySet support for group by modifiers and OLAP functionality
- #27692
- Remember scroll position in list screen after coming back from edit screen - remove autofocus from search field
- #27704
- contrib.postgres.ArrayField with choices should use TypedMultipleChoiceField as its default form field class
- #27732
- django.contrib.postgres.search SearchRank doesn't handle SearchVectorField references
- #27734
- Add a helpful error message when a parallel test worker is assigned an unexpected index
- #27737
- Investigate if reloading old relational fields in migration operations' state_forwards is needed
- #27746
- Database migration fail when removing a child model containing only foreignkeys in a multi-table inheritance context on MySQL
- #27747
- Add signals for Django management commands
- #27751
- Teardown of a PG test database fails if it is an autogenerated test_MYDB database
- #27752
- Fix and test admin_order_field set for the __str__ of a model
- #27760
- Hard to diagnose reason for 400 response when making test request that sets SERVER_NAME
- #27775
- Signed cookies does not support custom expiry
- #27790
- Investigate increased memory usage in tests when calling migrate without available_apps set
- #27806
- Allow for more dynamic ALLOWED_HOSTS configuration
- #27833
- prefetch_related fails with SQLite when used with 1000 parent records
- #27867
- Excluding a reverse relation produces inconsistent queries
- #27877
- Management command exceptions should be logged
- #27880
- Use __set_name__ to replace some usages of contribute_to_class.
- #27923
- Add form signals (pre_init, post_init, pre_clean, post_clean, etc.)
- #27926
- Allow squashmigrations to create a fresh set of migrations and delete the old ones
- #27929
- Add ManifestStaticFilesStorage option to remove original (non-hashed) files after processing
- #27950
- Permission classes for Class Based Views
- #28035
- Allowing logging the queryset location for a given query
- #28041
- Postgres prefix searching for full text search
- #28048
- Allow generic date views to use related fields as date_field
- #28050
- TemplateSyntaxError should contain template name
- #28053
- Allow fields to specify arbitrary indexes via db_index=Index()
- #28068
- Allow customizing popup window for selecting related objects in django admin
- #28072
- Allow QuerySet.annotate() to use the name of an exisiting field
- #28110
- Model inheritance field name collision check error refers to related accessors as fields
- #28119
- Test client cookies do not take into account server hostnames/domains
- #28140
- Add convenience method to add `Permission`s to a `User`
- #28172
- Prevent nonexistent template filter arguments from raising VariableDoesNotExist
- #28200
- Do not touch hash-designated files which already exist at the destination storage
- #28215
- sensitive_post_parameters/sensitive_variables leaking sensitive values into the http 500 exception email
- #28219
- Ease locating origin of queryset paginator warnings
- #28223
- Form not always picklable due to template renderer
- #28236
- Integrate dj-database-url into Django
- #28250
- Ignore soft applied migrations in consistency check
- #28267
- Change submit_line implementation to allow easier modification
- #28283
- _changeform_view sends wrong object after ModelForm validation
- #28296
- Add support for aggregation through subqueries
- #28316
- ModelChoiceField to_field_name doesn't work if it's different from the model field's to_field
- #28333
- Filter and subquery for window expressions
- #28341
- GeometryField doesn't create GEOSGeometry objects lazily anymore
- #28347
- Allow custom attributes for model fields
- #28354
- Add a "humanized" widget for DurationField
- #28368
- Trying to create a model instance with an existing shared primary key in MTI silently updates an existing instance
- #28369
- Provide ModelAdmin hooks for reversing URLs
- #28410
- query filter on date portion of datetime creates wrong parameters for mysql CONVERT_TZ function when used with a fixed offset timezone
- #28438
- Initial migration creates fields not listed in the migration if mixin class changes
- #28452
- Consider adding a test command argument --locals to show traceback locals
- #28455
- Create "inplace" QuerySets to speed up certain operations
- #28473
- Consider SCRIPT_NAME for SECURE_REDIRECT_EXEMPT setting
- #28504
- Add hooks into SchemaEditor.alter_field() and reduce complexity
- #28519
- Add filter(), exclude(), and other base QuerySet methods to combined QuerySets (union(), etc.)
- #28526
- Remedy verbose, often unhelpful undefined tempate variable logging
- #28554
- Add support for multiple file fields
- #28560
- distinct() on ordered queryset with restricted list of columns returns incorrect result
- #28567
- Incompatibility between the set_language() view, LocaleMiddleware, and i18n_patterns() when prefix_default_language=False.
- #28586
- Automatically prefetch related for "to one" fields as needed.
- #28589
- When saving in admin, readonly fields are potentially overwritten
- #28594
- Value error on related user name during save of user model
- #28598
- BCC addresses are ignored in the console and file email backends
- #28608
- Allow UserCreationForm and UserChangeForm to work with custom user models
- #28616
- DISTINCT ON and update() does the wrong thing
- #28618
- Add an easier to make templates substitutions raise an exception on error
- #28636
- Allow customizing the fallback language from the locale middleware
- #28645
- AuthenticationForm's inactive user error isn't raised when using ModelBackend
- #28646
- Migration calls "CREATE INDEX" when one already exists when 'unique' field attribute is added (PostgreSQL)
- #28647
- Add support for python-brace-format for variables within {% blocktrans %}
- #28661
- Auto-truncate indexes on MySQL when max index size is reached
- #28696
- Add the ability to natively filter geometries by geom_type
- #28715
- Prevent a migration changing DateTimeField(auto_now_add=True) to default=timezone.now from generating SQL
- #28757
- Allow using forms of contrib.auth without installing contrib.auth
- #28779
- Customizing REDIRECT_FIELD_NAME is cumbersome
- #28782
- Template variable resolution on objects that are no mappings but implement __getitem__
- #28800
- Add a management command to list URL patterns
- #28805
- Add database functions for regular expressions, e.g. RegexpReplace
- #28809
- Changing SRID on geometry field doesn't create working migration
- #28821
- Allow QuerySet.bulk_create() on multi-table inheritance when possible
- #28872
- JSONField __in operator breaks when given a values_list()
- #28888
- Index added to _meta.indexes with Meta.indexes=[] yields two equal addIndex() operations.
- #28905
- Overhaul extra_requires to include more optional dependencies
- #28919
- Add support for Common Table Expression (CTE) queries
- #28944
- Chaining values()/values_list() after QuerySet.select_for_update(of=()) crashes
- #28980
- Make the autodetector validate the type of one-off default values
- #28992
- Querying GenericIPAddressField with a space crashes with DataError on PostgreSQL
- #29023
- running tests in parallel doesn't show exception chain, even with tblib
- #29030
- Make construction of "View on site" and "View Site" URLs consistent
- #29058
- Adding 'null=True' to a PointField doesn't create working migration
- #29098
- Add SimpleTestCase.assertRedirectsRegex()
- #29111
- Use autocomplete_fields in list_filter for related models
- #29115
- Allow rendering of admin forms with Jinja2
- #29156
- Enhance the model methods added when Meta.order_with_respect_to is used
- #29170
- Unable to add triggers in migrations on Oracle.
- #29177
- Unmanaged models with ForeignKeys do not get those fields serialized into their migration state when CreateModel happens.
- #29186
- "django.request" logging breaks "logging.handlers.SocketHandler"
- #29187
- test_delete_signals occasionally fails when running all django tests
- #29203
- Cached Session may cause losing a session, when it failed to connect to cache backend
- #29214
- Invalid SQL generated when annotating a subquery with an outerref to an annotated field.
- #29222
- Substr on NULL values returns incorrect results with pattern lookups.
- #29237
- ModelAdmin.inlines cause a model to lose its primary key from a model field default
- #29257
- If creation of a db cursor fails, the resulting traceback is misleading
- #29262
- Custom Left Outer Join in Queries
- #29268
- Support passing None to test Client and RequestFactory request methods for default content_type
- #29291
- Negated Q expressions across a nullable relationship are not properly handled by When expressions.
- #29299
- Add type hints (PEP 484) and variable annotations (PEP 526)
- #29303
- non_atomic_requests decorator alters _non_atomic_requests attribute of original function
- #29381
- Move some parts of `django.contrib.auth.models` to `django.contrib.auth.base_user` for reusability
- #29446
- Include template context in error page when relevant
- #29466
- Textual "to" parameter of ForeignKey fails to resolve if placed in abstract model
- #29574
- Unable to create model instance after changing an abstract model to non-abstract due to "foreign key mismatch" error
- #29602
- Jinja2's forceescape filter doesn't work on Django's safe strings
- #29640
- Document (deprecate?) Paginator._get_page
- #29702
- QuerySet database-side pattern regexp support
- #29707
- New admin autocomplete widget ignores limit_choices_to filter in referring FK definition
- #29717
- Provide a way for tests to run on an existing empty DB
- #29771
- Support database-specific syntax for bulk_update
- #29790
- Migration that switches a model to a UUID primary key fails with "duplicate column name: id"
- #29793
- GeometryField with Oracle always assume that axes are named as long and lat in geometry metadata
- #29800
- Django hangs when Content-Length has incorrect value
- #29822
- Timezone-aware widget for admin site
- #29843
- Create permissions using migration operations rather than using the post_migrate signal
- #29878
- GEOSContextHandle leaks probably due to thread local object destructing order
- #29884
- QuerySet.filter() with TruncBase functions not working as expected when USE_TZ= True
- #29898
- Adapt schema editors to operate from model states instead of fake rendered models
- #29910
- Allow ManyToManyFields that target proxy models with a through table.
- #29969
- Admin inline with view permission is shown when save_as validation fails
- #30018
- Regression for selenium tests & inaccurate Content-Length
- #30021
- Allow contrib.sites to use the request host and fallback to a SITE_ID
- #30032
- Allow expressions to be used for default
- #30049
- GIS widgets don't initialize properly after clicking "Add another" in admin inlines
- #30124
- QuerySet.only() on reverse many-to-one relationship causes extra database queries
- #30138
- Allow QuerySet.bulk_create() to set pk of created objects when ignore_conflicts=True
- #30149
- Empty value selected check in Admin Filter prevents subclassing
- #30170
- Refactor and simplify wrapping variables on Oracle
- #30200
- Add support for using indexes in update() for ArrayFields.
- #30205
- New built-in tag to disable invoking callable variables during template variable resolution
- #30213
- Add support for a "watchdog" based autoreloader
- #30267
- GeoDjango does not create correct PostGIS index for 3D geometry fields
- #30386
- Admin foreign key widgets don't quote keys.
- #30416
- Runserver's reloading mechanism should restore terminal state completely
- #30420
- Do not reload runserver during debugging / request processing
- #30448
- close_if_unusable_or_obsolete should skip connections in atomic block for autocommit check
- #30460
- ManyToMany relationships with a custom `through` do not respect Meta.ordering on the intermediary model
- #30519
- Add sanity checks to Django RasterField deserialization for rasters that are not fully managed through Django.
- #30637
- SearchVectorField and SearchVector should be combinable.
- #30685
- Optimize QuerySet.count() with distinct()
- #30729
- Add support for the RFC 7239 Forwarded header
- #30746
- Add Permissions-Policy (was Feature-Policy) header support.
- #30949
- Use functools.cached_property instead of django.utils.functional.cached_property.
- #30950
- Replace __file__ with importlib.resources
- #30963
- Admin list_editable not suitable for multi-user environment.
- #31170
- dismissRelatedLookupPopup doesn't trigger change event
- #31202
- Bulk update suffers from poor performance with large numbers of models and columns
- #31252
- Oracle GIS doesn't support spatial indexes in Meta.indexes.
- #31255
- Migrations create a redundant RemoveField operation when deleting 2 models with related fields.
- #31295
- Avoid Select widget triggering additional query when using ModelChoiceIterator.
- #31304
- PostgreSQL full-text search employs coalesce function for non-null single-column searches with SearchVector
- #31317
- Migration using CreateModel with unique_together followed by AlterUniqueTogether crashes
- #31354
- HttpRequest.get_host() doesn't include the port from META['HTTP_X_FORWARDED_PORT'].
- #31383
- Make createcachetable use SchemaEditor for SQL generation
- #31398
- multiple_database.tests.AuthTestCase doesn't flush the default database if transactions aren't supported.
- #31425
- Support for Clear-Site-Data header.
- #31450
- Querying on ArrayField(PointField) returns string instead of list
- #31492
- Changing field type can cause unrelated nullability change in field on Oracle.
- #31506
- ExpressionWrapper() doesn't respect output_field when combining DateField and timedelta on PostgreSQL and MySQL.
- #31539
- Add support for bulk operations on reverse many-to-one manager
- #31540
- i18n URLs are not matched against the fallback language.
- #31583
- Extend deferred unique constraint support to OneToOneField
- #31613
- GeoModelAdmin's openlayers widget stroke width too thin for some linestrings
- #31632
- Single queries without transaction do not follow AUTOCOMMIT
- #31637
- Registering database connections for cleanup on fork
- #31677
- ForeignObjectRel and its subclasses shouldn't be set as Col.output_field.
- #31679
- Django subtly produces incorrect query when the same keyword appears in both aggregate() and annotate()
- #31714
- ResolvedOuterRef object has no get_lookup
- #31730
- manage.py sqlsequencereset not implemented for sqlite3
- #31804
- Parallelize database cloning process
- #31823
- Add Support for Fetch Metadata Request Headers
- #31891
- Remove cached value of reverse side of 020 relation when updating attname.
- #31908
- Add parallel testing support to Oracle backend
- #31923
- Add Support for Cross-Origin Embedder Policy and Cross-Origin Resource Policy Headers
- #31932
- Unique checking in formsets should exclude forms marked for deletion.
- #32061
- Credential leaks on dbshell crash on MySQL and Oracle.
- #32213
- QuerySet.values()/.values_list() on KeyTransforms return wrong values for double-quoted strings on SQLite and Oracle
- #32263
- squashmigrations produces incorrect result with a RenameModel on a ForeignKey target.
- #32264
- Run database checks by default in some scenarios
- #32272
- gettext_lazy inconsistent error when nested
- #32277
- Support nested aggregates in window expressions.
- #32297
- QuerySet.get() method not working as expected with Window functions
- #32312
- Performance decrease following implementation of ASGI handler and coroutine-safety.
- #32398
- Excluding on annotations doesn't apply null handling.
- #32406
- Allow QuerySet.update() to return fields on supported backends.
- #32472
- runserver prematurely closes connection for large response body
- #32491
- Updating a field based on a JSONField's sub-value adds extra quotes [postgres]
- #32519
- Add support for using key and path transforms in update() for JSONFields.
- #32557
- Fail tests when unraisable exceptions occur
- #32558
- Fail tests when unhandled thread exceptions occur
- #32565
- Extract URL resolver view strings mapping to admindocs
- #32567
- Issues with ":" and "|" characters in URLs when using LiveServerTestCase on Windows
- #32568
- Prefer SafeString to mark_safe where possible
- #32577
- Add support for `UUIDAutoField` `DEFAULT_AUTO_FIELD`
- #32640
- Non-manager instance assigned to model class' objects is silently ignored
- #32674
- DEFAULT_AUTO_FIELD changes should be detected for PKs of auto-created intermediate M2M models.
- #32737
- get_language_info replaces requested language code with the one found in django.conf.locale.LANG_INFO
- #32779
- Add tablespace support to UniqueConstraint class
- #32785
- Reduce culling frequency of database cache backend
- #32819
- Fields’ help text and errors should be associated with input
- #32847
- Adjust models.E025 system check for updated field descriptor setting.
- #32849
- ManifestStaticFilesStorage newline breaks regex
- #32886
- Translation: clash between language cookie and i18n_patterns URLs
- #32915
- ./manage runserver --nostatic still doesn't return a traceback
- #32939
- Permit override_settings to work with test class mixins that don't inherit from unittest.TestCase
- #32969
- Improve pickling of HttpResponse instances
- #32980
- Improve performance of related manager attribute access
- #33007
- `form_clean()` performance
- #33058
- Use DiscoverRunner's logger for logging when running checks
- #33090
- Extend sensitive post parameter filtering to be applicable to exceptions in middleware.
- #33091
- A FieldError should be raised when trying to update MTI inherited field with F reference to child field
- #33098
- Micro-optimisation for functional.keep_lazy for single argument uses.
- #33120
- Add OGC-compliant models for GeoDjango running on MySQL 8.0
- #33174
- Having a model inherit from Generic[T] breaks makemigrations
- #33180
- Debug 500 HTML broken with strict Content-Security-Policy (CSP)
- #33185
- sqlmigrate crashes given a RenameModel operation with a self-referencing foreign key on MySQL
- #33225
- Missing FROM-clause when ordering by a relationship defined on the parent model in a Subquery inside a negated Q
- #33312
- Instances with deferred fields cannot be used for copying.
- #33380
- Change runserver's auto-reloader to prefer (likely) user files when scanning for changes.
- #33450
- Integer primary key is wrongly casted to UUID when filtering GenericRelation on model with UUID primary key.
- #33497
- Database persistent connections do not work with ASGI in 4.0
- #33537
- Cloning test databases should reraise errors on MySQL.
- #33548
- Use -> operator to implement KeyTransform on SQLite 3.38+
- #33573
- Add native async support to redis cache backend
- #33579
- Raise a specialized exception when Model.save(update_fields) does not affect any rows
- #33586
- Cannot delete object (A) referenced by another object (B) if said object (A) has a foreign key to a custom user.
- #33588
- @never_cache and @cache_page decorators are applied out of order for TemplateResponse.
- #33604
- Allow CacheMiddleware.key_prefix to be a callable.
- #33620
- Accessibility in pipeline
- #33625
- Under ASGI, PyLibMCCache closes memcached connection after every request
- #33647
- bulk_update silently truncating values for size limited fields
- #33650
- Update startproject template with config directory
- #33668
- i18n set_language not working in Safari
- #33671
- Migrations crashes when adding/altering collations on indexed columns on Oracle.
- #33685
- Support using service names for tests on PostgreSQL.
- #33689
- Django theme color variables are inconsistently named and poorly documented
- #33752
- Display exception groups on the technical 500 debug page on Python 3.11+.
- #33882
- Allow transaction.atomic to work in async contexts.
- #33931
- Optimize calling of `get_app_list` with AdminSites index/app_index
- #33945
- get_previous_in_order and get_next_in_order return incorrect data when objects is stored in non-default database
- #34007
- Single-field conditional UniqueContraint validation errors are classified as non-field-errors
- #34034
- Adding a class on ChoiceWidget subwidgets is excessively difficult
- #34041
- Accessibility improvements for admin breadcrumbs
- #34044
- Admin app search filter appears in nav sidebar but not on admin homepage
- #34151
- Adding explicit primary key with different type doesn't update related ManyToManyFields.
- #34211
- Performance regression in ForeignKeyDeferredAttribute changes.
- #34229
- "no such column" when combining FilteredRelation and multi-table inheritance models
- #34262
- Queryset grouped by annotation with aggregates on another annotated expression crashes on MySQL with sql_mode=only_full_group_by.
- #34277
- Add where clause in QuerySet.bulk_create() when update_conflicts=True
- #34392
- Allow using test client response.json() with StreamingHttpResponse
- #34402
- Admin search_fields crashes for inherited model and __iexact lookup.
- #34417
- AlterField migration on ForeignKey field re-creates foreign key constraints unnecessarily
- #34451
- Incorrect exception handling within the django exception handler
- #34477
- Asyncio send mail backend
- #34479
- Support "watchfiles" in the autoreloader
- #34497
- ManifestStaticFilesStorage skips import and export of javascript modules with absolute paths
- #34533
- OuterRef not resolved as part of ORDER BY clause
- #34555
- ModelBase metaclass implementation prevents addition of model fields via __init_subclass__
- #34563
- ManifestStaticFilesStorage support for CSS module scripts in Javascript files.
- #34566
- ModelAdmin get_field_queryset uses related admin ordering, but not related admin querysets.
- #34569
- Unify all model fields to call get_prep_value from get_db_prep_value
- #34581
- Filters should not implicitly mark unsafe strings as safe without escaping
- #34597
- Queryset (split) exclude's usage of Exists is significantly slower than subquery
- #34613
- add support for Partitioned cookies
- #34624
- RelatedFieldWidgetWrapper links toggling isn’t working for radio widgets
- #34636
- Add documentation for Query's function `sql_with_params`
- #34643
- Move admin form labels to a more accessible place
- #34654
- Post-normalization performed on the Username field leading to the bypass of the whitespace stripping
- #34699
- Filtering on annotated TruncSecond expression gives unexpected result.
- #34746
- High CPU/memory consumption when a 5XX is raised with large local variables
- #34819
- GenericForeignKey.get_prefetch_queryset()
- #34831
- Search in admin could allow issuing a query with many OR'd clauses
- #34865
- DatabaseWrapper are not GC and connections are not closed
- #34871
- Validation of UniqueConstraint with Case() crashes.
- #34898
- Adding non-deterministic collations to unique CharFields crashes on PostgreSQL.
- #34907
- loaddata crashes on objects with natural keys when don't exist on passed database.
- #34917
- Links in the Django admin should be underlined.
- #34943
- Support passing unique constraint names to bulk_create().
- #34954
- Improve `output_field` resolution of `Concat`
- #34976
- startproject and startapp should provide feedback
- #34981
- Promote `--pair` and `--bisect` from `runtest.py` to be available as flags for the Django `test` command
- #34988
- Makemigrations shouldn't prompt for default values for non-nullable fields of other apps.
- #34989
- Set Content-Length where possible for HttpResponses.
- #35007
- Add prettier to format CSS and JS
- #35058
- Update GDAL integration
- #35095
- Monetary values in Switzerland discrepancy
- #35119
- Unify max_length for EmailValidator and model's and form's EmailField
- #35137
- Collapsible error container elements do not indicate that they are interactive
- #35167
- JSONField get_db_prep_value being called with `Cast` types
- #35235
- ArrayAgg() doesn't return default when filter contains __in=[].
- #35276
- Push cache backend checks down to backend classes
- #35278
- `ngettext` result can be possibly undefined.
- #35281
- Use HTTP 413 status code for RequestDataTooBig
- #35289
- Chunked transfer encoding is not handled correctly by MultiPartParser
- #35305
- No-op rename of field with `db_column` drops and recreates constraints/indexes.
- #35319
- Move the link to add a related object inside the .selector-available column for FilteredSelectMultiple.
- #35328
- Improve CSRF Origin checking messaging
- #35333
- Template tag `unlocalize` does not work with `date` and `time` filters.
- #35334
- Update Oracle backend supports_sequence_reset = True
- #35335
- Update "Enabling the sites framework" documentation to reiterate the ability to use `get_current_site`
- #35358
- Rename BaseConstraint._check() to check()
- #35371
- False positive in JS module aggregation export regex when an export declaration precedes an import declaration
- #35381
- Regression on json null value constraints in django 4.2
- #35402
- DatabaseFeatures.django_test_skips crashes when it references a class in another test module
- #35414
- Issue with AsyncClient ignoring default headers compared to synchronous Client
- #35418
- ValueError: site must subclass AdminSite
- #35440
- Update parse_header_parameters to leverage the parsing logic from (stdlib) email Message.
- #35442
- N+1 queries from RelatedManager + only("pk")
- #35444
- Add generic support for order by to Aggregate
- #35448
- test --debug-sql SQL formatting is applied to more than the query
- #35452
- Unexpected results when Paginator's orphans is equal or higher than the page size
- #35459
- Case.extra is undocumented, untested, and can hide potential issues
- #35462
- Add support JSONArrayAgg
- #35482
- Email and URL form input widgets should always have dir="ltr"
- #35487
- Removal of CASCADE in DROP COLUMN migration operation
- #35507
- Use search element for admin's filter sidebar
- #35508
- Add an --ignore-deps flag to squashmigrations
- #35514
- Dictionary based EMAIL_PROVIDERS settings
- #35515
- Auto-importing models feature for shell-command
- #35521
- Allow overriding BoundField class on forms and fields
- #35529
- Have the template tag query_string support multiple arguments and arguments of type Mapping[str, Any]
- #35533
- urlize() makes a bit of a mess of links embedded in Markdown
- #35548
- An error in TestCase.setUpTestData() leaks data on databases without transactions
- #35572
- Improve performance replacing os.listdir() with os.scandir()
- #35581
- Upgrade django.core.mail to use Python's modern email API
- #35595
- Generated migration for removing related models can't migrate backwards
- #35607
- Improve Storage base backend API flexibility to allow filename validation to be overridden safely
- #35615
- Add ability to render request.user in templates when async is used
- #35629
- Implement async cursors
- #35650
- Multi select checkboxes with shift key is not working in TabularInlineAdmin and StackedInlineAdmin
- #35651
- RedisCacheClient does not reuse connections from the connection pool
- #35653
- Support EMAIL_SSL_CERTFILE for private certificate authority
- #35667
- Switch usage to skip_file_prefixes instead of stacklevel when it makes sense
- #35673
- ExceptionReporter.get_traceback_data() does not handle when request.GET data exceeds DATA_UPLOAD_MAX_NUMBER_FIELDS
- #35674
- Provide a check for settings removed (post deprecation)
- #35675
- Reduce impact of parsing crafted templates with repeat tags
- #35676
- ExclusionConstraint that includes a ForeignKey fails validation in ModelForm
- #35677
- Unexpected behaviour of Prefetch with queryset filtering on a through model
- #35680
- Add default automatic imports to shell
- #35684
- Remove raw_prefix when dropping support for gettext < 0.22.5
- #35705
- Add rotate geographic database function
- #35706
- Improve admin add/change form top level errors for screen readers
- #35713
- Django generates invalid address on unicode characters in the local part of an e-mail address
- #35714
- Support Unicode email addresses in SMTP EmailBackend (EAI, SMTPUTF8)
- #35718
- Add JSONArray Func
- #35728
- Lazily compute assertion messages
- #35730
- Enhance password reset security by encrypting 'uid' parameter instead of base64-encoding to prevent possible user count leakage
- #35738
- Deprecate double-dot variable lookups
- #35740
- file_storage.tests.FileFieldStorageTests.test_extended_length_storage fails when bcachefs is in use
- #35770
- Improve recommendation for ignoring memcached-incompatible cache key warnings
- #35774
- Drop support for GEOS 3.8.
- #35783
- Add the ability to natively filter geometries by the number of dimensions used by a Geometry.
- #35787
- CharField migration with preserve_default=False keeps the DB default on Oracle and MySQL
- #35790
- Deprecate content outside of {% block %} tags when {% extends %} is used
- #35793
- Add support for atomic upserts
- #35801
- Signals are dispatched to receivers associated with dead senders
- #35813
- Makemigrations not properly tracking changes to unmanaged models
- #35816
- Django Template Language doesn't support all float literals
- #35827
- Model subclass with __init_subclass__ doesn't get correct _meta instance
- #35829
- Update/Fix Font Awesome icons
- #35838
- Support Requests with Transfer-Encoding: Chunked
- #35839
- GeneratedField with db_comment causes syntax error
- #35844
- Python 3.14 compatibility.
- #35852
- intcomma not locale aware when given a decimal as string
- #35857
- django.utils.timesince.timesince incorrectly handles daylight saving time
- #35859
- Add DEP14 Tasks interface
- #35865
- Queryset aggregation keeps unnecessary SQL joins
- #35870
- Allow customization of the blank option in select dropdowns
- #35875
- Dark mode support for django/views/templates/*.html
- #35881
- MultiWidget bypasses subwidget rendering customization
- #35886
- Move object-based script media assets to the public API
- #35888
- Color contrast issues for admin icons
- #35890
- pre_save field in parent models are not called during update in update_or_create
- #35891
- Confirm support for GDAL 3.10
- #35892
- Support Widget.use_fieldset in admin forms
- #35899
- Allow newlines in {% %} tags
- #35902
- migrate --syncdb and TEST_MIGRATE break for models with fields requiring extensions, and custom collation or types on Postgres
- #35911
- FilteredSelectMultiple Widget Not Functional in Inline Formset After Form Deletion
- #35918
- SQLCompiler.execute_sql result_type CURSOR usage can be minimized
- #35924
- FilteredSelectMultiple widget choose/remove all button arrows not responsive
- #35930
- Database password visible on debug page in local variable
- #35940
- SelectFilter choose/remove buttons missing keyboard-friendly state management
- #35941
- Add composite GenericForeignKey support
- #35943
- Remove deprecated 'unload' event listener
- #35945
- Add async interface to Paginator
- #35953
- Add composite PK admin support
- #35956
- Add composite foreign keys
- #35957
- Allow AutoFields in composite primary keys
- #35959
- Admin "Change password" Button Visible with Only "Can view user" Permission
- #35961
- Support PEP639-style license indicator in pyproject.yaml
- #35962
- Migration crashes when attempting to remove constraint on already removed foreign key
- #35965
- GenericForeignKeys lose the assigned unsaved object after the object is saved
- #35967
- TransactionTestCase.serialized_rollback reads from real database rather than test when using read replica for a model instance created in a migration with a ManyToManyField
- #35972
- Custom lookup example raises TypeError when looked up against a Subquery
- #35974
- Use router.allow_relation in RelatedManager.add and GenericRelatedObjectManager.add
- #35980
- Make Django release artifacts PEP 625 compliant
- #35986
- Test classes with @translation.override decorator are not run
- #35991
- Migrations crash on SQLite when renaming part of CompositePrimaryKey.
- #35998
- Add caching to urlize
- #36000
- Update default from http to https in urlize when protocol not provided
- #36005
- Drop support for Python 3.10 & 3.11.
- #36009
- Add support for PostGIS 3.5
- #36010
- compilemessages reports errors only once
- #36013
- Inconsistent handling of IDNs in urlize and AdminURLFieldWidget
- #36014
- EmailValidator rejects valid email addresses in some international domains
- #36017
- Urlize email address allows punctuation in domains
- #36023
- Update content_disposition_header to handle control chars.
- #36025
- __range lookup in conditional aggregate with subquery annotation does not use annotated related fields
- #36026
- Document that View.setup() sets attributes such as request, args, kwargs
- #36027
- ASGI: Dead persistent postgres connections are not closed when the database is accessed in response_for_exception
- #36029
- Deep conditions in FilteredRelation raise ProgrammingError if annotation reused
- #36030
- Expressions that divide an integer field by a constant decimal.Decimal returns inconsistent decimal places on PostgreSQL
- #36031
- DecimalRangeField __contains query for a value causes DataError
- #36032
- Apply a link to the URLField value on the admin app index page.
1.2 docs ...
- #14845
- Document connection-creation process
- #15059
- Additional Documentation for the objects in the admin templates
- #15396
- full path to modules in documentation inconsistently referenced
- #17461
- Document presumed order of foreign keys on intermediate M2M model
- #17752
- Serialization and multi-table inheritance
- #19106
- Add new tutorial on breaking templates into blocks
- #19227
- Reorganize method flowchart for class based generic views to tree
- #19415
- Clarify how aggregates work with multi-valued relationships and multiple filter() calls
- #19842
- annotate()-based solution to distinct and order_by problem
- #19898
- Document why/when of class-based views
- #20023
- Admin Inline form validation must go in Model.clean() if AdminInline.form is not specified
- #20562
- Docs: How to use django ORM with multiprocessing
- #20768
- Create a reference of public Manager methods
- #20775
- Clarify the operator each database backend uses for text lookups (startswith, istartswith, contains, icontains, endswith and iendswith)
- #20799
- Document how to use FastCGI via WSGI
- #21292
- A how-to or tutorial document for using authentication views and forms is needed
- #23054
- Document limitations of cache middleware more clearly
- #23582
- Django 1.7 initial data can't relies on other apps one.
- #24162
- "Method Flowchart" for all CB(G)V documentation pages
- #24434
- Django Custom Field inherits ForeignKey deconstruct() fails
- #24989
- Introduce contributor facing documentation for django.db.migrations
- #25203
- Document changes to WSGI application loading sequence in 1.7
- #25313
- Document how to migrate from a built-in User model to a custom User model
- #25703
- Create topic documentation for Expressions
- #25765
- makemigrations and app_label are incompatible
- #25782
- Discourage usage of cache_page decorator with UpdateCacheMiddleware (or make middleware ignore decorated views)
- #25887
- Clarify support for ForeignKey and form fields other than ModelChoiceField
- #25927
- document django.contrib.gis.utils.ogrinfo
- #27106
- Document which template filters can be used in Python code (and how)
- #27150
- Document that a name should be provided when wrapping file-like objects that don't have one with File
- #27401
- Add Transifex config to build translated docs
- #27587
- Document str(QuerySet.query)
- #27617
- Add contributor facing documentation for the ORM
- #27762
- Concurrency Safety Documentation
- #27778
- Update unicode documentation for Python 3
- #27825
- Document that models don't cast field values to the same type that's retrieved from the database
- #27925
- Document how to deploy using pip installed mod_wsgi
- #28094
- Document how @override_settings(CACHES=...) can work with class-based views
- #28339
- Expand the docs around how sqlmigrate works with regards to constraint and index names
- #28461
- Clarify how UserManager.create_superuser() must be implemented with a ForeignKey in REQUIRED_FIELDS
- #28592
- Reorganize CSRF documentation and add to FAQs
- #28717
- Document that using ModelAdmin.list_filter with foreign keys may require a database router
- #28901
- Document considerations with read committed isolation level and InnoDB
- #28939
- Document which ORM methods provide an instance hint to database routers
- #29607
- Add doc examples of handling files and their lifecycles with FileField/models.
- #29762
- Document how database routers are used for related object access
- #30296
- Add how-to guide for JavaScript frameworks integration
- #31571
- Explain how to transform a geometry with GDAL 3 authority axis strategy.
- #32340
- Usability issues with Django form fields expecting specific patterns
- #32723
- Add a GitHub action to run the Sphinx linkcheck builder.
- #32827
- Squashing migrations isn't very effective in complicated projects; rewrite docs to provide a preferred manual trimming process
- #33113
- Add example to documentation of a DateInput with input_type='date'
- #33682
- Clarify using distinct() with related fields that have Meta.ordering defined.
- #34352
- Unify terms in Signals docs.
- #34846
- Add "Copy" button to the code snippets in docs.
- #35380
- Have the images for tutorial and admin docs programatically generated.
- #35485
- Template documentation for startproject / startapp is very sparse.
- #35596
- Database access optimization warning that get() can retrieve hundreds or thousands of records is outdated
- #35659
- Document db_default behaviour before instances are saved
- #35758
- Use keyword argument rather than a positional argument for on_delete in the ForeignKey.on_delete docs.
- #35768
- Add a User Profile How-To to docs
- #35786
- AddField reference to Django's support for database defaults is outdated
- #35824
- Improve patch_cache_control documentation
- #35831
- Include ModelForm and its Meta options in reference docs
- #35874
- The console directive is not accessible for screenreaders.
- #35877
- Documentation on "Changing a ManyToManyField to use a through model" does not respect database index
- #35894
- Move away from the term "patch" to refer to a contribution/pull request in the contributor documentation
- #35908
- Retire django-developers and django-users mailing list
- #35931
- Document fields and methods of the FlatPage model
- #35993
- Replace outdated information on gettext f-string support
- #35999
- Remove references of the #django IRC channel as a place to get help/place to promote things
Last modified
15 years ago
Last modified on Nov 5, 2009, 10:39:40 AM
Note:
See TracWiki
for help on using the wiki.