Commit Graph

13247 Commits

Author SHA1 Message Date
yushanfans2233 14b0132e5e Fixed -- Added request to bad_request/csrf_failure view template contexts. 2023-12-04 10:52:06 +01:00
Peter Thomassen 54cb1a7e16 Fixed -- Made UniqueConstraints with fields respect nulls_distinct.
Regression in 595a2abb58.
2023-12-03 12:30:45 +01:00
Nick Pope 0f83133a35
Made GeoIP2.__del__() close all databases. 2023-12-01 13:55:45 +01:00
Nick Pope b925fefd7d Deprecated django.contrib.gis.geoip2.GeoIP2.coords().
The `ordering` argument is undocumented and of limited use, so this is
effectively the same as `GeoIP2.lon_lat()`.
2023-12-01 08:38:42 +01:00
Sarah Boyce af2fd36815 Refs -- Made Selenium tests more robust for admin_views and admin_widgets suites.
Depending on screen sizes, the selenium tests that would "click" or interact
with an element outside the scope of the visible window would produce test
failures (raising ElementNotInteractableException in CI runs).

This branch switches those to using ActionChains, which ensures that the click
(or other interaction) is performed only after successfully completing the
move to the relevant element.

Co-authored-by: Tom Carrick <tom@carrick.eu>
2023-11-30 10:39:10 -03:00
Mariusz Felisiak 37fc832a54
Fixed -- Fixed migrations crash when altering Meta.db_table_comment on SQLite.
Thanks Юрий for the report.

Regression in 78f163a4fb.
2023-11-30 10:10:27 +01:00
Nick Pope 06c5cb1284 Refs -- Removed redundant CustomChoicesTests.test_timezone_unsupported().
This test relied on the behavior of subclassing `datetime.timezone`
which is not permitted by the C-extension version of CPython's
`datetime` module. This restriction isn't enforced by the pure
Python version, nor by PyPy.

See https://github.com/python/cpython/issues/112451

It's not critical, and doesn't test any Django behavior, so just
remove it.
2023-11-29 21:12:53 +01:00
nessita 134cde8415
Removed hard-coded expected results in SeleniumTests.test_select_multiple test.
This ensures that both tests, test_select() and test_select_multiple(),
use analogous calculations for the expected amount of results, and for
the iteration when pressing "arrow down" and waiting for the ajax call
to complete.
2023-11-28 23:06:17 +01:00
Mariusz Felisiak a4931cd75a
Refs -- Added FORMS_URLFIELD_ASSUME_HTTPS transitional setting.
This allows early adoption of the new default "https".
2023-11-28 20:04:21 +01:00
David Smith 76280b4f4d Refs -- Increased test coverage of requests. 2023-11-28 09:33:59 +01:00
Nick Pope baf705f34a Refs -- Fixed some test assertions for PyPy.
These failures were due to minor inconsistencies or implementation
differences between CPython and PyPy.
2023-11-28 06:19:38 +01:00
Nick Pope 6089230d3e Refs -- Fixed mocking in utils_tests.test_http.HttpDateProcessingTests.test_parsing_rfc850.
Mocking in the `datetime` module can be tricky. In CPython the datetime
C module is used, but PyPy uses a pure Python implementation. This
caused issues with the prior approach to mocking `datetime.datetime`.

See https://docs.python.org/3/library/unittest.mock-examples.html#partial-mocking
2023-11-28 06:19:38 +01:00
Aman Pandey 0fcd72bc48 Fixed -- Made create() method of reverse many-to-one managers clear prefetch_related() cache. 2023-11-28 05:46:04 +01:00
Tom Carrick 729266c6f2 Fixed -- Fixed admin's read-only password widget and help texts alignment for tablet screen size.
Co-authored-by: Sarah Boyce <42296566+sarahboyce@users.noreply.github.com>
2023-11-27 14:42:25 -03:00
Nick Pope 9baaf89eed Refs -- Added django.utils.version.PYPY. 2023-11-27 10:37:29 +01:00
Nathaniel Conroy 0257426fe1 Fixed -- Fixed DatabaseFeatures.allows_group_by_selected_pks on MariaDB with ONLY_FULL_GROUP_BY sql mode.
Regression in 041551d716.
2023-11-27 09:20:10 +01:00
Simon Charette 978680db22
Refs -- Avoided altering passed by reference refresh_from_db(fields).
Follow up to b0ec87b857.
2023-11-25 17:01:14 +01:00
trontelj b0ec87b857 Fixed -- Prevented Model.refresh_from_db() from mutating list of fields. 2023-11-24 13:42:40 +01:00
Standa Opichal 1c6e8ec4ed Fixed -- Made multipart parsing of headers raise an error on too long headers.
This also allow customizing the maximum size of headers via
MAX_TOTAL_HEADER_SIZE.
2023-11-24 12:06:54 +01:00
Nick Pope 5e28cd3f2c
Fixed -- Deprecated django.utils.itercompat.is_iterable(). 2023-11-24 12:06:29 +01:00
Parth Verma eabfa2d0e3
Fixed -- Prevented GenericIPAddressField from mutating error messages.
Co-authored-by: Parth Verma <parth.verma@gmail.com>
2023-11-24 05:46:17 +01:00
Prashant Pandey a8adb6aa6c Fixed -- Improved ModelState error message when relations refer model classes. 2023-11-23 21:17:44 +01:00
Tom Carrick a03593967f Fixed -- Added query_params argument to RequestFactory and Client classes. 2023-11-23 10:39:29 +01:00
Simon Charette e76cc93b01
Fixed -- Fixed queryset crash when mixing aggregate and window annotations.
Regression in f387d024fc.

