Commit Graph

10574 Commits

Author SHA1 Message Date
Tom Forbes 480492fe70 Fixed #30523 -- Fixed updating file modification times on seen files in auto-reloader when using StatReloader.
Previously we updated the file mtimes if the file has not been seen
before - i.e on the first iteration of the loop.

If the mtime has been changed we triggered the notify_file_changed()
method which in all cases except the translations will result in the
process being terminated. To be strictly correct we need to update the
mtime for either branch of the conditional.

Regression in 6754bffa2b.
2019-05-29 09:41:24 +02:00
Tom Forbes 0344565179 Fixed #30516 -- Fixed crash of autoreloader when re-raising exceptions with custom signature.
Regression in c8720e7696.
2019-05-29 08:08:50 +02:00
Caio Ariede a3f91891d2 Fixed #30315 -- Fixed crash of ArrayAgg and StringAgg with ordering when used in Subquery. 2019-05-28 10:05:50 +02:00
Tom Forbes b2790f74d4 Fixed #30479 -- Fixed detecting changes in manage.py by autoreloader when using StatReloader.
Regression in c8720e7696.
2019-05-28 08:31:33 +02:00
Ivor Bosloper 5ec44973dc Fixed typo in RasterField test name. 2019-05-27 13:40:03 +02:00
Mattia Procopio aff61790a3 Refs #24944 -- Added test for overriding domain in email context in PasswordResetView. 2019-05-27 11:50:30 +02:00
Johan Lübcke 0670b1b403 Fixed #30485 -- Adjusted django.utils.http.urlencode for doseq=False case. 2019-05-24 17:15:34 +02:00
Mariusz Felisiak 85195dd237
Refs #9982 -- Added test for saving OneToOneField field after saving related object.
Fixed in 519016e5f2.
2019-05-24 10:54:05 +02:00
Jon Dufresne 45edd746cc Used re.Pattern.findall() instead of re.findall() in inspectdb.tests. 2019-05-24 09:04:27 +02:00
Rob 58df8aa40f Fixed #28780 -- Allowed specyfing a token parameter displayed in password reset URLs.
Co-authored-by: Tim Givois <tim.givois.mendez@gmail.com>
2019-05-24 08:40:25 +02:00
Caio Ariede 753b67c58d Fixed #30497 -- Ignored document type in assertXMLEqual()/assertXMLNotEqual(). 2019-05-24 07:29:42 +02:00
Mariusz Felisiak f8b8b00f01
Fixed #30501 -- Preventing QuerySet.reverse() from mutating expressions in QuerySet.order_by and Meta.ordering. 2019-05-23 20:33:37 +02:00
Ran Benita a2c31e12da Fixed #30498 -- Fixed proxy class caching in lazy().
lazy() should prepare the proxy class only once (the first time it's
used) not on every call.

Regression in b4e76f30d1.
2019-05-22 20:41:52 +02:00
Hasan Ramezani 1378d665a1 Fixed #28816 -- Prevented silencing data loss when decreasing CharField.max_length on PostgreSQL. 2019-05-21 14:15:43 +02:00
Rob 519016e5f2 Fixed #28147 -- Fixed loss of assigned parent when saving child after parent.
Thanks Erwin Junge for the initial patch.
2019-05-21 10:11:22 +02:00
Rob 266e7e0ecc Refs #28147 -- Added test for saving nullable ForeignKey with to_field attribute after saving parent. 2019-05-21 10:08:09 +02:00
Hasan Ramezani 9d6f981a66 Fixed #28763 -- Allowed overriding the session cookie age with SessionStore.get_session_cookie_age(). 2019-05-21 08:50:09 +02:00
Simon Charette 514104cf23 Refs #29396, #30494 -- Reduced code duplication in year lookups. 2019-05-21 07:25:09 +02:00
Simon Charette 2b582a7b84 Fixed #29396 -- Added indirect values support to __year lookups.
Thanks Windson Yang for the initial patch.
2019-05-21 07:12:33 +02:00
Simon Charette 4d1420947e Fixed #30494 -- Disabled __year lookup optimization for indirect values.
The previous heuristics were naively enabling the BETWEEN optimization on
successful cast of the first rhs SQL params to an integer while it was
not appropriate for a lot of database resolved expressions.

Thanks Alexey Chernov for the report.
2019-05-21 07:11:26 +02:00
Thomasina Lee c38e7a79f4 Fixed #30488 -- Removed redundant Coalesce call in SQL generated by SearchVector.
Regression in 405c836336.
2019-05-20 08:34:06 +02:00
ruchit2801 04042b2b44 Fixed #30463 -- Fixed crash of deprecation message when Meta.ordering contains expressions.
Regression in 1b1f64ee5a.
2019-05-18 19:29:00 +02:00
ShingenPizza de4832c49b Fixed #30196 -- Made FileResponse set Content-Disposition inline if filename is available. 2019-05-17 12:07:27 +02:00
Batuhan Taşkaya 5c19274643 Fixed #30453 -- Fixed crash of simple_tag() and inclusion_tag() when function is wrapped.
getfullargspec() doesn't work with wrapped functions.
2019-05-17 09:53:24 +02:00
Johannes Hoppe 8d010f3986 Fixed #30220 -- Added support for headless mode in selenium tests. 2019-05-17 08:14:54 +02:00
Claude Paroz e286987a27 Fixed #30459 -- Delegated hide/show JS toggle to parent div.
Co-authored-by: Carlton Gibson <carlton.gibson@noumenal.es>
2019-05-17 07:46:45 +02:00
Iain Watts 59ffafa1d2 Fixed #30482 -- Prevented unnecessary evaluation of lookup.queryset in prefetch_related_objects(). 2019-05-16 21:39:55 +02:00
Jon Dufresne 8076ae68c1 Fixed #30483 -- Switched test requirement to psycopg2 package. 2019-05-16 15:42:32 +02:00
Ally Weir bd228cb599 Fixed mis-capitalisation in comment. 2019-05-15 12:14:59 +02:00
Florian Apolloner d329484534 Ensured that our django checkout is in the pythonpath during tests.
This fixes an issue with postgres_tests.test_integration.PostgresIntegrationTests
which would not find Django in a CI run.
2019-05-14 19:43:56 +02:00
Rob c231a75112 Fixed #30436 -- Added check that on_delete is callable in ForeignKey and OneToOneField. 2019-05-13 07:25:42 +02:00
Amir Hadi 330638b89f Fixed #6785 -- Made QuerySet.get() fetch a limited number of rows.
Co-authored-by: Tim Graham <timograham@gmail.com>
Co-authored-by: Patryk Zawadzki <patrys@room-303.com>
Co-Authored-By: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2019-05-12 07:05:24 +02:00
Jon Dufresne 7c3732a1b4 Fixed #30470 -- Added assertHTMLEqual() support for all self closing tags.
Support for the following tags was added: area, embed, param, track, and
wbr.

