Commit Graph

16368 Commits

Author SHA1 Message Date
Johannes Hoppe b131f9c79f Refs #29444 -- Renamed DatabaseFeatures.can_return_id* to be generic for other columns. 2019-01-30 15:31:56 -05:00
Joshua Cannon 16a5a2a2c8 Fixed #30076 -- Added Model.get_FOO_display() even if field's choices are empty. 2019-01-30 13:44:10 -05:00
Tim Graham 7e6b214ed3 Fixed #30116 -- Dropped support for Python 3.5. 2019-01-30 10:19:48 -05:00
Mariusz Felisiak 5a5c77d55d
Fixed E117 and F405 flake8 warnings. 2019-01-30 13:06:09 +01:00
Dan Tao 738faf9da2 Fixed #30108 -- Allowed adding foreign key constraints in the same statement that adds a field. 2019-01-29 15:42:57 -05:00
rsiemens a168e5616c Fixed #29973 -- Added compilemessages --ignore option. 2019-01-28 18:23:41 -05:00
rsiemens bc9f0b3203 Refs #29973 -- Extracted helper functions from makemessages. 2019-01-28 18:23:41 -05:00
Claude Paroz 16454ac35f Fixed #29825 -- Fixed JS ngettext if the string is a non-plural msgid in the catalog. 2019-01-28 21:04:36 +01:00
Tom Forbes 1e92407f83 Fixed #25624 -- Fixed autoreload crash with jinja2.ModuleLoader. 2019-01-28 14:17:50 -05:00
Jon Dufresne 7785e03ba8 Fixed #30137 -- Replaced OSError aliases with the canonical OSError.
Used more specific errors (e.g. FileExistsError) as appropriate.
2019-01-28 11:15:06 -05:00
Tim Graham 7444f32527
Refs #30055 -- Added a helpful error when SQLite is too old. 2019-01-28 11:14:45 -05:00
Jon Dufresne 7e3bf2662b Removed default mode='r' argument from calls to open(). 2019-01-27 17:41:43 -05:00
Jon Dufresne ac956dae1d Fixed grammar in FakePayload exception message. 2019-01-25 08:43:21 -08:00
Nick Pope 0ef9979669 Fixed #30123 -- Removed tuple support in DatabaseIntrospection.get_field_type().
Support for returning tuples was undocumented and error prone.
2019-01-23 13:18:03 -05:00
Nick Pope 8d01edfa65 Refs #30123 -- Simplified introspection of geography columns on PostGIS. 2019-01-23 13:18:03 -05:00
Nick Pope 327bbaae24 Refs #30123 -- Changed second arg of DatabaseIntrospection.get_geometry_type() to the row description. 2019-01-23 13:18:03 -05:00
Nick Pope bff748df3e Fixed #30115 -- Fixed SQLite introspection crash with a varchar primary key.
Removed obsolete max_length handling for CharField that caused the issue.
Regression in a35d2a4510.
2019-01-22 19:02:34 -05:00
Nick Pope d82f212ec8 Simplified DatabaseIntrospection.get_geometry_type() for PostGIS. 2019-01-22 18:23:37 -05:00
Nick Pope e19f58fc01 Inlined DatabaseIntrospection._table_info() for SQLite. 2019-01-22 18:23:37 -05:00
Nasir Hussain 2804b8d215 Fixed #30111 -- Fixed AppRegistryNotReady error with django.contrib.postgres in INSTALLED_APPS.
Regression in e192223ed9.
2019-01-22 17:49:30 -05:00
Simon Charette 8d2dcc47cd Fixed #30106 -- Made order_with_respect_to updates use QuerySet.bulk_update(). 2019-01-21 17:02:20 -05:00
Jon Dufresne d15c61cabb Fixed #30121 -- Fixed assertURLEqual() crash with reverse_lazy() URLs.
Regression in 24959e48d9.
2019-01-21 09:31:33 -05:00
Simon Charette 65858119d2 Fixed #30120 -- Fixed invalid SQL in distinct aggregate.
Regression in bc05547cd8 (refs #28658).
2019-01-21 09:24:32 -05:00
Tom Forbes d8a2f4ec09 Removed redundant period in Watchman unavailable message. 2019-01-19 18:25:01 -05:00
Tom Forbes 7eb4db8732 Removed template_cache attribute from cached template loader.
Unused since 5d8da093a9.
2019-01-18 18:35:00 -05:00
Mariusz Felisiak 709a8b861d
Optimized Oracle PKs introspection by adding get_primary_key_column(). 2019-01-18 16:50:06 +01:00
Tim Graham fe6d5a2da2
Fixed #30107 -- Removed unused dirs variable from cache template loader keys.
Unused since 5d8da093a9.
2019-01-18 10:14:41 -05:00
Tim Graham 06670015f7 Increased the default PBKDF2 iterations for Django 3.0. 2019-01-17 11:15:27 -05:00
Tim Graham f5060a1385 Advanced deprecation warnings for Django 3.0. 2019-01-17 11:15:27 -05:00
Tim Graham da1de1615c Refs #28750 -- Removed suppport for model Meta.manager_inheritance_from_future. 2019-01-17 11:15:27 -05:00
Tim Graham 6079ed82f4 Refs #27991 -- Made obj a required argument of InlineModelAdmin.has_add_permission().
Per deprecation timeline.
2019-01-17 11:14:07 -05:00
Tim Graham 92d4d0859a Refs #21221 -- Removed staticfiles and admin_static template tag libraries.
Per deprecation timeline.
2019-01-17 10:52:19 -05:00
Tim Graham 958a7b4ca6 Refs #28965 -- Removed utils.http.cookie_date() per deprecation timeline. 2019-01-17 10:52:19 -05:00
Tim Graham 6f23996a59 Refs #28841 -- Removed ForceRHR function per deprecation timeline. 2019-01-17 10:52:19 -05:00
Tim Graham 1fecde6be9 Refs #11557 -- Removed the field_name keyword argument to QuerySet.earliest() and latest().
Per deprecation timeline.
2019-01-17 10:52:19 -05:00
Tim Graham da5eb3d56c Refs #28370 -- Removed support for the context arg of Field.from_db_value() and Expression.convert_value().
Per deprecation timeline.
2019-01-17 10:52:19 -05:00
Tim Graham 7c66aaa2b6 Refs #28137 -- Removed HttpRequest.xreadlines() per deprecation timeline. 2019-01-17 10:52:16 -05:00
Tim Graham 8045dff98c Refs #27829 -- Removed settings.DEFAULT_CONTENT_TYPE per deprecation timeline. 2019-01-17 10:50:25 -05:00
Tim Graham 573ec714e5 Refs #25978 -- Removed shortcuts.render_to_response() per deprecation timeline. 2019-01-17 10:50:25 -05:00
Tim Graham 944469939b Refs #25175 -- Removed db.backends.postgresql_psycopg2 per deprecation timeline. 2019-01-17 10:50:25 -05:00
Tim Graham ffe53096a9 Bumped version; master is now 3.0 pre-alpha. 2019-01-17 10:50:24 -05:00
Simon Charette f84ad16ba4 Refs #17198 -- Detected existing total ordering in admin changelist.
Appending pk is not necessary when a subset of the ordering expressions is
contained in a non-nullable unique contraint.

Related field ordering through lookups and related ordering introspection is
omitted for simplicitly purpose.
2019-01-17 16:22:14 +01:00
Claude Paroz aa5fd84f53 Updated translation catalogs 2019-01-16 20:51:26 +01:00
Simon Charette 9e5e5a657b Fixed #30044 -- Raised a FieldError on inherited field update attempts. 2019-01-16 14:09:51 -05:00
Santiago Basulto 4fc35a9c3e Fixed #20147 -- Added HttpRequest.headers. 2019-01-16 13:38:47 -05:00
Carlton Gibson 876dc306cd
Refs #30102 -- Added comment on use of Template without placeholders in page_not_found() view. 2019-01-16 16:19:56 +01:00
Arthur Rio 181fb60159 Fixed #11154, #22270 -- Made proxy model permissions use correct content type.
Co-Authored-By: Simon Charette <charette.s@gmail.com>
Co-Authored-By: Antoine Catton <acatton@fusionbox.com>
2019-01-16 10:07:28 -05:00
Simon Charette dbcf2ffa77 Refs #9475 -- Simplified dictionary unpacking. 2019-01-16 09:20:15 -05:00
Nick Pope d212bc03ba Refs #9475 -- Fixed typo, used unpacking generalization, and made through_defaults kwarg-only. 2019-01-15 13:03:08 -05:00
Collin Anderson 769355c765 Fixed #9475 -- Allowed RelatedManager.add(), create(), etc. for m2m with a through model. 2019-01-15 11:12:17 -05:00
Nasir Hussain f021c110d0 Fixed #30099 -- Fixed invalid SQL when filtering a Subquery by an aggregate. 2019-01-15 07:22:59 -05:00
Claude Paroz 87bf35abd3 Removed unexpected chars in Armenian admin translation 2019-01-15 10:43:11 +01:00
Jon Dufresne ad7aa02c1d Removed unnecessary string formatting of strings. 2019-01-14 21:04:00 -05:00
Simon Charette b181aba7dd Refs #28478 -- Prevented database feature based skipping on tests disallowing queries.
Database features may require a connection to be established to determine
whether or not they are enabled.
2019-01-14 16:16:30 -05:00
Simon Charette f5b635086a Refs #28478 -- Prevented connection attempts against disallowed databases in tests.
Mocking connect as well as cursor methods makes sure an appropriate error
message is surfaced when running a subset of test attempting to access a
a disallowed database.
2019-01-14 16:05:00 -05:00
Simon Charette a96b901932 Refs #28478 -- Prevented timezone assignment for unusable PostgreSQL connections. 2019-01-14 16:05:00 -05:00
Nick Pope 846624ed08 Refs #28643 -- Extracted DurationField logic for Avg() and Sum() into mixin.
Also addresses Sum() not handling the filter option correctly.
2019-01-14 14:39:57 -05:00
Nick Pope 6d4efa8e6a Refs #28643 -- Changed Variance() to use NumericOutputFieldMixin.
Keeps precision instead of forcing DecimalField to FloatField.
2019-01-14 14:39:46 -05:00
Nick Pope e85afa5943 Refs #28643 -- Changed StdDev() to use NumericOutputFieldMixin.
Keeps precision instead of forcing DecimalField to FloatField.
2019-01-14 14:38:00 -05:00
Nick Pope c690afb873 Refs #28643 -- Changed Avg() to use NumericOutputFieldMixin.
Keeps precision instead of forcing DecimalField to FloatField.
2019-01-14 14:35:41 -05:00
Nick Pope 3d5e0f8394 Refs #28643 -- Moved db function mixins to a separate module. 2019-01-14 14:26:46 -05:00
Nick Pope 7f1577d1ef Avoided calling as_oracle() for SQLite in Left database function. 2019-01-14 13:02:58 -05:00
Nick Pope ae65eed68d Corrected comment in TruncTime database function. 2019-01-14 13:02:58 -05:00
Nick Pope 0d7ba0ff8b Simplified overriding source expressions in some database functions. 2019-01-14 13:02:58 -05:00
Sergey Fedoseev b86bb47818 Fixed #30093 -- Fixed ordering of combined queryset ordered by F expressions. 2019-01-14 10:28:11 -05:00
Tom Forbes c8720e7696 Fixed #27685 -- Added watchman support to the autoreloader.
Removed support for pyinotify (refs #9722).
2019-01-13 20:33:47 -05:00
orlnub123 573f44d62f Fixed #30057 -- Fixed diffsettings ignoring custom configured settings.
Regression in 49b679371f.
2019-01-12 11:07:03 -05:00
Nick Pope abf8e390a4 Refs #28643 -- Added Reverse database function.
Thanks Mariusz Felisiak for Oracle advice and review.
2019-01-12 10:45:48 -05:00
Paveł Tyślacki b69f8eb04c Fixed #30062 -- Added support for unique conditional constraints. 2019-01-12 09:50:20 -05:00
Paveł Tyślacki 1e837c4b23 Used None as the empty value for condition in Index's SQL construction. 2019-01-12 09:34:10 -05:00
can e192223ed9 Fixed #29738 -- Allowed serializing psycopg2 range types in migrations. 2019-01-11 19:32:26 -05:00
can 7d3b3897c1 Refs #29738 -- Allowed registering serializers with MigrationWriter. 2019-01-11 18:13:16 -05:00
MaximZemskov 3c01fe30f3 Fixed #30097 -- Made 'obj' arg of InlineModelAdmin.has_add_permission() optional.
Restored backwards compatibility after refs #27991.
Regression in be6ca89396.
2019-01-11 18:02:43 -05:00
Tim Graham 8f4eee1777
Moved django.db.migrations.writer.SettingsReference to django.conf.
Reduces the possibility of circular imports.
2019-01-11 15:28:22 -05:00
Sanyam Khurana 76d31be2d0 Refs #23829 -- Made ping_google command/function use https for the sitemap URL. 2019-01-11 10:32:22 -05:00
Simon Charette 41e73de39d Fixed #28478 -- Make DiscoverRunner skip creating unused test databases.
SimpleTestCase.databases makes it possible to determine the set of
databases required to run the discovered tests.
2019-01-10 19:11:21 -05:00
Simon Charette 8c775391b7 Refs #28478 -- Deprecated TestCase's allow_database_queries and multi_db in favor of databases. 2019-01-10 19:11:21 -05:00
Paveł Tyślacki 647be06538 Renamed variables after generalization of constraints.
Follow up to 8eae094638.
2019-01-10 18:54:41 -05:00
Mads Jensen 4b9d72210f Refs #28643 -- Added NullIf database function.
Thanks Nick Pope, Mariusz Felisiak, and Tim Graham for reviews.
2019-01-10 12:10:12 -05:00
Claude Paroz 217f4456d8 Fetched Armenian translations from Transifex 2019-01-10 10:50:42 +01:00
Claude Paroz 31ebb1d564 Added Armenian language 2019-01-10 10:50:42 +01:00
Joshua Cannon db1b10ef0d Fixed #30037 -- Added request arg to RemoteUserBackend.configure_user(). 2019-01-09 20:01:04 -05:00
Simon Charette bc05547cd8 Fixed #28658 -- Added DISTINCT handling to the Aggregate class. 2019-01-09 17:52:36 -05:00
Benjy Weinberger 222caab68a Fixed #30071 -- Fixed error message when a 'default' database isn't provided. 2019-01-09 10:58:37 -05:00
Nick Pope a35d2a4510 Refs #23748 -- Added AutoField introspection for SQLite. 2019-01-09 09:59:15 -05:00
Nick Pope e7f0e9b704 Renamed import in MySQL introspection backend for consistency. 2019-01-09 08:12:45 -05:00
Nick Pope 99b3ab2781 Simplified some imports for database functions.
Used more specific modules to reduce the risk of circular imports.
2019-01-08 19:21:31 -05:00
Tom Hacohen 1ecc0a395b Fixed #30070, CVE-2019-3498 -- Fixed content spoofing possiblity in the default 404 page.
Co-Authored-By: Tim Graham <timograham@gmail.com>
2019-01-03 21:21:55 -05:00
Mariusz Felisiak 97844a3213
Fixed typo in django/db/backends/base/features.py. 2019-01-03 20:10:33 +01:00
Tim Graham 0004daa536
Used 4 space hanging indent for dictionaries.
Thanks Mariusz Felisiak for auditing.
2019-01-02 18:18:19 -05:00
Patrik Sletmo 14e2b1b065 Fixed #29981 -- Fixed inline formsets with a OnetoOneField primary key that uses to_field. 2019-01-01 10:40:22 -05:00
Tim Graham 02c07be95c Fixed #30050 -- Fixed InlineModelAdmin.has_change_permission() called with non-None obj during add.
Thanks andreage for the report and suggested fix.
2019-01-01 09:42:14 -05:00
Paveł Tyślacki 0123b67f6b Fixed #30060 -- Moved SQL generation for indexes and constraints to SchemaEditor. 2019-01-01 09:39:58 -05:00
Brylie Christopher Oxley e5ae9488ac Fixed #30069 -- Added docstring to manage.py template. 2018-12-31 19:37:23 -05:00
Tim Graham 100b8dd163
Renamed QuerySet.earliest()/latest() helper method. 2018-12-30 11:43:39 -05:00
Matt Wiens e817ae74da Followed style guide for model attribute ordering. 2018-12-27 19:34:14 -05:00
Mariusz Felisiak dd8ed64113
Fixed #29851 -- Fixed crash of annotations with window expressions in Subquery. 2018-12-27 20:21:57 +01:00
Jon Dufresne 6fe9c45b72 Fixed #30024 -- Made urlencode() and Client raise TypeError when None is passed as data. 2018-12-27 11:19:55 -05:00
Denis Stebunov 277de22984 Fixed #30058 -- Made SMTP EmailBackend.send_messages() return 0 for empty/error cases. 2018-12-26 13:33:08 -05:00
Tim Graham b74b6736d0
Refs #29547 -- Skipped an unsupported partial index test on older versions of SQLite.
Follow up to e5b8626c0e.
2018-12-26 11:20:11 -05:00
Simon Charette ec7bf6d826 Refs #20483 -- Cached Oracle references retrieval on sql_flush(). 2018-12-26 09:20:21 -05:00
Simon Charette 2b2ae4eeb7 Refs #30054, #20483 -- Cached SQLite references graph retrieval on sql_flush(). 2018-12-26 09:19:44 -05:00
Nick Pope 83677faf86 Fixed #30056 -- Added SQLite support for StdDev and Variance functions. 2018-12-24 11:14:58 -05:00
Sanyam Khurana 5d25804eaf Fixed #20098 -- Added a check for model Meta.db_table collisions. 2018-12-24 10:40:11 -05:00
Nick Pope e626a3f993 Renamed Sqlite and Sqlite3 references to SQLite. 2018-12-22 18:52:54 -05:00
Sergey Fedoseev a68ea23101 Fixed #29970, #30041 -- Made ModelBase.__new__() pass attrs without contribute_to_class() to type.__new__(). 2018-12-22 18:11:24 -05:00
Simon Charette ce8b65ac5e Fixed #30054 -- Implemented cascaded flush on SQLite.
This is required to maintain foreign key integrity when using
TransactionTestCase.available_apps.

Refs #30033, #14204, #20483.
2018-12-22 17:47:48 -05:00
Tim Graham d5af14aa84 Fixed #30055 -- Dropped support for SQLite < 3.8.3. 2018-12-22 16:59:28 -05:00
Simon Charette 790d108c97 Refs #30033 -- Checked constraints before committing SQLite schema changes.
This order of operations is more in line with SQLite's documented table
rebuild procedure and ensures that changes aren't committed if foreign key
integrity is broken.
2018-12-22 15:26:46 -05:00
Simon Charette 6b9bd0933e Refs #29928 -- Added supports_pragma_foreign_key_check SQLite feature flag. 2018-12-22 15:14:33 -05:00
Simon Charette f3eb1cfb58 Refs #29928 -- Corrected SQLite's can_defer_constraint_checks feature flag. 2018-12-22 15:13:46 -05:00
Simon Charette 25a0781a16 Refs #29182 -- Corrected SQLite's supports_atomic_references_rename feature flag. 2018-12-22 14:58:08 -05:00
Simon Charette e5b8626c0e Refs #29547 -- Corrected SQLite's supports_partial_indexes feature flag. 2018-12-22 14:51:59 -05:00
Simon Charette 20f6f9eaa1 Renamed SQLite3 references to to SQLite.
The version suffix isn't part of the product name.
2018-12-22 14:20:43 -05:00
François Freitag e671337e8b Fixed #29750 -- Added View.setup() hook for class-based views. 2018-12-21 19:01:11 -05:00
Zach Garwood 19e863a844 Fixed #29995 -- Used higher contrast colors in debug page. 2018-12-21 18:00:13 -05:00
Tim Graham 226a26cf34 Removed an overridden CSS rule in debug page. 2018-12-21 18:00:03 -05:00
jtiai 5a77190e66 Fixed #29792 -- Made GeometryField.deconstruct() handle 'extent' and 'tolerance' args. 2018-12-21 17:44:45 -05:00
wiktorkuchta 3defe76385 Fixed Polish MONTH_DAY_FORMAT. 2018-12-21 10:29:46 +01:00
Carlton Gibson bbe28fa076 Refs #30015 -- Added 2.1.5 release note and removed 'we' in comments. 2018-12-20 21:30:13 -05:00
Toivo Mattila 78dc7039bc Replaced loop with dictionary comprehension. 2018-12-19 17:31:48 -06:00
Dakota Hawkins 8d3147e130 Fixed #30031 -- Added --no-header option to makemigrations/squashmigrations. 2018-12-19 12:41:31 +01:00
Konstantin Alekseev b514dc14f4 Fixed #30015 -- Ensured request body is properly consumed for keep-alive connections. 2018-12-19 11:27:08 +01:00
Simon Charette 1939dd49d1 Fixed #29928 -- Enabled deferred constraint checks on SQLite 3.20+.
Refs #11665, #14204.

Thanks Michel Samia for the report.
2018-12-17 11:03:44 +01:00
Simon Charette 894cb13779 Refs #29182 -- Stopped relying on legacy alter table semantic on SQLite 3.26+.
SQLite 3.26 changed the behavior of table and column renaming operations to
repoint foreign key references even if foreign key checks are disabled.

This makes the workarounds in place to simulate this behavior unnecessary on
SQLite 3.26+. Refs #30033.
2018-12-17 10:44:05 +01:00
Simon Charette 7289874adc Fixed #30033 -- Conformed to the recommended table alterations procedure on SQlite3.
Refs #29182.

The previous implementation was following a procedure explicitly documented
as incorrect and was the origin of the breakage experienced on SQLite 3.26
release that were addressed by c8ffdbe514.

Thanks to Richard Hipp for pointing out the usage of the incorrect procedure.
2018-12-17 10:44:05 +01:00
Simon Charette a939d630a4 Refs #29928 -- Implemented fast constraint checking on SQLite 3.20+. 2018-12-17 10:44:05 +01:00
HyunTae Hwang ae2897aaf8 Fixed typo in contrib.gis variable name. 2018-12-16 20:16:00 -10:00
Simon Charette 315357ad25 Fixed #30023 -- Prevented SQLite schema alterations while foreign key checks are enabled.
Prior to this change foreign key constraint references could be left pointing
at tables dropped during operations simulating unsupported table alterations
because of an unexpected failure to disable foreign key constraint checks.

SQLite3 does not allow disabling such checks while in a transaction so they
must be disabled beforehand.

Thanks ezaquarii for the report and Carlton and Tim for the review.
2018-12-15 18:51:59 -05:00
Mariusz Felisiak f0082b9a77
Refs #28670 -- Fixed DatabaseFeatures.supports_slicing_ordering_in_compound on Oracle. 2018-12-10 12:56:09 +00:00
Simon Charette c8ffdbe514 Fixed #29182 -- Fixed schema table alteration on SQLite 3.26+.
SQLite 3.26 repoints foreign key constraints on table renames even when
foreign_keys pragma is off which breaks every operation that requires
a table rebuild to simulate unsupported ALTER TABLE statements.

The newly introduced legacy_alter_table pragma disables this behavior
and restores the previous schema editor assumptions.

Thanks Florian Apolloner, Christoph Trassl, Chris Lamb for the report and
troubleshooting assistance.
2018-12-07 13:32:37 -05:00
Benjamin Wohlwend 79c196cfb2 Fixed #28766 -- Added ResolverMatch.route.
Co-Authored-By: Xavier Fernandez <xavier.fernandez@polyconseil.fr>
2018-12-06 18:05:40 -05:00
Mariusz Felisiak f9a33e3c3f Fixed #29932 -- Fixed combining compound queries with sub-compound queries on SQLite and Oracle. 2018-12-06 15:31:33 -05:00
Patrick Arminio ae180fa4b7 Fixed #29986 -- Added .format() support to ngettext_lazy strings. 2018-12-06 15:12:34 -05:00
Simon Charette 53269bcaaf Fixed #30011 -- Fixed queries that reuse filtered aggregates.
Thanks Taqi Abbas and Raphael Kimmig for the report.
2018-12-06 14:55:35 -05:00
Tim Graham 88619e6129
Bumped mysqlclient requirement to >= 1.3.13.
There are test failures with older versions.
2018-12-06 14:49:27 -05:00
jpic 9453bc77f4 Fixed #30003 -- Added usable entry point in default manage.py. 2018-12-06 14:45:40 -05:00
Tim Graham 4c7c608a1d Reverted "Fixed #25251 -- Made data migrations available in TransactionTestCase when using --keepdb."
This reverts commits b3b1d3d45f and
9fa0d3786f due to reverse build failures
for which a solution isn't forthcoming.
2018-12-05 15:30:23 -05:00
Tim Graham 284b3221a2 Fixed #30013 -- Fixed DatabaseOperations.last_executed_query() with mysqlclient 1.3.14+. 2018-12-05 14:46:23 -05:00
Carlton Gibson 8245c99ee6
Fixed #29930 -- Allowed editing in admin with view-only inlines.
Co-authored-by: Tim Graham <timograham@gmail.com>
2018-12-03 07:44:18 -08:00
Nick Pope c3bbf1fd4c Refs #28643 -- Skipped ATan2() workaround on SpatiaLite 5+. 2018-11-30 13:59:05 -05:00
Prabakaran Kumaresshan 0d724ce916 Fixed #30001 -- Marked UUIDField.description for translation. 2018-11-30 11:23:17 -05:00
Tim Fiedler b07273a0f7 Fixed #29987 -- Detected unmanaged model deletions. 2018-11-30 09:57:43 -05:00
Jaap Roes 8a1a919468 Fixed #29997 -- Allowed combining SearchQuerys with different configs.
Seems to be a needless restriction in
978a00e39f.
2018-11-30 09:42:50 -05:00
romgar 9fa0d3786f Refs #25251 -- Filtered out skipped tests when processing the test suite to set _next_serialized_rollback. 2018-11-29 11:20:27 -05:00
Basil Dubyk 7d1123e5ad Fixed #29929 -- Fixed admin view-only change form crash when using ModelAdmin.prepopulated_fields. 2018-11-28 15:40:14 -05:00
dmytryi.striletskyi dcd1025f4c Fixed #28385 -- Fixed deserializing natural keys when primary key has a default value.
Co-Authored-By: Hasan Ramezani <hasan.r67@gmail.com>
2018-11-27 18:35:19 -05:00
Mariusz Felisiak f091ea3515
Refs #29722 -- Added introspection of materialized views for Oracle.
Thanks Tim Graham for the review.
2018-11-26 19:45:05 +01:00
takaaki shimbo 6275b50ac2 Fixed typo in patch_logger() docstring. 2018-11-25 14:43:26 -05:00
Jaap Roes fc71bb11b1 Improved readability of translation's to_locale(). 2018-11-23 14:53:19 -05:00
Nick Pope c512912463 Refs #23801 -- Made integer field max_length warning show correct field type. 2018-11-23 14:40:46 -05:00
Nick Pope 856ba1ec86 Removed redundant BigIntegerField.empty_strings_allowed (already inherited). 2018-11-23 14:22:58 -05:00
Claude Paroz d7e18a509e Fixed #29978 -- Catched GDALException in GeometryField.to_python 2018-11-23 09:39:02 +01:00
Tom Forbes 31408446b3 Fixed #29974 -- Fixed non-truthy primary key values for QuerySet.bulk_update(). 2018-11-21 22:58:43 -05:00
Mariusz Felisiak d5f4ce9849
Fixed #29949 -- Refactored db introspection identifier converters.
Removed DatabaseIntrospection.table_name_converter()/column_name_converter()
and use instead DatabaseIntrospection.identifier_converter().

Removed DatabaseFeatures.uppercases_column_names.

Thanks Tim Graham for the initial patch and review and Simon Charette
for the review.
2018-11-21 09:06:50 +01:00
redodo 2e4776196d Fixed #29953 -- Added CSS class to column headers in tabular inlines.
The class name is the same as one given to the fields in the change list.
2018-11-20 18:17:53 -05:00
Tim Graham acdd18dffc
Changed BaseDatabaseSchemaEditor._effective_default() to staticmethod.
Follow up to 9cac10eee4.
2018-11-20 18:01:18 -05:00
Sanyam Khurana a7d6cab771 Fixed #29282 -- Prevented some admin checks from crashing with TypeError.
Co-authored-by: David Sanders <dsanders11@ucsbalum.com>
2018-11-20 17:19:13 -05:00
Tim Graham bff5ccff75 Refs #24829 -- Removed TemplateResponse rendering in BaseHandler.get_response().
Obsolete since 742ea51413.
2018-11-20 11:04:44 -05:00
Tim Graham 3529d0eabf Corrected docs and removed unused code for got_request_exception signal's sender argument.
Inaccurate since 7d1b69dbe7.
2018-11-20 10:15:58 -05:00
Tim Graham cafb34963c Removed BaseHandler.get_exception_response().
Unused since 7d1b69dbe7.
2018-11-20 09:45:29 -05:00
redodo 89a2216486 Fixed #29961 -- Made RelatedFieldWidgetWrapper hide related item links if wrapping a hidden widget. 2018-11-19 15:12:52 -05:00
Nick Pope ebd270627c Refs #29722 -- Added introspection of partitions for PostgreSQL. 2018-11-19 14:06:01 -05:00
Thomas Grainger 0607699902 Fixed #29478 -- Added support for mangled names to cached_property.
Co-Authored-By: Sergey Fedoseev <fedoseev.sergey@gmail.com>
2018-11-19 13:40:49 -05:00
Sergey Fedoseev 80ba7a881f Fixed cached_properties that share a common property.
The aliases aren't cached and thus the old usage will be an error after
refs #29478.
2018-11-19 08:59:46 -05:00
Vishvajit Pathak 11bcb57ee2 Fixed #29964 -- Removed unused admin/related_widget_wrapper.html template.
Unused since b52c73008a.
2018-11-18 11:42:48 -05:00
Tim Graham 9cac10eee4 Added BaseDatabaseSchemaEditor._effective_default() to allow testing without a connection. 2018-11-17 19:27:53 -05:00
Tim Graham e62f6e0968 Fixed #29505 -- Removed SchemaEditor's calling of callable defaults.
Thanks Eugene Pakhomov for the suggested fix.
2018-11-17 19:27:53 -05:00
Simon Charette 0cf85e6b07 Refs #29908 -- Optimized known related objects assignment.
Since CPython implements a C level attrgetter(*attrs) it even outperforms the
most common case of a single known related object since the resulting attribute
values tuple is built in C.
2018-11-17 18:56:11 -05:00
Claude Paroz e7e5505902 Fixed #29959 -- Cached GEOS version in WKBWriter class.
Regression in f185d929fa.
2018-11-16 14:45:21 -05:00
Mathew Payne 26bb2611a5 Fixed #29952 -- Lowercased all passwords in contrib.auth's auth/common-passwords.txt.gz. 2018-11-15 14:11:03 -05:00
Ian Foote e1fc07c047 Fixed #17930 -- Allowed ORing (|) with sliced QuerySets. 2018-11-15 09:43:58 -05:00
Sarah Guermond cd40306854 Fixed #25884 -- Fixed migrate --run-syncdb when specifying an app label. 2018-11-14 18:22:59 -05:00
Timothy Allen e819554018 Fixed #29939 -- Increased Group.name max_length to 150 characters. 2018-11-14 15:13:34 -05:00
Hasan Ramezani 6d4e5feb79 Fixed #29835 -- Made RelatedFieldListFilter respect ModelAdmin.ordering. 2018-11-14 14:29:39 -05:00
Basil Dubyk 35a08b8541 Fixed #17210 -- Made NullBooleanSelect use unknown/true/false as query data. 2018-11-14 13:43:34 -05:00
Mariusz Felisiak ff8020ed49 Fixed #29788 -- Added support for Oracle Managed File (OMF) tablespaces. 2018-11-13 18:22:41 -05:00
Simon Charette db13bca60a Fixed #29641 -- Added support for unique constraints in Meta.constraints.
This constraint is similar to Meta.unique_together but also allows
specifying a name.

Co-authored-by: Ian Foote <python@ian.feete.org>
2018-11-13 17:57:27 -05:00
Simon Charette dba4a634ba Refs #29641 -- Refactored database schema constraint creation.
Added a test for constraint names in the database.

Updated SQLite introspection to use sqlparse to allow reading the
constraint name for table check and unique constraints.

Co-authored-by: Ian Foote <python@ian.feete.org>
2018-11-13 15:25:44 -05:00
Simon Charette 2f120ac517 Fixed #29945 -- Moved contrib.postgres uninstallation logic to the app config. 2018-11-12 11:15:48 -05:00
Florian Apolloner 934acf1126 Fixed keep-alive support in manage.py runserver.
Ticket #25619 changed the default protocol to HTTP/1.1 but did not
properly implement keep-alive. As a "fix" keep-alive was disabled in
ticket #28440 to prevent clients from hanging (they expect the server to
send more data if the connection is not closed and there is no content
length set).

The combination of those two fixes resulted in yet another problem:
HTTP/1.1 by default allows a client to assume that keep-alive is
supported unless the server disables it via 'Connection: close' -- see
RFC2616 8.1.2.1 for details on persistent connection negotiation. Now if
the client receives a response from Django without 'Connection: close'
and immediately sends a new request (on the same tcp connection) before
our server closes the tcp connection, it will error out at some point
because the connection does get closed a few milli seconds later.

This patch fixes the mentioned issues by always sending 'Connection:
close' if we cannot determine a content length. The code is inefficient
in the sense that it does not allow for persistent connections when
chunked responses are used, but that should not really cause any
problems (Django does not generate those) and it only affects the
development server anyways.

Refs #25619, #28440.
2018-11-10 13:54:45 +01:00
Srinivas Thatiparthy (శ్రీనివాస్ తాటిపర్తి) 1f726311d1 Used method chaining in DateTimeShortcuts.js. 2018-11-09 19:56:46 -05:00
Tim Graham f82be9ebc7
Fixed #29934 -- Added sqlparse as a require dependency. 2018-11-09 19:09:36 -05:00
Matthias Kestenholz f9ff1df1da Fixed #29917 -- Stopped collecting ModelAdmin.actions from base ModelAdmins. 2018-11-09 18:52:30 -05:00
Srinivas Thatiparthy (శ్రీనివాస్ తాటిపర్తి) a375e911ef Removed unused variables. 2018-11-09 15:44:12 -05:00
Srinivas Reddy Thatiparthy 978ad6d4c0 Removed unused 'tz' variable in typecast_timestamp(). 2018-11-09 12:47:02 -05:00
Hasan Ramezani f62cf22c48 Fixed #29931 -- Removed unused ValueError handling in naturalday template tag. 2018-11-09 11:58:09 -05:00
minusf 545dae24fd Fixed signing.dumps() example for Python 3. 2018-11-09 07:26:46 -05:00
Simon Charette 75dfa92a05 Fixed #29908 -- Fixed setting of foreign key after related set access if ForeignKey uses to_field.
Adjusted known related objects handling of target fields which relies on
from and to_fields and has the side effect of fixing a bug bug causing
N+1 queries when using reverse foreign objects.

Thanks Carsten Fuchs for the report.
2018-11-08 19:51:15 -05:00
Tim Graham 803840abf7
Refs #29926 -- Removed usage of gettext.translation()'s deprecated codeset parameter.
https://bugs.python.org/issue33710
2018-11-06 20:22:47 -05:00
romgar b3b1d3d45f Fixed #25251 -- Made data migrations available in TransactionTestCase when using --keepdb.
Data loaded in migrations were restored at the beginning of each
TransactionTestCase and all the tables are truncated at the end of
these test cases. If there was a TransactionTestCase at the end of
the test suite, the migrated data weren't restored in the database
(especially unexpected when using --keepdb). Now data is restored
at the end of each TransactionTestCase.
2018-11-06 16:57:50 -05:00
Tom Forbes d5e52f2bef Removed DatabaseOperation.savepoint_create/rollback_sql() on Oracle.
Obsolete since 918f44e3ae.
2018-11-04 18:21:59 -05:00
Tim Graham 1c948e544e Refs #29883 -- Removed runtests.py's dependency on selenium.
Regression in d207ac1568.
2018-11-03 19:02:31 -04:00
Tom Forbes d207ac1568 Fixed #29883 -- Added selenium hub support to runtests.py. 2018-11-03 09:56:14 -04:00
Jayantha Gumballi dfcdc8992f Fixed #29886 -- Fixed unaccent lookup when PostgreSQL's standard_conforming_strings option is off.
Thanks Tom McClure for the patch.
2018-11-01 11:14:34 -04:00
Tim Graham 98ef3829e9 Fixed #29890 -- Fixed FileSystemStorage crash if concurrent saves try to create the same directory.
Regression in 632c4ffd9c.
2018-10-31 19:28:11 -04:00
Javier Matos Odut 3d4d0a25b2 Fixed #29901 -- Allowed overriding an autocomplete/raw_id_fields/radio_fields widget with ModelAdmin.get_formset(). 2018-10-31 10:16:17 -04:00
Junyoung df448bfd02 Fixed #29783 -- Added app label validation to showmigrations command. 2018-10-30 19:29:00 -04:00
Artur Juraszek 817c6cdf0e Capitalized SecurityMiddleware headers for consistency with other headers.
(No behavior change since HTTP headers are case insensitive.)
2018-10-30 18:30:51 -04:00
Jayden Kneller 916aecd29d Fixed #29866 -- Made DiscoverRunner do tests tear down if running checks or tests raises an exception. 2018-10-30 12:01:48 -04:00
Mads Jensen a906c98982 Fixed #29547 -- Added support for partial indexes.
Thanks to Ian Foote, Mariusz Felisiak, Simon Charettes, and
Markus Holtermann for comments and feedback.
2018-10-29 19:34:54 -04:00
thomazzo 9625d13f7b Fixed #29882 -- Added events and stored routines to MySQL's cloned test databases. 2018-10-29 14:45:30 -04:00
Hasan Ramezani 4f8f1b2f24 Fixed #29903 -- Added error message for invalid WeekArchiveView week_format. 2018-10-29 14:22:42 -04:00
Simon Charette d8e03fdeb9 Fixed #29897 -- Fixed autodetector's swappable MTI dependency resolution.
Thanks Steven Ganz for the detailed report.
2018-10-29 11:24:30 -04:00
Simon Charette 82353ef940 Refs #29897 -- Moved autodetector swappable dependency resolution to a method. 2018-10-29 11:17:21 -04:00
Simon Charette f1855fd885 Refs #23322 -- Removed unnecessary "and" clause in the autodetector.
If the depedency was swappable then it'll be resolved at this point.
2018-10-29 11:07:07 -04:00
Simon Charette 95bda03f2d Fixed #29868 -- Retained database constraints on SQLite table rebuilds.
Refs #11964.

Thanks Scott Stevens for testing this upcoming feature and the report.
2018-10-29 10:33:41 +01:00
Tim Graham f77fc56c96
Fixed #29896 -- Fixed incorrect Model.save() cache relation clearing for foreign keys that use to_field.
Regression in ee49306176.
2018-10-28 22:54:02 -04:00
Hampus Dunström 5e8a07d69d Fixed #29763 -- Added support for column renaming on SQLite. 2018-10-27 20:26:39 -04:00
Tim Graham f892781b95 Fixed #28606 -- Deprecated CachedStaticFilesStorage. 2018-10-27 11:58:29 -04:00
Tim Graham 717ee63e56
Refs #27025 -- Removed obsolete sqlite3 transaction management workaround for Python 3.6+.
Obsolete per https://bugs.python.org/issue10740#msg274816.
2018-10-25 19:54:48 -04:00
Mariusz Felisiak c6525bea9e Fixed #29534 -- Made dbshell use rlwrap on Oracle if available. 2018-10-25 19:39:42 -04:00
Sergey Fedoseev 9a88c6dd6a Fixed #29827 -- Fixed reuse of test databases with --keepdb on MySQL.
Regression in e1253bc26f.
2018-10-25 19:37:41 -04:00
Tim Graham f1d1634493 Removed useless check in sqlite's DatabaseWrapper._savepoint_allowed().
Obsolete since 27193aea00.
2018-10-25 10:17:37 -04:00
Tim Graham 9b52bd6575 Made DatabaseFeatures.uses_savepoints default to True. 2018-10-25 10:02:47 -04:00
Sanyam Khurana 83c7096f2a Fixed #29869 -- Made UUIDField.to_python() convert integers. 2018-10-24 20:26:57 -04:00
Sanyam Khurana c86a3d80a2 Fixed #29721 -- Ensured migrations are applied and recorded atomically. 2018-10-24 19:29:11 -04:00
Mariusz Felisiak 641742528a Fixed F841 flake8 warning. 2018-10-24 09:13:10 -04:00
Prabakaran Kumaresshan 10d82c85aa Fixed #29831 -- Added validation for makemigrations --name. 2018-10-23 10:05:24 -04:00
jannschu efc0f77f02 Fixed #29830 -- Fixed loss of custom utf-8 body encoding in mails. 2018-10-22 15:21:33 -04:00
buzzi 24cae0bedc Fixed #29860 -- Allowed BaseValidator to accept a callable limit_value. 2018-10-22 10:26:54 -04:00
Simon Charette 5e3463f6bc Fixed #27595 -- Made ForeignKey.get_col() follow target chains.
Previously, foreign relationships were followed only one level deep which
prevents foreign keys to foreign keys from being resolved appropriately.
This was causing issues such as improper database value conversion for
UUIDField on SQLite because the resolved expression's output field's
internal type wasn't correct. Added tests to make sure unlikely foreign
reference cycles don't cause recursion errors.

Refs #24343.

Thanks oyooyo for the report and Wayne Merry for the investigation.
2018-10-22 09:49:34 -04:00
Florian Apolloner 4269648c0f Fixed #29876 -- MySQL does not support SPATIAL fields in unique indices. 2018-10-22 13:36:48 +02:00
Mariusz Felisiak 328f5627dd
Fixed #29870 -- Added DurationField introspection for Oracle and PostgreSQL.
Thanks Tim Graham for the review.
2018-10-21 09:08:05 +02:00
deby 19126339f3 Fixed Italian's MONTH_DAY_FORMAT.
The `/` is inconsistent with the other languages.
2018-10-20 05:09:41 -04:00
Adam Allred 4e78e389b1 Fixed #29774 -- Fixed django-admin shell hang on startup.
sys.stdin.read() blocks waiting for EOF in shell.py which will
likely never come if the user provides input on stdin via the
keyboard before the shell starts. Added check for a tty to
skip reading stdin if it's not present.

This still allows piping of code into the shell (which should
have no TTY and should have an EOF) but also doesn't cause it
to hang if multi-line input is provided.
2018-10-19 20:00:12 -04:00
aspalding dc5e75d419 Fixed #29838 -- Fixed crash when combining Q objects with __in lookups and lists.
Regression in fc6528b25a.
2018-10-17 11:34:49 -04:00
aspalding 217f82d713 Refs #29838 -- Fixed make_hashable() for values that have lists or dicts nested in tuples.
And for non-hashable values that are iterable, e.g. sets.
2018-10-17 11:17:50 -04:00
aspalding 834c4ec8e4 Moved make_hashable() to django.utils and added tests. 2018-10-17 11:17:23 -04:00
Tim Graham 4268d275b8 Fixed #29857 -- Added get_storage_class to django.core.files.storage.__all__. 2018-10-17 09:03:51 -04:00
Florian Apolloner bc7dd8490b Fixed #21171 -- Avoided starting a transaction when a single (or atomic queries) are executed.
Checked the following locations:

 * Model.save(): If there are parents involved, take the safe way and use
   transactions since this should be an all or nothing operation.

   If the model has no parents:

    * Signals are executed before and after the previous existing
      transaction -- they were never been part of the transaction.

    * if `force_insert` is set then only one query is executed -> atomic
      by definition and no transaction needed.

    * same applies to `force_update`.

    * If a primary key is set and no `force_*` is set Django will try an
      UPDATE and if that returns zero rows it tries an INSERT. The first
      case is completly save (single query). In the second case a
      transaction should not produce different results since the update
      query is basically a no-op then (might miss something though).

 * QuerySet.update(): no signals issued, single query -> no transaction
   needed.

 * Model/Collector.delete(): This one is fun due to the fact that is
   does many things at once.

   Most importantly though: It does send signals as part of the
   transaction, so for maximum backwards compatibility we need to be
   conservative.

   To ensure maximum compatibility the transaction here is removed only
   if the following holds true:

     * A single instance is being deleted.
     * There are no signal handlers attached to that instance.
     * There are no deletions/updates to cascade.
     * There are no parents which also need deletion.
2018-10-17 12:19:02 +02:00
Jon Dufresne 0cd465b63a Fixed #29817 -- Deprecated settings.FILE_CHARSET. 2018-10-15 17:15:41 -04:00
Jon Dufresne 99d4fc18bd Refs #27829 -- Added warning for settings.DEFAULT_CONTENT_TYPE usage outside of Django. 2018-10-15 16:31:39 -04:00
oliver 1299421cad Fixed #29725 -- Removed unnecessary join in QuerySet.count() and exists() on a many-to-many relation. 2018-10-15 11:01:57 -04:00
Mariusz Felisiak f2e2a1bd4b
Fixed #29845 -- Fixed Cast crash on MySQL when casting to DecimalField. 2018-10-15 15:57:22 +02:00
Taoufik f07091a30f Fixed typo in django/utils/datastructures.py. 2018-10-14 11:20:22 -04:00
Mariusz Felisiak a3052c35d1
Fixed various comments in django/db/backends/oracle/base.py. 2018-10-13 20:25:23 +02:00
Tim Graham 1e3cd51163
Simplified django.utils.html.urlize(). 2018-10-12 12:15:26 -04:00
Tim Graham 910548634a Refs #29826 -- Removed unused characters from urlize configuration.
The HTML characters are unused because urlize is meant to be applied to
plain text and these characters aren't properly detected (refs #29826).
Angle brackets and quotes are present in word_split_re and therefore
won't be used in WRAPPING_PUNCTUATION.
2018-10-12 08:13:52 +02:00
Mac Chapman fb5dfd53a7 Fixed #29832 -- Updated Roboto font to v2.137. 2018-10-11 23:30:45 -04:00
Patrik Sletmo adfdb9f169 Fixed #29814 -- Added support for NoneType serialization in migrations. 2018-10-11 09:02:14 -04:00
Mariusz Felisiak 52fec5d18f
Fixed #29836 -- Bumped required cx_Oracle to 6.0. 2018-10-11 11:43:16 +02:00
Jon Dufresne c82893cb8c Refs #27795 -- Removed force_bytes() usage from django/utils/http.py.
django.utils.http.urlsafe_base64_encode() now returns a string, not a
bytestring. Since URLs are represented as strings,
urlsafe_base64_encode() should return a string. All uses immediately
decoded the bytestring to a string anyway.

As the inverse operation, urlsafe_base64_decode() accepts a string.
2018-10-10 14:38:22 -04:00
Hasan Ramezani f3d3338e06 Fixed #29829 -- Remove unused code in contrib.sites.models._simple_domain_name_validator(). 2018-10-09 20:50:00 -04:00
Sergey Fedoseev 3957f767bb Simplified handling of DurationField values on MySQL/MariaDB. 2018-10-09 10:38:42 -04:00
Jon Dufresne e90af8bad4 Capitalized "Python" in docs and comments. 2018-10-09 09:26:07 -04:00
Jon Dufresne 1e87c9fe71 Replaced kwargs.pop() with keyword-only arguments. 2018-10-08 15:06:02 -04:00
Jon Dufresne 2ba588e773 Refs #27795 -- Removed force_text() usage in db/models/sql/query.py. 2018-10-08 14:47:01 -04:00
Jon Dufresne 4ab071f43c Refs #27795 -- Removed force_bytes() usage in contrib/staticfiles/storage.py. 2018-10-05 09:26:28 -04:00
Eric Brandwein b0b4aac555 Fixed #29775 -- Fixed URL converters in a nested namespaced path.
When using include() without namespaces of some urlpatterns that
have an include() with namespace, the converters of the parent
include() weren't being used to convert the arguments of reverse().
2018-10-04 11:42:27 -04:00
Sergey Fedoseev 277017aea4 Simplified utils.text.StreamingBuffer. 2018-10-04 08:28:03 -04:00
Jon Dufresne bdae19cf63 Refs #27795 -- Removed force_bytes() usage in sessions.
SessionBase.decode() is the inverse operation to SessionBase.encode().
As SessionBase.encode() always returns a string, SessionBase.decode()
should always be passed a string argument. Fixed the file backend, which
was the only backend still passing a bytestring.
2018-10-03 11:11:42 +02:00
Jon Dufresne efd8a82e26 Refs #27795 -- Removed force_bytes() usage in MySQL backend.
The mysqlclient cursor attribute `_last_executed` is always stored as
bytes. Decode it.

TextField values are already type str. No need to decode.
2018-10-03 10:37:36 +02:00
Stefano Chiodino 6de7f9ec60 Fixed #29598 -- Deprecated FloatRangeField in favor of DecimalRangeField. 2018-10-02 19:17:23 -04:00
Simon Charette bc7e288ca9 Fixed #29745 -- Based Expression equality on detailed initialization signature.
The old implementation considered objects initialized with an equivalent
signature different if some arguments were provided positionally instead of
as keyword arguments.

Refs #11964, #26167.
2018-10-02 19:15:20 -04:00
Sergey Fedoseev e4df8e6dc0 Simplified contrib.admin.utils.unquote(). 2018-10-02 15:42:56 -04:00
Nick Pope bf8b625a3b Refs #29722 -- Added introspection of materialized views for PostgreSQL. 2018-10-02 14:02:04 -04:00
Nick Pope 45ef3df7d0 Fixed #29719 -- Added introspection of foreign tables for PostgreSQL.
Thanks infinite-l00p for the initial patch.
2018-10-02 14:01:24 -04:00
Simon Charette 24dc7d8940 Refs #29641 -- Extracted reusable CheckConstraint logic into a base class. 2018-10-02 13:11:18 -04:00
Simon Charette 9142bebff2 Refs #11964 -- Changed CheckConstraint() signature to use keyword-only arguments.
Also renamed the `constraint` argument to `check` to better represent which
part of the constraint the provided `Q` object represents.
2018-10-02 10:53:04 -04:00
Jon Dufresne 0bf7b25f8f Added django.db.backends.utils.names_digest() to remove redundant code. 2018-10-02 10:41:43 -04:00
Jon Dufresne c37b844349 Fixed ResourceWarning in MySQL's _clone_test_db(). 2018-10-02 10:23:21 -04:00
Jon Dufresne d4fc111c24 Refs #27795 -- Removed force_bytes() usage in admindocs.
Refs #12892 is probably obsolete.
2018-10-02 10:18:52 -04:00
Przemysław Buczkowski 70d0a1ca02 Fixed #29711 -- Added a system check for uniquness of admin actions' __name__. 2018-10-02 09:17:23 -04:00
Abhinav Patil bf01994a5c Fixed #29804 -- Added 'did you mean' suggestions for unsupported lookup error. 2018-10-01 19:03:10 -04:00
Sergey Fedoseev e9defb3f6e Simplified contrib.admin.utils.quote(). 2018-10-01 09:11:53 -04:00
Claude Paroz fc3a463048 Fixed #29767 -- Made date-related casts work on SQLite
Thanks Rémy Hubscher for the report and Tim Graham and Simon Charette for the reviews.
2018-10-01 13:27:30 +02:00
Tim Graham a7284cc0c3 Fixed #29809 -- Fixed a crash when a "view only" user POSTs to the admin user change form. 2018-10-01 10:09:50 +02:00
Carlton Gibson bf39978a53 Fixed CVE-2018-16984 -- Fixed password hash disclosure to admin "view only" users.
Thanks Claude Paroz & Tim Graham for collaborating on the patch.
2018-10-01 10:05:01 +02:00
Claude Paroz 033d842e84 Updated translations from Transifex
Forward port of d5ed08263b from master.
2018-09-29 17:11:49 +02:00
Sergey Fedoseev 8ef8bc0f64 Refs #28909 -- Simplifed code using unpacking generalizations. 2018-09-28 09:57:12 -04:00
Paweł Kołodziej 05c578bc1f Fixed #29796 -- Added system check for STATICFILES_DIRS prefix ending with a slash. 2018-09-27 19:49:37 -04:00
Marten Kenbeek 40c8ffad72 Fixed #29768 -- Improved error message when an AppConfig has a typo in INSTALLED_APPS. 2018-09-26 16:12:21 -04:00
Ramon Saraiva 2349cbd909 Fixed #29782 -- Added better error message when filtering queryset with AnonymousUser. 2018-09-26 15:36:19 -04:00
Matthew Power 18098d261f Fixed #29673 -- Reset the URLconf at the end of each request.
Co-authored-by: Ross Thorne <rmwthorne@googlemail.com>
2018-09-26 15:35:24 -04:00
Sergey Fedoseev 91841c77cd Fixed loaddata error message when uncompressed fixture has a dot in its name. 2018-09-26 15:30:15 -04:00
Stephen James e40e7026ca Fixed #29683 -- Added view permission to docs. 2018-09-26 15:06:43 -04:00
Mariusz Felisiak 024abe5b82
Fixed #29630 -- Fixed crash of sliced queries with multiple columns with the same name on Oracle 12.1.
Regression in 0899d583bd.

Thanks Tim Graham for the review and Jani Tiainen for help.
2018-09-26 20:18:48 +02:00
Jon Dufresne 8d87350356 Refs #27795 -- Removed force_bytes() usage in contrib/auth/handlers/modwsgi.py. 2018-09-26 11:16:59 -04:00
Mariusz Felisiak 90d93a1b42
Made DatabaseWrapper.oracle_version() return a full version tuple. 2018-09-26 08:51:27 +02:00
Jon Dufresne 82f286cf6f Refs #29784 -- Switched to https:// links where available. 2018-09-26 08:48:47 +02:00
Oleg d1d5c97bc2 Fixed #29778 -- Fixed quoting of unique index names.
Regression in 3b429c9673.
2018-09-25 16:00:20 -04:00
Sergey Fedoseev 553c24018e Removed unneeded list() calls in list.extend() argument. 2018-09-25 11:30:43 -04:00
Jon Dufresne bb81c22d90 Refs #27795 -- Removed force_bytes() usage in utils/_os.py. 2018-09-25 11:27:36 -04:00
Jon Dufresne 8c3e0eb1c1 Normalized spelling of "lowercase" and "lowercased". 2018-09-25 10:30:18 -04:00
Jon Dufresne abeed587b1 Refs #27795 -- Removed force_bytes() usage in db/backends/base/schema.py. 2018-09-25 09:54:06 -04:00
Jon Dufresne 1d65ddd9c3 Refs #27795 -- Removed force_bytes() usage in db/backends/utils.py. 2018-09-25 09:53:13 -04:00
Jon Dufresne ad9a28ee38 Refs #29784 -- Normalized Python docs links to omit the version. 2018-09-25 10:19:42 +02:00
Tim Graham 495abe0095 Refs #29198 -- Fixed migrate --plan crash if RunSQL uses a list or tuple.
Also fixed test failures if sqlparse isn't installed.
2018-09-19 17:13:39 -04:00
Javier Buzzi a0d63b02c3 Fixed #29772 -- Made LazyObject proxy __lt__() and __gt__(). 2018-09-19 13:51:01 -04:00
Tom Forbes 9cbdb44014 Fixed #23646 -- Added QuerySet.bulk_update() to efficiently update many models. 2018-09-18 16:14:44 -04:00
Tim Graham 0c20850774 Removed unused admin_url and root_path context variables in admindocs.
Unused since 915ef79b08 and
aaf77c1676.
2018-09-17 15:41:17 -04:00
Claude Paroz f5e347a640 Fixed #27899 -- Added support for phrase/raw searching in SearchQuery.
Thanks Tim Graham, Nick Pope, and Claude Paroz for contribution and review.
2018-09-17 12:03:52 -04:00
Sergey Fedoseev 4441778c26 Simplified ListMixin.sort(). 2018-09-17 10:54:37 -04:00
Mariusz Felisiak da92ec7962
Fixed #29759 -- Fixed crash on Oracle when fetching a returned insert id with cx_Oracle 7. 2018-09-16 12:45:34 +02:00
Nick Pope f87f9c5f63 Simplified introspection methods for PostgreSQL. 2018-09-14 14:34:43 -04:00
Adam Johnson 245c36d7b6 Fixed #29642 -- Added check for arguments of custom error handler views. 2018-09-14 11:59:56 -04:00
Simon Charette a4495f4b98 Fixed #29755 -- Made migrations detect changes to Meta.default_related_name. 2018-09-14 09:09:17 -04:00
Ramiro Morales 1b1f64ee5a Refs #14357 -- Deprecated Meta.ordering affecting GROUP BY queries.
Thanks Ramiro Morales for contributing to the patch.
2018-09-13 12:29:48 -04:00
Andrey Kostakov c52ecbda61 Removed shadowing of built-in hash() function. 2018-09-13 10:04:36 -04:00
Tim Graham 32fbccab40
Fixed #29749 -- Made the migrations loader ignore files starting with a tilde or underscore.
Regression in 29150d5da8.
2018-09-11 12:51:11 -04:00
Nick Pope a4d8e412e0 Refs #29560 -- Fixed typo in django/core/management/base.py. 2018-09-11 12:47:17 -04:00
Tom Carrick a43cfc23d4 Fixed #29746 -- Fixed misleading FlatpageForm URL help text if APPEND_SLASH is disabled. 2018-09-11 12:15:22 -04:00
Hasan Ramezani 5195b99e2c Fixed #29560 -- Added --force-color management command option. 2018-09-11 11:15:42 -04:00
Srinivas Reddy Thatiparthy 34d6bceec4 Fixed #29500 -- Fixed SQLite function crashes on null values.
Co-authored-by: Srinivas Reddy Thatiparthy <thatiparthysreenivas@gmail.com>
Co-authored-by: Nick Pope <nick.pope@flightdataservices.com>
2018-09-10 15:08:55 -04:00
Nick Pope 76dfa834e7 Combined two identical SQLite functions. 2018-09-10 14:41:58 -04:00
Nick Pope af7a758dcb Made some date parsing in SQLite functions more DRY. 2018-09-10 14:41:20 -04:00
Krzysztof Gogolewski db926a0048 Fixed #29243 -- Improved efficiency of migration graph algorithm. 2018-09-10 09:57:31 -04:00
Michal Čihař 22e8ab0286 Fixed #29728 -- Prevented session resaving if CSRF cookie is unchanged. 2018-09-08 11:46:13 -04:00
Alexander Holmbäck f315d0423a Fixed #29727 -- Made nonexistent joins in F() raise FieldError.
Regression in 2162f0983d.
2018-09-08 09:40:33 -04:00
Nick Pope 570402ffd7 Refs #29713 -- Improved error message from translation system check. 2018-09-06 13:49:25 +02:00
David 5db8d617c0 Fixed #29713 -- Added check that LANGUAGE_CODE uses standard language id format. 2018-09-03 10:43:55 +02:00
Jon Dufresne cc79c7ee63 Refs #27795 -- Removed force_text() in Model._get_FIELD_display(). 2018-08-31 10:59:57 -04:00
Tim Graham fd8a7a5313 Fixed #29723 -- Fixed crash if InlineModelAdmin.has_add_permission() doesn't accept the obj argument.
* Refs #27991 -- Added testing for ModelAdmin.get_inline_instances() if the inline's has_add_permission() doesn't accept 'obj'.

* Fixed #29723 -- Fixed crash if InlineModelAdmin.has_add_permission() doesn't accept the obj argument.
2018-08-30 11:22:50 +02:00
Sergey Fedoseev 54b331451c Refs #29689 -- Moved FilePathField choices sorting outside the loop. 2018-08-29 06:19:32 -04:00
Mariusz Felisiak 39461a83c3
Fixed #29694 -- Fixed column mismatch crash with QuerySet.values() or values_list() after combining querysets with extra() with union(), difference(), or intersection().
Regression in 0b66c3b442.
2018-08-29 10:00:15 +02:00
Jon Dufresne ee184e13cb Refs #27795 -- Removed force_bytes() usage in django/utils/cache.py. 2018-08-28 08:03:23 -04:00
Jon Dufresne 5311a36da5 Refs #29654 -- Replaced three dots with ellipsis in DB creation output strings. 2018-08-28 07:56:34 -04:00
Jon Dufresne 90f3ef332b Refs #27795 -- Removed force_bytes()/smart_text() from model fields. 2018-08-28 07:56:18 -04:00
Nick Pope ed4bfacb3c Fixed #29703 -- Deprecated QuerySetPaginator alias.
Unused since 4406d283e1.
2018-08-27 16:23:43 -04:00
Dan Palmer e181666973 Fixed #29687 -- Allowed the test client to serialize list/tuple as JSON. 2018-08-25 10:57:05 -04:00
priyanshsaxena 83b04d4f88 Fixed #29048 -- Added **extra_context to database function as_vendor() methods. 2018-08-23 11:52:09 -04:00
Matthijs Kooijman 08f360355a Fixed #29704 -- Fixed manage.py test --testrunner if it isn't followed by an equals sign. 2018-08-23 10:12:03 -04:00
Alejandro Dubrovsky 108c04f572 Fixed #29570 -- Added check that MEDIA_URL isn't in STATIC_URL. 2018-08-23 10:10:39 -04:00
winkidney c69d40f943 Fixed #29705 -- Fixed ImageField RuntimeError crash for WebP files. 2018-08-23 09:04:25 -04:00
Simon Willison 586a9dc429 Fixed #26352 -- Made system check allow ManyToManyField to target the same model if through_fields differs. 2018-08-22 12:07:29 -04:00
Franck Michea 7def8bed58 Fixed #29698 -- Fixed Field._check_choices() crash on invalid choices. 2018-08-22 09:15:19 -04:00
Claude Paroz 50b8493581 Refs #29654 -- Replaced three dots with ellipsis character in output strings. 2018-08-22 09:13:58 -04:00
Srinivas Reddy Thatiparthy (శ్రీనివాస్ రెడ్డి తాటిపర్తి) 233c70f047 Fixed #29658 -- Registered model lookups in tests with a context manager. 2018-08-21 12:17:46 -04:00
Claude Paroz 201017df30 Fixed #29654 -- Made text truncation an ellipsis character instead of three dots.
Thanks Sudhanshu Mishra for the initial patch and Tim Graham for the review.
2018-08-21 17:46:45 +02:00
Jon Dufresne ef87b38ef7 Fixed #29696 -- Prevented BaseModelFormSet.initial_form_count()'s from treating data={} as unbound. 2018-08-21 10:02:03 -04:00
Federico Bond a0ca4b5694 Fixed #29689 -- Improved performance of FileSystemStorage.listdir() and FilePathField with os.scandir(). 2018-08-20 17:58:00 -04:00
Rodrigo 371ece2f06 Fixed #29695 -- Added system checks for admin's app dependencies and TEMPLATES setting. 2018-08-20 17:57:46 -04:00
Mariusz Felisiak ac29fec111
Removed unused function argument from Window.as_sql().
Unused since its introduction in d549b88050.
2018-08-20 22:16:27 +02:00
Hasan Ramezani 49b679371f Fixed #29236 -- Fixed diffsettings crash if using settings.configure(). 2018-08-20 12:59:27 -04:00
Ming Qin cfb4845f06 Fixed #29625 -- Made Model.refresh_from_db() clear prefetch related caches. 2018-08-20 12:01:42 -04:00
Tim Graham d311124be5 Fixed #29682 -- Fixed admin change form crash if a view-only model's form has an extra field. 2018-08-20 11:14:20 -04:00
Taha Jahangir 0e7a9525ba Fixed #29690 -- Fixed aligned <ul> positioning for RTL languages in admin. 2018-08-20 10:20:30 -04:00
Jon Dufresne dc0868d414 Removed redundant 'model' argument in admin checks. 2018-08-20 09:11:42 -04:00
Sigurd Ljødal 3e09b37f80 Fixed #28649 -- Added ExtractIsoYear database function and iso_year lookup. 2018-08-18 13:09:15 -04:00
mackong c832885a3e Fixed #29426 -- Made UUID inputs in the admin match the width of a UUID. 2018-08-18 10:16:22 -04:00
Tim Graham 838d6dcb86 Refs #29426 -- Made UUIDField render values with dashes. 2018-08-18 08:20:21 -04:00
Alexander Todorov 53ebd4cb13 Fixed #29686 -- Made UserAdmin.user_change_password() pass user to has_change_permission(). 2018-08-17 17:43:00 -04:00
Kamil 3d4080f19c Fixed #29024 -- Made TestContextDecorator call disable() if setUp() raises an exception. 2018-08-17 16:30:27 -04:00
oliver abd0ad7681 Fixed #29626, #29584 -- Added optimized versions of get_many() and delete_many() for the db cache backend. 2018-08-17 15:13:09 -04:00
Tom Forbes c02d473781 Fixed #29612 -- Added GenericRelation prefetch_related() cache invalidation. 2018-08-17 14:58:45 -04:00
Jon Dufresne bf17f5e884 Refs #29015 -- Added database name to PostgreSQL database name too long exception. 2018-08-17 12:43:56 -04:00
Jon Dufresne 09ee3b6fe3 Fixed #29663 -- Made admin change view redirect to changelist with view permission. 2018-08-17 11:13:06 -04:00
Jon Dufresne 57f16655cd Added ModelAdmin._response_post_save() to avoid code duplication. 2018-08-17 10:51:57 -04:00
Jon Dufresne cd790ed1a6 Refs #8936 -- Added ModelAdmin.has_view_or_change_permission(). 2018-08-16 09:49:06 -04:00