Commit Graph

12157 Commits

Author SHA1 Message Date
Tim Graham d8341bf024 Moved contrib.sites tests out of contrib. 2015-02-11 10:19:22 -05:00
Tim Graham d3a725054f Moved contrib.flatpages tests out of contrib. 2015-02-11 10:19:22 -05:00
Tim Graham 197dd4b8f1 Prevented some test commands from needlessly running system checks.
This is a performance optimization and also fixes test errors with the
upcoming merge of contrib tests into tests/. The tests failed on MySQL
because the models with GeometryField were being checked but the
non-GIS MySQL backend didn't know how to handle them.
2015-02-11 10:14:38 -05:00
Daniel Pyrathon 19188826b4 Fixed #24146 -- Allowed model._meta.get_field() to be used after apps.models_ready 2015-02-10 19:55:06 -05:00
Josh Smeaton 1fbe8a2de3 Fixed #24200 -- Made introspection bypass statement cache 2015-02-10 23:24:34 +02:00
Aymeric Augustin 1b8af4cfa0 Disallowed importing concrete models without an application.
Removed fragile algorithm to find which application a model belongs to.

Fixed #21680, #21719. Refs #21794.
2015-02-10 21:41:19 +01:00
Aymeric Augustin c7a6996df7 Fixed a crash of the debug page.
During the autumn DST change, the template engine would fail to convert
the naive representation of now when USE_TZ = True. Passing now in UTC
eliminates the issue.

Thanks mbertheau and tricoder42.

Refs #23714.
2015-02-10 21:37:53 +01:00
Loic Bistuer c8e24bbc9b Fixed isort import that's inconsistent between platforms. 2015-02-11 02:24:14 +07:00
Aymeric Augustin f2c104ada6 Split DTL context creation into its own function.
This reduces the length of rope RequestContext gives users to hang
themselves with.

Thanks Alex Hill for the report and Tim Graham for the review.
2015-02-10 14:34:05 +01:00
Tim Graham c970018f41 Removed Django 1.7 MIDDLEWARE_CLASSES upgrade check. 2015-02-09 19:16:07 -05:00
Tim Graham 2ee9bce654 Removed some obsolete absolute_imports. 2015-02-09 13:37:23 -05:00
Claude Paroz 50aa1a790c Replaced some more hardcoded admin URLs 2015-02-09 17:29:53 +01:00
Tim Graham 2d7c27d387 Fixed #24302 -- Added DurationField.formfield() 2015-02-09 10:20:01 -05:00
Daniel Wiesmann 32ed4c202f Moved numpy import helper to shortcuts
Numpy will be used in both the geos and gdal modules,
so the import should sit in the parent module gis.
2015-02-09 15:51:19 +01:00
Tim Graham e144e0e237 Removed unnecessary parentheses in model check messages. 2015-02-09 08:53:58 -05:00
Aron Podrigal 4d73303ee9 Fixed #24249 -- Improved field shadowing validation in model multi-inheritance. 2015-02-09 08:37:55 -05:00
я котик пур-пур 981bd64dfb Unified local imports in django.db.backends.mysql. 2015-02-09 08:23:17 -05:00
Tim Graham 1256274750 Removed stray comment in auth.views. 2015-02-09 07:50:47 -05:00
Alex Gaynor 8099d33b65 Simplified the lazy CSRF token implementation in csrf context processor.
This significantly improves performance on PyPy. The previous
implementation would generate a new class on every single request,
which is relatively slow.
2015-02-08 15:02:43 -05:00
Alex Gaynor 82e0cd1571 Optimized allow_lazy() by not generating a new lazy wrapper on each invocation.
This dramatically improves performance on PyPy. The following benchmark:

python -mtimeit -s "from django.utils.functional import allow_lazy; from django.utils.translation import ugettext_lazy; f = allow_lazy(lambda s: s, str)" "f(ugettext_lazy('abc'))"

