[Python-modules-commits] [python-django] 01/07: Import python-django_1.9.2.orig.tar.gz

Raphaël Hertzog hertzog at moszumanska.debian.org
Tue Feb 2 08:40:57 UTC 2016


This is an automated email from the git hooks/post-receive script.

hertzog pushed a commit to branch debian/master
in repository python-django.

commit 6e04957b7d59fceb9d1ce51839f6d6fa7d9b67f4
Author: Raphaël Hertzog <hertzog at debian.org>
Date:   Tue Feb 2 09:02:50 2016 +0100

    Import python-django_1.9.2.orig.tar.gz
---
 AUTHORS                                            |   3 +
 Django.egg-info/PKG-INFO                           |   2 +-
 Django.egg-info/SOURCES.txt                        |  30 +-
 PKG-INFO                                           |   2 +-
 django/__init__.py                                 |   2 +-
 .../app_template/{__init__.py => __init__.py-tpl}  |   0
 .../conf/app_template/{admin.py => admin.py-tpl}   |   0
 django/conf/app_template/{apps.py => apps.py-tpl}  |   0
 .../migrations/{__init__.py => __init__.py-tpl}    |   0
 .../conf/app_template/{models.py => models.py-tpl} |   0
 .../conf/app_template/{tests.py => tests.py-tpl}   |   0
 .../conf/app_template/{views.py => views.py-tpl}   |   0
 .../project_template/{manage.py => manage.py-tpl}  |   0
 .../project_name/{__init__.py => __init__.py-tpl}  |   0
 .../project_name/{settings.py => settings.py-tpl}  |   0
 .../project_name/{urls.py => urls.py-tpl}          |   0
 .../project_name/{wsgi.py => wsgi.py-tpl}          |   0
 django/contrib/admin/options.py                    |  18 +-
 django/contrib/admin/sites.py                      |   8 +-
 .../static/admin/js/admin/DateTimeShortcuts.js     |   4 +-
 django/contrib/admin/static/admin/js/core.js       |   5 +-
 django/contrib/admin/utils.py                      |   2 +-
 django/contrib/auth/hashers.py                     |   2 +-
 django/contrib/gis/serializers/geojson.py          |   3 +
 django/contrib/gis/templates/gis/openlayers.html   |   5 +-
 django/core/management/templates.py                |  12 +-
 django/db/backends/base/operations.py              |   2 +-
 django/db/backends/mysql/creation.py               |   2 +-
 django/db/backends/postgresql/creation.py          |   2 +-
 django/db/backends/postgresql/schema.py            |   4 +-
 django/db/backends/sqlite3/operations.py           |  13 +
 django/db/migrations/questioner.py                 |   3 +
 django/db/models/fields/related.py                 |  21 +-
 django/db/models/sql/compiler.py                   |   2 +-
 django/dispatch/dispatcher.py                      |   6 +-
 django/forms/fields.py                             |   2 +
 django/middleware/common.py                        |   5 +-
 django/middleware/csrf.py                          |   2 +-
 django/middleware/http.py                          |   4 +-
 django/template/base.py                            |   8 +-
 django/template/defaultfilters.py                  |   2 +-
 django/template/smartif.py                         |   2 +-
 django/utils/functional.py                         |  20 +
 django/utils/http.py                               |   7 +
 django/utils/translation/trans_real.py             |   3 +
 django/views/debug.py                              |   2 +-
 docs/_ext/djangodocs.py                            |  41 +-
 docs/conf.py                                       |   2 +-
 docs/contents.txt                                  |   4 +-
 docs/faq/admin.txt                                 |  21 +-
 docs/faq/contributing.txt                          |   9 +-
 docs/faq/general.txt                               |  27 +-
 docs/faq/help.txt                                  |  11 +-
 docs/faq/install.txt                               |  11 +-
 docs/faq/models.txt                                |  13 +-
 docs/faq/usage.txt                                 |  11 +-
 docs/glossary.txt                                  |   2 -
 docs/howto/custom-file-storage.txt                 |   1 +
 docs/howto/custom-lookups.txt                      |  14 +-
 docs/howto/custom-management-commands.txt          |  42 +-
 docs/howto/custom-model-fields.txt                 |   2 +-
 docs/howto/custom-template-tags.txt                |  42 +-
 docs/howto/deployment/checklist.txt                |   7 +-
 docs/howto/deployment/index.txt                    |   1 +
 docs/howto/deployment/wsgi/apache-auth.txt         |   8 +-
 docs/howto/deployment/wsgi/index.txt               |   6 +-
 docs/howto/deployment/wsgi/modwsgi.txt             |  21 +-
 docs/howto/error-reporting.txt                     |  13 +-
 docs/howto/index.txt                               |   1 +
 docs/howto/outputting-csv.txt                      |   2 +-
 docs/howto/windows.txt                             |  12 +-
 docs/howto/writing-migrations.txt                  |   6 +-
 docs/index.txt                                     |   6 +-
 docs/internals/contributing/bugs-and-features.txt  |   8 +-
 docs/internals/contributing/committing-code.txt    |   8 +-
 docs/internals/contributing/localizing.txt         |   8 +-
 docs/internals/contributing/new-contributors.txt   |   6 +-
 docs/internals/contributing/triaging-tickets.txt   |  44 +-
 .../contributing/writing-code/coding-style.txt     |  16 +-
 .../contributing/writing-code/javascript.txt       |  16 +-
 .../writing-code/submitting-patches.txt            |  30 +-
 .../contributing/writing-code/unit-tests.txt       |  26 +-
 .../contributing/writing-code/working-with-git.txt |  19 +-
 .../contributing/writing-documentation.txt         |  53 +-
 docs/internals/deprecation.txt                     |   3 +-
 docs/internals/git.txt                             |   4 +-
 docs/internals/index.txt                           |   1 +
 docs/internals/mailing-lists.txt                   |  12 +-
 docs/internals/security.txt                        |   2 -
 docs/internals/team.txt                            |   7 +-
 docs/intro/index.txt                               |   1 +
 docs/intro/install.txt                             |  13 +-
 docs/intro/reusable-apps.txt                       |   7 +-
 docs/intro/tutorial03.txt                          |   2 +
 docs/misc/index.txt                                |   1 +
 docs/ref/applications.txt                          |   8 +-
 docs/ref/checks.txt                                |  18 +-
 docs/ref/class-based-views/base.txt                |  12 +-
 docs/ref/class-based-views/flattened-index.txt     |  90 ++-
 docs/ref/class-based-views/generic-date-based.txt  |  28 +-
 docs/ref/class-based-views/generic-display.txt     |   8 +-
 docs/ref/class-based-views/generic-editing.txt     |  16 +-
 docs/ref/class-based-views/index.txt               |   4 +-
 docs/ref/class-based-views/mixins-date-based.txt   |  24 +-
 docs/ref/class-based-views/mixins-editing.txt      |  16 +-
 .../class-based-views/mixins-multiple-object.txt   |   8 +-
 docs/ref/class-based-views/mixins-simple.txt       |   8 +-
 .../ref/class-based-views/mixins-single-object.txt |   8 +-
 docs/ref/clickjacking.txt                          |  14 +-
 docs/ref/contrib/admin/index.txt                   |   8 +-
 docs/ref/contrib/auth.txt                          |  17 +-
 docs/ref/contrib/contenttypes.txt                  |   3 +-
 docs/ref/contrib/gis/commands.txt                  |  24 +-
 docs/ref/contrib/gis/forms-api.txt                 |  24 +-
 docs/ref/contrib/gis/functions.txt                 | 104 +--
 docs/ref/contrib/gis/gdal.txt                      |   4 +-
 docs/ref/contrib/gis/geoip.txt                     |  16 +-
 docs/ref/contrib/gis/geoip2.txt                    |  12 +-
 docs/ref/contrib/gis/geoquerysets.txt              | 116 +--
 docs/ref/contrib/gis/geos.txt                      |   4 +-
 docs/ref/contrib/gis/install/geolibs.txt           |  16 +-
 docs/ref/contrib/gis/install/index.txt             |  32 +-
 docs/ref/contrib/gis/install/spatialite.txt        |  52 +-
 docs/ref/contrib/gis/model-api.txt                 |   4 +-
 docs/ref/contrib/gis/serializers.txt               |   6 +-
 docs/ref/contrib/gis/testing.txt                   |  18 +-
 docs/ref/contrib/gis/tutorial.txt                  |   4 +-
 docs/ref/contrib/humanize.txt                      |  34 +-
 docs/ref/contrib/index.txt                         |  52 +-
 docs/ref/contrib/postgres/aggregates.txt           |  76 +-
 docs/ref/contrib/postgres/fields.txt               | 147 ++--
 docs/ref/contrib/postgres/forms.txt                |  42 +-
 docs/ref/contrib/postgres/functions.txt            |   5 +-
 docs/ref/contrib/postgres/index.txt                |   1 +
 docs/ref/contrib/postgres/lookups.txt              |   4 +-
 docs/ref/contrib/postgres/operations.txt           |  13 +-
 docs/ref/contrib/postgres/validators.txt           |  10 +-
 docs/ref/contrib/sitemaps.txt                      |  10 +-
 docs/ref/contrib/staticfiles.txt                   |  65 +-
 docs/ref/contrib/syndication.txt                   |   8 +-
 docs/ref/csrf.txt                                  |  10 +-
 docs/ref/databases.txt                             |   2 +-
 docs/ref/django-admin.txt                          | 887 ++++++++++-----------
 docs/ref/files/file.txt                            |  15 +-
 docs/ref/files/storage.txt                         |  11 +-
 docs/ref/files/uploads.txt                         |   4 +-
 docs/ref/forms/api.txt                             |  48 +-
 docs/ref/forms/fields.txt                          |  96 +--
 docs/ref/forms/formsets.txt                        |   5 +-
 docs/ref/forms/models.txt                          |  13 +-
 docs/ref/forms/validation.txt                      |  21 +-
 docs/ref/forms/widgets.txt                         |  43 +-
 docs/ref/middleware.txt                            |   4 +-
 docs/ref/migration-operations.txt                  |  72 +-
 docs/ref/models/conditional-expressions.txt        |   8 +-
 docs/ref/models/database-functions.txt             |  36 +-
 docs/ref/models/fields.txt                         |   8 +-
 docs/ref/models/lookups.txt                        |  12 +-
 docs/ref/models/meta.txt                           |  28 +-
 docs/ref/models/querysets.txt                      | 317 ++++----
 docs/ref/models/relations.txt                      |   2 +-
 docs/ref/request-response.txt                      |  28 +-
 docs/ref/schema-editor.txt                         |  44 +-
 docs/ref/settings.txt                              | 771 +++++++++---------
 docs/ref/signals.txt                               |  68 +-
 docs/ref/template-response.txt                     |  18 +-
 docs/ref/templates/api.txt                         |  40 +-
 docs/ref/templates/builtins.txt                    | 394 ++++-----
 docs/ref/templates/language.txt                    |   2 +-
 docs/ref/unicode.txt                               |   2 +-
 docs/ref/urlresolvers.txt                          |  16 +-
 docs/ref/urls.txt                                  |  52 +-
 docs/ref/utils.txt                                 |  24 +-
 docs/releases/1.0-porting-guide.txt                |   2 +-
 docs/releases/1.1.3.txt                            |   2 +-
 docs/releases/1.1.4.txt                            |   2 +-
 docs/releases/1.2.4.txt                            |   2 +-
 docs/releases/1.2.5.txt                            |   8 +-
 docs/releases/1.2.txt                              |  14 +-
 docs/releases/1.3.4.txt                            |   2 +-
 docs/releases/1.3.5.txt                            |   4 +-
 docs/releases/1.3.6.txt                            |   8 +-
 docs/releases/1.3.txt                              |  84 +-
 docs/releases/1.4.10.txt                           |   2 +-
 docs/releases/1.4.2.txt                            |   2 +-
 docs/releases/1.4.3.txt                            |   4 +-
 docs/releases/1.4.4.txt                            |   8 +-
 docs/releases/1.4.6.txt                            |   2 +-
 docs/releases/1.4.7.txt                            |   2 +
 docs/releases/1.4.8.txt                            |   4 +-
 docs/releases/1.4.9.txt                            |   2 +-
 docs/releases/1.4.txt                              | 159 ++--
 docs/releases/1.5.2.txt                            |   4 +-
 docs/releases/1.5.3.txt                            |   4 +-
 docs/releases/1.5.4.txt                            |   4 +-
 docs/releases/1.5.5.txt                            |   4 +-
 docs/releases/1.5.txt                              | 100 +--
 docs/releases/1.6.txt                              | 118 +--
 docs/releases/1.7.txt                              | 220 ++---
 docs/releases/1.8.1.txt                            |   2 +-
 docs/releases/1.8.9.txt                            |  39 +
 docs/releases/1.8.txt                              | 259 +++---
 docs/releases/1.9.2.txt                            | 105 +++
 docs/releases/1.9.txt                              | 146 ++--
 docs/releases/index.txt                            |   2 +
 docs/releases/security.txt                         | 218 +++--
 docs/topics/auth/customizing.txt                   |  34 +-
 docs/topics/auth/default.txt                       |  38 +-
 docs/topics/auth/passwords.txt                     |   4 +-
 docs/topics/cache.txt                              |  10 +-
 docs/topics/checks.txt                             |   7 +-
 docs/topics/class-based-views/generic-display.txt  |   2 -
 docs/topics/class-based-views/generic-editing.txt  |  15 +-
 docs/topics/class-based-views/intro.txt            |   2 +-
 docs/topics/class-based-views/mixins.txt           |  20 +-
 docs/topics/conditional-view-processing.txt        |   2 +-
 docs/topics/db/aggregation.txt                     |  12 +-
 docs/topics/db/examples/many_to_many.txt           |   7 +-
 docs/topics/db/examples/many_to_one.txt            |   4 +-
 docs/topics/db/examples/one_to_one.txt             |   7 +-
 docs/topics/db/index.txt                           |   1 +
 docs/topics/db/managers.txt                        |  24 +-
 docs/topics/db/models.txt                          |  24 +-
 docs/topics/db/multi-db.txt                        |   9 +-
 docs/topics/db/optimization.txt                    |  16 +-
 docs/topics/db/queries.txt                         |  41 +-
 docs/topics/db/tablespaces.txt                     |   8 +-
 docs/topics/email.txt                              |  28 +-
 docs/topics/external-packages.txt                  |   6 +-
 docs/topics/files.txt                              |   2 +-
 docs/topics/forms/formsets.txt                     |  41 +-
 docs/topics/forms/index.txt                        |  14 +-
 docs/topics/forms/media.txt                        |  21 +-
 docs/topics/forms/modelforms.txt                   |  20 +-
 docs/topics/http/index.txt                         |   1 +
 docs/topics/http/middleware.txt                    |  24 +-
 docs/topics/http/sessions.txt                      |   9 +-
 docs/topics/http/shortcuts.txt                     |  20 +-
 docs/topics/http/urls.txt                          |   4 +-
 docs/topics/http/views.txt                         |   4 +-
 docs/topics/i18n/formatting.txt                    |  15 +-
 docs/topics/i18n/timezones.txt                     |  26 +-
 docs/topics/i18n/translation.txt                   |  37 +-
 docs/topics/index.txt                              |   1 +
 docs/topics/install.txt                            |  13 +-
 docs/topics/migrations.txt                         |  90 +--
 docs/topics/performance.txt                        |  24 +-
 docs/topics/python3.txt                            |  12 +-
 docs/topics/security.txt                           |   3 +-
 docs/topics/serialization.txt                      |  32 +-
 docs/topics/settings.txt                           |  16 +-
 docs/topics/signing.txt                            |   8 +-
 docs/topics/testing/advanced.txt                   |  12 +-
 docs/topics/testing/overview.txt                   |  22 +-
 docs/topics/testing/tools.txt                      |  67 +-
 js_tests/admin/core.test.js                        |  46 +-
 setup.cfg                                          |   2 +-
 .../project_template/{manage.py => manage.py-tpl}  |   0
 tests/admin_scripts/tests.py                       |   2 +-
 tests/admin_views/admin.py                         |  18 +-
 tests/admin_views/models.py                        |  20 +-
 tests/admin_views/tests.py                         | 148 +++-
 tests/apps/tests.py                                |   2 +-
 tests/backends/tests.py                            |  12 +
 .../test_order_with_respect_to.py                  |  17 +-
 tests/csrf_tests/tests.py                          |  17 +
 tests/expressions_case/tests.py                    |  13 +-
 tests/file_uploads/tests.py                        |   2 +-
 .../templates/forms_tests/article_form.html        |   2 +-
 tests/forms_tests/tests/test_forms.py              |   8 +
 tests/gis_tests/distapp/tests.py                   |   4 +-
 tests/gis_tests/geoapp/test_functions.py           |   2 +-
 tests/gis_tests/geoapp/test_serializers.py         |  17 +-
 tests/gis_tests/geogapp/tests.py                   |  16 +-
 tests/gis_tests/test_geoforms.py                   |   5 +-
 tests/i18n/tests.py                                |   6 +-
 tests/m2m_through/models.py                        |   1 +
 tests/m2m_through/tests.py                         |  17 +-
 tests/middleware/tests.py                          |   5 +
 tests/migrations/test_questioner.py                |  15 +
 tests/migrations/test_writer.py                    |   2 +
 tests/model_fields/tests.py                        |  54 ++
 .../{tests.py => base_tests.py}                    |  60 +-
 tests/order_with_respect_to/models.py              |   9 -
 tests/order_with_respect_to/tests.py               |  85 +-
 tests/project_template/test_settings.py            |  15 +
 tests/runtests.py                                  |  10 +-
 tests/schema/tests.py                              | 133 +--
 tests/template_tests/tests.py                      |   9 +
 tests/templates/form_view.html                     |   2 +-
 tests/templates/login.html                         |   2 +-
 tests/utils_tests/test_dateformat.py               |   3 +
 tests/utils_tests/test_http.py                     |   4 +-
 tests/utils_tests/test_lazyobject.py               |  85 +-
 294 files changed, 4521 insertions(+), 3873 deletions(-)

