Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse code

Merge remote-tracking branch 'core/master' into schema-alteration

Conflicts:
	django/db/models/loading.py
	django/db/models/options.py
  • Loading branch information...
commit b62e82365ad56ca930f7abb1d1dbdf9ce5a7c7c3 2 parents 6a632e0 + c64b57d
Andrew Godwin authored December 18, 2012

Showing 308 changed files with 9,131 additions and 3,005 deletions. Show diff stats Hide diff stats

  1. 2  .gitattributes
  2. 6  AUTHORS
  3. 2  django/__init__.py
  4. 8  django/bin/daily_cleanup.py
  5. 14  django/conf/__init__.py
  6. 9  django/conf/global_settings.py
  7. 15  django/conf/locale/__init__.py
  8. 4  django/conf/locale/ca/formats.py
  9. 25  django/conf/locale/cs/formats.py
  10. 4  django/conf/locale/da/formats.py
  11. 8  django/conf/locale/de/formats.py
  12. 8  django/conf/locale/de_CH/formats.py
  13. 5  django/conf/locale/en/formats.py
  14. 5  django/conf/locale/en_GB/formats.py
  15. 4  django/conf/locale/es/formats.py
  16. 4  django/conf/locale/es_AR/formats.py
  17. 3  django/conf/locale/es_MX/formats.py
  18. 3  django/conf/locale/es_NI/formats.py
  19. 8  django/conf/locale/fr/formats.py
  20. 5  django/conf/locale/hr/formats.py
  21. 4  django/conf/locale/it/formats.py
  22. 5  django/conf/locale/ka/formats.py
  23. 1  django/conf/locale/ko/formats.py
  24. 1  django/conf/locale/lv/formats.py
  25. 9  django/conf/locale/mk/formats.py
  26. 5  django/conf/locale/ml/formats.py
  27. 7  django/conf/locale/nb/formats.py
  28. 7  django/conf/locale/nl/formats.py
  29. 6  django/conf/locale/nn/formats.py
  30. 9  django/conf/locale/pl/formats.py
  31. 5  django/conf/locale/pt/formats.py
  32. 9  django/conf/locale/pt_BR/formats.py
  33. 8  django/conf/locale/ru/formats.py
  34. 9  django/conf/locale/sk/formats.py
  35. 5  django/conf/locale/sl/formats.py
  36. 8  django/conf/locale/sr/formats.py
  37. 8  django/conf/locale/sr_Latn/formats.py
  38. 5  django/conf/locale/sv/formats.py
  39. 9  django/conf/locale/tr/formats.py
  40. 4  django/conf/project_template/project_name/settings.py
  41. 4  django/contrib/admin/filters.py
  42. 12  django/contrib/admin/forms.py
  43. 4  django/contrib/admin/helpers.py
  44. 13  django/contrib/admin/models.py
  45. 41  django/contrib/admin/options.py
  46. 10  django/contrib/admin/sites.py
  47. 4  django/contrib/admin/static/admin/css/base.css
  48. 5  django/contrib/admin/static/admin/css/rtl.css
  49. 15  django/contrib/admin/static/admin/css/widgets.css
  50. 137  django/contrib/admin/static/admin/js/admin/ordering.js
  51. 167  django/contrib/admin/static/admin/js/getElementsBySelector.js
  52. 4  django/contrib/admin/templates/admin/auth/user/change_password.html
  53. 2  django/contrib/admin/templates/admin/change_form.html
  54. 2  django/contrib/admin/templates/admin/edit_inline/tabular.html
  55. 2  django/contrib/admin/templates/admin/includes/fieldset.html
  56. 4  django/contrib/admin/templates/admin/index.html
  57. 8  django/contrib/admin/templates/admin/submit_line.html
  58. 2  django/contrib/admin/templatetags/admin_modify.py
  59. 15  django/contrib/admin/templatetags/adminmedia.py
  60. 15  django/contrib/admin/widgets.py
  61. 3  django/contrib/admindocs/views.py
  62. 9  django/contrib/auth/__init__.py
  63. 8  django/contrib/auth/admin.py
  64. 4  django/contrib/auth/context_processors.py
  65. 27  django/contrib/auth/forms.py
  66. 7  django/contrib/auth/handlers/modwsgi.py
  67. 20  django/contrib/auth/management/__init__.py
  68. 17  django/contrib/auth/middleware.py
  69. 160  django/contrib/auth/models.py
  70. 13  django/contrib/auth/tests/__init__.py
  71. 87  django/contrib/auth/tests/auth_backends.py
  72. 2  django/contrib/auth/tests/basic.py
  73. 3  django/contrib/auth/tests/context_processors.py
  74. 58  django/contrib/auth/tests/custom_user.py
  75. 28  django/contrib/auth/tests/forms.py
  76. 43  django/contrib/auth/tests/handlers.py
  77. 34  django/contrib/auth/tests/models.py
  78. 25  django/contrib/auth/tests/remote_user.py
  79. 2  django/contrib/auth/tests/templates/context_processors/auth_attrs_user.html
  80. 11  django/contrib/auth/tests/views.py
  81. 2  django/contrib/auth/tokens.py
  82. 54  django/contrib/auth/views.py
  83. 4  django/contrib/comments/__init__.py
  84. 2  django/contrib/comments/signals.py
  85. 8  django/contrib/comments/views/comments.py
  86. 10  django/contrib/comments/views/moderation.py
  87. 17  django/contrib/comments/views/utils.py
  88. 38  django/contrib/contenttypes/generic.py
  89. 16  django/contrib/contenttypes/management.py
  90. 4  django/contrib/flatpages/forms.py
  91. 5  django/contrib/formtools/tests/__init__.py
  92. 19  django/contrib/formtools/tests/wizard/wizardtests/tests.py
  93. 8  django/contrib/formtools/wizard/storage/base.py
  94. 14  django/contrib/formtools/wizard/views.py
  95. 24  django/contrib/gis/db/backends/oracle/compiler.py
  96. 9  django/contrib/gis/db/backends/oracle/operations.py
  97. 29  django/contrib/gis/db/backends/postgis/creation.py
  98. 46  django/contrib/gis/db/backends/spatialite/base.py
  99. 6  django/contrib/gis/db/models/query.py
  100. 8  django/contrib/gis/db/models/sql/compiler.py
  101. 1  django/contrib/gis/geoip/tests.py
  102. 3  django/contrib/gis/geometry/test_data.py
  103. 23  django/contrib/gis/geos/mutable_list.py
  104. 15  django/contrib/gis/geos/tests/test_geos.py
  105. 9  django/contrib/gis/geos/tests/test_mutable_list.py
  106. 16  django/contrib/gis/measure.py
  107. 3  django/contrib/gis/tests/geo3d/tests.py
  108. 3  django/contrib/gis/tests/geogapp/tests.py
  109. 3  django/contrib/gis/tests/layermap/tests.py
  110. 2  django/contrib/gis/tests/utils.py
  111. 2  django/contrib/gis/utils/ogrinspect.py
  112. 13  django/contrib/humanize/tests.py
  113. 7  django/contrib/localflavor/ar/forms.py
  114. 42  django/contrib/redirects/tests.py
  115. 67  django/contrib/sessions/backends/base.py
  116. 13  django/contrib/sessions/backends/cache.py
  117. 25  django/contrib/sessions/backends/cached_db.py
  118. 7  django/contrib/sessions/backends/db.py
  119. 75  django/contrib/sessions/backends/file.py
  120. 5  django/contrib/sessions/backends/signed_cookies.py
  121. 0  {tests/modeltests/pagination → django/contrib/sessions/management}/__init__.py
  122. 0  {tests/regressiontests/pagination_regress → django/contrib/sessions/management/commands}/__init__.py
  123. 15  django/contrib/sessions/management/commands/clearsessions.py
  124. 161  django/contrib/sessions/tests.py
  125. 5  django/contrib/sitemaps/tests/http.py
  126. 3  django/contrib/staticfiles/storage.py
  127. 10  django/core/cache/__init__.py
  128. 12  django/core/cache/backends/base.py
  129. 12  django/core/cache/backends/db.py
  130. 6  django/core/cache/backends/memcached.py
  131. 17  django/core/files/base.py
  132. 2  django/core/handlers/base.py
  133. 24  django/core/handlers/wsgi.py
  134. 5  django/core/mail/backends/smtp.py
  135. 18  django/core/management/__init__.py
  136. 16  django/core/management/commands/cleanup.py
  137. 5  django/core/management/commands/compilemessages.py
  138. 278  django/core/management/commands/loaddata.py
  139. 6  django/core/management/commands/makemessages.py
  140. 13  django/core/management/sql.py
  141. 8  django/core/management/templates.py
  142. 60  django/core/management/validation.py
  143. 77  django/core/paginator.py
  144. 4  django/core/serializers/base.py
  145. 2  django/core/serializers/xml_serializer.py
  146. 4  django/core/servers/basehttp.py
  147. 16  django/core/signing.py
  148. 14  django/core/urlresolvers.py
  149. 2  django/db/__init__.py
  150. 15  django/db/backends/__init__.py
  151. 52  django/db/backends/creation.py
  152. 82  django/db/backends/mysql/base.py
  153. 134  django/db/backends/oracle/base.py
  154. 10  django/db/backends/oracle/creation.py
  155. 91  django/db/backends/postgresql_psycopg2/base.py
  156. 32  django/db/backends/sqlite3/base.py
  157. 8  django/db/backends/util.py
  158. 5  django/db/models/base.py
  159. 12  django/db/models/expressions.py
  160. 74  django/db/models/fields/related.py
  161. 20  django/db/models/loading.py
  162. 60  django/db/models/options.py
  163. 117  django/db/models/query.py
  164. 17  django/db/models/signals.py
  165. 191  django/db/models/sql/compiler.py
  166. 17  django/db/models/sql/constants.py
  167. 13  django/db/models/sql/expressions.py
  168. 782  django/db/models/sql/query.py
  169. 4  django/db/models/sql/subqueries.py
  170. 12  django/db/utils.py
  171. 73  django/dispatch/dispatcher.py
  172. 16  django/dispatch/saferef.py
  173. 9  django/forms/formsets.py
  174. 2  django/forms/models.py
  175. 4  django/forms/widgets.py
  176. 24  django/http/multipartparser.py
  177. 6  django/http/request.py
  178. 4  django/http/response.py
  179. 1  django/middleware/cache.py
  180. 13  django/middleware/common.py
  181. 12  django/shortcuts/__init__.py
  182. 2  django/template/defaultfilters.py
  183. 13  django/template/defaulttags.py
  184. 2  django/template/response.py
  185. 7  django/test/signals.py
  186. 116  django/test/testcases.py
  187. 8  django/test/utils.py
  188. 23  django/utils/_os.py
  189. 42  django/utils/autoreload.py
  190. 33  django/utils/datastructures.py
  191. 2  django/utils/encoding.py
  192. 16  django/utils/formats.py
  193. 10  django/utils/functional.py
  194. 19  django/utils/html.py
  195. 12  django/utils/http.py
  196. 16  django/utils/log.py
  197. 10  django/utils/translation/trans_real.py
  198. 4  django/utils/tree.py
  199. 11  django/views/generic/base.py
  200. 4  django/views/generic/edit.py
  201. 30  django/views/generic/list.py
  202. 22  django/views/i18n.py
  203. 6  docs/Makefile
  204. 5  docs/_theme/djangodocs/static/djangodocs.css
  205. BIN  docs/_theme/djangodocs/static/docicons-warning.png
  206. 35  docs/conf.py
  207. 23  docs/faq/admin.txt
  208. 2  docs/faq/general.txt
  209. 8  docs/faq/install.txt
  210. 37  docs/faq/troubleshooting.txt
  211. 19  docs/howto/custom-file-storage.txt
  212. 16  docs/howto/deployment/wsgi/modwsgi.txt
  213. 7  docs/index.txt
  214. 7  docs/internals/contributing/writing-code/submitting-patches.txt
  215. 7  docs/internals/contributing/writing-code/unit-tests.txt
  216. 17  docs/internals/deprecation.txt
  217. 580  docs/intro/contributing.txt
  218. 15  docs/intro/index.txt
  219. 3  docs/intro/overview.txt
  220. 365  docs/intro/reusable-apps.txt
  221. 38  docs/intro/tutorial01.txt
  222. 5  docs/intro/tutorial02.txt
  223. 14  docs/intro/tutorial03.txt
  224. 7  docs/intro/tutorial04.txt
  225. 650  docs/intro/tutorial05.txt
  226. 9  docs/make.bat
  227. 3  docs/misc/design-philosophies.txt
  228. 7  docs/ref/class-based-views/flattened-index.txt
  229. 299  docs/ref/class-based-views/generic-date-based.txt
  230. 7  docs/ref/class-based-views/generic-editing.txt
  231. 5  docs/ref/class-based-views/index.txt
  232. 31  docs/ref/class-based-views/mixins-multiple-object.txt
  233. 9  docs/ref/contrib/admin/actions.txt
  234. 101  docs/ref/contrib/admin/index.txt
  235. 9  docs/ref/contrib/comments/index.txt
  236. 4  docs/ref/contrib/comments/signals.txt
  237. 78  docs/ref/contrib/comments/upgrade.txt
  238. 32  docs/ref/contrib/formtools/form-wizard.txt
  239. 11  docs/ref/contrib/gis/geos.txt
  240. 2  docs/ref/contrib/gis/install/index.txt
  241. 281  docs/ref/contrib/gis/tutorial.txt
  242. 2  docs/ref/contrib/messages.txt
  243. 29  docs/ref/contrib/sites.txt
  244. 5  docs/ref/contrib/syndication.txt
  245. 5  docs/ref/databases.txt
  246. 42  docs/ref/django-admin.txt
  247. 2  docs/ref/forms/fields.txt
  248. 192  docs/ref/forms/widgets.txt
  249. 7  docs/ref/models/fields.txt
  250. 87  docs/ref/models/instances.txt
  251. 15  docs/ref/models/options.txt
  252. 40  docs/ref/models/querysets.txt
  253. 67  docs/ref/settings.txt
  254. 70  docs/ref/templates/builtins.txt
  255. 8  docs/ref/unicode.txt
  256. 26  docs/ref/urlresolvers.txt
  257. 12  docs/ref/utils.txt
  258. 4  docs/releases/1.0-beta-2.txt
  259. 4  docs/releases/1.0-porting-guide.txt
  260. 4  docs/releases/1.0.txt
  261. 24  docs/releases/1.5-alpha-1.txt
  262. 702  docs/releases/1.5-beta-1.txt
  263. 100  docs/releases/1.5.txt
  264. 43  docs/releases/1.6.txt
  265. 8  docs/releases/index.txt
  266. 883  docs/topics/_images/django_unittest_classes_hierarchy.graffle
  267. BIN  docs/topics/_images/django_unittest_classes_hierarchy.pdf
  268. BIN  docs/topics/_images/django_unittest_classes_hierarchy.png
  269. 3  docs/topics/_images/django_unittest_classes_hierarchy.svg
  270. 163  docs/topics/auth.txt
  271. 10  docs/topics/cache.txt
  272. 12  docs/topics/class-based-views/generic-editing.txt
  273. 20  docs/topics/class-based-views/index.txt
  274. 15  docs/topics/db/managers.txt
  275. 7  docs/topics/db/models.txt
  276. 46  docs/topics/db/multi-db.txt
  277. 35  docs/topics/db/optimization.txt
  278. 21  docs/topics/db/queries.txt
  279. 12  docs/topics/db/transactions.txt
  280. 2  docs/topics/files.txt
  281. 15  docs/topics/forms/modelforms.txt
  282. 957  docs/topics/http/_images/middleware.graffle
  283. BIN  docs/topics/http/_images/middleware.pdf
  284. BIN  docs/topics/http/_images/middleware.png
  285. 3  docs/topics/http/_images/middleware.svg
  286. 191  docs/topics/http/middleware.txt
  287. 52  docs/topics/http/sessions.txt
  288. 2  docs/topics/http/shortcuts.txt
  289. 15  docs/topics/http/urls.txt
  290. 11  docs/topics/http/views.txt
  291. 34  docs/topics/install.txt
  292. 23  docs/topics/logging.txt
  293. 13  docs/topics/python3.txt
  294. 25  docs/topics/security.txt
  295. 9  docs/topics/serialization.txt
  296. 6  docs/topics/templates.txt
  297. 49  docs/topics/testing.txt
  298. 36  tests/modeltests/basic/tests.py
  299. 43  tests/modeltests/expressions/tests.py
  300. 3  tests/modeltests/field_subclassing/tests.py
  301. 26  tests/modeltests/fixtures/tests.py
  302. 6  tests/modeltests/generic_relations/tests.py
  303. 25  tests/modeltests/get_object_or_404/tests.py
  304. 8  tests/modeltests/invalid_models/invalid_models/models.py
  305. 27  tests/modeltests/m2m_recursive/tests.py
  306. 8  tests/modeltests/many_to_one/tests.py
  307. 9  tests/modeltests/model_forms/models.py
