| Age | Commit message (Collapse) | Author |
|
|
|
SIGNED_COOKIE_LEGACY_SALT_FALLBACK.
|
|
arguments.
|
|
JSONResponse.
|
|
Follow-up to 4a52533329a03207c1c4592a13fbb12b9ec5ef9e.
|
|
|
|
|
|
Bcc addresses are sent via the SMTP envelope and must never appear in
the message itself. A "Bcc" key in `extra_headers` was not excluded like
From/To/Cc/Reply-To, so it leaked into the generated message as a
visible header.
Thanks Mike Edmunds for reviews.
|
|
The previous approach created both sync and async wrappers before
checking which one was needed. Checking first reduces about 1 microsecond
off each decorator application.
|
|
|
|
This reverts docs changes from commit f970a98e464320c09dde8d45009eadfb4d038a57.
|
|
|
|
|
|
After incorporating a translation for "Run" in Arabic, the RTL case started failing.
|
|
auto-reloading.
|
|
|
|
AlterUniqueTogether.
|
|
|
|
Revises the AnimalTestCase to better show test data isolation
and avoid the opportunity to use setUpTestData.
|
|
Thanks Johannes Maron for reviews.
|
|
|
|
|
|
|
|
|
|
|
|
(a)force_login().
Co-authored-by: Mykhailo Havelia <Arfey17.mg@gmail.com>
|
|
self-referential foreign key.
When collecting SQL (e.g. for sqlmigrate), a RenameModel operation's
table rename is not executed, so the subsequent field alteration
introspected the renamed table before it existed. On MySQL this raised
"Table doesn't exist", and on PostgreSQL the missing introspection
silently omitted the self-referential foreign key's drop and recreate.
The schema editor now records table renames while collecting SQL and
redirects constraint-name introspection to the still-existing old table
name, which carries the same constraints. Applying migrations is
unaffected.
|
|
|
|
|
|
Signal.receivers prunes dead weak references lazily, so a weak receiver
garbage-collected elsewhere could still occupy a slot when
BaseSignalSetup.setUp() counted receivers. The test's own
connect/send/disconnect calls would then prune before tearDown()
counted again.
|
|
|
|
|
|
extension.
|
|
Changed djangodocs extension to register DjangoHTMLTranslator for any
html-format builder (in the builder-inited hook), rather than a limited
list of builders at startup. That fixes missing content in dirhtml and
standard html builds (including ReadTheDocs PR previews):
- Missing console tabs
- Empty divs for versionadded and versionchanged directives
Removed JS code that depended on jQuery, which hasn't worked since
Sphinx 6.0 dropped jQuery in 2023:
- Unnecessary console tabs click handling. (Console tab behavior is
implemented purely in CSS.)
- Client-side hyperlinking of Django template tags and filters in code
examples. (This is also not supported on docs.djangoproject.com.)
Removed custom DjangoStandaloneHTMLBuilder and "djangohtml" builder
type. Its sole purpose was to generate the "templatebuiltins.js" file
used for the (non-functional) client-side template filter/tag linking.
Changed docs "make html" target from "djangohtml" to standard "html".
|
|
|
|
Failing to set $BASE meant other commits on the target branch were checked.
|
|
|
|
|
|
directives in UpdateCacheMiddleware.
Avoid false positives from hypothetical extension directives
that could be superstrings of the ones we are checking.
|
|
primary key.
|
|
Extracted the repeated `split(",")` + per-token `.strip()` pattern into
a `split_header_value()` generator in django/utils/http.py. The previous
`cc_delim_re` regex only stripped whitespace adjacent to the comma
delimiter, leaving leading or trailing whitespace on the first and last
tokens. Now, `split_header_value()` strips every token fully, matching
RFC 9110's optional-whitespace rules.
Thanks to Shai Berger, Jacob Walls, and Sarah Boyce for reviews.
|
|
|
|
We were seeing this occasional failure in FlatpagesSitemapTests.setUpClass(),
which was unexpectedly attempting a write on the "other" database because
of an instance hint from a cached Site:
django.test.testcases.DatabaseOperationForbidden:
Database queries to 'other' are not allowed in this test. Add 'other' to flatpages_tests.test_sitemaps.FlatpagesSitemapTests.databases to
ensure proper test isolation and silence this failure.
|
|
|
|
delete_confirmation_max_display.
|
|
primary key.
|
|
On Unix systems that lack time zone information stored at
`/usr/share/zoneinfo`, time zones couldn't be validated.
Python's `zoneinfo` module was introduced in Python 3.9, meaning all
modern Django versions should support it's use.
|
|
Performance regression in 37e6c5b on SQLite. Just like MySQL, and presumably
Oracle, which don't have a native boolean type and incidently store booleans in
integer columns, indices on such columns cannot be used when explicit boolean
literal equalities are omitted.
Adapt the logic introduced by refs #32691 for MySQL to be used for all backends
that don't support native boolean fields instead of special casing MySQL,
SQLite, and Oracle in their own special way.
Note that review of this work surfaced that SQLite's query planner also cannot
make use of indices when dealing with expressions of form
WHERE NOT (indexed_bool_field = false)
but that's a long standing problem unrelated to the restorative work performed
in this patch.
Thanks Klaas van Schelven for the report.
|
|
Follow-up to 6e15ac8066312328de279e3e072667416c205bfc.
|
|
transitional setting to False.
|