diff --git a/AUTHORS b/AUTHORS
index 6e6e84c..29dfb2d 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -73,6 +73,7 @@ answer newbie questions, and generally made Django that much better:
     Arvis Bickovskis <viestards.lists at gmail.com>
     Aryeh Leib Taurog <http://www.aryehleib.com/>
     A S Alam <aalam at users.sf.net>
+    Asif Saif Uddin <auvipy at gmail.com>
     atlithorn <atlithorn at gmail.com>
     Audrey Roy <http://audreymroy.com/>
     av0000 at mail.ru
@@ -636,6 +637,7 @@ answer newbie questions, and generally made Django that much better:
     schwank at gmail.com
     Scot Hacker <shacker at birdhouse.org>
     Scott Barr <scott at divisionbyzero.com.au>
+    Scott Pashley <github at scottpashley.co.uk>
     scott at staplefish.com
     Sean Brant
     Sebastian Hillig <sebastian.hillig at gmail.com>
@@ -751,6 +753,7 @@ answer newbie questions, and generally made Django that much better:
     Yasushi Masuda <whosaysni at gmail.com>
     ye7cakf02 at sneakemail.com
     ymasuda at ethercube.com
+    Yoong Kang Lim <yoongkang.lim at gmail.com>
     Yusuke Miyazaki <miyazaki.dev at gmail.com>
     Zachary Voase <zacharyvoase at gmail.com>
     Zach Thompson <zthompson47 at gmail.com>
