Damian Posener
09e499a39e
Fixed #33501 -- Made order_with_respect_to respect database routers.
2022-02-09 13:31:49 +01:00
Aaron Chong
2d472ad05c
Fixed #33495 -- Improved debug logging message about adapting handlers for middlewares.
...
It's the wrapped handler that's adapted to the wrapping middleware.
2022-02-09 12:10:26 +01:00
Simon Charette
d35ce682e3
Fixed #33506 -- Made QuerySet.bulk_update() perform atomic writes against write database.
...
The lack of _for_write = True assignment in bulk_update prior to
accessing self.db resulted in the db_for_read database being used to
wrap batched UPDATEs in a transaction.
Also tweaked the batch queryset creation to also ensure they are
executed against the same database as the opened transaction under all
circumstances.
Refs #23646 , #33501 .
2022-02-09 11:14:50 +01:00
dr-rompecabezas
e3f34b1f09
Fixed typo in django/contrib/humanize/templatetags/humanize.py comment.
2022-02-08 07:24:44 +01:00
Mariusz Felisiak
7119f40c98
Refs #33476 -- Refactored code to strictly match 88 characters line length.
2022-02-07 20:37:05 +01:00
django-bot
9c19aff7c7
Refs #33476 -- Reformatted code with Black.
2022-02-07 20:37:05 +01:00
Mariusz Felisiak
6f185a53a2
Refs #33482 -- Fixed QuerySet selecting and filtering againts negated Exists() with empty queryset.
...
Regression in b7d1da5a62
.
2022-02-07 20:34:21 +01:00
Hrushikesh Vaidya
832adb31f2
Fixed #33473 -- Fixed detecting changes by autoreloader in .py files inside template directories.
2022-02-03 11:22:45 +01:00
Mariusz Felisiak
c5cd878382
Refs #33476 -- Refactored problematic code before reformatting by Black.
...
In these cases Black produces unexpected results, e.g.
def make_random_password(
self,
length=10,
allowed_chars='abcdefghjkmnpqrstuvwxyz' 'ABCDEFGHJKLMNPQRSTUVWXYZ' '23456789',
):
or
cursor.execute("""
SELECT ...
""",
[table name],
)
2022-02-03 11:20:46 +01:00
Keryn Knight
84418ba3e3
Fixed #33474 -- Added __slots__ to Variable and FilterExpression.
2022-02-02 15:22:46 +01:00
Simon Charette
b7d1da5a62
Fixed #33482 -- Fixed QuerySet filtering againts negated Exists() with empty queryset.
...
Thanks Tobias Bengfort for the report.
2022-02-02 07:54:19 +01:00
Mariusz Felisiak
ca88caa103
Refs #33476 -- Used vertical hanging indentation for format lists with inline comments.
...
Lists with multiple values and comments per-line are reformatted
by Black to multiple lines with a single comment. For example:
DATE_INPUT_FORMATS =
"%Y-%m-%d", "%m/%d/%Y", "%m/%d/%y", # '2006-10-25', '10/25/2006', '10/25/06'
]
is reformatted to the:
DATE_INPUT_FORMATS =
"%Y-%m-%d",
"%m/%d/%Y",
"%m/%d/%y", # '2006-10-25', '10/25/2006', '10/25/06'
]
This reformats affected entries to multiple lines with corresponding
comments.
2022-02-01 15:11:35 +01:00
tschilling
0dcd549bbe
Fixed #30360 -- Added support for secret key rotation.
...
Thanks Florian Apolloner for the implementation idea.
Co-authored-by: Andreas Pelme <andreas@pelme.se>
Co-authored-by: Carlton Gibson <carlton.gibson@noumenal.es>
Co-authored-by: Vuyisile Ndlovu <terrameijar@gmail.com>
2022-02-01 11:12:24 +01:00
Mariusz Felisiak
fc18f36c4a
Fixed CVE-2022-23833 -- Fixed DoS possiblity in file uploads.
...
Thanks Alan Ryan for the report and initial patch.
2022-02-01 07:41:40 +01:00
Markus Holtermann
394517f078
Fixed CVE-2022-22818 -- Fixed possible XSS via {% debug %} template tag.
...
Thanks Keryn Knight for the report.
Co-authored-by: Adam Johnson <me@adamj.eu>
2022-02-01 07:40:51 +01:00
Kirill Safronov
97a7274468
Fixed #33480 -- Fixed makemigrations crash when renaming field of renamed model.
...
Regression in aa4acc164d
.
2022-02-01 07:01:41 +01:00
Mariusz Felisiak
71e7c8e737
Fixed #33468 -- Fixed QuerySet.aggregate() after annotate() crash on aggregates with default.
...
Thanks Adam Johnson for the report.
2022-01-31 11:33:24 +01:00
Claude Paroz
beb7ddbcee
Updated translations from Transifex.
...
Updated Bulgarian, Czech, German, Uzbek, and Vietnamese translations.
Forwardport of 7a1c6533eb
from stable/4.0.x.
2022-01-29 19:01:15 +01:00
Keryn Knight
55022f75c1
Fixed #33465 -- Added empty __slots__ to SafeString and SafeData.
...
Despite inheriting from the str type, every SafeString instance gains
an empty __dict__ due to the normal, expected behaviour of type
subclassing in Python.
Adding __slots__ to SafeData is necessary, because otherwise inheriting
from that (as SafeString does) will give it a __dict__ and negate the
benefit added by modifying SafeString.
2022-01-29 13:50:34 +01:00
Mariusz Felisiak
67db54a5a7
Fixed #33452 -- Fixed admin change-form layout for submit buttons on mid-sized displays.
...
Thanks David Smith for reviews.
2022-01-29 11:59:08 +01:00
Keryn Knight
c5c7a15b09
Fixed #33461 -- Escaped template errors in the technical 500 debug page.
2022-01-28 07:07:12 +01:00
vgolubev
e87f57fdb8
Fixed #26142 -- Allowed model formsets to prevent new object creation.
...
Thanks Jacob Walls, David Smith, and Mariusz Felisiak for reviews.
Co-authored-by: parth <parthvin@gmail.com>
2022-01-27 20:45:21 +01:00
Jörg Breitbart
0af9a5fc7d
Fixed #33463 -- Fixed QuerySet.bulk_update() with F() expressions.
2022-01-27 19:03:26 +01:00
Mariusz Felisiak
e972620ada
Fixed #33462 -- Fixed migration crash when altering type of primary key with MTI and foreign key.
...
This prevents duplicated operations when altering type of primary key
with MTI and foreign key. Previously, a foreign key to the base model
was added twice, once directly and once by the inheritance model.
Thanks bcail for the report.
Regression in 325d7710ce
.
2022-01-27 18:51:39 +01:00
Mariusz Felisiak
2eed554c3f
Fixed wrapping of long messages in the admin.
2022-01-26 21:14:13 +01:00
Carlton Gibson
85f2a9fb0f
Fixed #33407 -- Fixed .radiolist admin CSS.
...
Regression in 5942ab5eb1
.
2022-01-26 09:26:48 +01:00
Ian Foote
a93a1ba347
Fixed broken link to cx_Oracle docs.
2022-01-25 20:14:24 +01:00
Collin Anderson
890bfa368c
Refs #20349 -- Avoided loading testing libraries when not needed.
2022-01-25 11:41:01 +01:00
Jacob Walls
edbf930287
Fixed #29984 -- Added QuerySet.iterator() support for prefetching related objects.
...
Co-authored-by: Raphael Kimmig <raphael.kimmig@ampad.de>
Co-authored-by: Simon Charette <charette.s@gmail.com>
2022-01-25 06:12:04 +01:00
Keryn Knight
c27932ec93
Fixed #33460 -- Used VALUES clause for insert in bulk on SQLite.
...
SQLite 3.7.11 introduced the ability to use multiple values directly.
SQLite 3.8.8 made multiple values not subject to the
SQLITE_LIMIT_COMPOUND_SELECT (500).
2022-01-24 20:51:32 +01:00
Mariusz Felisiak
4ac0bf6acd
Fixed wrapping of long values in technical 500 debug page.
...
Follow up to d5f2d5d604
.
2022-01-24 11:54:41 +01:00
Hrushikesh Vaidya
89d137f3be
Fixed #33457 -- Fixed "Local vars" scrolling in technical 500 debug page.
...
Thanks Keryn Knight for the report and the initial patch.
2022-01-24 07:42:52 +01:00
Timothy McCurrach
efb4478e48
Fixed #33458 -- Fixed encoding of messages with empty string as extra_tags.
2022-01-24 07:05:53 +01:00
Claude Paroz
7c4f396509
Stopped including type="text/css" attributes for CSS link tags.
2022-01-22 16:38:14 +01:00
Jacob Walls
2d8232fa71
Fixed #26760 -- Added --prune option to migrate command.
2022-01-21 17:10:31 +01:00
Fabian Büchler
eeff1787b0
Fixed #33449 -- Fixed makemigrations crash on models without Meta.order_with_respect_to but with _order field.
...
Regression in aa4acc164d
.
2022-01-21 06:44:53 +01:00
Mariusz Felisiak
f605e85af9
Fixed #33453 -- Dropped support for GDAL 2.1.
2022-01-20 18:54:29 +01:00
Hrushikesh Vaidya
3fadf141e6
Fixed #33062 -- Made MultiPartParser remove non-printable chars from file names.
2022-01-20 07:19:52 +01:00
sean_c_hsu
0f6946495a
Fixed #31685 -- Added support for updating conflicts to QuerySet.bulk_create().
...
Thanks Florian Apolloner, Chris Jerdonek, Hannes Ljungberg, Nick Pope,
and Mariusz Felisiak for reviews.
2022-01-19 20:17:42 +01:00
Moritz Duchêne
ba9de2e74e
Updated GEOS/GDAL links in docs and comments.
2022-01-19 19:06:12 +01:00
Adam Johnson
dc8bb35e39
Fixed #33446 -- Added CSS source map support to ManifestStaticFilesStorage.
2022-01-18 12:53:14 +01:00
Nick Pope
fac26684fd
Removed unused buf_size argument to LimitedStream().
...
Unused since its introduction in 269e921756
.
2022-01-18 05:55:14 +01:00
Mariusz Felisiak
30a0144134
Fixed #29338 -- Allowed using combined queryset in Subquery.
...
Thanks Eugene Kovalev for the initial patch, Simon Charette for the
review, and Chetan Khanna for help.
2022-01-17 18:01:07 +01:00
My-Name-Is-Nabil
f37face331
Fixed #33435 -- Fixed invalid SQL generatered by Subquery.as_sql().
2022-01-17 09:00:46 +01:00
Ayush Joshi
0a17666045
Fixed #28135 -- Made simplify_regex() handle non-capturing groups.
2022-01-14 11:01:02 +01:00
Adam Johnson
fdfa97fb16
Fixed #33441 -- Restored immutability of models.Field.__hash__().
...
Regression in 502e75f9ed
.
2022-01-14 07:00:48 +01:00
Ayush Joshi
827bc07047
Refs #28135 -- Refactored out _find_groups()/_get_group_start_end() hooks in admindocs.
2022-01-13 16:33:19 +01:00
Adam Johnson
45a42aabfa
Fixed #29708 -- Deprecated PickleSerializer.
2022-01-13 13:50:20 +01:00
Adam Johnson
c920387fab
Optimized SessionBase.get_expire_at_browser_close().
2022-01-13 13:05:46 +01:00
Adam Johnson
436862787c
Refs #29708 -- Made SessionBase store expiry as string.
2022-01-13 13:05:42 +01:00
Adam Johnson
c6cb5a0277
Refs #29708 -- Stopped inheriting from PickleSerializer by RedisSerializer.
2022-01-13 12:28:06 +01:00
Adam Johnson
08d8bccbf1
Improved Model.__init__() properties loop.
...
This improves readability, accumulates unrecognized arguments raise an
exception with all of them, and avoids refetching the values.
2022-01-13 11:09:37 +01:00
Mariusz Felisiak
0a4a5e5bac
Refs #32681 -- Fixed VariableDoesNotExist when rendering some admin template.
...
Regression in 84609b3205
.
Follow up to 4e5bbb6ef2
.
Thanks Sourav Kumar for the report.
2022-01-13 10:10:48 +01:00
Hrushikesh Vaidya
6815da6e94
Fixed #33396 -- Added view name to technical 500 debug page.
2022-01-13 07:02:41 +01:00
Hrushikesh Vaidya
4099e6e737
Refs #33396 -- Added django.views.debug.get_caller() hook.
2022-01-13 06:50:06 +01:00
Adam Johnson
90cf963264
Changed django.utils.log.log_response() to take exception instance.
...
There's little point retrieving a fresh reference to the exception in
the legacy tuple format, when it's all available via the exception
instance we already have.
2022-01-12 20:23:42 +01:00
Hrushikesh Vaidya
d05ab13c56
Refs #33426 -- Simplified technical_404_response() with ResolverMatch._func_path.
2022-01-12 15:56:59 +01:00
Adam Johnson
84e98ba194
Added exception to SuspiciousOperation logging.
...
This allows better debugging and filtering of errors.
2022-01-12 13:27:25 +01:00
Hrushikesh Vaidya
18a15bbc9c
Fixed #33433 -- Avoided unnecessary resolve() calls in technical_404_response().
...
Thanks Keryn Knight for the initial patch.
2022-01-12 08:23:38 +01:00
Jacob Walls
dc9deea8e8
Fixed #11715 -- Changed default value of ModelAdmin.actions/inlines to empty tuples.
...
This clarifies the intended pattern of overwriting the default value
rather than mutating it.
2022-01-11 12:22:49 +01:00
Mariusz Felisiak
b111b15c12
Refs #30141 -- Removed unused branch in parse_duration().
...
Unused since 99fc5dc13c
.
2022-01-11 11:09:08 +01:00
mgaligniana
fa235004dd
Fixed #13251 -- Made pre/post_delete signals dispatch the origin.
2022-01-11 08:06:18 +01:00
Jacob Walls
6f78cb6b13
Fixed #29026 -- Added --scriptable option to makemigrations.
2022-01-10 18:49:57 +01:00
Keryn Knight
f4b06a3cc1
Fixed #33426 -- Fixed ResolverMatch.__repr_() for class-based views.
...
Regression in 7c08f26bf0
.
2022-01-10 17:30:41 +01:00
Baptiste Mispelon
3d7ac6420c
Simplified @stringfilter decorator and Library with unwrap().
...
Nowadays we can use inspect.unwrap() to retrieve the innermost function
object when needed, and most of the uses of _decorated_function were to
access the original __name__ which is not needed because
@functools.wraps sets that attribute correctly.
2022-01-10 08:31:43 +01:00
Keryn Knight
2a66c102d9
Fixed #33425 -- Fixed view name for CBVs on technical 404 debug page.
...
Regression in 0c0b87725b
.
2022-01-08 13:05:55 +01:00
Mariusz Felisiak
7346c288e3
Refs #32355 -- Removed unnecessary list() calls before reversed() on dictviews.
...
Dict and dictviews are iterable in reversed insertion order using
reversed() in Python 3.8+.
2022-01-07 16:29:15 +01:00
David
4c60c3edff
Fixed #33419 -- Restored marking forms.Field.help_text as HTML safe.
...
Regression in 456466d932
.
Thanks Matt Westcott for the report.
2022-01-07 15:35:31 +01:00
Ad Timmering
bdf3e156b4
Fixed #28628 -- Changed \d to [0-9] in regexes where appropriate.
2022-01-07 12:25:06 +01:00
Allen Jonathan David
28c98d4113
Fixed #33216 -- Simpilified deconstructed paths for some expressions.
2022-01-07 11:19:29 +01:00
Keryn Knight
96e7ff5e9f
Avoided isinstance(…, Variable) calls in FilterExpression.resolve().
...
By determining the variable type within __init__() instead of resolve()
we can skip an isinstance() check at template runtime. Templates are
executed in production more often than the parse trees themselves,
assuming the cached Loader is used.
2022-01-07 10:29:22 +01:00
Baptiste Mispelon
c67e1cf44f
Refs #33348 -- Deprecated passing errors=None to SimpleTestCase.assertFormError()/assertFormsetErrors().
2022-01-06 17:29:32 +01:00
Petter Friberg
bc174e6ea0
Fixed #33410 -- Fixed recursive capturing of callbacks by TestCase.captureOnCommitCallbacks().
...
Regression in d89f976bdd
.
2022-01-06 06:38:17 +01:00
Ad Timmering
806efe912b
Fixed #33400 -- Added support for msg_prefix and count arguments to assertTemplateUsed()/assertTemplateNotUsed() used as context managers.
2022-01-05 12:49:42 +01:00
Ad Timmering
e700a3714f
Refs #33400 -- Renamed SimpleTestCase._assert_template_used() to _get_template_used().
2022-01-05 11:46:26 +01:00
Jamie Matthews
f5233dce30
Fixed #32511 -- Corrected handling prefetched nested reverse relationships.
...
When prefetching a set of child objects related to a set of parent
objects, we usually want to populate the relationship back from the
child to the parent to avoid a query when accessing that relationship
attribute. However, there's an edge case where the child queryset
itself specifies a prefetch back to the parent. In that case, we want
to use the prefetched relationship rather than populating the reverse
relationship from the parent.
2022-01-05 09:49:05 +01:00
Allen Jonathan David
205f67cd5b
Refs #33216 -- Made @deconstructible do not change path for subclasses.
2022-01-04 13:15:29 +01:00
Florian Apolloner
6d343d01c5
Fixed CVE-2021-45452 -- Fixed potential path traversal in storage subsystem.
...
Thanks to Dennis Brinkrolf for the report.
2022-01-04 10:04:12 +01:00
Florian Apolloner
761f449e0d
Fixed CVE-2021-45116 -- Fixed potential information disclosure in dictsort template filter.
...
Thanks to Dennis Brinkrolf for the report.
Co-authored-by: Adam Johnson <me@adamj.eu>
2022-01-04 10:03:56 +01:00
Florian Apolloner
968a3d01fa
Fixed CVE-2021-45115 -- Prevented DoS vector in UserAttributeSimilarityValidator.
...
Thanks Chris Bailey for the report.
Co-authored-by: Adam Johnson <me@adamj.eu>
2022-01-04 10:02:05 +01:00
David Wobrock
482ee63b6f
Fixed #33402 -- Optimized multiple AlterFooTogether operations.
2022-01-04 06:24:03 +01:00
Keryn Knight
0ed2919814
Fixed #33406 -- Avoided creation of MaxLengthValidator(None) when resolving Value.output_field for strings.
...
This brings the behaviour in line with Field subclasses which append to
the validators within __init__(), like BinaryField, and prevents the
creation of a validator which incorrectly throws a TypeError, if it
were used.
2022-01-04 05:51:00 +01:00
Mariusz Felisiak
30613d6a74
Fixed #33408 -- Fixed adding nullable unique fields on SQLite.
...
Regression in 2f73e5406d
.
Thanks Alan Crosswell for the report.
2022-01-04 05:50:00 +01:00
Jacob Walls
0ab58c1209
Refs #29026 -- Allowed customizing InteractiveMigrationQuestioner's prompt destination.
...
Previously, the questioner did not obey the value of stdout provided
to the command.
2022-01-03 12:30:51 +01:00
Mariusz Felisiak
a21a63cc28
Refs #27753 -- Removed unused django.utils.text._replace_entity() and _entity_re.
...
Unused since 157ab32f34
.
2021-12-30 13:19:25 +01:00
Shubh1815
aecfc40c88
Fixed #33300 -- Ensured hidden elements are not displayed on small screens.
2021-12-30 07:57:36 +01:00
Jacob Walls
92412aa94c
Fixed #23273 -- Avoided creation of django_migrations table when there are no migrations to apply.
2021-12-30 06:36:55 +01:00
Mariusz Felisiak
361bb8f786
Refs #26872 -- Fixed wrapping of long choices in ModelAdmin.list_filter.
...
Regression in 269a767146
.
2021-12-29 10:57:23 +01:00
Keryn Knight
d5f2d5d604
Fixed wrapping of long values in technical 500 debug page.
2021-12-29 07:59:45 +01:00
David Smith
950d697b95
Refs #31617 -- Removed redundant title text in filter.html.
...
Unnecessary since 269a767146
.
Title text should provide advisory information and should not be the
same or very similar to the element text.
2021-12-28 13:42:35 +01:00
Hannes Ljungberg
59a66f0512
Refs #33342 -- Deprecated ExclusionConstraint.opclasses.
2021-12-27 08:55:18 +01:00
Tim Graham
ff225fac1d
Refs #29517 -- Removed obsolete PositiveIntegerField test skip.
2021-12-27 06:16:59 +01:00
Hannes Ljungberg
0e656c02fe
Fixed #33342 -- Added support for using OpClass() in exclusion constraints.
2021-12-24 11:39:00 +01:00
David Smith
a0d43a7a6e
Refs #31617 -- Changed dark mode primary-fg to give higher contrast to secondary.
2021-12-23 21:10:25 +01:00
Adam Johnson
5f6a727a6a
Refs #33355 -- Constructed SQLite list aggregate types once.
2021-12-23 12:08:33 +01:00
Adam Johnson
ec7554f1c2
Refs #33355 -- Removed @none_guard from SQLite functions.
...
Co-Authored-By: Nick Pope <nick@nickpope.me.uk>
2021-12-23 12:00:29 +01:00
Adam Johnson
deec15a9a6
Refs #33355 -- Made trunc functions raise ValueError on invalid lookups on SQLite.
...
Co-Authored-By: Nick Pope <nick@nickpope.me.uk>
2021-12-23 11:47:13 +01:00
Adam Johnson
2d991ff661
Refs #33355 -- Moved SQLite functions to separate module.
...
Co-Authored-By: Nick Pope <nick@nickpope.me.uk>
2021-12-23 11:47:08 +01:00
Adam Johnson
fa4b2c15f2
Refs #33355 -- Optimized LPad() database function on SQLite.
...
Co-Authored-By: Nick Pope <nick@nickpope.me.uk>
2021-12-23 06:56:30 +01:00
Mariusz Felisiak
ca04659b4b
Refs #32355 -- Bumped required psycopg2 version to 2.8.4.
...
psycopg2 2.8.4 is the first release to support Python 3.8.
2021-12-22 20:32:55 +01:00
Adam Johnson
c4328c2f4e
Refs #33355 -- Optimized Trunc() on SQLite by using f-strings.
...
Co-Authored-By: Nick Pope <nick@nickpope.me.uk>
2021-12-22 11:47:55 +01:00
Adam Johnson
a8fa3e5cd7
Refs #33355 -- Added missing tests for database functions and expression on null values.
2021-12-22 11:46:18 +01:00
Brenton Partridge
19fb838803
Fixed #32600 -- Fixed Geometry collections and Polygon segmentation fault on macOS ARM64.
2021-12-21 13:00:09 +01:00
Baptiste Mispelon
e95e6425ac
Refs #24121 -- Added __repr__() to BaseFormSet.
2021-12-21 12:06:05 +01:00
vavanade
6045b1f041
Fixed typo in django/forms/widgets.py.
2021-12-21 09:14:58 +01:00
Adam Johnson
33401cba93
Optimized MiddlewareMixin coroutine check.
2021-12-21 08:41:29 +01:00
Adam Johnson
cc752c1c3a
Optimized django.template.autoreload.get_template_directories() a bit.
2021-12-21 08:39:40 +01:00
David Wobrock
72b23c04d8
Fixed #33374 -- Fixed ExpressionWrapper annotations with full queryset.
2021-12-21 06:17:04 +01:00
mendespedro
e8b4feddc3
Fixed #33367 -- Fixed URLValidator crash in some edge cases.
2021-12-20 07:30:22 +01:00
mendespedro
4fd3044ca0
Fixed #33368 -- Fixed parse_duration() crash on invalid separators for decimal fractions.
2021-12-20 06:46:34 +01:00
Adam Johnson
b0d16d0129
Changed signatures of setting_changed signal receivers.
2021-12-17 13:07:04 +01:00
Simon Charette
4328970780
Fixed #33366 -- Fixed case handling with swappable setting detection in migrations autodetector.
...
The migration framework uniquely identifies models by case insensitive
labels composed of their app label and model names and so does the app
registry in most of its methods (e.g. AppConfig.get_model) but it
wasn't the case for get_swappable_settings_name() until this change.
This likely slipped under the radar for so long and only regressed in
b9df2b74b9
because prior to the changes
related to the usage of model states instead of rendered models in the
auto-detector the exact value settings value was never going through a
case folding hoop.
Thanks Andrew Chen Wang for the report and Keryn Knight for the
investigation.
2021-12-17 07:46:58 +01:00
Mariusz Felisiak
40165eecc4
Fixed #33350 -- Reallowed using cache decorators with duck-typed HttpRequest.
...
Regression in 3fd82a6241
.
Thanks Terence Honles for the report.
2021-12-16 20:13:17 +01:00
mgaligniana
068b2c072b
Fixed #30127 -- Deprecated name argument of cached_property().
2021-12-16 18:52:27 +01:00
ahmadekhalili
bf7afe9c4e
Fixed admin CSS for calendar widget for RTL languages.
...
Thanks Theodore Ni and Shai Berger for reviews.
2021-12-16 08:11:13 +01:00
mgaligniana
ac5cc6cf01
Fixed #33316 -- Added pagination to admin history view.
2021-12-15 10:54:08 +01:00
mgaligniana
ff0b81b56b
Refs #33316 -- Moved paginator styles to base.css.
2021-12-15 10:54:08 +01:00
Jacob Walls
76ccce64cc
Fixed #16063 -- Adjusted admin changelist searches spanning multi-valued relationships.
...
This reduces the likelihood of admin searches issuing queries with
excessive joins.
2021-12-15 08:14:19 +01:00
Florian Apolloner
e1d673c373
Fixed unescape_string_literal() crash on empty strings.
2021-12-14 20:19:44 +01:00
mdalp
3b73f77ad4
Fixed #33358 -- Fixed handling timedelta < 1 day in schema operations on Oracle.
2021-12-14 09:08:25 +01:00
Jeremy Lainé
2f33217ea2
Fixed #33361 -- Fixed Redis cache backend crash on booleans.
2021-12-14 07:16:30 +01:00
Adam Johnson
41329b9852
Improved wording in password validators docs and docstrings.
2021-12-13 18:53:07 +01:00
Adam Johnson
5111b636d9
Refs #33355 -- Fixed Trunc() with years < 1000 on SQLite.
...
Thanks to Nick Pope for spotting the bug in Code Review.
Co-Authored-By: Nick Pope <nick@nickpope.me.uk>
2021-12-13 11:50:45 +01:00
mendespedro
75485d16a2
Fixed #33351 -- Made path()/re_path() raise TypeError when kwargs argument is not a dict.
2021-12-13 08:09:28 +01:00
Mariusz Felisiak
2f73e5406d
Refs #32502 -- Avoided table rebuild when adding fields with no default on SQLite.
2021-12-10 17:13:05 +01:00
Mariusz Felisiak
57f0638573
Fixed DatabaseFeatures.requires_literal_defaults on SQLite.
...
This flag is currently unused on SQLite because it doesn't support
dropping a DEFAULT clause, however it requires literal defaults, rather
than parameterized ones, so we can set it for clarity.
2021-12-10 12:06:46 +01:00
Mariusz Felisiak
4e249d11a6
Refs #32502 -- Added SchemaEditor.prepare_default() on SQLite.
2021-12-10 12:05:58 +01:00
Adam Johnson
702c314c57
Moved ManagementForm's fields to class attributes.
...
This helps introspection, and it follows the comment in
BaseForm.__init__() to avoid changing base_fields.
Thanks to Silvio Gutierrez and Baptiste Mispelon for investigating.
2021-12-10 10:04:28 +01:00
Adam Johnson
1be99e4e0a
Corrected return value of ForeignKey.db_check().
...
Field.db_check() should return None or a SQL string.
Returning [] happened to work because it’s falsey.
2021-12-10 09:22:09 +01:00
Arsa
17df72114e
Fixed #33340 -- Fixed unquoted column names in queries used by DatabaseCache.
2021-12-09 11:16:04 +01:00
David Smith
eba9a9b7f7
Refs #32338 -- Added Boundfield.legend_tag().
2021-12-09 07:16:33 +01:00
Ömer Faruk Abacı
81739a45b5
Fixed #33319 -- Fixed crash when combining with the | operator querysets with aliases that conflict.
2021-12-08 21:16:24 +01:00
Ömer Faruk Abacı
f1bfdff690
Refs #33319 -- Added comment about keys/values assertion in Query.change_aliases().
2021-12-08 21:16:24 +01:00
Baptiste Mispelon
cb383753c0
Fixed #33346 -- Fixed SimpleTestCase.assertFormsetError() crash on a formset named "form".
...
Thanks OutOfFocus4 for the report.
Regression in 456466d932
.
2021-12-08 20:33:03 +01:00
Shreya Bamne
8a4e506760
Fixed #19721 -- Allowed admin filters to customize the list separator.
2021-12-08 15:25:52 +01:00
Keryn Knight
7d02fa9433
Refs #32290 -- Optimized construct_relative_path() by delay computing has_quotes.
2021-12-08 08:17:54 +01:00
Erik Cederstrand
547656c850
Refs #25265 -- Allowed customizing Query's datastructure classes.
2021-12-07 13:36:50 +01:00
Adam Johnson
063cf98d3a
Fixed #31765 -- Enforced enhanced ALTER TABLE behavior for SQLite connections.
2021-12-07 12:32:05 +01:00
Claude Paroz
da7062be45
Removed unused map_options JS variable.
...
map_options is not referenced at all in OLMapWidget.js.
Unused since 2ebfda38e6
.
2021-12-07 08:59:56 +01:00
Florian Apolloner
d4dcd5b9dd
Fixed #30530 , CVE-2021-44420 -- Fixed potential bypass of an upstream access control based on URL paths.
...
Thanks Sjoerd Job Postmus and TengMA(@te3t123) for reports.
2021-12-07 06:28:08 +01:00
Mariusz Felisiak
628b6a6869
Updated translations from Transifex.
...
This also fixes related i18n tests.
Forwardport of 4c5215ab03
from stable/4.0.x
Co-authored-by: Claude Paroz <claude@2xlibre.net>
2021-12-06 20:31:03 +01:00
Hannes Ljungberg
1eaf38fa87
Fixed #33335 -- Made model validation ignore functional unique constraints.
...
Regression in 3aa545281e
.
Thanks Hervé Le Roy for the report.
2021-12-06 07:59:11 +01:00
Maxim Piskunov
d3f4c2b95d
Fixed #33078 -- Added support for language regions in i18n_patterns().
2021-12-03 12:57:06 +01:00
Mariusz Felisiak
2c7846d992
Fixed #33333 -- Fixed setUpTestData() crash with models.BinaryField on PostgreSQL.
...
This makes models.BinaryField pickleable on PostgreSQL.
Regression in 3cf80d3fcf
.
Thanks Adam Zimmerman for the report.
2021-12-03 11:56:22 +01:00
Georgi Yanchev
9c1fe446b6
Fixed #33339 -- Made QuerySet.bulk_create() use TO_NCLOB() for TextFields on Oracle.
2021-12-03 07:39:20 +01:00
Nick Pope
97e9a84d27
Removed unused country argument from GeoIP2._check_query().
...
Unused since its introduction in 79e68c225b
.
2021-12-02 11:30:42 +01:00
Nick Pope
7d5058d870
Removed redundant GeoIP2._check_query() calls.
2021-12-02 11:30:42 +01:00
Nick Pope
adcb3a7a27
Removed unused GeoIP2._cache attribute.
...
Unused since its introduction in 79e68c225b
.
2021-12-02 11:30:32 +01:00
Nick Pope
31bef51d8e
Moved unnecessary inner import in GeoIP2.geos().
2021-12-02 11:27:33 +01:00
Mariusz Felisiak
5def7f3f74
Updated various links to HTTPS and new locations.
...
Co-Authored-By: Nick Pope <nick@nickpope.me.uk>
2021-12-02 11:27:29 +01:00
Simon Charette
e5a92d400a
Fixed #33282 -- Fixed a crash when OR'ing subquery and aggregation lookups.
...
As a QuerySet resolves to Query the outer column references grouping logic
should be defined on the latter and proxied from Subquery for the cases where
get_group_by_cols is called on unresolved expressions.
Thanks Antonio Terceiro for the report and initial patch.
2021-12-02 07:23:33 +01:00
Simon Charette
e3bde71676
Refs #32690 -- Altered lookups Query rhs alterations during initialization.
...
Having it happen at the lookup creation time ensures entry points
called before the compilation phase (e.g. get_group_by_cols) don't have
to duplicate the logic in charge of altering Query instances used as
rhs.
It also has the nice effect of reducing the amount of time the
alteration logic to once as opposed to multiple times if the queryset
is compiled more than once.
2021-12-02 07:00:52 +01:00
Przemysław Suliga
4ce59f602e
Fixed #30398 -- Added CONN_HEALTH_CHECKS database setting.
...
The CONN_HEALTH_CHECKS setting can be used to enable database
connection health checks for Django's persistent DB connections.
Thanks Florian Apolloner for reviews.
2021-12-01 07:44:48 +01:00
Claude Paroz
64c3f049ea
Fixed #33047 -- Fixed CheckConstraint crash with GIS lookups on PostGIS and MySQL GIS backends.
...
Thanks Daniel Swain for the report and Arsalan Ghassemi for the initial
patch.
Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2021-11-30 20:06:29 +01:00
Claude Paroz
322a1a037d
Refs #25706 - Removed inline JavaScript from OpenLayers template.
...
This allows setting a Content-Security-Policy HTTP header.
2021-11-30 06:35:15 +01:00
Chris Jerdonek
3ff7f6cf07
Refs #32800 -- Renamed _sanitize_token() to _check_token_format().
2021-11-29 10:48:31 +01:00
Chris Jerdonek
5d80843ebc
Fixed #32800 -- Changed CsrfViewMiddleware not to mask the CSRF secret.
...
This also adds CSRF_COOKIE_MASKED transitional setting helpful in
migrating multiple instance of the same project to Django 4.1+.
Thanks Florian Apolloner and Shai Berger for reviews.
Co-Authored-By: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2021-11-29 10:47:39 +01:00
Shubh1815
05e29da421
Fixed #32545 -- Improved admin widget for raw_id_fields for UUIDFields.
...
Co-Authored-By: Jerome Leclanche <jerome@leclan.ch>
2021-11-29 07:16:26 +01:00
Hannes Ljungberg
ed2018037d
Fixed #33322 -- Fixed loss of assigned related object when saving relation with bulk_update().
2021-11-29 06:27:22 +01:00
Baptiste Mispelon
9ac92b1efc
Refs #33301 -- Made SimpleTestCase.assertFormError()/assertFormsetErrors() raise ValueError for non test client responses.
2021-11-26 13:10:43 +01:00
Hasan Ramezani
24b316536a
Fixed #33303 -- Changed messages' level tags on MESSAGE_TAGS setting change.
2021-11-26 07:09:31 +01:00
Ad Timmering
9a6e2df3a8
Fixed #32397 -- Made startapp/startproject management commands set User-Agent.
...
This sets User-Agent to 'Django/<version>'.
2021-11-25 20:36:04 +01:00
Mariusz Felisiak
e361621dbc
Removed unneeded can_use_chunked_reads feature flag on SQLite.
...
Unneeded since c0e3c65b9d
.
2021-11-25 20:08:46 +01:00
Shubh1815
51c24d8799
Fixed #33024 -- Fixed height of admin selector boxes in collapsed fieldset.
...
Thanks Tom Carrick for the review.
2021-11-25 07:57:19 +01:00
Ad Timmering
59f4796918
Fixed #4282 -- Made startapp/startproject management commands honor umask.
...
Co-authored-by: Christian Schmitt <c.schmitt@briefdomain.de>
2021-11-24 13:10:45 +01:00
Mariusz Felisiak
1555e5850d
Removed unneeded supports_combined_alters feature flag on Oracle.
...
supports_combined_alters is False by default.
2021-11-24 10:23:43 +01:00
Álvaro Pelegrina Fernández
98352ddf3a
Fixed #33310 -- Removed unused rule from admin CSS.
...
Unused since 30e59705fc
.
2021-11-23 21:14:36 +01:00
arsalan.ghassemi
bdcda1ca9b
Fixed #33309 -- Fixed QuerySet.distinct() crash on mixed case annotation.
2021-11-23 20:43:20 +01:00
Simon Charette
aec71aaa5b
Fixed #33304 -- Allowed passing string expressions to Window(order_by).
2021-11-23 07:58:44 +01:00
Simon Charette
e06dc4571e
Refs #33304 -- Enclosed aggregate ordering logic in an expression.
...
This greatly simplifies the implementation of contrib.postgres'
OrderableAggMixin and allows for reuse in Window expressions.
2021-11-23 07:28:27 +01:00
Baptiste Mispelon
e6e664a711
Fixed #33302 -- Made element_id optional argument for json_script template filter.
...
Added versionchanged note in documentation
2021-11-22 11:52:19 +01:00
Baptiste Mispelon
a0ed3cfad1
Fixed #33305 -- Fixed autodetector crash for ForeignKey with hardcoded "to" attribute.
...
Co-authored-by: Simon Charette <charette.s@gmail.com>
2021-11-22 06:46:25 +01:00
SwastikTripathi
a7e7043c87
Fixed #33229 -- Fixed BaseDatabaseOperations.adapt_datetimefield_value()/adapt_timefield_value() crash with expressions.
2021-11-19 09:47:57 +01:00
Jonny Park
6fa2930573
Refs #24121 -- Added __repr__() to BaseDatabaseWrapper, JoinPromoter, and SQLCompiler.
2021-11-19 07:57:02 +01:00
jhisham
5e218cc0b7
Added Malay language.
2021-11-18 20:57:50 +01:00
Shubh1815
bb223c6f78
Fixed #28357 -- Fixed ModelAdmin.prepopulated_fields on newly added stacked inline.
...
Thanks Jakob Köhler for the initial patch.
2021-11-16 12:24:56 +01:00
Maxim Piskunov
12fe3224f5
Fixed #33287 -- Made GeoJSON serializer use json.loads() instead of eval().
...
Thanks David Wyde for the report.
2021-11-15 20:34:33 +01:00
SwastikTripathi
76f07b4fcf
Fixed #33278 -- Improved error for connection/query attempts against disallowed databases in tests.
2021-11-15 11:46:10 +01:00
Simon Charette
560ff988dd
Refs #33288 -- Removed SQLite's DatabaseIntrospection._get_foreign_key_constraints().
...
The get_relations() method returns the exact same data in a more generic
format.
2021-11-15 08:20:30 +01:00
Simon Charette
483e30c3d5
Fixed #33288 -- Made SQLite introspection use information schema for relations.
...
Previous solution was using brittle and complex parsing rules to
extract them from the SQL used to define the tables.
Removed a now unnecessary unit test that ensured the removed parsing
logic accounted for optional spacing.
2021-11-15 08:07:07 +01:00
Simon Charette
30ec7fe89a
Refs #33288 -- Made SQLite introspection raise DatabaseError on nonexistent tables.
...
All the other backends behave this way and we had to make adjustments
to our test suite to account for this discrepancy.
This also allows SQLite's get_relations() not to raise on a nonexistent
table while making sure the InspectDBTestCase.test_introspection_errors
test which ensures an error during introspection is surfaced in
generated models files still passes.
2021-11-15 07:57:00 +01:00
Krzysztof Jagiello
8d9827c06c
Fixed #33161 -- Enabled durability check for nested atomic blocks in TestCase.
...
Co-Authored-By: Adam Johnson <me@adamj.eu>
2021-11-12 13:05:56 +01:00
Can Sarigol
661316b066
Fixed #33279 -- Fixed handling time zones with "-" sign in names.
...
Thanks yakimka for the report.
Regression in fde9b7d35e
.
2021-11-12 07:30:02 +01:00
Claude Paroz
78163d1ac4
Moved RequestSite import to the toplevel.
2021-11-12 06:41:48 +01:00
Lie Ryan
05cde4764d
Fixed #33269 -- Made AnonymousUser/PermissionsMixin.has_perms() raise ValueError on string or non-iterable perm_list.
2021-11-11 20:26:29 +01:00
Ad Timmering
4bfe8c0eec
Fixed #6106 -- Prevented makemessages from changing .po files when up to date.
...
Co-authored-by: Daniyal Abbasi <abbasi.daniyal98@gmail.com>
2021-11-11 09:12:05 +01:00
Mariusz Felisiak
0b95a96ee1
Removed DatabaseIntrospection.get_key_columns().
...
Thanks Simon Charette for the report.
2021-11-10 16:38:43 +01:00
Tim Graham
afea68ca51
Fixed DatabaseIntrospection.get_relations() docstring.
...
The foreign keys are "in" the given table, not "to" it.
2021-11-10 06:21:36 +01:00
Mariusz Felisiak
6bc437c0d8
Refs #33263 -- Added warning to BaseDeleteView when delete() method is overridden.
...
Follow up to 3a45fea083
.
2021-11-09 09:03:40 +01:00
Baptiste Mispelon
91acfc3514
Fixed #33264 -- Made test runner return non-zero error code for unexpected successes.
2021-11-08 20:19:21 +01:00
Matthijs Kooijman
1a5023883b
Fixed #33257 -- Fixed Case() and ExpressionWrapper() with decimal values on SQLite.
2021-11-08 18:02:56 +01:00
Keryn Knight
4f8c7fd9d9
Fixed #32980 -- Made models cache related managers.
2021-11-08 08:44:12 +01:00
Mariusz Felisiak
ba9ced3e9a
Fixed #33253 -- Reverted "Fixed #32319 -- Added ES module support to ManifestStaticFilesStorage."
...
This reverts commit 91e21836f6
.
`export` and `import` directives have several syntax variants and not
all of them were properly covered.
Thanks Hervé Le Roy for the report.
2021-11-05 12:11:18 +01:00
David Smith
c6c6cd3c5a
Fixed #33235 -- Removed "for = ..." from MultiWidget's <label>.
...
This improves accessibility for screen reader users.
2021-11-05 11:05:52 +01:00
Carlton Gibson
4816dc9428
Fixed #33237 -- Fixed detecting source maps in ManifestStaticFilesStorage for multiline files.
...
Switched regex to multiline mode in order to match per-line, rather
than against the whole file.
Thanks to Joseph Abrahams for the report.
Regression in 781b44240a
.
2021-11-04 20:28:35 +01:00
Guilherme Martins Crocetti
fc565cb539
Fixed #27147 -- Allowed specifying bounds of tuple inputs for non-discrete range fields.
2021-11-04 19:08:57 +01:00
Hannes Ljungberg
a934d377af
Fixed #33262 -- Fixed crash of conditional aggregation on Exists().
2021-11-04 06:31:32 +01:00
Hannes Ljungberg
25157033e9
Fixed #33260 -- Fixed crash when chaining QuerySet.exists() after select_for_update(of=()).
2021-11-03 20:08:14 +01:00
Keryn Knight
a697424969
Fixed #32996 -- Cached PathInfos on relations.
...
PathInfo values are ostensibly static over the lifetime of the object
for which they're requested, so the data can be memoized, quickly
amortising the cost over the process' duration.
2021-11-03 11:27:04 +01:00
Iuri de Silvio
3ff7b15bb7
Fixed #33252 -- Made cache middlewares thread-safe.
2021-11-03 09:39:27 +01:00
tim-mccurrach
1f9874d4ca
Refs #33245 -- Minor edits to django.utils.html.urlize() changes.
...
Follow up to ad81b606a2
.
2021-11-03 08:14:50 +01:00
Roman
407fe95cb1
Fixed #32691 -- Made Exact lookup on BooleanFields compare directly to a boolean value on MySQL.
...
Performance regression in 37e6c5b79b
.
Thanks Todor Velichkov for the report.
Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2021-11-02 21:30:21 +01:00
jordan.bae
aaf9b55858
Fixed #33187 -- Made inspectdb handle ForeignKey.to_field attribute.
2021-11-02 18:53:11 +01:00
Mariusz Felisiak
dab48b7482
Fixed #33234 -- Fixed autodetector crash for proxy models inheriting from non-model class.
...
Regression in aa4acc164d
.
Thanks Kevin Marsh for the report.
2021-11-02 15:34:08 +01:00
Hasan Ramezani
c069ee0b9d
Fixed #33224 -- Removed DatabaseFeatures.supports_mixed_date_datetime_comparisons.
2021-11-02 07:30:38 +01:00
andrewdotn
9e6d631697
Fixed #33246 -- Made squashmigrations raise CommandError when squashed_name already exists.
2021-11-02 07:13:42 +01:00
Timothy McCurrach
ad81b606a2
Fixed #33245 -- Made django.utils.html.urlize() thread-safe.
...
Regression in e567670b1a
.
2021-11-01 06:27:58 +01:00
Pratyush Mittal
f38458fe56
Fixed #33236 -- Fixed assertHTMLEqual() error messages for escaped HTML.
2021-10-29 12:09:23 +02:00
Chinmoy
073b7b5915
Fixed #33228 -- Changed value of BaseDatabaseFeatures.has_case_insensitive_like to False.
2021-10-28 17:56:29 +02:00
Mariusz Felisiak
8e3b1cf098
Removed unused model's Options.installed.
...
Unused since f9698c4391
.
2021-10-28 16:08:59 +02:00
Iuri de Silvio
afeafd6036
Fixed #33201 -- Made RenameModel operation a noop for models with db_table.
2021-10-27 12:41:29 +02:00
Matteo Vitali
3f1f8b9376
Fixed #33182 -- Moved admin dark mode vars to separate stylesheet and template block.
2021-10-27 10:34:01 +02:00
Anv3sh
69af4d09ba
Fixed #32672 -- Fixed introspection of primary key constraints on SQLite.
...
Thanks Simon Charette for the implementation idea.
2021-10-26 09:50:23 +02:00
Jacob Walls
def09bf412
Fixed #27079 -- Avoided multiple setUpClass()/tearDownClass() calls in LiveServerTestCase tests.
2021-10-26 07:47:40 +02:00
David Wobrock
0314593fe8
Fixed #31503 -- Made autodetector remove unique/index_together before altering fields.
2021-10-25 10:10:02 +02:00
Hasan Ramezani
c1e4111c74
Fixed #33205 -- Made call_command() raise TypeError when dest with multiple arguments is passed.
2021-10-25 07:48:06 +02:00
Manaia Junior
551c997fea
Fixed #33214 -- Added BaseDatabaseOperations.format_for_duration_arithmetic() stub method.
2021-10-22 08:19:02 +02:00
David Smith
480191244d
Fixed #25916 -- Added lastmod support to sitemap index view.
...
Co-authored-by: Matthew Downey <matthew.downey@webit.com.au>
2021-10-21 15:26:22 +02:00
Carlton Gibson
2ccc0b22db
Fixed #33211 -- Updated tests for Selenium 4.0.0.
...
Replaced deprecated `find_element[s]_by_*()` usages, in favour of
`find_element[s]()` with an explicit `By`.
2021-10-21 14:37:16 +02:00
Carlton Gibson
8fa974fcdd
Refs #33211 -- Added assertCountSeleniumElements() test helper.
2021-10-21 14:37:16 +02:00
Adam Johnson
45f48ed4f7
Made F deconstruction omit 'expressions' in the path.
2021-10-21 09:40:52 +02:00
Vinay Karanam
8806e8809e
Fixed #33043 -- Made method_decorator() preserve wrapper assignments.
...
Regression in f434f5b84f
.
2021-10-20 16:48:00 +02:00
Shreya Bamne
004b4620f6
Fixed #32987 -- Added system check for template tag modules with the same name.
...
Co-authored-by: Daniel Fairhead <daniel@dev.ngo>
2021-10-20 11:15:47 +02:00
Daniel Fairhead
b98394fa62
Refs #32987 -- Refactored out get_template_tag_modules().
2021-10-20 09:40:15 +02:00
David Smith
7ef0bc922c
Refs #32956 -- Capitalized HTTP/HTTPS in comments, docs, and docstrings.
2021-10-20 08:40:19 +02:00
Simon Charette
5896aa8367
Fixed #33197 -- Made field rename with prior matching db_column change a noop.
...
Thanks Jacob Walls for the report.
2021-10-19 06:46:35 +02:00
David Smith
69b0736fad
Refs #32956 -- Changed docs to treat the acronym HTTP phonetically.
2021-10-18 21:00:28 +02:00
Hannes Ljungberg
86971c4090
Fixed #33194 -- Fixed migrations when altering a field with functional indexes/unique constraints on SQLite.
...
This adjusts Expressions.rename_table_references() to only update alias
when needed.
Regression in 83fcfc9ec8
.
Co-authored-by: Simon Charette <charettes@users.noreply.github.com>
2021-10-18 08:25:23 +02:00
Claude Paroz
e567670b1a
Fixed #33195 -- Refactored urlize() based on a class.
...
This allows easier customization/
2021-10-15 09:20:01 +02:00
Carlton Gibson
4a58dfd9db
Refs #30509 -- Adjusted internal FileResponse variable name.
...
Follow up to dc724c5bf9
.
2021-10-15 07:29:55 +02:00
Jacob Walls
15683cdb95
Fixed #23953 -- Made makemigrations continue number sequence for squashed migrations.
2021-10-15 06:59:31 +02:00
Claude Paroz
514c16e85f
Removed unused DOTS list.
...
Unused since 4ff389dcdc
.
2021-10-14 19:56:37 +02:00
Piotr Kunicki
dc724c5bf9
Fixed #30509 -- Made FileResponse better handle buffers and non-zero file offsets.
2021-10-14 15:05:04 +02:00
Martin Svoboda
cc4cb95bef
Fixed #33008 -- Fixed prefetch_related() for deleted GenericForeignKeys.
...
Thanks Simon Charette for the implementation idea.
2021-10-14 12:37:03 +02:00
Erik Cederstrand
14c8504a37
Refs #25265 -- Allowed Query subclasses to build filters.
2021-10-13 07:31:25 +02:00
Jacob Walls
32f1fe5f89
Fixed #29470 -- Logged makemigrations automatic decisions in non-interactive mode.
2021-10-12 15:19:39 +02:00
Ade Lee
d10c7bfe56
Fixed #28401 -- Allowed hashlib.md5() calls to work with FIPS kernels.
...
md5 is not an approved algorithm in FIPS mode, and trying to instantiate
a hashlib.md5() will fail when the system is running in FIPS mode.
md5 is allowed when in a non-security context. There is a plan to add a
keyword parameter (usedforsecurity) to hashlib.md5() to annotate whether
or not the instance is being used in a security context.
In the case where it is not, the instantiation of md5 will be allowed.
See https://bugs.python.org/issue9216 for more details.
Some downstream python versions already support this parameter. To
support these versions, a new encapsulation of md5() has been added.
This encapsulation will pass through the usedforsecurity parameter in
the case where the parameter is supported, and strip it if it is not.
Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2021-10-12 08:58:27 +02:00
Christophe Henry
b1b26b37af
Fixed #33178 -- Made createsuperuser validate required fields passed in options in interactive mode.
2021-10-12 08:08:05 +02:00
Christophe Henry
4ff500f294
Refs #21755 -- Fixed createsuperuser crash for required foreign keys passed in options in interactive mode.
...
Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2021-10-12 06:59:46 +02:00
Mariusz Felisiak
da266b3c5c
Refs #29628 , Refs #33178 -- Made createsuperuser validate password against required fields passed in options.
2021-10-12 06:21:14 +02:00
Abhyudai
7872971dfb
Fixed #33149 -- Made test runner --pdb option work with subTest().
...
Thanks Lucidot for the report and Mariusz Felisiak for the initial
patch.
2021-10-11 10:47:33 +02:00
Seonghyeon Cho
aa0d796e37
Refs #32900 -- Restored '[y/N]' in questioner prompt when merging migrations.
...
Regression in 02bc7161ec
.
2021-10-11 09:04:09 +02:00
Christophe Henry
df2d2bc95c
Fixed #33151 -- Fixed createsuperuser crash for many-to-many required fields in non-interactive mode.
2021-10-07 12:37:16 +02:00
Bernd Wechner
2116238d5f
Fixed #33131 -- Improved error messages for clashing reverse accessor names.
2021-10-06 12:33:15 +02:00
Maxim Milovanov
1c802ca2a9
Fixed #33156 -- Used sessionStorage to preserve quick filter for admin's navigation sidebar.
2021-10-06 09:01:31 +02:00
Jacob Walls
47f791f132
Fixed #23408 -- Added migrations questioner prompt for adding unique fields with a callable default.
2021-10-06 08:05:33 +02:00
Simon Charette
0f3e1a54bf
Refs #26430 -- Removed unused branch in sql.Query.get_count().
...
Now that sql.Query.get_aggregation() properly deals with empty result
sets summary Count() annotations cannot result in None.
Unused since 9f3cce172f
.
2021-10-06 07:25:17 +02:00
Jacob Walls
f153e9214f
Refs #29026 -- Added log() to makemigrations.
2021-10-05 06:57:01 +02:00
Nick Pope
a3185a6701
Refs #33107 -- Optimized cached_import() helper.
2021-10-04 07:47:49 +02:00
Nick Pope
c2f6c05c4c
Refs #32943 -- Added support for covering exclusion constraints using SP-GiST indexes on PostgreSQL 14+.
2021-10-01 13:11:37 +02:00
Nick Pope
e76f9d5b44
Refs #32943 -- Added support for covering SP-GiST indexes on PostgreSQL 14+.
2021-10-01 13:11:34 +02:00
Nick Pope
bd47b9bc81
Fixed #32961 -- Added BitXor() aggregate to django.contrib.postgres.
2021-10-01 10:32:39 +02:00
Nick Pope
000d430234
Fixed typo in exception message for GiST indexes and exclusion constraints.
2021-10-01 09:46:36 +02:00
Daniel Hahler
98c8bf1cee
Fixed #33160 -- Avoided suppressing query errors in _nodb_cursor() on PostgreSQL.
2021-10-01 07:23:57 +02:00
Yash Jhunjhunwala
492ed60f23
Fixed #33029 -- Allowed multiple popups for self-related fields in admin.
2021-09-30 15:42:30 +02:00
Adam Johnson
37d9ea5d5c
Optimized @async_unsafe.
...
Switched the order of the checks to reduce the overhead. Async unsafe methods
are *normally* called syncrhonously, so we can avoid the overhead of checking
the environment variable in the regular path.
2021-09-30 12:16:00 +02:00
Aljaž Košir
7b8beeee3d
Fixed #33155 -- Made ModelChoiceIteratorValue instances hashable.
2021-09-30 12:07:50 +02:00
Mariusz Felisiak
903aaa35e5
Fixed #33159 -- Reverted "Fixed #32970 -- Changed WhereNode.clone() to create a shallow copy of children."
...
This reverts commit e441847eca
.
A shallow copy is not enough because querysets can be reused and
evaluated in nested nodes, which shouldn't mutate JOIN aliases.
Thanks Michal Čihař for the report.
2021-09-30 11:26:17 +02:00
David Wobrock
dd1fa3a31b
Fixed #33018 -- Fixed annotations with empty queryset.
...
Thanks Simon Charette for the review and implementation idea.
2021-09-29 20:23:29 +02:00
David Wobrock
ad36a198a1
Fixed #33141 -- Renamed Expression.empty_aggregate_value to empty_result_set_value.
2021-09-29 12:58:01 +02:00
Chenyang Yan
36d54b7a14
Fixed #33027 -- Made autoreloader pass -X options.
2021-09-29 11:37:50 +02:00
David Smith
4884a87e02
Fixed #33134 -- Fixed recursion depth error when rendering Form with BoundFields.
...
Regression in 456466d932
.
2021-09-29 08:04:42 +02:00
Chinmoy Chakraborty
b7fd668b37
Fixed #33033 -- Prevented models.DecimalField from accepting NaN values.
2021-09-28 13:20:14 +02:00
Jordan Bae
f5a3243911
Fixed #33125 -- Avoided redundant unique constraint when converting a non-unique field to primary key on MySQL and PostgreSQL.
2021-09-28 06:20:37 +02:00
Claude Paroz
4ffada3609
Fixed #33136 -- Added GEOSGeometry.make_valid() method.
2021-09-27 09:58:28 +02:00
Mariusz Felisiak
fb05ca420d
Used Path.read_text() in jinja2.get_exception_info().
2021-09-27 09:55:02 +02:00
Mariusz Felisiak
5bac1719a2
Refs #32355 -- Used @functools.lru_cache as a straight decorator.
2021-09-27 09:10:58 +02:00
Adam Johnson
840ad06300
Refs #32355 -- Modernized subprocess.run() calls.
2021-09-27 08:20:24 +02:00
ali
ca58378390
Fixed #33114 -- Defined default output_field of StringAgg.
...
Thanks Simon Charette for the review.
2021-09-27 06:58:54 +02:00
Keryn Knight
06c50cee0f
Fixed #33124 -- Avoided accessing the database connections when not necessary.
...
Follow up to bf5abf1bdc
.
This also caches the __getitem__ access.
2021-09-24 12:19:39 +02:00
Jaap Roes
7fe9b6f6df
Fixed #33130 -- Restored form errors to be a dict.
...
Regression in 456466d932
.
2021-09-24 10:50:41 +02:00
Jaap Roes
b1bf8c8a4b
Fixed #33132 -- Fixed test client handling of querystring only redirects.
...
Regression in 1e5aa8e1c7
.
2021-09-24 08:22:28 +02:00
Hasan Ramezani
f997c81472
Fixed #33127 -- Added error messages on | and & operators with combined querysets.
2021-09-24 06:59:22 +02:00
Carlton Gibson
25cbd1e6aa
Refs #33129 -- Added missing return statement.
...
Thanks to Claude Paroz for spotting it.
Regression in 221b2f85fe
.
2021-09-23 15:36:01 +02:00
Mariusz Felisiak
3b9fe906bf
Fixed #33133 -- Fixed handling NullBooleanField in historical migrations.
...
Regression in d992f4e3c2
.
2021-09-23 10:36:30 +02:00
Nick Pope
448d974d96
Fixed #32499 -- Escaped additional metacharacters in simplify_regex().
2021-09-22 11:59:59 +02:00
Nick Pope
85540da930
Refs #32499 -- Fixed escaped metacharacters in simplify_regex().
2021-09-22 11:59:59 +02:00
Nick Pope
27189af8cf
Refs #32499 -- Added metacharacters helper for simplify_regex().
2021-09-22 11:59:59 +02:00
Mariusz Felisiak
221b2f85fe
Fixed #33129 -- Dropped support for MariaDB 10.2.
2021-09-22 11:57:54 +02:00
Illia Volochii
bc4c7e5d68
Optimized handling case-insensitive mappings.
...
Elements yielded by _destruct_iterable_mapping_values are always
unpacked. Since unpacking can be done with any iterable, there is no
need to convert elements to tuples. Also, such elements can be used
directly in for loops, creating a dictionary of them is excessive.
Co-authored-by: Nick Pope <nick@nickpope.me.uk>
2021-09-22 09:26:21 +02:00
Carlton Gibson
b0ed619303
Fixed #33083 -- Fixed selecting all items in the admin changelist when actions are both top and bottom.
...
Thanks Benjamin Locher for the report.
Regression in 30e59705fc
.
2021-09-21 19:58:00 +02:00
Mariusz Felisiak
7d909b2282
Updated source translation catalogs.
...
Forwardport of 5b8cc4ce26
from stable/4.0.x.
2021-09-21 13:40:07 +02:00
Hasan Ramezani
2f0f30f973
Fixed #33111 -- Fixed passing object to ModelAdmin.get_inlines() when editing in admin change view.
...
ModelAdmin.get_inlines() should get an unmutated object when creating
formsets during POST request.
2021-09-21 13:12:09 +02:00
Mariusz Felisiak
1bb8200f2f
Refs #32204 -- Replaced three dots with ellipsis in navigation sidebar template.
2021-09-21 10:19:14 +02:00
Cleiton Lima
8eb5693091
Fixed #33070 -- Fixed loading translations with language subtags in admin's Select2 widget.
2021-09-21 07:18:37 +02:00
Mariusz Felisiak
32b7ffc2bb
Increased the default PBKDF2 iterations for Django 4.1.
2021-09-20 21:23:01 +02:00
Mariusz Felisiak
8b6d0333cf
Advanced deprecation warnings for Django 4.1.
2021-09-20 21:23:01 +02:00
Mariusz Felisiak
737fa72ae3
Refs #32191 -- Removed for the pre-Django 3.2 format of messages in CookieStorage.
...
Per deprecation timeline.
2021-09-20 21:23:01 +02:00
Mariusz Felisiak
05f3a6186e
Refs #32193 -- Removed MemcachedCache per deprecation timeline.
2021-09-20 21:23:01 +02:00
Mariusz Felisiak
e2be307b3a
Refs #31235 -- Made assertQuerysetEqual() not call repr() on a queryset when compared to string values.
...
Per deprecation timeline.
2021-09-20 21:23:01 +02:00
Mariusz Felisiak
75d6c4ae6d
Refs #31180 -- Removed default_app_config application configuration variable per deprecation timeline.
2021-09-20 21:23:01 +02:00
Mariusz Felisiak
d25710a625
Refs #31670 -- Removed whitelist argument and domain_whitelist attribute in EmailValidator per deprecation timeline.
2021-09-20 21:23:01 +02:00
Mariusz Felisiak
1cb495074f
Refs #31546 -- Removed support for boolean values in Command.requires_system_checks.
...
Per deprecation timeline.
2021-09-20 21:23:01 +02:00
Mariusz Felisiak
2e10abeb7f
Refs #31395 -- Removed support for assigning objects which don't support deepcopy() in setUpTestData().
...
Per deprecation timeline.
2021-09-20 21:23:01 +02:00
Mariusz Felisiak
a7dc745ee5
Bumped version; main is now 4.1 pre-alpha.
2021-09-20 21:23:01 +02:00
David Smith
456466d932
Fixed #31026 -- Switched form rendering to template engine.
...
Thanks Carlton Gibson, Keryn Knight, Mariusz Felisiak, and Nick Pope
for reviews.
Co-authored-by: Johannes Hoppe <info@johanneshoppe.com>
2021-09-20 15:50:18 +02:00
Keryn Knight
5353e7c250
Refs #27624 -- Optimized Query.clone() for non-combined queries.
...
This avoids constructing a generator expression and a new tuple if the
Query has no combined queries.
2021-09-20 12:34:18 +02:00
Keryn Knight
e441847eca
Fixed #32970 -- Changed WhereNode.clone() to create a shallow copy of children.
2021-09-20 07:03:10 +02:00
Mariusz Felisiak
ef4ef3b8f5
Fixed #32504 -- Updated admin's jQuery to 3.6.0.
2021-09-20 06:54:35 +02:00
Ken Whitesell
0a9aa02e6f
Fixed #33077 -- Fixed links to related models for admin's readonly fields in custom admin site.
2021-09-18 12:27:28 +02:00
Nikita Marchant
4e4082f939
Fixed #32492 -- Added TrigramWordSimilarity() and TrigramWordDistance() on PostgreSQL.
2021-09-17 13:05:15 +02:00
Giannis Adamopoulos
4555aa0a48
Fixed #27674 -- Deprecated GeoModelAdmin and OSMGeoAdmin.
...
Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2021-09-17 08:56:16 +02:00
Adam Johnson
fc91ea1e50
Refs #27624 -- Changed Query.explain_info to namedtuple.
2021-09-17 07:15:12 +02:00
Adam Johnson
2931d847c2
Optimized Query.clone() a bit.
...
This removes unnecessary "if ... is None" branches, which are already
shallow-copied in the __dict__.copy() call.
2021-09-17 07:12:56 +02:00
Carlton Gibson
306607d5b9
Fixed #32365 -- Made zoneinfo the default timezone implementation.
...
Thanks to Adam Johnson, Aymeric Augustin, David Smith, Mariusz Felisiak, Nick
Pope, and Paul Ganssle for reviews.
2021-09-16 12:11:05 +02:00
Mariusz Felisiak
6426c3077c
Fixed #33107 -- Fixed import_string() crash on not fully initialized modules.
...
Regression in ecf87ad513
.
Thanks Collin Anderson for the report.
2021-09-16 07:12:58 +02:00
Daniyal
ec212c6616
Fixed #33012 -- Added Redis cache backend.
...
Thanks Carlton Gibson, Chris Jerdonek, David Smith, Keryn Knight,
Mariusz Felisiak, and Nick Pope for reviews and mentoring this
Google Summer of Code 2021 project.
2021-09-14 15:50:08 +02:00
Claude Paroz
676bd084f2
Fixed #32873 -- Deprecated settings.USE_L10N.
...
Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2021-09-14 12:05:43 +02:00
Aakash Singh
04e023e383
Fixed #33104 -- Fixed wrapping of long words in admin readonly fields.
2021-09-13 08:50:16 +02:00
yujin
ecf87ad513
Fixed #33099 -- Improved performance of import_string().
...
This improves performance of import_string() by avoiding multiple
imports for the same path.
Thanks Andrew Godwin and Keryn Knight for the implementation idea.
2021-09-10 12:37:00 +02:00
antoinehumbert
de95c82667
Fixed #31867 -- Made TabularInline handling of hidden fields with view-only permissions consistent with StackedInline.
2021-09-10 10:10:53 +02:00
Jan Schär
06e59d97a3
Fixed #33096 -- Fixed <form> nesting in technical 500 template.
...
This also prevents sending <form> tags in emails.
2021-09-10 06:44:39 +02:00
Hasan Ramezani
0a28b42b15
Fixed #33084 -- Removed incorrect system check for ManyToManyField with limit_choices_to.
2021-09-09 12:07:59 +02:00
Siburg
46c8df640c
Fixed #32219 -- Made InlineModelAdmin.verbose_name_plural fallback to its verbose_name.
2021-09-08 13:20:13 +02:00
Mariusz Felisiak
4a43335d30
Fixed #30086 , Refs #32873 -- Made floatformat template filter independent of USE_L10N.
2021-09-08 08:37:27 +02:00
Andrew-Chen-Wang
301a85a12f
Fixed #32076 -- Added async methods to BaseCache.
...
This also makes DummyCache async-compatible.
2021-09-07 20:14:25 +02:00
Nick Pope
42dfa97e19
Fixed #33060 -- Added BaseCache.make_and_validate_key() hook.
...
This helper function reduces the amount of duplicated code and makes it
easier to ensure that we always validate the keys.
2021-09-07 11:59:59 +02:00
Nick Pope
4b82578a60
Refs #33060 -- Ensured cache backends validate keys.
...
The validate_key() function should be called after make_key() to ensure
that the validation is performed on the key that will actually be
stored in the cache.
Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2021-09-07 11:59:40 +02:00
Peter Inglesby
3921b1c6d2
Refs #32363 -- Made shell ignore a missing sys.___interactivehook__.
...
Thanks Tim Graham for the report.
Follow up to 1bbb98d9a4
.
2021-09-06 10:18:13 +02:00
Mateo Radman
a7f27fca52
Refs #32508 -- Raised TypeError/ValueError instead of using "assert" in encode() methods of remaining password hashers.
2021-09-06 07:47:53 +02:00
Nick Pope
68b8eda788
Refs #33060 -- Added .make_key() in .touch() for dummy cache backend.
...
All cache operations should use make_key().
2021-09-03 10:36:14 +02:00
taulant
0e8be73812
Fixed #32975 -- Fixed admin system check for inlines with foreign keys to proxy models.
2021-09-03 06:48:32 +02:00
Daniyal Abbasi
dca4c2ff76
Refs #33012 -- Moved PickleSerializer to django.core.serializers.base and added tests.
2021-09-02 11:24:55 +02:00
Stefanos I. Tsaklidis
d0ea01af28
Fixed #33079 -- Fixed get_image_dimensions() on nonexistent images.
...
Thanks Nick Pope for the review.
2021-09-02 07:08:50 +02:00
David Wobrock
691486a5cf
Fixed #33073 -- Fixed queryset crash with aggregation and empty/extra queryset annotation.
2021-09-01 20:59:16 +02:00
Mariusz Felisiak
338fc0e7f1
Fixed #33080 -- Preserved nullability of textual fields on Oracle.
...
Thanks Matt Hoskins for the report.
2021-09-01 20:54:12 +02:00
Alex Hayward
eeed488a34
Fixed #32768 -- Added Vary header when redirecting to prefixed i18n pattern.
...
get_language_from_request() uses Accept-Language and/or Cookie to determine the
correct redirect. Upstream caches need the matching Vary header to cache the
result.
2021-09-01 14:02:37 +02:00
sage
84c7c4a477
Fixed #32309 -- Added --exclude option to startapp/startproject management commands.
2021-09-01 12:08:02 +02:00
Mariusz Felisiak
1eb3f500a4
Fixed #33057 -- Fixed recreation of foreign key constraints in m2m tables when altering type of referenced primary key on Oracle.
2021-08-31 13:43:10 +02:00
Jan Szoja
b667ac24ea
Fixed #25264 -- Allowed suppressing base command options in --help output.
...
This also suppresses -verbosity and --trackback options in the
runserver's help.
2021-08-31 11:04:02 +02:00
Mariusz Felisiak
93e06f2978
Refs #33061 -- Removed unnecessary BaseMemcachedCache.decr().
2021-08-31 10:37:59 +02:00
Sondre Lillebø Gundersen
2c912c3488
Fixed #33061 -- Fixed handling nonexistent keys with negative deltas in incr()/decr() in memcached backends.
...
Thanks Chris Jerdonek for the review.
2021-08-31 07:34:53 +02:00
Jacob Walls
3219dd3388
Fixed #24900 -- Allowed migrating backward to squashed migrations.
2021-08-30 12:08:04 +02:00
Carlton Gibson
cbba49971b
Fixed #32992 -- Restored offset extraction for fixed offset timezones.
...
Regression in 10d1261984
.
2021-08-30 10:12:46 +02:00
Eugene Morozov
d89f976bdd
Fixed #33054 -- Made TestCase.captureOnCommitCallbacks() capture callbacks recursively.
2021-08-30 07:06:22 +02:00
Mateo Radman
02bc7161ec
Fixed #32900 -- Improved migrations questioner prompts.
2021-08-27 13:27:41 +02:00
Hasan Ramezani
d1216e126f
Fixed #33051 -- Fixed highlighting the current model in admin's sidebar with non-ASCII model names.
2021-08-27 07:31:05 +02:00
David Smith
5942ab5eb1
Refs #32338 -- Made RadioSelect/CheckboxSelectMultiple render in <div> tags.
...
This improves accessibility for screen reader users.
2021-08-27 06:14:01 +02:00
Mariusz Felisiak
fa1d7ba5b9
Refs #29898 -- Changed fields in ProjectState's relation registry to dict.
2021-08-26 07:49:37 +02:00
Chris Jerdonek
55cf9e93b5
Refs #32919 -- Simplified Lexer.create_token() by reorganizing blocks.
2021-08-25 13:14:35 +02:00
Chris Jerdonek
7ff72b5909
Refs #32919 -- Added assertion for token start in Lexer.create_token().
...
This adds an assertion in the code path where the method would otherwise
return None, which isn't allowed.
2021-08-25 13:07:52 +02:00
Manav Agarwal
196a99da5d
Refs #29898 -- Made ProjectState encapsulate alterations in relations registry.
...
Thanks Simon Charette and Chris Jerdonek for reviews.
Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2021-08-25 09:12:01 +02:00
Chris Jerdonek
b263f4b69d
Fixed #32552 -- Added logger argument to DiscoverRunner.
2021-08-24 09:23:01 +02:00
Tim Graham
022d29c934
Refs #10929 -- Allowed NowUTC SQL customization for third-party backends.
2021-08-24 08:28:03 +02:00
Märt Häkkinen
ed317e79e3
Fixed #33030 -- Fixed broken links to GDAL docs.
2021-08-23 06:22:07 +02:00
Manav Agarwal
3e6a3e8853
Refs #29898 -- Refactored out ProjectState.resolve_model_relations()/resolve_model_field_relations() hooks.
2021-08-20 13:45:21 +02:00
Matjaz Gregoric
518ce7a51f
Fixed #33017 -- Fixed storage engine introspection on MySQL.
...
This also improves performance on MySQL instances with a large number
of databases, since querying the information_schema table can be very
slow
2021-08-20 11:05:21 +02:00
Matjaz Gregoric
e9aa20e4e1
Optimized DatabaseSchemaEditor._field_should_be_indexed() on MySQL.
2021-08-20 10:30:02 +02:00
Keryn Knight
bf5abf1bdc
Fixed #33025 -- Avoided accessing the database connections in Query.build_lookup() when not necessary.
...
Of the built-in backends, only Oracle treats empty strings and nulls as
equal, so avoid testing the default connection backend for
interprets_empty_strings_as_nulls if it can be established from the
lookup that it wouldn't affect the lookup instance returned. This
improves performance a small amount for most lookups being built,
because accessing the connections requires touching the thread critical
`Local` which is an expensive operation.
2021-08-19 13:28:59 +02:00
Chris Jerdonek
7800596924
Fixed #33014 -- Made ProjectState raise exception when real_apps argument is not a set.
2021-08-19 10:18:51 +02:00