Commit Graph

8022 Commits

Author SHA1 Message Date
Anssi Kääriäinen 4e7f04cdad [py3] Fixed file.read().decode(), used codecs.open() instead 2012-08-14 16:09:01 +03:00
Anssi Kääriäinen 62a9ed0ac7 [py3] Fixed F-expression division operators
In Python 3 dividing by int will call obj.__truediv__(). This operator
was missing from F-expressions.
2012-08-14 16:07:32 +03:00
Claude Paroz c2d59e5564 [py3] Fixed admin_views tests
Also changed several occurrences of 'request' to 'response'.
2012-08-14 14:45:28 +02:00
Aymeric Augustin 0c198b85a3 [py3] Replace filter/lambda by list comprehensions
This is more idiomatic and avoids returning a list on Python 2 and
an iterator on Python 3.
2012-08-14 14:31:06 +02:00
Aymeric Augustin 9299dc42ed [py3] Removed unnecessary calls to .keys()
when computing the length of a dictionary. This fails on Python 3.
2012-08-14 14:09:23 +02:00
Aymeric Augustin 2ae58b20ec [py3] Fixed egg template loader. 2012-08-14 12:29:53 +02:00
Aymeric Augustin faf570df18 [py3] Compared response.content with bytes. 2012-08-14 12:29:53 +02:00
Claude Paroz d1452f6097 [py3] Favoured unicode strings in assert(Not)Contains
In Python 3, HTMLParser does not support bytestrings.
2012-08-14 12:19:17 +02:00
Aymeric Augustin e04230e2e4 [py3] Ported django.http according to PEP 3333.
Perfomed some style cleanup while I was in the area.
2012-08-14 10:32:16 +02:00
Claude Paroz 0df0cf70d4 Reverted pickle-json replacement form_hmac calculation
This reverts commit b109ff8062 and
complement test cases. The change was too hasty, as some form
values cannot be json-serialized as is.
2012-08-14 09:51:39 +02:00
Claude Paroz 363dbd920e [py3] Fixed contrib.formtools tests 2012-08-13 21:26:12 +02:00
Claude Paroz a025b75f6c [py3] Fixed iterlists usage in QueryDict 2012-08-13 21:25:27 +02:00
Claude Paroz b109ff8062 Replaced pickle by json in form_hmac calculation
Refs #18340
2012-08-13 21:02:18 +02:00
Claude Paroz 0dac73ebd7 Removed binary flag to open files for writing text content 2012-08-13 18:23:26 +02:00
Claude Paroz 45baaabafb [py3] Fixed encoding issues in cache key generation 2012-08-13 12:56:59 +02:00
Claude Paroz d774ad752d [py3] Made csrf context processor return Unicode 2012-08-13 11:54:21 +02:00
Claude Paroz 5e958b958b [py3] Avoided comparison with None value in formsets 2012-08-13 11:54:13 +02:00
Claude Paroz a06503d09b [py3] Fixed content encoding in test client
Thanks Andrews Medina for the initial patch.
2012-08-13 09:56:14 +02:00
Anssi Kääriäinen 1930b899bd Refix #13844 -- Made FloatField aggregates work on Python 2.6 + Postgres
Fixed a regression introduced in 59a655988e.
2012-08-13 09:15:20 +03:00
Claude Paroz 8a1f439d3a [py3] Fix encoding issues in contrib.sessions 2012-08-12 22:49:10 +02:00
Claude Paroz ac37c9e495 [py3] Encoded value before feeding it to hashlib.md5 2012-08-12 22:49:10 +02:00
Andrei Antoukh 99321e30ce Fixed #18306 -- Made deferred models issue update_fields on save
Deferred models now automatically update only the fields which are
loaded from the db (with .only() or .defer()). In addition, any field
set manually after the load is updated on save.
2012-08-12 22:39:27 +03:00
Anssi Kääriäinen 59a655988e Fixed #13844 -- Avoid converting unknown db values to float
This patch removes an unconditional float(value) conversion from db
backend default convert_values() method. This can cause problems when
aggregating over character fields for example. In addition, Oracle
and SQLite already return the bare value from their convert_values().

In the long term the converting should be done by fields, and the
fields should then call database backend specific converters when
needed. The current setup is inflexible for 3rd party fields.

Thanks to Merlijn van Deen for the original patch.
2012-08-12 21:52:52 +03:00
Claude Paroz 5513480fe1 [py3] Always convert values from sqlite3 to unicode strings
Thanks Aymeric Augustin for the review.
2012-08-12 20:47:18 +02:00
Claude Paroz dce34dc969 [py3] Made __repr__ return str with Python 3 2012-08-12 20:45:39 +02:00
Anssi Kääriäinen c1684e3dcb Fixed #18731 -- Cleaned up split_exclude's use of can_reuse
The outer query's set of reusable joins (can_reuse) was passed to the
inner query's add_filter call. This was incorrect.
2012-08-12 21:40:22 +03:00
Aymeric Augustin 4e68e86153 [py3] Deprecated StrAndUnicode.
This mix-in is superseded by the @python_2_unicode_compatible decorator.
2012-08-12 14:44:41 +02:00
Aymeric Augustin d4a0b27838 [py3] Refactored __unicode__ to __str__.
* Renamed the __unicode__ methods
* Applied the python_2_unicode_compatible decorator
* Removed the StrAndUnicode mix-in that is superseded by
  python_2_unicode_compatible
* Kept the __unicode__ methods in classes that specifically
  test it under Python 2
