Russell Keith-Magee
11b06532f7
Merge pull request #1198 from KrzysiekJ/http-patch-method
...
Fixed #20478 – Added support for HTTP PATCH method in generic views.
2013-05-22 17:19:43 -07:00
Claude Paroz
51998dffe7
Removed check for 0.15 version of gettext tools
...
gettext 0.15 has been released in July 2006.
2013-05-22 18:21:33 +02:00
Claude Paroz
dc51ec8bc2
Fixed #19237 -- Used HTML parser to strip tags
...
The regex method used until now for the strip_tags utility is fast,
but subject to flaws and security issues. Consensus and good
practice lead use to use a slower but safer method.
2013-05-22 17:34:02 +02:00
Krzysztof Jurewicz
ee8b810b97
Fixed #20478 – Added support for HTTP PATCH method in generic views.
2013-05-22 14:48:11 +02:00
Aymeric Augustin
0e51d8eb66
Fixed #20463 -- Made get_or_create more robust.
...
When an exception other than IntegrityError was raised, get_or_create
could fail and leave the database connection in an unusable state.
Thanks UloPe for the report.
2013-05-22 10:56:06 +02:00
Marc Tamlyn
adeec00979
Merge pull request #246 from dekkers/ticket_18709
...
Fixed #18709 -- Check if initial_value is a callable
2013-05-22 00:45:07 -07:00
Anssi Kääriäinen
904084611d
Fixed #19895 -- Second iterator over invalid qs raises errors
...
The fix was already in the patch for #18702 , so only test added for
ticket #19895 .
2013-05-22 08:30:41 +03:00
Jeroen Dekkers
d0788c2770
Fixed #18709 -- Check if initial_value is a callable
...
In _get_changed_data, check if initial_value is a callable and call it
if it is.
2013-05-22 01:05:22 +02:00
Anssi Kääriäinen
70679243d1
Fixed #18702 -- Removed chunked reads from QuerySet iteration
2013-05-21 19:51:59 +03:00
Selwin Ong
ea9a0857d4
Fixed #19326 -- Added first() and last() methods to QuerySet
2013-05-21 18:52:28 +03:00
Mathijs de Bruin
61a8de6f4f
Fixed #6412 -- More details if a template file cannot be loaded
...
Report more details about template files in loader postmortem.
2013-05-21 16:59:40 +02:00
Florian Apolloner
800513e7f3
Merge pull request #1194 from ambv/python26_is_fun
...
Fixed a Python 2.6 regression (GzipFile can't act as a context manager)
2013-05-21 04:20:35 -07:00
Wiktor Kolodziej
cec9558fba
Fixed #17308 -- Enabled the use of short_description on properties in the admin.
2013-05-21 13:19:18 +02:00
Łukasz Langa
c28281f9d6
Fixed a Python 2.6 regression (GzipFile can't act as a context manager)
2013-05-21 13:18:53 +02:00
Florian Apolloner
b1ac241ddc
Fixed test failures from 09f8652765
.
2013-05-21 13:03:25 +02:00
Marc Tamlyn
09f8652765
Use assertIsInstance in tests.
...
Gives much nicer errors when it fails.
2013-05-21 10:42:15 +01:00
Aymeric Augustin
18856f866c
Merge pull request #1191 from ambv/content_is_bytes
...
Fixed #20472 : response.content should be bytes on both Python 2 and 3
2013-05-21 01:26:35 -07:00
Daniel Lindsley
e24d486fbc
Fixed #20212 - __reduce__ should only be defined for Py3+.
2013-05-21 00:49:21 -07:00
Łukasz Langa
0594fed9ff
Fixed #20472 : response.content should be bytes on both Python 2 and 3
2013-05-21 01:28:16 +02:00
Jorge Bastida
888c86dcf3
Fixed #20445 -- Raised original exception after command error
2013-05-20 18:59:37 +02:00
Ryan Kaskel
4280217f31
Fixed #20403 -- Ignore forms marked for deletion when validating max_num.
2013-05-20 12:13:21 -04:00
Anssi Kääriäinen
266c0bb23e
Fixed #20278 -- ensured .get() exceptions do not recurse infinitely
...
A regression caused by d5b93d3281
made .get() error
reporting recurse infinitely on certain rare conditions. Fixed this by
not trying to print the given lookup kwargs.
2013-05-20 18:50:40 +03:00
Anssi Kääriäinen
c9a96075fa
Fixed #20378 -- regression in GenericRelation on abstract model
...
When a GenericRelation was defined on abstract model, queries on childs
of the abstract model didn't work. The problem was in the way fields and
in particular field.rel was copied from models to their children.
The regression was likely caused by #19385 . Thanks to Gavin Wahl for
spotting the regression.
2013-05-20 18:02:10 +03:00
Anssi Kääriäinen
f53059b411
Fixed qs.values() regression when used in subquery
2013-05-20 15:38:47 +03:00
Marc Tamlyn
6d81d5d82e
Merge pull request #1181 from aaugustin/better-api-to-disable-atomic-requests
...
Changed API to disable ATOMIC_REQUESTS per view.
2013-05-20 00:26:06 -07:00
Carl Meyer
a7dc13ec23
Fixed #20437 - marked a test-runner test as expected-fail under certain conditions.
2013-05-20 01:56:23 -04:00
Tomasz Jaskowski
022de7e139
Fixed #20449 - Corrected test sensitivity to current working dir.
2013-05-19 23:58:06 -04:00
Alex Gaynor
7c56212c71
Lower the max length for a test field so that it works on MySQL.
2013-05-19 13:58:58 -07:00
Anssi Kääriäinen
190771d003
Fixed fixtures testing failure
...
The failure was caused by generating the same warning from two tests.
The second time the same warning was raised it was swallowed by the
"once" simplefilter of warnings.
2013-05-19 20:53:49 +03:00
Aymeric Augustin
6633eeb886
Changed API to disable ATOMIC_REQUESTS per view.
...
A decorator is easier to apply to CBVs. Backwards compatibility isn't an
issue here, except for people running on a recent clone of master.
Fixed a few minor problems in the transactions docs while I was there.
2013-05-19 19:53:16 +02:00
Preston Holmes
6786920fd8
Fixed #16330 -- added --pks option in dumpdata command
...
Thanks to guettli for the initial ticket and patch, with additional work
from mehmetakyuz and Kevin Brolly.
2013-05-19 09:10:40 -07:00
Bozidar Benko
2d309a7043
Fixed #15961 -- Modified ModelAdmin to allow for custom search methods.
...
This adds a get_search_results method that users can override to
provide custom search strategies.
Thanks to Daniele Procida for help with the docs.
2013-05-19 16:45:00 +02:00
Aymeric Augustin
b06f6c1618
Fixed test failure introduced in 1927bf7c91
.
2013-05-19 16:23:14 +02:00
Pablo Recio
65f9e0affd
Fixes #18896 . Add tests verifying that you can get IntegrityErrors using get_or_create through relations like M2M, and it also adds a note into the documentation warning about it
2013-05-19 14:16:12 +02:00
Aymeric Augustin
d34b1c29e2
Merge pull request #1161 from erikr/urlize-additional-test
...
Fixed #19070 -- Additional test for urlize and brackets
2013-05-19 04:59:15 -07:00
Aymeric Augustin
f7467181aa
Merge pull request #1160 from erikr/host-inet-postgres2
...
Fixed #11442 -- Postgresql backend casts all inet types to text
2013-05-19 04:57:10 -07:00
Erik Romijn
1927bf7c91
Fix #19070 -- Additional test for urlize and brackets
2013-05-19 13:39:21 +02:00
Erik Romijn
60d94c2a80
Fixed #11442 -- Postgresql backend casts all inet types to text
2013-05-19 13:28:09 +02:00
Łukasz Langa
660762681c
Fixed #20126 -- XViewMiddleware moved to django.contrib.admindocs.middleware
2013-05-19 13:18:35 +02:00
Aymeric Augustin
cb86f707a0
Fixed #12747 -- Made reason phrases customizable.
2013-05-19 13:14:54 +02:00
Aymeric Augustin
3129d19071
Merge pull request #1152 from ambv/issue11915
...
Fixed #11915 : generic Accept-Language matches country-specific variants
2013-05-19 04:01:20 -07:00
Andrew Godwin
04e0fc029f
Merge pull request #1094 from senko/ticket_11160
...
Fixed #11160 : Formset non_form_errors returns ErrorList() if is_valid is not called
2013-05-19 03:56:14 -07:00
Andrew Godwin
7a99d1e167
Merge pull request #1134 from senko/ticket_18990
...
Fixed #18990 : Loaddata now complains if fixture doesn't exist
2013-05-19 03:54:29 -07:00
Łukasz Langa
26e3e7ecb5
Fixed #11915 : generic Accept-Language matches country-specific variants
2013-05-19 12:50:09 +02:00
Senko Rasic
65c557115f
fix warnings imports in fixtures tests
2013-05-19 12:49:03 +02:00
Honza Kral
4ad1eb1c14
Fixed #12674 -- provide a way to override admin validation
...
Moved admin validation code to classes and have those be class
attributes to the ModelAdmin classes.
2013-05-19 12:42:52 +02:00
Łukasz Langa
e80636b668
Added TransRealMixin to fix i18n global state pollution in the test suite
2013-05-19 12:05:57 +02:00
Senko Rasic
c44a2c40fe
Fixed #18990 -- Loaddata now complains if fixture doesn't exist
...
If the fixture doesn't exist, loaddata will output a warning.
The fixture named "initial_data" is exceptional though; if it
doesn't exist, the warning is not emitted. This allows syncdb and
flush management commands to attempt to load it without causing
spurious warnings.
Thanks to Derega, ptone, dirigeant and d1ffuz0r for contributions
to the ticket.
2013-05-19 11:31:27 +02:00
Senko Rasic
cc3b3ba93a
Fixed #18990 : Loaddata now complains if fixture doesn't exist
...
The fixture named "initial_data" is exceptional though; if it
doesn't exist, the error is not raised. This allows syncdb and
flush management commands to attempt to load it without causing
an error if it doesn't exist.
2013-05-19 10:56:09 +02:00
Andrea Crotti
5124ab7620
add comment to explain why it's necessary to do an explicit check for
...
Python2 and how metaclasses are defined
2013-05-19 10:36:04 +02:00
Marc Tamlyn
c70ca4879e
Merge pull request #1116 from elektrrrus/ticket_20234_20236
...
Ticket 20234 20236
2013-05-19 01:32:41 -07:00
Emil Stenström
7d77e9786a
Fixed #20246 -- Added non-breaking spaces between values an units
2013-05-18 23:01:48 +02:00
Tome Cvitan
caf56ad174
Fixed #20440 -- Ensured CharField's max_length/min_length are integers
2013-05-18 22:30:24 +02:00
Karol Sikora
3eba8c7f7f
Fixed #20234 and #20236 -- SingleObjectMixin fixes
...
Added object on SingleObjectMixin returned context,
some code clanup.
2013-05-18 21:13:27 +02:00
Aymeric Augustin
0038296135
Fixed ff881aef
on Python 3.
2013-05-18 20:48:47 +02:00
Shai Berger
ff881aef53
Fixed #13958 -- problem reporting exception from \r-line-ended file
...
Thanks petrvanblokland for reporting and saz for the patch
2013-05-18 19:30:03 +03:00
Łukasz Langa
f763227c7d
Fixes a Python 3.x regression introduced in a19e9d80
2013-05-18 18:06:31 +02:00
Florian Apolloner
dc8814bf7d
Merge branch 'master' of github.com:django/django
2013-05-18 17:39:14 +02:00
Łukasz Langa
bd97f7d0cb
Fixed #15201 : Marked CACHE_MIDDLEWARE_ANONYMOUS_ONLY as deprecated
2013-05-18 17:38:32 +02:00
Florian Apolloner
acd0bb39df
Fixed #14894 -- Ensure that activating a translation doesn't run into threading issues.
...
Thanks to maxbublis for the report and sergeykolosov for the patch.
2013-05-18 17:36:31 +02:00
Donald Stufft
398841d6d3
Merge branch 'allow-any-iterable-for-choices'
2013-05-18 11:31:16 -04:00
Donald Stufft
a19e9d80ff
Fixed #20430 - Enable iterable of iterables for model choices
...
Allows for any iterable, not just lists or tuples, to be used as
the inner item for a list of choices in a model.
2013-05-18 11:14:05 -04:00
Aymeric Augustin
e73cb6391d
Merge pull request #1122 from ambv/issue13285
...
Fixed #13285 : populate_xheaders breaks caching
2013-05-18 08:05:48 -07:00
Łukasz Langa
64e11a68f1
Fixed #13285 : populate_xheaders breaks caching
2013-05-18 17:03:43 +02:00
Aymeric Augustin
3634948c88
Moved IgnorePendingDeprecationWarningsMixin in django.test.utils.
...
This mixin is useful whenever deprecating a large part of Django.
2013-05-18 16:49:15 +02:00
Olivier Sels
63a9555d57
Fixed #19436 -- Don't log warnings in ensure_csrf_cookie.
2013-05-18 16:17:46 +02:00
Aymeric Augustin
7d050e8e9c
Merge pull request #1113 from denibertovic/master
...
Fixed #18761 -- Added whitespace stripping to URLField and SlugField.
2013-05-18 07:11:11 -07:00
Deni Bertovic
186ec21a3d
Added stripping of whitespace for SlugField and URLField
2013-05-18 16:06:08 +02:00
Jacob Burch
89955cc35f
Fixed #9595 -- Allow non-expiring cache timeouts.
...
Also, streamline the use of 0 and None between cache backends.
2013-05-18 15:39:42 +02:00
Łukasz Langa
92ebb29c53
Fixes #19919 : get_language_from_request() disregards "en-us" and "en" languages
...
when matching Accept-Language
2013-05-18 14:37:04 +02:00
Florian Apolloner
16683f29ea
Merge pull request #1084 from erikr/master
...
Fixed #13546 -- Easier handling of localize field options in ModelForm
2013-05-18 05:15:15 -07:00
Marc Tamlyn
ef73a8eefd
Merge pull request #1083 from Markush2010/ticket20235
...
Fixes #20235 - MultipleObjectMixin requires object_list in kwargs
2013-05-18 05:14:28 -07:00
Erik Romijn
756b81dbd1
Fixed #13546 -- Easier handling of localize field options in ModelForm
2013-05-18 14:13:00 +02:00
Matthew Somerville
1c921cfac3
Fixed #20235 -- Use self.object_list if object_list not present in get_context_data kwargs.
...
This is so MultipleObjectMixin can be used in the same way as
SingleObjectMixin.
2013-05-18 14:10:40 +02:00
Senko Rasic
493aca453a
Fixed #11160 - Ensure full_clean is called from non_form_errors
...
Updated FormSet.non_form_errors() to ensure full_clean() has
been called before returning the errors.
2013-05-18 13:44:27 +02:00
Aymeric Augustin
4bed64c417
Made test introduced in 566e284c
pass on Python 3.
2013-05-18 13:34:52 +02:00
Senko Rasic
566e284c56
Added test for multipart, non form-data POST.
...
Closes #9054 . The bug itself is no longer present.
2013-05-18 12:50:28 +02:00
Claude Paroz
8fd44b2551
Fixed #20356 -- Prevented crash when HTTP_REFERER contains non-ascii
...
Thanks srusskih for the report and Aymeric Augustin for the review.
2013-05-18 12:39:11 +02:00
Florian Apolloner
051cb1f4c6
Fixed #20411 -- Don't let invalid referers blow up CSRF same origin checks.
...
Thanks to edevil for the report and saz for the patch.
2013-05-18 12:32:47 +02:00
Baptiste Mispelon
9012a9e200
Fixed #20422 -- Applied makemessage's --ignore patterns to full path
...
Fix makemessage's --ignore patterns being applied to the full path
instead of the file name. Thanks to nnseva for the report and the
original patch.
2013-05-18 10:40:16 +02:00
Shai Berger
9ef4d177d1
Fixed #20388 -- Test failures under Oracle.
...
Add "FROM DUAL" to SQL selecting constants in tests for Oracle.
2013-05-16 15:00:16 +02:00
Daniel Lindsley
33793f7c3e
Fixed #19934 - Use of Pillow is now preferred over PIL.
...
This starts the deprecation period for PIL (support to end in 1.8).
2013-05-14 19:32:04 -07:00
Florian Apolloner
e23a5f9a47
Fixed a regression in the test runner loading of runtests.py.
...
Refs #17365 , #17366 , #18727 .
2013-05-11 15:47:40 +02:00
Carl Meyer
9012833af8
Fixed #17365 , #17366 , #18727 -- Switched to discovery test runner.
...
Thanks to Preston Timmons for the bulk of the work on the patch, especially
updating Django's own test suite to comply with the requirements of the new
runner. Thanks also to Jannis Leidel and Mahdi Yusuf for earlier work on the
patch and the discovery runner.
Refs #11077 , #17032 , and #18670 .
2013-05-10 23:08:45 -04:00
Anssi Kääriäinen
c0d8932a6d
Fixed #19939 -- generic relations + split_exclude regression
...
Added a test, the issue was already fixed (likely by the patch
for #19385 ).
2013-05-11 03:48:58 +03:00
Alex Gaynor
327e362ff3
Fixed an obvious typo.
2013-05-10 08:56:39 -07:00
Aymeric Augustin
a4dec43b52
Fixed two admin_views tests under Oracle.
...
Thanks Anssi for the review.
2013-05-10 16:56:42 +02:00
Aymeric Augustin
9a3708cec8
Fixed a test that fails under Python 3.
2013-05-09 19:33:02 +02:00
Luke Plant
f026a519ae
Fixed #19733 - deprecated ModelForms without 'fields' or 'exclude', and added '__all__' shortcut
...
This also updates all dependent functionality, including modelform_factory
and modelformset_factory, and the generic views `ModelFormMixin`,
`CreateView` and `UpdateView` which gain a new `fields` attribute.
2013-05-09 16:44:36 +01:00
Luke Plant
1e37cb37ce
Further removal of static admin validation that can fail erroneously
2013-05-09 16:44:36 +01:00
Alex Gaynor
6634cb7b53
Removed a test that didn't make sense; code could never be called the way the test was written.
2013-05-09 06:55:25 -07:00
Luke Plant
2f8f2ad1d7
Removed some failing tests missed in 1556b1c3b7
2013-05-09 01:45:34 +01:00
Luke Plant
1556b1c3b7
Removed fragile admin validation of fields on ModelForm
...
Refs #19445
2013-05-09 00:49:05 +01:00
Aymeric Augustin
832b4a5722
Marked a test as an expected failure on MySQL and Python 3.2.
...
This test hits a bug in current ports of MySQLdb.
2013-05-08 23:12:46 +02:00
Aymeric Augustin
7476d96f83
Marked tests of BinaryFields as expected failures on MySQL and Python 3.
...
Current ports of MySQLdb are very buggy in this area.
2013-05-08 15:48:39 +02:00
Tai Lee
99a6f0e77c
Fixed #20354 -- `makemessages` no longer crashes with `UnicodeDecodeError`
...
Handle the `UnicodeDecodeError` exception, send a warning to `stdout` with the
file name and location, and continue processing other files.
2013-05-07 21:22:05 +02:00
Florian Apolloner
da85c8cf32
Fixed a regression introduced in 9f7a01ef2b
.
2013-05-05 15:27:14 +02:00
Florian Apolloner
780fa48f5f
Fixed test failures introduced in a5becad909
.
2013-05-01 16:40:49 +02:00
Aymeric Augustin
3a4276ffc3
Tested that get_or_create raises IntegrityError.
...
It used to raise "DatabaseError: no such savepoint" with the old
transaction management. Closes #15117 .
2013-04-28 17:15:41 +02:00
Aymeric Augustin
90fe9141de
Fixed #18986 -- Improved error message for missing files
...
in CachedStaticFilesStorage. Thanks zyegfryed for his work on the patch.
2013-04-28 16:45:05 +02:00
Claude Paroz
4769db6b5f
Fixed #20321 -- Added missing key name in MergeDict KeyError message
...
Thanks mark.harviston et gmail.com for the report.
2013-04-26 08:59:34 +02:00
Marti Raudsepp
172b50b722
Clearer explanation when exception has no message
...
"No exception supplied" is misleading; actually there is an exception,
but there's no message string.
2013-04-23 21:18:17 +03:00
Alex Gaynor
714161c864
Fix != operations on lazy objects.
2013-04-19 10:58:29 -07:00
Anton Baklanov
59d127e45f
Fixed #20276 -- Implemented __bool__ for MergeDict
...
MergeDict evaluates now to False if all contained dicts are empty.
Thanks til for the report and the initial patch.
2013-04-19 10:08:16 +02:00
Carl Meyer
a98465c040
Refs #14567 -- Fixed failing test that wasn't being run.
2013-04-16 13:34:06 -06:00
Matthew Tretter
a506b6981b
Fixed #18231 -- Made JavaScript i18n not pollute global JS namespace.
...
Also, use Django templating for the dynamic generated JS code and use
more idiomatic coding techniques.
Thanks Matthew Tretter for the report and the patch.
2013-04-14 17:45:01 -03:00
Claude Paroz
be9ae693c4
Fixed #17840 -- Generalized named placeholders in form error messages
...
Also fixed plural messages for DecimalField.
2013-04-13 18:55:50 +02:00
Baptiste Mispelon
9ac4dbd7b5
Fixed #4592 : Made CheckboxSelectMultiple more like RadioSelect
...
I refactored RadioSelect and CheckboxSelectMultiple to
make them inherit from a base class, allowing them to share
the behavior of being able to iterate over their subwidgets.
Thanks to Matt McClanahan for the initial patch and to
Claude Paroz for the review.
2013-04-13 16:37:27 +02:00
Baptiste Mispelon
c4186c2fec
Fixed #4117 : Apply id attribute to the outer <ul> of RadioSelect
2013-04-13 12:23:25 +02:00
Claude Paroz
f56b703b27
Used a Python 3 compatible StringIO in test_utils
2013-04-13 11:38:13 +02:00
Baptiste Mispelon
844fbc85c1
Fixed #19874 : Apply id attribute to the outer <ul> of CheckboxSelectMultiple
2013-04-13 11:09:47 +02:00
Claude Paroz
3f05c70be0
Updated a renamed test file
2013-04-13 11:09:47 +02:00
Preston Timmons
6d96831769
Fixed template_tests so discovery doesn't directly find tests that require setuptools.
2013-04-12 15:42:58 -06:00
Preston Timmons
56e777eba3
Modified view_tests for unittest2 discovery.
2013-04-12 15:42:07 -06:00
Preston Timmons
e8446be560
Modified validation to work with unittest2 discovery.
2013-04-12 15:33:22 -06:00
Preston Timmons
612ef3e5c9
Modified utils_tests for unittest2 discovery.
2013-04-12 15:31:58 -06:00
Preston Timmons
3810dc3070
Modified template_tests for unittest2 discovery.
2013-04-12 15:13:59 -06:00
Preston Timmons
44293c5c05
Modified model_fields for unittest2 discovery.
2013-04-12 15:11:12 -06:00
Preston Timmons
3ca3d2206c
Modified generic_views for unittest2 discovery.
2013-04-12 15:10:04 -06:00
Preston Timmons
5e84abec14
Modified comment_tests for unittest2 discovery.
2013-04-12 15:07:24 -06:00
Preston Timmons
6f3e139739
Modified test_client_override to work with unittest2 discovery.
2013-04-12 15:05:34 -06:00
Preston Timmons
751b007c98
Modified test_utils to work with unittest2 discovery.
2013-04-12 15:00:48 -06:00
Preston Timmons
cdf520ee86
Modified forms_tests to work with unittest2 discovery.
2013-04-12 15:00:17 -06:00
Claude Paroz
b04fd579d5
Fixed #20237 (again) Allowed binary parameter to assertContains
2013-04-12 20:12:42 +02:00
Baptiste Mispelon
ab686022f8
Fixed #20211 : Document backwards-incompatible change in BoundField.label_tag
...
Also cleaned up label escaping and consolidated the test suite regarding
label_tag.
2013-04-12 10:17:17 +02:00
Claude Paroz
fe01404bb9
Fixed #20237 -- Reenabled assertContains with binary parameter
...
Thanks Baptiste Mispelon for the review.
2013-04-11 10:38:24 +02:00
Baptiste Mispelon
e7b9c11c3f
Fixed #20231 -- Don't use allow_lazy on smart_split
2013-04-10 13:05:29 +02:00
Claude Paroz
118faa0893
Made usage of assertTemplateUsed in admin_views tests
...
Thanks Baptiste Mispelon for the suggestion.
2013-04-10 10:16:15 +02:00
Baptiste Mispelon
f69396665c
Fix admin_views tests after commit 3be368c73e
.
2013-04-08 22:02:18 +02:00
Tobias McNulty
161c4da588
Fixed #14019 -- Initialize `SQLInsertCompiler.return_id` attribute.
2013-04-08 13:41:36 -06:00
Baptiste Mispelon
f9dc1379b8
Fix #15126 : Better error message when passing invalid options to ModelForm.Meta.
2013-04-07 19:08:53 +02:00
Simon Charette
216580e034
Fixed #20207 -- Handle ManyToManyField with a unicode name correctly.
2013-04-05 15:09:53 -04:00
Baptiste Mispelon
c250f9c99b
Fixed #20038 -- Better error message for host validation.
2013-04-03 14:27:20 -06:00
Preston Timmons
8ce46375ae
Move last remaining tests out of models.py files; prep for test discovery.
2013-04-02 19:00:55 -06:00
Claude Paroz
edc782b7b5
Relaxed time frame check in test_strip_tags
2013-04-01 22:53:04 +02:00
Julien Phalip
2f81a0ca65
Fixed #20169 -- Ensured that the WSGI request's path is correctly based on the `SCRIPT_NAME` environment parameter or the `FORCE_SCRIPT_NAME` setting, regardless of whether or not those have a trailing slash. Thanks to bmispelon for the review.
2013-04-01 12:04:44 -07:00
Claude Paroz
8c41bd93c2
Fixed #16737 -- Support non-ascii column names in inspectdb
...
Thanks moof at metamoof.net for the report.
2013-04-01 19:59:57 +02:00
Claude Paroz
2817a29d90
Imported unittest from django.utils in util_tests
...
Without this, the 'new' assertion methods are not present with
Python 2.6.
2013-04-01 19:59:57 +02:00
Claude Paroz
dcf563071f
Fixed #5014 -- Guessed max_digits and decimal_places for SQLite
...
Decimal is treated as float on SQLite, hence inspectdb can only
guess max_digits and decimal_places arguments.
2013-04-01 18:32:57 +02:00
Claude Paroz
51028f50b6
Fixed getting max_digits for MySQL decimal fields
...
Refs #5014 .
2013-04-01 18:17:00 +02:00
Claude Paroz
a01361b5ae
Added more tests for strip_tags utility
...
Refs #19237 .
2013-04-01 16:48:47 +02:00
Claude Paroz
b474ffe63a
Fixed #20172 -- Ensured urlize supports IPv4/IPv6 addresses
...
Thanks Marc Aymerich for the report and the initial patch.
2013-04-01 15:37:37 +02:00
Joe Friedl
2d0db67813
Fixed #20167 -- Preserve the traceback of `ImportError`s in `import_by_path`.
...
Thanks @carljm for the review.
2013-03-31 23:00:06 -04:00
Claude Paroz
3ff3212713
Fixed #19220 -- Prevented decimals to be displayed in scientific notation
...
Thanks nebstrebor for the report and antofik for the patch.
2013-03-31 22:39:01 +02:00
Baptiste Mispelon
5080311998
Fixed #20130 -- Regression in {% cache %} template tag.
2013-03-30 12:13:08 +01:00
Christoph Sieghart
465b01f065
Fixed #19998 -- Fixed --ignorenonexistent support for XML based fixtures.
2013-03-30 11:59:50 +01:00
Baptiste Mispelon
a40746b1cb
Fix #20158 : invalid code in queryset_pickle test models.
2013-03-29 13:32:21 +01:00
Claude Paroz
86b1c31689
Fixed #19954 -- Fixed MySQL _last_executed decoding
...
Queries can contain binary data undecodable with utf-8. In this
case, using the 'replace' errors mode when decoding seems like
an acceptable representation of the query.
Thanks Marcel Ryser for the report.
2013-03-28 20:08:37 +01:00
Jacob Kaplan-Moss
4befef91f1
Correctly restore warning capture after logging tests.
...
This is a fix to the wrong behavior that 15c3906eeb
introduced.
2013-03-27 17:01:11 -05:00
Jacob Kaplan-Moss
654d8e96ae
Fixed logging-related test failure introduced by e79b857
.
2013-03-27 12:05:31 -05:00
Jacob Kaplan-Moss
f6989e559c
Merge remote-tracking branch 'ptone/18985-fix'
2013-03-27 10:34:28 -05:00
Claude Paroz
34a50e99e8
Added regression test for custom SQL containing percents
...
Refs #3485 .
2013-03-26 23:19:32 +01:00
Anssi Kääriäinen
e17fa9e877
Fixed #20091 -- Oracle null promotion for empty strings
2013-03-26 14:19:54 +02:00
Adam Wentz
a4b8a4b632
Fixed #20121 -- Removed LogEntry.get_admin_url's hard-coded path.
...
Updated LogEntry.get_admin_url to use 'reverse' instead
of a hard-coded path.
2013-03-25 23:45:27 -04:00
Claude Paroz
066bf42675
Removed forced typecasting of help_text/label Field arguments
...
In any case, setting those variables to non-ascii utf-8 bytestrings
is now considered a programming error.
2013-03-25 21:38:21 +01:00
Preston Holmes
e79b857a07
Fixed #18985 -- ensure module level deprecations are displayed
...
Also don't compete with -W CLI option.
Thanks to Aymeric Augustin for the catch, and Claude Paroz for the patch.
2013-03-24 22:06:02 -07:00
Loic Bistuer
521765f63d
Fixed #19541 -- Fixed BaseHandler to enable reversing URLs in response middlewares
...
and streamed responses with respect to per-request urlconf.
2013-03-25 03:19:19 +07:00
Anssi Kääriäinen
266de5f9ae
Fixed 19385 -- Added ORM support for multicolumn joins
...
This patch iproved two major parts in Django. First, the fields.related
was refactored. The main addition there was ForeignObject. Second, the
ORM now handles multicolumn joins in most cases, though there are still
cases that do not work correcly (split_exclude() for example).
In addition there were extesive changes to how GenericRelation works.
Before it was a fake m2m field, now it is a pure virtual fields and is
based on ForeignObject.
There is still much room for improvement. The related fields code is
still somewhat confusing, and how fields are represented in model._meta
should also be revisited.
This patch was written mostly by Jeremy Tillman with some final polish
by the committer.
2013-03-24 18:08:01 +02:00
Aymeric Augustin
bc35b95274
Fixed test failures introduced in e16c48e001
.
2013-03-24 15:27:50 +01:00
Aymeric Augustin
e16c48e001
Fixed #15124 -- Changed the default for BooleanField.
...
Thanks to the many contributors who updated and improved the patch over
the life of this ticket.
2013-03-24 13:47:01 +01:00
Claude Paroz
76aecfbc4b
Fixed #9055 -- Standardized behaviour of parameter escaping in db cursors
...
Previously, depending on the database backend or the cursor type,
you'd need to double the percent signs in the query before passing
it to cursor.execute. Now cursor.execute consistently need percent
doubling whenever params argument is not None (placeholder substitution
will happen).
Thanks Thomas Güttler for the report and Walter Doekes for his work
on the patch.
2013-03-23 17:11:10 +01:00
Claude Paroz
164528acc8
Fixed #20108 -- Fixed filepath_to_uri decoding error
...
This was a regression due to unicode_literals usage. Thanks Ivan
Virabyan for the report and the initial patch.
2013-03-22 17:55:12 +01:00
Marc Tamlyn
829dc3c5a6
Fixed #20094 - Be more careful when checking for Iterator
...
Python 2.6 has some different behaviour when checking
isinstance(foo, collections.Iterator).
2013-03-22 17:31:29 +01:00
Andrew Gorcester
f9ab543720
Fixed #20084 -- Provided option to validate formset max_num on server.
...
This is provided as a new "validate_max" formset_factory option defaulting to
False, since the non-validating behavior of max_num is longstanding, and there
is certainly code relying on it. (In fact, even the Django admin relies on it
for the case where there are more existing inlines than the given max_num). It
may be that at some point we want to deprecate validate_max=False and
eventually remove the option, but this commit takes no steps in that direction.
This also fixes the DoS-prevention absolute_max enforcement so that it causes a
form validation error rather than an IndexError, and ensures that absolute_max
is always 1000 more than max_num, to prevent surprising changes in behavior
with max_num close to absolute_max.
Lastly, this commit fixes the previous inconsistency between a regular formset
and a model formset in the precedence of max_num and initial data. Previously
in a regular formset, if the provided initial data was longer than max_num, it
was truncated; in a model formset, all initial forms would be displayed
regardless of max_num. Now regular formsets are the same as model formsets; all
initial forms are displayed, even if more than max_num. (But if validate_max is
True, submitting these forms will result in a "too many forms" validation
error!) This combination of behaviors was chosen to keep the max_num validation
simple and consistent, and avoid silent data loss due to truncation of initial
data.
Thanks to Preston for discussion of the design choices.
2013-03-21 01:27:24 -07:00
Carny Cheng
aaec4f2bd8
Fixed #18839 - Field.__init__() now calls super().
2013-03-20 16:20:57 -07:00
Matthew Wood
a7960bcb35
Fixed #18972 -- Refactored bundled wsgi server's chunking algorithm.
...
Thanks to amosonn at yahoo.com for the report, @doda for the initial patch and
@datagrok for the revamped logic and test case.
2013-03-20 18:46:26 -04:00
Anssi Kääriäinen
80e68ee2ff
Added tests for already fixed #20101
...
The ticket dealt with a case where one query had .exclude() that
produced a subquery, the other query had a join to the same model that
was subqueried in the first query. This was already fixed in master, so
only test added.
2013-03-21 00:43:26 +02:00
Claude Paroz
23490a2394
Revert "Fixed 19895 -- Made second iteration over invalid queryset raise an exception too"
...
This reverts commit 2cd0edaa47
.
This commit was the cause of a memory leak. See ticket for more details.
Thanks Anssi Kääriäinen for identifying the source of the bug.
2013-03-20 10:41:53 +01:00
Paul Collins
9a85ad89c2
Fixed #16319 -- added SuccessMessageMixin to contrib.messages
...
Thanks martinogden for the initial patch and d1ffuz0r for tests.
2013-03-19 21:02:55 -07:00
Simon Charette
5938e7013e
Fixed a python 3.2 syntax error and python 3 warning introduced by 054ce2aa02
.
2013-03-19 22:16:48 -04:00
konarkmodi
483e1b807e
Refs #18586 -- Split out long custom_columns lookup test into multiple tests.
2013-03-19 15:58:54 -07:00
Juan Catalano
054ce2aa02
Fixed #20088 -- Changed get_admin_log not to depend on User id field
...
Before this change, the get_admin_log method would expect User model's
FK to be named `id`. When changing that FK name, admin/index.html
rendering would fail.
This includes:
* Changed the use of id for the use of pk property.
* Added a regression test that fails without the patch.
This commit refs #20088 .
2013-03-19 19:30:43 -03:00
Deric Crago
9d6ecc6bc6
Fixed #19327 -- Added handling of double login attempts in admin.
...
Thanks to Krzysztof Jurewicz for initial patch and
adupin for tests.
2013-03-18 17:11:07 -07:00
Aymeric Augustin
31b5275235
Fixed #13260 -- Quoted arguments interpolated in URLs in reverse.
2013-03-18 23:58:22 +01:00
Aymeric Augustin
9dc5702932
Fixed #19456 -- Avoid infinite recursion when tracing LazyObject.__init__.
...
Thanks blaze33 for the patch.
2013-03-18 11:22:43 +01:00
Aymeric Augustin
0efafa4c54
Fixed #18447 -- Made LazyObject unwrap on dict access.
...
Thanks Roman Gladkov and Zbigniew Siciarz.
2013-03-18 11:10:19 +01:00
Aymeric Augustin
20a91cce04
Fixed #17037 -- Added a --all option to diffsettings.
2013-03-18 00:03:58 +01:00
Anssi Kääriäinen
46f4b19920
Removed debug code
2013-03-17 11:31:15 +02:00
Baptiste Mispelon
d5683bd06b
Fix #20058 : Make compilemessages use stdout instead of stderr.
2013-03-16 19:48:40 +01:00
Anssi Kääriäinen
2a2708e1b2
Fixed #17502 -- Made joining in inheritance cases consistent
...
The original problem was that when filtering two levels up in
inheritance chain, Django optimized the join generation so that the
middle model was skipped. But then Django generated joins from top
to middle to bottom for SELECT clause, and thus there was one extra
join (top->middle->bottom + top -> bottom).
This case is fixed in master as the filtering optimization is gone.
This has the side effect that in some cases there is still extra join
if the SELECT clause doesn't contain anything from middle or bottom.
2013-03-15 11:06:26 +02:00
Aymeric Augustin
3f2befc931
Deprecated django.views.defaults.shortcut.
2013-03-14 20:30:23 +01:00
Claude Paroz
2f121dfe63
Fixed #17051 -- Removed some 'invalid' field error messages
...
When the 'invalid' error message is set at field level, it masks
the error message raised by the validator, if any.
2013-03-14 17:03:43 +01:00
Claude Paroz
34d098665d
Add a specific error message for URLValidator
2013-03-14 15:26:30 +01:00
Claude Paroz
9883551d50
Fixed #20039 -- Fixed has_changed form detection for required TypedChoiceFields
...
Thanks Florian Apolloner for the report and the review.
Also fixes #19643 .
2013-03-14 14:49:07 +01:00
Anssi Kääriäinen
6b4834952d
Fixed #16649 -- Refactored save_base logic
...
Model.save() will use UPDATE - if not updated - INSERT instead of
SELECT - if found UPDATE else INSERT. This should save a query when
updating, but will cost a little when inserting model with PK set.
Also fixed #17341 -- made sure .save() commits transactions only after
the whole model has been saved. This wasn't the case in model
inheritance situations.
The save_base implementation was refactored into multiple methods.
A typical chain for inherited save is:
save_base()
_save_parents(self)
for each parent:
_save_parents(parent)
_save_table(parent)
_save_table(self)
2013-03-14 11:01:47 +02:00
Florian Apolloner
22b7870e40
Began implementing a shared set of test models to speed up tests.
2013-03-13 23:25:26 +01:00
Jacob Kaplan-Moss
1059da8de6
Merge pull request #900 from bmispelon/ticket-20022
...
Fix #20022 : Correctly handle prefixes with url-unsafe characters in reverse()
2013-03-13 22:39:25 +01:00
Baptiste Mispelon
4fa7f3cdd9
Fix #20022 : Correctly handle prefixes with url-unsafe characters in reverse().
2013-03-13 18:19:29 +01:00
Aymeric Augustin
83a416f5e7
Made atomic usable when autocommit is off.
...
Thanks Anssi for haggling until I implemented this.
This change alleviates the need for atomic_if_autocommit. When
autocommit is disabled for a database, atomic will simply create and
release savepoints, and not commit anything. This honors the contract of
not doing any transaction management.
This change also makes the hack to allow using atomic within the legacy
transaction management redundant.
None of the above will work with SQLite, because of a flaw in the design
of the sqlite3 library. This is a known limitation that cannot be lifted
without unacceptable side effects eg. triggering arbitrary commits.
2013-03-13 15:17:40 +01:00
Anssi Kääriäinen
bd0cba58aa
Fixed failing aggregation tests on MySQL
2013-03-13 12:44:24 +02:00
Anssi Kääriäinen
d3f00bd570
Refactored qs.add_q() and utils/tree.py
...
The sql/query.py add_q method did a lot of where/having tree hacking to
get complex queries to work correctly. The logic was refactored so that
it should be simpler to understand. The new logic should also produce
leaner WHERE conditions.
The changes cascade somewhat, as some other parts of Django (like
add_filter() and WhereNode) expect boolean trees in certain format or
they fail to work. So to fix the add_q() one must fix utils/tree.py,
some things in add_filter(), WhereNode and so on.
This commit also fixed add_filter to see negate clauses up the path.
A query like .exclude(Q(reversefk__in=a_list)) didn't work similarly to
.filter(~Q(reversefk__in=a_list)). The reason for this is that only
the immediate parent negate clauses were seen by add_filter, and thus a
tree like AND: (NOT AND: (AND: condition)) will not be handled
correctly, as there is one intermediary AND node in the tree. The
example tree is generated by .exclude(~Q(reversefk__in=a_list)).
Still, aggregation lost connectors in OR cases, and F() objects and
aggregates in same filter clause caused GROUP BY problems on some
databases.
Fixed #17600 , fixed #13198 , fixed #17025 , fixed #17000 , fixed #11293 .
2013-03-13 10:44:49 +02:00
Anssi Kääriäinen
d744c550d5
Fixed #19964 -- Removed relabel_aliases from some structs
...
Before there was need to have both .relabel_aliases() and .clone() for
many structs. Now there is only relabeled_clone() for those structs
where alias is the only mutable attribute.
2013-03-12 21:33:47 +02:00
Aymeric Augustin
885d98d24a
Fixed #20028 -- Made atomic usable on callable instances.
...
Thanks Anssi for the report.
2013-03-12 10:52:16 +01:00
Aymeric Augustin
f8a634afa2
Fixed tests that relied on MANAGERS not being empty.
...
Regression in d0561242
.
2013-03-11 23:30:02 +01:00
Jacob Kaplan-Moss
d056124269
Remove a special case for comment tests from runtests.py.
2013-03-11 15:38:53 -05:00
Aymeric Augustin
b746f8a9e3
Adjusted query counts to account for new savepoints.
2013-03-11 21:07:19 +01:00
Aymeric Augustin
55a9be8ecf
Ran a test that closes the database connection outside of a transaction.
2013-03-11 19:42:59 +01:00
Claude Paroz
9b74a8391d
Removed forced settings in runtests
...
Tests that require USE_I18N, LOGIN_URL or certain MIDDLEWARE_CLASSES
should be decorated appropriately.
2013-03-11 17:46:56 +01:00
Aymeric Augustin
e654180ce2
Improved the API of set_autocommit.
2013-03-11 15:10:58 +01:00
Aymeric Augustin
86fd920f67
Removed a test that no longer makes any sense.
...
Since unmanaged == autocommit, there's nothing to commit or roll back.
2013-03-11 15:05:04 +01:00