The full list of self closing tags is documented at:

https://html.spec.whatwg.org/#void-elements
2019-05-10 12:04:07 +02:00
Jon Dufresne b7a33ee4f0 Fixed #30468 -- Fixed assertHTMLEqual() to handle all ASCII whitespace in a class attribute. 2019-05-09 17:18:18 +02:00
Jon Dufresne de6d3afb97 Refs #27804 -- Used subTest() in HTMLEqualTests.test_self_closing_tags. 2019-05-09 17:17:42 +02:00
luzpaz e2feea5fc4 Fixed comment typo. 2019-05-09 17:04:50 +02:00
Troon a3a4f5c144 Fixed #30310 -- Added support for looking up HttpHeaders.headers using underscores. 2019-05-09 16:26:52 +02:00
Jon Dufresne 48235ba807 Refs #30399 -- Made assertHTMLEqual normalize character and entity references. 2019-05-09 15:55:32 +02:00
Hasan Ramezani f038214d91 Fixed #29056 -- Fixed HTML5 validation of required SelectDateWidget.
placeholder is required for "select" with "required" attribute.
2019-05-08 12:46:30 +02:00
Mariusz Felisiak ef9f2eb69c
Refs #30462 -- Added test for conditional aggregation on annotated subquery. 2019-05-08 11:29:17 +02:00
Jon Dufresne b915b9f10f Refs #27753 -- Deprecated django.utils.text.unescape_entities().
The function was undocumented and only required for compatibility with
Python 2.

Code should use Python's html.unescape() that was added in Python 3.4.
2019-05-08 08:00:59 +02:00
Rob 6b736dd074 Fixed #30349 -- Fixed QuerySet.exclude() on FilteredRelation.
Using annotated FilteredRelations raised a FieldError when coupled with
exclude(). This is due to not passing filtered relation fields to the
subquery created in split_exclude(). We fixed this issue by passing the
filtered relation data to the newly created subquery.

Secondly, in the case where an INNER JOIN is used in the excluded
subquery, the ORM would trim the filtered relation INNER JOIN in attempt
to simplify the query. This will also remove the ON clause filters
generated by the FilteredRelation. We added logic to not trim the INNER
JOIN if it is from FilteredRelation.
2019-05-07 14:47:50 +02:00
Chris Adkins 705ef6cfeb Fixed #30447 -- Added 'is_in_european_union' in GeoIP2.city() dict. 2019-05-07 13:31:44 +02:00
Tobias Kunze 0e2ed4fdd1 Refs #26678 -- Added tests for using the field the relation points to with RelatedManager.add()/remove()/set(). 2019-05-07 09:02:06 +02:00
Tobias Kunze 3166880301 Fixed #29352 -- Allowed specifying a Feed language. 2019-05-06 15:10:54 +02:00
Stephen Brown 86a3ad351e Fixed #30339 -- Made Model.delete(keep_parents=True) preserves nested parent reverse relationships.
Thanks Simon Charette for the review.
2019-05-06 13:04:31 +02:00
Mariusz Felisiak 8c5649bfb7
Fixed NonQueryWindowTests.test_unsupported_backend() on MySQL. 2019-05-03 13:49:02 +02:00
Tobias Kunze e683613649 Fixed #20122 -- Made pluralize template filter return '' on invalid input. 2019-05-03 11:35:20 +02:00
Tobias Kunze a9b8898242 Refs #11929 -- Fixed ordering of test YAML dumps.
Thanks Nick Pope for the review.
2019-05-03 10:48:18 +02:00
Mariusz Felisiak 9006189c0e
Removed unused YamlSerializerTestCase.fwd_ref_str.
Unused since its introduction in febd5aeec6.
2019-05-03 10:00:06 +02:00
can 567b9928a3 Fixed #29692 -- Fixed removing ordering parts for multiline RawSQL expressions. 2019-05-03 07:37:37 +02:00
Mykola Kokalko ef082ebb84 Fixed #29529 -- Allowed models.fields.FilePathField to accept a callable path. 2019-05-02 11:11:56 +02:00
Mykola Kokalko 11971cd87c Added tests for setting models.fields.FilePathField.path. 2019-05-02 11:11:50 +02:00
can bceadd2788 Fixed #30396 -- Added system checks for uniqueness of indexes and constraints names.
Co-Authored-By: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2019-05-02 09:13:20 +02:00
zeyneloz 6485a5f450 Fixed #30409 -- Allowed using foreign key's attnames in unique/index_together and Index's fields. 2019-05-01 11:51:27 +02:00
François Freitag 568eed9e79 Fixed #30245 -- Added -k option to DiscoverRunner. 2019-04-30 16:20:51 +02:00
can 719b746620 Fixed #30412 -- Fixed crash when adding check constraints with OR'ed condition on Oracle and SQLite. 2019-04-30 12:32:27 +02:00
Jon Dufresne 6866c91b63 Fixed #30418 -- Added --skip-checks management command option. 2019-04-30 10:48:30 +02:00
Simon Charette a8b3f96f6a Fixed #30408 -- Fixed crash when adding check constraints with LIKE operator on Oracle and PostgreSQL.
The LIKE operator wildcard generated for contains, startswith, endswith and
their case-insensitive variant lookups was conflicting with parameter
interpolation on CREATE constraint statement execution.

Ideally we'd delegate parameters interpolation in DDL statements on backends
that support it but that would require backward incompatible changes to the
Index and Constraint SQL generating methods.