2012-08-12 14:44:40 +02:00
Aymeric Augustin 79d62a7175 [py3] Added fixer for python_2_unicode_compatible.
This doesn't deal with classes that define both __unicode__ and
__str__; the definition of __str__ should be removed first. It
doesn't guarantee that __str__ will return a str (rather than bytes)
under Python 3 either.
2012-08-12 14:44:40 +02:00
Aymeric Augustin a0a0203a39 [py3] Added python_2_unicode_compatible decorator. 2012-08-12 14:44:40 +02:00
Aymeric Augustin e7e08fd48b [py3] Replaced some __str__ methods by __unicode__
These methods actually return unicode.
2012-08-12 14:44:40 +02:00
Aymeric Augustin 2bb2eecb63 [py3] Removed redundant __str__ methods.
These classes already have an identical __unicode__ method, which
will be used after an upcoming refactoring.
2012-08-12 14:44:40 +02:00
Aymeric Augustin dbb63e56ea [py3] Avoided returning bytes in Model.__str__
on Python 3.
2012-08-12 14:44:40 +02:00
Karen Tracey 759ae3c2da Fixed #18739 -- witdthratio behavior on None args
Made behavior given None consistent with how non-numerics were handled.
Thanks to ja.geb@me.com for the report.
2012-08-11 19:24:18 -04:00
Claude Paroz 15fffcc751 [py3] Fixed reraising of exceptions
reraise with second argument to None is not supported.
2012-08-11 23:46:23 +02:00
Claude Paroz 900816464d [py3] Re-decoded string after idna encoding 2012-08-11 23:23:31 +02:00
Claude Paroz 7d0f883192 [py3] Fixed JSON deserialization 2012-08-11 23:23:31 +02:00
Karen Tracey b82eb10b26 Fixed #18754 -- cache keys created by post_process
Corrected to always generate the cache keys from file names with
forward slashes, not backslashes.
2012-08-11 17:05:26 -04:00
Claude Paroz 09c589810d [py3] Used smart_str to prevent regressions in http handling 2012-08-11 15:29:29 +02:00
Claude Paroz f10a1b0641 [py3] Fixed Python 3 compatibility of http handling
* Using str() when Python 2 expects bytes and Python 3 Unicode
* Fixed reraise-ing syntax
* Fixed slicing of byte strings
2012-08-11 14:47:44 +02:00
Claude Paroz 22527a821b [py3] Fixed str_prefix test utility 2012-08-11 14:22:28 +02:00
Andrews Medina 87e0a75c03 [py3] Decoded base64-encoded hash in contrib.auth.hashers 2012-08-11 00:20:59 +02:00
Claude Paroz 92b2dec918 [py3] Made signing infrastructure pass tests with Python 3 2012-08-10 18:07:46 +02:00
Claude Paroz 751774c29f [py3] Fixed mail tests with Python 3 2012-08-09 20:13:29 +02:00
Alex Gaynor 5f8da527ab [py3k] use the base64 module, instead of bytes.encode('base64') 2012-08-09 07:26:11 -07:00
Aymeric Augustin 5c09c59bc7 [py3] Renamed `next` to `__next__` in iterators.
See PEP 3114. `next` is retained as an alias for Python 2.
2012-08-09 14:36:05 +02:00
Claude Paroz 96a6912ec5 [py3] Fixed compilemessages tests 2012-08-08 23:40:20 +02:00
Claude Paroz 180b672a65 [py3] Fixed Python 3 compatibility in localflavor forms 2012-08-08 23:22:27 +02:00
Claude Paroz e0988ecd1e [py3] Made Element instances hashable 2012-08-08 23:13:33 +02:00
Claude Paroz b8e49d70f2 [py3] Replaced raw_input by input
The six addition has been borrowed from:
https://bitbucket.org/gutworth/six/changeset/733ef740
2012-08-08 19:53:11 +02:00
Claude Paroz db729266d6 [py3] Fixed 'iterable but non string' detection
In Python 3, the str type has an __iter__ attribute. Therefore, the
presence of an __iter__ attribute is not sufficient to distinguish
'standard' iterables (list, tuple) from strings.
2012-08-08 18:02:25 +02:00
Alex Gaynor 7515f6576b Fix TestCase.assertQuerysetEqual on python 3, this is needed for a large number of tests 2012-08-08 07:37:10 -07:00
Alex Gaynor 4c97101b1f remove a bunch of unnescesarry iterkeys() calls 2012-08-08 07:33:15 -07:00
Claude Paroz 576ec12f8e [py3] Replaced __nonzero__ by __bool__
Of course, __nonzero__ alias has been kept for Python 2 compatibility.
2012-08-08 15:02:31 +02:00
Aymeric Augustin 12cda89ffe [py3] Fixed a loop that changed dictionary size. 2012-08-08 15:00:24 +02:00
Claude Paroz 2da3af23aa [py3] Made gis.measure Python 3-compatible 2012-08-08 14:43:16 +02:00
Aymeric Augustin fa4cb34817 [py3] Fixed filesystem encoding handling
in the app directories template loader.
2012-08-08 13:07:49 +02:00
Aymeric Augustin a4abe7ed56 [py3] abspathu doesn't exist under Python 3. 2012-08-08 12:56:12 +02:00
Aymeric Augustin bf4da7a442 [py3] Made a small fix in django.http.
This is necessary for the 'utils' tests to pass.
2012-08-07 12:00:24 +02:00
Aymeric Augustin 9e0a10ba77 [py3] Minor fix in django.contrib.gis. 2012-08-07 12:00:24 +02:00
Aymeric Augustin 64e2e35627 [py3] Ported django.utils.tzinfo. 2012-08-07 12:00:24 +02:00
Aymeric Augustin 9e8df02d68 [py3] Ported django.utils.translation. 2012-08-07 12:00:24 +02:00
Aymeric Augustin 17da0aa893 [py3] Ported django.utils.regex_helper. 2012-08-07 12:00:24 +02:00
Aymeric Augustin fe8484efda [py3] Ported django.utils.functional. 2012-08-07 12:00:23 +02:00
Aymeric Augustin 7e01e532c0 [py3] Ported django.utils.feedgenerator. 2012-08-07 12:00:23 +02:00
Aymeric Augustin 127b461b11 [py3] Ported django.utils.crypto. 2012-08-07 12:00:23 +02:00
Aymeric Augustin 13338a6314 [py3] Minor cleanup in django.utils.archive. 2012-08-07 12:00:23 +02:00
Aymeric Augustin 67646dc28d [py3] Ported django.test.doctest.
Based on Vinay Sajip's branch.
2012-08-07 12:00:22 +02:00
Aymeric Augustin a8b3ddec5f [py3] Applied minor fixes so the test suite starts 2012-08-07 12:00:22 +02:00
Aymeric Augustin c5ef65bcf3 [py3] Ported django.utils.encoding.
* Renamed smart_unicode to smart_text (but kept the old name under
  Python 2 for backwards compatibility).
* Renamed smart_str to smart_bytes.
* Re-introduced smart_str as an alias for smart_text under Python 3
  and smart_bytes under Python 2 (which is backwards compatible).
  Thus smart_str always returns a str objects.
