Commit Graph

11031 Commits

Author SHA1 Message Date
Mariusz Felisiak b84b1921da [3.1.x] Refs #27468 -- Added tests and release notes for signing.dumps()/loads() changes.
Follow up to 71c4fb7beb.

Backport of 1d6fdca557 from master
2020-07-31 22:07:34 +02:00
Tim Graham 32cb1fe1c6 [3.1.x] Refs #31829 -- Added DatabaseFeatures.json_key_contains_list_matching_requires_list.
CockroachDB's behavior matches PostgreSQL.
Backport of 184a6eebb0 from master
2020-07-30 06:40:32 +02:00
sage 23ce3d8491 [3.1.x] Fixed #31829 -- Used JSONField __contains lookup on key transforms.
Backport of 2d8dcba03a from master
2020-07-28 20:53:11 +02:00
Mariusz Felisiak 247bcef6b4 [3.1.x] 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".

Backport of ba691933ce from master.
2020-07-28 13:08:19 +02:00
Mariusz Felisiak 028a5f86f2 [3.1.x] 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".
Backport of 02447fb133 from master
2020-07-28 11:54:35 +02:00
Mariusz Felisiak 2ff2084cfd [3.1.x] Fixed #31805 -- Fixed SchemaTests.tearDown() when table names are case-insensitive.
Backport of fd53db842c from master
2020-07-22 12:51:03 +02:00
Mariusz Felisiak 7a3fa3af68 [3.1.x] 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.
Backport of c071c408d7 from master
2020-07-22 10:58:14 +02:00
Tim Graham d004bcee0c [3.1.x] Reverted "Fixed #30300 -- Allowed migrations to be loaded from directories without __init__.py file."
This reverts commit 3cd3bebe89.
Backport of ff55adbd0d from master
2020-07-22 07:04:52 +02:00
Tom Forbes b830cc02ed [3.1.x] Used temporary directory in RestartWithReloaderTests.test_manage_py().
Using the current directory can cause a PermissionError.

Backport of 730711e828 from master
2020-07-20 09:41:28 +02:00
Florian Apolloner bfe404deb9 [3.1.x] 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>

Backport of 96a3ea39ef from master
2020-07-20 07:15:04 +02:00
Mariusz Felisiak 474f65406f [3.1.x] Pinned asgiref to 3.2 series with minimum version to 3.2.10. 2020-07-17 11:08:39 +02:00
Mariusz Felisiak 3ca8cc0df1 [3.1.x] Fixed #31790 -- Fixed setting SameSite and Secure cookies flags in HttpResponse.delete_cookie().
Cookies with the "SameSite" flag set to None and without the "secure"
flag will be soon rejected by latest browser versions.

This affects sessions and messages cookies.
Backport of 240cbb63bf from master
2020-07-16 08:17:45 +02:00
Mariusz Felisiak e6285cac83 [3.1.x] Fixed #31773 -- Fixed preserving output_field in ExpressionWrapper for combined expressions.
Thanks Thodoris Sotiropoulos for the report and Simon Charette for the
implementation idea.

Regression in df32fd42b8.
Backport of 8a6df55f2d from master
2020-07-09 11:55:45 +02:00
Carlton Gibson 84640f5ae3 [3.1.x] Fixed #31752 -- Fixed intermittent test_order_by_relational_field_through_model failure.
Set explicit datetime for M2M ordering test.

Thanks to Mariusz Felisiak for the suggestion.
Backport of b5371539a9 from master
2020-06-30 13:08:58 +02:00
Ad Timmering c944df827f [3.1.x] Fixed #30807 -- Fixed TestArchive.test_extract_file_permissions() when umask is 0o000.
Fixed test that checks permissions on files extracted from archives
with no permissions set, to not assume a default umask of 0o002.