Thanks David Sanders for the report.
2019-04-30 07:38:22 +02:00
kingbuzzman 673fe2e3ec Fixed #30148 -- Logged COPY ... TO statements in connection.queries on PostgreSQL. 2019-04-29 14:20:17 +02:00
Tom Forbes 6754bffa2b Fixed #30323 -- Fixed detecting changes by autoreloader when using StatReloader. 2019-04-29 11:41:00 +02:00
Mariusz Felisiak ed880d92b5
Added tests for queries log in CursorDebugWrapper.executemany(). 2019-04-29 10:38:17 +02:00
Jon Dufresne 0dd2308cf6 Fixed Python PendingDeprecationWarning in select_for_update.tests. 2019-04-29 08:47:33 +02:00
Jon Dufresne 5627057f63 Refs #26022 -- Used context manager version of assertRaisesMessage in tests.
Follow up to 253adc2b8a.
2019-04-29 08:05:07 +02:00
Carlton Gibson 98296f86b3
Fixed #30351 -- Handled pre-existing permissions in proxy model permissions data migration.
Regression in 181fb60159.
2019-04-27 20:18:22 +02:00
Daniel Hahler 08a4ee0651 Fixed typos in test names. 2019-04-27 07:47:42 +02:00
Jacob Green ed3c59097a
Fixed #30361 -- Increased the default timeout of watchman client to 5 seconds and made it customizable.
Made the default timeout of watchman client customizable via
DJANGO_WATCHMAN_TIMEOUT environment variable.
2019-04-26 12:55:49 +02:00
Aarni Koskela efeceba589
Fixed #30312 -- Relaxed admin check from django.contrib.sessions to SessionMiddleware subclasses. 2019-04-26 11:31:06 +02:00
Jon Dufresne 8d76443aba Fixed #30399 -- Changed django.utils.html.escape()/urlize() to use html.escape()/unescape(). 2019-04-25 15:09:07 +02:00
Alasdair Nicol a5accc0368 Fixed #30318 -- Added check for importability of arguments of custom error handler views.
Thanks to Jon on Stack Overflow for reporting the issue.
2019-04-25 11:08:22 +02:00
oliver fc9566d42d Fixed #30393 -- Added validation of startapp's directory option. 2019-04-25 08:52:48 +02:00
Ville Skyttä 0f22671ecb Fixed #30388 -- Made inspectdb generate OneToOneFields rather than ForeignKey(unique/primary_key=True). 2019-04-25 08:09:32 +02:00
Jon Dufresne 0a01ca80d7 Refs #30241 -- Fixed BytesWarning emitted in test_translation tests. 2019-04-24 15:31:03 +02:00
Martijn Jacobs 9141da1a80 Fixed #30366 -- Skipped StatReloaderTests on HFS+ filesystems.
When on MacOS High Sierra or below (<=10.13) it could be that a HFS+
filesystem is used. HFS+ has a time resolution of only one second
which can be too low for some of the tests.
2019-04-24 15:28:20 +02:00
Jon Dufresne 8b3f1c35dd Removed unnecessary assignments in various code. 2019-04-24 13:09:29 +02:00
Matthias Kestenholz 80482e9249 Fixes #30342 -- Removed a system check for LANGUAGES_BIDI setting.
This partly reverts commit 4400d8296d.
2019-04-24 10:54:03 +02:00
Carlton Gibson 607ff4efa3 Refs #30254 -- Added tests for Model.__hash__() inheritance. 2019-04-24 09:59:09 +02:00
can c00b4dbda2 Fixed #29810 -- Fixed crash of select_related() on FilteredRelation with empty result. 2019-04-23 13:48:33 +02:00
Simon Charette 405c836336 Fixed #30385 -- Restored SearchVector(config) immutability.
Regression in 1a28dc3887.

The usage of CONCAT to allow SearchVector to deal with non-text fields
made the generated expression non-IMMUTABLE which prevents a functional
index to be created for it.

Using a combination of COALESCE and ::text makes sure the expression
preserves its immutability.

Refs #29582. Thanks Andrew Brown for the report, Nick Pope for the
review.
2019-04-23 08:11:33 +02:00
Mariusz Felisiak 12b7956fc3
Refs #25507 -- Added tests for using QuerySet.count() with a RawSQL annotation.
Fixed in 3f32154f40
2019-04-19 11:40:04 +02:00
Dustin Neighly 49fb3f5f3e Fixed #30341 -- Added support for the furlong unit in Distance. 2019-04-19 08:54:23 +02:00
Scott Fitsimones a14c0fda15 Fixed #30328 -- Fixed crash of IntegerField.validators when limit_value in a custom validator is callable. 2019-04-19 07:58:27 +02:00
Ramiro Morales aed89adad5 Fixed #30367 -- Changed "pip install" to "python -m pip install" in docs, comments and hints. 2019-04-18 14:41:15 +02:00
Tomer Chachamu ceab25bc6d Refs #28762 -- Added test for aggregating over a function with ArrayField parameters.
Fixed in d87bd29c4f.
2019-04-18 12:54:19 +02:00
Mariusz Felisiak 654614b38e
Refs #28767 -- Added test for annotating Value() with empty list as an ArrayField.
Fixed in 3af695eda2.
2019-04-18 12:06:39 +02:00
Ville Skyttä 03db5fddfd Fixed typos in docs, comments, and exception messages. 2019-04-18 09:33:53 +02:00
Oleh Mykytiuk 177fa08339 Fixed #30370 -- Added dbshell support for client TLS certificates on PostgreSQL. 2019-04-18 08:10:31 +02:00
can d87bd29c4f Fixed #30335, #29139 -- Fixed crash when ordering or aggregating over a nested JSONField key transform. 2019-04-18 07:16:50 +02:00
Simon Charette f110de5c04
Fixed #30191 -- Selected only referenced fields during cascade deletion.
The non-referenced fields can only be deferred if no deletion signals
receivers are connected for their respective model as connected as these
receivers might expect all fields of the deleted model to be present.

Thanks Ed Morley for the report.
2019-04-17 13:41:23 +02:00
Hasan Ramezani 917fd9d03f
Fixed #27755 -- Added ModelAdmin.get_inlines() hook. 2019-04-17 07:16:04 +02:00
Vinny Do a4055adf70 Fixed #30368 -- Fixed prefetch_related() for GenericForeignKey when PK is also a FK. 2019-04-16 09:49:16 +02:00
Simon Charette 0cb4062482 Refs #23758 -- Used RecursionError instead of RuntimeError to raise nested subquery errors.
RecursionError was introduced in Python 3.5 and subclasses RuntimeError.
2019-04-15 15:20:41 +02:00
Simon Charette c0969ee227 Refs #27149 -- Based recursive nested subquery detection on sys.getrecursionlimit().
This makes sure the test_avoid_infinite_loop_on_too_many_subqueries test
doesn't fail on systems with a non-default recursion limit.
2019-04-15 15:20:41 +02:00
Tobias Kunze 9ac8520fcd Refs #30325 -- Added tests for using count()/exists() with custom managers and reverse M2M relations. 2019-04-15 12:02:31 +02:00
Mariusz Felisiak 5f7991c42c Fixed #30325 -- Reverted "Fixed #29725 -- Removed unnecessary join in QuerySet.count() and exists() on a many-to-many relation."
This reverts commit 1299421cad due to
a regression with custom managers.
2019-04-15 12:02:26 +02:00
Markus Holtermann da0b2554ec Renamed camelCaseTestMethods to snake_case_test_methods 2019-04-14 16:14:14 +02:00
Florian Apolloner 2e38f2015a
Fixed #30350 -- Prevented recreation of migration for operations with a range object.
Thanks to Mariusz Felisiak for helping with the patch.
2019-04-14 12:04:48 +02:00
Mariusz Felisiak 1afbc96a75
Fixed #30343 -- Fixed prefetch_related() for GenericForeignKey when PK of related field is UUIDField. 2019-04-14 10:02:59 +02:00
Krisjanis Vaiders 79d3b905df Fixed #30358 -- Removed redundant assertion in FormsUtilsTestCase.test_error_dict_copy(). 2019-04-13 18:42:11 +02:00
Thomas Allison 3e8b733390
Fixed #25941 -- Improved error message for runtests.py when django is not on path. 2019-04-13 16:06:27 +02:00
Sjoerd Job Postmus e6d57c4d65 Fixed #30363 -- Do not use exponential notation for small decimal numbers.
In 9cc6a60040b0f64f8ea066dd215176d4bd16621d a security patch was
introduced to prevent allocating large segments of memory when a
very large or very small decimal number was to be formatted.