* Used the new smart_str in a few places where both Python 2 and 3
  want a str.
2012-08-07 12:00:22 +02:00
Aymeric Augustin ee191715ea [py3] Fixed access to dict keys/values/items. 2012-08-07 12:00:22 +02:00
Alex Gaynor ede49c7ee0 Fixed #15754 -- avoid recursively computing the tree of media widgets more times than is necessary for a wiget 2012-08-06 07:59:59 -07:00
Brendan MacDonell ad237fb72f Fixed #18724 -- Fixed IntegerField validation with value 0 2012-08-06 10:42:21 +02:00
Justin Bronn 1c3464e809 Fixed testing on SpatiaLite 2.4, which has support for `InitSpatialMetaData`. 2012-08-04 18:10:34 -07:00
Tim Graham 86c5c0154f Fixed a mistake in function documentation 'django.utils.functional.partition'
Thanks Raman Barkholenka for the patch.
2012-08-04 18:56:43 -04:00
Claude Paroz 09a719a4e6 Fixed #7833 -- Improved UserCreationForm password validation
Make UserCreationForm password validation similar to
SetPasswordForm and AdminPasswordChangeForm, so as the match
check is only done when both passwords are supplied.
Thanks Mitar for the suggestion.
2012-08-04 14:55:13 +02:00
Claude Paroz 121fd109de Fixed #5524 -- Do not remove cleaned_data when a form fails validation
cleaned_data is no longer deleted when form validation fails but only
contains the data that did validate.
Thanks to the various contributors to this patch (see ticket).
2012-08-04 14:22:23 +02:00
Simon Meers 10f979fd92 Fixed #18700 -- Added URL reversal for i18n set_language view. 2012-08-04 20:57:12 +10:00
Aymeric Augustin d01eaf7104 [py3] Removed uses of sys.maxint under Python 3.
Also fixed #18706: improved exceptions raised by int_to_base36.
2012-08-03 18:51:28 +02:00
Alex Gaynor 129f1ac848 Remove a temporary variable deletion, it's not a big deal and it doesn't exist on python3. 2012-08-03 07:10:04 -07:00
Claude Paroz 9908201d7f Replaced some byte strings by str() calls
This is a useful trick when Python 2 awaits byte strings and
Python 3 Unicode (regular) strings.
2012-08-03 15:18:13 +02:00
Claude Paroz 2407c45c18 Removed some pre-1.3.0 postgis compatibility code 2012-08-03 11:27:31 +02:00
Claude Paroz c5d6f6d682 Reorganized geoapp gis tests
Removed the numbering of tests and moved lookup/geoqueryset tests
in their own test class.
2012-08-03 10:53:30 +02:00
Claude Paroz a55cde8ab1 Fixed #18363 -- Improved Galician date and time format strings
Thanks Guttorm Flatabø for the report and the initial patch, and
Fran Dieguez for the review.
2012-08-03 09:35:39 +02:00
Claude Paroz 8fbfd21719 Fixed #18684 -- Added Finnish DATETIME_FORMAT
Thanks Guttorm Flatabø for the report and the initial patch.
2012-08-03 09:26:11 +02:00
Florian Apolloner 4129201c3e Fixed a security issue in http redirects. Disclosure and new release forthcoming. 2012-07-30 22:01:50 +02:00
Florian Apolloner b1d4634686 Fixed second security issue in image uploading. Disclosure and release forthcoming. 2012-07-30 21:57:22 +02:00
Florian Apolloner dd16b17099 Fixed a security issue in image uploading. Disclosure and release forthcoming. 2012-07-30 21:54:29 +02:00
Alex Gaynor e567f439bd Merge pull request #225 from dekkers/remove-double-isinstance-check
Remove double isinstance check in force_unicode
2012-07-29 17:07:55 -07:00
Aymeric Augustin ab6cd1c839 [py3] Updated dict-like data structures for Python 3.
The keys/items/values methods return iterators in Python 3, and the
iterkeys/items/values methods don't exist in Python 3. The behavior
under Python 2 is unchanged.
2012-07-25 22:58:48 +02:00
Florian Apolloner 4b5cb116e3 Fixed error message in detail generic view.
Thanks go to mitar for the report and the patch.
2012-07-25 22:46:57 +02:00
Marc Tamlyn a875f612e0 Fixed #18634 -- Don't escape variables in the context for startproject/startapp.
The & symbols which can come up in the secret key were
being escaped to &.
2012-07-25 22:24:41 +02:00
Florian Apolloner 59d99772f0 Merge pull request #216 from ljosa/ticket_18644
Fixed #18644 -- Made urlize trim trailing period followed by parenthesis
2012-07-25 13:22:49 -07:00
Alex Gaynor 5ee8c3ef0c Merge pull request #230 from pjdelport/cleanup
Cleanup
2012-07-25 13:07:10 -07:00
Aymeric Augustin f3c9a16a42 Fixed QueryDict.setlistdefault.
It was broken by a seemingly innocuous change in MultiValueDict.
Document the pitfall for now. This is fragile and should be
considered for refactoring.
2012-07-25 19:10:40 +02:00
Aymeric Augustin 942818e1b3 Rolled back a unnecessary change in 8f002867b2.
This keeps the implementation of setdefault and setlistdefault
consistent. Also it's marginally faster than looking up the value
again.
2012-07-25 10:16:35 +02:00
Alex Gaynor ace9ccfe9f Fixed #18666 -- when upgrading a user's password to a new algorithm only save the password field to the databaes. 2012-07-24 19:03:26 -07:00
Piet Delport 487b92a13c it's -> its 2012-07-25 01:21:15 +02:00
Ramiro Morales f758bdab5e Fixed #18271 -- Changed stage at which TransactionTestCase flushes DB tables.
Previously, the flush was done before the test case execution and now
it is performed after it.

Other changes to the testing infrastructure include:

* TransactionTestCase now doesn't reset autoincrement sequences either
  (previous behavior can achieved by using `reset_sequences`.)
  With this, no implicit such reset is performed by any of the provided
  TestCase classes.

* New ordering of test cases: All unittest tes cases are run first and
  doctests are run at the end.

THse changes could be backward-incompatible with test cases that relied
on some kind of state being preserved between tests. Please read the
relevant sections of the release notes and testing documentation for
further details.

