1
0
mirror of https://github.com/django/django.git synced 2025-03-12 18:30:48 +00:00

13764 Commits

Author SHA1 Message Date
antoliny0919
e262d5355d Fixed #36114 -- Fixed link visibility when list_display_links field contains only whitespace. 2025-01-22 14:56:44 +01:00
Georgi Yanchev
64b1ac7292 Fixed #24529 -- Allowed double squashing of migrations.
Co-authored-by: Raphael Gaschignard <raphael@rtpg.co>
2025-01-22 10:56:30 +01:00
Simon Charette
00c690efbc Fixed #36117 -- Raised ValueError when providing composite expressions to case / when.
Remove redundant Case and When.resolve_expression to delegate composite
expression support to BaseExpression.

Thanks Jacob Tyler Walls for the report and test.
2025-01-22 08:56:18 +01:00
Simon Charette
a76035e925 Refs #36042 -- Consolidated composite expression checks in BaseExpression.
Remove redundant Func.resolve_expression and adjust CombinedExpression to
delegate source expression resolving to super() to perform checks against
allows_composite_expressions in a single location.
2025-01-22 08:56:18 +01:00
Simon Charette
626d77e52a Fixed #36116 -- Optimized multi-column ForwardManyToOne prefetching.
Rely on ColPairs and TupleIn which support a single column to be specified
to avoid special casing ForwardManyToOne.get_prefetch_querysets().

Thanks Jacob Walls for the report.
2025-01-21 09:09:43 +01:00
Simon Charette
22fc151bb8 Fixed #36107 -- Adjusted UNNEST bulk_create strategy to opt-out sized arrays.
The array fields opt-out heuristic failed to account for sized arrays.

Note that we keep relying on db_type as opposed to performing an ArrayField
instance check against the column's field as there could be other
implementations of model fields that use Postgres arrays to store the
optimization must be disabled for all of them.

Refs #35936.