Test regression in c95d063e77.
Backport of ec5aa2161d from master
2020-06-29 07:52:23 +02:00
Mariusz Felisiak 5263480d7f [3.1.x] Fixed #31742 -- Fixed makemigrations crash on ForeignKey to an app with mixed case label.
Regression in 9e1b6b8a66.

Thanks Ignacio Santolin for the report.
Backport of 62d85a2835 from master
2020-06-26 23:20:21 +02:00
Simon Charette b8cb14e8a0 [3.1.x] Fixed #31735 -- Fixed migrations crash on namespaced inline FK addition on PostgreSQL.
The namespace of the constraint must be included when making the
constraint immediate.

Regression in 22ce5d0031.

Thanks Rodrigo Estevao for the report.

Backport of 2e8941b6f9 from master
2020-06-24 08:59:43 +02:00
Ahmad A. Hussein ac0ff7d700 [3.1.x] Fixed #31736 -- Fixed InspectDBTransactionalTests.test_foreign_data_wrapper crash on Windows.
Backport of 798835112d from master
2020-06-23 21:00:09 +02:00
Guillermo Bonvehí b2e2489d80 [3.1.x] Fixed #31728 -- Fixed cache culling when no key is found for deletion.
DatabaseCache._cull implementation could fail if no key was found to
perform a deletion in the table. This prevented the new cache key/value
from being correctly added.

Backport of f386454d13 from master
2020-06-22 07:10:16 +02:00
Tom Forbes ac7f7eab0f [3.1.x] Fixed #31716 -- Fixed detection of console scripts in autoreloader on Windows.
Backport of 8a902b7ee6 from master
2020-06-18 13:04:44 +02:00
David Smith 9b95c3bc09 [3.1.x] Refs #31670 -- Removed whitelist/blacklist terminology in docs and comments.
Backport of 10df5b7177 from master
2020-06-17 13:16:17 +02:00
Mariusz Felisiak 42f5f2d76b [3.1.x] Fixed #31659 -- Made ExpressionWrapper preserve output_field for combined expressions.
Regression in df32fd42b8.

Thanks Simon Charette for the review.

Backport of aeb8996a67 from master
2020-06-12 07:21:19 +02:00
Michael Brown 45ec013116 [3.1.x] Fixed #28132 -- Made MultiPartParser ignore filenames with trailing slash.
Backport of 36db4dd937 from master
2020-06-11 09:12:14 +02:00
Hasan Ramezani 4385ef0119 [3.1.x] Fixed #31657 -- Fixed ordering by attnames of self-referential ForeignKeys.
Backport of 037a624120 from master
2020-06-10 12:05:31 +02:00
Hasan Ramezani bdfad57319 [3.1.x] Refs #31657 -- Added test for ordering by self-referential ForeignKeys.
Backport of c1f7de8acc from master
2020-06-10 12:05:24 +02:00
Joshua Massover 3fb69756ea [3.1.x] Fixed #31594 -- Added ASGIStaticFilesHandler.get_response_async().
Backport of 92309e53d9 from master
2020-06-08 13:00:48 +02:00
Nicolas Baccelli 83749dca7a [3.1.x] Fixed #31664 -- Reallowed using non-expressions having filterable attribute as rhs in queryset filters.
Regression in 4edad1ddf6.

Backport of b38d44229f from master
2020-06-08 09:18:32 +02:00
Mariusz Felisiak df9b9de6b0 [3.1.x] Fixed #31660 -- Fixed queryset crash when grouping by m2o relation.
Regression in 3a941230c8.