Just like `OrderByList` the `ExpressionList` expression used to wrap
`Window.partition_by` must implement `get_group_by_cols` to ensure the
necessary grouping when mixing window expressions with aggregate
annotations is performed against the partition members and not the
partition expression itself.

This is necessary because while `partition_by` is implemented as
a source expression of `Window` it's actually a fragment of the WINDOW
expression at the SQL level and thus it should result in a group by its
members and not the sum of them.

Thanks ElRoberto538 for the report.
2023-11-23 06:09:08 +01:00
Mariusz Felisiak 101a85a5a0
Fixed -- Fixed GeneratedFields.contribute_to_class() crash when apps are not populated.
Thanks Paolo Melchiorre for the report.

Regression in f333e3513e.
2023-11-22 13:41:32 +01:00
Sarah Boyce 828082dad9 Fixed -- Skipped GeneratedFields when remaking tables on SQLite.
Regression in f333e3513e8bdf5ffeb6eeb63021c230082e6f95.t

Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
Co-authored-by: David Sanders <shang.xiao.sanders@gmail.com>
2023-11-22 12:29:14 +01:00
Mariusz Felisiak 584fc49ac4
Refs -- Skipped Selenium requirement on daily builds for Python 3.13.
Selenium required trio and trio required cffi on Windows.
2023-11-22 09:51:22 +01:00
Michał Górny 09b4a4e2c1 Fixed runtests.py crash on PyPy.
The gc.set_threshold() call was made conditional to non-PyPy
implementations. The method is not available in PyPy3, and GC is much
less aggressive there, so the adjustment probably is not necessary.
2023-11-21 08:07:16 +01:00
Mariusz Felisiak 6af83d2ee6
Refs -- Skipped argon2-cffi requirement on daily builds for Python 3.13. 2023-11-21 07:54:18 +01:00
Mariusz Felisiak 00a950f923
Refs -- Added Python 3.13 to daily builds. 2023-11-20 19:52:56 +01:00
Mariusz Felisiak 19c4052f98
Refs -- Used Python 3.12 for GitHub actions. 2023-11-18 16:58:25 +01:00
Simon Charette 15cb3c262a Refs -- Complemented rhs filtering aggregations for __in lookup.
While this isn't a regression it's clear that similar logic should be
applied when dealing with lists of expressions passed as a lookup value.
2023-11-18 15:40:52 +01:00
Simon Charette 7530cf3900 Fixed -- Fixed crash of conditional aggregate() over aggregations.
Adjustments made to solve_lookup_type to defer the resolving of
references for summarized aggregates failed to account for similar
requirements for lookup values which can also reference annotations
through Aggregate.filter.

Regression in b181cae2e3.

Refs .