As a side-effect, there was a change in formatting of small decimal
numbers even when the `decimal_pos` argument was provided, which meant
that reasonable small decimal numbers (above 1e-199) would be formatted
as `0.00`, while smaller decimal numbers (under 1e-200) would be
formatted as `1e-200`.
2019-04-13 14:30:33 +02:00
Dolan Antenucci f944cb3d3b
Fixed #30266 -- Kept a sequence owner when altering an AutoField/BigAutoField on PostgreSQL. 2019-04-08 22:24:18 +02:00
Florian Apolloner afc708cf6d
Fixed #30330 -- Fixed setting of primary key to None during fast-delete.
Regression in bc7dd8490b.
2019-04-08 21:14:00 +02:00
Ran Benita 19fc6376ce
Fixed #30304 -- Added support for the HttpOnly, SameSite, and Secure flags on language cookies. 2019-04-08 11:26:06 +02:00
can cef3f2d3c6
Fixed #28373 -- Used connection timezone instead of UTC when making dates timezone-aware on MySQL, SQLite, and Oracle.
Thanks vtalpaert for the initial patch.

Co-Authored-By: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2019-04-08 08:59:17 +02:00
Simone Pellizzari d0315584b5
Fixed #30332 -- Fixed crash of ordering by expressions with params in ArrayAgg and StringAgg. 2019-04-06 14:23:29 +02:00
Simone Pellizzari 47a1f2a06f
Refs #26067 -- Added more tests for ordering in StringAgg. 2019-04-06 13:41:46 +02:00
Mariusz Felisiak 79065b55a7
Refs #20010 -- Unified DatabaseOperations.last_executed_query() on Oracle with other db backends.
Thanks Simon Charette for the review.
2019-04-05 21:35:51 +02:00
Nick Pope 6b4e57d79f Refs #30324 -- Forced utf-8 encoding when loading templates for the technical 404 debug and congrats page. 2019-04-05 16:35:01 +02:00
Nick Pope efb257a017 Fixed #30324 -- Forced utf-8 encoding when loading the template for the technical 500 debug page.
Regression in 50b8493.
Related to ea542a9.
2019-04-05 16:35:01 +02:00
msg 755673e1bc
Fixed #30307 -- Fixed incorrect quoting of database user password when using dbshell on Oracle.
Regression in acfc650f2a.
2019-04-04 08:33:28 +02:00
belegnar 1ffddfc233
Fixed #30302 -- Fixed forms.model_to_dict() result if empty list of fields is passed. 2019-04-03 09:05:15 +02:00
belegnar 714cf468e1
Refs #30302 -- Added more tests for forms.model_to_dict(). 2019-04-03 08:59:08 +02:00
Mariusz Felisiak 7cbcf2e2cb
Fixed #30259 -- Fixed crash of admin views when properties don't have admin_order_field attribute. 2019-04-01 15:11:54 +02:00
JangHyukJin 0027ca76c7 Used QuerySet.bulk_create() in lookup.tests. 2019-04-01 10:46:28 +02:00
Tim Graham 8335d59200 Fixed #30289 -- Prevented admin inlines for a ManyToManyField's implicit through model from being editable if the user only has the view permission. 2019-03-30 16:49:16 -04:00
oliver 03bee42a7e Made startapp/project's overlaying error message use 'app' or 'project'. 2019-03-30 10:14:07 -04:00
can 96446c7152
Refs #29697 -- Added test for excluding m2m intermediary table. 2019-03-30 14:46:59 +01:00
pmisteli 9410db9683 Fixed #30236 -- Made UsernameField render with autocapitalize="none" HTML attribute.
This prevents automatic capitalization, which is the default behavior in
some browsers.
2019-03-29 15:24:44 +01:00
sage 9aa56cb0d5 Fixed #30294 -- Allowed HttpResponse to accept memoryview content. 2019-03-29 09:43:49 -04:00
Nick Pope 4400d8296d
Fixed #30241 -- Added more system checks of translation settings. 2019-03-28 20:10:50 +01:00
Nick Pope d4783048ef Refs #29713 -- Improved error message when LANGUAGE_CODE is invalid. 2019-03-28 20:04:24 +01:00
sage 5a92bb0725 Fixed #30295 -- Fixed max_lengths.tests.MaxLengthORMTests when run in isolation. 2019-03-28 10:18:30 +01:00
Mariusz Felisiak 9ab1d55596
Refs #18726 -- Added test for excluding circular related fields with F() expression.
Fixed in f19a4945e1.
2019-03-28 07:10:54 +01:00
Mariusz Felisiak 2a431db0f5
Fixed #28621 -- Fixed crash of annotations with OuterRef. 2019-03-27 08:24:05 +01:00
Nathan Gaberel 624573726a Fixed #29791 -- Made Engine.render_to_string() honor autoescape. 2019-03-25 17:59:07 -04:00
Hasan Ramezani d4df5e1b0b Fixed #27360 -- Added app or ModelAdmin details for AreadyRegistered exceptions. 2019-03-25 17:34:53 -04:00
Hasan Ramezani 981dd6dd71
Fixed #28431 -- Added a system check for BinaryField to prevent strings defaults.
Thanks Claude Paroz for the initial patch.
2019-03-25 20:04:35 +01:00
Jani Tiainen 044cc54420
Fixed #30259 -- Added support for admin_order_field attribute on properties in ModelAdmin.list_display. 2019-03-24 20:43:56 +01:00
Matthias Kestenholz ea60b7bc74 Removed redundant model field choices tests. 2019-03-23 12:04:39 -04:00
Simon Charette 1ca825e4dc Fixed #30246 -- Reused annotation aliases references in aggregation filters.
Thanks Jan Baryła for the detailed report and the reduced test case.
2019-03-23 10:11:45 -04:00
Simon Charette 3f32154f40 Refs #30188 -- Avoided GROUP BY when aggregating over non-aggregates. 2019-03-23 10:11:41 -04:00
Simon Charette d1e9c25162 Refs #30188 -- Prevented double annotation of subquery when aggregated over.
Thanks Can Sarıgöl for the suggested trimming approach.
2019-03-23 09:50:42 -04:00
Simon Charette bdc07f176e Fixed #30188 -- Fixed a crash when aggregating over a subquery annotation. 2019-03-23 09:48:31 -04:00
Simon Charette f19a4945e1 Fixed #21703 -- Fixed a crash when excluding a related field with a F(). 2019-03-23 09:48:28 -04:00
Ryan J Schave cbf7e71558 Fixed #30257 -- Made UsernameValidators prohibit trailing newlines. 2019-03-22 13:16:25 -04:00
Matthias Kestenholz ea071870f9 Fixed #30280 -- Restored Model.get_FIELD_display()'s coercion of lazy strings.
Reverted cc79c7ee63.
2019-03-22 12:30:10 -04:00
Nick Pope d26b242443
Fixed #30271 -- Added the Sign database function. 2019-03-22 12:52:39 +01:00
Simon Charette 3543129822 Refs #27149 -- Moved subquery expression resolving to Query.
This makes Subquery a thin wrapper over Query and makes sure it respects
the Expression source expression API by accepting the same number of
expressions as it returns. Refs #30188.