2  .gitattributes
... ...
@@ -0,0 +1,2 @@
  1
+# Normalize line endings to avoid spurious failures in the core test suite on Windows.
  2
+*html text eol=lf
6  AUTHORS
@@ -91,6 +91,7 @@ answer newbie questions, and generally made Django that much better:
91 91
     James Bennett
92 92
     Danilo Bargen
93 93
     Shai Berger <shai@platonix.com>
  94
+    berto
94 95
     Julian Bez
95 96
     Arvis Bickovskis <viestards.lists@gmail.com>
96 97
     Natalia Bidart <nataliabidart@gmail.com>
@@ -231,6 +232,7 @@ answer newbie questions, and generally made Django that much better:
231 232
     Simon Greenhill <dev@simon.net.nz>
232 233
     Owen Griffiths
233 234
     Espen Grindhaug <http://grindhaug.org/>
  235
+    Mike Grouchy <http://mikegrouchy.com/>
234 236
     Janos Guljas
235 237
     Thomas Güttler <hv@tbz-pariv.de>
236 238
     Horst Gutmann <zerok@zerokspot.com>
@@ -380,6 +382,7 @@ answer newbie questions, and generally made Django that much better:
380 382
     Christian Metts
381 383
     michal@plovarna.cz
382 384
     Slawek Mikula <slawek dot mikula at gmail dot com>
  385