Thanks Sergey Nesterenko for the report.
2023-11-18 15:38:04 +01:00
David Smith eec7e9ba89 Refs -- Established relationship between form fieldsets and their help text.
This adds aria-describedby for widgets rendered in a fieldset such as
radios. aria-describedby for these widgets is added to the <fieldset>
element rather than each <input>.
2023-11-17 08:12:36 +01:00
David Smith 557fa51837 Refs -- Added aria-describedby test for widgets with custom id. 2023-11-17 05:43:33 +01:00
Mariusz Felisiak c705625ebf Refs -- Propagated system checks for GeneratedField.output_field. 2023-11-14 20:22:07 +01:00
Mariusz Felisiak 5875f03ce6 Fixed -- Made GeneratedField.output_field required.
Regression in f333e3513e.
2023-11-14 20:22:07 +01:00
Mariusz Felisiak de4884b114 Reverted "Refs , Refs -- Fixed crash when adding GeneratedField with string Value()."
This reverts commit 8b1acc0440.
2023-11-14 15:45:43 +01:00
Simon Charette 6364b6ee10 Fixed -- Made Concat() use || operator on PostgreSQL.
This also avoids casting string based expressions in Concat() on
PostgreSQL.
2023-11-14 10:56:20 +01:00
jedidiah bdf30b952c Fixed -- Added scope attribute to admindocs model templates. 2023-11-14 05:34:56 +01:00
Andrew Cordery ad41f1c53a Fixed -- Copied dir list when processing locale folders to avoid missing entries during os.walk traversal.
Co-authored-by: Natalia <124304+nessita@users.noreply.github.com>
2023-11-13 14:03:48 -03:00
David Sanders b863c5ffde Fixed -- Fixed queryset crash when grouping by constants on SQLite < 3.39.
On SQLite < 3.39, this forces a GROUP BY clause with a HAVING clause
when no grouping is specified.

Co-authored-by: Simon Charette <charette.s@gmail.com>
2023-11-13 12:01:40 +01:00
nessita 1b56b24f81
Fixed -- Fixed isolation of messages_tests.tests.TestLevelTags.test_lazy. 2023-11-13 09:35:57 +01:00
Adam Johnson f7389c4b07 Fixed -- Restored output for makemigrations --check.
Co-authored-by: David Sanders <shang.xiao.sanders@gmail.com>
Co-authored-by: Natalia <124304+nessita@users.noreply.github.com>
2023-11-09 10:03:19 -03:00
Simon Charette 8b1acc0440 Refs , Refs -- Fixed crash when adding GeneratedField with string Value().
This should allow smarter output_field inferring in functions dealing
with text expressions.

Regression in f333e3513e.
2023-11-08 15:48:15 +03:00
Natalia 5f2f12f61c Reverted "Fixed -- Added request to csrf_failure view's template context."
This reverts commit 535f7b5c6c.
2023-11-08 08:50:55 -03:00
Prakhar 535f7b5c6c Fixed -- Added request to csrf_failure view's template context.
Co-authored-by: nessita <124304+nessita@users.noreply.github.com>
2023-11-07 09:09:39 -03:00
Simon Charette 8a28e983df
Fixed -- Preserved db_default on combined default field addition.
Regression in 7414704e88.
2023-11-07 13:32:34 +03:00
David Sanders 797957fb48 Fixed -- Fixed migration crash for DecimalField with db_default on SQLite.
CAST() must be wrapped in parentheses to be recognized as an expression on SQLite.

