Nick Pope
07fa79ef2b
Refs #31262 -- Added __eq__() and __getitem__() to BaseChoiceIterator.
...
This makes it easier to work with lazy iterators used for callables,
etc. when extracting items or comparing to lists, e.g. during testing.
Also added `BaseChoiceIterator.__iter__()` to make it clear that
subclasses must implement this and added `__all__` to the module.
Co-authored-by: Adam Johnson <me@adamj.eu>
Co-authored-by: Natalia Bidart <124304+nessita@users.noreply.github.com>
2023-10-23 13:44:16 -03:00
David Sanders
b5311ee232
Fixed #34921 -- Fixed crash of warning for unbound naive datetimes.
2023-10-22 14:26:38 +02:00
laserhyena
21382e2743
Fixed #34911 -- Corrected HTML heading levels on admindocs' main page.
2023-10-20 05:44:55 +02:00
ontowhee
89d2ae257b
Fixed #34905 -- Corrected admin's main content element rendered in <main> tag.
...
Regression in 91e617c743
.
Thanks Tom Carrick for the report.
2023-10-19 17:25:50 +02:00
Sarah Boyce
71a813a72c
Made SeleniumTests.test_select_multiple less flaky by improving Selenium waits.
2023-10-19 16:01:52 +02:00
Sarah Boyce
be56c982c0
Refs #34043 -- Added --screenshots option to runtests.py and selenium tests.
2023-10-18 06:14:40 +02:00
Sarah Boyce
f6629ee2c9
Refs #34043 -- Added context managers to SeleniumTestCase for changing window size.
2023-10-16 10:36:26 +02:00
Mariusz Felisiak
20b7aac7ca
Refs #34900 , Refs #34118 -- Updated assertion in test_skip_class_unless_db_feature() test on Python 3.12.1+.
...
Python 3.12.1+ no longer includes skipped tests in the number of
running tests. Check out:
https://github.com/python/cpython/issues/110890#issuecomment-1763458686
https://github.com/python/cpython/pull/106588
2023-10-16 06:27:27 +02:00
Simon Charette
3b4a571275
Fixed #34798 -- Fixed QuerySet.aggregate() crash when referencing expressions containing subqueries.
...
Regression in 59bea9efd2
,
complements e5c844d6f2
.
Refs #28477 , #34551 .
Thanks Haldun Komsuoglu for the report.
2023-10-16 05:37:30 +02:00
Mariusz Felisiak
9fd3a0ffc8
Refs #34840 -- Fixed test_validate_nullable_textfield_with_isnull_true() on databases that don's support table check constraints.
...
Thanks Tim Graham for the report.
2023-10-12 20:01:44 +02:00
Mariana
fc62e17778
Fixed #12241 -- Preserved query strings when using "Save and continue/add another" in admin.
...
Co-authored-by: Grady Yu <gradyy@users.noreply.github.com>
Co-authored-by: David Sanders <shang.xiao.sanders@gmail.com>
Co-authored-by: Matthew Newton <matthewn@berkeley.edu>
2023-10-11 11:00:25 +02:00
Mariusz Felisiak
6e369f36f2
Refs #34882 -- Fixed GISFunctionsTests.test_asgeojson_option_0() test on Oracle.
...
This uses an example with the same precision for all databases.
Follow up to 96e7a752b6
.
2023-10-11 10:58:10 +02:00
Mariusz Felisiak
296b75a3c0
Fixed #34889 -- Fixed get_prefetch_queryset() fallback in prefetch_one_level().
...
Thanks Matt Westcott for the report.
Regression in cac94dd8aa
.
2023-10-06 20:18:41 +02:00
Denis Rouzaud
96e7a752b6
Fixed #34882 -- Fixed no options in AsGeoJSON() for geometries in non-default CRS.
2023-10-06 05:25:32 +02:00
Simon Charette
ea596a52d9
Refs #33482 -- Fixed QuerySet selecting and filtering againts Exists() with empty queryset.
...
Thanks Tobias Bengfort for the report.
2023-10-04 21:30:50 +02:00
pieterck
0989cf13e7
Fixed #34759 -- Confirmed support for SpatiaLite 5.1.
...
Thanks The Epic Dev for helping with tests.
2023-10-04 19:58:27 +02:00
Natalia
17b51094d7
Fixed CVE-2023-43665 -- Mitigated potential DoS in django.utils.text.Truncator when truncating HTML text.
...
Thanks Wenchao Li of Alibaba Group for the report.
2023-10-04 09:22:26 -03:00
Chinmoy Chakraborty
1dae65dc63
Fixed #34657 -- Made assert(Not)Contains/assertInHTML display haystacks in error messages.
2023-10-03 10:44:36 +02:00
Mariusz Felisiak
679212a47a
Refs #34657 -- Made msg_prefix handling in assertURLEqual()/assertInHTML consistent with other assertions.
...
Co-authored-by: Chinmoy Chakraborty <chinmoy12c@gmail.com>
2023-10-03 09:25:48 +02:00
Carlton Gibson
35bbb2c9c0
Fixed #34883 -- Allowed template tags to set extra data on templates.
...
By setting a value in the `parser.extra_data` mapping, template tags
pass additional data out of the parsing context.
Any extra data set is exposed on the template via the matching
`.extra_data` attribute.
Library authors should use a key to namespace extra data. The 'django'
namespace is reserved for internal use.
2023-10-02 16:16:43 +02:00
Chinmoy Chakraborty
e99c7d8847
Refs #34657 -- Made assertInHTML() use unparsed needle in error messages.
2023-09-29 09:52:39 +02:00
Mariusz Felisiak
6ad0dbc8d9
Refs #15667 -- Added resetting default renderer when FORM_RENDERER is changed.
2023-09-29 08:54:13 +02:00
Dan Jacob
fe835c2355
Fixed #34878 -- Fixed autoreloader crash when FORM_RENDERER is set to TemplatesSetting.
...
Regression in 439242c594
.
2023-09-29 06:01:04 +02:00
Paolo Melchiorre
e7e8eb44a3
Fixed #34877 -- Fixed migrations crash when adding GeneratedField with output_field with params.
2023-09-28 05:50:42 +02:00
Mariusz Felisiak
f9e9526800
Fixed #34873 -- Added QuerySet.explain() support for GENERIC_PLAN option on PostgreSQL 16+.
2023-09-26 12:05:26 +02:00
lstaana
357365a64e
Fixed #34835 -- Made admin's changelist filters render in <nav> tag.
2023-09-26 08:45:07 +02:00
David Sanders
a5905b164d
Fixed #34825 -- Avoided setting unused connections when initializing parallel workers.
2023-09-25 10:14:55 +02:00
David Sanders
4f2ae0644d
Fixed #34849 -- Avoided raising RuntimeWarning about import-time queries when apps are reinitialized with test tools.
...
Regression in fbd16438f4
.
2023-09-25 08:17:03 +02:00
Paolo Melchiorre
574ee4023e
Fixed #34861 -- Fixed crash when adding GeneratedField with some expressions.
...
Co-authored-by: Simon Charette <charette.s@gmail.com>
2023-09-22 21:01:54 +02:00
Arian
51d703a27f
Fixed #34823 -- Fixed assertTemplateUsed() context manager crash on unnamed templates.
2023-09-22 10:51:10 +02:00
toan
4de31ec680
Fixed #34858 -- Corrected resolving output_field for PositiveIntegerField.
...
Regression in 40b8a6174f
.
2023-09-22 09:33:50 +02:00
Natalia
d797243663
Fixed #34848 -- Ignored i18n_catalog.js file when building Django's translations catalog.
2023-09-22 08:20:08 +02:00
Tim Graham
b0788a0918
Fixed JSONField's test_deep_distinct for DatabaseFeatures.nulls_order_largest=False.
...
Failure observed on CockroachDB.
2023-09-22 06:25:17 +02:00
Mariusz Felisiak
779cd28acb
Fixed #34840 -- Avoided casting string base fields on PostgreSQL.
...
Thanks Alex Vandiver for the report.
Regression in 09ffc5c121
.
2023-09-22 06:01:11 +02:00
Mariusz Felisiak
2c6ebb65c9
Fixed #34851 -- Dropped support for PostgreSQL 12 and PostGIS 2.5.
2023-09-20 13:45:51 +02:00
Lily Foote
45078a204b
Defined PASSWORD_HASHERS for auth_tests.test_views.ChangelistTests.
...
auth_tests.test_views.ChangelistTests.test_view_user_password_is_readonly
depends on the password hasher having the three components algorithm,
salt and hash.
The default password hasher (PBKDF2PasswordHasher) has an extra
iterations component, breaking the test.
2023-09-20 05:35:49 +02:00
Mariusz Felisiak
3623a0c079
Fixed #34850 -- Dropped support for MariaDB 10.4.
2023-09-19 15:06:05 +02:00
Mariusz Felisiak
8af3ae4ad9
Isolated test models for GeneratedFields.
...
Test regression in f333e3513e
.
2023-09-19 08:09:03 +02:00
Mariusz Felisiak
0e560edf32
Increased the default PBKDF2 iterations for Django 5.1.
2023-09-18 22:12:40 +02:00
Mariusz Felisiak
caf87b4d42
Advanced deprecation warnings for Django 5.1.
2023-09-18 22:12:40 +02:00
Mariusz Felisiak
f72f420f17
Refs #26029 -- Removed DEFAULT_FILE_STORAGE and STATICFILES_STORAGE settings.
...
This also removes django.core.files.storage.get_storage_class().
Per deprecation timeline.
2023-09-18 22:12:40 +02:00
Mariusz Felisiak
3a3e737694
Refs #33199 -- Removed support for passing positional arguments to Signer/TimestampSigner.
...
Per deprecation timeline.
2023-09-18 22:12:40 +02:00
Mariusz Felisiak
5e4c1793b7
Refs #33308 -- Removed support for passing encoded JSON string literals to JSONField & co.
...
Per deprecation timeline.
2023-09-18 22:12:40 +02:00
Mariusz Felisiak
69af3bea99
Refs #33990 -- Removed TransactionTestCase.assertQuerysetEqual() per deprecation timeline.
2023-09-18 22:12:40 +02:00
Mariusz Felisiak
c35fd9e275
Refs #33990 -- Removed SimpleTestCase.assertFormsetError() per deprecation timeline.
2023-09-18 22:12:40 +02:00
Mariusz Felisiak
7433237664
Refs #33924 -- Removed BaseGeometryWidget.map_height/map_width attributes per deprecation timeline.
2023-09-18 22:12:40 +02:00
Mariusz Felisiak
04eb1b4567
Refs #33872 -- Removed django.contrib.postgres.fields.CIText/CICharField/CIEmailField/CITextField.
...
Per deprecation timeline.
2023-09-18 22:12:40 +02:00
Mariusz Felisiak
6e4e5523a8
Refs #33691 -- Removed insecure password hashers per deprecation timeline.
2023-09-18 22:12:40 +02:00
Mariusz Felisiak
14ef92fa9e
Refs #33864 -- Removed length_is template filter per deprecation timeline.
2023-09-18 22:12:40 +02:00
Mariusz Felisiak
2abf417c81
Refs #27236 -- Removed Meta.index_together per deprecation timeline.
2023-09-18 22:12:40 +02:00
Mariusz Felisiak
00e1879610
Refs #33764 -- Removed BaseUserManager.make_random_password() per deprecation timeline.
2023-09-18 22:12:40 +02:00
Clément Escolano
cac94dd8aa
Fixed #33651 -- Added support for prefetching GenericForeignKey.
...
Co-authored-by: revanthgss <revanthgss@almabase.com>
Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2023-09-18 13:23:21 +02:00
Ryanwalker277
225328efd9
Fixed #31558 -- Added support for boolean attribute on properties in ModelAdmin.list_display.
2023-09-16 20:54:26 +02:00
Paolo Melchiorre
2f1ab16be5
Fixed #34842 -- Fixed ModelAdmin.readonly_fields crash with GeneratedFields.
2023-09-16 20:13:02 +02:00
Sarah Abderemane
814e7bc220
Fixed #34832 -- Made admin's header content render in <header> tag.
...
Header tag was changed to <header> get the landmark banner for
accessibility.
2023-09-15 05:36:43 +02:00
Paolo Melchiorre
68d769e691
Fixed #34838 -- Corrected output_field of resolved columns for GeneratedFields.
...
Thanks Simon Charette for the implementation idea.
2023-09-14 21:17:12 +02:00
Lemuel Sta Ana
969ecb8236
Fixed #34834 -- Added role="search" to the admin changelist search form.
2023-09-14 20:35:48 +02:00
Natalia
691f70c477
Fixed #24561 -- Added support for callables on model fields' choices.
2023-09-14 10:15:33 -03:00
Sarah Abderemane
91e617c743
Fixed #34833 -- Made admin's main content render in <main> tag.
2023-09-14 05:41:31 +02:00
Nick Pope
f92e68c30a
Fixed #34822 -- Added support for serializing functions decorated with functools.lru_cache in migrations.
...
`@functools.cache` and `@functools.lru_cache` return an object of type
`functools._lru_cache_wrapper` which prevented the migrations serializer from
working. Simply using the existing `FunctionTypeSerializer` for this additional
type works as expected.
2023-09-13 15:57:18 -03:00
Nick Pope
c131949e3e
Refs #34822 -- Added tests for serializing decorated functions in migrations.
...
Functions decorated with a decorator that is properly wrapped, e.g. by
using `@functools.wraps`, are already supported.
2023-09-13 15:39:56 -03:00
Mariusz Felisiak
0e540fca13
Corrected logger in CsrfViewMiddlewareTestMixin.test_ensures_csrf_cookie_no_logging().
...
Logger was changed in 55fec16aaf
.
2023-09-13 13:49:01 +02:00
Ben Lomax
74f7deec9e
Refs #31949 -- Made make_middleware_decorator to work with async functions.
2023-09-13 11:41:01 +02:00
Ben Lomax
059cb0dbc9
Added more tests for decorators.
2023-09-13 10:16:01 +02:00
Nick Pope
fe19b33e2f
Modernized enumeration helpers on Python 3.11+.
...
- use @enum.property
https://docs.python.org/3/library/enum.html#enum.property
- use @enum.nonmember
Using @property on an enum class does not yield the expected result.
do_not_call_in_templates attribute works because a @property instance
is truthy. We can make this a literal True value as expected by using
@enum.nonmember in Python 3.11+.
https://docs.python.org/3/library/enum.html#enum.nonmember
- used enum.IntEnum/StrEnum
Python 3.11+ has ReprEnum which uses int.__str__() and str.__str__()
for __str__() in the `IntEnum` and `StrEnum` subclasses. We can emulate
that for Python < 3.11.
https://docs.python.org/3/library/enum.html#enum.ReprEnum
https://docs.python.org/3/library/enum.html#enum.IntEnum
https://docs.python.org/3/library/enum.html#enum.StrEnum
2023-09-13 08:30:21 +02:00
Nick Pope
e15174983a
Renamed ChoicesMeta to ChoicesType.
...
This also uses enum.EnumType for Python 3.11+ as Python 3.11 renamed
EnumMeta to EnumType. While the former is still available as an alias
of the latter for now, let's prefer the canonical name for this.
Check out https://docs.python.org/3/library/enum.html#enum.EnumType
2023-09-12 11:51:01 +02:00
Sam Toyer
64cea1e48f
Fixed #34752 -- Fixed handling ASGI http.disconnect for streaming responses.
2023-09-11 19:53:21 +02:00
Mariusz Felisiak
a7c73b944f
Fixed #34821 -- Prevented DEFAULT_FILE_STORAGE/STATICFILES_STORAGE settings from mutating the main STORAGES.
...
Regression in 6b965c6000
.
2023-09-11 13:04:32 +02:00
donghao
938170008e
Fixed #34824 -- Prevented unnecessary AlterField when ForeignObject.from_fields/to_fields is not a tuple.
2023-09-11 08:46:43 +02:00
Yves Weissig
369b498219
Fixed #34642 -- Added File.open() support for *args and **kwargs.
2023-09-11 06:07:47 +02:00
donghao
71820c9f91
Fixed #34820 -- Fixed migrations crash when changing a ForeignObject field.
2023-09-09 22:15:14 +02:00
Oguzhan Akan
e41f9f9450
Fixed #34816 -- Fixed GenericForeignKey crash when checking cache for primary keys with different types.
2023-09-08 08:47:11 +02:00
Jacob Walls
1ab2cf7994
Fixed #34810 -- Measured test coverage on django-admin commands.
2023-09-07 15:47:26 -03:00
Maxime Toussaint
254df3a3bb
Fixed #34791 -- Fixed incorrect Prefetch()'s cache for singly related objects.
...
Changed the cache name used for singly related objects to be the
to_attr parameter passed to a Prefetch object. This fixes issues with
checking if values have already been fetched in cases where the Field
already has some prefetched value, but not for the same model attr.
2023-09-07 12:56:08 +02:00
Jeremy Nauta
f333e3513e
Fixed #31300 -- Added GeneratedField model field.
...
Thanks Adam Johnson and Paolo Melchiorre for reviews.
Co-Authored-By: Lily Foote <code@lilyf.org>
Co-Authored-By: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2023-09-07 06:19:08 +02:00
François Freitag
cafe7266ee
Fixed #34730 -- Added django.contrib.messages.test.MessagesTestMixin.assertMessages().
2023-09-05 11:55:37 +02:00
Jacob Walls
6c6606aa01
Refs #34233 -- Bumped minimum supported version of docutils to 0.19.
2023-09-04 22:30:45 +02:00
Mariusz Felisiak
3f41d6d629
Fixed CVE-2023-41164 -- Fixed potential DoS in django.utils.encoding.uri_to_iri().
...
Thanks MProgrammer (https://hackerone.com/mprogrammer ) for the report.
Co-authored-by: nessita <124304+nessita@users.noreply.github.com>
2023-09-04 11:58:37 +02:00
Jacob Walls
bcd80de8b5
Fixed #34778 -- Avoided importing modules in startapp/startproject.
2023-09-01 13:24:05 +02:00
Sulabh Katila
9a9620dda6
Fixed #34768 -- Avoided initializing colorama on non-Windows platforms.
2023-09-01 11:26:29 +02:00
willzhao
9cc0d7f7f8
Fixed #34803 -- Fixed queryset crash when filtering againts deeply nested OuterRef annotations.
...
Thanks Pierre-Nicolas Rigal for the report.
Regression in c67ea79aa9
.
2023-09-01 10:44:20 +02:00
Mariusz Felisiak
c74a6fad54
Refs #32355 -- Removed unnecessary getattr() call.
...
options.test_name_patterns is always defined.
Follow up to ec0ff40631
.
2023-08-31 10:27:32 +02:00
Bruno Alla
4c4536f744
Refs #34712 -- Added system check for staticfiles storage in STORAGES setting.
...
Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
Co-authored-by: Natalia Bidart <124304+nessita@users.noreply.github.com>
2023-08-31 08:21:44 +02:00
David Smith
74b5074174
Fixed #34210 -- Added unittest's durations option to the test runner.
2023-08-31 07:14:58 +02:00
David Smith
27b399d235
Fixed #34547 -- Deprecated DatabaseOperations.field_cast_sql().
2023-08-31 06:18:07 +02:00
Nick Pope
500e01073a
Fixed #31262 -- Added support for mappings on model fields and ChoiceField's choices.
2023-08-30 22:57:40 -03:00
John Whitman
68a8996bdf
Fixed #34799 -- Made MySQL introspection skip cross-database relations.
2023-08-30 12:46:15 +02:00
Olivier Tabone
3f8dbe267d
Fixed #34757 -- Added support for following redirects to AsyncClient.
2023-08-30 06:12:25 +02:00
sarahboyce
f6ed2c36dd
Fixed #34787 -- Fixed autoreloader crash when run from installed script on Windows.
2023-08-28 12:57:14 +02:00
Mariusz Felisiak
11920e7795
Fixed #34709 -- Raised BadRequest for non-UTF-8 requests with the application/x-www-form-urlencoded content type.
...
Thanks Eki Xu for the report.
2023-08-25 21:27:22 +02:00
François Freitag
b7fe36ad37
Refs #34730 -- Made Message importable from django.contrib.messages.
2023-08-25 06:55:12 +02:00
François Freitag
7bba231b67
Refs #24121 -- Added __repr__() to Message.
2023-08-24 11:06:13 +02:00
David Sanders
76c3e310dd
Fixed #34744 -- Prevented recreation of migration for constraints with a dict_keys.
...
Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2023-08-23 11:42:18 +02:00
Mariusz Felisiak
dd45d5223b
Fixed ResourceWarning from unclosed SQLite connection on Python 3.13+.
...
- backends.sqlite.tests.ThreadSharing.test_database_sharing_in_threads
- backends.tests.ThreadTests.test_default_connection_thread_local:
on SQLite, close() doesn't explicitly close in-memory connections.
- servers.tests.LiveServerInMemoryDatabaseLockTest
- test_runner.tests.SQLiteInMemoryTestDbs.test_transaction_support
Check out https://github.com/python/cpython/pull/108015 .
2023-08-23 09:09:23 +02:00
konsti
48a1929ca0
Removed unnecessary trailing commas in tests.
2023-08-22 12:42:57 +02:00
Natalia
f1c0a3baf7
Added tests for model field's choices iterator/iterable values.
2023-08-22 05:55:23 +02:00
Florian Zimmermann
fbd16438f4
Fixed #33143 -- Raised RuntimeWarning when performing import-time queries.
2023-08-21 13:44:25 +02:00
Mariusz Felisiak
4c85d94bc0
Fixed utils_tests.test_lazyobject.SimpleLazyObjectPickleTestCase.
...
SimpleLazyObjectPickleTestCase executes database queries so it must
inherit from django.test.TestCase.
2023-08-20 16:09:07 +02:00
Juan Alvarez
517d3bb4dd
Fixed #34779 -- Avoided unnecessary selection of non-nullable m2m fields without natural keys during serialization.
...
By using `select_related(None)` instead of `select_related()`, the
unnecessary joins are completely avoided. Note that the current tests
already covers the change, when the field is not `null=True`.
Regression in f9936deed1
.
2023-08-19 10:29:43 +02:00
Mariusz Felisiak
6b965c6000
Fixed #34773 -- Fixed syncing DEFAULT_FILE_STORAGE/STATICFILES_STORAGE settings with STORAGES.
...
Thanks Petr Dlouhý for the report.
Bug in 32940d390a
.
2023-08-18 18:11:24 +02:00