Thanks Claude Paroz for the report and test.
2025-01-20 14:15:32 +01:00
Mariusz Felisiak
f5772de696 Fixed #36005 -- Dropped support for Python 3.10 and 3.11. 2025-01-20 14:07:28 +01:00
greg
61dae11df5 Fixed #36017 -- Used EmailValidator in urlize to detect emails. 2025-01-20 09:50:29 +01:00
Mariusz Felisiak
ec8cbea91e
Refs #35448 -- Fixed BackendTestCase.test_queries_logger() on Oracle < 23c. 2025-01-20 07:53:45 +01:00
Tim Graham
d8f093908c Fixed #35448 -- Fixed formatting of test --debug-sql output.
Also adds DatabaseOperations.format_debug_sql() hook for backends
(e.g. NoSQL) to customize formatting.
2025-01-18 07:04:57 +01:00
Thibaut Decombe
98767ba2ec Fixed invalid HTML in test templates. 2025-01-17 15:55:37 +01:00
Mariusz Felisiak
a7af1e2756 Refs #35090 -- Fixed urlpatterns.tests.SimplifiedURLTests when run in reverse.
Regression in 9cb1ffa67bb0d13f86c2d4627428fcaa4513136d.
2025-01-16 13:12:33 +01:00
Sarah Boyce
37373d9ae9 Increased the default PBKDF2 iterations for Django 6.0. 2025-01-15 22:28:37 +01:00
Sarah Boyce
7bc88c3c15 Advanced deprecation warnings for Django 6.0. 2025-01-15 22:28:37 +01:00
Sarah Boyce
17ae61a5d4 Refs #35326 -- Removed FileSystemStorage.OS_OPEN_FLAGS per deprecation timeline. 2025-01-15 22:28:37 +01:00
Sarah Boyce
bc3f3031d8 Refs #35405 -- Removed FieldCacheMixin.get_cache_name() per deprecation timeline. 2025-01-15 22:28:37 +01:00
Sarah Boyce
85750bd2f8 Refs #35234 -- Removed CheckConstraint.check per deprecation timeline. 2025-01-15 22:28:37 +01:00
Sarah Boyce
4968f0012e Refs #35058 -- Removed OGRGeometry.coord_dim setter per deprecation timeline. 2025-01-15 22:28:37 +01:00
Sarah Boyce
d5fec03dad Refs #35060 -- Removed passing positional arguments to Model.save()/asave() per deprecation timeline. 2025-01-15 22:28:37 +01:00
Sarah Boyce
8d695bf510 Removed django.contrib.gis.geoip2.GeoIP2.open() per deprecation timeline. 2025-01-15 22:28:37 +01:00
Sarah Boyce
4104dafdf3 Removed django.contrib.gis.geoip2.GeoIP2.coords() per deprecation timeline. 2025-01-15 22:28:37 +01:00
Sarah Boyce
f3a2509a54 Refs #34983 -- Removed django.utils.itercompat per deprecation timeline. 2025-01-15 22:28:37 +01:00
Sarah Boyce
6c120508b6 Refs #34462 -- Removed ModelAdmin.log_deletion() and LogEntryManager.log_action() per deprecation timeline. 2025-01-15 22:28:37 +01:00
Sarah Boyce
817bc5800b Refs #33651 -- Removed Prefetch.get_current_queryset() and get_prefetch_queryset() per deprecation timeline. 2025-01-15 22:28:37 +01:00
Sarah Boyce
55f71b195b Removed ChoicesMeta per deprecation timeline. 2025-01-15 22:28:37 +01:00
Sarah Boyce
b4bc393b23 Refs #33817 -- Removed support for cx_Oracle per deprecation timeline. 2025-01-15 22:28:37 +01:00
Sarah Boyce
0a0f9b4acc Refs #16055 -- Removed get_joining_columns()/get_reverse_joining_columns() methods per deprecation timeline. 2025-01-15 22:28:37 +01:00
Sarah Boyce
9a3f86e960 Refs #34380 -- Changed the URLField default scheme to https and removed FORMS_URLFIELD_ASSUME_HTTPS per deprecation timeline. 2025-01-15 22:28:37 +01:00
Sarah Boyce
9cb1ffa67b Refs #35090 -- Removed support for django.urls.register_converter() overriding existing converters per deprecation timeline. 2025-01-15 22:28:37 +01:00
Sarah Boyce
1e331911a8 Refs #34609 -- Removed support for calling format_html() without arguments per deprecation timeline. 2025-01-15 22:28:37 +01:00
Sarah Boyce
8081557508 Refs #22569 -- Made request required in ModelAdmin.lookup_allowed() per deprecation timeline. 2025-01-15 22:28:37 +01:00
Sarah Boyce
6b271ef21d Refs #34547 -- Removed DatabaseOperations.field_cast_sql() per deprecation timeline. 2025-01-15 22:28:37 +01:00
Sarah Boyce
ba90b76c6e Refs #32339 -- Removed transitional form renderers per deprecation timeline. 2025-01-15 22:28:37 +01:00
Sarah Boyce
b5a6c93a18 Refs #34355 -- Removed support for positional arguments in BaseConstraint per deprecation timeline. 2025-01-15 22:28:37 +01:00
Matthias Kestenholz
6a7ee02f59
Fixed #35521 -- Allowed overriding BoundField class on fields, forms and renderers.
Thank you Sarah Boyce, Carlton Gibson, Tim Schilling and Adam Johnson
for reviews.

