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
Alex Gaynor
791142e8b3
Several small whitespace fixes for styleguide/flake8 violations
2014-01-01 09:37:52 -08: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
Preston Timmons
18d962f2e6
Fixed #21206 -- Fixed test discovery without labels
...
Added test to verify an empty label performs discovery on the current
working directory.
2014-01-01 12:40:16 +01:00
Claude Paroz
fbbe7ca30c
Readded field unadvertantly removed in fedfd5030
2014-01-01 12:07:43 +01:00
Aymeric Augustin
6edd5b0793
Fixed a few issues in previous commit.
2014-01-01 11:52:56 +01:00
Aymeric Augustin
fecfd50300
Properly assigned app_label to GIS test models.
...
Used abstract inheritance to cut down on code repetition.
2014-01-01 11:01:46 +01:00
Loic Bistuer
4befb3015c
Fixed #21581 -- Fixed a number of issues with collectstatic.
...
When STATIC_ROOT wasn't set, collectstatic --clear would delete
every files within the current directory and its descendants.
This patch makes the following changes:
Prevent collectstatic from running if STATIC_ROOT isn't set.
Fixed an issue that prevented collectstatic from displaying the
destination directory.
Changed the warning header to notify when the command is run
in dry-run mode.
2013-12-31 14:58:49 -05:00
Claude Paroz
b8e3373f45
Fixed #21714 -- Moved logging configuration to global setup()
...
Thanks Aymeric Augustin for the report and the review.
2013-12-31 18:35:00 +01:00
Aymeric Augustin
1d23d766ab
Renamed AppConfig.setup to ready.
...
Thanks Jannis and Marc for the feedback.
Fixed #21717 .
2013-12-31 18:04:54 +01:00
Aymeric Augustin
63137a8304
Enforced unicity of app labels.
...
Fixed #21679 .
2013-12-31 18:04:54 +01:00
Aymeric Augustin
c40209dcc0
Made it possible to change an application's label in its configuration.
...
Fixed #21683 .
2013-12-31 17:30:58 +01:00
Aymeric Augustin
5dfec4e23b
Checked unicity of app config names when populating the app registry.
...
This check will miss duplicates until the check for duplicate labels is
added.
Refs #21679 .
2013-12-31 17:29:04 +01:00
Aymeric Augustin
553500133c
Removed an obsolete unicity check.
...
It doesn't account for app configs.
Refs #21679 .
2013-12-31 17:29:04 +01:00
Claude Paroz
d0eeddd6fc
Fixed #21716 -- Only passed arguments supported by ogrinspect
...
Thanks Marco Badan for the report.
2013-12-31 16:26:44 +01:00
Aymeric Augustin
75220d3b5d
Small style cleanup.
2013-12-31 16:24:40 +01:00
Aymeric Augustin
f46603f830
Fleshed out release notes for app loading.
...
Fixed #21715 .
2013-12-31 15:27:25 +01:00
Aymeric Augustin
80004c7cc0
Turned django.db.models.app_cache_ready back into a method.
...
Thanks Anssi for noticing this mistake in a refactoring.
2013-12-31 15:27:25 +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
Thomas Schreiber
7b119c1c77
only attempt to create the postgis extension when it does not already exist
2013-12-31 11:34:03 +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
966de84973
Removed postponing in Apps.populate_models.
...
To the best of my understanding, since populate_models() is now called
as soon as Django starts, it cannot be called while a models module is
being imported, and that removes the need for postponing.
(If hell breaks loose we'll revert this commit.)
Refs #21681 .
2013-12-30 23:01:00 +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
7ed20e0153
Populated Apps instances immediately by default.
2013-12-30 22:11:17 +01:00
Aymeric Augustin
e187caa3af
Added AppConfig.setup() to run setup code.
2013-12-30 22:11:16 +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
d6dc88cbc1
Avoided leaking state on exceptions in populate_models().
2013-12-30 22:10:04 +01:00
Aymeric Augustin
5892a83b18
Stopped calling get_models() for a side effect.
2013-12-29 21:48:58 +01:00
Aymeric Augustin
34a215d506
Deprecated the app argument of apps.get_models.
...
Use app_config.get_models() instead.
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
8cfcd801c4
Fixed stupid error in 21f22f95
.
2013-12-29 20:57:03 +01:00
Aymeric Augustin
368d90e261
Removed unused import.
2013-12-29 20:45:34 +01:00
Aymeric Augustin
d1eb362afb
Removed obsolete docstring.
2013-12-29 20:45:25 +01:00
Aymeric Augustin
21f22f9544
Added Apps.clear_cache().
...
This avoid leaking implementation details to tests that swap models.
2013-12-29 20:43:10 +01:00
Aymeric Augustin
82aadbb5d5
Fixed a typo.
...
Thanks Simon.
2013-12-29 20:35:58 +01:00
Aymeric Augustin
7b88a96553
Added AppConfig.get_models().
2013-12-29 20:31:59 +01:00
Florian Apolloner
98b52ae201
Cleared global templatetags module cache.
...
TOOOOO MUCH GLOBAL STATE (you didn't see that).
2013-12-29 19:17:25 +01:00
Aymeric Augustin
20d487c27b
Replaced Options.object_name.lower() by Options.model_name.
...
Thanks Simon for the suggestion.
Also removed inappropriate lowercasing of app labels in migrations.
Unlike model names, they are case sensitive.
2013-12-29 18:48:37 +01:00
Aymeric Augustin
308960b92a
Cleared get_models cache when swapping User model.
...
Thanks Florian for isolating the shortest way to reproduce this issue:
./runtests.py \
django.contrib.auth.tests.test_context_processors.AuthContextProcessorTests.test_perms_attrs \
django.contrib.auth.tests.test_auth_backends.ChangedBackendSettingsTest.test_changed_backend_settings \
django.contrib.auth.tests.test_auth_backends.CustomUserModelBackendAuthenticateTest.test_authenticate \
django.contrib.auth.tests.test_basic.BasicTestCase.test_createsuperuser_management_command
2013-12-29 18:25:22 +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
Ramiro Morales
5782c94f23
Added generation of SQLite FK DDL in initial migrations.
...
SQLite accepts the relevant standard SQL (although by default it doesn't
enforce the constraint), and the 'traditional' creation backend helper
generate it, so this allows us to:
- Maintain the status quo
- Improve readability of the SQL code generated for that backend.
Also, we will need this for when we fix Refs #14204 .
2013-12-28 18:00:16 -03:00