diff --git a/Django.egg-info/PKG-INFO b/Django.egg-info/PKG-INFO
index 5d5f57e..72647a0 100644
--- a/Django.egg-info/PKG-INFO
+++ b/Django.egg-info/PKG-INFO
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: Django
-Version: 1.9.1
+Version: 1.9.2
 Summary: A high-level Python Web framework that encourages rapid development and clean, pragmatic design.
 Home-page: http://www.djangoproject.com/
 Author: Django Software Foundation
diff --git a/Django.egg-info/SOURCES.txt b/Django.egg-info/SOURCES.txt
index 16f15b3..9fd152c 100644
--- a/Django.egg-info/SOURCES.txt
+++ b/Django.egg-info/SOURCES.txt
@@ -24,13 +24,13 @@ django/apps/registry.py
 django/bin/django-admin.py
 django/conf/__init__.py
 django/conf/global_settings.py
-django/conf/app_template/__init__.py
-django/conf/app_template/admin.py
-django/conf/app_template/apps.py
-django/conf/app_template/models.py
-django/conf/app_template/tests.py
-django/conf/app_template/views.py
-django/conf/app_template/migrations/__init__.py
+django/conf/app_template/__init__.py-tpl
+django/conf/app_template/admin.py-tpl
+django/conf/app_template/apps.py-tpl
+django/conf/app_template/models.py-tpl
+django/conf/app_template/tests.py-tpl
+django/conf/app_template/views.py-tpl
+django/conf/app_template/migrations/__init__.py-tpl
 django/conf/locale/__init__.py
 django/conf/locale/af/LC_MESSAGES/django.mo
 django/conf/locale/af/LC_MESSAGES/django.po