Thanks Andreas Pelme for the initial patch. Karen Tracey and Anssi
Kääriäinen for the feedback and Anssi for reviewing.

This also fixes #12408.
2012-07-24 17:24:16 -03:00
Alex Gaynor 38ce709fe4 Added tests for deprecation warnings and fixed the argument order for the warnings. 2012-07-24 07:01:57 -07:00
Jeroen Dekkers 226a3e7e00 Remove double isinstance check in force_unicode 2012-07-24 00:45:40 +02:00
Aymeric Augustin ae4125ffce Removed a Python 3-compatibility hack.
Thanks Preston Holmes for the patch.
2012-07-23 13:48:04 +02:00
Claude Paroz 690cabe203 Used a Python 3-compatible syntax for building a translation table 2012-07-22 18:05:53 +02:00
Aymeric Augustin a84d79f572 [py3] Added Python 3 compatibility for xrange. 2012-07-22 09:29:56 +02:00
Aymeric Augustin ca07fda2ef [py3] Switched to Python 3-compatible imports.
xrange/range will be dealt with in a separate commit due to the huge
number of changes.
2012-07-22 09:29:56 +02:00
Aymeric Augustin 0d914d08a0 [py3] Updated urllib/urllib2/urlparse imports.
Lots of functions were moved. Use explicit imports in all cases
to keey it easy to identify where the functions come from.
2012-07-22 09:29:55 +02:00
Aymeric Augustin bdca5ea345 [py3] Replaced unicode/str by six.text_type/bytes. 2012-07-22 09:29:54 +02:00
Aymeric Augustin 3cb2457f46 [py3] Replaced basestring by six.string_types. 2012-07-22 09:29:54 +02:00
Aymeric Augustin cacd845996 [py3] Fixed remaining Python 3 syntax errors.
django.utils.unittest.* weren't touched -- they're only imported on Python 2.6.
2012-07-22 09:29:53 +02:00
Aymeric Augustin 56dbe924a6 [py3] Removed longs. 2012-07-22 09:29:53 +02:00
Aymeric Augustin f1d5dc81ac [py3] Switched to Python 3-compatible introspection. 2012-07-22 09:29:53 +02:00
Aymeric Augustin d11d45aad9 [py3] Used six.with_metaclass wherever necessary. 2012-07-22 09:29:52 +02:00
Aymeric Augustin 7fa51a24a8 [py3] Exception aren't iterable in Python 3. 2012-07-22 09:29:52 +02:00
Aymeric Augustin d796c94b03 [py3] Used six.reraise wherever necessary. 2012-07-22 09:29:52 +02:00
Aymeric Augustin 473d5f4ba1 [py3] Fixed django.utils.six.moves.
It didn't work because six was inside django.utils.
2012-07-22 09:29:51 +02:00
Aymeric Augustin 8b01909841 [py3] Bundled six for Python 3 compatibility.
Refs #18363.
2012-07-22 09:29:44 +02:00
Julien Phalip 01c392623d Fixed #10057 -- Ensured that the 'show_delete' context variable in the admin's change view actually controls the display of the delete button. Thanks to rajeesh for the report, to patcoll for the patch, and to David Gouldin for the test. 2012-07-21 18:10:24 -07:00
Ramiro Morales ea667ee3ae Made LiveServerTestCase to restore state on exit.
The piece of state is DB connections' allow_thread_sharing attribute
which gets munged test are run when in-memory SQLite databases.

Thanks Anssi for suggesting the possible root cause and Julien for
implementing the fix.
2012-07-21 20:16:47 -03:00
Julien Phalip 2b6644388f Fixed an `except` statement to be Python3-compatible. Thanks to charettes for the tip. 2012-07-21 15:13:55 -07:00
Aymeric Augustin 4ceb9db9d8 Removed u prefix on a unicode string. 2012-07-21 22:38:25 +02:00
Julien Phalip 1af0271d7c Fixed #6170 -- Ensured that a useful exception is raised when a regex is invalid in the URLConf.
Thanks to abrahamson.j for the report, to guettli for initial work on the patch, and to David Gouldin for the new patch and test.
2012-07-21 13:30:34 -07:00
Claude Paroz 423244bc6b Fixed #4680 -- Improved initial_sql parsing
In particular, allow the '--' sequence to be present in string
values without being interpreted as comment marker.
Thanks Tim Chase for the report and shaleh for the initial patch.
2012-07-21 14:24:29 +02:00
Claude Paroz 32a4df6c55 Fixed #18395 -- Reset language-related global variables with setting_changed 2012-07-21 13:49:07 +02:00
Aymeric Augustin 38c18f1747 Switched to octal notation (bis). 2012-07-20 13:42:44 +02:00
Aymeric Augustin 324d48d0a7 Switched to Python 3-compatible octal notation. 2012-07-20 13:28:36 +02:00
Aymeric Augustin 5d560dcb98 Fixed #18504 -- Computed |naturalday in local time. 2012-07-19 23:02:22 +02:00
Aymeric Augustin 123362dd37 Fixed #18608 -- Reduced monkey-patching in tests.
Thanks Claude Paroz for the patch.
2012-07-19 20:02:20 +02:00
Claude Paroz c54905b359 Fixed #18479 -- Stopped makemessages raising error on gettext warnings
Thanks Niels Busch for the initial patch.
2012-07-18 20:43:35 +02:00
Aymeric Augustin 1e89a208d0 Fixed #18645 -- Clarified filesizeformat implementation
Thanks Jérôme Renard for the patch.
2012-07-18 15:01:12 +02:00
Claude Paroz 8184aff2b0 Fixed #18547 -- Improved error message when gettext is missing 2012-07-17 22:04:47 +02:00
Claude Paroz 23f94f0741 Fixed #18561 -- Made HttpResponse.tell() support non-ascii chars 2012-07-17 22:00:54 +02:00
Alex Gaynor 110c729309 Merge pull request #215 from mgrouchy/add-interpreter-options
Adds interpreter option to shell command as per ticket #18639
2012-07-17 11:04:59 -07:00
Mike Grouchy f2abfe1e48 Adds interpreter option to shell command as per ticket #18639
Specify python interpreter interface ipython or bpython with the -i,
--interface options
argument.
 ex// python manage.py shell -i bpython
 ex// python manage.py shell --interface bpython

