Commit Graph

30940 Commits

Author SHA1 Message Date
Claude Paroz 0638b4e23d Fixed #33888 -- Fixed get_select2_language() crash with no language activated.
Regression in 3079133c73.
2022-08-03 19:51:25 +02:00
NOTHING a2792d09ad
Fixed typo in docs/releases/4.2.txt. 2022-08-03 18:40:42 +02:00
Aarni Koskela e7afb8a180 Fixed #33886 -- Reallowed using GeoIP2() when GEOS is not installed.
Regression in 31bef51d8e.
2022-08-03 16:55:23 +02:00
Alberto Planas 4e13b40a76
Fixed #33887 -- Fixed test_fails_squash_migration_manual_porting() on final tags.
Regression in 7c318a8bdd.
2022-08-03 16:36:04 +02:00
Mariusz Felisiak cb791a2540
Fixed #33872 -- Deprecated django.contrib.postgres.fields.CIText/CICharField/CIEmailField/CITextField. 2022-08-03 11:42:51 +02:00
Carlton Gibson 09e837c5d9 Added stub release notes for 4.1.1. 2022-08-03 10:52:38 +02:00
Carlton Gibson a4cb1dae63 Updated release notes for Django 4.1 release. 2022-08-03 10:26:00 +02:00
Carlton Gibson 57c7220280 Added CVE-2022-36359 to security archive. 2022-08-03 09:09:48 +02:00
Carlton Gibson bd062445cf Fixed CVE-2022-36359 -- Escaped filename in Content-Disposition header.
Thanks to Motoyasu Saburi for the report.
2022-08-03 08:46:31 +02:00
Carlton Gibson 9062c23de8 Adjusted version 4.0.7 release notes. 2022-08-03 08:36:32 +02:00
Mariusz Felisiak 919e65b21e Updated translations from Transifex.
This also fixes related i18n tests.

Forwardport of a3bab93324 from stable/4.1.x.

Co-authored-by: Claude Paroz <claude@2xlibre.net>
2022-08-03 08:04:34 +02:00
Sarah Abderemane bc7aa2a5e9 Fixed #33690 -- Added switch button for dark mode in the admin. 2022-08-02 17:14:24 +02:00
Carlton Gibson 5028a02352 Doc'd TextField.db_collation as optional.
Matches CharField.db_collation docs.

Thanks to Paolo Melchiorre for the report.
2022-08-02 15:16:42 +02:00
Mariusz Felisiak ab1955a05e
Fixed #33881 -- Added support for database collations to ArrayField(Char/TextFields). 2022-08-02 11:44:26 +02:00
Carlton Gibson 89e695a69b Fixed #33876, Refs #32229 -- Made management forms render with div.html template.
Thanks to Claude Paroz for the report.
2022-08-02 10:30:09 +02:00
Claude Paroz 44c24bf028 Refs #25706 -- Removed inline CSS in the openlayers widget template. 2022-08-01 20:29:49 +02:00
Claude Paroz 2aa6fb2121
Made MapWidget a JS class. 2022-08-01 09:33:08 +02:00
Mariusz Felisiak d38324edc8 Ignored c18861804f formatting changes in git blame. 2022-07-31 09:24:39 +02:00
Mariusz Felisiak c18861804f Fixed warnings per flake8 5.0.0. 2022-07-31 08:16:19 +02:00
Claude Paroz 1e5bbbb2a8 Fixed #33442 -- Allowed GeoIP2 to use DB-IP Lite datasets. 2022-07-30 19:29:45 +02:00
rharri 6654289f5b Fixed typo in docs/topics/testing/tools.txt. 2022-07-29 08:26:27 +02:00
Marcelo Galigniana 564437f767 Fixed #33726 -- Added skip-link to admin for keyboard navigation. 2022-07-28 11:52:48 +02:00
Mariusz Felisiak 88dba2e3fd
Fixed collation tests on MySQL 8.0.30+.
The utf8_ collations are renamed to utf8mb3_* on MySQL 8.0.30+.
2022-07-27 21:36:25 +02:00
Nick Pope 9dff316be4 Refs #32948, Refs #32946 -- Used Q.create() internally for dynamic Q() objects.
Node.create() which has a compatible signature with Node.__init__()
takes in a single `children` argument rather than relying in unpacking
*args in Q.__init__() which calls Node.__init__().

In addition, we were often needing to unpack iterables into *args and
can instead pass a list direct to Node.create().
2022-07-27 10:06:24 +02:00
Nick Pope 845667f2d1 Refs #32948 -- Simplified and optimized Q._combine() and __invert__().
- Removed use of Q.deconstruct() in Q._combine().
- Simplified and optimized Q.__invert__() by taking a shallow copy and
  swapping the negated attribute only.
- Simplified construction in Q._combine().
- Simplified conditions in Q._combine() as Q.conditional = True the
  first isinstance() check is unnecessary.
- Removed copy.copy() branch in Q._combine().

Co-authored-by: Keryn Knight <keryn@kerynknight.com>
2022-07-27 10:06:24 +02:00
Nick Pope 19b866c254 Refs #32948 -- Added Node.__copy__().
This allows the copy.copy() usage in the Q._combine() method to finish
sooner, instead of having to fallback to using the __reduce_ex__(4)
method.

Thia also avoids having to fall into copy.copy() at in Q._combine(),
when combining a Q() with another Q().