@@ -342,11 +342,11 @@ django/conf/locale/zh_Hant/__init__.py
 django/conf/locale/zh_Hant/formats.py
 django/conf/locale/zh_Hant/LC_MESSAGES/django.mo
 django/conf/locale/zh_Hant/LC_MESSAGES/django.po
-django/conf/project_template/manage.py
-django/conf/project_template/project_name/__init__.py
-django/conf/project_template/project_name/settings.py
-django/conf/project_template/project_name/urls.py
-django/conf/project_template/project_name/wsgi.py
+django/conf/project_template/manage.py-tpl
+django/conf/project_template/project_name/__init__.py-tpl
+django/conf/project_template/project_name/settings.py-tpl
+django/conf/project_template/project_name/urls.py-tpl
+django/conf/project_template/project_name/wsgi.py-tpl
 django/conf/urls/__init__.py
 django/conf/urls/i18n.py
 django/conf/urls/static.py
@@ -3494,8 +3494,10 @@ docs/releases/1.8.5.txt
 docs/releases/1.8.6.txt
 docs/releases/1.8.7.txt
 docs/releases/1.8.8.txt
+docs/releases/1.8.9.txt
 docs/releases/1.8.txt
 docs/releases/1.9.1.txt
+docs/releases/1.9.2.txt
 docs/releases/1.9.txt
 docs/releases/index.txt
 docs/releases/security.txt
@@ -3656,7 +3658,7 @@ tests/admin_scripts/complex_app/models/foo.py
 tests/admin_scripts/custom_templates/project_template.tgz
 tests/admin_scripts/custom_templates/app_template/__init__.py
 tests/admin_scripts/custom_templates/app_template/api.py
-tests/admin_scripts/custom_templates/project_template/manage.py
+tests/admin_scripts/custom_templates/project_template/manage.py-tpl
 tests/admin_scripts/custom_templates/project_template/ticket-18091-non-ascii-template.txt
 tests/admin_scripts/custom_templates/project_template/ticket-19397-binary-file.ico
 tests/admin_scripts/custom_templates/project_template/additional_dir/Procfile
@@ -4462,6 +4464,7 @@ tests/migrations/test_loader.py
 tests/migrations/test_multidb.py
 tests/migrations/test_operations.py
 tests/migrations/test_optimizer.py
+tests/migrations/test_questioner.py
 tests/migrations/test_state.py
 tests/migrations/test_writer.py
 tests/migrations/deprecated_field_migrations/0001_initial.py
@@ -4698,6 +4701,7 @@ tests/or_lookups/__init__.py
 tests/or_lookups/models.py
 tests/or_lookups/tests.py
 tests/order_with_respect_to/__init__.py
+tests/order_with_respect_to/base_tests.py
 tests/order_with_respect_to/models.py
 tests/order_with_respect_to/tests.py
 tests/ordering/__init__.py
diff --git a/PKG-INFO b/PKG-INFO
index 5d5f57e..72647a0 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,6 +1,6 @@
 Metadata-Version: 1.1
 Name: Django
-Version: 1.9.1
+Version: 1.9.2
 Summary: A high-level Python Web framework that encourages rapid development and clean, pragmatic design.
 Home-page: http://www.djangoproject.com/
 Author: Django Software Foundation
diff --git a/django/__init__.py b/django/__init__.py
index fb99424..3dbe18f 100644
--- a/django/__init__.py
+++ b/django/__init__.py
@@ -1,6 +1,6 @@
 from django.utils.version import get_version
 
-VERSION = (1, 9, 1, 'final', 0)
+VERSION = (1, 9, 2, 'final', 0)
 
 __version__ = get_version(VERSION)
 