Co-authored-by: Christophe Henry <contact@c-henry.fr>
Co-authored-by: David Smith <smithdc@gmail.com>
Co-authored-by: Natalia <124304+nessita@users.noreply.github.com>
Co-authored-by: Matthias Kestenholz <mk@feinheit.ch>
2025-01-15 17:04:26 -03:00
Mariusz Felisiak
b3c5830769 Fixed #36098 -- Fixed validate_ipv6_address()/validate_ipv46_address() crash for non-string values.
Regression in ca2be7724e1244a4cb723de40a070f873c6e94bf.
2025-01-15 13:46:06 -03:00
Jacob Walls
1602666b79 Fixed #36100 -- Checked if composite pk is set in get_next/get_previous. 2025-01-15 17:23:46 +01:00
Simon Charette
6cfe00ee43 Refs #29499 -- Fixed race condition in update_or_create() test.
The usage of time.sleep() could result in the update_or_create() thread winning
the race to create the row if the backend takes a while to create a new
connection in the main thread.

Relying on threading.Event ensures that the flow of execution is systematically
yield back and forth between the main thread and the thread in charge of
performing the background update_or_create().
2025-01-15 15:36:57 +01:00
Sarah Boyce
b721f12760 Fixed #35998 -- Added caching to django.utils.html.urlize(). 2025-01-14 17:59:32 +01:00
Jacob Walls
d206d4c200 Fixed #36051 -- Declared arity on aggregate functions.
Follow-up to 4a66a69239c493c05b322815b18c605cd4c96e7c.
2025-01-14 16:47:07 +01:00
Simon Charette
f07360e808 Refs #36075 -- Adjusted MTI handling of _non_pk_concrete_field_names.
Regression in bf7b17d16d3978b2e1cee4a0f7ce8840bd1a8dc4.

Thanks Sage Abdullah for the report.
2025-01-14 16:21:19 +01:00
Simon Charette
161e79d277 Refs #36075 -- Adjusted pk_fields usage in bulk_update eligibility checks.
Regression in bf7b17d16d3978b2e1cee4a0f7ce8840bd1a8dc4.

Thanks Sage Abdullah for the report.
2025-01-14 16:21:19 +01:00
Simon Charette
4bfec242b4 Fixed #36093 -- Adjusted unique checks to account for inherited primary keys.
Regression in bf7b17d16d3978b2e1cee4a0f7ce8840bd1a8dc4 refs #36075.

Thanks Sage Abdullah for the report and tests.
2025-01-14 16:21:19 +01:00
Michael Manfre
ca2be7724e Fixed CVE-2024-56374 -- Mitigated potential DoS in IPv6 validation.
Thanks Saravana Kumar for the report, and Sarah Boyce and Mariusz
Felisiak for the reviews.

Co-authored-by: Natalia <124304+nessita@users.noreply.github.com>
2025-01-14 08:42:24 -03:00
Sarah Boyce
23c6effac0 Fixed #36087 -- Supported password reset on a custom user model with a composite primary key. 2025-01-13 15:51:21 +01:00
Bendeguz Csirmaz
d83fb782d3 Fixed #36092 -- Disallowed non-local fields in composite primary keys. 2025-01-13 14:21:41 +01:00
Sarah Boyce
bf7b17d16d Refs #36075 -- Used field in pk_fields over field.primary_key. 2025-01-13 12:04:59 +01:00
Simon Charette
9e55201555 Fixed #36086 -- Fixed crash when using GeneratedField with non-AutoField pk.
The previous logic was systematically attempting to retrieve last_insert_id
even for models without an AutoField primary key when they had a GeneratedField
on backends that can't return columns from INSERT.

The issue affected MySQL, SQLite < 3.35, and Oracle when the use_returning_into
option was disabled and could result in either crashes when the non-auto
primary key wasn't an IntegerField subclass or silent misassignment of bogus
insert ids (0 or the previous auto primary key insert value) to the first
defined generated field value.
2025-01-13 11:13:29 +01:00
Simon Charette
20eb4bca7d Refs #373 -- Adjusted test allowing AutoField in composite primary keys.
This is not a properly supported feature yet and should be revisited by
refs #35957.
2025-01-13 11:13:29 +01:00
Bendeguz Csirmaz
8bee7fa45c Fixed #36050 -- Added OuterRef support to CompositePrimaryKey. 2025-01-10 14:38:09 +01:00