Like all other options, defaults to default python interpreter when your
selected choice isn't available.

updated documentation where appropriate
2012-07-17 13:45:35 -04:00
Vebjorn Ljosa d5012d6371 Fixed #18644 -- Made urlize trim trailing period followed by parenthesis 2012-07-17 12:44:02 -04:00
Alex Gaynor 52df0d50b0 Switched to use a more idiomatic construct. 2012-07-17 07:01:01 -07:00
Anssi Kääriäinen 29132ebdef Fixed #17788 -- Added batch_size argument to qs.bulk_create()
The qs.bulk_create() method did not work with large batches together
with SQLite3. This commit adds a way to split the bulk into smaller
batches. The default batch size is unlimited except for SQLite3 where
the batch size is limited to 999 SQL parameters per batch.

Thanks to everybody who participated in the discussions at Trac.
2012-07-17 15:24:41 +03:00
Anssi Kääriäinen fcad6c48f0 Fixed #17497 -- Corrected FieldError message in add_fields()
The erroneous message was user visible in values_list() calls.

Thanks to ojii for report and review, and to antoviaque for the patch.
2012-07-17 12:49:46 +03:00
Anssi Kääriäinen aeda55e6bf Fixed #3881 -- skip saving session when response status is 500
Saving session data is somewhat likely to lead into error when the
status code is 500. It is guaranteed to lead into error if the reason
for the 500 code is query error on PostgreSQL.
2012-07-16 20:57:55 +03:00
Nuno Maltez bebbbb7af0 Fixed #18056 - Cleared aggregations on DateQuery.add_date_select
Cleared aggregations on add_date_select method so only distinct dates
are returned when dealing with a QuerySet that contained aggregations.
That would cause the query set to return repeated dates because it
would look for distinct (date kind, aggregation) pairs.
2012-07-16 19:52:31 +03:00
Claude Paroz 35ddeee455 Removed debugging line left in previous commit 2012-07-15 21:19:23 +02:00
Claude Paroz cdcdd131da Dropped support for GDAL < 1.5
GDAL 1.5 has been released in December 2007.
2012-07-15 21:10:32 +02:00
Alex Gaynor c57abd3c29 Remove DotExpandedDict, which was undocumented and unused. 2012-07-14 19:04:37 -07:00
Alex Gaynor 0f57935bcd Fix an incredibly emberassing typo. 2012-07-14 17:08:52 -07:00
Alex Gaynor 8b3c2f2c51 Deprecate two methods (which I seriously doubt anyone ever used, but they were documented so...) because they cannot be implemented efficiently on top of collections.SortedDict in Python 2.7 and up. 2012-07-14 16:08:42 -07:00
Alex Gaynor 9877d25dc6 Switched from usign a method that was about to be deprecated to normal code. 2012-07-14 16:02:30 -07:00
Alex Gaynor 3e8d8bb094 Fixed auth to not use an internal implementation detail of SortedDict 2012-07-14 14:33:13 -07:00
Alex Gaynor 8f002867b2 Cleaned up the QueryDict implementation.
- Use super().
- Don't poke at internals.
- Don't override methods for no reason.
2012-07-14 14:07:11 -07:00
Aymeric Augustin 9a25d8618a Update links to diveintomark.org.
These pages are gone.
2012-07-14 12:32:39 +02:00
Alex Gaynor fb8ec2855b Remove some code that has been dead since newforms-admin was merged, many moons ago. 2012-07-12 09:27:08 -07:00
Alex Gaynor 76d5daa60f Changed `manage.py shell`'s help text to reflect that it can invoke bpython. 2012-07-10 14:26:42 -07:00
Claude Paroz 828f7b62e8 Fixed #18602 -- Improved error message when database NAME is missing
Thanks Kristian Glass for the report.
2012-07-10 13:22:55 +02:00
Claude Paroz d9db1d3373 Added supplementary check for CUIT number of ar localflavor
Thanks Kevin Schaul for the initial patch.
2012-07-09 14:10:54 +02:00
Claude Paroz 1d2982362d Fixed #18537 -- Fixed CUIT calculation in ar localflavor
Thanks mmoya at 8ksoft.com.ar for the report and Kevin Shaul for the
initial patch.
2012-07-09 14:10:54 +02:00
Claude Paroz 146aff3bac Fixed #18590 - Reverted Python 2.4 workaround for Model pickling
Revert of 08d521efa0. Refs #10547, #12121.
Thanks Michal Petrucha for the report.
2012-07-08 20:08:28 +02:00
Jannis Leidel 1aa0d8ac4d Fixed #18487 -- Made sure that protocol-relative URLs aren't processed by the cached staticfiles storage. Thanks to LukaszBalcerzak for the patch. 2012-07-08 18:25:12 +02:00
Jannis Leidel 3047981517 Fixed #18050 -- Fixed a rather glaring bug in the handling of @import statements when using the cached staticfiles storage. 2012-07-08 18:17:53 +02:00
Jannis Leidel effc2cad95 Merge branch 'master' of github.com:django/django 2012-07-08 12:57:04 +02:00
Jannis Leidel 3727f6d096 Fixed #18430 -- Use the FILE_CHARSET setting when reading from a file during post processing with the cached staticfiles storage. Thanks to Brant Young for initial debugging. 2012-07-08 12:56:49 +02:00
Julien Phalip 8015593bc1 Fixed #17978 -- Fixed a minor layout issue when an inline contains a filter horizontal widget. Thanks to Aymeric Augustin for the report. 2012-07-07 15:41:04 -07:00
Florian Apolloner a4bb7dd552 Merge branch 'master' of github.com:django/django 2012-07-07 15:49:00 +02:00
Jannis Leidel 0a68a2994b Fixed #18254 -- Added ability to the static template tags to store the result in a contextt variable. Many thanks to Andrei Antoukh for the initial patch. 2012-07-07 15:30:25 +02:00
Florian Apolloner 52a9e15794 Fixed a regression in the user admin page introduced in a92e7f37c4.
a92e7f37c4 switched most of the internal stuff
to format_html. Using format_html in the `render` method of
`ReadOnlyPasswordHashWidget` caused it to generate `SafeString` instances.
Later these safe strings where returned from `BoundField.__unicode__` which
caused force_unicode to loose the "safe" information. This commit fixes that by
ensuring that the render method returns `SafeUnicode` instead of `SafeString`.
2012-07-07 15:29:20 +02:00
Claude Paroz 8dafd04c45 Fixed #17257 - Removed outdated comment in syndication view
Thanks krzysiumed for the patch.
2012-07-07 11:34:04 +02:00
Adrian Holovaty 8855f9380e Merge pull request #176 from benspaulding/ticket_18521
Add reST role to templates named in some view docs.
2012-07-06 12:46:26 -07:00
Guilherme Gondim 91e4f7effb Fix copyright holder 2012-07-06 15:24:07 -03:00
Luke Plant 2ba4278cb3 Fixed #18484 - 'display:none' on CSRF token div is redundant and causes problems with some browsers
Thanks to hedleyroos for the report
2012-07-06 15:33:29 +01:00
Luke Plant 8fdc56d2a6 Fixed #18572 - Python26 string format incompatibility
Thanks to anonymous/AeroNotix for the report
2012-07-06 00:23:02 +01:00
Anssi Kääriäinen d3c2eb103f Fixed #18330 - Made cache culling 3rd party db backend friendly
This is Ian Kelly's patch from #15580 with minor modifications.
2012-07-05 17:20:48 +03:00
Andrei Antoukh 0f49b2bce2 Fixed #18362 - Made model.save() update_fields accept attnames 2012-07-05 16:43:28 +03:00
Luke Plant a222d6e800 Fixed incorrect URL to object on delete confirmation and history page 2012-07-03 22:20:12 +01:00
Luke Plant b0eee0ba4b Removed various unnecessary instances of mark_safe applied to URLs
Also fixed some test breakages introduced in last commit
2012-07-03 22:20:12 +01:00
Luke Plant a92e7f37c4 Changed a lot of internal code to use 'format_html' where appropriate/possible 2012-07-03 22:20:12 +01:00
Luke Plant bee498f3a2 Added 'format_html' utility for formatting HTML fragments safely 2012-07-03 22:20:12 +01:00
Luke Plant f33e150369 Documented utils.html.escape and conditional_escape 2012-07-03 22:20:12 +01:00
Anssi Kääriäinen ab7f071058 Fixed comment wording in sql/where.py
Thanks to Simon Charette for noticing this.
2012-07-03 10:31:06 +03:00
Julien Phalip 2cd4cf58d3 Fixed #18550 -- Ensured that the admin history view works with escaped primary keys.
Thanks to josh.oosterman for the report and patch.
2012-07-01 18:40:50 -07:00
Anssi Kääriäinen e74787391e Fixed a regression introduced in where.as_sql() refactor
At least Oracle needs parentheses in negated where conditions, even if
there is only single condition negated. Fixed this by reverting to old
logic in that part of as_sql() and adding a comment about this.