Thanks Tomasz Szymański for the report.
Backport of 78ad4b4b02 from master
2020-06-08 07:23:09 +02:00
Sasha Pachev 21adaffb6e [3.1.x] Fixed #31663 -- Made DecimalField.to_python() handle non-numeric invalid values.
Backport of 38a21f2d9e from master
2020-06-05 21:14:33 +02:00
Mariusz Felisiak 031a082d41 [3.1.x] Fixed #31654 -- Fixed cache key validation messages.
Backport of 926148ef01 from master
2020-06-05 07:22:24 +02:00
Claude Paroz acaa201527 [3.1.x] Fixed #30134 -- Ensured unlocalized numbers are string representation in templates.
Backport of 9e57b1efb5 from master
2020-06-04 11:00:40 +02:00
Claude Paroz 810e656aca [3.1.x] Refs #30134 -- Added test for {% localize off %} tag with format settings.
Backport of 51250d2f12 from master
2020-06-04 11:00:33 +02:00
Mariusz Felisiak 2265bbe7b5 [3.1.x] Refs CVE-2020-13254 -- Fixed cache.tests when KEY_PREFIX is defined.
Follow up to 2c82414914.

Backport of 229c9c6653 from master
2020-06-03 13:01:06 +02:00
Dan Palmer 580bd64c04 [3.1.x] Fixed CVE-2020-13254 -- Enforced cache key validation in memcached backends. 2020-06-03 09:31:28 +02:00
Jon Dufresne 49d7cc19e3 [3.1.x] Fixed CVE-2020-13596 -- Fixed potential XSS in admin ForeignKeyRawIdWidget. 2020-06-03 09:30:41 +02:00
Thodoris Sotiropoulos fdd2b01e8e [3.1.x] Fixed #31651 -- Made ExpressionWrapper use grouping columns from wrapped expression.
Backport of df32fd42b8 from master
2020-06-03 07:53:27 +02:00
Carles Pina 56af541790 [3.1.x] Fixed #31536 -- Fixed rendering of disabled AdminFileWidget and ClearableFileInput.
Backport of e46c2326c8 from master
2020-06-01 12:48:26 +02:00
Carlton Gibson 98fada7244 [3.1.x] Fixed #31570 -- Corrected translation loading for apps providing territorial language variants with different plural equations.
Regression in e3e48b0012.

Thanks to Shai Berger for report, reproduce and suggested fix.

Backport of dd1ca50b09 from master
2020-06-01 09:27:02 +02:00
Tom Carrick dc3234be48 [3.1.x] Refs #31034 -- Improved accessibility of admin navigation sidebar.
Backport of 780473d756 from master
2020-05-28 11:20:39 +02:00
Mariusz Felisiak 15fc360b91 [3.1.x] Fixed isolation of test_migrate_fake_initial.
Backport of 42de52affe from master
2020-05-28 09:33:17 +02:00
Laurent Tramoy df88f24b1f [3.1.x] Fixed #31614 -- Fixed aliases ordering by OrderBy() expressions of combined queryset.
Backport of 2aac176e86 from master
2020-05-26 23:35:34 +02:00
Nan Liu 114da2d045 [3.1.x] Fixed #31416 -- Made autodetector find dependencies for MTI model creation on base fields removal.
Removing a base field must take place before adding a new inherited
model that has a field with the same name.

Backport of 33c365781a from master
2020-05-26 08:34:14 +02:00
Simon Charette d91095def4 [3.1.x] Fixed #31624 -- Avoided subquery usage on QuerySet.all().delete().
Thanks Adam Johnson for the report.

Regression in 7acef095d7.

Backport of 972000420e from master
2020-05-25 08:47:51 +02:00
Fran Hrzenjak 47e21d339f [3.1.x] Fixed #31597, #31603 -- Corrected admin clear all filters link behavior.
- Show "Clear all filters" only when any filter is selected.
- Preserve query string not related with filters.

Co-Authored-By: Hasan Ramezani <hasan.r67@gmail.com>

Backport of 4484bc1b2f from master
2020-05-20 21:35:09 +02:00
Mariusz Felisiak 937314dc05 [3.1.x] Fixed #31607 -- Fixed evaluated Subquery equality.
Regression in 691def10a0.