goes from 390us per loop to 165us.
2015-02-08 14:56:57 -05:00
Claude Paroz 32e6a7d3a5 Replaced hardcoded URLs in admin_* tests
Refs #15779. This will allow easier admin URL changes, when needed.
Thanks Simon Charette for the review.
2015-02-08 20:55:09 +01:00
Tim Graham 9033003d97 Added check_apps_ready() to Apps.get_containing_app_config() 2015-02-08 14:52:19 -05:00
Varun Sharma 540ca563de Fixed #24181 -- Fixed multi-char THOUSAND_SEPARATOR insertion
Report and original patch by Kay Cha.
2015-02-08 20:00:57 +01:00
Markus Holtermann 2832a9b028 Revert "Fixed #24075 -- Prevented running post_migrate signals when unapplying initial migrations of contenttypes and auth"
This reverts commit 737d24923a.
2015-02-07 20:14:49 +01:00
Markus Holtermann bd3d796ecd Revert "Refs #24075 -- Silenced needless call_command output while running tests"
This reverts commit 51dc617b21.
2015-02-07 19:22:31 +01:00
Collin Anderson db77915c9f Fixed E265 comment style 2015-02-06 09:30:35 -05:00
Tim Graham eb45a29565 Removed bin/unique-messages.py
This script is no longer used according to Claude, our translations manager.
2015-02-06 08:47:38 -05:00
Tim Graham 0ed7d15563 Sorted imports with isort; refs #23860. 2015-02-06 08:16:28 -05:00
Tim Graham 388d986b8a Removed gather_profile_stats.py
This script uses the unmaintained hotshot module (gone on Python 3)
and doesn't seem to be Django specific in any way.
2015-02-06 07:58:31 -05:00
Tim Graham 607af78bb8 Removed django-2to3.py
Aymeric says, "It was fun to write, but I don't think it's very useful."
2015-02-06 06:22:00 -05:00
Tim Graham bbe28496d3 Removed old import aliases. 2015-02-05 19:37:01 -05:00
Tim Graham 0f54cf28c0 Added UUIDField.deconstruct() 2015-02-05 19:15:02 -05:00
Aymeric Augustin 146dd7be8d Called parent in SimpleTestCase.setUpClass/tearDownClass. 2015-02-05 21:27:25 +01:00
Aymeric Augustin 44ad691558 Fixed #24265 -- Preserved template backend loading exceptions.
If importing or initializing a template backend fails, attempting to
access this template backend again must raise the same exception.
2015-02-05 20:06:18 +01:00
Aymeric Augustin 27f9ff459b Caught all exceptions raised by Engine.get_default().
In addition to ImproperlyConfigured, Engine.get_default() may also raise
ImportError or other exceptions. It's better to catch all exceptions in
places where the default engine isn't strictly required.
2015-02-05 20:06:18 +01:00
Aymeric Augustin 31d3a35579 Fixed #24273 -- Allowed copying RequestContext more than once.
Thanks Collin Anderson for the report.
2015-02-05 13:21:50 +01:00
Aymeric Augustin de62b8ef45 Simplified handling of RegexURLResolver.urlconf_module.
Also made RegexURLResolver.url_patterns a cached property for
consistency and efficiency.
2015-02-05 12:43:55 +01:00
Loic Bistuer 20eb51ce0d Fix small regression caused by 71ada3a8e6.
During direct assignment, evaluating the iterable before the transaction
is started avoids leaving the transaction dirty if an exception is raised.
This is slightly more wasteful but probably not enough to warrant a change
of behavior.