diff --git a/django/conf/app_template/__init__.py b/django/conf/app_template/__init__.py-tpl
similarity index 100%
rename from django/conf/app_template/__init__.py
rename to django/conf/app_template/__init__.py-tpl
diff --git a/django/conf/app_template/admin.py b/django/conf/app_template/admin.py-tpl
similarity index 100%
rename from django/conf/app_template/admin.py
rename to django/conf/app_template/admin.py-tpl
diff --git a/django/conf/app_template/apps.py b/django/conf/app_template/apps.py-tpl
similarity index 100%
rename from django/conf/app_template/apps.py
rename to django/conf/app_template/apps.py-tpl
diff --git a/django/conf/app_template/migrations/__init__.py b/django/conf/app_template/migrations/__init__.py-tpl
similarity index 100%
rename from django/conf/app_template/migrations/__init__.py
rename to django/conf/app_template/migrations/__init__.py-tpl
diff --git a/django/conf/app_template/models.py b/django/conf/app_template/models.py-tpl
similarity index 100%
rename from django/conf/app_template/models.py
rename to django/conf/app_template/models.py-tpl
diff --git a/django/conf/app_template/tests.py b/django/conf/app_template/tests.py-tpl
similarity index 100%
rename from django/conf/app_template/tests.py
rename to django/conf/app_template/tests.py-tpl
diff --git a/django/conf/app_template/views.py b/django/conf/app_template/views.py-tpl
similarity index 100%
rename from django/conf/app_template/views.py
rename to django/conf/app_template/views.py-tpl
diff --git a/django/conf/project_template/manage.py b/django/conf/project_template/manage.py-tpl
similarity index 100%
rename from django/conf/project_template/manage.py
rename to django/conf/project_template/manage.py-tpl
diff --git a/django/conf/project_template/project_name/__init__.py b/django/conf/project_template/project_name/__init__.py-tpl
similarity index 100%
rename from django/conf/project_template/project_name/__init__.py
rename to django/conf/project_template/project_name/__init__.py-tpl
diff --git a/django/conf/project_template/project_name/settings.py b/django/conf/project_template/project_name/settings.py-tpl
similarity index 100%
rename from django/conf/project_template/project_name/settings.py
rename to django/conf/project_template/project_name/settings.py-tpl
diff --git a/django/conf/project_template/project_name/urls.py b/django/conf/project_template/project_name/urls.py-tpl
similarity index 100%
rename from django/conf/project_template/project_name/urls.py
rename to django/conf/project_template/project_name/urls.py-tpl
diff --git a/django/conf/project_template/project_name/wsgi.py b/django/conf/project_template/project_name/wsgi.py-tpl
similarity index 100%
rename from django/conf/project_template/project_name/wsgi.py
rename to django/conf/project_template/project_name/wsgi.py-tpl
diff --git a/django/contrib/admin/options.py b/django/contrib/admin/options.py
index 2557de9..5264005 100644
--- a/django/contrib/admin/options.py
+++ b/django/contrib/admin/options.py
@@ -38,7 +38,7 @@ from django.template.response import SimpleTemplateResponse, TemplateResponse
 from django.utils import six
 from django.utils.decorators import method_decorator
 from django.utils.encoding import force_text, python_2_unicode_compatible
-from django.utils.html import escape, escapejs
+from django.utils.html import escape
 from django.utils.http import urlencode
 from django.utils.safestring import mark_safe
 from django.utils.text import capfirst, get_text_list
@@ -1113,9 +1113,9 @@ class ModelAdmin(BaseModelAdmin):
             new_value = obj.serializable_value(attr)
             return SimpleTemplateResponse('admin/popup_response.html', {
                 'action': 'change',
-                'value': escape(value),
-                'obj': escapejs(obj),
-                'new_value': escape(new_value),
+                'value': value,
+                'obj': obj,
+                'new_value': new_value,
             })
 
         opts = self.model._meta
@@ -1343,6 +1343,10 @@ class ModelAdmin(BaseModelAdmin):
 
         model = self.model
         opts = model._meta
+
+        if request.method == 'POST' and '_saveasnew' in request.POST:
+            object_id = None
+
         add = object_id is None
 
         if add:
@@ -1360,10 +1364,6 @@ class ModelAdmin(BaseModelAdmin):
                 raise Http404(_('%(name)s object with primary key %(key)r does not exist.') % {
                     'name': force_text(opts.verbose_name), 'key': escape(object_id)})
 
-            if request.method == 'POST' and "_saveasnew" in request.POST:
-                object_id = None
-                obj = None
-
         ModelForm = self.get_form(request, obj)
         if request.method == 'POST':
             form = ModelForm(request.POST, request.FILES, instance=obj)
@@ -1426,6 +1426,8 @@ class ModelAdmin(BaseModelAdmin):
         if request.method == 'POST' and not form_validated and "_saveasnew" in request.POST:
             context['show_save'] = False
             context['show_save_and_continue'] = False
+            # Use the change template instead of the add template.
+            add = False
 
         context.update(extra_context or {})
 