Backport of a125da6a7c from master
2020-05-19 22:50:36 +02:00
Hannes Ljungberg 7ee19a0f78 [3.1.x] Fixed #31601 -- Fixed SearchHeadlineTests on PostgresSQL 9.6.18+, 10.13+, 11.8+, and 12.3+.
Backport of 952afc166c from master
2020-05-19 08:04:27 +02:00
Jon Dufresne 3f977c5837 [3.1.x] Updated docutils link to HTTPS and new location.
Backport of 7070d46114 from master
2020-05-18 08:46:51 +02:00
Tim Graham 5480fab290 [3.1.x] Refs #12990 -- Added DatabaseFeatures.has_json_operators.
CockroachDB also has them.
Backport of f59a2b7306 from master
2020-05-18 08:12:57 +02:00
kjpc-tech ef19aec2ca [3.1.x] Fixed #31590 -- Fixed ModelAdmin.date_hierarchy crash with an empty QuerySet.
Regression in 55cdf6c52d.

Backport of 099bce1bf0 from master
2020-05-15 07:07:49 +02:00
Mariusz Felisiak b46b0f80e8 [3.1.x] Fixed #31584 -- Fixed crash when chaining values()/values_list() after Exists() annotation and aggregation on Oracle.
Oracle requires the EXISTS expression to be wrapped in a CASE WHEN in
the GROUP BY clause.

Regression in efa1908f66.
Backport of 3a941230c8 from master
2020-05-14 15:10:28 +02:00
Jon Dufresne 1c2d0fdf3e [3.1.x] Fixed #31575 -- Added system check for admin sidebar request context processor dependency.
Co-authored-by: Carlton Gibson <carlton.gibson@noumenal.es>

Backport of d522b51c40 from master
2020-05-14 11:01:22 +02:00
Simon Charette 3913acdb29 [3.1.x] Fixed #31568 -- Fixed alias reference when aggregating over multiple subqueries.
691def10a0 made all Subquery() instances
equal to each other which broke aggregation subquery pushdown which
relied on object equality to determine which alias it should select.

Subquery.__eq__() will be fixed in an another commit but
Query.rewrite_cols() should haved used object identity from the start.

Refs #30727, #30188.

Thanks Makina Corpus for the report.

Backport of adfbf653dc from master
2020-05-14 10:26:05 +02:00
Simon Charette 8cb87a3f7c [3.1.x] Fixed #31566 -- Fixed aliases crash when chaining values()/values_list() after annotate() with aggregations and subqueries.
Subquery annotation references must be resolved if they are excluded
from the GROUP BY clause by a following .values() call.

Regression in fb3f034f1c.

Thanks Makina Corpus for the report.

Backport of 42c08ee465 from master
2020-05-14 08:39:21 +02:00
Mariusz Felisiak e078870757 [3.1.x] Fixed #31576 -- Fixed selenium tests with headless mode.
Horizontal scrollbar doesn't appear with the headless mode on small
windows, that's why window.scrollTo() is not an option for these
tests.

Tests changed after adding a navigation sidebar in
46fe506445.
Backport of 18eb852874 from master
2020-05-13 15:46:56 +02:00
Claude Paroz 58f1b07e49 Fixed #30678 -- Added support for GDAL 3. 2020-05-12 09:06:06 +02:00
Mariusz Felisiak 0668164b4a
Fixed E128, E741 flake8 warnings. 2020-05-12 08:52:23 +02:00
Tom Carrick d24ba1be7a Fixed #31034 -- Added a navigation sidebar to the admin.
Co-authored-by: elky <elky@users.noreply.github.com>
Co-authored-by: Goetz <goetz.buerkle@gmail.com>
2020-05-11 18:16:38 +02:00
Jon Dufresne d6aff369ad Refs #30116 -- Simplified regex match group access with Match.__getitem__().
The method has been available since Python 3.6. The shorter syntax is
also marginally faster.
2020-05-11 12:01:28 +02:00
Adam Johnson a8b2db1cae Optimized Model and QuerySet pickling version comparison. 2020-05-11 09:50:11 +02:00
Jon Dufresne 72a170b4c3 Fixed #25236 -- Deprecated {% ifequal %} and {% ifnotequal %} template tags.
The {% if %} tag provides all features of these tags.

