Ryan Hiebert
502e75f9ed
Fixed #31750 -- Made models.Field equality compare models for inherited fields.
2020-09-09 20:52:59 +02:00
Hasan Ramezani
2808cdc8fb
Fixed #31962 -- Made SessionMiddleware raise SessionInterrupted when session destroyed while request is processing.
2020-09-09 09:04:28 +02:00
Petr Čermák
fc1446073e
Fixed #31987 -- Fixed Cast() with DurationField on MySQL.
2020-09-09 07:01:18 +02:00
François Freitag
57dadfac3c
Fixed #31944 -- Used addCleanup() to register TestContextDecorator cleanups.
...
Cleanups from addCleanup() are scheduled to happen in reverse order to
the order they are added (LIFO). Ensures each cleanup is executed from
the innermost to the outermost.
2020-09-07 08:07:26 +02:00
Jon Dufresne
11ebc6479f
Fixed #31791 -- Made technical 404 debug page display the tried URL patterns for Http404.
2020-09-07 06:54:19 +02:00
Hasan Ramezani
d2d08c8cf6
Fixed #31982 -- Made HttpResponse.set_cookie() cast max_age argument to an integer.
2020-09-05 10:07:23 +02:00
Mariusz Felisiak
e6b5108acc
Fixed #27417 -- Made RenameField operation a noop for field name case changes on Oracle.
...
Field names are always uppercased in the Oracle backend. Changing case
should be a noop to avoid database errors: "ORA-00957: duplicate column
name".
2020-09-04 20:27:23 +02:00
jpribyl
94e2238107
Refs #31894 -- Added tests for JSONField key lookups with QuerySet.exclude().
2020-09-04 09:04:24 +02:00
Nick Pope
fd209f62f1
Refs #21231 -- Backport urllib.parse.parse_qsl() from Python 3.8.
2020-09-03 14:24:42 +02:00
Collin Anderson
daa26acc4e
Fixed #31978 -- Added username hint to admin's password reset confirmation form.
2020-09-03 09:25:21 +02:00
Mariusz Felisiak
6a881197e9
Refs #31901 -- Fixed SeleniumTests.test_list_editable_popups with headless mode.
2020-09-02 15:16:03 +02:00
Brian Helba
2d42e23b6d
Fixed #31941 -- Corrected FileField.deconstruct() with a callable storage.
2020-09-02 11:06:18 +02:00
Tim Park
ece18207cb
Fixed #31858 -- Reallowed whitespaces in URL paths outside of parameters.
...
Regression in 22394bd3a1
.
Thanks David Smith for the review.
2020-09-02 10:24:14 +02:00
Nick Pope
a629139425
Refs #29887 , Refs #24212 -- Added servers configuration hook for memcached backends.
...
The servers property can be overridden to allow memcached backends to
alter the server configuration prior to it being passed to instantiate
the client. This allows avoidance of documentation for per-backend
differences, e.g. stripping the 'unix:' prefix for pylibmc.
2020-09-02 08:51:17 +02:00
Joe Jackson
9d5d865fd6
Fixed #31948 -- Added tzinfo parameter to TruncDate() and TruncTime().
2020-09-02 07:42:27 +02:00
Nick Pope
cc1f2c6a19
Refs #29887 -- Simplified memcached client instantiation.
2020-09-01 10:51:00 +02:00
Mariusz Felisiak
1853724aca
Fixed CVE-2020-24584 -- Fixed permission escalation in intermediate-level directories of the file system cache on Python 3.7+.
2020-09-01 09:17:23 +02:00
Mariusz Felisiak
8d7271578d
Fixed CVE-2020-24583, #31921 -- Fixed permissions on intermediate-level static and storage directories on Python 3.7+.
...
Thanks WhiteSage for the report.
2020-09-01 09:17:23 +02:00
Federico Jaramillo Martínez
179d9dc0c2
Fixed #31952 -- Fixed EmptyFieldListFilter crash with reverse relationships.
...
Thanks dacotagh for the report.
2020-08-31 09:28:05 +02:00
Simon Charette
f6405c0b8e
Fixed #31965 -- Adjusted multi-table fast-deletion on MySQL/MariaDB.
...
The optimization introduced in 7acef095d7
did not properly handle
deletion involving filters against aggregate annotations.
It initially was surfaced by a MariaDB test failure but misattributed
to an undocumented change in behavior that resulted in the systemic
generation of poorly performing database queries in 5b83bae031
.
Thanks Anton Plotkin for the report.
Refs #23576 .
2020-08-31 08:11:28 +02:00
Simon Charette
38fce49c82
Fixed #31919 -- Resolved output_field of IntegerField subclasses combinations.
2020-08-31 06:42:40 +02:00
Simon Charette
40894f2967
Refs #30446 -- Added tests for resolving output_field of CombinedExpression.
2020-08-31 06:40:39 +02:00
Mariusz Felisiak
0be51d2226
Fixed #31956 -- Fixed crash of ordering by JSONField with a custom decoder on PostgreSQL.
...
Thanks Marc Debureaux for the report.
Thanks Simon Charette, Nick Pope, and Adam Johnson for reviews.
2020-08-28 19:09:46 +02:00
Mariusz Felisiak
2210539142
Refs #31956 -- Added test for ordering by JSONField with a custom decoder.
2020-08-28 19:09:41 +02:00
Koen De Wit
4c0b4720b0
Fixed #31954 -- Fixed migration optimization for MTI model creation with parent model with mixed case app label.
2020-08-28 13:35:13 +02:00
Kevin Michel
225261b701
Refs #31928 -- Added various middlewares tests for detecting when get_response is coroutine.
2020-08-28 12:33:29 +02:00
Kevin Michel
825ce75fae
Fixed #31928 -- Fixed detecting an async get_response in various middlewares.
...
SecurityMiddleware and the three cache middlewares were not calling
super().__init__() during their initialization or calling the required
MiddlewareMixin._async_check() method.
This made the middlewares not properly present as coroutine and
confused the middleware chain when used in a fully async context.
Thanks Kordian Kowalski for the report.
2020-08-28 12:33:15 +02:00
Kevin Michel
68d7cf4054
Refs #26601 -- Added various middlewares tests for deprecation of passing None as get_response.
2020-08-28 12:33:15 +02:00
Kevin Michel
abbdd3a622
Added tests for cache middlewares constructors.
2020-08-28 10:00:39 +02:00
Mariusz Felisiak
1251772cb8
Fixed #31936 -- Fixed __in lookup on key transforms for JSONField.
...
This resolves an issue on databases without a native JSONField
(MariaDB, MySQL, SQLite, Oracle), where values must be wrapped.
Thanks Sébastien Pattyn for the report.
2020-08-26 22:13:37 +02:00
Jeremy Lainé
9c92924cd5
Fixed #31942 -- Made settings cleansing work with dictionary settings with non-string keys.
2020-08-26 11:59:37 +02:00
Kaustubh
b9be11d442
Fixed #31918 -- Allowed QuerySet.in_bulk() to fetch on a single distinct field.
2020-08-26 09:43:39 +02:00
Michael Galler
547a07fa7e
Fixed #31905 -- Made MiddlewareMixin call process_request()/process_response() with thread sensitive.
...
Co-authored-by: Carlton Gibson <carlton.gibson@noumenal.es>
2020-08-26 07:13:49 +02:00
Tim Graham
ea880ec233
Fixed #24533 -- Dropped PostgreSQL sequence and Oracle identity when migrating away from AutoField.
2020-08-24 14:32:07 +02:00
Nick Pope
b312421511
Refs #30897 -- Added test for WAL option to Queryset.explain() on PostgreSQL 13+.
2020-08-24 11:47:38 +02:00
Mariusz Felisiak
bb8f66934d
Fixed #31877 -- Reverted "Fixed #19878 -- Deprecated TemplateView passing URL kwargs into context."
...
This reverts commit 4ed534758c
.
2020-08-24 11:37:59 +02:00
Mariusz Felisiak
04e87e79a0
Refs #31877 -- Reverted "Fixes #31877 -- Used lazy() for TemplateView kwarg deprecation warning."
...
This reverts commit 20799cc0a6
.
2020-08-24 11:37:59 +02:00
Nick Pope
b5acb9db75
Fixed #31907 -- Fixed missing validate_key() calls in cache backends.
2020-08-24 09:41:21 +02:00
Nick Pope
9e04b242ee
Refs #31907 -- Added cache key validation tests for cache operations.
2020-08-24 09:33:55 +02:00
Tim Graham
7ca42974ee
Added assertions for the results of migrating an integer pk to AutoField.
2020-08-24 06:45:48 +02:00
Mariusz Felisiak
4376c2c7f8
Fixed #31895 -- Fixed crash when decoding invalid session data.
...
Thanks Matt Hegarty for the report.
Regression in d4fff711d4
.
2020-08-19 12:06:00 +02:00
Maxim Petrov
bf6d07730c
Fixed #31902 -- Fixed crash of ExclusionConstraint on expressions with params.
2020-08-19 06:43:54 +02:00
Mariusz Felisiak
35b03788b0
Refs #9061 -- Allowed GenericInlineFormSet to disable deleting extra forms.
...
Follow up to 162765d6c3
.
2020-08-18 09:37:15 +02:00
Mariusz Felisiak
3254991762
Refs #20347 -- Allowed customizing the maximum number of instantiated forms in generic_inlineformset_factory().
...
Follow up to 433dd737f9
.
2020-08-18 09:37:15 +02:00
Ahmad A. Hussein
493b26bbfc
Fixed #31888 -- Avoided module-level MySQL queries in tests.
2020-08-17 09:31:16 +02:00
Iuri de Silvio
632ccffc49
Fixed #31826 -- Made AlterField operation a noop when adding db_column.
...
AlterField operation with adding a db_column is a noop if the column
name is not changed.
2020-08-14 13:13:36 +02:00
Yan Mitrofanov
b88f98738f
Fixed #31878 -- Made createsuperuser respect --database option in default usernames.
2020-08-14 11:08:20 +02:00
Yan Mitrofanov
552bb82928
Fixed typo in tests/auth_tests/test_management.py docstring.
2020-08-14 11:08:12 +02:00
Ahmad A. Hussein
61a0ba43cf
Refs #31811 -- Added optional timing outputs to the test runner.
2020-08-13 17:17:15 +02:00
Simon Charette
51297a9232
Fixed #31792 -- Made Exists() reuse QuerySet.exists() optimizations.
...
The latter is already optimized to limit the number of results, avoid
selecting unnecessary fields, and drop ordering if possible without
altering the semantic of the query.
2020-08-13 14:10:36 +02:00
Iuri de Silvio
7f4c9222df
Fixed #31825 -- Made RenameField operation a noop for fields with db_column.
2020-08-13 13:14:58 +02:00
Adam Johnson
20799cc0a6
Fixes #31877 -- Used lazy() for TemplateView kwarg deprecation warning.
...
SimpleLazyObjects cause a crash when filtering.
Thanks Tim L. White for the report.
Regression in 4ed534758c
.
2020-08-13 07:26:10 +02:00
Pat Garcia
8954f255bb
Fixed #31382 -- Made Model.save(update_fields=...) raise ValueError on non-concrete fields.
2020-08-12 21:13:55 +02:00
Gert Burger
94ea79be13
Fixed #31863 -- Prevented mutating model state by copies of model instances.
...
Regression in bfb746f983
.
2020-08-12 12:43:42 +02:00
Tom Carrick
63300f7e68
Fixed #21181 -- Added Collate database function.
...
Thanks Simon Charette for reviews.
2020-08-11 22:21:08 +02:00
Daniel Hillier
60626162f7
Fixed #31866 -- Fixed locking proxy models in QuerySet.select_for_update(of=()).
2020-08-11 11:55:10 +02:00
Carlton Gibson
0aeb802cf0
Fixed #31865 -- Adjusted admin nav sidebar template to reduce debug logging.
...
Thanks to Mariusz Felisiak for review.
2020-08-11 11:42:15 +02:00
Mariusz Felisiak
287e36bd22
Refs #31180 -- Fixed unreachable assertions in apps tests.
2020-08-11 10:31:09 +02:00
Iuri de Silvio
ebd78a9f97
Fixed #31870 -- Fixed crash when populating app registry with empty or without apps module.
...
Regression in 3f2821af6b
.
2020-08-10 20:16:45 +02:00
Iuri de Silvio
58a336a674
Fixed #31831 -- Fixed migration operations ordering when adding order_with_respect_to and constraints/indexes.
2020-08-08 20:43:45 +02:00
Iuri de Silvio
366a93f174
Refs #31831 -- Added autodector test for unique/index_together on _order field.
2020-08-08 20:43:40 +02:00
Mariusz Felisiak
99abfe8f4d
Fixed #31864 -- Fixed encoding session data during transition to Django 3.1.
...
Thanks אורי for the report.
2020-08-07 21:42:39 +02:00
Konstantin Alekseev
e5118b545b
Used mock.Mock() in SMTPBackendTests.
...
Using bool caused mypy typecheck failures.
2020-08-07 20:31:47 +02:00
Nick Pope
0a306f7da6
Fixed #25513 -- Extracted admin pagination to Paginator.get_elided_page_range().
2020-08-06 12:38:56 +02:00
Nick Pope
f35840c196
Refs #25513 -- Fixed admin pagination elision bounds.
...
It doesn't make sense to elide a single page number which could be a
clickable link to that page. We only want to elide two or more pages.
2020-08-06 12:38:56 +02:00
Nick Pope
b203ec70fd
Refs #25513 -- Adjusted admin pagination to be 1-indexed.
2020-08-06 12:38:56 +02:00
Jacob Walls
c7e7f176c1
Fixed #26977 -- Made abstract models raise TypeError when instantiating.
2020-08-05 06:37:04 +02:00
Mariusz Felisiak
d907371ef9
Fixed #31842 -- Added DEFAULT_HASHING_ALGORITHM transitional setting.
...
It's a transitional setting helpful in migrating multiple instance of
the same project to Django 3.1+.
Thanks Markus Holtermann for the report and review, Florian
Apolloner for the implementation idea and review, and Carlton Gibson
for the review.
2020-08-04 09:35:24 +02:00
Mariusz Felisiak
7c929fcf7c
Refs #27468 -- Fixed TestSigner.test_dumps_loads_legacy_signature.
...
Added in 1d6fdca557
.
2020-08-01 20:39:18 +02:00
Mariusz Felisiak
1d6fdca557
Refs #27468 -- Added tests and release notes for signing.dumps()/loads() changes.
...
Follow up to 71c4fb7beb
.
2020-07-31 22:05:02 +02:00
Alexandr Tatarinov
f4ac167119
Fixed #27719 -- Added QuerySet.alias() to allow creating reusable aliases.
...
QuerySet.alias() allows creating reusable aliases for expressions that
don't need to be selected but are used for filtering, ordering, or as
a part of complex expressions.
Thanks Simon Charette for reviews.
2020-07-31 13:19:33 +02:00
Mariusz Felisiak
88af11c58b
Refs #27996 -- Fixed postgres_tests crash if not running with PostgreSQL.
2020-07-31 12:38:09 +02:00
David Smith
e74b3d724e
Bumped minimum isort version to 5.1.0.
...
Fixed inner imports per isort 5.
isort 5.0.0 to 5.1.0 was unstable.
2020-07-30 10:58:59 +02:00
Viktor Garske
1173db4a16
Fixed #31822 -- Added support for comments URL per feed item.
...
The item_comments hook returns a comments URL which is then used by the
feed builder.
2020-07-30 07:36:27 +02:00
Tim Graham
184a6eebb0
Refs #31829 -- Added DatabaseFeatures.json_key_contains_list_matching_requires_list.
...
CockroachDB's behavior matches PostgreSQL.
2020-07-30 06:38:02 +02:00
David Smith
95da207bdb
Fixed #28507 -- Made ValidationError.__eq__() ignore messages and params ordering.
...
Co-authored-by: caleb logan <clogan202@gmail.com>
2020-07-29 12:04:13 +02:00
Florian Demmer
16218c2060
Fixed #27395 -- Added sitemap 'alternates' generation.
...
Updated the sitemap generator and default template to optionally
include link elements with hreflang attribute to alternate language
URLs.
2020-07-29 11:48:29 +02:00
Carlton Gibson
50e1ccbbea
Refs #27395 -- Added XML namespace declaration to sitemap template.
...
As per Google recommendations:
https://support.google.com/webmasters/answer/189077?hl=en
2020-07-29 11:48:29 +02:00
Florian Apolloner
948a874425
Fixed #29324 -- Made SECRET_KEY validation lazy (on first access).
2020-07-29 09:06:54 +02:00
Hasan Ramezani
9c9a3fe118
Fixed #31783 -- Fixed crash when filtering againts "negate" field.
...
Thanks Simon Charette for the initial patch.
2020-07-29 08:20:58 +02:00
David Smith
b6dfdaff33
Completed test coverage for colorize().
2020-07-29 07:57:06 +02:00
sage
2d8dcba03a
Fixed #31829 -- Used JSONField __contains lookup on key transforms.
2020-07-28 13:10:12 +02:00
Mariusz Felisiak
ba691933ce
Fixed #31836 -- Dropped support for JSONField __contains and __contained_by lookups on SQLite.
...
The current implementation works only for basic examples without
supporting nested structures and doesn't follow "the general principle
that the contained object must match the containing object as to
structure and data contents, possibly after discarding some
non-matching array elements or object key/value pairs from the
containing object".
2020-07-28 13:06:52 +02:00
Mariusz Felisiak
02447fb133
Fixed #31835 -- Dropped support for JSONField __contains lookup on Oracle.
...
The current implementation works only for basic examples without
supporting nested structures and doesn't follow "the general principle
that the contained object must match the containing object as to
structure and data contents, possibly after discarding some
non-matching array elements or object key/value pairs from the
containing object".
2020-07-28 11:54:01 +02:00
Nick Pope
628c4a26ee
Refs #27996 -- Doc'd no extension required for RandomUUID() on PostgreSQL 13+.
...
https://www.postgresql.org/docs/13/functions-uuid.html
https://www.postgresql.org/docs/13/pgcrypto.html#id-1.11.7.34.10.5
2020-07-28 07:21:16 +02:00
Jon Dufresne
83fbaa9231
Fixed #31806 -- Made validators include the value in ValidationErrors.
2020-07-27 13:03:26 +02:00
Jon Dufresne
013e06bb37
Refs #31806 -- Added tests for including the value in some ValidationErrors.
2020-07-27 13:03:19 +02:00
Mariusz Felisiak
f4e93919e4
Fixed #31815 -- Fixed schema value encoding on PostgreSQL.
2020-07-27 06:39:02 +02:00
Matthias Kestenholz
c1f8d87bb0
Fixed #31812 -- Fixed FileField.model for fields defined in abstract models.
...
Regression in a93425a37f
.
2020-07-24 11:06:57 +02:00
Parth Verma
41065cfed5
Fixed #31802 -- Added system check for non-integer SITE_ID.
2020-07-24 10:41:55 +02:00
Mariusz Felisiak
fd53db842c
Fixed #31805 -- Fixed SchemaTests.tearDown() when table names are case-insensitive.
2020-07-22 12:49:56 +02:00
Mariusz Felisiak
c071c408d7
Fixed #31797 -- Skipped schema tests on specific MariaDB versions.
...
test_alter_not_unique_field_to_primary_key() test is affected by
https://jira.mariadb.org/browse/MDEV-19598 on MariaDB 10.4.4 to 10.5.1.
test_alter_pk_with_self_referential_field() test is affected by
https://jira.mariadb.org/browse/MDEV-22775 on MariaDB 10.4 series
from 10.4.13.
2020-07-22 10:57:38 +02:00
Tim Graham
ff55adbd0d
Reverted "Fixed #30300 -- Allowed migrations to be loaded from directories without __init__.py file."
...
This reverts commit 3cd3bebe89
.
2020-07-22 07:04:06 +02:00
Aymeric Augustin
3f2821af6b
Fixed #31180 -- Configured applications automatically.
2020-07-21 10:35:12 +02:00
David Chorpash
6ec5eb5d74
Refs #31720 -- Defined default output_field of BoolAnd() and BoolOr() aggregate functions.
2020-07-21 06:42:51 +02:00
Jon Dufresne
796be5901a
Fixed #31769 -- Improved default naming of merged migrations.
...
47 gives 60 in total (47 + 5 + 5 + 3).
2020-07-20 15:04:22 +02:00
Jon Dufresne
e1e4fd707f
Used context manager version of tempfile.TemporaryDirectory() in utils_tests.test_autoreload.
2020-07-20 11:08:23 +02:00
Mariusz Felisiak
83f55aafdd
Fixed #17653 -- Allowed using zero as AutoFields value on MySQL if NO_AUTO_VALUE_ON_ZERO SQL mode is enabled.
2020-07-20 09:48:31 +02:00
Tom Forbes
730711e828
Used temporary directory in RestartWithReloaderTests.test_manage_py().
...
Using the current directory can cause a PermissionError.
2020-07-20 09:16:16 +02:00
Florian Apolloner
96a3ea39ef
Fixed #31784 -- Fixed crash when sending emails on Python 3.6.11+, 3.7.8+, and 3.8.4+.
...
Fixed sending emails crash on email addresses with display names longer
then 75 chars on Python 3.6.11+, 3.7.8+, and 3.8.4+.
Wrapped display names were passed to email.headerregistry.Address()
what caused raising an exception because address parts cannot contain
CR or LF.
See https://bugs.python.org/issue39073
Co-Authored-By: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2020-07-20 07:10:40 +02:00