summaryrefslogtreecommitdiff
path: root/django/utils/functional.py
AgeCommit message (Collapse)Author
2015-02-09[1.8.x] Sorted imports with isort; refs #23860.Tim Graham
Backport of 0ed7d155635da9f79d4dd67e4889087d3673c6da from master
2015-02-08[1.8.x] Optimized allow_lazy() by not generating a new lazy wrapper on each ↵Alex Gaynor
invocation. This dramatically improves performance on PyPy. The following benchmark: python -mtimeit -s "from django.utils.functional import allow_lazy; from django.utils.translation import ugettext_lazy; f = allow_lazy(lambda s: s, str)" "f(ugettext_lazy('abc'))" goes from 390us per loop to 165us. Backport of 82e0cd15711c7171aed7af5e481967cc721c9642 from master
2015-02-03[1.8.x] Fixed #24252 -- Forced lazy __str__ to utf-8 on Python 2Claude Paroz
Thanks Stanislas Guerra for the report and Tomas Ehrlich for the review. Backport of cd0ceaa102 from master.
2014-12-26Fixed #23346 -- Fixed lazy() to lookup methods on the real object, not ↵Gavin Wahl
resultclasses. Co-Authored-By: Rocky Meza <rmeza@fusionbox.com>
2014-10-20Fixed #23688 -- Updated cached_property to preserve docstring of original ↵John-Scott Atlakson
function
2014-09-05Limited lines to 119 characters in django/Tim Graham
refs #23395.
2014-07-01Fixed #22691 -- Added aliasing to cached_property.Curtis
2014-03-13Simplified implementation of collectstatic command.Baptiste Mispelon
Since d2e242d16c6dde6f4736086fb38057424bed3edb made isinstance() calls work correctly on LazyObject, we can simplify the implementation of is_local_storage added in 7e27885c6e7588471fd94a4def16b7081577bdfc.
2014-03-13Fixed #21840 -- Moved dunder methods from SimpleLazyObject to LazyObject.Baptiste Mispelon
This commit also added tests for LazyObject and refactored the testsuite of SimpleLazyObject so that it can share test cases with LazyObject.
2014-03-08Fixed #21188 -- Introduced subclasses for to-be-removed-in-django-XX warningsClaude Paroz
Thanks Anssi Kääriäinen for the idea and Simon Charette for the review.
2014-03-03Fixed many typos in comments and docstrings.Rodolfo Carvalho
Thanks Piotr Kasprzyk for help with the patch.
2013-11-19Use `classmethod` as a decorator.xuxiang
2013-11-15Fixed the use of the -ise suffix, where -ize is preferedAlex Gaynor
2013-11-11Fix syntax error under Python 3.2.Aymeric Augustin
2013-11-11Fixed #21351 -- Replaced memoize with Python's lru_cache.Bouke Haarsma
Replaced the custom, untested memoize with a similar decorator from Python's 3.2 stdlib. Although some minor performance degradation (see ticket), it is expected that in the long run lru_cache will outperform memoize once it is implemented in C. Thanks to EvilDMP for the report and Baptiste Mispelon for the idea of replacing memoize with lru_cache.
2013-09-10Fixed #20841 -- Added messages to NotImplementedErrorsGregor MacGregor
Thanks joseph at vertstudios.com for the suggestion.
2013-09-02Replaced "not PY3" by "PY2", new in six 1.4.0.Aymeric Augustin
2013-08-19Merge remote-tracking branch 'core/master' into schema-alterationAndrew Godwin
Conflicts: docs/ref/django-admin.txt
2013-08-18Some code simplificationAlex Gaynor
2013-08-18Update LazyObject method proxy declarations to simpler form.Nick Bruun
2013-08-15Regression test and patch for ticket #20924.Nick Bruun
2013-07-22Merge branch 'master' into schema-alterationAndrew Godwin
Conflicts: django/db/backends/mysql/introspection.py django/db/backends/oracle/creation.py django/db/backends/postgresql_psycopg2/creation.py django/db/models/base.py django/db/models/loading.py
2013-07-14Fixed #20746 -- Removed Python 2.6 specific code/docsTim Graham
2013-06-07Merge remote-tracking branch 'core/master' into schema-alterationAndrew Godwin
Conflicts: django/db/models/fields/related.py
2013-05-21Imported copyreg from six.movesClaude Paroz
2013-05-21Fixed #20212 - __reduce__ should only be defined for Py3+.Daniel Lindsley
2013-05-19Fix proxy objects to respect !=Andrew Godwin
2013-04-19Fix != operations on lazy objects.Alex Gaynor
2013-03-18Fixed #19456 -- Avoid infinite recursion when tracing LazyObject.__init__.Aymeric Augustin
Thanks blaze33 for the patch.
2013-03-18Fixed #18447 -- Made LazyObject unwrap on dict access.Aymeric Augustin
Thanks Roman Gladkov and Zbigniew Siciarz.
2013-03-06PEP8 cleanup of functional.pyPreston Holmes
2013-03-06Fixed #19543 -- implemented SimpleLazyObject.__repr__Preston Holmes
Thanks to Florian Hahn for the patch
2013-02-25Fixed #19634 -- Added proper __hash__ methods.Aymeric Augustin
Classes overriding __eq__ need a __hash__ such that equal objects have the same hash. Thanks akaariai for the report and regebro for the patch.
2013-02-23Fixed #19872Tomek Paczkowski
Made cached_property to behave as property when accessed via class.
2013-01-30Fixed #19160 -- Made lazy plural translations usable.Aymeric Augustin
Many thanks to Alexey Boriskin, Claude Paroz and Julien Phalip.
2012-12-15Fixed a couple of docstring typos.Ramiro Morales
2012-10-26Properly support pickling of LazyObjects in Python 3.3Ian Clelland
2012-08-21Removed obsolete __members__ definitionsClaude Paroz
This was useful for pre-Python 2.6 support. See commit c6e8e5d9.
2012-08-07[py3] Ported django.utils.functional.Aymeric Augustin
2012-08-07[py3] Fixed access to dict keys/values/items.Aymeric Augustin
2012-08-04Fixed a mistake in function documentation 'django.utils.functional.partition'Tim Graham
Thanks Raman Barkholenka for the patch.
2012-07-22[py3] Replaced unicode/str by six.text_type/bytes.Aymeric Augustin
2012-05-18Got rid of old __cmp__methods replaced by rich comparison.Claude Paroz
The __cmp__ methods are unsupported in Python 3. _doctest.py has been left untouched because it is likely it will not be migrated to Python 3.
2012-05-07Fixed total_ordering for Python < 2.7.2Anssi Kääriäinen
The total_ordering in Python versions prior to 2.7.2 is buggy, and this caused infinite recursion for Field comparisons on those versions. Use the borrowed total_ordering for all Python versions prior to 2.7.2. The buggy total_ordering was introduced in commit 5cbfb48b92cb26a335f9c8c0f79d3390290103e2
2012-05-07Made model fields comparable to other objectsSimon Charette
Fixed #17851 -- Added __lt__ and @total_ordering to models.Field, made sure these work correctly on other objects than Field, too.
2012-01-08Try to save memory and time when using lazy objects by refering to their ↵Alex Gaynor
function via the closure, and not making it an attribute on each instance. git-svn-id: http://code.djangoproject.com/svn/django/trunk@17360 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-12-15Fixed #16563 - Error pickling request.userLuke Plant
Thanks to zero.fuxor for the report git-svn-id: http://code.djangoproject.com/svn/django/trunk@17202 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-21move an mport out of a functionAlex Gaynor
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17020 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-30Fixed #14270 - related manager classes should be cachedLuke Plant
Thanks to Alex Gaynor for the report and initial patch, and mrmachine for more work on it. git-svn-id: http://code.djangoproject.com/svn/django/trunk@16916 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-09Fixed #7596. Added Model.objects.bulk_create, and make use of it in several ↵Alex Gaynor
places. This provides a performance benefit when inserting multiple objects. THanks to Russ for the review, and Simon Meers for the MySQl implementation. git-svn-id: http://code.djangoproject.com/svn/django/trunk@16739 bcc190cf-cafb-0310-a4f2-bffc1f526a37