It also makes OuterRef usable in Query without Subquery wrapping. This
should allow Query's internals to more easily perform subquery push downs
during split_exclude(). Refs #21703.
2019-03-21 20:36:31 -04:00
Simon Charette e595a713cc Refs #29542, #30158 -- Enabled a HAVING subquery filter test on Oracle.
Now that subquery annotations aren't included in the GROUP BY unless
explicitly grouped against, the test works on Oracle.
2019-03-21 18:48:41 -04:00
Simon Charette fb3f034f1c Fixed #30158 -- Avoided unnecessary subquery group by on aggregation.
Subquery annotations can be omitted from the GROUP BY clause on aggregation
as long as they are not explicitly grouped against.

Thanks Jonny Fuller for the report.
2019-03-21 18:48:41 -04:00
Simon Charette 9dc367dc10 Refs #30158 -- Added alias argument to Expression.get_group_by_cols(). 2019-03-21 18:47:46 -04:00
oliver 2aaabe2004 Used QuerySet.bulk_create() in a couple of postgres tests.
Follow up to 0ce2ad9ca4.
2019-03-21 18:05:29 -04:00
birthdaysgift dc740dde50 Fixed #29471 -- Added 'Vary: Cookie' to invalid/empty session cookie responses. 2019-03-21 18:02:49 -04:00
Carlton Gibson d64808cacd Used a picklable argument for a subTest. 2019-03-21 13:56:05 -04:00
Hasan Ramezani 5fc5d93512 Fixed #29956 -- Allowed overriding an order field widget in formsets. 2019-03-21 11:51:01 +01:00
Nick Pope 413d50b5ff Corrected settings names in SecurityMiddleware tests. 2019-03-20 20:15:34 -04:00
Nick Pope 0b70985f42 Fixed #30240 -- Added SHA1, SHA224, SHA256, SHA384, and SHA512 database functions.
Thanks Mariusz Felisiak and Tim Graham for reviews.
2019-03-20 19:30:43 +01:00
Francisco Couzo 0193bf874f Fixed #28738 -- Added the GeometryDistance function. 2019-03-20 12:54:42 -04:00
oliver 638d5ea375 Moved choices inside of a test model per coding style.
Follow up to 3a4558b84f.
2019-03-20 11:05:26 -04:00
Tim Graham 55490ac746 Fixed serializers test crash if PyYAML isn't installed.
Follow up to a57c783dd4.
2019-03-20 09:23:50 -04:00
Mariusz Felisiak c9888bc8ec
Fixed #30264 -- Fixed crash of test_parsing_year_less_than_70() on 32-bit systems.
Thanks Andreas Beckmann and Chris Lamb for the report.
2019-03-20 13:44:30 +01:00
Simon Charette 386d89ab55
Fixed #30258 -- Adjusted postgres schema value quoting of ranges.
Thanks Tilman Koschnick for the report and patch.
2019-03-18 09:05:39 +01:00
Paveł Tyślacki 5c17c273ae Refs #30172 -- Prevented removing a model Meta's index/unique_together from removing Meta constraints/indexes. 2019-03-17 20:50:57 -04:00
Paveł Tyślacki 4bb859e246 Refs #30172 -- Prevented removing a field's check or unique constraint from removing Meta constraints. 2019-03-17 20:50:22 -04:00
Simon Charette 218a485bf1 Refs #12663 -- Fixed reference to nonexistent field in model_fields tests. 2019-03-17 20:49:32 -04:00
Jon Dufresne 95b7699ffc Cleaned up exception message checking in some tests. 2019-03-15 19:27:57 -04:00
Matt Westcott 58ad030d05 Fixed #30254 -- Allowed model metaclasses to access the attribute dict in __init__().
Regression in a68ea23101.
2019-03-14 21:05:23 -04:00
Herman S f976ab1b11 Fixed #30237 -- Made Authentication/SessionMiddleware and ModelBackend admin checks allow subclasses. 2019-03-14 20:09:57 -04:00
Mariusz Felisiak 258110d6cd Simplified test_transform()s in db_functions.math. 2019-03-14 19:42:01 -04:00
Mariusz Felisiak a57c783dd4 Fixed serializers tests for PyYAML 5.1+. 2019-03-14 13:16:48 -04:00
Paveł Tyślacki 782d85b6df Fixed #30183 -- Added introspection of inline SQLite constraints. 2019-03-13 10:24:28 -04:00
Mariusz Felisiak d77657737f
Simplified forms_tests.tests.test_formsets. 2019-03-12 15:46:39 +01:00
Nick Pope a35bf4af72 Fixed typo in tests/check_framework/test_translation.py comment. 2019-03-09 13:17:50 +01:00
tschilling 7c68cea7ee Fixed #30186 -- Made showmigrations --list display the applied datetimes at verbosity 2+. 2019-03-08 08:25:38 -05:00
Tim Schilling 371ddade1e Refs #30186 -- Changed MigrationRecorder.applied_migrations() to return a dict. 2019-03-07 19:36:55 -05:00
Parth Patil acc041984f Fixed #30189 -- Removed transaction from sqlmigrate output if database doesn't use one. 2019-03-07 18:28:22 -05:00
ahbk d527639804 Fixed #29754 -- Added is_dst parameter to Trunc database functions. 2019-03-07 10:02:18 -05:00
Andra Denis Ionescu 4c086d7da4 Fixed #29459 -- Initialized form data/files with empty MultiValueDicts. 2019-03-05 10:41:08 -05:00
orlnub123 163236ea0e Fixed #30234 -- Disallowed non-upper settings in settings.configure(). 2019-03-05 09:52:08 -05:00
avas9366 9681e968eb Fixed #30232 -- Corrected expected format in invalid DurationField error message. 2019-03-04 19:25:27 -05:00
Mariusz Felisiak b435f82939
Reverted "Fixed relative paths imports per isort 4.3.5."
This reverts commit 463fe11bc8 due to
restore of relative paths sorting from isort < 4.3.5 in isort 4.3.10.
2019-03-03 19:33:48 +01:00
Tim Graham 8ec7ded370 Refs #30227 -- Added helpful message for non-ASCII Content-Type in mulitpart request. 2019-03-02 09:19:05 -05:00
Tim Graham 2ed2acf872 Fixed #30227 -- Fixed crash on request without boundary in Content-Type. 2019-03-02 09:19:05 -05:00
Jon Dufresne 8a2ec55b18 Merged isinstance() calls.
Follow up to 0214f367bc.
2019-03-02 12:19:21 +01:00
Mariusz Felisiak f69c7bbdce
Refs #29408 -- Cosmetic edits for validation of related fields and lookups in model Meta.ordering.
Follow up to 440505cb2c.
2019-03-01 19:38:21 +01:00
Hasan Ramezani 440505cb2c Fixed #29408 -- Added validation of related fields and lookups in model Meta.ordering. 2019-03-01 17:09:33 +01:00
Etienne Chové 4dcbe6eb2d Fixed #30221 -- Made label suffix of admin's read-only fields translatable. 2019-02-28 11:12:30 -05:00
Matthias Kestenholz 231b513926 Fixed #30179 -- Fixed form Media merging when pairwise merging is insufficient.
Thanks gasman for the tests, and codingjoe and timgraham for the review.
2019-02-27 16:39:17 -05:00
shiningfm 99cfb28e99 Fixed #30215 -- Fixed autoreloader crash for modules without __spec__.
Regression in c8720e7696.
2019-02-27 10:35:30 -05:00
orlnub123 2c0fda7f20 Refs #30057 -- Added more diffsettings tests.
The test in 573f44d62f doesn't act as a
regression test.
2019-02-26 10:30:38 -05:00
Matthias Kestenholz e04209e181 Refs #30179 -- Moved topological sort functions to django.utils. 2019-02-25 15:44:49 -05:00
Mariusz Felisiak 463fe11bc8
Fixed relative paths imports per isort 4.3.5. 2019-02-25 11:03:30 +01:00
Seunghun Lee 99fc5dc13c Fixed #30141 -- Fixed parse_duration() for some negative durations. 2019-02-23 18:54:09 -05:00
Tim Graham 36300ef336 Fixed a failure when running tests on systems with SQLite < 3.8.3. 2019-02-21 12:52:10 -05:00
Simon Charette de7f6b51b2 Refs #19544 -- Added a fast path for through additions if supported.
The single query insertion path is taken if the backend supports inserts
that ignore conflicts and m2m_changed signals don't have to be sent.
2019-02-21 10:20:47 -05:00
Simon Charette 28712d8acf Refs #19544 -- Ignored auto-created through additions conflicts if supported.
This prevents IntegrityError caused by race conditions between missing ids
retrieval and bulk insertions.
2019-02-21 10:20:47 -05:00
Tim Graham 0ac4e51b2c Fixed typos in tests/template_tests/test_context.py. 2019-02-21 09:43:00 -05:00
Mariusz Felisiak 9ff18c08c3
Refs #28643 -- Added MD5 database function.
Thanks Tim Graham, Nick Pope and Simon Charette for reviews.
2019-02-21 10:52:51 +01:00
Jon Dufresne 7feddd878c Fixed #18707 -- Added support for the test client to return 500 responses. 2019-02-20 12:16:10 +01:00
Simon Charette 7071f8f272 Fixed #30193, Refs #28478 -- Avoided PostgreSQL connection health checks on initialization.
This addressed a regression introduced by a96b901932 as identified by Ran Benita.
2019-02-20 10:59:40 +01:00
Jakub Szafrański 0104b5a417 Fixed #30181 -- Made cache.get() with default work correctly on PyLibMCCache if None is cached. 2019-02-14 19:57:38 -05:00
Hasan Ramezani 741ce81a42 Fixed #29619 -- Added field names to some FieldErrors. 2019-02-14 18:58:08 -05:00
Claude Paroz a8e2a9bac6 Refs #15902 -- Deprecated storing user's language in the session. 2019-02-14 10:23:02 -05:00
Jon Dufresne 76990cbbda Fixed #30171 -- Fixed DatabaseError in servers tests.
Made DatabaseWrapper thread sharing logic reentrant. Used a reference
counting like scheme to allow nested uses.

