Commit Graph

16773 Commits

Author SHA1 Message Date
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
Tim Graham 69f0249d7b Fixed #19395 -- Added a simple example logging config.
Thanks ken.nelson at maclaren.com.
2013-12-31 10:20:44 -05: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
Tim Graham 9953e98e6a Fixed #21701 -- Improved testing doc titles and added testing/tools.txt.
Thanks cjerdonek for the suggestion.
2013-12-31 08:14:09 -05:00
Aymeric Augustin a95f74e707 Oops. 2013-12-31 13:16:51 +01:00
Claude Paroz 587b678d41 Made DeprecationDisplayTest more robust 2013-12-31 13:12:53 +01:00
Aymeric Augustin 6b172a6d6d Called django.setup() explicitly in management commands.
This avoids duplicating code.
2013-12-31 13:11:05 +01:00
Claude Paroz 1fb873cd6b Finished renaming syndication to syndication_tests 2013-12-31 11:56:41 +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
Claude Paroz 0b825adcf2 Renamed syndication tests
To resolve the conflict between application names.
2013-12-31 11:25:02 +01:00
Aymeric Augustin a5e2a0e569 Added release notes for today's app-loading improvements. 2013-12-31 00:10:49 +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
Tim Graham ec020cab7e Fixed a broken link in docs/intro/tutorial01.txt. 2013-12-30 17:59:18 -05: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
Tim Graham 270f7e2167 Fixed #21708 -- Added some headings to separate unrelated topics.
Thanks ashley at ashleymills.com for the suggestion.
2013-12-30 17:55:12 -05: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
Tim Graham 0150830687 Fixed #21710 -- Documented User.get_short_name()
Thanks Keryn Knight for the report.
2013-12-30 17:42:11 -05: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 c31d7c4813 Updated advice on connecting signals at startup. 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 e5c89c62f2 Pointed intersphinx links to Python's default version.
Currently it's 3.3.
2013-12-30 19:09:45 +01:00
Aymeric Augustin 99649ddcb2 Assumed Python 3 throughout docs/intro.
Various small fixes while I was proof-reading.
2013-12-30 19:09:45 +01:00
Aymeric Augustin 7d7b27d2b1 Converted links to HTTPS and linked to stable docs. 2013-12-29 22:35:37 +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 38ce41103f Used Apps.clear_cache() in tests that alter the app registry. 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