Thanks Anssi for the feedback. Refs #6707.
2015-02-05 16:59:56 +07:00
Loic Bistuer 71ada3a8e6 Fixed #6707 -- Added RelatedManager.set() and made descriptors' __set__ use it.
Thanks Anssi Kääriäinen, Carl Meyer, Collin Anderson, and Tim Graham for the reviews.
2015-02-05 12:45:08 +07:00
Matthew Somerville caa3562d5b Fixed #24242 -- Improved efficiency of utils.text.compress_sequence()
The function no longer flushes zfile after each write as doing so can
lead to the gzipped streamed content being larger than the original
content; each flush adds a 5/6 byte type 0 block. Removing this means
buf.read() may return nothing, so only yield if that has some data.
Testing shows without the flush() the buffer is being flushed every 17k
or so and compresses the same as if it had been done as a whole string.
2015-02-04 13:04:00 -05:00
mlavin 2730dad0d7 Fixed #24197 -- Added clearing of staticfiles caches on settings changes during tests
Cleared caching in staticfiles_storage and get_finder when
relevant settings are changed.
2015-02-04 10:53:04 -05:00
Tim Graham 4444ff39a4 Removed direct manipulation of settings in auth tests; refs #21230. 2015-02-04 09:56:55 -05:00
Anssi Kääriäinen 4d3470e52e Removed non-used EmptyShortCircuit 2015-02-04 09:26:40 -05:00
Anssi Kääriäinen 7145c8a62a Removed EverythingNode
At the same time, made sure that empty nodes in where clause match
everything.
2015-02-04 09:26:40 -05:00
Anssi Kääriäinen afe0bb7b13 Fixed #24268 -- removed Query.having
Instead of splitting filter clauses to where and having parts before
adding them to query.where or query.having, add all filter clauses to
query.where, and when compiling the query split the where to having and
where parts.
2015-02-04 09:26:40 -05:00
Riccardo Magliocchetti 2be621e44c Fixed #14497 -- Improved admin widget for "read only" FileFields
Based on patch by Adam J Forster, Paul Collins, and Julien.
2015-02-04 09:05:23 -05:00
Preston Timmons 5bc5ddd8b5 Fixed #24235 -- Removed is_usable attribute from template loaders. 2015-02-04 07:47:28 -05:00
Aron Podrigal 79f27f2b61 Fixed #15321 -- Honored ancestors unique checks.
Thanks to Tim for the review.
2015-02-03 18:56:53 -05:00
Simon Charette 65e005f8cd Fixed #24266 -- Changed get_parent_list to return a list ordered by MRO.
Thanks to Aron Podrigal for the initial patch and Tim for the review.
2015-02-03 16:40:31 -05:00
Tim Graham 0e489c19f1 Reverted "Fixed #24146 -- Fixed a missing fields regression in admin checks."
This reverts commit e8171daf0c.

A new solution is forthcoming.
2015-02-03 15:23:39 -05:00
darkryder 9ec8aa5e5d Fixed #24149 -- Normalized tuple settings to lists. 2015-02-03 14:59:45 -05:00
Claude Paroz cd0ceaa102 Fixed #24252 -- Forced lazy __str__ to utf-8 on Python 2
Thanks Stanislas Guerra for the report and Tomas Ehrlich for
the review.
2015-02-03 18:23:41 +01:00
Matthew Somerville 250aa7c39b Fixed #24240 -- Allowed GZipping a Unicode StreamingHttpResponse
make_bytes() assumed that if the Content-Encoding header is set, then
everything had already been dealt with bytes-wise, but in a streaming
situation this was not necessarily the case.

make_bytes() is only called when necessary when working with a
StreamingHttpResponse iterable, but by that point the middleware has
added the Content-Encoding header and thus make_bytes() tried to call
bytes(value) (and dies). If it had been a normal HttpResponse,
make_bytes() would have been called when the content was set, well
before the middleware set the Content-Encoding header.

This commit removes the special casing when Content-Encoding is set,
allowing unicode strings to be encoded during the iteration before they
are e.g. gzipped. This behaviour was added a long time ago for #4969 and
it doesn't appear to be necessary any more, as everything is correctly
made into bytes at the appropriate places.

Two new tests, to show that supplying non-ASCII characters to a
StreamingHttpResponse works fine normally, and when passed through the
GZip middleware (the latter dies without the change to make_bytes()).
Removes the test with a nonsense Content-Encoding and Unicode input - if
this were to happen, it can still be encoded as bytes fine.
2015-02-03 18:18:12 +01:00
Preston Timmons cd4282816d Fixed #18651 -- Enabled optional assignments for simple_tag(). 2015-02-03 10:44:33 -05:00
Anssi Kääriäinen 8adc59038c Fixed #23617 -- Added get_pk_value_on_save()
The method is mainly intended for use with UUIDField. For UUIDField we
want to call the field's default even when primary key value is
explicitly set to None to match the behavior of AutoField.