diff --git a/django/contrib/admin/sites.py b/django/contrib/admin/sites.py
index 39f22b8..0e43b18 100644
--- a/django/contrib/admin/sites.py
+++ b/django/contrib/admin/sites.py
@@ -367,7 +367,13 @@ class AdminSite(object):
         """
         from django.contrib.auth.views import logout
         defaults = {
-            'extra_context': dict(self.each_context(request), **(extra_context or {})),
+            'extra_context': dict(
+                self.each_context(request),
+                # Since the user isn't logged out at this point, the value of
+                # has_permission must be overridden.
+                has_permission=False,
+                **(extra_context or {})
+            ),
         }
         if self.logout_template is not None:
             defaults['template_name'] = self.logout_template
diff --git a/django/contrib/admin/static/admin/js/admin/DateTimeShortcuts.js b/django/contrib/admin/static/admin/js/admin/DateTimeShortcuts.js
index bc7e187..1943935 100644
--- a/django/contrib/admin/static/admin/js/admin/DateTimeShortcuts.js
+++ b/django/contrib/admin/static/admin/js/admin/DateTimeShortcuts.js
@@ -297,8 +297,8 @@
             if (inp.value) {
                 var format = get_format('DATE_INPUT_FORMATS')[0];
                 var selected = inp.value.strptime(format);
-                var year = selected.getFullYear();
-                var month = selected.getMonth() + 1;
+                var year = selected.getUTCFullYear();
+                var month = selected.getUTCMonth() + 1;
                 var re = /\d{4}/;
                 if (re.test(year.toString()) && month >= 1 && month <= 12) {
                     DateTimeShortcuts.calendars[num].drawDate(month, year, selected);
diff --git a/django/contrib/admin/static/admin/js/core.js b/django/contrib/admin/static/admin/js/core.js
index 34f9926..1840948 100644
--- a/django/contrib/admin/static/admin/js/core.js
+++ b/django/contrib/admin/static/admin/js/core.js
@@ -240,7 +240,10 @@ function findPosY(obj) {
             }
             ++i;
         }
-        return new Date(year, month, day);
+        // Create Date object from UTC since the parsed value is supposed to be
+        // in UTC, not local time. Also, the calendar uses UTC functions for
+        // date extraction.
+        return new Date(Date.UTC(year, month, day));
     };
 
 })();
diff --git a/django/contrib/admin/utils.py b/django/contrib/admin/utils.py
index e85e2de..254dd96 100644
--- a/django/contrib/admin/utils.py
+++ b/django/contrib/admin/utils.py
@@ -383,7 +383,7 @@ def help_text_for_field(name, model):
 def display_for_field(value, field, empty_value_display):
     from django.contrib.admin.templatetags.admin_list import _boolean_icon
 
-    if field.flatchoices:
+    if getattr(field, 'flatchoices', None):
         return dict(field.flatchoices).get(value, empty_value_display)
     # NullBooleanField needs special-case null-handling, so it comes
     # before the general null test.
diff --git a/django/contrib/auth/hashers.py b/django/contrib/auth/hashers.py
index 0188f4a..93d4598 100644
--- a/django/contrib/auth/hashers.py
+++ b/django/contrib/auth/hashers.py
@@ -353,7 +353,7 @@ class BCryptPasswordHasher(BCryptSHA256PasswordHasher):
 
     This hasher does not first hash the password which means it is subject to
     the 72 character bcrypt password truncation, most use cases should prefer
-    the BCryptSha512PasswordHasher.
+    the BCryptSHA256PasswordHasher.
 
     See: https://code.djangoproject.com/ticket/20138
     """
diff --git a/django/contrib/gis/serializers/geojson.py b/django/contrib/gis/serializers/geojson.py
index f26147a..b26ec2e 100644
--- a/django/contrib/gis/serializers/geojson.py
+++ b/django/contrib/gis/serializers/geojson.py
@@ -18,6 +18,9 @@ class Serializer(JSONSerializer):
         super(Serializer, self)._init_options()
         self.geometry_field = self.json_kwargs.pop('geometry_field', None)
         self.srid = self.json_kwargs.pop('srid', 4326)
+        if (self.selected_fields is not None and self.geometry_field is not None
+                and self.geometry_field not in self.selected_fields):
+            self.selected_fields = list(self.selected_fields) + [self.geometry_field]
 
     def start_serialization(self):
         self._init_options()
diff --git a/django/contrib/gis/templates/gis/openlayers.html b/django/contrib/gis/templates/gis/openlayers.html
index 02fa988..81f33ae 100644
--- a/django/contrib/gis/templates/gis/openlayers.html
+++ b/django/contrib/gis/templates/gis/openlayers.html
@@ -1,4 +1,5 @@
-<style type="text/css">{% block map_css %}{% load i18n static %}{% get_current_language_bidi as LANGUAGE_BIDI %}
+{% load i18n l10n static %}
+<style type="text/css">{% block map_css %}{% get_current_language_bidi as LANGUAGE_BIDI %}
     #{{ id }}_map { width: {{ map_width }}px; height: {{ map_height }}px; }
     #{{ id }}_map .aligned label { float: inherit; }
     #{{ id }}_div_map { position: relative; vertical-align: top; float: {{ LANGUAGE_BIDI|yesno:"right,left" }}; }
@@ -25,7 +26,7 @@
             id: '{{ id }}',
             map_id: '{{ id }}_map',
             map_options: map_options,
-            map_srid: {{ map_srid }},
+            map_srid: {{ map_srid|unlocalize }},
             name: '{{ name }}'
         };
         {% endblock %}
diff --git a/django/core/management/templates.py b/django/core/management/templates.py
index 3addb06..9cb4d95 100644
--- a/django/core/management/templates.py
+++ b/django/core/management/templates.py
@@ -42,6 +42,11 @@ class TemplateCommand(BaseCommand):
     # Can't perform any active locale changes during this command, because
     # setting might not be available at all.
     leave_locale_alone = True
+    # Rewrite the following suffixes when determining the target filename.
+    rewrite_template_suffixes = (
+        # Allow shipping invalid .py files without byte-compilation.
+        ('.py-tpl', '.py'),
+    )
 
     def add_arguments(self, parser):
         parser.add_argument('name', help='Name of the application or project.')
@@ -139,6 +144,11 @@ class TemplateCommand(BaseCommand):
                 old_path = path.join(root, filename)
                 new_path = path.join(top_dir, relative_dir,
                                      filename.replace(base_name, name))
