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
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
Brendan MacDonell
ad237fb72f
Fixed #18724 -- Fixed IntegerField validation with value 0
2012-08-06 10:42:21 +02: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
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
Aymeric Augustin
ae4125ffce
Removed a Python 3-compatibility hack.
...
Thanks Preston Holmes for the patch.
2012-07-23 13:48:04 +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
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
56dbe924a6
[py3] Removed longs.
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
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
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
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
fb8ec2855b
Remove some code that has been dead since newforms-admin was merged, many moons ago.
2012-07-12 09:27:08 -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
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
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
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
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
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
Alex Gaynor
e0fce8706d
Switch to using context managers for acquiring and releasing locks.
2012-06-23 08:11:15 -07:00
Luke Plant
a54a8bab0c
Fixed #17776 - DoesNotExist is not picklable
...
Thanks to ambv for the report
2012-06-22 13:28:15 +01: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
3dd5d726d1
Fixed #18463 -- Forced type() argument to be a byte string
2012-06-11 22:14:06 +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
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
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
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
Aymeric Augustin
939af5a654
Fixed a typo in a comment. Refs #17742 .
2012-06-01 08:09:58 +02:00
Claude Paroz
0dc904979d
Fixed #18407 -- Made model field's to_python methods fully accept unicode.
...
When generating error message in to_python, any unicode string
containing non-ascii characters triggered a UnicodeEncodeError for
most field types.
2012-05-31 16:46:07 +02:00
Michael Newman
4423757c0c
Fixed #18135 -- Close connection used for db version checking
...
On MySQL when checking the server version, a new connection could be
created but never closed. This could result in open connections on
server startup.
2012-05-27 18:45:08 +03:00
Anssi Kääriäinen
a8a81aae20
Fixed #18343 -- Cleaned up deferred model implementation
...
Generic cleanup and dead code removal in deferred model field loading
and model.__reduce__().
Also fixed an issue where if an inherited model with a parent field
chain parent_ptr_id -> id would be deferred loaded, then accessing
the id field caused caused a database query, even if the id field's
value is already loaded in the parent_ptr_id field.
2012-05-27 18:11:13 +03:00
Anssi Kääriäinen
8c72aa2379
Fixed qs.order_by() join promotion for already existing joins
...
When order_by causes new joins to be added to the query, the joins must
be LEFT OUTER joins for nullable relations, otherwise the order_by
could cause the results to be altered. This commit fixes the logic to
only promote new joins, previously all joins in the order_by lookup
path were promoted.
Thanks to Bruno Desthuilliers for spotting this corner case.
2012-05-24 18:42:06 +03:00
Aymeric Augustin
1e6c3368f2
Fixed #18177 -- Cached known related instances.
...
This was recently fixed for one-to-one relations; this patch adds
support for foreign keys. Thanks kaiser.yann for the report and
the initial version of the patch.
2012-05-24 13:25:01 +02:00
Anssi Kääriäinen
0df4593f0e
Fixed #18319 -- Added 'supports_sequence_reset' DB feature
...
Added a new feature to allow 3rd party backends to skip tests which
test sequence resetting.
Thanks to manfre for report and patch.
2012-05-22 23:51:05 +03:00
Claude Paroz
df7a65ac4b
Replaced 'next' testing by collections.Iterator testing.
...
The new construct is also Python 3 compatible (where 'next' has
been renamed to '__next__').
2012-05-22 20:37:38 +02:00
Anssi Kääriäinen
d5c7f9efc3
Fixed #18304 -- Optimized save() when update_can_self_select=False
...
Databases with update_can_self_select = False (MySQL for example)
generated non-necessary queries when saving a multitable inherited
model, and when the save resulted in update.
2012-05-22 20:59:33 +03:00
Claude Paroz
38408f8007
Marked bytestrings with b prefix. Refs #18269
...
This is a preparation for unicode literals general usage in
Django (Python 3 compatibility).
2012-05-19 17:43:34 +02:00
Claude Paroz
7549de841c
Fixed #18334 -- Fixed detection of supports_stddev backend feature.
...
Thanks to Michael Manfre for the report and Anssi Kääriäinen for the
review.
2012-05-18 12:12:45 +02:00
Aymeric Augustin
dcd4383107
Fixed #9893 -- Validated the length of file names
...
after the full file name is generated by the storage class.
Thanks Refefer for the report, carsongee for the patch, and
everyone else involved in the discussion.
2012-05-17 16:02:05 +02:00
Andrei Antoukh
365853da01
Fixed #4102 -- Allow update of specific fields in model.save()
...
Added the ability to update only part of the model's fields in
model.save() by introducing a new kwarg "update_fields". Thanks
to all the numerous reviewers and commenters in the ticket
2012-05-12 10:29:41 +03:00
Claude Paroz
169b1a404c
Replaced foo.next() by next(foo).
...
This new syntax for next() has been introduced in Python 2.6 and is
compatible with Python 3.
2012-05-10 20:15:49 +02:00
Anssi Kääriäinen
c2e1ecb4b1
Fix proxy model Query.remove_inherited_models()
...
Fixed #18248 -- proxy models were added to included_inherited_models
in sql.query.Query. The variable is meant to be used for multitable
inheritance only. This mistake caused problems in situations where
proxy model's query was reused.
2012-05-09 20:33:31 +03:00
Simon Charette
5cbfb48b92
Made model fields comparable to other objects
...
Fixed #17851 -- Added __lt__ and @total_ordering to models.Field,
made sure these work correctly on other objects than Field, too.
2012-05-07 20:08:20 +03:00
Claude Paroz
1aae1cba99
Imported zip from future_builtins instead of itertools.izip.
...
In Python 3, itertools.izip is not available any more (behaviour
integrated in standard zip).
2012-05-07 17:25:12 +02:00
Aymeric Augustin
46b082e05c
Fixed #17742 -- Handled aware datetimes in DateField
...
Converted aware datetimes to the default time zone before using them
in the context of a DateField.
2012-05-01 11:29:55 +02:00
Claude Paroz
596cb9c7e2
Replaced print statement by print function (forward compatibility syntax).
2012-04-30 20:45:03 +02:00
Anssi Kääriäinen
a18e43c5bb
Made get_indexes() consistent across backends.
...
Fixed #15933 , #18082 -- the get_indexes() method introspection was
done inconsitently depending on the backend. For example SQLite
included all the columns in the table in the returned dictionary,
while MySQL introspected also multicolumn indexes.
All backends return now consistenly only single-column indexes.
Thanks to andi for the MySQL report, and ikelly for comments on
Oracle's get_indexes() changes.
2012-04-30 14:30:29 +03:00
Alex Gaynor
d5a277ba4d
Switch a datastructure internal to the ORM to be a set, instead of a dictionary.
2012-04-29 22:18:30 -04:00
Adrian Holovaty
6ff118cdb9
Fixed #17644 -- Changed Query.alias_map to use namedtuples
...
This makes the code easier to understand and may even have a benefit in memory usage (namedtuples instead of dicts). Thanks, lrekucki and akaariai
2012-04-29 17:50:48 -05:00
Claude Paroz
3904b74a3f
Fixed #18013 -- Use the new 'as' syntax for exceptions.
...
Thanks Clueless for the initial patch.
Note that unittest has been purposely left out (external package only used by Python 2.6).
2012-04-29 20:57:15 +02:00
Anssi Kääriäinen
76c3314b6d
Removed unused variable from sql/query.py
2012-04-29 21:23:38 +03:00
Anssi Kääriäinen
584e2c0337
Prevent Oracle from changing field.null to True
...
Fixed #17957 -- when using Oracle and character fields, the fields
were set null = True to ease the handling of empty strings. This
caused problems when using multiple databases from different vendors,
or when the character field happened to be also a primary key.
The handling was changed so that NOT NULL is not emitted on Oracle
even if field.null = False, and field.null is not touched otherwise.
Thanks to bhuztez for the report, ramiro for triaging & comments,
ikelly for the patch and alex for reviewing.
2012-04-29 19:25:46 +03:00
Anssi Kääriäinen
5aa51fa999
Simplified QuerySet field.null handling
...
QuerySet had previously some complex logic for dealing with nullable
fields in negated add_filter() calls. It seems the logic is leftover
from a time where the WhereNode wasn't as intelligent in handling
field__in=[] conditions.
Thanks to aaugustin for comments on the patch.
2012-04-29 16:27:25 +03:00
Anssi Kääriäinen
527cce80dc
Made table_names() output sorted.
...
Fixed #18218 -- previously Django's introspection table_names() and
get_table_list() methods did not sort the output consistently. This
resulted in random order of inspected models.
This commit also removed all external usages of get_table_list().
table_names() should be used instead.
Thanks to claudep for patch and report.
2012-04-29 02:11:55 +03:00
Anssi Kääriäinen
c4e62eff90
Fixed #17653 -- Changed MySQL backend to raise a ValueError if zero is used as an AutoField value.
...
Thanks to Sylvain Lebon for the report, krzysiumed for the patch and charettes and claudep for reviews.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17933 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-04-24 18:03:14 +00:00
Anssi Kääriäinen
612247b3a0
Fixed #16961 -- Skipped resetting AUTO_INCREMENT fields for MySQL if the server version is greater than 5.0.12. This allows for much faster testing.
...
Thanks to aigarius for the report and claudep and ramiro for review.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17932 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-04-24 16:47:31 +00:00
Alex Gaynor
3c5ff9d703
Fixed #5893 -- Added a flag to FilePathField to allow listing folders, in addition to regular files. Thank you to Brian Rosner, for encouraging me to first contribute to Django 4 years ago.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17925 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-04-22 14:44:08 +00:00
Ramiro Morales
4536359887
Fixed #18116 -- Raised minimum MySQL version officially suported to 5.0.3.
...
Thanks Carl, Claude and Anssi for discussion and patch review.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17921 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-04-21 03:04:10 +00:00
Anssi Kääriäinen
53fb45c6d8
Fixed #17615 -- Corrected unique field validation when using multitable inheritance. The validation used wrong pk value if the parent and child model had different pk fields. Thanks ungenio for the report and patch.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17920 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-04-20 17:34:29 +00:00
Anssi Kääriäinen
d5b93d3281
Fixed #10494 -- Added kwargs to QuerySet.get() error message in the case no objects were found.
...
Thanks brondsem for the report, Szymon Pyzalski for the patch and oinopion for review.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17917 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-04-20 11:09:32 +00:00
Claude Paroz
2cd516002d
Fixed #18002 -- Fixed typo in attribute name in ReverseSingleRelatedObjectDescriptor.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17904 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-04-12 20:23:41 +00:00
Aymeric Augustin
632b6a1a73
Fixed #17439 -- Prevented spurious queries for missing objects after prefetch_related has run.
...
That affects nullable foreign key, nullable one-to-one, and reverse one-to-one relations.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17899 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-04-11 21:11:22 +00:00
Aymeric Augustin
b90d4e5b74
Made the caching of related and reverse related objects consistent in OneToOneFields. Fixed #13839 . Refs #17439 .
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17890 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-04-10 12:29:25 +00:00
Aymeric Augustin
1f11069aa5
Fixed #18090 -- Applied filters when running prefetch_related backwards through a one-to-one relation.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17888 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-04-10 06:04:53 +00:00
Carl Meyer
f195f1ed24
Fixed #18083 -- Fixed cascade deletion with proxy model of concrete subclass. Thanks Simon Charette for report and patch.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17887 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-04-09 22:41:20 +00:00
Julien Phalip
93d1fdb130
Fixed #17877 -- Ensured that extra WHERE clauses get correctly ANDed when they contain OR operations. Thanks to Marek Brzóska for the report, to eleather for the test case and to Adrien Lemaire for the patch.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17880 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-04-09 00:43:08 +00:00
Anssi Kääriäinen
4f62352412
Fixed #18014 -- Removed rev_join_map from sql/query.py.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17878 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-04-08 12:29:05 +00:00
Claude Paroz
4b3fd424f4
Fixed #15782 -- Prevented MySQL backend to crash on runserver when db server is down. Thanks toofishes for the report and patch.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17868 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-04-02 20:29:50 +00:00
Aymeric Augustin
9ed6e08ff9
Removed deprecated URLField.verify_exists.
...
The deprecation schedule was slightly accelerated because of possible security ramifications.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17847 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-03-31 13:55:03 +00:00
Claude Paroz
9383a2761c
Removed with_statement imports, useless in Python >= 2.6. Refs #17965 . Thanks jonash for the patch.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17828 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-03-30 08:02:08 +00:00
Claude Paroz
31e84e40f8
Fixed #17870 -- Documented that EmailField default max_length of 75 does not comply with RFCs 3696/5321. Thanks Rotund for the report and the patch and Russell Keith-Magee for the review.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17826 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-03-29 18:39:21 +00:00
Aymeric Augustin
ce7113ccbe
Used SortedDict instead of dict to avoid random errors that may occur when dict randomization is enabled in Python. Refs #17758 . Thanks Łukasz Rekucki.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17777 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-03-22 18:09:22 +00:00
Aymeric Augustin
8d71734f15
Fixed #17923 -- Added missing import in the MySQL and Oracle backends. Thanks aldaran for the report. Also removed two duplicate imports.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17758 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-03-17 09:11:24 +00:00
Carl Meyer
ddd53dafb5
Fixed #17918 - Handle proxy models correctly when sorting deletions for databases without deferred constraints. Thanks Nate Bragg for the report.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17756 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-03-17 01:24:39 +00:00
Aymeric Augustin
3ef55dfaa0
Fixed #17882 (again) -- Updated the database connections' time zone when time-zone-related settings are changed in tests.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17709 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-03-13 23:29:15 +00:00
Ramiro Morales
69b96f824d
Fixed #16329 -- Fixed detection of transaction-handling capabilities when all test databases are sqlite3, in-memory.
...
Thanks canassa for the report and agriffis (#17762 ) and lrekucki (in #17758 ) for their contribution to the fix.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17702 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-03-13 17:52:48 +00:00
Jannis Leidel
f7daa38a00
Fixed #10498 (again) -- Made sure the improvements done in r17641 have a smaller impact on speed. Thanks to Anssi Kääriäinen for the patch and Jonas Obrist for reviewing.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17698 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-03-13 03:48:20 +00:00
Karen Tracey
9d98b9eb4b
Fix #17876 : Corrected an exception (regression) raised where select_realted and only is used on a proxy model. Thanks milosu and charettes.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17692 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-03-12 22:33:18 +00:00
Paul McMillan
3cc2cdddb3
Fixed #17883 . Improved error message for old-style database backends.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17689 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-03-12 21:58:07 +00:00
Carl Meyer
7e92ad8506
Fixed #16128 - Correctly cascade-delete proxy models as if they were the concrete model class. Thanks xkennyx for the report, and Aymeric Augustin, Claude Paroz, Adam Nelson, jaap3, and Anssi Kääriäinen for work on the patch.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17664 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-03-05 03:41:01 +00:00
Jannis Leidel
c988397279
Fixed #10498 -- Fixed using ugettext_lazy values when creating model instances. Thanks to Claude Paroz and Jonas Obrist.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17641 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-03-03 19:02:49 +00:00
Adrian Holovaty
2ade1e916f
Edited stuff from [17543] to [17629]
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17630 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-03-02 17:16:52 +00:00
Luke Plant
3db5b0e485
Fixed #17696 - Queryset prefetch_related() ignores using()
...
Thanks to simon29 for the report.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17605 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-03-01 00:57:01 +00:00
Ramiro Morales
ae640e5ea0
Fixed #17796 -- Rolled back [17588] because the fix for the original relatively
...
corner case (boolean fields under MySQL spatial backend) had a wider scope with
potentially unintended consequences affecting the main MySQL backend and the
required changes wouldn't be appropiate at this point of the 1.4 development
cycle.
Refs #15169 .
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17603 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-02-29 17:46:23 +00:00
Aymeric Augustin
c471cfd674
Avoided importing _mysql directly. Refs #17755 .
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17602 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-02-29 08:57:48 +00:00
Aymeric Augustin
97061bdf30
Fixed #17786 (again) -- Ensured destruction of test databases works under Oracle, even with multiple databases, after r17411.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17601 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-02-28 21:23:45 +00:00
Luke Plant
de9942a667
Fixed #17668 - prefetch_related does not work in in_bulk
...
Thanks to gurets for the report, and akaariai for the initial patch.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17600 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-02-28 19:34:04 +00:00
Aymeric Augustin
4b641b78fa
Fixed #17786 -- Exception when running the tests under Oracle, during the destruction of the test database.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17599 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-02-28 09:50:18 +00:00
Aymeric Augustin
ce88b57b9a
Fixed #17755 -- Ensured datetime objects that bypass the model layer (for instance, in raw SQL queries) are converted to UTC before sending them to the database when time zone support is enabled. Thanks Anssi for the report.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17596 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-02-27 21:15:25 +00:00
Ramiro Morales
9f6859e1ea
Fixed #15169 -- Corrected handling of model boolean fields in MySQL spatial backend.
...
Thanks goes to zmsmith and others for reporting the issue and to Justin Bronn for the fix.
Refs #7190 , r12578, r12900, #13293 , r12939.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17588 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-02-26 14:35:46 +00:00
Aymeric Augustin
8b53616198
Fixed #17728 -- When filtering an annotation, ensured the values used in the filter are properly converted to their database representation. This bug was particularly visible with timezone-aware DateTimeFields. Thanks gg for the report and Carl for the review.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17576 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-02-22 19:40:27 +00:00
Carl Meyer
354c84d277
Fixed #17678 -- Corrected setup of _meta.proxy_for_model and added _meta.concrete_model. Thanks Anssi Kääriäinen.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17573 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-02-22 05:26:50 +00:00
Ramiro Morales
328c70ef15
Fixed #10837 -- Added CHAR(X)->CharField to mapping used in Postgres DB introspection.
...
Thanks trbs for the report and initial patch and to Claude Paroz for
updating it.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17511 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-02-11 22:17:02 +00:00
Ramiro Morales
98b4572ef7
Fixed #15216 -- Made return type of an internal DB introspection method consistent.
...
Thanks arthur AT milliways DOT fr for the report and patch.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17510 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-02-11 22:12:49 +00:00
Ramiro Morales
ccc0e122d4
Fixed #7783 -- Made introspection of nullable columns more robust with Postgres.
...
Thanks bthomas AT ncorcle DOT com for the report and initial patch, and
Claude Paroz for the final, complete patch.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17508 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-02-11 20:05:50 +00:00
Ramiro Morales
5a4e63e62a
Removed code duplicated in SQLite3 and SpatiaLite GeoDjango DB backends.
...
Moved it to an auxiliary method in the SQLite3 backend cursor class.
Did this to reduce the chances of us forgetting to port changes in DB
connection setup process from the former to the latter one like it
happened e.g. in r17205.
Refs #17258 .
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17499 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-02-11 03:09:54 +00:00
Jannis Leidel
2aae057727
Fixed #17219 -- Updated model field descriptions to be more precise. Thanks, charettes.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17476 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-02-09 18:57:54 +00:00
Julien Phalip
d02ba7f4ee
Fixed #11670 -- Prevented genuine model fields named 'year', 'month', 'gt', 'lt' etc. from being mistaken for lookup types in lookups across relations. Thanks to andy for the report, to jpwatts for the initial patch and to Anssi Kääriäinen and Alex Gaynor for the reviews.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17450 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-02-05 07:11:53 +00:00
Jannis Leidel
2b0c1ea641
Fixed #17527 -- Improved exception message when adding the wrong type of object to a ManyToManyField. Thanks, guettli and cClaude Paroz.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17437 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-02-04 16:06:09 +00:00
Julien Phalip
f1dc83cb98
Fixed #10868 -- Stopped restoring database connections after the tests' execution in order to prevent the production database from being exposed to potential threads that would still be running. Also did a bit of PEP8-cleaning while I was in the area. Many thanks to ovidiu for the report and to Anssi Kääriäinen for thoroughly investigating this issue.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17411 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-01-30 08:27:50 +00:00
Jannis Leidel
0907233040
Added a missing warning forgotten in r17392.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17393 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-01-24 10:32:28 +00:00
Jannis Leidel
8f168976d6
Fixed #17580 -- Made sure datetime.date instances are correctly handled when being passed to a DateTimeField fields and the timezone support is enabled by making it aware using the default timezone.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17392 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-01-24 10:00:39 +00:00
Aymeric Augustin
7beb0db79b
Fixed #10320 -- Made it possible to use executemany with iterators. Thanks MockSoul for the report.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17387 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-01-22 16:41:20 +00:00
Aymeric Augustin
30c846bf3d
Fixed #6669 -- Ensured database connections are marked as dirty by CursorDebugWrapper.execute/executemany. Refs #9964 . Thanks james at 10gic net for the report and Claude Paroz for the patch.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17368 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-01-12 21:55:19 +00:00
Aymeric Augustin
cd46863043
Added missing bits of r17352. Refs #17513 .
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17353 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-01-07 21:42:37 +00:00
Aymeric Augustin
ca187fea88
Fixed #17513 -- Prevented the MySQL backend from leaking MySQLdb-specific exceptions. Thanks Claude Paroz.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17352 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-01-07 19:53:20 +00:00
Ramiro Morales
8312b85c97
Added support for savepoints to the MySQL DB backend.
...
MySQL provides the savepoint functionality starting with version 5.0.3
when using the MyISAM storage engine.
Thanks lamby for the report and patch.
Fixes #15507 .
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17341 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-01-05 00:45:31 +00:00
Julien Phalip
c93933441e
Fixed #17429 -- Ensured that `Meta.ordering=None` works the same if it were an empty list. Thanks to self[at]dicos[dot]ru for the report and to bigkevmcd for the patch.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17334 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-01-03 09:06:19 +00:00
Julien Phalip
31b1cbc623
Fixed #16340 -- Made `get_or_create()` re-raise any `IntegrityError` with its original traceback. Thanks to d0ugal and Jonas Obrist.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17333 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2012-01-02 21:30:47 +00:00
Jannis Leidel
db2b1458b1
Fixed #17047 -- Improved django.db.utils.load_backend to raise a better exception when using a unqualified database backend name. Thanks, Jonas Obrist.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17274 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-12-25 13:24:39 +00:00
Ramiro Morales
287565779d
Added support for modifying the effect of ``DISTINCT`` clauses so they
...
only consider some fields (PostgreSQL only).
For this, the ``distinct()`` QuerySet method now accepts an optional
list of model fields names and generates ``DISTINCT ON`` clauses on
these cases. Thanks Jeffrey Gelens and Anssi Kääriäinen for their work.
Fixes #6422 .
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17244 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-12-22 20:42:40 +00:00
Adrian Holovaty
20c8aa2a20
Fixed various dodgy behaviours
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17226 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-12-17 17:37:24 +00:00
Julien Phalip
a1d2f1f7b7
Ensured that thread-shareability gets validated when closing a PostgreSQL or SQLite connection. Refs #17258 .
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17206 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-12-16 17:02:41 +00:00
Julien Phalip
34e248efec
Fixed #17258 -- Moved `threading.local` from `DatabaseWrapper` to the `django.db.connections` dictionary. This allows connections to be explicitly shared between multiple threads and is particularly useful for enabling the sharing of in-memory SQLite connections. Many thanks to Anssi Kääriäinen for the excellent suggestions and feedback, and to Alex Gaynor for the reviews. Refs #2879 .
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17205 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-12-16 13:40:19 +00:00
Aymeric Augustin
219b41cc15
Fixed #17266 -- Skipped the "SET TIME ZONE" query for PostgreSQL when it isn't necessary.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17194 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-12-11 08:19:04 +00:00
Adrian Holovaty
073d987a84
Fixed #16818 -- Fixed ORM bug with many-to-many add() method where it wasn't committing the change. Thanks, pressureman and kmtracey
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17189 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-12-09 23:16:56 +00:00
Aymeric Augustin
2693aa890e
Simplified time zone support in the Oracle backend. Avoided outputtypehandler which doesn't exist in cx_Oracle < 4.4.1.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17171 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-12-07 08:43:30 +00:00
Adrian Holovaty
5f9dbef4bb
Fixed #17335 -- Added supports_select_related hook for django-nonrel. Thanks, jonash
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17170 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-12-05 23:11:43 +00:00
Luke Plant
f2ebb169f9
Small code clarification in prefetch_related code using better variable names
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17162 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-11-29 12:50:10 +00:00
Aymeric Augustin
866c229f52
Fixed #17294 -- Supported nullable DateTimeFields when time zone support is enabled. Thanks pressureman for the report.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17148 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-11-25 09:25:43 +00:00
Aymeric Augustin
74b836abf5
Fixed #17062 -- Ensured that the effect of SET TIME ZONE isn't lost when the first transation is rolled back under PostgreSQL. Thanks Anssi for the patch.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17128 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-11-20 16:12:33 +00:00
Aymeric Augustin
9c30d48b45
Fixed #17263 -- Added a warning when a naive datetime reaches the database layer while time zone support is enabled.
...
After this commit, timezones.AdminTests will raise warnings because the sessions contrib app hasn't been upgraded to support time zones yet.
This will be fixed in an upcoming commit.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17117 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-11-19 23:27:20 +00:00
Aymeric Augustin
d0eb4693ab
Fixed #15255 -- Ensured createcachetable honors database routers.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17114 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-11-19 19:56:31 +00:00
Aymeric Augustin
549c495875
Used symbolic constants for psycopg2 isolation levels.
...
Django used the value 1 = ISOLATION_LEVEL_READ_UNCOMMITTED in some places, but
PostgreSQL doesn't provide "read uncommited", it uses "read committed" instead:
http://www.postgresql.org/docs/9.1/static/transaction-iso.html . For clarity,
this commit uses ISOLATION_LEVEL_READ_COMMITTED = 2 where 1 was previously used.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17112 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-11-19 14:18:44 +00:00
Aymeric Augustin
9b1cb755a2
Added support for time zones. Thanks Luke Plant for the review. Fixed #2626 .
...
For more information on this project, see this thread:
http://groups.google.com/group/django-developers/browse_thread/thread/cf0423bbb85b1bbf
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17106 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-11-18 13:01:06 +00:00
Karen Tracey
b8353016b7
Fixed #13640 : Avoid generating an exception when a model has an attribute named 'evaluate'. Thanks LukaszKorzybski and tobias.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17093 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-11-13 15:09:08 +00:00
Karen Tracey
63ba472cc4
Fix #13864 : Removed database error raised when force_update is requsted on save of an inherited model with no fields of its own. Thanks fva, gregmuellegger, and markb1.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17088 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-11-12 19:06:39 +00:00
Alex Gaynor
396fcaaef9
Remove all relative imports. We have always been at war with relative imports.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17009 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-18 00:47:49 +00:00
Alex Gaynor
544a8372fd
Remove several more relative imports.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17007 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-17 16:56:18 +00:00
Ramiro Morales
5f2be4ecbb
Fixed #17056 -- Tweaked insert SQL clause generation so a corner case doesn't fail with Oracle.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16997 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-16 20:06:59 +00:00
Aymeric Augustin
246580573d
Fixed #12308 -- Added tablespace support to the PostgreSQL backend.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16987 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-14 21:49:43 +00:00
Aymeric Augustin
06d9b82a27
Fixed #16906 -- Format datetimes with str/unicode instead of strftime where possible: it's faster and it works for all dates.
...
Also ensured that datetime_safe is used wherever strftime is called on dates/datetimes that may be before 1900.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16978 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-13 19:23:45 +00:00
Julien Phalip
c58e5724bc
Fixed a couple of `assert` syntax warnings mistakingly introduced in r16966 and added some tests to prevent future regressions. Thanks to Anssi Kääriäinen for the report.
...
Refs #12467 .
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16971 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-13 11:53:59 +00:00
Julien Phalip
3b22c68343
Fixed #12467 -- Made the model data validation for `DateField` and `DateTimeField` more useful by actually telling what was the value that failed. Also did a bit of PEP8 cleanup in the area. Thanks to knutin for the report, to raulcd for the initial patch and to charettes for the review.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16966 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-13 08:11:00 +00:00
Luke Plant
d5803bb5fb
More efficient IN clauses for prefetch_related queries by use of sets to eliminate duplicates
...
This simply reduces the size of the IN clause in the SQL, which can be
significant in some cases.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16944 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-08 13:50:29 +00:00
Luke Plant
64da8eec30
Fixed #17014 - added protection against infinite recursion.
...
Thanks to akaariai for the report and tests.
No tests have been added, since unittests for termination are basically
impossible, and the failure condition will take down the developer's machine
in this case. It has been tested against the cases in #17014 .
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16940 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-07 16:06:02 +00:00
Luke Plant
052a011ee6
Fixed #17003 - prefetch_related should support foreign keys/one-to-one
...
Support for `GenericForeignKey` is also included.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16939 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-07 16:05:53 +00:00
Luke Plant
b763412aa4
Removed ForeignRelatedObjectsDescriptor.RelatedManager.delete_manager, which has been unused since [14507]
...
And cleaned up the result, allowing more consistency with the other related
descriptors.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16931 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-06 11:08:11 +00:00
Luke Plant
662eea116f
Fixed #16937 - added `QuerySet.prefetch_related` to prefetch many related objects.
...
Many thanks to akaariai for lots of review and feedback, bug finding,
additional unit tests and performance testing.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16930 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-05 23:14:52 +00:00
Luke Plant
d30fbf8b78
Fixed #16902 - select_related() results in a poor perfomance
...
Thanks to ivan_virabyan for the great patch!
(For the record, some very small tweaks were made by me).
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16929 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-05 22:56:09 +00:00
Luke Plant
05cf72bace
Very small docstring correction.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16927 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-10-05 09:54:01 +00:00
Luke Plant
5009e45dfe
Fixed #14270 - related manager classes should be cached
...
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-30 10:41:25 +00:00
Luke Plant
6d6fe61bf6
Cleanups to related manager code, especially in use of closures.
...
The related manager classes are defined within functions, and the methods
had inconsistent and confusing usage of closures vs. parameters on self to
retrieve needed information. Everything is stored on self now.
Also some methods were not using super() where they should have been.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16913 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-29 15:30:29 +00:00
Luke Plant
e3a6ac8f60
Small cleanups of 'related manager' code for consistency
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16912 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-29 15:30:19 +00:00
Luke Plant
29b8e34dfb
Removed unused parameter 'join_table' in various bits of RelatedManager code
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16907 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-26 17:20:20 +00:00
Gabriel Hurley
39bbd1653a
Fixed #7198 (again) -- Corrects a problem with string interpolation from r16876 and adds tests for the new error message.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16888 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-22 21:09:00 +00:00
Paul McMillan
f44c4a5d0f
Fixed #7198 -- Improved error message when missing models.py. Thanks Silver_Ghost and for the patch.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16876 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-22 05:10:52 +00:00
Carl Meyer
f91af72523
Fixed #16353 -- don't try to create Site objects on all databases. Refs #15573 , #15346 . Thanks Aymeric Augustin for the report and the patch.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16868 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-21 22:46:48 +00:00
Ramiro Morales
9fe050a275
Added an implementation of bulk insert via the ORM to the Oracle DB backend.
...
Refs #7596 , r16739 and http://troels.arvin.dk/db/rdbms/#insert-multiple
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16819 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-11 23:02:53 +00:00
Ramiro Morales
83484cc109
Fixed #14138 -- Removed a superfluous import in the sqlite3 DB backend.
...
This could be of help with some issues people were seeing when deploying
Django with sqlite and Apache.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16799 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-11 00:52:03 +00:00
Alex Gaynor
345c4c4629
Remove a bunch of deadcode/dead imports.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16794 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-10 22:31:38 +00:00
Alex Gaynor
807b2a8216
Fixed bulk_insertion on databases which don't yet support it. Thanks to Justin Bronn for his Oracle wizardry.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16793 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-10 22:02:13 +00:00
Alex Gaynor
b45a4acf6f
Ensure bulk_create returns the right value if the argument is an empty list.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16792 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-10 21:46:59 +00:00
Alex Gaynor
f2bc919ec0
Ensure bulk_create returns what it is supposed to.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16791 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-10 21:44:57 +00:00
Russell Keith-Magee
fcee0c1b66
Fixed #16809 -- Forced MySQL to behave like a database. This avoids a problem where queries that do IS NONE checks can return the wrong result the first time they are executed if there is a recently inserted row. Thanks to James Pyrich for the debug work and patch.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16785 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-10 18:58:30 +00:00
Alex Gaynor
efb8327444
Fixed #16808 , removed some dead code from teh ORM. Thanks to aaugustin for the patch.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16782 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-10 17:38:58 +00:00
Russell Keith-Magee
5f287f75f2
Altered the behavior of URLField to avoid a potential DOS vector, and to avoid potential leakage of local filesystem data. A security announcement will be made shortly.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16760 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-09-10 00:47:00 +00:00
Alex Gaynor
7deb25b8dd
Fixed #7596 . Added Model.objects.bulk_create, and make use of it in several 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
2011-09-09 19:22:28 +00:00
Honza Král
93f92635b6
Follow the same convention as the rest of the file.
...
Still cleanup after [16708]
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16710 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-29 23:01:25 +00:00
Honza Král
0037ca44d6
Forgotten import in [16708]
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16709 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-29 17:28:15 +00:00
Honza Král
7c657b2416
Fixed #15802 -- pyscopg2 sometimes fail to close the connection when it's already closed by the server, Thanks Rick van Hattem
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16708 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-29 15:55:06 +00:00
Malcolm Tredinnick
587fbff3dd
Make ManyToManyField model references more robust.
...
In r16679 a test was added to verify something had been fixed when a
unicode string type was passed in as a model name. The name has to be
ASCII convertible, but in Python 2.6 and earlier, it must also have str
type.
This commit fixes the problem for earlier Python versions and is almost
identical to a patch from b.leskes in #6045 .
Fixes #16689 . Refs #6045 .
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16682 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-25 06:07:28 +00:00
Malcolm Tredinnick
7182cd2284
Allow "pk" as a field alias in QuerySet.only() calls.
...
Thanks to GDorn for the patch. Fixed #15494 .
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16668 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-23 06:29:01 +00:00
Russell Keith-Magee
a39066ba0b
Fixed #16299 -- Ensure that unicode strings can be used to identify classes in ForeignKey and ManyToManyFields. Unicode strings aren't actually legal as class names, but this is an issue if you use from __future__ import unicode_literals in your models.py file. Thanks to Martijn Bastiaan for the report, and Anthony Briggs for the final patch.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16663 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-23 05:12:31 +00:00
Malcolm Tredinnick
1f770c62da
Fix initialisation of ImageField super classes.
...
Fixes #16548 , with thanks to pyriku.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16658 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-23 04:05:47 +00:00
Malcolm Tredinnick
2e56066a5b
Fixed an isnull=False filtering edge-case. Fixes #15316 .
...
The bulk of this patch is due to some fine analysis from Aleksandra
Sendecka.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16656 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-23 03:38:42 +00:00
Malcolm Tredinnick
c3a0dcf6e9
Added convenience method for viewing Query SQL without params.
...
This is the old Query.as_sql() method revived: it's like Query.__str__,
but the parameters aren't substituted into the placeholders. Thus, it's
a more accurate representation of the SQL the (default) backend will
see. Entirely internal.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16655 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-23 03:38:28 +00:00
Russell Keith-Magee
3afe409d0e
Fixed #14876 -- Ensure that join promotion works correctly when there are nullable related fields. Thanks to simonpercivall for the report, oinopion and Aleksandra Sendecka for the original patch, and to Malcolm for helping me wrestle the edge cases to the ground.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16648 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-22 07:40:12 +00:00
Malcolm Tredinnick
c471d471bf
Improved error message display during validation errors.
...
When reporting a validation error (during model validation or fixture
loading, for example), the error messages now report the bad value as
well as the expected type. This can make identifying the offending field
and problem a bit easier.
Fixed #11595 . Patch from raulcd and wildfire with supervision from
Russell.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16638 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-22 00:48:53 +00:00
Jannis Leidel
1abafe696e
Fixed #14695 -- Stopped model fields from incorrectly overwriting the field name during model initialization if it was already passed as a keyword argument. Thanks, erikrose and willhardy.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16614 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-13 11:53:42 +00:00
Jannis Leidel
c0a4c04e2a
Fixed #16613 -- Fixed test for introspected foreign keys in the MySQL backend if ANSI_QUOTES SQL mode is enabled. Thanks, Stan.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16613 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-13 11:53:33 +00:00
Jannis Leidel
1d485cf14f
Fixed #10405 -- Raise a more useful error if the formfield of a related model field can't be created yet because the related model isn't loaded yet. Thanks ojii and charstring.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16604 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-12 14:15:08 +00:00
Jannis Leidel
bce890ace4
Fixed #16584 -- Fixed a bunch of typos in code comments. Thanks, Bernhard Essl.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16598 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-12 14:14:15 +00:00
Ramiro Morales
4fc3741ee8
Added fixtures files missing from [16590].
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16591 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-08 17:08:35 +00:00
Karen Tracey
be87f0b0ec
Fixed #3615 : Added support for loading fixtures with forward references on database backends (such as MySQL/InnoDB) that do not support deferred constraint checking. Many thanks to jsdalton for coming up with a clever solution to this long-standing issue, and to jacob, ramiro, graham_king, and russellm for review/testing. (Apologies if I missed anyone else who helped here.)
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16590 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-08-07 00:43:26 +00:00
Jannis Leidel
50ed810c1f
Fixed #16472 -- Removed stale code in the query code. Thanks, fva@chtd.org.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16562 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-07-29 09:40:09 +00:00
Jannis Leidel
dc2bfae1e5
Fixed #16531 -- Fixed various instances of "undefined name" issues. Thanks, Bruno Renié.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16557 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-07-29 09:39:35 +00:00
Jannis Leidel
24f4764a48
Fixed #16225 -- Removed unused imports. Many thanks to Aymeric Augustin for the work on the patch and Alex for reviewing.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16539 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-07-13 09:35:51 +00:00
Ramiro Morales
b2050ff546
Fixed #16409 -- Fixed an error condition when using QuerySet only()/defer() on the result of an annotate() call. Thanks jaklaassen AT gmail DOT com and Tai Lee for the reports and Tai for the patch.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16522 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-07-07 01:12:45 +00:00
Ramiro Morales
569aa34ea5
Fixed #16250 -- Made test database creation support code in the PostgreSQL DB backend compatible with psycopg2 2.4.2.
...
Implemented this by adding an internal hook for work that should be performed
before that point.
Also, regarding the `DatabaseCreation.set_autocommit()` method:
* Stop using it for such tasks
* Stop providing an implementation that tries to cover all the possible
idioms a third party database backend DB-API 2 driver could need to activate
autocommit. It is now left for third party backends to implement.
This can be backwards incompatible in the case of user applications that:
* Had started using this method
* Use a third a party database backend
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16520 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-07-06 23:25:30 +00:00
Jannis Leidel
89c302cf3f
Rolled back r16510, r16513 and r16514 because it wasn't ready.
...
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16515 bcc190cf-cafb-0310-a4f2-bffc1f526a37
2011-07-05 14:16:37 +00:00