+    Katie Miller <katie@sub50.com>
383 386
     Shawn Milochik <shawn@milochik.com>
384 387
     mitakummaa@gmail.com
385 388
     Taylor Mitchell <taylor.mitchell@gmail.com>
@@ -510,6 +513,7 @@ answer newbie questions, and generally made Django that much better:
510 513
     Johan C. Stöver <johan@nilling.nl>
511 514
     Nowell Strite <http://nowell.strite.org/>
512 515
     Thomas Stromberg <tstromberg@google.com>
  516
+    Ben Sturmfels <ben@sturm.com.au>
513 517
     Travis Swicegood <travis@domain51.com>
514 518
     Pascal Varet
515 519
     SuperJared
@@ -528,6 +532,7 @@ answer newbie questions, and generally made Django that much better:
528 532
     Terry Huang <terryh.tp@gmail.com>
529 533
     Travis Terry <tdterry7@gmail.com>
530 534
     thebjorn <bp@datakortet.no>
  535
+    Lowe Thiderman <lowe.thiderman@gmail.com>
531 536
     Zach Thompson <zthompson47@gmail.com>
532 537
     Michael Thornhill <michael.thornhill@gmail.com>
533 538
     Deepak Thukral <deep.thukral@gmail.com>
@@ -585,6 +590,7 @@ answer newbie questions, and generally made Django that much better:
585 590
     Gasper Zejn <zejn@kiberpipa.org>
586 591
     Jarek Zgoda <jarek.zgoda@gmail.com>
587 592
     Cheng Zhang
  593
+    Hannes Struß <x@hannesstruss.de>
588 594
 
589 595
 A big THANK YOU goes to:
590 596
 
2  django/__init__.py
... ...
@@ -1,4 +1,4 @@
1  
-VERSION = (1, 5, 0, 'alpha', 0)
  1
+VERSION = (1, 6, 0, 'alpha', 0)
2 2
 
3 3
 def get_version(*args, **kwargs):
4 4
     # Don't litter django/__init__.py with all the get_version stuff.
8  django/bin/daily_cleanup.py
@@ -7,7 +7,13 @@
7 7
 sessions at the moment).
8 8
 """
9 9
 
  10
+import warnings
  11
+
10 12
 from django.core import management
11 13
 
12 14
 if __name__ == "__main__":
13  
-    management.call_command('cleanup')
  15
+    warnings.warn(
  16
+        "The `daily_cleanup` script has been deprecated "
  17
+        "in favor of `django-admin.py clearsessions`.",
  18
+        PendingDeprecationWarning)
  19
+    management.call_command('clearsessions')
14  django/conf/__init__.py
@@ -6,6 +6,7 @@
6 6
 a list of all possible variables.
7 7
 """
8 8
 
  9
+import logging
9 10
 import os
10 11
 import time     # Needed for Windows
11 12
 import warnings
@@ -55,6 +56,15 @@ def _configure_logging(self):
55 56
         """
56 57
         Setup logging from LOGGING_CONFIG and LOGGING settings.
57 58
         """
  59
+        try:
  60
+            # Route warnings through python logging
  61
+            logging.captureWarnings(True)
  62
+            # Allow DeprecationWarnings through the warnings filters
  63
+            warnings.simplefilter("default", DeprecationWarning)
  64
+        except AttributeError:
  65
+            # No captureWarnings on Python 2.6, DeprecationWarnings are on anyway
  66
+            pass
  67
+
58 68
         if self.LOGGING_CONFIG:
59 69
             from django.utils.log import DEFAULT_LOGGING
60 70
             # First find the logging configuration function ...
@@ -83,6 +93,7 @@ def configure(self, default_settings=global_settings, **options):
83 93
         for name, value in options.items():
84 94
             setattr(holder, name, value)
85 95
         self._wrapped = holder
  96
+        self._configure_logging()
86 97
 
87 98
     @property
88 99
     def configured(self):
@@ -99,9 +110,6 @@ class BaseSettings(object):
99 110
     def __setattr__(self, name, value):
100 111
         if name in ("MEDIA_URL", "STATIC_URL") and value and not value.endswith('/'):
101 112
             raise ImproperlyConfigured("If set, %s must end with a slash" % name)
102  
-        elif name == "ADMIN_MEDIA_PREFIX":
103  
-            warnings.warn("The ADMIN_MEDIA_PREFIX setting has been removed; "
104  
-                          "use STATIC_URL instead.", DeprecationWarning)
105 113
         elif name == "ALLOWED_INCLUDE_ROOTS" and isinstance(value, six.string_types):
106 114
             raise ValueError("The ALLOWED_INCLUDE_ROOTS setting must be set "
107 115
                 "to a tuple, not a string.")
9  django/conf/global_settings.py
@@ -150,12 +150,8 @@
150 150
 # Whether to send broken-link emails.
151 151
 SEND_BROKEN_LINK_EMAILS = False
152 152
 
153  
-# Database connection info.
154  
-DATABASES = {
155  
-    'default': {
156  
-        'ENGINE': 'django.db.backends.dummy',
157  
-    },
158  
-}
  153
+# Database connection info. If left empty, will default to the dummy backend.
  154
+DATABASES = {}
159 155
 
160 156
 # Classes used to implement DB routing behavior.
161 157
 DATABASE_ROUTERS = []
@@ -449,6 +445,7 @@
449 445
 # SESSIONS #
450 446
 ############
451 447
 
  448
+SESSION_CACHE_ALIAS = 'default'                         # Cache to store session data if using the cache session backend.
452 449
 SESSION_COOKIE_NAME = 'sessionid'                       # Cookie name. This can be whatever you want.
453 450
 SESSION_COOKIE_AGE = 60 * 60 * 24 * 7 * 2               # Age of cookie, in seconds (default: 2 weeks).
454 451
 SESSION_COOKIE_DOMAIN = None                            # A string like ".example.com", or None for standard domain cookie.
15  django/conf/locale/__init__.py
... ...
@@ -1,5 +1,8 @@
1 1
 from __future__ import unicode_literals
2 2
 
  3
+# About name_local: capitalize it as if your language name was appearing
  4
+# inside a sentence in your language.
  5
