Nick Sandford
eb6c107624
Fixed #19360 -- Raised an explicit exception for aggregates on date/time fields in sqlite3
...
Thanks lsaffre for the report and Chris Medrela for the initial
patch.
2013-01-11 18:10:28 +01:00
Tim Graham
71d76ec011
Fixed #10239 - Added docs for modelform_factory
...
Thanks ingenieroariel for the suggestion and slurms for the review.
2013-01-11 06:00:19 -05:00
Nick Sandford
cdad0b28d4
Fixed #19573 -- Allow override of username field label in AuthenticationForm
2013-01-10 09:06:04 +01:00
Loic Raucy
62f842e2e5
Fixed #19581 -- ensure unique html ids with CheckboxSelectMultiple widgets
...
ID check is now done the same way as MultipleHiddenInput.
2013-01-09 16:06:56 -08:00
Carl Meyer
efa3f71cc4
Remove inaccurate comment regarding language names.
2013-01-09 11:55:58 -07:00
Preston Holmes
cfa70d0c94
Fixed #19546 - ensure that deprecation warnings are shown during tests
...
refs #18985
2013-01-09 08:19:22 -08:00
Simon Charette
f58efd07ff
Fixed #19576 -- Use `six.with_metaclass` uniformously accross code base.
2013-01-08 20:13:43 +01:00
Anssi Kääriäinen
55da775ce1
Fixed #17541 -- Fixed non-saved/nullable fk querying
2013-01-08 21:02:38 +02:00
Claude Paroz
34ee7d9875
Updated deprecated test assertions
2013-01-08 19:08:15 +01:00
Anssi Kääriäinen
23ca3a0194
Fixed #16759 -- Remove use of __deepcopy__ in qs.clone()
...
The original problem was that queryset cloning was really expensive
when filtering with F() clauses. The __deepcopy__ went too deep copying
_meta attributes of the models used. To fix this the use of
__deepcopy__ in qs cloning was removed.
This commit results in some speed improvements across the djangobench
benchmark suite. Most query_* tests are 20-30% faster, save() is 50%
faster and finally complex filtering situations can see 2x to order
of magnitude improvments.
Thanks to Suor, Alex and lrekucki for valuable feedback.
2013-01-08 19:17:13 +02:00
Claude Paroz
c698c55966
Created special PostgreSQL text indexes when unique is True
...
Refs #19441 .
2013-01-07 17:54:30 +01:00
Anssi Kääriäinen
a2396a4c8f
Fixed #19173 -- Made EmptyQuerySet a marker class only
...
The guarantee that no queries will be made when accessing results is
done by new EmptyWhere class which is used for query.where and having.
Thanks to Simon Charette for reviewing and valuable suggestions.
2013-01-06 19:18:28 +02:00
Claude Paroz
a843539af2
Fixed #12914 -- Use yaml faster C implementation when available
...
Thanks Beuc for the report and the initial patch.
2013-01-05 18:04:00 +01:00
Claude Paroz
b740da3504
Fixed #19192 -- Allowed running tests with dummy db backend
...
Thanks Simon Charette for the initial patch, and Jan Bednařík for
his work on the ticket.
2013-01-04 13:55:20 +01:00
Claude Paroz
850630b4b7
Replaced deprecated sslerror by ssl.SSLError
...
The exact conditions on which this exception is raised are not
known, but this replacement is the best guess we can do at this
point.
2013-01-03 22:16:43 +01:00
mpaolini
6248833d9e
Added documentation for the 'db' argument of the post-syncdb signal.
2013-01-03 22:04:55 +01:00
Claude Paroz
ffa50ca352
Fixed #19382 -- Stopped smtp backend raising exception when already closed
...
Thanks Sebastian Noack for the report and the initial patch.
2013-01-03 20:41:45 +01:00
Claude Paroz
1b3f832ab7
Fixed #19134 -- Allowed closing smtp backend when the server is stopped
...
Thanks Sebastian Noack for the report and the initial patch.
2013-01-03 18:49:00 +01:00
Claude Paroz
84ea85fb90
Updated comment about PostGIS bug 2035
...
PostGIS 2.0.2 has been released on December 3rd 2012, with the
fix included.
2013-01-03 17:37:44 +01:00
Simon Charette
3fc43c964e
Fixed #19545 -- Make sure media/is_multipart work with empty formsets
2013-01-03 15:16:23 +01:00
Aymeric Augustin
a051a9d929
Fixed PR 478 -- Removed superfluous try/except block.
2013-01-02 22:46:36 +01:00
Aymeric Augustin
07fbc6ae0e
Fixed #19547 -- Caching of related instances.
...
When &'ing or |'ing querysets, wrong values could be cached, and crashes
could happen.
Thanks Marc Tamlyn for figuring out the problem and writing the patch.
2013-01-02 22:21:46 +01:00
Claude Paroz
884f77bd15
Removed unusable parameters to empty_form property
2013-01-01 21:00:52 +01:00
Florian Apolloner
c5ce0e8a68
Updated our six module to follow upstream changes.
...
This includes fixes for the java/jython detection and a new license header.
Thanks to Thomas Bartelmess for the report.
2013-01-01 16:21:32 +01:00
Florian Apolloner
7cb0cd5aff
Replaced six.reraise with a simple raise.
2013-01-01 13:20:36 +01:00
Florian Apolloner
a4a4b139cd
Replaced e.message with e.args[0] in 3aa4b8165d
.
2013-01-01 13:14:55 +01:00
Florian Apolloner
009235b138
Merge pull request #182 from kspi/patch-1
...
Correct Lithuanian short date format.
2013-01-01 04:08:25 -08:00
Florian Apolloner
cf7afeb2d1
Fixed a NameError in geoip/libgeoip if the GeoIP library is not found.
...
Thx to Bouke Haarsma for the report.
2013-01-01 12:24:02 +01:00
Anton Baklanov
3aa4b8165d
Fixed #19457 -- ImageField size detection failed for some files.
...
This was caused by PIL raising a zlib truncated stream error since we fed
the parser with chunks instead of the whole image.
2013-01-01 11:54:56 +01:00
Aymeric Augustin
bacb097ac3
Fixed #19519 again -- Regression in LiveServerTestCase after fd1279a4
.
2013-01-01 10:14:11 +01:00
Ramiro Morales
3570ff734e
Fixed #17078 -- Made shell use std IPython startup.
...
This allows for a behavior more in line with what is expected by Ipython
users, e.g. the user namespace is initialized from config files, startup
files.
Thanks Benjamin Ragan-Kelley from the IPython dev team for the patch.
2012-12-31 19:40:02 -03:00
Julien Phalip
9180146d21
Fixed #19453 -- Ensured that the decorated function's arguments are obfuscated in the @sensitive_variables decorator's frame, in case the variables associated with those arguments were meant to be obfuscated from the decorated function's frame.
...
Thanks to vzima for the report.
2012-12-31 09:34:08 -08:00
Aymeric Augustin
acc5396e6d
Fixed #19519 -- Fired request_finished in the WSGI iterable's close().
2012-12-31 12:47:34 +01:00
Aymeric Augustin
a53c474026
Fixed #16241 -- Ensured the WSGI iterable's close() is always called.
...
Thanks Graham Dumpleton for the report.
2012-12-31 12:45:20 +01:00
Claude Paroz
d11038acb2
Fixed #19537 -- Made CheckboxInput._has_changed handle 'False' string
...
Thanks dibrovsd@gmail.com for the report.
2012-12-31 10:18:59 +01:00
Julien Phalip
cee40c7d79
Added further flexibility to ModelAdmin for controlling post-save redirections.
...
Refs #19505 .
2012-12-30 21:33:21 -08:00
Anssi Kääriäinen
f80a1934cd
Fixed GIS regression in get_default_columns()
...
I changed the normal compiler's get_default_columns() but didn't change
the copy-pasted code in GIS compiler's get_default_columns().
Refs #19385
2012-12-30 12:10:15 +02:00
Anssi Kääriäinen
ce3c71faf1
Minor improvement to proxy model handling
...
Refs #19385
2012-12-30 11:20:27 +02:00
Anssi Kääriäinen
807eff7439
Made use of PathInfo.direct flag in trim_joins
...
Refs #19385
2012-12-30 11:20:13 +02:00
Anssi Kääriäinen
68985db482
Added Query.join_parent_model()
...
This simplifies especially compiler.py a lot, where almost the same
code was repeated multiple times.
Refs #19385
2012-12-30 11:19:35 +02:00
Anssi Kääriäinen
4511aeb6b8
Moved join path generation to Field
...
Refs #19385
2012-12-30 11:19:19 +02:00
Anssi Kääriäinen
9ef3cab40b
Made sure join_field is always available in .join()
...
Refs #19385
2012-12-30 11:18:25 +02:00
Aymeric Augustin
a7b7d6320c
Merge pull request #595 from bmispelon/patch-1
...
Fixed a typo in WidthRatioNode.
2012-12-29 13:39:52 -08:00
Aymeric Augustin
0b09b1a7ca
Merge pull request #609 from mitar/patch-3
...
Fixed typo in collectstatic output.
2012-12-29 13:35:52 -08:00
Aymeric Augustin
4e5369a596
Silenced warnings in the tests of deprecated features.
2012-12-29 22:32:07 +01:00
Aymeric Augustin
ef017a5f00
Advanced pending deprecation warnings.
...
Also added stacklevel argument, fixed #18127 .
2012-12-29 21:59:07 +01:00
Aymeric Augustin
130829334c
Removed csrf_response_exempt and csrf_view_exempt.
2012-12-29 21:59:07 +01:00
Aymeric Augustin
2ecf56ea3f
Removed legacy ways of calling cache_page.
2012-12-29 21:59:07 +01:00
Aymeric Augustin
9f9a4cdecd
Removed truncate_words and truncate_html_words.
2012-12-29 21:59:07 +01:00
Aymeric Augustin
e00d1b6dc6
Removed obsolete compatibility functions for old Pythons.
2012-12-29 21:59:07 +01:00
Aymeric Augustin
5d5e1f5afa
Removed support is_safe and needs_autoescape as function attributes.
2012-12-29 21:59:07 +01:00
Aymeric Augustin
641acf76e7
Removed IGNORABLE_404_STARTS/ENDS settings.
2012-12-29 21:59:07 +01:00
Aymeric Augustin
4a6490a4a0
Removed HttpRequest.raw_post_data.
2012-12-29 21:59:07 +01:00
Aymeric Augustin
d1c72d9e01
Removed django.core.management.setup_environ and execute_manager.
2012-12-29 21:59:07 +01:00
Aymeric Augustin
59351247bd
Removed django.core.cache.backends.memcached.CacheClass.
2012-12-29 21:59:07 +01:00
Aymeric Augustin
ebd2598596
Removed django.contrib.markup.
2012-12-29 21:59:07 +01:00
Aymeric Augustin
f27a4ee327
Removed django.contrib.localflavor.
...
Each localflavor lives on as a separate app.
2012-12-29 21:59:06 +01:00
Aymeric Augustin
b2d20e9826
Removed legacy shortcut for importing GeoIP.
2012-12-29 21:58:12 +01:00
Aymeric Augustin
d4ea02b992
Removed the legacy form wizard.
2012-12-29 21:58:12 +01:00
Aymeric Augustin
052271168b
Removed django.contrib.databrowse.
...
RIP -- you served us well.
2012-12-29 21:58:12 +01:00
Aymeric Augustin
02f3daadd6
Removed interpolation of post_url_continue in the admin.
2012-12-29 21:58:12 +01:00
Aymeric Augustin
59ddb79e90
Removed django.conf.urls.defaults.
2012-12-29 21:58:12 +01:00
Aymeric Augustin
fb9f1b9bfb
Removed backwards-compatibility shim for #16288 .
...
Also unit-tested django.utils.log.RequireDebugTrue for consistency.
2012-12-29 21:58:12 +01:00
Aymeric Augustin
e9c24bef74
Fix #19524 -- Incorrect caching of parents of unsaved model instances.
...
Thanks qcwxezdas for the report. Refs #13839 .
2012-12-28 23:34:54 +01:00
Mitar
cb98806101
Update django/contrib/staticfiles/management/commands/collectstatic.py
...
Fixed small output error.
2012-12-27 20:37:12 +01:00
Aymeric Augustin
db278c3bf9
Fixed #19525 -- Reverted dcd4383107
and 05d333ba3b
.
...
Refs #9893 , #18515 .
Thanks Russell for the report.
2012-12-27 09:37:57 +01:00
Claude Paroz
0907d3c6f5
Fixed #16408 -- Re-fixed value conversion with Spatialite backend
2012-12-26 12:45:41 +01:00
Aymeric Augustin
1c8be95a86
Prevented caching of streaming responses.
...
The test introduced in 4b278131
accidentally passed because of a
limitation of Python < 3.3.
Refs #17758 , #7581 .
2012-12-24 20:28:07 +01:00
Julien Phalip
35d1cd0b28
Fixed #19505 -- A more flexible implementation for customizable admin redirect urls.
...
Work by Julien Phalip.
Refs #8001 , #18310 , #19505 . See also 0b908b92a2
.
2012-12-24 15:44:19 -03:00
Florian Apolloner
4a71b84266
Fixed #19204 -- Replaced python2-style exception syntax.
...
Thanks to garrison for the report and patch.
2012-12-24 14:05:36 +01:00
Luke Plant
8bc410b445
Fixed HTML comparisons of class="foo bar" and class="bar foo" in tests
...
Refs #17758
2012-12-24 02:11:32 +00:00
Luke Plant
c31c2c92b8
Made admin generated changelist URLs independent of dict ordering
2012-12-24 01:33:24 +00:00
Ian Clelland
6b9f130278
Sort HTML attributes on generated forms
2012-12-24 00:47:17 +00:00
Ian Clelland
8d35fd4c32
Use new TestCase methods for equality comparisons
2012-12-24 00:24:14 +00:00
Ian Clelland
089d9ca1df
Add assertJSONEqual method to TestCase
2012-12-24 00:18:50 +00:00
Ian Clelland
dc704516c2
Add assertInHTML method to TestCase
2012-12-24 00:15:36 +00:00
Claude Paroz
0dc3fc954f
Fixed #19509 -- Fixed crypt/bcrypt non-ascii password encoding
...
Also systematically added non-ascii passwords in hashers test suite.
Thanks Vaal for the report.
2012-12-22 16:04:10 +01:00
Aymeric Augustin
1e4a27d087
Fixed #19468 -- Decoded request.path correctly on Python 3.
...
Thanks aliva for the report and claudep for the feedback.
2012-12-22 13:32:39 +01:00
Aymeric Augustin
d9a0b6ab36
Fixed #19487 -- Used str in the test client's WSGI environ.
...
This regression was introduced by the unicode_literals patch. The WSGI
spec mandates that environ contains native strings.
2012-12-22 10:38:27 +01:00
Claude Paroz
e277301c2c
Fixed #19387 -- Preserved SafeData status in contrib.messages
...
Thanks Anton Baklanov for the report and the patch.
2012-12-21 10:09:32 +01:00
Anssi Kääriäinen
4007c8f6eb
Fixed a regression in distinct_on
...
Caused by regression fix for #19500 .
2012-12-20 22:50:06 +02:00
Anssi Kääriäinen
d407164c04
Fixed #18854 -- Join promotion in disjunction cases
...
The added promotion logic is based on promoting any joins used in only
some of the childs of an OR clause unless the join existed before the
OR clause addition.
2012-12-20 21:45:15 +02:00
Anssi Kääriäinen
3dcd435a0e
Fixed #19500 -- Solved a regression in join reuse
...
The ORM didn't reuse joins for direct foreign key traversals when using
chained filters. For example:
qs.filter(fk__somefield=1).filter(fk__somefield=2))
produced two joins.
As a bonus, reverse onetoone filters can now reuse joins correctly
The regression was caused by the join() method refactor in commit
68847135bc
Thanks for Simon Charette for spotting some issues with the first draft
of the patch.
2012-12-20 21:27:00 +02:00
Russell Keith-Magee
c04c03daa3
Fixed #19401 -- Ensure that swappable model references are case insensitive.
...
This is necessary because get_model() checks are case insensitive, and if the swapable check isn't, the
swappable logic gets tied up in knots with models that are partially swapped out.
Thanks to chris@cogdon.org for the report and extensive analysis, and Preston for his work on the draft patch.
2012-12-20 16:10:19 +08:00
Patryk Zawadzki
3989ce52ef
Fixed #18172 -- Made models with __iter__ usable in ModelMultipleChoiceField
...
Thanks to Patryk Zawadzki for the patch.
2012-12-19 22:51:12 +02:00
Tim Graham
6534a95ac3
Fixed #19470 - Clarified widthratio example.
...
Thanks orblivion for the suggestion.
2012-12-18 08:20:01 -05:00
Claude Paroz
55972ee5c7
Fixed #19441 -- Created PostgreSQL varchar index when unique=True
...
Thanks Dylan Verheul for the report and Anssi Kääriäinen for the
review.
2012-12-18 09:56:30 +01:00
Anssi Kääriäinen
c64b57d166
Replaced '__' with LOOKUP_SEP in sql/query.py
...
Thanks to Simon Charette for report.
2012-12-17 21:15:01 +02:00
Baptiste Mispelon
ac8eb82abb
Fixed typo in WidthRatioNode's error.
2012-12-17 10:35:36 +01:00
Aymeric Augustin
bbabfdccce
Fixed #19485 -- Python 3 compatibility for c2a6b2a4
.
...
Refs #9589 .
2012-12-17 09:46:26 +01:00
Anssi Kääriäinen
12a96bfa26
Fixed #19197 -- fixed convert_values() for nullable numeric fields
...
Cleaned up the implementation of base convert_values() a little, and
made sure it accepts None as a value for numeric fields.
There are no tests attached. The reason is that not all of the
convert_values() accept None as a value for numeric fields (for example
sqlite3.convert_values()).
The reason the base convert_values() needs to accept None is that this
situation might arise in custom compilers for 3rd party backends. It
is easy to keep the convert_values() working, so lets do that.
2012-12-16 23:26:16 +02:00
Claude Paroz
ed711c4bd5
Fixed #19483 -- Improved import error message in contrib.comments
...
Thanks Valentin Lorentz for the report and the suggested fix.
2012-12-16 21:12:45 +01:00
Anssi Kääriäinen
704ee33f50
Fixed #16679 -- Use caching to speed up signal sending
2012-12-16 21:46:02 +02:00
Tim Graham
507c081484
Fixed #18718 - Documented django.utils.encoding.filepath_to_uri
2012-12-16 14:39:37 -05:00
Anssi Kääriäinen
69597e5bcc
Fixed #10790 -- Refactored sql.Query.setup_joins()
...
This is a rather large refactoring. The "lookup traversal" code was
splitted out from the setup_joins. There is now names_to_path() method
which does the lookup traveling, the actual work of setup_joins() is
calling names_to_path() and then adding the joins found into the query.
As a side effect it was possible to remove the "process_extra"
functionality used by genric relations. This never worked for left
joins. Now the extra restriction is appended directly to the join
condition instead of the where clause.
To generate the extra condition we need to have the join field
available in the compiler. This has the side-effect that we need more
ugly code in Query.__getstate__ and __setstate__ as Field objects
aren't pickleable.
The join trimming code got a big change - now we trim all direct joins
and never trim reverse joins. This also fixes the problem in #10790
which was join trimming in null filter cases.
2012-12-16 17:23:26 +02:00
Anssi Kääriäinen
f811649710
Fixed #18816 -- Removed "trim" argument from add_filter()
...
The trim argument was used by split_exclude() only to trim the last
join from the given lookup. It is cleaner to just trim the last part
from the lookup in split_exclude() directly so that there is no need
to burden add_filter() with the logic needed for only split_exclude().
2012-12-16 16:56:28 +02:00
Anssi Kääriäinen
d7b49f5b0d
Fixed #19469 -- Removed opts.get_ordered_objects() and related code
...
The code was dead-code since 2006.
2012-12-16 16:22:09 +02:00
Russell Keith-Magee
9facca28b6
Corrected tests depending on the error message on the AuthenticationForm.
...
Refs #19368 , and the fix introduced in 27f8129d64
.
2012-12-16 07:18:45 +08:00
Russell Keith-Magee
27f8129d64
Fixed #19368 -- Ensured that login error messages adapt to changes in the User model.
...
Thanks to un33k for the report.
2012-12-15 22:44:47 +08:00
Russell Keith-Magee
47e1df896b
Fixed #19412 -- Added PermissionsMixin to the auth.User heirarchy.
...
This makes it easier to make a ModelBackend-compliant (with regards to
permissions) User model.
Thanks to cdestigter for the report about the relationship between
ModelBackend and permissions, and to the many users on django-dev that
contributed to the discussion about mixins.
2012-12-15 22:44:47 +08:00