I did not investigate why the parentheses are needed. The original
offending commit was bd283aa844.
2012-07-01 22:52:35 +03:00
Anssi Kääriäinen f572ee0c65 Fixed #16047 -- Restore autocommit state correctly on psycopg2
When the postgresql_psycopg2 backend was used with DB-level autocommit
mode enabled, after entering transaction management and then leaving
it, the isolation level was never set back to autocommit mode.

Thanks brodie for report and working on this issue.
2012-07-01 19:36:43 +03:00
Anssi Kääriäinen da573fbb41 Fixed some locations to work with autocommit=True
- backends: supports_transactions()
 - select_for_update tests
2012-07-01 19:27:36 +03:00
Anssi Kääriäinen bd283aa844 Refactored the empty/full result logic in WhereNode.as_sql()
Made sure the WhereNode.as_sql() handles various EmptyResultSet and
FullResultSet conditions correctly. Also, got rid of the FullResultSet
exception class. It is now represented by '', [] return value in the
as_sql() methods.
2012-07-01 17:21:34 +03:00
Anssi Kääriäinen 2b9fb2e644 Fixed #18251 -- Removed a deadlock possibility in apploading
Thanks to harm for the report and comments.
2012-07-01 16:14:27 +03:00
Claude Paroz da200c5e35 Fixed #16519 -- Deprecated mimetype kwarg of HttpResponse __init__
This keyword was already deprecated in the code (supported for
backwards compatibility only), but never formally deprecated.
Thanks Paul McMillan for the report and yasar11732 for the initial
patch.
2012-06-30 21:27:47 +02:00
Claude Paroz deed192dda Removed usage of mimetype kwarg of HttpResponse
Refs #16519.
2012-06-30 21:19:07 +02:00
Claude Paroz 2c2c8a6326 Isolated sitemaps test from ABSOLUTE_URL_OVERRIDES
Refs #15988.
2012-06-30 18:50:28 +02:00
Claude Paroz db87016b1a Fixed #12493 -- Deprecated auto-correction of TEMPLATE_DIRS 2012-06-30 15:06:42 +02:00
Claude Paroz 47da7b7a9a Fixed #18102 -- Defined min/max_length on French localflavor form fields
Thanks mothsART for the report and the initial patch.
2012-06-30 13:18:07 +02:00
Claude Paroz 26cb227cfe Fixed #15197 -- Fixed yaml serialization into HttpResponse
Thanks fourga38 for the report and hirokiky at gmail.com for the
initial patch.
2012-06-28 16:29:29 +02:00
Ben Spaulding 24dec9edaa Add reST role to templates named in some view docs.
This makes the templates link up correctly in the admindocs.
2012-06-26 21:45:45 -05:00
Josh Smeaton fa182e8ae8 Fixed #18465 -- Set date formats correctly on Oracle
Correctly configure NLS_SESSION_PARAMETERS to format Date and DateTime
on Oracle backend.

Thanks to Josh Smeaton for report & patch.
2012-06-26 19:39:14 +03:00
Claude Paroz 05d333ba3b Fixed #18515 -- Conditionally regenerated filename in FileField validation
When a FileField value has been saved, a new validation should not
regenerate a new filename when checking the length. Refs #9893.
2012-06-26 18:18:44 +02:00
Anssi Kääriäinen b6c356b7bb Fixed #17485 -- Made defer work with select_related
This commit tackles a couple of issues. First, in certain cases there
were some mixups if field.attname or field.name should be deferred.
Field.attname is now always used.

