Claude Paroz
6ccb1b68bc
Added Uzbek language.
2019-11-04 14:50:00 +01:00
Nick Pope
7286eaf681
Refs #13312 -- Simplified handling of nulls ordering on MySQL.
...
MySQL & MariaDB support the standard IS NULL and IS NOT NULL so
the same workaround used for NULLS FIRST and NULLS LAST that is
used for SQLite < 3.30.0 can be used.
Thanks Simon Charette for the discussion.
2019-11-04 14:47:58 +01:00
Jon Dufresne
607004f81a
Simplified consecutive calls to pathlib.Path.parent.
2019-11-04 09:59:34 +01:00
Carlton Gibson
2d38eb0ab9
Fixed #30931 -- Restored ability to override Model.get_FIELD_display().
...
Thanks Sergey Fedoseev for the implementation idea.
Regression in a68ea23101
.
2019-11-04 07:55:34 +01:00
Simon Charette
a699595fce
Refs #13312 -- Removed unnecessary IF wrapping in nulls_last handling on MySQL.
...
ISNULL function already returns 0 and 1 on MySQL.
2019-10-31 20:17:04 +01:00
Mariusz Felisiak
a9bd01d363
Refs #30095 -- Simplified Field._check_choices() a bit.
...
Using an internal is_value() hook to check whether Field.choices
is iterable is misleading.
2019-10-31 20:04:47 +01:00
Sky
3cf907c20c
Fixed #30761 -- Prevented floatformat filter from returning a negative zero.
2019-10-31 10:48:35 +01:00
Hasan Ramezani
17752003a8
Refs #28428 -- Made FileSystemStorage.save() to support pathlib.Path.
2019-10-31 09:06:05 +01:00
Simon Charette
377c7cb2f7
Refs #23576 -- Disabled MySQL multi-alias deletion path on MariaDB 10.3.2+.
2019-10-31 08:14:30 +01:00
Felipe Lee
c2c27867ef
Refs #20456 -- Moved initialization of HEAD method based on GET to the View.setup() for generic views.
...
This will ease unit testing of views since setup will essentially do
everything needed to set the view instance up (other than instantiating
it). Credit for idea goes to Vincent Prouillet.
2019-10-30 14:43:52 +01:00
Hasan Ramezani
6315a272c5
Refs #28428 -- Made filepath_to_uri() support pathlib.Path.
2019-10-30 13:13:15 +01:00
Sergey Fedoseev
2f010795e6
Simplified AuthenticationMiddleware a bit.
...
SimpleLazyObject already caches value in _wrapped.
2019-10-29 13:20:13 +01:00
Erwin Junge
a6cb8ec389
Fixed #30922 -- Fixed ModelAdmin.date_hierarchy queries with DST changes.
...
There was an issue where admin date_hierarchy didn't render last day of
a month in DST-switch month.
2019-10-29 11:21:03 +01:00
Hasan Ramezani
e3d0b4d550
Fixed #30899 -- Lazily compiled import time regular expressions.
2019-10-29 09:22:26 +01:00
Hasan Ramezani
39a34d4bf9
Refs #30899 -- Made _lazy_re_compile() support bytes.
2019-10-29 09:14:24 +01:00
Hasan Ramezani
c4cba148d8
Refs #30899 -- Moved _lazy_re_compile() to the django.utils.regex_helper.
2019-10-29 09:14:24 +01:00
Hasan Ramezani
52cb419072
Fixed #30918 -- Made timesince()/timeuntil() respect custom time strings for future and the same datetimes.
2019-10-28 12:28:18 +01:00
Pavel Dedik
711a7d4d50
Fixed #30907 -- Fixed SplitArrayField.has_changed() with removal of empty trailing values.
2019-10-28 10:32:34 +01:00
Pavel Dedik
bcfbb71c63
Refs #30907 -- Added SplitArrayField._remove_trailing_nulls() hook.
2019-10-28 10:32:09 +01:00
Sergey Fedoseev
6bbf9a20e2
Fixed #29770 -- Added LinearRing.is_counterclockwise property.
2019-10-25 14:28:26 +02:00
Carlton Gibson
24e540fbd7
Fixed #29087 -- Added delete buttons for unsaved admin inlines on validation error.
2019-10-25 13:28:08 +02:00
Carlton Gibson
6ea3aadd17
Refs #29087 -- Refactored admin inlines.js.
...
Split logic into separate functions to clarify and allow reuse.
2019-10-25 13:28:08 +02:00
Carlton Gibson
dbcd7b064e
Fixed #30902 -- Added __str__() for model choice enums.
...
Allows expected behavior when cast to str, also matching behaviour of
created instances with those fetched from the DB.
Thanks to Simon Charette, Nick Pope, and Shai Berger for reviews.
2019-10-25 09:19:56 +02:00
Nick Pope
55df1750be
Refs #30897 -- Added support for ANALYZE option to Queryset.explain() on MariaDB and MySQL 8.0.18+.
2019-10-24 15:13:26 +02:00
Nick Pope
742961332e
Refs #30897 -- Added support for TREE format to Queryset.explain() on MySQL 8.0.16+.
2019-10-24 15:13:23 +02:00
Simon Charette
7acef095d7
Fixed #23576 -- Implemented multi-alias fast-path deletion in MySQL backend.
...
This required moving the entirety of DELETE SQL generation to the
compiler where it should have been in the first place and implementing
a specialized compiler on MySQL/MariaDB.
The MySQL compiler relies on the "DELETE table FROM table JOIN" syntax
for queries spanning over multiple tables.
2019-10-24 12:24:53 +02:00
Mariusz Felisiak
e645f27907
Fixed DatabaseFeatures.update_can_self_select on MariaDB 10.3.2+.
2019-10-24 12:18:13 +02:00
Hannes Ljungberg
fa5f3291e7
Fixed #30903 -- Fixed migrations crash on PostgreSQL when adding Index with opclasses and ordering.
2019-10-24 09:33:14 +02:00
Nick Pope
6e9189c080
Refs #30897 -- Added test for SETTINGS option to Queryset.explain() on PostgreSQL 12+.
2019-10-23 14:07:18 +02:00
Dan Moore
bc94e3c1a2
Fixed #29919 -- Fixed RelatedOnlyFieldListFilter crash with reverse relationships.
2019-10-23 10:50:31 +02:00
Sergey Fedoseev
0315c18fe1
Refs #26601 -- Removed obsolete workarounds for MIDDLEWARE_CLASSES setting.
2019-10-23 08:18:48 +02:00
Sergey Fedoseev
909c59f290
Fixed typo in XViewMiddleware.process_view() docstring.
2019-10-22 14:30:52 +02:00
Sergey Fedoseev
af8dbbe0d5
Updated link to GEOS C API header.
2019-10-21 15:25:49 +02:00
Alex Aktsipetrov
681f7e2b13
Fixed #20577 -- Deferred filtering of prefetched related querysets.
...
Added internal interface to QuerySet that allows to defer next filter
call till .query is accessed. Used it to optimize prefetch_related().
Thanks Simon Charette for the review.
2019-10-21 13:21:54 +02:00
Alex Aktsipetrov
70d8146986
Adjusted QuerySet._filter_or_exclude() call to use negated=False, rather than None.
...
None was a remnant from the times _filter_or_exclude accepted
qtype/mapper as the first arg.
2019-10-21 12:45:17 +02:00
Ahmet Kucuk
09578f6dfb
Fixed #30827 -- Made batch_size arg of QuerySet.bulk_create() respect DatabaseOperations.bulk_batch_size().
...
Thanks Chetan Khanna for tests.
2019-10-21 11:46:44 +02:00
André Ericson
3120490912
Fixed #30876 -- Moved classproperty() decorator to the django.utils.functional.
2019-10-21 09:57:39 +02:00
André Ericson
31174031f1
Fixed #30841 -- Deprecated using non-boolean values for isnull lookup.
2019-10-21 08:44:20 +02:00
Pavel Savchenko
1711c509fa
Fixed #27391 -- Implemented SimpleTestCase.debug().
...
debug() should bubbled up exceptions if occurring in test, but behave
the same as run() when no exceptions occurred.
2019-10-18 12:22:51 +02:00
Patrick Jenkins
46e74a5256
Fixed #28337 -- Preserved extra headers of requests made with django.test.Client in assertRedirects().
...
Co-Authored-By: Hasan Ramezani <hasan.r67@gmail.com>
2019-10-18 08:42:51 +02:00
Mariusz Felisiak
3a8af298b9
Fixed #30890 -- Added MariaDB support for the relate lookup.
2019-10-18 07:46:31 +02:00
Hasan Ramezani
ef4beafa2c
Refs #28816 -- Prevented silencing data loss when decreasing CharField.max_length for ArrayField.base_field on PostgreSQL.
2019-10-17 12:50:53 +02:00
sage
6f82df69ef
Refs #12990 -- Moved CheckFieldDefaultMixin to the django.db.models.fields.mixins.
2019-10-17 12:30:29 +02:00
Mariusz Felisiak
187a64608d
Fixed #30885 -- Dropped support for MariaDB 10.1.
2019-10-16 18:40:48 +02:00
Mariusz Felisiak
4a849b6701
Fixed #30859 -- Fixed DatabaseFeatures.supports_aggregate_filter_clause on SQLite 3.30.1+.
2019-10-15 20:55:49 +02:00
Carlton Gibson
1de9a92295
Fixed #30872 -- Improved unknown command message when settings are manually configured.
2019-10-15 13:04:32 +02:00
Mariusz Felisiak
06d34aab7c
Fixed #30870 -- Fixed showing that RunPython operations are irreversible by migrate --plan.
...
Thanks Hasan Ramezani for the initial patch and Kyle Dickerson for the
report.
2019-10-14 11:13:27 +02:00
Simon Charette
2839659b42
Fixed #30868 -- Prevented unnecessary AlterField when renaming a referenced pk.
...
Regression introduced by dcdd219ee1
, refs #25817 .
Thanks Carlos E. C. Leite for the report and Mariusz for the bisect.
2019-10-14 08:02:26 +02:00
Etienne Chové
e7cdb0cd7e
Fixed #30014 -- Fixed ModelChoiceField validation when initial value is a model instance.
...
Thanks Carlton Gibson for reviews.
2019-10-11 13:28:09 +02:00
Louise Grandjonc
7d1bf29977
Fixed #30826 -- Fixed crash of many JSONField lookups when one hand side is key transform.
...
Regression in 6c3dfba892
.
2019-10-11 10:55:22 +02:00
Hasan Ramezani
6a75cea76a
Fixed #30854 -- Fixed QuerySet.select_related() with multiple FilteredRelations.
2019-10-11 08:10:48 +02:00
Hasan Ramezani
e1ae2b0050
Refs #30854 -- Moved local_setter() outside the loop in SQLCompiler.get_related_selections().
2019-10-11 08:07:07 +02:00
Flavio Curella
ed112fadc1
Fixed #23755 -- Added support for multiple field names in the no-cache Cache-Control directive to patch_cache_control().
...
https://tools.ietf.org/html/rfc7234#section-5.2.2.2
2019-10-10 19:30:51 +02:00
Viktor Lomakin
ee6b17187f
Fixed #30812 -- Made ConditionalGetMiddleware set ETag only for responses with non-empty content.
2019-10-10 09:51:05 +02:00
Benjy Weinberger
3cd3bebe89
Fixed #30300 -- Allowed migrations to be loaded from directories without __init__.py file.
2019-10-10 08:31:41 +02:00
Mariusz Felisiak
02c63b8f2f
Refs #26608 -- Fixed DatabaseFeatures.supports_frame_range_fixed_distance on SQLite 3.28+, MariaDB 10.2+, and MySQL 8.0.2+.
2019-10-09 13:07:50 +02:00
Simon Charette
8b10357854
Fixed #30860 -- Disabled unneeded NULLS FIRST/LAST workaround on SQLite 3.30+.
2019-10-09 10:47:49 +02:00
Simon Charette
26c66f4519
Fixed #30856 -- Combined fast-delete queries by model during cascade deletion.
...
Reduced the number of queries required when performing cascade deletion
for a model referenced multiple time by another one by performing an
union of reference lookups.
2019-10-09 09:49:53 +02:00
Simon Charette
44522d1036
Made Collector.collect() return immediately for disabled related collection.
2019-10-09 09:49:53 +02:00
Simon Charette
832aa08afe
Used defaultdict in deletion.Collector.
2019-10-09 09:49:27 +02:00
Alex Gaynor
04ac9b45a3
Improved performance of django.template.base.Parser.
...
pop(0), which is used to fetch each token, is O(n) in the length of the
list. By reversing the list and operating off the end, we can perform
next_token(), prepend_token(), and delete_first_token() in constant
time.
2019-10-09 08:33:16 +02:00
Hasan Ramezani
a28d1b38e5
Fixed #30839 -- Fixed Field.__deepcopy__() so forms don't share error messages.
2019-10-08 10:07:05 +02:00
Hasan Ramezani
6452112640
Refs #27914 -- Fixed serialization of nested enum.Enum classes in migrations.
2019-10-03 08:39:30 +02:00
Min ho Kim
103a6f4307
Fixed some typos in comments and docs.
...
Thanks to Mads Jenson for review.
2019-10-02 15:50:46 +02:00
Mariusz Felisiak
02ba48bc23
Removed redundant names in django.db.models.functions.__all__.
2019-10-02 13:07:14 +02:00
Anatol Ulrich
8ed6788aa4
Fixed #30821 -- Added ExtractIsoWeekYear database function and iso_week_day lookup.
2019-10-02 10:41:34 +02:00
Tanner Stirrat
17595407ca
Fixed #14218 -- Added Paginator.__iter__().
2019-10-02 09:49:31 +02:00
ElizabethU
54ea290e5b
Fixed #30651 -- Made __eq__() methods return NotImplemented for not implemented comparisons.
...
Changed __eq__ to return NotImplemented instead of False if compared to
an object of the same type, as is recommended by the Python data model
reference. Now these models can be compared to ANY (or other objects
with __eq__ overwritten) without returning False automatically.
2019-10-01 17:58:19 +02:00
Mariusz Felisiak
67e7dffe95
Fixed typo in BulkInsertMapper constant name.
2019-10-01 14:46:10 +02:00
Ahmet Kucuk
dc890bef5a
Fixed #30510 -- Fixed crash of QuerySet.bulk_create() with mixed-length texts on Oracle.
...
Text with more than 4000 characters must be set to as a CLOB on Oracle
what caused a mixed datatype error (ORA-01790) when shorter text
appeared in the same operation.
2019-10-01 12:38:58 +02:00
Ad Timmering
7b5f8acb9e
Fixed #28690 -- Fixed handling of two-digit years in parse_http_date().
...
Due to RFC7231 ayear that appears to be more than 50 years in the
future are interpreted as representing the past.
2019-09-30 14:42:56 +02:00
Hasan Ramezani
f0adf3b9b7
Fixed #30774 -- Made serialization in migrations use members names for Enums.
2019-09-30 10:28:05 +02:00
pablo
fa8fe09e4e
Fixed #30802 -- Prevented manifest creation when running collectstatic in dry run mode.
2019-09-27 23:01:41 +02:00
Hasan Ramezani
95a11578ce
Fixed #30798 -- Fixed Meta.ordering validation for pk of related fields.
...
Regression in 440505cb2c
.
2019-09-27 14:22:31 +02:00
Hasan Ramezani
c7944628a1
Refs #30798 -- Prevented chaining fields from the same related model multiple times in model Meta.ordering.
2019-09-27 13:57:22 +02:00
Oleg Kainov
c574bec092
Fixed #25598 -- Added SCRIPT_NAME prefix to STATIC_URL and MEDIA_URL set to relative paths.
...
Thanks Florian Apolloner for reviews.
Co-authored-by: Joel Dunham <Joel.Dunham@technicalsafetybc.ca>
2019-09-25 19:47:03 +02:00
Mariusz Felisiak
580e644f24
Fixed #30800 -- Fixed migrations crash when altering a field with custom db_type().
...
Regression in 1378d665a1
.
2019-09-25 12:32:24 +02:00
Mads Jensen
129583a0d3
Removed some outdated backwards compatibility imports and misleading comments.
...
EmptyResultSet moved in 46509cf13d
.
FieldDoesNotExist moved in 8958170755
.
BoundField and pretty_name moved in 8550161e53
.
EMPTY_VALUES moved in 471596fc1a
.
BaseRunserverCommand moved in 5c53e30607
.
2019-09-24 15:18:53 +02:00
Mariusz Felisiak
01104368ff
Refs #29444 -- Removed redundant DatabaseFeatures.can_return_multiple_columns_from_insert.
...
Unnecessary since b31e63879e
.
2019-09-24 10:37:22 +02:00
Johannes Hoppe
b31e63879e
Fixed #29444 -- Allowed returning multiple fields from INSERT statements on Oracle.
2019-09-24 10:22:43 +02:00
Simon Charette
37f8f29377
Fixed #30796 -- Prevented select_related() from mutating a queryset on chaining.
...
Thanks Darren Maki for the report.
2019-09-24 09:17:45 +02:00
Hasan Ramezani
f97bbad908
Fixed #13296 -- Fixed ordering by Options.order_with_respect_to after deleting objects.
...
Thanks Simon Meers for the original patch.
2019-09-23 11:20:37 +02:00
Ian Foote
d9881a025c
Fixed #29915 -- Added support for values with hyphens to pattern lookups for UUIDField on backends without UUID datatype.
...
Support hyphens in iexact, contains, icontains, startswith, istartswith,
endswith and iendswith UUIDField filters on backends without UUID
datatype.
2019-09-23 08:24:08 +02:00
Hasan Ramezani
226ebb1729
Fixed #28622 -- Allowed specifying password reset link expiration in seconds and deprecated PASSWORD_RESET_TIMEOUT_DAYS.
2019-09-20 13:52:04 +02:00
James Timmins
0719edcd5f
Fixed #30771 -- Fixed exact lookup against queries with selected columns.
...
Use pre-existing select fields (and thereby GROUP BY fields) from
subquery if they were specified, instead of always defaulting to pk.
Thanks Aur Saraf for the report and Simon Charette for guidance.
2019-09-20 10:42:14 +02:00
Andrew
3346b78a8a
Fixed #30786 -- Used CONVERT_TZ to check if the time zone definitions are installed on MySQL.
...
Replaced a timezone check in the MySQL backend with one that doesn't
require access to the mysql.time_zone database.
2019-09-20 08:17:27 +02:00
Daniel Fairhead
5cb3ed187b
Fixed #30772 -- Optimized make_template_fragment_key().
...
Removed usage of urllib.quote(), unnecessary since cbbe60c7fc
.
Used hasher's .update() on key fragments.
2019-09-18 14:53:05 +02:00
Sam Reynolds
6c9778a58e
Fixed #30776 -- Restored max length validation on AuthenticationForm.UsernameField.
...
Regression in 5ceaf14686
.
Thanks gopackgo90 for the report and Mariusz Felisiak for tests.
2019-09-18 11:37:38 +02:00
Min ho Kim
b1d6b35e14
Fixed #30725 -- Fixed width of DateTimeField inputs in admin tabular inline.
...
"width" of DateTimeField inputs in admin tabular inline wasn't set
correctly what caused displaying too small inputs with responsive CSS
when timezone warning wasn't present.
2019-09-17 14:30:33 +02:00
Nasir Hussain
faf4b988fe
Fixed #30758 -- Made RangeFields use multiple hidden inputs for initial data.
2019-09-17 12:08:49 +02:00
Hasan Ramezani
b9db423d3c
Fixed #29376 -- Allowed hiding "Save and Add Another" button in admin.
2019-09-16 11:37:09 +02:00
Simon Charette
6c3dfba892
Fixed #30769 -- Fixed a crash when filtering against a subquery JSON/HStoreField annotation.
...
This was a regression introduced by 7deeabc7c7
to address CVE-2019-14234.
Thanks Tim Kleinschmidt for the report and Mariusz for the tests.
2019-09-16 08:24:40 +02:00
Carlton Gibson
b5db65c4fb
Increased the default PBKDF2 iterations for Django 3.1.
2019-09-12 17:24:01 +02:00
Adnan Umer
241deed259
Fixed #30591 -- Fixed recreation of foreign key constraints on MySQL when altering type of referenced unique field.
...
Thanks Mariusz Felisiak for tests and Matthijs Kooijman for
investigation and initial patch.
2019-09-11 11:21:08 +02:00
Mads Jensen
b616908ce1
Used Statement in PostGISSchemaEditor._create_index_sql().
2019-09-11 07:51:31 +02:00
Mariusz Felisiak
9a2a12d415
Advanced deprecation warnings for Django 3.1.
2019-09-10 12:01:00 +02:00
Mariusz Felisiak
0ddb4ebf7b
Refs #14357 -- Made Meta.ordering not affect GROUP BY queries.
...
Per deprecation timeline.
2019-09-10 12:01:00 +02:00
Mariusz Felisiak
d17be88afd
Refs #30037 -- Required the RemoteUserBackend.configure_user() to have request as the first positional argument.
...
Per deprecation timeline.
2019-09-10 12:01:00 +02:00
Mariusz Felisiak
b61ea56789
Refs #28478 -- Removed support for TestCase's allow_database_queries and multi_db per deprecation timeline.
2019-09-10 12:01:00 +02:00
Mariusz Felisiak
f1894bae30
Refs #28606 -- Removed CachedStaticFilesStorage per deprecation timeline.
2019-09-10 12:01:00 +02:00