Thanks to Marc Tamlyn and Tim Graham for review.
2015-02-03 09:23:44 -05:00
Tim Graham 118b11221f Fixed #24263 -- Prevented extra queries on BaseDateDetailView with a custom queryset.
Thanks jekka-ua for the report and patch.
2015-02-03 09:12:37 -05:00
Aymeric Augustin 2133f3157e Fixed #24168 -- Allowed selecting a template engine in a few APIs.
Specifically in rendering shortcuts, template responses, and class-based
views that return template responses.

Also added a test for render_to_response(status=...) which was missing
from fdbfc980.

Thanks Tim and Carl for the review.
2015-02-03 08:29:45 +01:00
Tim Graham a53541852d Removed contrib.auth.forms.mask_password()
This function is unused since dce820ff70
after being introduced in 718a5ba1a1
2015-02-02 11:13:14 -05:00
Tim Graham f79ce63fdb Removed query.alias_diff()
This function is unused since 6fe2b001db
2015-02-01 21:37:25 -05:00
Tim Graham 0e60912492 Removed UpdateCacheMiddleware._session_accessed()
This method is unused since f567d04b24
2015-02-01 20:33:22 -05:00
Tim Graham 99ca7c2bd3 Removed Query.raise_field_error()
This method was inadvertently reintroduced in
f59fd15c49
2015-02-01 20:26:04 -05:00
Tim Graham 327a00f48b Removed InlineAdminForm.field_count()
This method is unused since 337d102b86
2015-02-01 20:13:12 -05:00
Tim Graham 75303b01a9 Fixed #24245 -- Added introspection for database defaults.
Needed for tests for migrations handling of database defaults.
2015-01-31 12:33:11 -05:00
Tim Graham 64a899dc81 Removed PostgreSQL DatabaseWrapper._set_isolation_level().
This method is unused since 8717b0668c.
2015-01-31 11:05:26 -05:00
Claude Paroz a0b5f15ea5 Fixed #14483 -- Allowed using subqueries with GIS lookups 2015-01-30 20:27:18 +01:00
Tim Graham 293fd5da5b Reverted "Fixed #6785 -- Made QuerySet.get() fetch a limited number of rows."
This reverts commit da79ccca1d.

This optimized the unsuccessful case at the expense of the successful one.
2015-01-30 12:51:12 -05:00
Loic Bistuer 4c3bfe9053 Fixed #24211 -- Removed ValuesQuerySet() and ValuesListQuerySet().
Thanks Anssi Kääriäinen, Marc Tamlyn, and Tim Graham for the reviews.
2015-01-30 22:02:58 +07:00
Tim Graham 29c0073335 Fixed #24164 -- Fixed Oracle GIS limited aggregation test failure. 2015-01-30 06:28:47 -05:00
Samuel Colvin 5b74134f27 Fixed #24145 -- Added PUT & PATCH to CommonMiddleware APPEND_SLASH redirect error. 2015-01-29 15:23:01 -05:00
Simon Charette eb4cdfbdd6 Fixed #23940 -- Allowed model fields to be named `exact`.
An explicit `__exact` lookup in the related managers filters
was interpreted as a reference to a foreign `exact` field.

Thanks to Trac alias zhiyajun11 for the report, Josh for the investigation,
Loïc for the test name and Tim for the review.
2015-01-29 14:40:20 -05:00
Matt 55c76f4e3b Fixed #24223 -- Prevented a session test from leaking. 2015-01-29 14:36:01 -05:00
Tim Graham f609731118 Removed ForeignObjectRel.get_lookup_constraint() [unused]. 2015-01-29 13:31:12 -05:00
Reza Mohammadi f1ff9407c9 Fixed Persian locale FIRST_DAY_OF_WEEK & DECIMAL/THOUSAND_SEPARATORs.
Reference: http://lh.2xlibre.net/locale/fa_IR/
2015-01-29 12:55:20 -05:00
Tim Graham 18f3e79b13 Removed threading fallback imports.
Django imports threading in many other places without fallback.
2015-01-28 10:23:25 -05:00
Jon Dufresne 24b2bc635e Fixed #24137 -- Switched to HTTP reason phrases from Python stdlib. 2015-01-28 06:59:40 -05:00
Emin Mastizada 0f3ea8c0bc Updated Azerbaijani language name. 2015-01-28 06:48:09 -05:00
Josh Smeaton 14d0bd67d4 Refs #14030 -- Renamed CombinableMixin to Combinable
Removed unused method and updated docstrings.
2015-01-28 10:59:30 +11:00
Josh Smeaton 7171bf755b Refs #14030 -- Added repr methods to all expressions 2015-01-28 10:59:30 +11:00
Raul Cumplido ac650d02cb Fixed #24209 -- Prevented crash when parsing malformed RFC 2231 headers
Thanks Tom Christie for the report and review.
2015-01-27 20:12:22 +01:00
Loic Bistuer 728b6fd9ca Fixed #24219 -- Moved SelectDateWidget together with the other widgets
and deprecated django.forms.extras.