Another issue tackled is a case where field is both deferred by
.only(), and selected by select_related. This case is now an error.

A lot of thanks to koniiiik (Michal Petrucha) for the patch, and
to Andrei Antoukh for review.
2012-06-26 18:08:42 +03:00
Claude Paroz 5318783027 Fixed #17966 -- Isolated ProfileTestCase from custom AUTH_PROFILE_MODULE
Thanks Rob Golding for helping on the patch.
2012-06-25 20:26:17 +02:00
Claude Paroz 4b722b31e1 Fixed #16317 -- Fixed dumpdata for self-referencing models and natural keys
Thanks aldaran for the patch.
2012-06-24 19:54:56 +02:00
Alex Gaynor e0fce8706d Switch to using context managers for acquiring and releasing locks. 2012-06-23 08:11:15 -07:00
Alex Gaynor e1b74d0094 Don't use a list comprehension when we don't need the resulting list. 2012-06-23 07:54:45 -07:00
Dmitry Medvinsky d4da08375b Fixed #18454 -- Added ability to pass a list of signals to `receiver`.
Added ability to use receiver decorator in the following way:

    @receiver([post_save, post_delete], sender=MyModel)
    def signals_receiver(sender, **kwargs):
        ...
2012-06-23 16:31:16 +02:00
Florian Apolloner 7f225880e4 Corrected the `instance_dict` description for form wizards. 2012-06-22 15:46:49 +02:00
Florian Apolloner 6bc1b22299 Fixed our HTMLParser patches for python 2.7.4 2012-06-22 15:09:26 +02:00
Luke Plant a54a8bab0c Fixed #17776 - DoesNotExist is not picklable
Thanks to ambv for the report
2012-06-22 13:28:15 +01:00
Claude Paroz 41eb70f762 Fixed #15271 -- Defined a to_python method for GeometryField
Thanks volrath and copelco for their work on the patch.
2012-06-19 14:55:40 +02:00
danger 45a1a54b0b Added support for gdal 1.9. 2012-06-19 11:33:27 +02:00
Chris Beaven c57ba67331 Fixed #14502 again -- saner verbatim closing token
Previously, the closing token for the verbatim tag was specified as the
first argument of the opening token. As pointed out by Jannis, this is
a rather major departure from the core tag standard.

The new method reflects how you can give a specific closing name to
{% block %} tags.
2012-06-19 10:49:33 +12:00
Daniel Hepper aee9eecb92 Fixed #18444 -- Replace hard coded "View on Site" URLs 2012-06-18 18:12:29 +02:00
Daniel Hepper 108f8dddea Fixed #18450 -- Removed default values for i18n JavaScript URLs in Admin templates 2012-06-18 18:09:05 +02:00
Florian Apolloner ac1b9ae630 Fixed GIS testsuite.
Moved HAS_SPATIALREFSYS back into the tests namespace since it only operates
on the default database and isn't a global flag like HAS_GDAL.
2012-06-17 11:39:02 +02:00
Julien Phalip d708298184 Fixed #18420 -- Prevented the admin JS from crashing when the main form contains no field. Thanks to maciej.maciaszek for the report and patch. 2012-06-16 17:18:23 -07:00
Julien Phalip fadcc6ddb7 Updated the admin's minified JS files. 2012-06-16 16:23:39 -07:00
Julien Phalip 1ace912f7e Fixed #18477 -- Fixed colspan value when a TabularInline form contains validation errors. Thanks to yedpodtrzitko for the report and patch. 2012-06-16 14:29:41 -07:00
Julien Phalip 1794e36fa1 Skip GeometryFieldTest if there's no spacial database. 2012-06-16 13:57:33 -07:00
Claude Paroz 5bdd0d6b6a Favored text (StringIO) over binary content for deserialization
This is also more Python 3 compatible, as the json module in
Python 3 is expecting text. Thanks Vinay Sajip for noticing it.
2012-06-15 14:49:19 +02:00
Luke Plant fd6a9d35d9 IfParser.next() method renamed to avoid confusion with iterator protocol. 2012-06-14 23:12:15 +01:00
Luke Plant edee20ff50 Reverted part of 169b1a40 which was mistakenly applied to a non-iterator class.
Doing next(IfParser()) works for Python 2.7, because it calls
IfParser.next(), but in Python 3 will call IfParser.__next__() which does
not work since it is not an iterator and does not have that method.
2012-06-14 23:12:15 +01:00
Claude Paroz 023b70415b Executed SpatialRefSysTest only with spatial backend 2012-06-14 21:44:08 +02:00
Claude Paroz 88601bad84 Discovered some geodjango tests with standard mechanism
No need to special case tests discovery for regular first-level
gis tests.
2012-06-14 21:10:30 +02:00
Claude Paroz 4d46106f8c Fixed #17754 -- Refactored gis.measure
This refactoring does allow much easier MeasureBase subclassing.
Many thanks to Ricardo di Virgilio for the initial patch.
2012-06-14 15:32:42 +02:00
Claude Paroz fe873e2765 Fixed #12140 -- Fixed http.urlencode result for empty lists
Thanks aneil for the report and the initial patch.
2012-06-14 11:32:40 +02:00
Anssi Kääriäinen 86c20e39eb Fixed connection.queries encoding handling on Oracle
In addition, removed a possibly problematic .filter() call from
backends.test_query_encoding test. It is possible the .filter could
cause collation problems on MySQL, and as it wasn't absolutely needed
for the test it seemed better to get rid of the call.