+
3 6
 LANG_INFO = {
4 7
     'ar': {
5 8
         'bidi': True,
@@ -53,7 +56,7 @@
53 56
         'bidi': False,
54 57
         'code': 'da',
55 58
         'name': 'Danish',
56  
-        'name_local': 'Dansk',
  59
+        'name_local': 'dansk',
57 60
     },
58 61
     'de': {
59 62
         'bidi': False,
@@ -137,7 +140,7 @@
137 140
         'bidi': False,
138 141
         'code': 'fr',
139 142
         'name': 'French',
140  
-        'name_local': 'Fran\xe7ais',
  143
+        'name_local': 'fran\xe7ais',
141 144
     },
142 145
     'fy-nl': {
143 146
         'bidi': False,
@@ -269,7 +272,7 @@
269 272
         'bidi': False,
270 273
         'code': 'nb',
271 274
         'name': 'Norwegian Bokmal',
272  
-        'name_local': 'Norsk (bokm\xe5l)',
  275
+        'name_local': 'norsk (bokm\xe5l)',
273 276
     },
274 277
     'ne': {
275 278
         'bidi': False,
@@ -287,13 +290,13 @@
287 290
         'bidi': False,
288 291
         'code': 'nn',
289 292
         'name': 'Norwegian Nynorsk',
290  
-        'name_local': 'Norsk (nynorsk)',
  293
+        'name_local': 'norsk (nynorsk)',
291 294
     },
292 295
     'no': {
293 296
         'bidi': False,
294 297
         'code': 'no',
295 298
         'name': 'Norwegian',
296  
-        'name_local': 'Norsk',
  299
+        'name_local': 'norsk',
297 300
     },
298 301
     'pa': {
299 302
         'bidi': False,
@@ -365,7 +368,7 @@
365 368
         'bidi': False,
366 369
         'code': 'sv',
367 370
         'name': 'Swedish',
368  
-        'name_local': 'Svenska',
  371
+        'name_local': 'svenska',
369 372
     },
370 373
     'sw': {
371 374
         'bidi': False,
4  django/conf/locale/ca/formats.py
@@ -19,10 +19,6 @@
19 19
     # '31/12/2009', '31/12/09'
20 20
     '%d/%m/%Y', '%d/%m/%y'
21 21
 )
22  
-TIME_INPUT_FORMATS = (
23  
-    # '14:30:59', '14:30'
24  
-    '%H:%M:%S', '%H:%M'
25  
-)
26 22
 DATETIME_INPUT_FORMATS = (
27 23
     '%d/%m/%Y %H:%M:%S',
28 24
     '%d/%m/%Y %H:%M',
25  django/conf/locale/cs/formats.py
@@ -17,21 +17,26 @@
17 17
 # The *_INPUT_FORMATS strings use the Python strftime format syntax,
18 18
 # see http://docs.python.org/library/datetime.html#strftime-strptime-behavior
19 19
 DATE_INPUT_FORMATS = (
20  
-    '%d.%m.%Y', '%d.%m.%y',     # '25.10.2006', '25.10.06'
21  
-    '%Y-%m-%d', '%y-%m-%d',     # '2006-10-25', '06-10-25'
  20
+    '%d.%m.%Y', '%d.%m.%y',     # '05.01.2006', '05.01.06'
  21
+    '%d. %m. %Y', '%d. %m. %y', # '5. 1. 2006', '5. 1. 06'
22 22
     # '%d. %B %Y', '%d. %b. %Y',  # '25. October 2006', '25. Oct. 2006'
23 23
 )
  24
+# Kept ISO formats as one is in first position
24 25
 TIME_INPUT_FORMATS = (
25  
-    '%H:%M:%S', # '14:30:59'
26  
-    '%H:%M',    # '14:30'
  26
+    '%H:%M:%S', # '04:30:59'
  27
+    '%H.%M',    # '04.30'
  28
+    '%H:%M',    # '04:30'
27 29
 )
28 30
 DATETIME_INPUT_FORMATS = (
29  
-    '%d.%m.%Y %H:%M:%S',    # '25.10.2006 14:30:59'
30  
-    '%d.%m.%Y %H:%M',       # '25.10.2006 14:30'
31  
-    '%d.%m.%Y',             # '25.10.2006'
32  
-    '%Y-%m-%d %H:%M:%S',    # '2006-10-25 14:30:59'
33  
-    '%Y-%m-%d %H:%M',       # '2006-10-25 14:30'
34  
-    '%Y-%m-%d',             # '2006-10-25'
  31
+    '%d.%m.%Y %H:%M:%S',    # '05.01.2006 04:30:59'
  32
+    '%d.%m.%Y %H.%M',       # '05.01.2006 04.30'
  33
+    '%d.%m.%Y %H:%M',       # '05.01.2006 04:30'
  34
+    '%d.%m.%Y',             # '05.01.2006'
  35
+    '%d. %m. %Y %H:%M:%S',  # '05. 01. 2006 04:30:59'
  36
+    '%d. %m. %Y %H.%M',     # '05. 01. 2006 04.30'
  37
+    '%d. %m. %Y %H:%M',     # '05. 01. 2006 04:30'
  38
+    '%d. %m. %Y',           # '05. 01. 2006'
  39
+    '%Y-%m-%d %H.%M',       # '2006-01-05 04.30'
35 40
 )
36 41
 DECIMAL_SEPARATOR = ','
37 42
 THOUSAND_SEPARATOR = '\xa0' # non-breaking space
4  django/conf/locale/da/formats.py
@@ -18,10 +18,6 @@
18 18
 DATE_INPUT_FORMATS = (
19 19
     '%d.%m.%Y',                         # '25.10.2006'
20 20
 )
21  
-TIME_INPUT_FORMATS = (
22  
-    '%H:%M:%S',                         # '14:30:59'
23  
-    '%H:%M',                            # '14:30'
24  
-)
25 21
 DATETIME_INPUT_FORMATS = (
26 22
     '%d.%m.%Y %H:%M:%S',                # '25.10.2006 14:30:59'
27 23
     '%d.%m.%Y %H:%M',                   # '25.10.2006 14:30'
8  django/conf/locale/de/formats.py
@@ -17,20 +17,12 @@
17 17
 # see http://docs.python.org/library/datetime.html#strftime-strptime-behavior
18 18
 DATE_INPUT_FORMATS = (
19 19
     '%d.%m.%Y', '%d.%m.%y',     # '25.10.2006', '25.10.06'
20  
-    '%Y-%m-%d', '%y-%m-%d',     # '2006-10-25', '06-10-25'
21 20
     # '%d. %B %Y', '%d. %b. %Y',  # '25. October 2006', '25. Oct. 2006'
22 21
 )
23  
-TIME_INPUT_FORMATS = (
24  
-    '%H:%M:%S', # '14:30:59'
25  
-    '%H:%M',    # '14:30'
26  
-)
27 22
 DATETIME_INPUT_FORMATS = (
28 23
     '%d.%m.%Y %H:%M:%S',    # '25.10.2006 14:30:59'
29 24
     '%d.%m.%Y %H:%M',       # '25.10.2006 14:30'
30 25
     '%d.%m.%Y',             # '25.10.2006'
31  
-    '%Y-%m-%d %H:%M:%S',    # '2006-10-25 14:30:59'
32  
-    '%Y-%m-%d %H:%M',       # '2006-10-25 14:30'
33  
-    '%Y-%m-%d',             # '2006-10-25'
34 26
 )
35 27
 DECIMAL_SEPARATOR = ','
36 28
 THOUSAND_SEPARATOR = '.'
8  django/conf/locale/de_CH/formats.py
@@ -19,20 +19,12 @@
19 19
 # see http://docs.python.org/library/datetime.html#strftime-strptime-behavior
20 20
 DATE_INPUT_FORMATS = (
21 21
     '%d.%m.%Y', '%d.%m.%y',     # '25.10.2006', '25.10.06'
22  
-    '%Y-%m-%d', '%y-%m-%d',     # '2006-10-25', '06-10-25'
23 22
     # '%d. %B %Y', '%d. %b. %Y',  # '25. October 2006', '25. Oct. 2006'
24 23
 )
25  
-TIME_INPUT_FORMATS = (
26  
-    '%H:%M:%S', # '14:30:59'
27  
-    '%H:%M',    # '14:30'
28  
-)
29 24
 DATETIME_INPUT_FORMATS = (
30 25
     '%d.%m.%Y %H:%M:%S',    # '25.10.2006 14:30:59'
31 26
     '%d.%m.%Y %H:%M',       # '25.10.2006 14:30'
32 27
     '%d.%m.%Y',             # '25.10.2006'
33  
-    '%Y-%m-%d %H:%M:%S',    # '2006-10-25 14:30:59'
34  
-    '%Y-%m-%d %H:%M',       # '2006-10-25 14:30'
35  
-    '%Y-%m-%d',             # '2006-10-25'
36 28
 )
37 29
 
38 30
 # these are the separators for non-monetary numbers. For monetary numbers,
5  django/conf/locale/en/formats.py
@@ -15,6 +15,7 @@
15 15
 
16 16
 # The *_INPUT_FORMATS strings use the Python strftime format syntax,
17 17
 # see http://docs.python.org/library/datetime.html#strftime-strptime-behavior
  18
+# Kept ISO formats as they are in first position
18 19
 DATE_INPUT_FORMATS = (
19 20
     '%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', # '2006-10-25', '10/25/2006', '10/25/06'
20 21
     # '%b %d %Y', '%b %d, %Y',            # 'Oct 25 2006', 'Oct 25, 2006'
@@ -22,10 +23,6 @@
22 23
     # '%B %d %Y', '%B %d, %Y',            # 'October 25 2006', 'October 25, 2006'
23 24
     # '%d %B %Y', '%d %B, %Y',            # '25 October 2006', '25 October, 2006'
24 25
 )
25  
-TIME_INPUT_FORMATS = (
26  
-    '%H:%M:%S',     # '14:30:59'
27  
-    '%H:%M',        # '14:30'
28  
-)
29 26
 DATETIME_INPUT_FORMATS = (
30 27
     '%Y-%m-%d %H:%M:%S',     # '2006-10-25 14:30:59'
31 28
     '%Y-%m-%d %H:%M',        # '2006-10-25 14:30'
5  django/conf/locale/en_GB/formats.py
@@ -17,16 +17,11 @@
17 17
 # see http://docs.python.org/library/datetime.html#strftime-strptime-behavior
18 18
 DATE_INPUT_FORMATS = (
19 19
     '%d/%m/%Y', '%d/%m/%y',             # '25/10/2006', '25/10/06'
20  
-    '%Y-%m-%d',                         # '2006-10-25'
21 20
     # '%b %d %Y', '%b %d, %Y',          # 'Oct 25 2006', 'Oct 25, 2006'
22 21
     # '%d %b %Y', '%d %b, %Y',          # '25 Oct 2006', '25 Oct, 2006'
23 22
     # '%B %d %Y', '%B %d, %Y',          # 'October 25 2006', 'October 25, 2006'
24 23
     # '%d %B %Y', '%d %B, %Y',          # '25 October 2006', '25 October, 2006'
25 24
 )
26  
-TIME_INPUT_FORMATS = (
27  
-    '%H:%M:%S',                         # '14:30:59'
28  
-    '%H:%M',                            # '14:30'
29  
-)
30 25
 DATETIME_INPUT_FORMATS = (
31 26
     '%Y-%m-%d %H:%M:%S',                # '2006-10-25 14:30:59'
32 27
     '%Y-%m-%d %H:%M',                   # '2006-10-25 14:30'
4  django/conf/locale/es/formats.py
@@ -19,10 +19,6 @@
19 19
     # '31/12/2009', '31/12/09'
20 20
     '%d/%m/%Y', '%d/%m/%y'
21 21
 )
22  
-TIME_INPUT_FORMATS = (
23  
-    # '14:30:59', '14:30'
24  
-    '%H:%M:%S', '%H:%M'
25  
-)
26 22
 DATETIME_INPUT_FORMATS = (
27 23
     '%d/%m/%Y %H:%M:%S',
28 24
     '%d/%m/%Y %H:%M',
4  django/conf/locale/es_AR/formats.py
@@ -19,10 +19,6 @@
19 19
     '%d/%m/%Y', # '31/12/2009'
20 20
     '%d/%m/%y', # '31/12/09'
21 21
 )
22  
-TIME_INPUT_FORMATS = (
23  
-    '%H:%M:%S', # '14:30:59'
24  
-    '%H:%M',    # '14:30'
25  
-)
26 22
 DATETIME_INPUT_FORMATS = (
27 23
     '%d/%m/%Y %H:%M:%S',
28 24
     '%d/%m/%Y %H:%M',
3  django/conf/locale/es_MX/formats.py
@@ -15,9 +15,6 @@
15 15
     '%d/%m/%Y', '%d/%m/%y',             # '25/10/2006', '25/10/06'
16 16
     '%Y%m%d',                           # '20061025'
17 17
 )
18  
-TIME_INPUT_FORMATS = (
19  
-    '%H:%M:%S', '%H:%M',		# '14:30:59', '14:30'
20  
-)
21 18
 DATETIME_INPUT_FORMATS = (
22 19
     '%d/%m/%Y %H:%M:%S',
23 20
     '%d/%m/%Y %H:%M',
3  django/conf/locale/es_NI/formats.py
@@ -15,9 +15,6 @@
15 15
     '%Y%m%d',                          	# '20061025'
16 16
 
17 17
 )
18  
-TIME_INPUT_FORMATS = (
19  
-    '%H:%M:%S', '%H:%M',		# '14:30:59', '14:30'
20  
-)
21 18
 DATETIME_INPUT_FORMATS = (
22 19
     '%d/%m/%Y %H:%M:%S',
23 20
     '%d/%m/%Y %H:%M',
8  django/conf/locale/fr/formats.py
@@ -19,13 +19,8 @@
19 19
 DATE_INPUT_FORMATS = (
20 20
     '%d/%m/%Y', '%d/%m/%y', # '25/10/2006', '25/10/06'
21 21
     '%d.%m.%Y', '%d.%m.%y', # Swiss (fr_CH), '25.10.2006', '25.10.06'
22  
-    '%Y-%m-%d', '%y-%m-%d', # '2006-10-25', '06-10-25'
23 22
     # '%d %B %Y', '%d %b %Y', # '25 octobre 2006', '25 oct. 2006'
24 23
 )
25  
-TIME_INPUT_FORMATS = (
26  
-    '%H:%M:%S', # '14:30:59'
27  
-    '%H:%M',    # '14:30'
28  
-)
29 24
 DATETIME_INPUT_FORMATS = (
30 25
     '%d/%m/%Y %H:%M:%S',    # '25/10/2006 14:30:59'
31 26
     '%d/%m/%Y %H:%M',       # '25/10/2006 14:30'
@@ -33,9 +28,6 @@
33 28
     '%d.%m.%Y %H:%M:%S',    # Swiss (fr_CH), '25.10.2006 14:30:59'
34 29
     '%d.%m.%Y %H:%M',       # Swiss (fr_CH), '25.10.2006 14:30'
35 30
     '%d.%m.%Y',             # Swiss (fr_CH), '25.10.2006'
36  
-    '%Y-%m-%d %H:%M:%S',    # '2006-10-25 14:30:59'
37  
-    '%Y-%m-%d %H:%M',       # '2006-10-25 14:30'
38  
-    '%Y-%m-%d',             # '2006-10-25'
39 31
 )
40 32
 DECIMAL_SEPARATOR = ','
41 33
 THOUSAND_SEPARATOR = '\xa0' # non-breaking space
5  django/conf/locale/hr/formats.py
@@ -15,15 +15,12 @@
15 15
 
16 16
 # The *_INPUT_FORMATS strings use the Python strftime format syntax,
17 17
 # see http://docs.python.org/library/datetime.html#strftime-strptime-behavior
  18
+# Kept ISO formats as they are in first position
18 19
 DATE_INPUT_FORMATS = (
19 20
     '%Y-%m-%d',                     # '2006-10-25'
20 21
     '%d.%m.%Y.', '%d.%m.%y.',       # '25.10.2006.', '25.10.06.'
21 22
     '%d. %m. %Y.', '%d. %m. %y.',   # '25. 10. 2006.', '25. 10. 06.'
22 23
 )
23  
-TIME_INPUT_FORMATS = (
24  
-    '%H:%M:%S',     # '14:30:59'
25  
-    '%H:%M',        # '14:30'
26  
-)
27 24
 DATETIME_INPUT_FORMATS = (
28 25
     '%Y-%m-%d %H:%M:%S',      # '2006-10-25 14:30:59'
29 26
     '%Y-%m-%d %H:%M',         # '2006-10-25 14:30'
4  django/conf/locale/it/formats.py
@@ -20,10 +20,6 @@
20 20
     '%d-%m-%Y', '%Y-%m-%d',  # '25-10-2006', '2008-10-25'
21 21
     '%d-%m-%y', '%d/%m/%y',  # '25-10-06', '25/10/06'
22 22
 )
23  
-TIME_INPUT_FORMATS = (
24  
-    '%H:%M:%S',     # '14:30:59'
25  
-    '%H:%M',        # '14:30'
26  
-)
27 23
 DATETIME_INPUT_FORMATS = (
28 24
     '%d/%m/%Y %H:%M:%S',     # '25/10/2006 14:30:59'
29 25
     '%d/%m/%Y %H:%M',        # '25/10/2006 14:30'
5  django/conf/locale/ka/formats.py
@@ -15,16 +15,13 @@
15 15
 
16 16
 # The *_INPUT_FORMATS strings use the Python strftime format syntax,
17 17
 # see http://docs.python.org/library/datetime.html#strftime-strptime-behavior
  18
+# Kept ISO formats as they are in first position
18 19
 DATE_INPUT_FORMATS = (
19 20
     '%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y',     # '2006-10-25', '10/25/2006', '10/25/06'
20 21
     # '%d %b %Y', '%d %b, %Y', '%d %b. %Y',   # '25 Oct 2006', '25 Oct, 2006', '25 Oct. 2006'
21 22
     # '%d %B %Y', '%d %B, %Y',                # '25 October 2006', '25 October, 2006'
22 23
     # '%d.%m.%Y', '%d.%m.%y',                 # '25.10.2006', '25.10.06'
23 24
 )
24  
-TIME_INPUT_FORMATS = (
25  
-    '%H:%M:%S',     # '14:30:59'
26  
-    '%H:%M',        # '14:30'
27  
-)
28 25
 DATETIME_INPUT_FORMATS = (
29 26
     '%Y-%m-%d %H:%M:%S',     # '2006-10-25 14:30:59'
30 27
     '%Y-%m-%d %H:%M',        # '2006-10-25 14:30'
1  django/conf/locale/ko/formats.py
@@ -16,6 +16,7 @@
16 16
 
17 17
 # The *_INPUT_FORMATS strings use the Python strftime format syntax,
18 18
 # see http://docs.python.org/library/datetime.html#strftime-strptime-behavior
  19
+# Kept ISO formats as they are in first position
19 20
 DATE_INPUT_FORMATS = (
20 21
     '%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', # '2006-10-25', '10/25/2006', '10/25/06'
21 22
     # '%b %d %Y', '%b %d, %Y',            # 'Oct 25 2006', 'Oct 25, 2006'
1  django/conf/locale/lv/formats.py
@@ -16,6 +16,7 @@
16 16
 
17 17
 # The *_INPUT_FORMATS strings use the Python strftime format syntax,
18 18
 # see http://docs.python.org/library/datetime.html#strftime-strptime-behavior
  19
+# Kept ISO formats as they are in first position
19 20
 DATE_INPUT_FORMATS = (
20 21
     '%Y-%m-%d', '%d.%m.%Y', '%d.%m.%y', # '2006-10-25', '25.10.2006', '25.10.06'
21 22
 )
9  django/conf/locale/mk/formats.py
@@ -18,12 +18,6 @@
18 18
 DATE_INPUT_FORMATS = (
19 19
     '%d.%m.%Y.', '%d.%m.%y.',       # '25.10.2006.', '25.10.06.'
20 20
     '%d. %m. %Y.', '%d. %m. %y.',   # '25. 10. 2006.', '25. 10. 06.'
21  
-    '%Y-%m-%d',                     # '2006-10-25'
22  
-)
23  
-
24  
-TIME_INPUT_FORMATS = (
25  
-    '%H:%M:%S',     # '14:30:59'
26  
-    '%H:%M',        # '14:30'
27 21
 )
28 22
 
29 23
 DATETIME_INPUT_FORMATS = (
@@ -39,9 +33,6 @@
39 33
     '%d. %m. %y. %H:%M:%S',   # '25. 10. 06. 14:30:59'
40 34
     '%d. %m. %y. %H:%M',      # '25. 10. 06. 14:30'
41 35
     '%d. %m. %y.',            # '25. 10. 06.'
42  
-    '%Y-%m-%d %H:%M:%S',      # '2006-10-25 14:30:59'
43  
-    '%Y-%m-%d %H:%M',         # '2006-10-25 14:30'
44  
-    '%Y-%m-%d',               # '2006-10-25'
45 36
 )
46 37
 
47 38
 DECIMAL_SEPARATOR = ','
5  django/conf/locale/ml/formats.py
@@ -15,6 +15,7 @@
15 15
 
16 16
 # The *_INPUT_FORMATS strings use the Python strftime format syntax,
17 17
 # see http://docs.python.org/library/datetime.html#strftime-strptime-behavior
  18
+# Kept ISO formats as they are in first position
18 19
 DATE_INPUT_FORMATS = (
19 20
     '%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', # '2006-10-25', '10/25/2006', '10/25/06'
20 21
     # '%b %d %Y', '%b %d, %Y',            # 'Oct 25 2006', 'Oct 25, 2006'
@@ -22,10 +23,6 @@
22 23
     # '%B %d %Y', '%B %d, %Y',            # 'October 25 2006', 'October 25, 2006'
23 24
     # '%d %B %Y', '%d %B, %Y',            # '25 October 2006', '25 October, 2006'
24 25
 )
25  
-TIME_INPUT_FORMATS = (
26  
-    '%H:%M:%S',     # '14:30:59'
27  
-    '%H:%M',        # '14:30'
28  
-)
29 26
 DATETIME_INPUT_FORMATS = (
30 27
     '%Y-%m-%d %H:%M:%S',     # '2006-10-25 14:30:59'
31 28
     '%Y-%m-%d %H:%M',        # '2006-10-25 14:30'
7  django/conf/locale/nb/formats.py
@@ -16,22 +16,17 @@
16 16
 
17 17
 # The *_INPUT_FORMATS strings use the Python strftime format syntax,
18 18
 # see http://docs.python.org/library/datetime.html#strftime-strptime-behavior
  19
+# Kept ISO formats as they are in first position
19 20
 DATE_INPUT_FORMATS = (
20 21
     '%Y-%m-%d', '%d.%m.%Y', '%d.%m.%y', # '2006-10-25', '25.10.2006', '25.10.06'
21  
-    '%Y-%m-%d',                         # '2006-10-25',
22 22
     # '%d. %b %Y', '%d %b %Y',            # '25. okt 2006', '25 okt 2006'
23 23
     # '%d. %b. %Y', '%d %b. %Y',          # '25. okt. 2006', '25 okt. 2006'
24 24
     # '%d. %B %Y', '%d %B %Y',            # '25. oktober 2006', '25 oktober 2006'
25 25
 )
26  
-TIME_INPUT_FORMATS = (
27  
-    '%H:%M:%S',     # '14:30:59'
28  
-    '%H:%M',     # '14:30'
29  
-)
30 26
 DATETIME_INPUT_FORMATS = (
31 27
     '%Y-%m-%d %H:%M:%S',     # '2006-10-25 14:30:59'
32 28
     '%Y-%m-%d %H:%M',        # '2006-10-25 14:30'
33 29
     '%Y-%m-%d',              # '2006-10-25'
34  
-    '%Y-%m-%d',              # '2006-10-25'
35 30
     '%d.%m.%Y %H:%M:%S',     # '25.10.2006 14:30:59'
36 31
     '%d.%m.%Y %H:%M',        # '25.10.2006 14:30'
37 32
     '%d.%m.%Y',              # '25.10.2006'
7  django/conf/locale/nl/formats.py
@@ -16,10 +16,11 @@
16 16
 # The *_INPUT_FORMATS strings use the Python strftime format syntax,
17 17
 # see http://docs.python.org/library/datetime.html#strftime-strptime-behavior
18 18
 DATE_INPUT_FORMATS = (
19  
-    '%d-%m-%Y', '%d-%m-%y', '%Y-%m-%d', # '20-01-2009', '20-01-09', '2009-01-20'
20  
-    # '%d %b %Y', '%d %b %y',             # '20 jan 2009', '20 jan 09'
21  
-    # '%d %B %Y', '%d %B %y',             # '20 januari 2009', '20 januari 09'
  19
+    '%d-%m-%Y', '%d-%m-%y',             # '20-01-2009', '20-01-09'
  20
+    # '%d %b %Y', '%d %b %y',           # '20 jan 2009', '20 jan 09'
  21
+    # '%d %B %Y', '%d %B %y',           # '20 januari 2009', '20 januari 09'
22 22
 )
  23
+# Kept ISO formats as one is in first position
23 24
 TIME_INPUT_FORMATS = (
24 25
     '%H:%M:%S',                         # '15:23:35'
25 26
     '%H.%M:%S',                         # '15.23:35'
6  django/conf/locale/nn/formats.py
@@ -16,17 +16,13 @@
16 16
 
17 17
 # The *_INPUT_FORMATS strings use the Python strftime format syntax,
18 18
 # see http://docs.python.org/library/datetime.html#strftime-strptime-behavior
  19
+# Kept ISO formats as they are in first position
19 20
 DATE_INPUT_FORMATS = (
20 21
     '%Y-%m-%d', '%d.%m.%Y', '%d.%m.%y', # '2006-10-25', '25.10.2006', '25.10.06'
21  
-    '%Y-%m-%d',                         # '2006-10-25',
22 22
     # '%d. %b %Y', '%d %b %Y',            # '25. okt 2006', '25 okt 2006'
23 23
     # '%d. %b. %Y', '%d %b. %Y',          # '25. okt. 2006', '25 okt. 2006'
24 24
     # '%d. %B %Y', '%d %B %Y',            # '25. oktober 2006', '25 oktober 2006'
25 25
 )
26  
-TIME_INPUT_FORMATS = (
27  
-    '%H:%M:%S',     # '14:30:59'
28  
-    '%H:%M',     # '14:30'
29  
-)
30 26
 DATETIME_INPUT_FORMATS = (
31 27
     '%Y-%m-%d %H:%M:%S',     # '2006-10-25 14:30:59'
32 28
     '%Y-%m-%d %H:%M',        # '2006-10-25 14:30'
9  django/conf/locale/pl/formats.py
@@ -18,20 +18,13 @@
18 18
 # see http://docs.python.org/library/datetime.html#strftime-strptime-behavior
19 19
 DATE_INPUT_FORMATS = (
20 20
     '%d.%m.%Y', '%d.%m.%y',     # '25.10.2006', '25.10.06'
21  
-    '%Y-%m-%d', '%y-%m-%d',     # '2006-10-25', '06-10-25'
  21
+    '%y-%m-%d',                 # '06-10-25'
22 22
     # '%d. %B %Y', '%d. %b. %Y',  # '25. October 2006', '25. Oct. 2006'
23 23
 )
24  
-TIME_INPUT_FORMATS = (
25  
-    '%H:%M:%S', # '14:30:59'
26  
-    '%H:%M',    # '14:30'
27  
-)
28 24
 DATETIME_INPUT_FORMATS = (
29 25
     '%d.%m.%Y %H:%M:%S',    # '25.10.2006 14:30:59'
30 26
     '%d.%m.%Y %H:%M',       # '25.10.2006 14:30'
31 27
     '%d.%m.%Y',             # '25.10.2006'
32  
-    '%Y-%m-%d %H:%M:%S',    # '2006-10-25 14:30:59'
33  
-    '%Y-%m-%d %H:%M',       # '2006-10-25 14:30'
34  
-    '%Y-%m-%d',             # '2006-10-25'
35 28
 )
36 29
 DECIMAL_SEPARATOR = ','
37 30
 THOUSAND_SEPARATOR = ' '
5  django/conf/locale/pt/formats.py
@@ -15,15 +15,12 @@
15 15
 
16 16
 # The *_INPUT_FORMATS strings use the Python strftime format syntax,
17 17
 # see http://docs.python.org/library/datetime.html#strftime-strptime-behavior
  18
+# Kept ISO formats as they are in first position
18 19
 DATE_INPUT_FORMATS = (
19 20
     '%Y-%m-%d', '%d/%m/%Y', '%d/%m/%y', # '2006-10-25', '25/10/2006', '25/10/06'
20 21
     # '%d de %b de %Y', '%d de %b, %Y',   # '25 de Out de 2006', '25 Out, 2006'
21 22
     # '%d de %B de %Y', '%d de %B, %Y',   # '25 de Outubro de 2006', '25 de Outubro, 2006'
22 23
 )
23  
-TIME_INPUT_FORMATS = (
24  
-    '%H:%M:%S',     # '14:30:59'
25  
-    '%H:%M',        # '14:30'
26  
-)
27 24
 DATETIME_INPUT_FORMATS = (
28 25
     '%Y-%m-%d %H:%M:%S',     # '2006-10-25 14:30:59'
29 26
     '%Y-%m-%d %H:%M',        # '2006-10-25 14:30'
9  django/conf/locale/pt_BR/formats.py
@@ -17,14 +17,10 @@
17 17
 # The *_INPUT_FORMATS strings use the Python strftime format syntax,
18 18
 # see http://docs.python.org/library/datetime.html#strftime-strptime-behavior
19 19
 DATE_INPUT_FORMATS = (
20  
-    '%d/%m/%Y', '%d/%m/%y', '%Y-%m-%d', # '25/10/2006', '25/10/06', '2006-10-25'
  20
+    '%d/%m/%Y', '%d/%m/%y', # '25/10/2006', '25/10/06'
21 21
     # '%d de %b de %Y', '%d de %b, %Y',   # '25 de Out de 2006', '25 Out, 2006'
22 22
     # '%d de %B de %Y', '%d de %B, %Y',   # '25 de Outubro de 2006', '25 de Outubro, 2006'
23 23
 )
24  
-TIME_INPUT_FORMATS = (
25  
-    '%H:%M:%S',     # '14:30:59'
26  
-    '%H:%M',        # '14:30'
27  
-)
28 24
 DATETIME_INPUT_FORMATS = (
29 25
     '%d/%m/%Y %H:%M:%S',     # '25/10/2006 14:30:59'
30 26
     '%d/%m/%Y %H:%M',        # '25/10/2006 14:30'
@@ -32,9 +28,6 @@
32 28
     '%d/%m/%y %H:%M:%S',     # '25/10/06 14:30:59'
33 29
     '%d/%m/%y %H:%M',        # '25/10/06 14:30'
34 30
     '%d/%m/%y',              # '25/10/06'
35  
-    '%Y-%m-%d %H:%M:%S',     # '2006-10-25 14:30:59'
36  
-    '%Y-%m-%d %H:%M',        # '2006-10-25 14:30'
37  
-    '%Y-%m-%d',              # '2006-10-25'
38 31
 )
39 32
 DECIMAL_SEPARATOR = ','
40 33
 THOUSAND_SEPARATOR = '.'
8  django/conf/locale/ru/formats.py
@@ -19,12 +19,7 @@
19 19
 DATE_INPUT_FORMATS = (
20 20
     '%d.%m.%Y',  # '25.10.2006'
21 21
     '%d.%m.%y',  # '25.10.06'
22  
-    '%Y-%m-%d',  # '2006-10-25'
23 22
 )
24  
-TIME_INPUT_FORMATS = (
25  
-    '%H:%M:%S',  # '14:30:59'
26  
-    '%H:%M',     # '14:30'
27  
-) 
28 23
 DATETIME_INPUT_FORMATS = (
29 24
     '%d.%m.%Y %H:%M:%S',  # '25.10.2006 14:30:59'
30 25
     '%d.%m.%Y %H:%M',     # '25.10.2006 14:30'
@@ -32,9 +27,6 @@
32 27
     '%d.%m.%y %H:%M:%S',  # '25.10.06 14:30:59'
33 28
     '%d.%m.%y %H:%M',     # '25.10.06 14:30'
34 29
     '%d.%m.%y',           # '25.10.06'
35  
-    '%Y-%m-%d %H:%M:%S',  # '2006-10-25 14:30:59'
36  
-    '%Y-%m-%d %H:%M',     # '2006-10-25 14:30'
37  
-    '%Y-%m-%d',           # '2006-10-25'
38 30
 )
39 31
 DECIMAL_SEPARATOR = ','
40 32
 THOUSAND_SEPARATOR = '\xa0' # non-breaking space
9  django/conf/locale/sk/formats.py
@@ -18,20 +18,13 @@
18 18
 # see http://docs.python.org/library/datetime.html#strftime-strptime-behavior
19 19
 DATE_INPUT_FORMATS = (
20 20
     '%d.%m.%Y', '%d.%m.%y',     # '25.10.2006', '25.10.06'
21  
-    '%Y-%m-%d', '%y-%m-%d',     # '2006-10-25', '06-10-25'
  21
+    '%y-%m-%d',                 # '06-10-25'
22 22
     # '%d. %B %Y', '%d. %b. %Y',  # '25. October 2006', '25. Oct. 2006'
23 23
 )
24  
-TIME_INPUT_FORMATS = (
25  
-    '%H:%M:%S', # '14:30:59'
26  
-    '%H:%M',    # '14:30'
27  
-)
28 24
 DATETIME_INPUT_FORMATS = (
29 25
     '%d.%m.%Y %H:%M:%S',    # '25.10.2006 14:30:59'
30 26
     '%d.%m.%Y %H:%M',       # '25.10.2006 14:30'
31 27
     '%d.%m.%Y',             # '25.10.2006'
32  
-    '%Y-%m-%d %H:%M:%S',    # '2006-10-25 14:30:59'
33  
-    '%Y-%m-%d %H:%M',       # '2006-10-25 14:30'
34  
-    '%Y-%m-%d',             # '2006-10-25'
35 28
 )
36 29
 DECIMAL_SEPARATOR = ','
37 30
 THOUSAND_SEPARATOR = '\xa0' # non-breaking space
5  django/conf/locale/sl/formats.py
@@ -21,11 +21,6 @@
21 21
     '%d. %m. %Y', '%d. %m. %y',     # '25. 10. 2006', '25. 10. 06'
22 22
 )
23 23
 
24  
-TIME_INPUT_FORMATS = (
25  
-    '%H:%M:%S',     # '14:30:59'
26  
-    '%H:%M',        # '14:30'
27  
-)
28  
-
29 24
 DATETIME_INPUT_FORMATS = (
30 25
     '%d.%m.%Y %H:%M:%S',            # '25.10.2006 14:30:59'
31 26
     '%d.%m.%Y %H:%M',               # '25.10.2006 14:30'
8  django/conf/locale/sr/formats.py
@@ -18,15 +18,10 @@
18 18
 DATE_INPUT_FORMATS = (
19 19
     '%d.%m.%Y.', '%d.%m.%y.',       # '25.10.2006.', '25.10.06.'
20 20
     '%d. %m. %Y.', '%d. %m. %y.',   # '25. 10. 2006.', '25. 10. 06.'
21  
-    '%Y-%m-%d',                     # '2006-10-25'
22 21
     # '%d. %b %y.', '%d. %B %y.',     # '25. Oct 06.', '25. October 06.'
23 22
     # '%d. %b \'%y.', '%d. %B \'%y.', # '25. Oct '06.', '25. October '06.'
24 23
     # '%d. %b %Y.', '%d. %B %Y.',     # '25. Oct 2006.', '25. October 2006.'
25 24
 )
26  
-TIME_INPUT_FORMATS = (
27  
-    '%H:%M:%S',     # '14:30:59'
28  
-    '%H:%M',        # '14:30'
29  
-)
30 25
 DATETIME_INPUT_FORMATS = (
31 26
     '%d.%m.%Y. %H:%M:%S',     # '25.10.2006. 14:30:59'
32 27
     '%d.%m.%Y. %H:%M',        # '25.10.2006. 14:30'
@@ -40,9 +35,6 @@
40 35
     '%d. %m. %y. %H:%M:%S',   # '25. 10. 06. 14:30:59'
41 36
     '%d. %m. %y. %H:%M',      # '25. 10. 06. 14:30'
42 37
     '%d. %m. %y.',            # '25. 10. 06.'
43  
-    '%Y-%m-%d %H:%M:%S',      # '2006-10-25 14:30:59'
44  
-    '%Y-%m-%d %H:%M',         # '2006-10-25 14:30'
45  
-    '%Y-%m-%d',               # '2006-10-25'
46 38
 )
47 39
 DECIMAL_SEPARATOR = ','
48 40
 THOUSAND_SEPARATOR = '.'
8  django/conf/locale/sr_Latn/formats.py
@@ -18,15 +18,10 @@
18 18
 DATE_INPUT_FORMATS = (
19 19
     '%d.%m.%Y.', '%d.%m.%y.',       # '25.10.2006.', '25.10.06.'
20 20
     '%d. %m. %Y.', '%d. %m. %y.',   # '25. 10. 2006.', '25. 10. 06.'
21  
-    '%Y-%m-%d',                     # '2006-10-25'
22 21
     # '%d. %b %y.', '%d. %B %y.',     # '25. Oct 06.', '25. October 06.'
23 22
     # '%d. %b \'%y.', '%d. %B \'%y.', # '25. Oct '06.', '25. October '06.'
24 23
     # '%d. %b %Y.', '%d. %B %Y.',     # '25. Oct 2006.', '25. October 2006.'
25 24
 )
26  
-TIME_INPUT_FORMATS = (
27  
-    '%H:%M:%S',     # '14:30:59'
28  
-    '%H:%M',        # '14:30'
29  
-)
30 25
 DATETIME_INPUT_FORMATS = (
31 26
     '%d.%m.%Y. %H:%M:%S',     # '25.10.2006. 14:30:59'
32 27
     '%d.%m.%Y. %H:%M',        # '25.10.2006. 14:30'
@@ -40,9 +35,6 @@
40 35
     '%d. %m. %y. %H:%M:%S',   # '25. 10. 06. 14:30:59'
41 36
     '%d. %m. %y. %H:%M',      # '25. 10. 06. 14:30'
42 37
     '%d. %m. %y.',            # '25. 10. 06.'
43  
-    '%Y-%m-%d %H:%M:%S',      # '2006-10-25 14:30:59'
44  
-    '%Y-%m-%d %H:%M',         # '2006-10-25 14:30'
45  
-    '%Y-%m-%d',               # '2006-10-25'
46 38
 )
47 39
 DECIMAL_SEPARATOR = ','
48 40
 THOUSAND_SEPARATOR = '.'
5  django/conf/locale/sv/formats.py
@@ -16,15 +16,12 @@
16 16
 
17 17
 # The *_INPUT_FORMATS strings use the Python strftime format syntax,
18 18
 # see http://docs.python.org/library/datetime.html#strftime-strptime-behavior
  19
+# Kept ISO formats as they are in first position
19 20
 DATE_INPUT_FORMATS = (
20 21
     '%Y-%m-%d',              # '2006-10-25'
21 22
     '%m/%d/%Y',              # '10/25/2006'
22 23
     '%m/%d/%y',              # '10/25/06'
23 24
 )
24  
-TIME_INPUT_FORMATS = (
25  
-    '%H:%M:%S',     # '14:30:59'
26  
-    '%H:%M',        # '14:30'
27  
-)
28 25
 DATETIME_INPUT_FORMATS = (
29 26
     '%Y-%m-%d %H:%M:%S',     # '2006-10-25 14:30:59'
30 27
     '%Y-%m-%d %H:%M',        # '2006-10-25 14:30'
9  django/conf/locale/tr/formats.py
@@ -17,20 +17,13 @@
17 17
 # see http://docs.python.org/library/datetime.html#strftime-strptime-behavior
18 18
 DATE_INPUT_FORMATS = (
19 19
     '%d/%m/%Y', '%d/%m/%y',     # '25/10/2006', '25/10/06'
20  
-    '%Y-%m-%d', '%y-%m-%d',     # '2006-10-25', '06-10-25'
  20
+    '%y-%m-%d',                 # '06-10-25'
21 21
     # '%d %B %Y', '%d %b. %Y',  # '25 Ekim 2006', '25 Eki. 2006'
22 22
 )
23  
-TIME_INPUT_FORMATS = (
24  
-    '%H:%M:%S', # '14:30:59'
25  
-    '%H:%M',    # '14:30'
26  
-)
27 23
 DATETIME_INPUT_FORMATS = (
28 24
     '%d/%m/%Y %H:%M:%S',    # '25/10/2006 14:30:59'
29 25
     '%d/%m/%Y %H:%M',       # '25/10/2006 14:30'
30 26
     '%d/%m/%Y',             # '25/10/2006'
31  
-    '%Y-%m-%d %H:%M:%S',    # '2006-10-25 14:30:59'
32  
-    '%Y-%m-%d %H:%M',       # '2006-10-25 14:30'
33  
-    '%Y-%m-%d',             # '2006-10-25'
34 27
 )
35 28
 DECIMAL_SEPARATOR = ','
36 29
 THOUSAND_SEPARATOR = '.'
4  django/conf/project_template/project_name/settings.py
@@ -75,7 +75,7 @@
75 75
 STATICFILES_FINDERS = (
76 76
     'django.contrib.staticfiles.finders.FileSystemFinder',
77 77
     'django.contrib.staticfiles.finders.AppDirectoriesFinder',
78  
-#    'django.contrib.staticfiles.finders.DefaultStorageFinder',
  78
+    # 'django.contrib.staticfiles.finders.DefaultStorageFinder',
79 79
 )
80 80
 
81 81
 # Make this unique, and don't share it with anybody.
@@ -85,7 +85,7 @@
85 85
 TEMPLATE_LOADERS = (
86 86
     'django.template.loaders.filesystem.Loader',
87 87
     'django.template.loaders.app_directories.Loader',
88  
-#     'django.template.loaders.eggs.Loader',
  88
+    # 'django.template.loaders.eggs.Loader',
89 89
 )
90 90
 
91 91
 MIDDLEWARE_CLASSES = (
4  django/contrib/admin/filters.py
@@ -9,7 +9,7 @@
9 9
 
10 10
 from django.db import models
11 11
 from django.core.exceptions import ImproperlyConfigured, ValidationError
12  
-from django.utils.encoding import smart_text
  12
+from django.utils.encoding import smart_text, force_text
13 13
 from django.utils.translation import ugettext_lazy as _
14 14
 from django.utils import timezone
15 15
 from django.contrib.admin.util import (get_model_from_relation,
@@ -102,7 +102,7 @@ def choices(self, cl):
102 102
         }
103 103
         for lookup, title in self.lookup_choices:
104 104
             yield {
105  
-                'selected': self.value() == lookup,
  105
+                'selected': self.value() == force_text(lookup),
106 106
                 'query_string': cl.get_query_string({
107 107
                     self.parameter_name: lookup,
108 108
                 }, []),
12  django/contrib/admin/forms.py
@@ -6,8 +6,8 @@
6 6
 from django.contrib.auth.forms import AuthenticationForm
7 7
 from django.utils.translation import ugettext_lazy
8 8
 
9  
-ERROR_MESSAGE = ugettext_lazy("Please enter the correct username and password "
10  
-        "for a staff account. Note that both fields are case-sensitive.")
  9
+ERROR_MESSAGE = ugettext_lazy("Please enter the correct %(username)s and password "
  10
+        "for a staff account. Note that both fields may be case-sensitive.")
11 11
 
12 12
 
13 13
 class AdminAuthenticationForm(AuthenticationForm):
@@ -26,8 +26,12 @@ def clean(self):
26 26
         if username and password:
27 27
             self.user_cache = authenticate(username=username, password=password)
28 28
             if self.user_cache is None:
29  
-                raise forms.ValidationError(message)
  29
+                raise forms.ValidationError(message % {
  30
+                    'username': self.username_field.verbose_name
  31
+                })
30 32
             elif not self.user_cache.is_active or not self.user_cache.is_staff:
31  
-                raise forms.ValidationError(message)
  33
+                raise forms.ValidationError(message % {
  34
+                    'username': self.username_field.verbose_name
  35
+                })
32 36
         self.check_for_test_cookie()
33 37
         return self.cleaned_data
4  django/contrib/admin/helpers.py
@@ -186,9 +186,7 @@ def contents(self):
186 186
                     if getattr(attr, "allow_tags", False):
187 187
                         result_repr = mark_safe(result_repr)
188 188
             else:
189  
-                if value is None:
190  
-                    result_repr = EMPTY_CHANGELIST_VALUE
191  
-                elif isinstance(f.rel, ManyToManyRel):
  189
+                if isinstance(f.rel, ManyToManyRel) and value is not None:
192 190
                     result_repr = ", ".join(map(six.text_type, value.all()))
193 191
                 else:
194 192
                     result_repr = display_for_field(value, f)
13  django/contrib/admin/models.py
@@ -4,7 +4,7 @@
4 4
 from django.conf import settings
5 5
 from django.contrib.contenttypes.models import ContentType
6 6
 from django.contrib.admin.util import quote
7  
-from django.utils.translation import ugettext_lazy as _
  7
+from django.utils.translation import ugettext, ugettext_lazy as _
8 8
 from django.utils.encoding import smart_text
9 9
 from django.utils.encoding import python_2_unicode_compatible
10 10
 
@@ -42,13 +42,16 @@ def __repr__(self):
42 42
 
43 43
     def __str__(self):
44 44
         if self.action_flag == ADDITION:
45  
-            return _('Added "%(object)s".') % {'object': self.object_repr}
  45
+            return ugettext('Added "%(object)s".') % {'object': self.object_repr}
46 46
         elif self.action_flag == CHANGE:
47  
-            return _('Changed "%(object)s" - %(changes)s') % {'object': self.object_repr, 'changes': self.change_message}
  47
+            return ugettext('Changed "%(object)s" - %(changes)s') % {
  48
+                'object': self.object_repr,
  49
+                'changes': self.change_message,
  50
+            }
48 51
         elif self.action_flag == DELETION:
49  
-            return _('Deleted "%(object)s."') % {'object': self.object_repr}
  52
+            return ugettext('Deleted "%(object)s."') % {'object': self.object_repr}
50 53
 
51  
-        return _('LogEntry Object')
  54
+        return ugettext('LogEntry Object')
52 55
 
53 56
     def is_addition(self):
54 57
         return self.action_flag == ADDITION
41  django/contrib/admin/options.py
... ...
@@ -1,3 +1,4 @@
  1
+import copy
1 2
 from functools import update_wrapper, partial
2 3
 import warnings
3