Thanks Berker Peksag and Tim Graham for the reviews.
2015-01-27 22:40:02 +07:00
Loic Bistuer 84b6c76830 Fixed #24210 -- Cleaned up relational fields __init__().
Thanks Collin Anderson and Tim Graham for the reviews.
2015-01-27 22:35:49 +07:00
seanwestfall 7a90b53d60 Fixed #24053 -- Removed admin CSS & images for IE6 & 7. 2015-01-27 07:48:11 -05:00
Josh Smeaton 8196e4bdf4 Fixed #24154 -- Backends can now check support for expressions 2015-01-27 12:20:06 +11:00
Tomáš Ehrlich 511be35779 Fixed #24220 - Allowed lazy objects for success_url 2015-01-26 17:58:55 +01:00
Tomáš Ehrlich ea0ea7859a Fixed #24221 - Used precompiled regexp for percent-placeholder matching. 2015-01-26 10:48:31 -05:00
Tim Graham 1e219ac62f Moved imports in GIS tests to avoid failure if dependencies aren't installed. 2015-01-23 16:03:30 -05:00
Florian Apolloner 16ee52d21d Fixed #24205 -- Deprecated Signal.disconnect weak parameter. 2015-01-23 14:37:12 -05:00
Tim Graham 851f5bd413 Clarified docstring in dispatch/dispatcher.py 2015-01-23 12:59:59 -05:00
Tim Graham 4135d83702 Isolated a flatpages test; refs #11505. 2015-01-22 15:25:47 -05:00
Ng Zhi An 4669b6a807 Fixed #24170 -- Implemented decompress for BaseRangeField widgets 2015-01-22 19:36:15 +00:00
Andriy Sokolovskiy 38c17871bb Fixed #24104 -- Fixed check to look on field.many_to_many instead of class instance 2015-01-22 18:41:19 +01:00
Loic Bistuer d450af8a26 Fixed small inconsistency when handling aggregate's default_alias.
Refs #14030.
2015-01-22 00:44:14 +07:00
Adam Taylor 039465a6a7 Fixed typos in code comments. 2015-01-20 12:18:03 -05:00
Tim Graham be1357e709 Fixed a query failure on Python 3.5; refs #23763.
The failure was introduced in Django by
c7fd9b242d and the change in
Python 3.5 is https://hg.python.org/cpython/rev/a3c345ba3563.
2015-01-20 08:13:53 -05:00
Marc Tamlyn 0ae94d0d31 Fixes #24169 -- More arrayfield specific lookups.
varchar()[] cannot compare itself to text[]

Thanks to joelburton for the patch.
2015-01-20 09:52:23 +00:00
Josh Smeaton 61c102d010 Fixed #24183 -- Fixed wrong comparisons in Substr 2015-01-20 12:09:15 +11:00
Markus Holtermann 7f20041bca Fixed #24155 -- Maintained kwargs and import order in migration writer
Thanks Tomas Dobrovolny for the report and Tim Graham for the review.
2015-01-20 01:24:41 +01:00
Tim Graham b19b81b396 Fixed #24153 -- Fixed cookie test compatibility with Python 3.4.3+ 2015-01-19 15:12:57 -05:00
Tim Graham 378a0d27d6 Advanced deprecation warnings for Django 1.9. 2015-01-19 12:22:41 -05:00
Tim Graham 33457cd3b0 Removed IPAddressField per deprecation timeline; refs #20439. 2015-01-19 11:12:57 -05:00