Since Django 1.2 (May 17, 2010), the docs have hinted that
{% ifequal %} and {% ifnotequal %} will be deprecated in a future
Django version. Time to make it official.
2020-05-11 09:07:33 +02:00
Jon Dufresne d8cb8fdf40 Switched unittest.TestCase to SimpleTestCase in template_tests/test_nodelist.py. 2020-05-11 07:56:11 +02:00
Yash Saini ccb1cfb64e Fixed #31548 -- Fixed URLValidator crash on non-strings. 2020-05-08 20:53:05 +02:00
Yash Saini bda6ade7b7 Added URLValidator test for missing scheme. 2020-05-08 20:50:25 +02:00
Hasan Ramezani 87faeee4e0 Fixed #31528 -- Made collectstatic management command run staticfiles checks. 2020-05-08 12:47:57 +02:00
François Freitag 01f8d19ef9 Fixed tests isolation in logging_tests.
The SetupConfigureLogging test case does not restore the logging config
after its execution. It leaves the logger django.request with an empty
handlers array.

This also removes the last use of LOGGING_CONFIG, introduced in
43503b093a.
2020-05-08 10:49:34 +02:00
dbxnr fc0f7f6c15 Fixed #31157 -- Fixed displaying read-only JSONField values in admin. 2020-05-08 09:44:42 +02:00
dbxnr 675ce4dd35 Refs #31157 -- Added tests for display_for_field() with empty JSONField. 2020-05-08 09:37:49 +02:00
Paolo Melchiorre 2e0f04507b Added tests for loaddata with gzip/bzip2 compressed fixtures.
Co-authored-by: Adam Johnson <me@adamj.eu>
2020-05-08 08:16:50 +02:00
sage 6789ded0a6 Fixed #12990, Refs #27694 -- Added JSONField model field.
Thanks to Adam Johnson, Carlton Gibson, Mariusz Felisiak, and Raphael
Michel for mentoring this Google Summer of Code 2019 project and
everyone else who helped with the patch.

Special thanks to Mads Jensen, Nick Pope, and Simon Charette for
extensive reviews.

Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2020-05-08 07:23:31 +02:00
Mariusz Felisiak f97f71f592 Refs #12990 -- Bumped mysqlclient requirement to >= 1.4.0.
MySQLdb.constants.FIELD_TYPE.JSON was added in mysqlclient 1.4.0rc2.
2020-05-08 06:14:42 +02:00
Mariusz Felisiak 106e8dc91a
Completed test coverage for ExclusionConstraint.
Dropping exclusion constraints was untested.
2020-05-07 10:02:14 +02:00
Carlton Gibson 92507bf3ea Fixed #31515 -- Made ASGIHandler dispatch lifecycle signals with thread sensitive. 2020-05-06 09:42:02 +02:00
Adam Johnson 1c2c6f1b51
Fixed a/an typos in "SQL" usage. 2020-05-06 06:35:26 +02:00
Mariusz Felisiak fb52176a6f Made DateTimePickerShortcutsSeleniumTests.test_date_time_picker_shortcuts() less flaky.
Moved picking the current time closer to the actual click.
2020-05-05 11:00:05 +02:00
Mariusz Felisiak b73e66e758
Fixed #31538 -- Fixed Meta.ordering validation lookups that are not transforms.
Regression in 440505cb2c.

