Si Feng
b102c27ff4
Fixed #20784 -- Added inverse_match parameter to RegexValidator.
2014-02-10 05:38:43 -05:00
Claude Paroz
e2f28572b7
Merge pull request #2245 from funkybob/parse_header
...
Replaced _parse_content_type with cgi.parse_header
2014-02-09 20:39:07 +01:00
Andrew Godwin
d5df7a0515
Fixed #21969 : Fix behaviour of initial_data with migrated apps
2014-02-09 12:22:59 +00:00
Andrew Godwin
2085f53f56
Fixed #21968 : Bad detection of old-style apps to add initial migration
2014-02-09 11:42:10 +00:00
Andrew Godwin
38b4adc696
Merge pull request #2244 from mlavin/21856-migration-checks
...
Fixed #21856 : Allow Empty DATABASES Setting
2014-02-09 10:46:57 +00:00
Curtis
f43e895b15
Replace _parse_content_type with cgi.parse_header
2014-02-09 10:01:16 +11:00
Kevin Christopher Henry
6fe26bd3ee
Fixed #19373 -- Ported Windows file locking from PyWin32 to ctypes
...
There wasn't any file locking under Windows unless PyWin32 was
installed. This removes that (undocumented) dependency by using ctypes
instead.
Thanks to Anatoly Techtonik for writing the ctypes port upon which this
is based.
2014-02-08 15:52:06 -05:00
Berker Peksag
5d263dee30
Fixed #21674 -- Deprecated the import_by_path() function in favor of import_string().
...
Thanks Aymeric Augustin for the suggestion and review.
2014-02-08 11:12:19 -05:00
mlavin
0ac13ecceb
Remove check_migrations from the runserver command and use the new checks framework to check for unapplied migrations. Don't check for migrations if the DATABASES setting is empty.
2014-02-08 09:01:59 -05:00
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