+                for old_suffix, new_suffix in self.rewrite_template_suffixes:
+                    if new_path.endswith(old_suffix):
+                        new_path = new_path[:-len(old_suffix)] + new_suffix
+                        break  # Only rewrite once
+
                 if path.exists(new_path):
                     raise CommandError("%s already exists, overlaying a "
                                        "project or app into an existing "
@@ -149,7 +159,7 @@ class TemplateCommand(BaseCommand):
                 # accidentally render Django templates files
                 with open(old_path, 'rb') as template_file:
                     content = template_file.read()
-                if filename.endswith(extensions) or filename in extra_files:
+                if new_path.endswith(extensions) or filename in extra_files:
                     content = content.decode('utf-8')
                     template = Engine().from_string(content)
                     content = template.render(context)
diff --git a/django/db/backends/base/operations.py b/django/db/backends/base/operations.py
index 7957265..6e5aff1 100644
--- a/django/db/backends/base/operations.py
+++ b/django/db/backends/base/operations.py
@@ -227,7 +227,7 @@ class BaseDatabaseOperations(object):
     def lookup_cast(self, lookup_type, internal_type=None):
         """
         Returns the string to use in a query when performing lookups
-        ("contains", "like", etc). The resulting string should contain a '%s'
+        ("contains", "like", etc.). The resulting string should contain a '%s'
         placeholder for the column being searched against.
         """
         return "%s"
diff --git a/django/db/backends/mysql/creation.py b/django/db/backends/mysql/creation.py
index 43857f0..ae43709 100644
--- a/django/db/backends/mysql/creation.py
+++ b/django/db/backends/mysql/creation.py
@@ -31,7 +31,7 @@ class DatabaseCreation(BaseDatabaseCreation):
                 try:
                     if verbosity >= 1:
                         print("Destroying old test database for alias %s..." % (
-                            self._get_database_display_str(target_database_name, verbosity),
+                            self._get_database_display_str(verbosity, target_database_name),
                         ))
                     cursor.execute("DROP DATABASE %s" % qn(target_database_name))
                     cursor.execute("CREATE DATABASE %s" % qn(target_database_name))
diff --git a/django/db/backends/postgresql/creation.py b/django/db/backends/postgresql/creation.py
index 2a886ba..3efcfc7 100644
--- a/django/db/backends/postgresql/creation.py
+++ b/django/db/backends/postgresql/creation.py
@@ -33,7 +33,7 @@ class DatabaseCreation(BaseDatabaseCreation):
                 try:
                     if verbosity >= 1:
                         print("Destroying old test database for alias %s..." % (
-                            self._get_database_display_str(target_database_name, verbosity),
+                            self._get_database_display_str(verbosity, target_database_name),
                         ))
                     cursor.execute("DROP DATABASE %s" % qn(target_database_name))
                     cursor.execute("CREATE DATABASE %s WITH TEMPLATE %s" % (
diff --git a/django/db/backends/postgresql/schema.py b/django/db/backends/postgresql/schema.py
index cc31aad..8d4dc87 100644
--- a/django/db/backends/postgresql/schema.py
+++ b/django/db/backends/postgresql/schema.py
@@ -110,13 +110,13 @@ class DatabaseSchemaEditor(BaseDatabaseSchemaEditor):
             new_db_params, strict,
         )
         # Added an index? Create any PostgreSQL-specific indexes.
-        if ((not old_field.db_index and new_field.db_index) or (not old_field.unique and new_field.unique)):
+        if not old_field.db_index and not old_field.unique and (new_field.db_index or new_field.unique):
             like_index_statement = self._create_like_index_sql(model, new_field)
             if like_index_statement is not None:
                 self.execute(like_index_statement)
 
         # Removed an index? Drop any PostgreSQL-specific indexes.
-        if ((not new_field.db_index and old_field.db_index) or (not new_field.unique and old_field.unique)):
+        if (old_field.db_index or old_field.unique) and not (new_field.db_index or new_field.unique):
             index_to_remove = self._create_index_name(model, [old_field.column], suffix='_like')
             index_names = self._constraint_names(model, [old_field.column], index=True)
             for index_name in index_names:
diff --git a/django/db/backends/sqlite3/operations.py b/django/db/backends/sqlite3/operations.py
index 91d1a27..2af0846 100644
--- a/django/db/backends/sqlite3/operations.py
+++ b/django/db/backends/sqlite3/operations.py
@@ -107,6 +107,19 @@ class DatabaseOperations(BaseDatabaseOperations):
         """
         Only for last_executed_query! Don't use this to execute SQL queries!
         """
+        # This function is limited both by SQLITE_LIMIT_VARIABLE_NUMBER (the
+        # number of parameters, default = 999) and SQLITE_MAX_COLUMN (the
+        # number of return values, default = 2000). Since Python's sqlite3
+        # module doesn't expose the get_limit() C API, assume the default
+        # limits are in effect and split the work in batches if needed.
+        BATCH_SIZE = 999
+        if len(params) > BATCH_SIZE:
+            results = ()
+            for index in range(0, len(params), BATCH_SIZE):
+                chunk = params[index:index + BATCH_SIZE]
+                results += self._quote_params_for_last_executed_query(chunk)
+            return results
+
         sql = 'SELECT ' + ', '.join(['QUOTE(?)'] * len(params))
         # Bypass Django's wrappers and use the underlying sqlite3 connection
         # to avoid logging this query - it would trigger infinite recursion.
diff --git a/django/db/migrations/questioner.py b/django/db/migrations/questioner.py
index aef80f4..47d4cdf 100644
--- a/django/db/migrations/questioner.py
+++ b/django/db/migrations/questioner.py
@@ -38,6 +38,9 @@ class MigrationQuestioner(object):
         except LookupError:         # It's a fake app.
             return self.defaults.get("ask_initial", False)
         migrations_import_path = MigrationLoader.migrations_module(app_config.label)
+        if migrations_import_path is None:
+            # It's an application with migrations disabled.
+            return self.defaults.get("ask_initial", False)
         try:
             migrations_module = importlib.import_module(migrations_import_path)
         except ImportError:
diff --git a/django/db/models/fields/related.py b/django/db/models/fields/related.py
index 80b8e63..ff820ae 100644
--- a/django/db/models/fields/related.py
+++ b/django/db/models/fields/related.py
@@ -39,7 +39,7 @@ from .reverse_related import (
 RECURSIVE_RELATIONSHIP_CONSTANT = 'self'
 
 
-def resolve_relation(scope_model, relation):
+def resolve_relation(scope_model, relation, resolve_recursive_relationship=True):
     """
     Transform relation into a model or fully-qualified model string of the form
     "app_label.ModelName", relative to scope_model.
@@ -54,12 +54,11 @@ def resolve_relation(scope_model, relation):
     """
     # Check for recursive relations
     if relation == RECURSIVE_RELATIONSHIP_CONSTANT:
-        relation = scope_model
-
+        if resolve_recursive_relationship:
+            relation = scope_model
     # Look for an "app.Model" relation
-    if isinstance(relation, six.string_types):
-        if "." not in relation:
-            relation = "%s.%s" % (scope_model._meta.app_label, relation)
+    elif isinstance(relation, six.string_types) and '.' not in relation:
+        relation = "%s.%s" % (scope_model._meta.app_label, relation)
 
     return relation
 
@@ -306,6 +305,11 @@ class RelatedField(Field):
                 field.remote_field.model = related
                 field.do_related_class(related, model)
             lazy_related_operation(resolve_related_class, cls, self.remote_field.model, field=self)
+        else:
+            # Bind a lazy reference to the app in which the model is defined.
+            self.remote_field.model = resolve_relation(
+                cls, self.remote_field.model, resolve_recursive_relationship=False
+            )
 
     def get_forward_related_filter(self, obj):
         """
@@ -1577,6 +1581,11 @@ class ManyToManyField(RelatedField):
                 lazy_related_operation(resolve_through_model, cls, self.remote_field.through, field=self)
             elif not cls._meta.swapped:
                 self.remote_field.through = create_many_to_many_intermediary_model(self, cls)
+        else:
+            # Bind a lazy reference to the app in which the model is defined.
+            self.remote_field.through = resolve_relation(
+                cls, self.remote_field.through, resolve_recursive_relationship=False
+            )
 
         # Add the descriptor for the m2m relation.
         setattr(cls, self.name, ManyToManyDescriptor(self.remote_field, reverse=False))
diff --git a/django/db/models/sql/compiler.py b/django/db/models/sql/compiler.py
index 48b0046..22e4e88 100644
--- a/django/db/models/sql/compiler.py
+++ b/django/db/models/sql/compiler.py
@@ -568,7 +568,7 @@ class SQLCompiler(object):
         # If we get to this point and the field is a relation to another model,
         # append the default ordering for that model unless the attribute name
         # of the field is specified.
-        if field.is_relation and path and opts.ordering and name != field.attname:
+        if field.is_relation and opts.ordering and getattr(field, 'attname', None) != name:
             # Firstly, avoid infinite loops.
             if not already_seen:
                 already_seen = set()
diff --git a/django/dispatch/dispatcher.py b/django/dispatch/dispatcher.py
index 79fdb0b..2878ffa 100644
--- a/django/dispatch/dispatcher.py
+++ b/django/dispatch/dispatcher.py
@@ -171,13 +171,13 @@ class Signal(object):
         Send signal from sender to all connected receivers.
 
         If any receiver raises an error, the error propagates back through send,
-        terminating the dispatch loop, so it is quite possible to not have all
-        receivers called if a raises an error.
+        terminating the dispatch loop. So it's possible that all receivers
+        won't be called if an error is raised.
 
         Arguments:
 
             sender
-                The sender of the signal Either a specific object or None.
+                The sender of the signal. Either a specific object or None.
 
             named
                 Named arguments which will be passed to receivers.
diff --git a/django/forms/fields.py b/django/forms/fields.py
index d2ae133..e59cf81 100644
--- a/django/forms/fields.py
+++ b/django/forms/fields.py
@@ -177,6 +177,8 @@ class Field(six.with_metaclass(RenameFieldMethods, object)):
         For most fields, this will simply be data; FileFields need to handle it
         a bit differently.
         """
+        if self.disabled:
+            return initial
         return data
 
     def widget_attrs(self, widget):
diff --git a/django/middleware/common.py b/django/middleware/common.py
index 3db925c..a8958a8 100644
--- a/django/middleware/common.py
+++ b/django/middleware/common.py
@@ -8,6 +8,7 @@ from django.core.exceptions import PermissionDenied
 from django.core.mail import mail_managers
 from django.utils.cache import get_conditional_response, set_response_etag
 from django.utils.encoding import force_text
+from django.utils.http import unquote_etag
 from django.utils.six.moves.urllib.parse import urlparse
 
 logger = logging.getLogger('django.request')
@@ -120,9 +121,7 @@ class CommonMiddleware(object):
             if response.has_header('ETag'):
                 return get_conditional_response(
                     request,
-                    # get_conditional_response() requires an unquoted version
-                    # of the response's ETag.
-                    etag=response['ETag'].strip('"'),
+                    etag=unquote_etag(response['ETag']),
                     response=response,
                 )
 
diff --git a/django/middleware/csrf.py b/django/middleware/csrf.py
index 797b6f3..25fb733 100644
--- a/django/middleware/csrf.py
+++ b/django/middleware/csrf.py
@@ -174,7 +174,7 @@ class CsrfViewMiddleware(object):
                     good_referer = request.get_host()
                 else:
                     good_referer = settings.CSRF_COOKIE_DOMAIN
-                    server_port = request.META['SERVER_PORT']
+                    server_port = request.get_port()
                     if server_port not in ('443', '80'):
                         good_referer = '%s:%s' % (good_referer, server_port)
 
diff --git a/django/middleware/http.py b/django/middleware/http.py
index 7a6f237..7912200 100644
--- a/django/middleware/http.py
+++ b/django/middleware/http.py
@@ -1,5 +1,5 @@
 from django.utils.cache import get_conditional_response
-from django.utils.http import http_date, parse_http_date_safe
+from django.utils.http import http_date, parse_http_date_safe, unquote_etag
 
 
 class ConditionalGetMiddleware(object):
@@ -23,7 +23,7 @@ class ConditionalGetMiddleware(object):
         if etag or last_modified:
             return get_conditional_response(
                 request,
-                etag=etag,
+                etag=unquote_etag(etag),
                 last_modified=last_modified,
                 response=response,
             )
diff --git a/django/template/base.py b/django/template/base.py
index 0df744f..30d339a 100644
--- a/django/template/base.py
+++ b/django/template/base.py
@@ -224,6 +224,7 @@ class Template(object):
         tokens = lexer.tokenize()
         parser = Parser(
             tokens, self.engine.template_libraries, self.engine.template_builtins,
+            self.origin,
         )
 
         try:
@@ -444,7 +445,7 @@ class DebugLexer(Lexer):
 
 
 class Parser(object):
-    def __init__(self, tokens, libraries=None, builtins=None):
+    def __init__(self, tokens, libraries=None, builtins=None, origin=None):
         self.tokens = tokens
         self.tags = {}
         self.filters = {}
@@ -458,6 +459,7 @@ class Parser(object):
         self.libraries = libraries
         for builtin in builtins:
             self.add_library(builtin)
+        self.origin = origin
 
     def parse(self, parse_until=None):
         """
@@ -534,8 +536,10 @@ class Parser(object):
             )
         if isinstance(nodelist, NodeList) and not isinstance(node, TextNode):
             nodelist.contains_nontext = True
-        # Set token here since we can't modify the node __init__ method
+        # Set origin and token here since we can't modify the node __init__()
+        # method.
         node.token = token
+        node.origin = self.origin
         nodelist.append(node)
 
     def error(self, token, e):
diff --git a/django/template/defaultfilters.py b/django/template/defaultfilters.py
index 35dc9f0..eba65e5 100644
--- a/django/template/defaultfilters.py
+++ b/django/template/defaultfilters.py
@@ -888,7 +888,7 @@ def yesno(value, arg=None):
 def filesizeformat(bytes):
     """
     Formats the value like a 'human-readable' file size (i.e. 13 KB, 4.1 MB,
-    102 bytes, etc).
... 24384 lines suppressed ...

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/python-django.git



More information about the Python-modules-commits mailing list