The error appeared after 8c775391b7.
2019-02-14 10:04:55 -05:00
Bernhard M. Wiedemann 5a465df70d Made a requests test that will fail in 2028 fail 10 years later.
2038 is chosen for compatibility with 32-bit systems.
2019-02-14 09:44:41 -05:00
Carlton Gibson ed7dee55a9
Fixed admin_scripts test failures on macOS.
Regression in 487d904bf2.
2019-02-14 14:28:19 +01:00
Daniel Bowring cf826c9a91 Fixed #30173 -- Simplified db.backends.postgresql.client. 2019-02-13 17:12:02 -05:00
Tim Graham ddb2936852 Refs #25175 -- Renamed test file referencing the old postgresql_psycopg2 engine. 2019-02-13 17:11:33 -05:00
Dan Davis 2bd8df243a Fixed #30184 -- Removed ellipsis characters from shell output strings.
Partially reverted 50b8493581 (refs #29654)
to avoid a crash when the user shell doesn't support non-ASCII characters.
2019-02-13 13:59:44 -05:00
Claude Paroz 15715bf2a2 Fixed #22423 -- Added support for MySQL operators on real geometries.
Thanks Viswanathan Mahalingam for the report and initial patch, and
Nicke Pope and Tim Graham for the review.
2019-02-12 17:29:16 -05:00
Mariusz Felisiak 7d5d20212c
Simplified test_cursor_var() by using str instead of Database.STRING. 2019-02-12 20:10:02 +01:00
Semen Zhydenko 255d6a26a8 Fixed spelling mistakes in comments and tests. 2019-02-11 08:55:57 -05:00
Carlton Gibson 402c0caa85 Fixed CVE-2019-6975 -- Fixed memory exhaustion in utils.numberformat.format().
Thanks Sjoerd Job Postmus for the report and initial patch.
Thanks Michael Manfre, Tim Graham, and Florian Apolloner for review.
2019-02-11 11:08:45 +01:00
Sergey Fedoseev 1835563ab8 Removed unneeded list() calls in sorted() argument. 2019-02-09 19:08:22 -05:00
Jon Dufresne a98bcfb0dd Refs #15362 -- Removed obsolete workaround in file_uploads test view. 2019-02-09 18:44:28 -05:00
Vinay Karanam 5a36c81f58 Fixed #29391 -- Made PostgresSimpleLookup respect Field.get_db_prep_value(). 2019-02-09 18:05:50 -05:00
Jon Dufresne c492fdfd24 Removed default empty content argument from HttpResponse calls. 2019-02-09 16:27:32 -05:00
Matthias Kestenholz 959d0c078a Fixed #30153 -- Fixed incorrect form Media asset ordering after three way merge.
Delaying merging assets as long as possible avoids introducing
incorrect relative orderings that cause a broken final result.
2019-02-09 09:38:52 -05:00
Sergey Fedoseev 1933e56eca Removed uneeded generator expressions and list comprehensions. 2019-02-09 09:18:48 -05:00
Sergey Fedoseev b1a2ad6925 Removed uneeded iter() calls with generator expression as argument. 2019-02-09 09:18:22 -05:00
Simon Charette b8c48d06fa Refs #26608 -- Added a database feature for fixed frame range distance support. 2019-02-09 08:47:41 -05:00
Simon Charette 64d5bafbc6 Fixed #30027 -- Errored out on Window function usage if unsupported. 2019-02-09 08:47:41 -05:00
Simon Charette ebd2fe1861 Refs #30027 -- Enabled window function tests on SQLite 3.25+. 2019-02-09 08:47:40 -05:00
Tim Graham ea87a85fad
Dropped support for GEOS 3.4. 2019-02-09 08:40:55 -05:00
Himanshu Lakhara 22aab8662f Fixed #30004 -- Changed default FILE_UPLOAD_PERMISSION to 0o644. 2019-02-08 14:53:15 -05:00
Tim Graham e7fd69d051 Fixed #30166 -- Dropped support for GDAL 1.11. 2019-02-08 14:08:05 -05:00
Jon Dufresne 6eb4996672 Fixed #30165 -- Deprecated ugettext(), ugettext_lazy(), ugettext_noop(), ungettext(), and ungettext_lazy(). 2019-02-08 10:05:53 -05:00
Gregory N. Schmit 48c17807a9 Fixed #16027 -- Added app_label to ContentType.__str__(). 2019-02-07 19:56:47 -05:00
Jon Dufresne af1434329f Removed unnecessary type() calls for class methods. 2019-02-06 22:00:32 -05:00
Tim Graham 77d25dbd0f Refs #27753 -- Favored SafeString over SafeText. 2019-02-06 14:12:06 -05:00
Tim Graham d55e882927 Refs #27753 -- Deprecated django.utils.encoding.force_text() and smart_text(). 2019-02-06 14:12:06 -05:00
Aymeric Augustin 3bb6a4390c Refs #27753 -- Favored force/smart_str() over force/smart_text(). 2019-02-06 14:12:06 -05:00
Nick Pope 24b82cd201 Fixed #30159 -- Removed unneeded use of OrderedDict.
Dicts preserve order since Python 3.6.
2019-02-06 13:48:39 -05:00
Jon Dufresne 10b0fd1576 Refs #27804 -- Used subTest() in admin_scripts invalid name tests. 2019-02-06 12:59:55 -05:00
Jon Dufresne 487d904bf2 Simplified temporary directory handling in AdminScriptTestCase.
Use tempfile.TemporaryDirectory() in AdminScriptTestCase.setUp()
to create and destroy a temporary directory for each test. It removes
the need for individual tests to delete files.

For test classes that don't use the temporary directory, inherit from
SimpleTestCase.
2019-02-05 12:11:54 -05:00
Jon Dufresne 099c36d546 Replaced manual current directory management with subprocess's cwd argument. 2019-02-05 11:01:36 -05:00
Jon Dufresne 4d425abc84 Removed redundant os.chdir() in RunInTmpDirMixin child classes.
setUp() already calls os.chdir(self.test_dir).
2019-02-05 11:00:04 -05:00
Jon Dufresne 1e280f031e Removed unused branch from SymlinkExtractorTests.test_symlink().
Unused since bb7bb379e8.
SymlinkExtractorTests.test_dir, which contains
SymlinkExtractorTests.symlinked_dir, is deleted after every test.
2019-02-05 08:14:23 -05:00
Jon Dufresne 680cc417d3 Removed unused RunInTmpDirMixin.rmfile().
Unused since bb7bb379e8.
2019-02-05 13:44:32 +01:00
Tim Graham 83c2bc52c2
Refs #27753 -- Deprecated django.utils.http urllib aliases. 2019-02-04 18:53:11 -05:00
Tim Graham 39ebdf5a3c Fixed #30155 -- Dropped support for PostgreSQL 9.4 and PostGIS 2.1. 2019-02-04 18:07:02 -05:00
Vinay Karanam 3634560fa9 Fixed #29393 -- Prevented infinite loop in ExceptionReporter.get_traceback_frames(). 2019-02-02 16:39:36 -05:00
Kathryn Killebrew 75d627888b Fixed #30020 -- Fixed reading nulls with LayerMapping. 2019-01-31 19:50:16 -05:00
Jon Dufresne 290d8471bb Fixed #30147 -- Simplified directory creation with os.makedirs(..., exist_ok=True). 2019-01-31 12:53:36 -05:00
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
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
Tim Graham 9a0cc54524
Refs #30137 -- Fixed template test on Windows.
Broken in 7785e03ba8.
2019-01-29 10:05:10 -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
Paveł Tyślacki 62b8596616 Made test table cleanup in OperationTestBase more robust.
Some non-unique constraint names were added in
b69f8eb04c which resulted in failures
depending on the order in which tests were run.
2019-01-28 11:51:23 -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 ce7293bc91 Refs #23919 -- Replaced codecs.open() with open().
On Python 3, open() handles encodings.
2019-01-27 17:39:57 -05:00
Jon Dufresne 00b2e4b67c Added missing assert in FileBasedCacheTests.test_creates_cache_dir_if_nonexistent(). 2019-01-26 16:38:46 -05:00
Jon Dufresne ac956dae1d Fixed grammar in FakePayload exception message. 2019-01-25 08:43:21 -08:00
Hasan Ramezani 7e978fdc42 Completed test coverage for utils.text._replace_entity(). 2019-01-23 19:33:21 -05: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
Tim Graham 2de7eb6f4d Refs #30111 -- Fixed test cleanup in postgres_tests/test_integration.py.
Fixed "ERROR: Step ‘Publish JUnit test result report’ failed: No test report
files were found. Configuration error?" on Jenkins because report files were
put in tests/postgres_tests.
2019-01-23 11:34:55 -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
Vytis Banaitis d02b2aa11e Made assertOptimizesTo() more strict in migrations tests.
A recursive deconstruction is needed because comparing deconstructed
operations doesn't check field attributes. Fixed typo in failing test.
2019-01-21 17:29:46 -05:00
Tim Graham 2110b17924 Tested Model.set_FOO_order() with an unrelated object. 2019-01-21 17:02:15 -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
Hasan Ramezani 838e432e3e Completed test coverage for utils.text.Truncator.chars(). 2019-01-19 18:45:41 -05:00
Mariusz Felisiak f05c02c4b8
Fixed #30117 -- Fixed SchemaEditor.quote_value() test for mysqlclient 1.4.0+. 2019-01-19 13:31:15 +01: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 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
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
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
Simon Charette aa5d0a5a90 Removed unnecessary transaction wrapping in expressions test. 2019-01-16 13:23:55 -05: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
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
Mariusz Felisiak 1508e71c5b Relaxed assertions to fix GIS test failures on Oracle 18c. 2019-01-14 18:32:42 -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
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
Sergey Fedoseev b86bb47818 Fixed #30093 -- Fixed ordering of combined queryset ordered by F expressions. 2019-01-14 10:28:11 -05:00
Simon Charette b2c598e30d Removed unnecessary skipUnlessDBFeature.
None of the tests interact with the database.
2019-01-13 21:48:40 -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
Simon Charette a02a6fd580 Refs #28478 -- Prevented connection creation in model_indexes tests.
Entering a SchemaEditor instance creates a connection but it isn't needed
for this test.
2019-01-13 13:47:08 -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 f4c0c0b0aa Added tests for Check/UniqueConstraint.__eq__(). 2019-01-12 09:24:22 -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
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
Benjy Weinberger c2c85663e2 Fixed #30087 -- Tested error handling for empty 'default' database. 2019-01-09 10:58:25 -05:00
Nick Pope a35d2a4510 Refs #23748 -- Added AutoField introspection for SQLite. 2019-01-09 09:59:15 -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 e49ab72637
Refs #29851 -- Fixed test_subquery_row_range_rank() crash on MariaDB 10.2+.
Thanks Tom Forbes for the report.
2019-01-03 20:18:45 +01:00
Tim Graham b5fe97a34e Added __init__.py for db_utils tests. 2019-01-02 18:19:45 -05:00
Tim Graham 0004daa536
Used 4 space hanging indent for dictionaries.
Thanks Mariusz Felisiak for auditing.
2019-01-02 18:18:19 -05:00
Tim Graham e4a714b259 Pinned Pillow != 5.4.0 in test requirements.
There's a bug that causes a test failure in forms_tests:
https://github.com/python-pillow/Pillow/pull/3501/files#r244651761.
2019-01-02 17:15:39 -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
Tim Graham 043bd70942 Updated test URL patterns to use path() and re_path(). 2018-12-31 10:47:32 -05:00
Tim Graham 1136d57f01
Updated a test to reflect the fact that "import *" isn't used in URLconfs anymore (refs #14675). 2018-12-31 10:24:28 -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
CHI Cheng b7dbd5ff68 Fixed broken links to PyYAML page. 2018-12-27 10:48:37 +01: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 0b54ab0675 Refs #30033 -- Fixed schema's test_m2m_rename_field_in_target_model test failure on SQLite < 3.20.
Mixing local test models with non-local models resulted in a referential
integrity error during tear down since the models are removed in separate
schema editor instances which each check constraints.

Failure appeared after 7289874adc.
2018-12-26 11:26:51 -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 64f9776bc4 Refs #29004 -- Prevented inspectdb tests from flushing all tables data.
This is a costly operation on most database backends.
2018-12-24 15:32:39 -05:00
Simon Charette f6d8b0c47e Refs #26840 -- Corrected SQLite connection mocking in a setup_databases() test.
The test was expecting connections used by DiscoverRunner.setup_databases()
to be the ones defined in django.test.runner but this doesn't hold true
since this method was made a proxy of django.test.utils.setup_databases.

This broke the TransactionTestCase.serialized_rollback feature in the test
suite because calls to create_db_test() cleared the test data persisted on
connections objects.

Added an assertions to prevent this from happening again.
2018-12-24 15:32:27 -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
Nick Pope 7534e43497 Refs #14204 -- Removed obsolete referential integrity comment for SQLite. 2018-12-22 18:44:21 -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 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
jtiai 5a77190e66 Fixed #29792 -- Made GeometryField.deconstruct() handle 'extent' and 'tolerance' args. 2018-12-21 17:44:45 -05:00
jtiai 7b9f8e38bb Added tests for GeometryField.deconstruct(). 2018-12-21 17:41:39 -05:00
Tim Graham 194a4b526c Added tests for ContentType/Group/Permission.__str__(). 2018-12-21 12:45:02 -05: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 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 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
Manan 3a4558b84f Moved choices inside of test models per coding style. 2018-12-10 09:28:49 -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
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 734ce71824 Refs #30013 -- Fixed SchemaEditor.quote_value() test for mysqlclient 1.3.14+. 2018-12-05 14:46:31 -05:00
François Freitag fbc7e41389 Tested exception messages in generic_views tests. 2018-12-04 22:52:19 -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
Xavier Fernandez 4d9f51f2b5 Added test for ResolverMatch.__repr__(). 2018-11-30 17:43:55 -05:00
Xavier Fernandez 9d334e0a7a Removed urlpatterns_reverse dependency in urlpatterns tests. 2018-11-30 17:39:34 -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
Tim Graham 41db8cb252
Used assertCountEqual() in contrib.postgres.search tests. 2018-11-29 14:43:53 -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
Tim Graham 7056a4dd8e Switched TestCase to SimpleTestCase in GIS tests. 2018-11-27 10:22:13 -05:00
Simon Charette 0f212db29d Made reused RequestFactory instances class attributes. 2018-11-27 09:49:02 -05:00
Simon Charette 7f63b894c0 Adjusted code style of a few test data setup methods.
Thanks Mariusz for suggesting it.
2018-11-27 09:48:22 -05:00
Simon Charette 84e7a9f4a7 Switched setUp() to setUpTestData() where possible in Django's tests. 2018-11-27 09:35:17 -05:00
Tim Graham 193c109327 Switched TestCase to SimpleTestCase where possible in Django's tests. 2018-11-27 08:58:44 -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
Simon Charette 26c2a6ff88 Removed empty setUp() in admindocs tests. 2018-11-26 10:24:01 -05:00
Simon Charette b8763fc0a4 Used SimpleTestCase for template library tests. 2018-11-26 10:23:35 -05:00
Hasan Ramezani 11a9017179 Fixed #29966 -- Added tests for BaseHandler's "The view didn't return an HttpResponse object" error. 2018-11-23 19:19:02 -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
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
Tim Graham 5a71bd7f9d Removed unused views in middleware_exceptions tests.
Unused since d334f46b7a.
2018-11-21 17:48:09 -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
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 ced0bdd923 Tested a middleware's process_template_response() returning None. 2018-11-20 11:35:01 -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
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
Hasan Ramezani ec16588c27 Added test for Model._check_column_name_clashes(). 2018-11-17 15:24:48 -05:00
Tim Graham 405ec5b9c6 Fixed typo in tests/admin_views/tests.py. 2018-11-16 15:09:22 -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
Hasan Ramezani cf915cb513 Added a test for a lookup in Model.refresh_from_db(fields=[...]). 2018-11-15 11:38:47 -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
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
oliver d0af5de122 Moved duplicate author declarations to setUpTestData() in DeleteViewTests. 2018-11-13 17:27:24 -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
Hasan Ramezani c7cc7526d5 Completed test coverage of contrib.humanize.templatetags.humanize. 2018-11-10 19:09:37 -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
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