Regression in 7414704e88.
2023-11-02 17:57:39 +01:00
David Sanders 1944f490f9 Refs -- Added test for altering DecimalField with db_default to non-nullable. 2023-11-02 17:57:34 +01:00
Tim Graham 208870b612 Refs -- Allowed testing GeneratedField without collation.
CockroachDB and Snowflake don't support it.
2023-11-02 13:58:46 +01:00
Antoine Cheneau 65c283be16 Fixed -- Fixed admin system check for inlines with foreign keys to proxy models.
Follow up to 0e8be73812.
2023-11-02 10:42:20 +01:00
Mariusz Felisiak 05ba4130ee Fixed CVE-2023-46695 -- Fixed potential DoS in UsernameField on Windows.
Thanks MProgrammer (https://hackerone.com/mprogrammer) for the report.
2023-11-01 06:10:30 +01:00
Akash Kumar Sen 40b3975e7d Fixed -- Made admin log actions in bulk.
This also deprecates ModelAdmin.log_deletion() and
LogEntryManager.log_action().
2023-10-31 18:06:44 +01:00
Akash Kumar Sen 45e0c5892f Refs -- Moved ModelAdmin.log_deletion() test to a separate test case. 2023-10-31 10:36:23 +01:00
Ben Cail 523fed1d2f Fixed -- Preserved HTTP_HOST in test Client when following redirects.
Co-authored-by: David Sanders <shang.xiao.sanders@gmail.com>
2023-10-31 05:29:43 +01:00
Sarah Boyce e4d012ca05 Refs -- Added exclusion support to window frames. 2023-10-30 12:04:55 +01:00
Tom Carrick 34b411762b Fixed -- Restored varchar_pattern_ops/text_pattern_ops index creation when deterministic collaction is set.
Regression in f3f9d03edf (4.2) and
8ed25d65ea (5.0).
2023-10-30 07:37:40 +01:00
Sarah Boyce 6375cee490 Refs -- Added RowRange support for positive integer start and negative integer end. 2023-10-28 15:16:07 +02:00
ksg a6c7db1d1d
Fixed -- Made EmailValidator.__eq__() ignore domain_allowlist ordering.
Signed-off-by: ksg97031 <ksg97031@gmail.com>
2023-10-28 14:35:25 +02:00
Mariusz Felisiak cf57e220a9
Fixed isolation of DatabaseWrapperLoggingTests.test_commit_debug_log(). 2023-10-27 09:05:09 +02:00
Tom Carrick e67d3580ed Fixed -- Added {% query_string %} template tag. 2023-10-26 09:57:21 +02:00
sindre 64060d1c17 Fixed -- Prevented mutating sent emails from outbox in locmem email backend. 2023-10-25 08:52:31 +02:00
Mariusz Felisiak 311718feb5 Fixed -- Avoided initializing LEVEL_TAGS when importing django.contrib.messages.
Regression in b7fe36ad37.

Thanks James Gillard for the report.
2023-10-24 14:09:31 -03:00
ksg97031 d22ba07630 Fixed -- Made FileExtensionValidator.__eq__() ignore allowed_extensions ordering. 2023-10-24 05:31:11 +02:00
Nick Pope 171f91d9ef Fixed -- Added blank choice to forms' callable choices lazily. 2023-10-23 13:44:23 -03:00
Nick Pope 74afcee234 Refs -- Extracted Field.flatchoices to flatten_choices helper function.
Co-authored-by: Natalia Bidart <124304+nessita@users.noreply.github.com>
2023-10-23 13:44:23 -03:00
Nick Pope 07fa79ef2b Refs -- 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 -- Fixed crash of warning for unbound naive datetimes. 2023-10-22 14:26:38 +02:00
laserhyena 21382e2743 Fixed -- Corrected HTML heading levels on admindocs' main page. 2023-10-20 05:44:55 +02:00
ontowhee 89d2ae257b
Fixed -- 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 -- Added --screenshots option to runtests.py and selenium tests. 2023-10-18 06:14:40 +02:00
Sarah Boyce f6629ee2c9 Refs -- Added context managers to SeleniumTestCase for changing window size. 2023-10-16 10:36:26 +02:00
Mariusz Felisiak 20b7aac7ca
Refs , Refs -- 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 -- Fixed QuerySet.aggregate() crash when referencing expressions containing subqueries.
Regression in 59bea9efd2,
complements e5c844d6f2.

Refs , .

Thanks Haldun Komsuoglu for the report.
2023-10-16 05:37:30 +02:00
Mariusz Felisiak 9fd3a0ffc8
Refs -- 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 -- 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 -- 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 -- 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 -- Fixed no options in AsGeoJSON() for geometries in non-default CRS. 2023-10-06 05:25:32 +02:00
Simon Charette ea596a52d9
Refs -- 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 -- 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 -- Made assert(Not)Contains/assertInHTML display haystacks in error messages. 2023-10-03 10:44:36 +02:00
Mariusz Felisiak 679212a47a
Refs -- 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 -- 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 -- Made assertInHTML() use unparsed needle in error messages. 2023-09-29 09:52:39 +02:00
Mariusz Felisiak 6ad0dbc8d9
Refs -- Added resetting default renderer when FORM_RENDERER is changed. 2023-09-29 08:54:13 +02:00
Dan Jacob fe835c2355 Fixed -- 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 -- Fixed migrations crash when adding GeneratedField with output_field with params. 2023-09-28 05:50:42 +02:00
Mariusz Felisiak f9e9526800
Fixed -- Added QuerySet.explain() support for GENERIC_PLAN option on PostgreSQL 16+. 2023-09-26 12:05:26 +02:00
lstaana 357365a64e Fixed -- Made admin's changelist filters render in <nav> tag. 2023-09-26 08:45:07 +02:00
David Sanders a5905b164d Fixed -- Avoided setting unused connections when initializing parallel workers. 2023-09-25 10:14:55 +02:00
David Sanders 4f2ae0644d Fixed -- 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 -- 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 -- Fixed assertTemplateUsed() context manager crash on unnamed templates. 2023-09-22 10:51:10 +02:00
toan 4de31ec680 Fixed -- Corrected resolving output_field for PositiveIntegerField.
Regression in 40b8a6174f.
2023-09-22 09:33:50 +02:00
Natalia d797243663 Fixed -- 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