Refs #18461.
2012-06-13 14:16:34 +03:00
Claude Paroz e9ef9776d1 Fixed #18461 -- Ensured that last_executed_query returns Unicode
Thanks Anssi Kääriäinen for the review.
2012-06-13 12:04:46 +02:00
Claude Paroz 35f9c2c07a Cleaned up locale-related encoding issues 2012-06-12 14:23:41 +02:00
Claude Paroz 3dd5d726d1 Fixed #18463 -- Forced type() argument to be a byte string 2012-06-11 22:14:06 +02:00
Jannis Leidel c4c7fbcc0d Fixed #18451 -- Vastly improved class based view documentation.
Many thanks to Daniel Greenfeld, James Aylett, Marc Tamlyn, Simon Williams, Danilo Bargen and Luke Plant for their work on this.
2012-06-11 10:40:23 +02:00
Claude Paroz 1a10a06b9f Fixed #18457 -- Fixed encoding error in yaml deserializer
Thanks jpaugh64 for the report.
2012-06-10 19:56:16 +02:00
Luke Plant e9497a3803 Corrected way to get URL of object in admin history template 2012-06-10 06:18:16 +01:00
Claude Paroz fc40a6504b Fixed #17159 -- Validated returned number of next|previous_page_number
Thanks mehta.apurva at gmail.com for the report and the initial patch
and neaf for the complete patch.
2012-06-09 17:55:24 +02:00
Claude Paroz ad47364dd3 Reverted 905e33f, now that DatabaseFeatures does not need confirm
Connection.features does not need to be confirmed any more, after
commit aa42357, rendering obsolete the workaround when using
TEST_MIRROR (Refs #16885, #17760).
2012-06-09 17:05:54 +02:00
Claude Paroz aa423575e7 Fixed #17760 -- Implemented callable database features as cached properties
This does remove the requirement to call features.confirm() method
before checking the properties.
Thanks cdestiger and Ramiro Morales for their work on the patch.
2012-06-09 15:59:52 +02:00
Anssi Kääriäinen 484fcd34a4 Fixed #16418 -- Made generic views work with ModelForms
Generic views assumed any object's _meta will be model Options. This
is not true for ModelForms for example. Took isinstance(obj, Model)
in use instead.
2012-06-09 01:12:14 +03:00
Anssi Kääriäinen a035d9d650 Cleaned whitespace errors introduced in previous commit 2012-06-08 23:52:43 +03:00
Simon Charette b6d533af4d Fixed #18399 – Added a way to get ContentTypes for proxy models
Added kwargs for_concrete_model and for_concrete_models to ContentType
methods get_for_model() and get_for_models(). By setting the flag to
False, it is possible to get the contenttype for proxy models.
2012-06-08 23:07:58 +03:00
Anssi Kääriäinen 90985048fc Used git log instead of git show for last commit's timestamp
The reason for this was that git show included the whole changeset in
the output, but only the UTC timestamp was needed. By using git log
it is possible to get just the timestamp. The whole changeset can be
large, and can cause unicode encoding errors.
2012-06-08 23:04:03 +03:00
Aymeric Augustin 23d230f058 Merge pull request #123 from apollo13/ticket18381
Fixed #18381 -- Stopped escaping object ids

when passing them to the contenttypes.shortcut view.

Thanks apollo13 for the patch and dhepper for the review.
2012-06-08 01:48:41 -07:00
Daniel Hepper 0ae727beda Fixed #18433 -- Fixed "View on Site" link in inline admin for models with custom PK 2012-06-07 21:08:36 +02:00
Jann Kleen 1a412dda62 Fixed #18432 -- Prevented the ForeignKey field from creating an invalid query when chained. Thanks, Jann Kleen. 2012-06-07 18:49:19 +02:00
Claude Paroz 5e6ded2e58 Fixed #18363 -- Added Python 3 compatibility layer.
Thanks Vinay Sajip for the support of his django3 branch
and Alex Gaynor, kezabelle, YorikSar for the review.
2012-06-07 18:36:53 +02:00
Claude Paroz 4a103086d5 Fixed #18269 -- Applied unicode_literals for Python 3 compatibility.
Thanks Vinay Sajip for the support of his django3 branch and
Jannis Leidel for the review.
2012-06-07 18:08:47 +02:00
Florian Apolloner e1643e3535 Don't escape object ids when passing to the contenttypes.shortcut view.
This commit also changes the string pk to string_pk instead of id, to test
if the admin uses .pk throughout the codebase.
2012-06-07 17:52:12 +02:00
Aymeric Augustin 17f3e9258e Fixed #18397 -- Avoided referencing lawrence.com.
This commit includes multiple small related changes, see the ticket
for a full discussion.
2012-06-07 11:50:20 +02:00
Claude Paroz 6fd1950a4e Fixed #10200 -- Raised CommandError when errors happen in loaddata. 2012-06-07 10:32:10 +02:00
Aymeric Augustin 4464bbba15 Fixed #14502 -- Added a verbatim template tag.
Thanks SmileyChris for the patch.
2012-06-07 09:59:14 +02:00
Luke Plant f5ce1793a8 Small cleanup in prefetch_related code 2012-06-06 14:19:06 +01:00
Luke Plant 4fea46a030 Fixed #18309 - Prefetch related does not work for fkey to multitable inherited model
Thanks to milosu for the report, tests and initial patch.
2012-06-06 14:17:32 +01:00
Claude Paroz f0664dc8ae Made TestNoInitialDataLoading pass with MySQL (Refs #15926) 2012-06-06 13:54:40 +02:00
Claude Paroz 70a0351fef Fixed #18184 -- Moved algorithm identification code to hashers module
Thanks Eli Collins for the report and the patch.
2012-06-06 11:06:33 +02:00
Claude Paroz eb286aa22f Delayed encoding of password and salt in password checking.
Applied the rule that string encoding should happen as late as
possible. This is also a preparation for Python 3 compatibility.
2012-06-06 10:53:16 +02:00
Claude Paroz 9c096ab981 Fixed #17328 -- Added OpenLayersWidget _has_changed method
Thanks Will Hardy for the report and the patch.
2012-06-06 10:42:14 +02:00
Claude Paroz 17824e2b74 Fixed #17736 -- Kept maximal floating-point accuracy in from_bbox
When constructing a polygon with Polygon.from_bbox, do not convert
parameters to strings at this stage (str defaults to 12 significant
digits).
Thanks tdihp@hotmail.com for the report and David Eklung for the patch.
2012-06-06 10:09:32 +02:00
Honza Kral fedac99c85 Fixed #15926 -- Added option --no-initial-data to syncdb and flush.
Thanks msiedlarek, jpaugh64 and vlinhart!
2012-06-05 16:46:15 +02:00
martin.bohacek eee791e9b2 Merge branch 'master' of https://github.com/django/django 2012-06-05 13:29:33 +02:00
martin.bohacek fbb7389439 Ticket #17804 fix. 2012-06-05 13:28:32 +02:00
Claude Paroz 5ef599c7b3 Used skipUnless decorator to skip tests in geos tests. 2012-06-04 20:39:54 +02:00