Thanks Simon Meers for the report.
2020-05-05 09:08:29 +02:00
David Smith 2522559d1a Fixed #31534 -- Deprecated django.conf.urls.url(). 2020-05-05 07:34:34 +02:00
Adam Johnson d17b380653 Refs #30573 -- Rephrased "Of Course" and "Obvious(ly)" in documentation and comments. 2020-05-04 12:10:47 +02:00
Rasmus Wriedt Larsen f6d0bd208a
Corrected opts argument of colorize in TermColorTests.test_colorize_empty_text(). 2020-05-04 11:34:08 +02:00
Tom Forbes c00bc27945 Refs #30372 -- Stopped watching built-in Django translation files by auto-reloader. 2020-05-04 09:13:47 +02:00
Nick Pope 8f10ceaa90 Changed `'%s' % value` pattern to `str(value)`. 2020-05-04 08:27:18 +02:00
François Freitag a0df5dea33
Removed unnecessary inner methods in CreatesuperuserManagementCommandTestCase. 2020-05-01 20:51:44 +02:00
Ian Foote b4068bc656 Fixed #31455 -- Added support for deferrable exclusion constraints on PostgreSQL. 2020-05-01 09:08:36 +02:00
Ian Foote c226c6cb32 Fixed #20581 -- Added support for deferrable unique constraints. 2020-04-30 10:43:50 +02:00
Mariusz Felisiak 555e3a848e
Removed unused __str__() methods in tests models.
Follow up to 6461583b6c.
2020-04-30 09:13:23 +02:00
Hasan Ramezani f121621073 Fixed #31521 -- Skipped test_parsing_rfc850 test on 32-bit systems. 2020-04-30 06:51:47 +02:00
Mariusz Felisiak 54646a423b
Refs #27468 -- Made user sessions use SHA-256 algorithm. 2020-04-29 16:45:00 +02:00
Jon Dufresne 0dafadadb9 Refs #30400 -- Improved typography of user facing strings in admin changelist. 2020-04-29 07:01:46 +02:00
Jon Dufresne bdff97d373 Added tests for saving with pending actions in admin changelist. 2020-04-29 07:01:41 +02:00
Hasan Ramezani 68fc21b378 Fixed #29249 -- Made JSON and YAML serializers use Unicode by default. 2020-04-28 11:11:39 +02:00
Hasan Ramezani 8970bb4cfd Refs #29249 -- Added tests for serializing Unicode data with XML serializer. 2020-04-28 11:11:39 +02:00
François Freitag 9ef4a18dbe Changed django.forms.ValidationError imports to django.core.exceptions.ValidationError.
Co-Authored-By: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2020-04-28 10:49:00 +02:00
Richard Campen 67b334fbaf Fixed #31517 -- Fixed HashedFilesMixin.hashed_name() if hash of the file is None. 2020-04-28 08:25:07 +02:00
François Freitag f19bb54fb1 Added test for squashmigrations' output. 2020-04-28 06:32:43 +02:00
François Freitag abea86f9e4 Removed unnecessary tuple wrapping of single format string argument. 2020-04-27 08:30:16 +02:00
François Freitag 687cb38a05 Removed unnecessary capturing/hiding of stdout/stderr in various tests. 2020-04-27 08:06:12 +02:00
François Freitag a8d175c297 Disabled management commands output with verbosity 0 in test_regression_22823_unmigrated_fk_to_migrated_model. 2020-04-27 07:43:09 +02:00
François Freitag da606513db
Removed unnecessary capturing of stdout in test_makemigrations_non_interactive_not_null_addition. 2020-04-25 20:53:53 +02:00
Tim Schilling a92cc84b4a Refs #31369 -- Deprecated models.NullBooleanField in favor of BooleanField(null=True). 2020-04-24 10:10:45 +02:00
David Wobrock 533b208775 Fixed #29224 -- Fixed removing index_together indexes if exists unique_together constraint on the same fields. 2020-04-23 12:28:51 +02:00
Hannes Ljungberg 447980e72a Fixed #31500 -- Fixed detecting of unique fields in QuerySet.in_bulk() when using Meta.constraints.
Detection of unique fields now takes into account non-partial unique
constraints.
2020-04-23 08:07:08 +02:00