Ramiro Morales
6a6136141b
Implemented #10164 for new schema migration code.
...
Made it use 'AUTOINCREMENT' suffix for PK creation. This way it doeesn't
regress when compared with the 'traditional' DB backend creation
infrastructure.
Refs #10164 .
2013-12-28 11:21:01 -03: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
Claude Paroz
b7a7baa554
Fixed #21618 -- Added hints about openlayers.js hosting
...
Thanks kz26 for the report and Tim Graham for the excellent
review.
2013-12-28 11:08:50 +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
aff57793b4
Simplified the implementation of register_model.
...
register_model is called exactly once in the entire Django code base, at the
bottom of ModelBase.__new__:
new_class._meta.apps.register_model(new_class._meta.app_label, new_class)
ModelBase.__new__ exits prematurely 120 lines earlier (sigh) if a model with
the same name is already registered:
if new_class._meta.apps.get_registered_model(new_class._meta.app_label, name):
return
(This isn't the exact code, but it's equivalent.)
apps.register_model and apps.get_registered_model are essentially a setter and
a getter for apps.all_models, and apps.register_model is the only setter. As a
consequence, new_class._meta.apps.all_models cannot change in-between.
Considering that name == new_class.__name__, we can conclude that
register_model(app_label, model) is always called with such arguments that
get_registered_model(app_label, model.__name__) returns None.
Considering that model._meta.model_name == model.__name__.lower(), and looking
at the implementation of register_model and get_registered_model, this proves
that self.all_models[app_label] doesn't contain model._meta.model_name in
register_model, allowing us to simplify the implementation.
2013-12-28 09:34:46 +01:00
Ramiro Morales
3518e9ec1f
Amend test table name so it doesn't clash.
...
Refs #21692 and 3efd1b8b93
.
2013-12-27 21:02:39 -03:00
Ramiro Morales
61cfcec5b7
Merge pull request #2120 from ramiro/schema-creation-quoting
...
Fixed #21692 -- Quote table name when creating it.
2013-12-27 15:40:52 -08:00
Aymeric Augustin
14bcbd9937
Avoided %r formatting on possibly unicode strings.
...
The u prefix looks bad on Python 2.
2013-12-27 23:19:23 +01:00
Ramiro Morales
3efd1b8b93
Fixed #21692 -- Quote table name when creating it.
2013-12-27 18:43:52 -03:00
Aymeric Augustin
efddae252c
Refactored dumpdata with app configs instead of models modules.
2013-12-27 21:25:35 +01:00
Aymeric Augustin
40b8767635
Fixed a couple flake8 warnings.
2013-12-27 21:06:28 +01:00
Tim Graham
85270ef3f5
Fixed #21650 -- Corrected bad advice for plural translation.
...
Thanks nedbatchelder and claudep.
2013-12-27 10:02:22 -05:00
Aymeric Augustin
2504a50cc2
Created a constant for the migrations module name.
...
Mostly for consistency with MODELS_MODULE_NAME; it's unlikely to change.
2013-12-27 15:36:19 +01:00
Florian Apolloner
f00243f36d
Don't try to load app directory templates from apps with a path (eg eggs)
2013-12-27 11:42:24 +01:00
Florian Apolloner
6aa1a31660
Properly app_template_dirs when INSTALLED_APPS change.
2013-12-27 11:17:25 +01:00
Tim Graham
025ec2e7fe
Fixed #21582 -- Corrected URL namespace example.
...
Thanks oubiga for the report.
2013-12-26 20:04:28 -05:00
Aymeric Augustin
6e3ca6507c
Used app_config.verbose_name instead of app_label|capfirst.
...
An admin view performed the capitalization in the template, unlike all others.
Refs #10436 .
2013-12-26 22:58:37 +01:00
Tim Graham
d8d83777eb
Fixed #21629 -- Added instructions for loading MySQL time zone definitions.
...
Thanks Aymeric for the suggestion.
2013-12-26 15:50:33 -05:00
Aymeric Augustin
8779aa806e
Added a test for Apps.has_app.
2013-12-26 20:39:28 +01:00
Tim Graham
d430f1d98b
Fixed #21609 -- Amended CONTRIBUTING.rst pull request guidelines.
...
Thanks cjerdonek for the suggestion.
2013-12-26 13:41:03 -05:00
Aymeric Augustin
cfbdd587f6
Added file forgotten in previous commit, plus one more test.
2013-12-26 19:29:32 +01:00
Aymeric Augustin
e179291fa5
Added tests for invalid values of INSTALLED_APPS.
2013-12-26 19:25:09 +01:00
Aymeric Augustin
b355e98a50
Normalized exceptions raised by AppConfig.create.
...
It raises ImportError whenever an entry in INSTALLED_APPS points
(directly or indirectly via AppConfig.name) to a non-existing module
and ImproperlyConfigured in all other cases.
Catching ImportError and re-raising ImproperlyConfigured tends to make
circular imports more difficult to diagnose.
2013-12-26 19:25:09 +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
fec5330c79
Made unset_installed_apps reset the app registry state.
...
Previously the _apps/models_loaded flags could remain set to False if
set_installed_apps exited with an exception, which is going to happen as
soon as we add tests for invalid values of INSTALLED_APPS.
2013-12-26 19:21:02 +01:00
Aymeric Augustin
8925aaf613
Added basic tests for get_app_config[s].
2013-12-26 19:21:02 +01:00
Preston Timmons
aef019de61
Fixed #21206 -- No longer run discovery if the test label doesn't point to a package or directory.
...
Thanks thepapermen for the report and Carl Meyer for the review.
2013-12-26 11:26:24 -05:00
Aymeric Augustin
52325b0a04
Turned apps.ready into a property. Added tests.
2013-12-26 15:04:58 +01:00
Aymeric Augustin
922430177c
Beefed up the comments for AppConfig.all_models.
2013-12-26 14:12:30 +01:00
Aymeric Augustin
8f04f53dd8
Removed a few gratuitous lambdas.
2013-12-26 14:03:50 +01:00
Tim Graham
4e7aa573ec
Added missing newline in previous commit.
2013-12-26 07:52:31 -05:00
Jon Lønne
398642fd9b
Fixed #21627 -- Added unicode_literals to changepassword command.
...
Fixed a crash when executing changepassword command when the user object
representation contained non-ASCII characters.
2013-12-26 07:35:50 -05:00
Claude Paroz
318cdc07de
Added 1.6.2 release note for 542198c1d
2013-12-26 11:10:50 +01:00
Alex Gaynor
029acbe544
Merge pull request #2114 from levigross/master
...
Removed redundant line
2013-12-25 14:40:30 -08:00
Levi Gross
cb488c5c35
Removed redundant line
2013-12-25 17:22:13 -05:00
Aymeric Augustin
7df049c417
Swapped app registry and app config API docs.
...
Thanks David Larlet for the suggestion.
Also fixed some Sphinx warnings and improved ReST markup.
2013-12-25 21:57:52 +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
Yaroslav Halchenko
80027d2c38
Unified listing of shell commands/code
...
- use code-block:: bash
- prefix the command with $
2013-12-25 15:19:14 -05:00
Levi Gross
0dd9075622
Fixed unittest typo
2013-12-25 12:18:14 -05:00
Tim Graham
b798d2bf97
Added versionadded annotations for redirect middleware attributes.
...
refs #19321
2013-12-25 09:56:41 -05:00
Tim Graham
e82e7ae1e8
Fixed #21663 -- Added missing WSGIPythonPath in mod_wsgi config.
...
Thanks carrie.hazelton at altamiracorp.com for the report.
2013-12-25 06:06:25 -05:00
Tim Graham
5d82658657
Fixed #21669 -- Typo in docs/ref/forms/fields.txt.
...
Thanks alex_koval for the report.
2013-12-25 06:02:43 -05:00
Aymeric Augustin
8c78cba47f
Copy-edited previous commit.
...
Thanks Tim for the review.
2013-12-24 23:48:22 +01:00
Aymeric Augustin
285e765891
Added release notes for app loading changes.
2013-12-24 20:16:56 +01:00
Alex Gaynor
dbe2fb632d
Added a missing import and removed an unneeded import
2013-12-24 08:35:13 -08:00
Alex Gaynor
828c9be436
Merge pull request #2108 from jgastal/master
...
Typo fix for exception message.
2013-12-24 08:30:43 -08:00
Jonas Gastal
96967f642f
Typo fix for exception message.
2013-12-24 14:26:50 -02:00
Aymeric Augustin
9b8192ce51
Updated a few doc paragraphs following the app-loading refactor.
2013-12-24 17:20:11 +01:00