Michael Manfre
3ffeb93186
Ensure cursors are closed when no longer needed.
...
This commit touchs various parts of the code base and test framework. Any
found usage of opening a cursor for the sake of initializing a connection
has been replaced with 'ensure_connection()'.
2014-02-02 12:47:21 -05:00
Tim Graham
2b6914049a
Fixed #21849 -- Included the count of silenced system checks in output.
2014-01-28 08:31:02 -05:00
Wojciech Banaś
8f2f48ecc9
Fixed #21866 -- Replaced "COMMIT" in managmement command SQL with backend hook.
2014-01-26 12:42:41 -05:00
Aymeric Augustin
f901b4d6c8
Took advantage of the new get_model API. Refs #21702 .
2014-01-26 13:08:05 +01:00
Aymeric Augustin
ee4b806a85
Fixed #21873 -- Removed duplicate import.
...
Thanks Sephi for the report.
2014-01-25 23:22:03 +01:00
Aymeric Augustin
2ff93e027c
Fixed #21829 -- Added default AppConfigs.
...
Thanks Russell for the report, Marc for the initial patch, Carl for the
final review, and everyone who contributed to the design discussion.
2014-01-25 10:41:56 +01:00
José Moreira
8649833cf8
fixed typo on docstring
2014-01-20 16:33:11 +00:00
Russell Keith-Magee
d818e0c9b2
Fixed #16905 -- Added extensible checks (nee validation) framework
...
This is the result of Christopher Medrela's 2013 Summer of Code project.
Thanks also to Preston Holmes, Tim Graham, Anssi Kääriäinen, Florian
Apolloner, and Alex Gaynor for review notes along the way.
Also: Fixes #8579 , fixes #3055 , fixes #19844 .
2014-01-20 10:45:21 +08:00
Andrew Godwin
a68f325791
Fixed #21638 : Validators are now comparable, stops infinite user mig'ns
2014-01-19 18:56:16 +00:00
JustinTArthur
298a2b577f
Adjusted inspectdb management command to yield PEP 8-compliant output barring Django Coding Style exceptions.
2014-01-17 18:03:16 -05:00
Marc Tamlyn
ac8d0a4815
Remove unneded open(.., 'U') when on python 3.
...
Universal newlines is enabled by default on py3, and the usage of 'U' is
deprecated in py3.4.
2014-01-13 17:11:21 +00:00
Marc Tamlyn
9d2c5b0420
Undelete the `return True` removed in 4e0a2fe
.
...
This is quite important otherwise we don't close our connections to the
SMTP server.
2014-01-12 23:38:28 +00:00
Aymeric Augustin
0a7588dd3f
Fixed #21770 -- Updated autocomplete for app-loading.
...
Thanks dfunckt for the report.
2014-01-12 22:29:27 +01:00
Aymeric Augustin
d562527a16
Fixed #21477 -- Renamed db to using in pre/post_migrate signals.
2014-01-12 22:24:33 +01:00
Aymeric Augustin
2dcde523ab
Avoided catching ImproperlyConfigured on django.setup().
...
Fixed #21737 . Thanks Florian for the report.
Also removed redundant imports in that file.
2014-01-06 23:01:29 +01:00
Claude Paroz
aaf5b3e7aa
Moved django.setup() to ManagementUtility
...
In get_commands, setup() might already have been called, for example
when the management command is called through call_command. Moving
setup() to ManagementUtility so as it is only called when the command
is run from command line.
2014-01-02 20:47:40 +01:00
Aymeric Augustin
30a42a4fc3
Adjusted previous commit for Python 3.
2014-01-01 19:12:46 +01:00
Aymeric Augustin
0ce945a671
Fixed #21018 -- Reversed precedence order for management commands.
2014-01-01 18:11:15 +01:00
Aymeric Augustin
f17d00278e
Wiped get_commands() cache when INSTALLED_APPS changes.
...
Refs #21018 , #21688 .
2014-01-01 18:11:09 +01:00
Aymeric Augustin
a95f74e707
Oops.
2013-12-31 13:16:51 +01:00
Aymeric Augustin
6b172a6d6d
Called django.setup() explicitly in management commands.
...
This avoids duplicating code.
2013-12-31 13:11:05 +01:00
Aymeric Augustin
bfcc686d22
Removed the only_with_models_module argument of get_model[s].
...
Now that the refactorings are complete, it isn't particularly useful any
more, nor very well named. Let's keep the API as simple as possible.
Fixed #21689 .
2013-12-30 23:59:34 +01:00
Florian Apolloner
df075c7489
Merge pull request #2126 from apollo13/email_bytes
...
Many thanks to @bitdancer and @aaugustin for answering my stupid questions about (mail)encodings and pointing me in the right direction.
2013-12-30 14:58:49 -08:00
Florian Apolloner
bfe9052831
Decode mails using the message encoding.
2013-12-30 23:54:12 +01:00
Florian Apolloner
c988745cca
Changed console and filebackend to use msg.as_bytes to output the data as it would get send via smtp.
2013-12-30 23:46:05 +01:00
Aymeric Augustin
1c242a297b
Merged Apps.populate_apps() and populate_models().
...
After the recent series of refactorings, there's no reason to keep
two distinct methods.
Refs #21681 .
2013-12-30 23:18:22 +01:00
Aymeric Augustin
80d74097b4
Stopped populating the app registry as a side effect.
...
Since it triggers imports, it shouldn't be done lightly.
This commit adds a public API for doing it explicitly, django.setup(),
and does it automatically when using manage.py and wsgi.py.
2013-12-30 22:11:17 +01:00
Aymeric Augustin
0d2c8ff2be
Populated the app registry earlier at startup.
...
Refs #1796 , #21676 .
2013-12-30 22:11:16 +01:00
Aymeric Augustin
5892a83b18
Stopped calling get_models() for a side effect.
2013-12-29 21:48:58 +01:00
Aymeric Augustin
e5bcd1d455
Changed get_validation_errors to use an app config.
2013-12-29 21:48:58 +01:00
Aymeric Augustin
856aaaf2b1
Changed get_migratable_models to use an app config.
2013-12-29 21:25:28 +01:00
Aymeric Augustin
1d4bcb86ea
Changed sql_* to use an app config instead of a models module.
2013-12-29 21:25:28 +01:00
Aymeric Augustin
368d90e261
Removed unused import.
2013-12-29 20:45:34 +01:00
Aymeric Augustin
7b88a96553
Added AppConfig.get_models().
2013-12-29 20:31:59 +01:00
Aymeric Augustin
00110904ac
Refactored the migration signals to use app configs.
...
De-aliased pre/post_syncdb to pre/post_migrate to increase
backwards-compatibility.
2013-12-29 17:53:42 +01:00
Claude Paroz
6d66ba5948
Fixed #21242 -- Allowed more IANA schemes in URLValidator
...
Thanks Sascha Peilicke for the report and initial patch, and
Tim Graham for the review.
2013-12-28 21:25:32 +01:00
Aymeric Augustin
ba7206cd81
Changed get_model to raise an exception on errors.
...
Returning None on errors required unpythonic error checking and was
inconsistent with get_app_config.
get_model was a private API until the previous commit, but given that it
was certainly used in third party software, the change is explained in
the release notes.
Applied the same change to get_registered_model, which is a new private
API introduced during the recent refactoring.
2013-12-28 20:53:00 +01:00
Florian Apolloner
5dfd824d38
Introduced as_bytes for SafeMIMEText (and other SafeMIME-classes).
...
This is to provide a consistent interface (namely bytes) for the smtp
backend which after all sends bytes over the wire; encoding with as_string
yields different results since mails as unicode are not really specified.
as_string stays for backwardscompatibilty mostly and some debug outputs.
But keep in mind that the output doesn't match as_bytes!
2013-12-28 18:35:17 +01:00
Florian Apolloner
280c1a65cc
Worked around a bug in python 3.3.3. Refs #21093
2013-12-28 15:25:16 +01:00
Florian Apolloner
f28ea02308
Fixed #21093 -- Ensured that mails are not base64 encoded on python 3.3.3+.
...
Thanks to Arfrever for the report and Aymeric for the review.
2013-12-28 12:42:33 +01:00
Aymeric Augustin
c81fae6b95
Used app_label instead of appname.
...
The last component of the dotted path to the application module is
consistently referenced as the application "label". For instance it's
AppConfig.label. appname could be confused with AppConfig.name, which is
the full dotted path.
2013-12-28 09:53:02 +01:00
Aymeric Augustin
a7add2f296
Migrated built-in AppCommands to use handle_app_config.
2013-12-28 09:43:06 +01:00
Aymeric Augustin
bb8ec71f61
Updated the AppCommand API to support apps without a models module.
2013-12-28 09:42:59 +01:00
Aymeric Augustin
efddae252c
Refactored dumpdata with app configs instead of models modules.
2013-12-27 21:25:35 +01:00
Aymeric Augustin
ce1bc2c94b
Made the AppConfig API marginally more consistent.
...
Eliminated the app_ prefix that was more confusing than useful.
2013-12-26 19:25:09 +01:00
Aymeric Augustin
08bb238eae
Merge pull request #2105 from funkybob/cleanup_get_post
...
Used @cached_property for request.GET and COOKIES
2013-12-25 12:34:06 -08:00
Aymeric Augustin
1716b7ce5a
Renamed AppCache to Apps.
...
Also renamed app_cache to apps and "app cache" to "app registry".
Deprecated AppCache.app_cache_ready() in favor of Apps.ready().
2013-12-24 12:25:17 +01:00
Curtis
d7a4b156d9
Use cached_property for request.GET and request.COOKIES
2013-12-24 21:57:57 +11:00
Aymeric Augustin
2fef9e5375
Moved apps back in the toplevel django namespace.
...
Reverted 4a56a93cc4
.
2013-12-22 11:39:55 +01:00
Aymeric Augustin
99bd39ef6e
Added the ability to supply custom app configs.
2013-12-22 11:39:18 +01:00