Aymeric Augustin
7c46c8d5f2
Added some assertions to enforce the atomicity of atomic.
2013-03-11 14:48:55 +01:00
Aymeric Augustin
d7bc4fbc94
Implemented an 'atomic' decorator and context manager.
...
Currently it only works in autocommit mode.
Based on @xact by Christophe Pettus.
2013-03-11 14:48:55 +01:00
Aymeric Augustin
4b31a6a9e6
Added support for savepoints in SQLite.
...
Technically speaking they aren't usable yet.
2013-03-11 14:48:55 +01:00
Aymeric Augustin
3bdc7a6a70
Deprecated transaction.is_managed().
...
It's synchronized with the autocommit flag.
2013-03-11 14:48:54 +01:00
Aymeric Augustin
ba5138b1c0
Deprecated transaction.commit/rollback_unless_managed.
...
Since "unless managed" now means "if database-level autocommit",
committing or rolling back doesn't have any effect.
Restored transactional integrity in a few places that relied on
automatically-started transactions with a transitory API.
2013-03-11 14:48:54 +01:00
Aymeric Augustin
af9e9386eb
Enabled autocommit for PostgreSQL.
...
For users who didn't activate autocommit in their database options, this
is backwards-incompatible in "non-managed" aka "auto" transaction state.
This state now uses database-level autocommit instead of ORM-level
autocommit.
Also removed the uses_autocommit feature which lost its purpose.
2013-03-11 14:48:54 +01:00
Aymeric Augustin
8717b0668c
Separated autocommit and isolation level handling for PostgreSQL.
...
Autocommit cannot be manipulated independently from an open connection.
This commit introduces a minor change in behavior: entering transaction
management forces opening a databasse connection. This shouldn't be
backwards incompatible in any practical use case.
2013-03-11 14:48:54 +01:00
Aymeric Augustin
7aacde84f2
Made transaction.managed a no-op and deprecated it.
...
enter_transaction_management() was nearly always followed by managed().
In three places it wasn't, but they will all be refactored eventually.
The "forced" keyword argument avoids introducing behavior changes until
then.
This is mostly backwards-compatible, except, of course, for managed
itself. There's a minor difference in _enter_transaction_management:
the top self.transaction_state now contains the new 'managed' state
rather than the previous one. Django doesn't access
self.transaction_state in _enter_transaction_management.
2013-03-11 14:48:53 +01:00
Aymeric Augustin
ce76fbfc5a
Fixed #20019 -- Ensured HttpRequest.resolver_match always exists.
...
Obviously it isn't set until the URL is resolved.
2013-03-10 23:28:19 +01:00
Ramiro Morales
7fca4416c7
Made (make|compile)messages check for availability of gettext commands.
...
Refs #19584 .
2013-03-10 17:31:11 -03:00
Claude Paroz
6a91b63842
Fixed #19923 -- Display tracebacks for non-CommandError exceptions
...
By default, show tracebacks for management command errors when the
exception is not a CommandError.
Thanks Jacob Radford for the report.
2013-03-09 12:38:45 +01:00
Claude Paroz
cbfb8ed53b
Fixed a regression in forms changed_data
...
Thanks Loic Bistuer for spotting the regression and the initial
patch. Refs #16612 .
2013-03-08 18:19:24 +01:00
Loic Bistuer
6983a1a540
Fixed #15363 -- Renamed and normalized to `get_queryset` the methods that return a QuerySet.
2013-03-08 10:11:45 -05:00
Aymeric Augustin
477d737e1e
Merge pull request #850 from bmispelon/ticket-19916
...
Fix 19916. Smarter tokenizing of contrib.comment's templatetags arguments
2013-03-07 12:12:29 -08:00
Alex Gaynor
bbbd698c7a
Added a ManyToManyField(db_constraint=False) option, this allows not creating constraints on the intermediary models.
2013-03-07 11:24:51 -08:00
Baptiste Mispelon
81804ae474
Fix 19916. Smarter tokenizing of contrib.comment's templatetags arguments.
2013-03-07 19:30:38 +01:00
Claude Paroz
4cccb85e29
Fixed #19997 -- Added custom EMPTY_VALUES to form fields
...
Thanks Loic Bistuer for the report and the patch.
2013-03-07 15:22:03 +01:00
Igor Támara
e2ee02c5bd
Fixed #19951 -- Admin: Invalid model PK values shouldn't cause 500 status.
...
Avoid ValueError in admin when passing a string as PK for an inherited
model with an integer PK field.
Thanks ikks for the patch. See also #11191 .
2013-03-06 21:38:44 -03:00
Ramiro Morales
c31a9793c6
Merge pull request #882 from loic/testfix
...
Fixed minor warnings in tests.
2013-03-06 16:22:06 -08:00
Preston Holmes
876fc39128
PEP8 cleanup of functional.py
2013-03-06 16:14:46 -08:00
Preston Holmes
0ea5bf88dd
Fixed #19543 -- implemented SimpleLazyObject.__repr__
...
Thanks to Florian Hahn for the patch
2013-03-06 16:13:12 -08:00
Aymeric Augustin
b3aa853ec5
Used more precise test assertions.
2013-03-06 15:33:35 +01:00
Loic Bistuer
9ba0e4e4ee
Fixed minor warnings in tests.
2013-03-06 01:13:36 +07:00
Juan Pedro Fisanotti
d9330d5be2
Fixed #6585 -- Admin relationship widgets: Respect ordering defined by target model's ModelAdmin.
...
Thanks Gary Wilson for the report and Juan Pedro Fisanotti, Carlos
Matías de la Torre for the fix.
2013-03-04 18:08:53 -03:00
Javier Mansilla
3ea0c7d35a
Fixed #19838 -- Admin: Don't leak a 500 HTTP status when trying to delete protected FKs.
...
Thanks rafadev for the report and Javier Mansilla for the fix.
2013-03-04 13:30:59 -03:00
Ramiro Morales
60dd4eabe7
Removed mentions of modeltests.
2013-03-03 18:44:06 -03:00
matiasb
804366327d
Fixed #19915 - Made blocktrans tag honor TEMPLATE_STRING_IF_INVALID.
...
Thanks Natalia Bidart for the report and Matías Bordese for the fix.
2013-03-03 16:10:11 -03:00
Claude Paroz
384c180e41
Fixed #19917 -- Added microseconds in default TIME_INPUT_FORMATS
...
Thanks minddust for the report.
2013-03-02 18:11:10 +01:00
Aymeric Augustin
e0449316eb
Fixed #18130 -- Made the isolation level configurable on PostgreSQL.
...
Thanks limscoder for the report and niwi for the draft patch.
2013-03-02 15:05:49 +01:00
Claude Paroz
c5a25c2771
Add introspection support for BinaryField
2013-03-02 10:29:03 +01:00
Claude Paroz
d680a3f447
Added support for serializing BinaryField
2013-03-02 10:29:02 +01:00
Claude Paroz
8ee1eddb7e
Add a BinaryField model field
...
Thanks Michael Jung, Charl Botha and Florian Apolloner for review
and help on the patch.
2013-03-02 10:29:02 +01:00
Simon Charette
0f306cad84
Import `CaptureQueriesContext` from its original module.
2013-03-02 03:45:42 -05:00
Simon Charette
fb3d85bd14
Fixed #10399 -- Tested that o2o field updates are not constrained by an inner query.
2013-03-02 03:24:08 -05:00
Simon Charette
952ba5237e
Added a context manager to capture queries while testing.
...
Also made some import cleanups while I was there.
Refs #10399 .
2013-03-02 02:41:14 -05:00
Claude Paroz
3318595c0b
Fixed #18898 -- Added tests with a fix for ModelMultipleChoiceField
2013-03-01 09:35:18 +01:00
Claude Paroz
892bc91cb0
Fixed #16612 -- Improved has_changed detection for localized field values
...
Thanks Simon Charette for the review.
2013-03-01 09:35:04 +01:00
Aymeric Augustin
cf30469164
Fixed tests broken in 2ee21d9
.
2013-02-28 17:08:16 +01:00
Aymeric Augustin
2ee21d9f0d
Implemented persistent database connections.
...
Thanks Anssi Kääriäinen and Karen Tracey for their inputs.
2013-02-28 15:28:13 +01:00
Aymeric Augustin
aa089b106b
Fixed #5241 -- Kept active transalation in LocaleMiddleware.process_response.
2013-02-28 14:21:48 +01:00
Anssi Kääriäinen
06de130dae
Fixed #12823 -- Was already fixed in master, tests added
...
Also added a little improvement to sql/query.py to get rid of
non-necessary IS NOT NULL check.
2013-02-28 15:05:48 +02:00
Łukasz Langa
af3321a1e8
use the real path to fix OS X /var/folders vs. /private/var/folders mismatch
2013-02-27 23:33:47 +01:00
Anssi Kääriäinen
21189cb80b
Made dateformat tests reactivate original language
2013-02-27 23:48:17 +02:00
Aymeric Augustin
7aaa8a7779
Fixed a test that relied on database exceptions not being wrapped.
2013-02-27 21:12:48 +01:00
Aymeric Augustin
b2c697b029
Fixed a PendingDeprecationWarning in template_tests.
2013-02-27 21:09:27 +01:00
Anssi Kääriäinen
50328f0a61
Fixed #19861 -- Transaction ._dirty flag improvement
...
There were a couple of errors in ._dirty flag handling:
* It started as None, but was never reset to None.
* The _dirty flag was sometimes used to indicate if the connection
was inside transaction management, but this was not done
consistently. This also meant the flag had three separate values.
* The None value had a special meaning, causing for example inability
to commit() on new connection unless enter/leave tx management was
done.
* The _dirty was tracking "connection in transaction" state, but only
in managed transactions.
* Some tests never reset the transaction state of the used connection.
* And some additional less important changes.
This commit has some potential for regressions, but as the above list
shows, the current situation isn't perfect either.
2013-02-27 17:54:27 +02:00
Łukasz Langa
40b9f4fb8b
[py3] Always fed hashlib with bytes.
2013-02-27 10:02:07 +01:00
Ramiro Morales
a28e2e7c4d
Removed a .mo file incorrectly put under Git control.
2013-02-26 22:45:08 -03:00
Ramiro Morales
f0bd553922
Simplified compilemessages tests a bit.
2013-02-26 22:30:49 -03:00
Ramiro Morales
dfa9324966
Don't use os.system() in compilemessages.
...
Fixes #19584 .
This implies stop storing file path command line arguments in envvars as
a security measure to start relying on with Popen's shell=False instead,
and addition of an 'utils' module.
Thanks kmichel_wgs for the report.
2013-02-26 21:31:53 -03:00