Co-authored-by: Keryn Knight <keryn@kerynknight.com>
2022-07-27 10:06:24 +02:00
Nick Pope ed9eca8457 Refs #32948 -- Simplified WhereNode and Node.__deepcopy__()/add().
We can use copy() in Node.add() instead of create() as we don't need the
children to be cloned via [:] subscript in __init__().
2022-07-27 10:06:24 +02:00
Nick Pope ddf0002bb7 Refs #32948 -- Renamed Node._new_instance() to Node.create().
Node._new_instance() was added in
6dd2b5468f to work around Q.__init__()
having an incompatible signature with Node.__init__().

It was intended as a hook that could be overridden if subclasses needed
to change the behaviour of instantiation of their specialised form of
Node. In practice this doesn't ever seem to have been used for this
purpose and there are very few calls to Node._new_instance() with other
code, e.g. Node.__deepcopy__() calling Node and overriding __class__ as
required.

Rename this to Node.create() to make it a more "official" piece of
private API that we can use to simplify a lot of other areas internally.

The docstring and nearby comment have been reworded to read more
clearly.
2022-07-27 10:06:24 +02:00
Carlton Gibson cadd864f68 Adjusted release notes for 4.0.7 and 3.2.15. 2022-07-27 10:03:06 +02:00
Carlton Gibson 0c1675781e Added release date and stub release notes for 4.0.7 and 3.2.15 releases. 2022-07-27 09:23:40 +02:00
Nick Pope cc52e02c96 Refs #32948 -- Added more tests for django.utils.tree.Node.
The tests for creating new instances or copying instances of Node and
its subclasses didn't fully capture the behaviour of the implementation,
particularly around whether the `children` list or is contents were the
same as the source.
2022-07-27 07:58:29 +02:00
Nick Pope 4f8bc75bc3 Removed obsolete docstring from WhereNode.clone().
Node.subtree_parents was removed in
d3f00bd570. That commit also added
Q.clone() which was identical to WhereNode.clone(), but lacked the
docstring. Q.clone() was later removed in
b454e2cbc9.
2022-07-27 07:55:09 +02:00
Nick Pope 769d7cce4a Used AND, OR, XOR constants instead of hard-coded values. 2022-07-27 07:55:09 +02:00
Mariusz Felisiak e20e5d1557
Fixed #33820 -- Doc'd "true"/"false"/"null" caveat for JSONField key transforms on SQLite.
Thanks Johnny Metz for the report.

Regression in 71ec102b01.
2022-07-26 20:21:27 +02:00
Mariusz Felisiak 7e3c9c3205 Refs #27236 -- Doc'd that AlterIndexTogether is no longer officially supported for Django 4.2+ migration files. 2022-07-26 11:42:54 +02:00
Mariusz Felisiak 66f30dbf25 Refs #27236 -- Reverted "Refs #27236 -- Refactored out DeprecationForHistoricalMigrationMixin."
This reverts commit 57793b4765.
2022-07-26 11:41:19 +02:00
Mariusz Felisiak a1e9e9abc5 Refs #27236 -- Reverted "Refs #27236 -- Added generic mechanism to handle the deprecation of migration operations."
This reverts commit 41019e48bb.
2022-07-26 11:41:19 +02:00
Mariusz Felisiak c773d5794e Refs #27236 -- Reverted AlterIndexTogether deprecation.
This partly reverts a6385b382e.
2022-07-26 11:41:19 +02:00
Claude Paroz 7bdb682215
Fixed BasicExtractorTests.test_makemessages_find_files() test. 2022-07-26 07:23:45 +02:00
Claude Paroz 2d23a07817 Fixed #33866 -- Added pathlib.Path support to GDALRaster constructor. 2022-07-25 20:48:33 +02:00
Nick Pope 36cd425943 Simplified various built-in templates.
- Using the {% plural %} tag.
- Using the |yesno filter.
- Using the |unordered_list filter.
- Unnesting {% if %} where not required.
- Not duplicating {% if %}.
2022-07-25 10:20:46 +02:00
Nick Pope 390832e04a Standardized formatting in technical 500 template.
- Prefer use of `k` and `v` instead of `var.0` and `var.1`.
- Fixed indentation of #files-info block to match adjacent blocks.
2022-07-25 10:19:47 +02:00
Claude Paroz f2dd652245 Fixed #33863 -- Fixed JavaScriptCatalog with more than 1 level of fallback translations.
Co-authored-by: Carlos Mermingas <cmermingas@gmail.com>
2022-07-25 08:45:46 +02:00
Anders Kaseorg 9ba2e8821f
Removed obsolete note in management.get_commands() docstring.
Commit 901c3708fb documented that the
return dict could directly include command modules instead of name
strings, which was true at the time. However, that possibility was
removed in commit 38f1fe3b35.
2022-07-25 07:55:52 +02:00
Ikko Ashimine 85df081add
Fixed typo in django/contrib/admin/options.py comment. 2022-07-25 07:19:52 +02:00
Claude Paroz 3b79dab19a Refs #33691 -- Deprecated insecure password hashers.
SHA1PasswordHasher, UnsaltedSHA1PasswordHasher, and UnsaltedMD5PasswordHasher
are now deprecated.
2022-07-23 21:29:31 +02:00
Claude Paroz a46dfa87d0
Refs #25756 -- Doc'd inability to use file fields with PostgreSQL ArrayField. 2022-07-23 16:12:01 +02:00
Claude Paroz 0afb65e635
Removed unneeded test suite creation for GIS measure tests. 2022-07-23 15:57:05 +02:00
Nick Pope 4d4bf55e0e Fixed #33864 -- Deprecated length_is template filter. 2022-07-23 12:36:21 +02:00
Victor 2fac0a1808
Fixed #33317 -- Added note about unconditional evaluation of {% block %} tags. 2022-07-22 10:09:29 +02:00