Re: [Django] #3591: add support for custom app_label and verbose_name

49 views
Skip to first unread message

Django

unread,
May 30, 2011, 3:52:42 AM5/30/11
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: | Owner: adrian
jkocherhans | Status: reopened
Type: New | Component: Core (Other)
feature | Severity: Normal
Milestone: 1.4 | Keywords:
Version: SVN | Has patch: 1
Resolution: | Needs tests: 0
Triage Stage: Fixed on | Easy pickings: 0
a branch |
Needs documentation: 0 |
Patch needs improvement: 0 |
-------------------------------------+-------------------------------------
Changes (by nfg):

* cc: nils@… (added)
* easy: => 0


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:102>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

Django

unread,
May 30, 2011, 3:53:55 AM5/30/11
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: | Owner: adrian
jkocherhans | Status: reopened
Type: New | Component: Core (Other)
feature | Severity: Normal
Milestone: 1.4 | Keywords:
Version: SVN | Has patch: 1
Resolution: | Needs tests: 0
Triage Stage: Fixed on | Easy pickings: 1
a branch |
Needs documentation: 0 |
Patch needs improvement: 0 |
-------------------------------------+-------------------------------------
Changes (by nfg):

* easy: 0 => 1


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:103>

Django

unread,
May 30, 2011, 4:09:14 AM5/30/11
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: | Owner: adrian
jkocherhans | Status: reopened
Type: New | Component: Core (Other)
feature | Severity: Normal
Milestone: 1.4 | Keywords:
Version: SVN | Has patch: 1
Resolution: | Needs tests: 0
Triage Stage: Fixed on | Easy pickings: 0
a branch |
Needs documentation: 0 |
Patch needs improvement: 0 |
-------------------------------------+-------------------------------------
Changes (by jezdez):

* easy: 1 => 0


Comment:

Not an easy picking ;)

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:104>

Django

unread,
Aug 20, 2011, 11:47:45 PM8/20/11
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: | Owner: adrian
jkocherhans | Status: reopened
Type: New | Component: Core (Other)
feature | Severity: Normal
Milestone: 1.4 | Keywords:
Version: SVN | Has patch: 1
Resolution: | Needs tests: 0
Triage Stage: Fixed on | Easy pickings: 0
a branch |
Needs documentation: 0 |
Patch needs improvement: 0 |
UI/UX: 0 |
-------------------------------------+-------------------------------------
Changes (by bendavis78):

* cc: bendavis78 (added)
* ui_ux: => 0


Comment:

Is anyone actively working on this? I'm willing to help bring the soc2010
/app-loading branch up to date with trunk, if help is needed.

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:105>

Django

unread,
Aug 20, 2011, 11:49:24 PM8/20/11
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: | Owner: adrian
jkocherhans | Status: reopened
Type: New | Component: Core (Other)
feature | Severity: Normal
Milestone: 1.4 | Keywords:
Version: SVN | Has patch: 1
Resolution: | Needs tests: 0
Triage Stage: Fixed on | Easy pickings: 0
a branch |
Needs documentation: 0 |
Patch needs improvement: 0 |
UI/UX: 1 |
-------------------------------------+-------------------------------------
Changes (by bendavis78):

* ui_ux: 0 => 1


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:106>

Django

unread,
Aug 21, 2011, 6:29:27 AM8/21/11
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: | Owner: adrian
jkocherhans | Status: reopened
Type: New | Component: Core (Other)
feature | Severity: Normal
Milestone: 1.4 | Keywords:
Version: SVN | Has patch: 1
Resolution: | Needs tests: 0
Triage Stage: Fixed on | Easy pickings: 0
a branch |
Needs documentation: 0 |
Patch needs improvement: 0 |
UI/UX: 1 |
-------------------------------------+-------------------------------------

Comment (by anonymous):

@bendavis78: I am pretty sure your help would be greatly appreciated -
considering the amount of attention/CC's for this ticket.


Maybe get on IRC and discuss with one or two of the core devs as to how
and whether your work might be merged into trunk as soon as possible - and
as to what the bottlenecks and design goals are for this feature. --
irc://irc.freenode.net/django

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:107>

Django

unread,
Aug 21, 2011, 6:53:12 AM8/21/11
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: | Owner: adrian
jkocherhans | Status: reopened
Type: New | Component: Core (Other)
feature | Severity: Normal
Milestone: 1.4 | Keywords:
Version: SVN | Has patch: 1
Resolution: | Needs tests: 0
Triage Stage: Fixed on | Easy pickings: 0
a branch |
Needs documentation: 0 |
Patch needs improvement: 0 |
UI/UX: 1 |
-------------------------------------+-------------------------------------

Comment (by jezdez):

@bendavis78 Yes, arthurk and me were working on this ticket till a month
ago, see https://github.com/jezdez/django/tree/app-loading for the latest
state.

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:108>

Django

unread,
Aug 21, 2011, 11:22:14 AM8/21/11
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: | Owner: adrian
jkocherhans | Status: reopened
Type: New | Component: Core (Other)
feature | Severity: Normal
Milestone: 1.4 | Keywords:
Version: SVN | Has patch: 1
Resolution: | Needs tests: 0
Triage Stage: Fixed on | Easy pickings: 0
a branch |
Needs documentation: 0 |
Patch needs improvement: 0 |
UI/UX: 1 |
-------------------------------------+-------------------------------------

Comment (by bendavis78):

Thanks. For clarity's sake, I'm attaching a patch based on jezdez's app-
loading branch that applies cleanly against r16630 (current svn trunk). I
also have this on my github fork here:
https://github.com/savidworks/django/tree/app-loading.

Also, for the benefit of others interested in this patch, I'll do my best
to explain what it does based on what I've gleaned from the source:

----

The ```INSTALLED_APPS``` setting may now contain a reference to an
```App``` class. For example:

{{{#!python
INSTALLED_APPS = (
# ...
'django.contrib.admin',
'myapp.apps.MyApp',
)
}}}

These app classes extend ```django.apps.App```, and may define a number of
properties:
{{{#!python
from django.apps import App

class MyApp(App):
class Meta:
verbose_name = 'My sweet pony app'
}}}

Other properties that can be set on Meta are ```db_prefix``` and
```models_path```. This will allow you to override existing app
definitions in order to prevent potential conflicts.

When the app loader loops through ```INSTALLED_APPS```, it converts any
normal modules an ```App``` class and loads everything into the apps cache
(which was moved from ```django.models.loading``` to
```django.apps.cache```). This cache is, among other things, used by the
admin for introspection of apps and models.

For further customization, one may also specify how an ```App``` class is
initialized by providing kwargs in the ```INSTALLED_APPS``` setting:
{{{#!python
INSTALLED_APPS = (
# ...
('myapp.apps.MyApp', {'verbose_name':'Something else','foo':'bar'}),
)
}}}

In this case, ```MyApp``` would be initialized to the equivalent of:
{{{#!python
class MyApp(App):
foo = 'bar'
class Meta:
verbose_name = 'Something else'
}}}

----

My only question at this point is regarding the design decision to use an
options class (ie, ```MyApp.Meta```). The code suggests that other
properties may be set on your custom App class, but how might one use
custom properties on an App class? I'm sure there's a reason for not
putting verbose_name, db_prefix, and models_path in the class's main
properties, I'm just curious what the thinking is on that.

On another note, I was thinking it would also be useful to allow app
authors to define how apps should be displayed to the end user.
Specifically, I think it would be nice to be able to group and order
models in a way that would be more meaningful or helpful to admin users.
Perhaps that's one thing that could be done on within a custom App class.
Although, that might be a discussion for another time.

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:109>

Django

unread,
Aug 21, 2011, 11:47:23 AM8/21/11
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: | Owner: adrian
jkocherhans | Status: reopened
Type: New | Component: Core (Other)
feature | Severity: Normal
Milestone: 1.4 | Keywords:
Version: SVN | Has patch: 1
Resolution: | Needs tests: 0
Triage Stage: Fixed on | Easy pickings: 0
a branch |
Needs documentation: 0 |
Patch needs improvement: 0 |
UI/UX: 1 |
-------------------------------------+-------------------------------------

Comment (by jezdez):

Replying to [comment:109 bendavis78]:

> Thanks. For clarity's sake, I'm attaching a patch based on jezdez's

app-loading branch that applies cleanly against r16630 (current svn

trunk). I also have this on my github fork here:
https://github.com/savidworks/django/tree/app-loading.

Actually that wasn't really worth the hassle, you merged it wrong (left
some code from old commits in `admin/options.py`). I attached a correct
patch.


> For further customization, one may also specify how an ```App``` class
is initialized by providing kwargs in the ```INSTALLED_APPS``` setting:
> {{{#!python
> INSTALLED_APPS = (
> # ...
> ('myapp.apps.MyApp', {'verbose_name':'Something else','foo':'bar'}),
> )
> }}}

FWIW, I like the following notation better:


{{{#!python
INSTALLED_APPS = (
# ...
('myapp.apps.MyApp', {
'verbose_name': 'Something else',

'foo': 'bar',
}),
)

}}}
> My only question at this point is regarding the design decision to use
an options class (ie, ```MyApp.Meta```). The code suggests that other
properties may be set on your custom App class, but how might one use
custom properties on an App class? I'm sure there's a reason for not
putting verbose_name, db_prefix, and models_path in the class's main
properties, I'm just curious what the thinking is on that.

It's simple, `Meta` is used internally by Django during startup, so it
needs to be handled with care, reducing the chance to break a rather
fundamental part. In other words, it's internal API when it comes to app
loading and is configured depending on the (Python) meta class `AppBase`.
Using it in app-specific implementation details like looking for a
specific module in all apps (say for implementing the discovery pattern)
is fine though. If you want to override/set a specific option of an app
class we need to differ between those internal (via `_meta`) and the
"usual" class or instance attributes.


> On another note, I was thinking it would also be useful to allow app
authors to define how apps should be displayed to the end user.
Specifically, I think it would be nice to be able to group and order
models in a way that would be more meaningful or helpful to admin users.
Perhaps that's one thing that could be done on within a custom App class.
Although, that might be a discussion for another time.

That's certainly a good idea but not really part of this ticket. In other
words, this can be added at a later time on top of the new app classes.

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:110>

Django

unread,
Aug 21, 2011, 8:44:07 PM8/21/11
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: | Owner: adrian
jkocherhans | Status: reopened
Type: New | Component: Core (Other)
feature | Severity: Normal
Milestone: 1.4 | Keywords:
Version: SVN | Has patch: 1
Resolution: | Needs tests: 0
Triage Stage: Fixed on | Easy pickings: 0
a branch |
Needs documentation: 0 |
Patch needs improvement: 0 |
UI/UX: 1 |
-------------------------------------+-------------------------------------

Comment (by bendavis78):

Ah, thanks for catching my mistake in the merge.

It looks like my assumption that an App subclass can implement its own
attributes is incorrect with the current patch. Currently the python
metaclass AppBase does not propagate the class's attrs to the new_class
It only propagates ```{'__module__': module}```:

{{{#!python
def __new__(cls, name, bases, attrs):
super_new = super(AppBase, cls).__new__
parents = [b for b in bases if isinstance(b, AppBase)]
if not parents:
# If this isn't a subclass of App, don't do anything special.
return super_new(cls, name, bases, attrs)
module = attrs.pop('__module__', None)
new_class = super_new(cls, name, bases, {'__module__': module})
attr_meta = attrs.pop('Meta', None)
if not attr_meta:
meta = getattr(new_class, 'Meta', None)
else:
meta = attr_meta
app_name = attrs.pop('_name', None)
if app_name is None:
# Figure out the app_name by looking one level up.
# For 'django.contrib.sites.app', this would be
'django.contrib.sites'
app_module = sys.modules[new_class.__module__]
app_name = app_module.__name__.rsplit('.', 1)[0]
new_class.add_to_class('_meta', AppOptions(app_name, meta))
# For easier Meta inheritance
new_class.add_to_class('Meta', attr_meta)
return new_class
}}}

Thoughts? Should App subclasses not be allowed to have any attributes
other than Meta or _name?

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:111>

Django

unread,
Aug 22, 2011, 4:44:42 AM8/22/11
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: | Owner: adrian
jkocherhans | Status: reopened
Type: New | Component: Core (Other)
feature | Severity: Normal
Milestone: 1.4 | Keywords:
Version: SVN | Has patch: 1
Resolution: | Needs tests: 0
Triage Stage: Fixed on | Easy pickings: 0
a branch |
Needs documentation: 0 |
Patch needs improvement: 0 |
UI/UX: 1 |
-------------------------------------+-------------------------------------

Comment (by jezdez):

No, you misunderstood me, the class attributes of the app classes
**shouldn't** be put into _meta since they are not part of the internal
API. This follows the same pattern as the `ModelForm` and `Model` classes
.

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:112>

Django

unread,
Aug 22, 2011, 4:48:42 AM8/22/11
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: | Owner: adrian
jkocherhans | Status: reopened
Type: New | Component: Core (Other)
feature | Severity: Normal
Milestone: 1.4 | Keywords:
Version: SVN | Has patch: 1
Resolution: | Needs tests: 0
Triage Stage: Fixed on | Easy pickings: 0
a branch |
Needs documentation: 0 |
Patch needs improvement: 0 |
UI/UX: 1 |
-------------------------------------+-------------------------------------

Comment (by jezdez):

https://github.com/jezdez/django/blob/app-
loading/django/apps/base.py#L50-55 shows pretty well how it's supped to
work:

{{{
def __init__(self, **options):
for key, value in options.iteritems():
if key in DEFAULT_NAMES:
setattr(self._meta, key, value)
else:
setattr(self, key, value)
}}}

Any parameter which is passed during initialization to the app class (e.g.
from the settings) ought to be set as an instance attribute, unless it's
one of the few internal options. It's a simple matter of easy
customization to be able to do that.

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:113>

Django

unread,
Aug 22, 2011, 5:08:05 AM8/22/11
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: | Owner: adrian
jkocherhans | Status: reopened
Type: New | Component: Core (Other)
feature | Severity: Normal
Milestone: 1.4 | Keywords:
Version: SVN | Has patch: 1
Resolution: | Needs tests: 0
Triage Stage: Fixed on | Easy pickings: 0
a branch |
Needs documentation: 0 |
Patch needs improvement: 0 |
UI/UX: 1 |
-------------------------------------+-------------------------------------
Changes (by simon@…):

* cc: simon@… (removed)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:114>

Django

unread,
Aug 22, 2011, 5:27:11 AM8/22/11
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: | Owner: adrian
jkocherhans | Status: reopened
Type: New | Component: Core (Other)
feature | Severity: Normal
Milestone: 1.4 | Keywords:
Version: SVN | Has patch: 1
Resolution: | Needs tests: 0
Triage Stage: Fixed on | Easy pickings: 0
a branch |
Needs documentation: 0 |
Patch needs improvement: 0 |
UI/UX: 1 |
-------------------------------------+-------------------------------------
Changes (by flosch@…):

* cc: flosch@… (removed)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:115>

Django

unread,
Aug 22, 2011, 10:05:33 AM8/22/11
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: | Owner: adrian
jkocherhans | Status: reopened
Type: New | Component: Core (Other)
feature | Severity: Normal
Milestone: 1.4 | Keywords:
Version: SVN | Has patch: 1
Resolution: | Needs tests: 0
Triage Stage: Fixed on | Easy pickings: 0
a branch |
Needs documentation: 0 |
Patch needs improvement: 0 |
UI/UX: 1 |
-------------------------------------+-------------------------------------

Comment (by bendavis78):

Sure, I understand that they shouldn't be passed into _meta. But one
would expect any custom attributes on their app class to stay there, and
not magically disappear, correct? For example, if I create this:

{{{#!python
class MyApp(App):
foo = "bar"
}}}

the ```foo``` attribute of the class will magially disappear. This happens
because in the ''python'' metaclass, new_class is not being given the
attributes of the original class.

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:116>

Django

unread,
Aug 22, 2011, 10:50:58 AM8/22/11
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: | Owner: adrian
jkocherhans | Status: reopened
Type: New | Component: Core (Other)
feature | Severity: Normal
Milestone: 1.4 | Keywords:
Version: SVN | Has patch: 1
Resolution: | Needs tests: 0
Triage Stage: Fixed on | Easy pickings: 0
a branch |
Needs documentation: 0 |
Patch needs improvement: 0 |
UI/UX: 1 |
-------------------------------------+-------------------------------------

Comment (by jezdez):

Yeah, apologies, you're absolutely right, I've pushed a fix and attached
an updated patch.

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:117>

Django

unread,
Aug 27, 2011, 11:32:07 AM8/27/11
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: | Owner: adrian
jkocherhans | Status: reopened
Type: New | Component: Core (Other)
feature | Severity: Normal
Milestone: 1.4 | Keywords:
Version: SVN | Has patch: 1
Resolution: | Needs tests: 0
Triage Stage: Fixed on | Easy pickings: 0
a branch |
Needs documentation: 0 |
Patch needs improvement: 0 |
UI/UX: 1 |
-------------------------------------+-------------------------------------

Comment (by bendavis78):

I noticed that in the admin, app titles are not run through .title(), as
they were before the patch. It should be:

{{{#!python
app_dict[app_label] = {
'name':
apps.find_app(app_label)._meta.verbose_name.title(),
'app_url': app_label + '/',
'has_module_perms': has_module_perms,
'models': [model_dict],
}}}
(contrib/admin/sites.py, line 352)

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:118>

Django

unread,
Sep 7, 2011, 9:41:54 AM9/7/11
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: | Owner: adrian
jkocherhans | Status: reopened
Type: New | Component: Core (Other)
feature | Severity: Normal
Milestone: 1.4 | Keywords:
Version: SVN | Has patch: 1
Resolution: | Needs tests: 0
Triage Stage: Fixed on | Easy pickings: 0
a branch |
Needs documentation: 0 |
Patch needs improvement: 0 |
UI/UX: 1 |
-------------------------------------+-------------------------------------
Changes (by carlospalol):

* cc: carlos.palol@… (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:119>

Django

unread,
Oct 8, 2011, 3:56:08 PM10/8/11
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: reopened
Component: Core (Other) | Version: SVN
Severity: Normal | Resolution:
Keywords: | Triage Stage: Fixed on
Has patch: 1 | a branch
Needs tests: 0 | Needs documentation: 0
Easy pickings: 0 | Patch needs improvement: 0
| UI/UX: 1
-------------------------------------+-------------------------------------

Comment (by ramiro):

Replying to [comment:118 bendavis78]:

> I noticed that in the admin, app titles are not run through .title(), as
they were before the patch.

Actually, the application label is, in current admin code, inconsistently
run through either the `capfirst` template filter (or its underlying
function in view Python code) or tranformed by the `.title()` method.

This would be a good chance to get that fixed and IMHO allowing the app
author to define the capitalization of the label would be the best
approach (now the label can be something more complex that the app
module/package name e.g. "TLD Registries Contacts") instead of forcing
such a basic treatment like `.title()` to be always applied (same thing
for translators of that label to other languages).

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:121>

Django

unread,
Dec 28, 2011, 5:08:30 PM12/28/11
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: reopened
Component: Core (Other) | Version: SVN
Severity: Normal | Resolution:
Keywords: | Triage Stage: Fixed on
Has patch: 1 | a branch
Needs tests: 0 | Needs documentation: 0
Easy pickings: 0 | Patch needs improvement: 0
| UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by sebastian):

* cc: sebastian.goll@… (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:122>

Django

unread,
Jan 11, 2012, 8:10:39 AM1/11/12
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: reopened
Component: Core (Other) | Version: SVN
Severity: Normal | Resolution:
Keywords: | Triage Stage: Fixed on
Has patch: 1 | a branch
Needs tests: 0 | Needs documentation: 0
Easy pickings: 0 | Patch needs improvement: 0
| UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by IonelMaries):

* cc: ionel.mc@… (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:123>

Django

unread,
Jan 23, 2012, 11:17:48 AM1/23/12
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: reopened
Component: Core (Other) | Version: SVN
Severity: Normal | Resolution:
Keywords: | Triage Stage: Fixed on
Has patch: 1 | a branch
Needs tests: 0 | Needs documentation: 0
Easy pickings: 0 | Patch needs improvement: 0
| UI/UX: 1
-------------------------------------+-------------------------------------

Comment (by ramiro):

In [17389]:
{{{
#!CommitTicketReference repository="" revision="17389"
Reverted [17378] until a public API is available for application labels.

This will allow to solve the i18n of such labels in a more holistic way
without the need to introduce temporary, undocumented mechanisms to
translate them.

Refs #3591, #10436
}}}

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:124>

Django

unread,
Jan 31, 2012, 6:59:49 AM1/31/12
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: reopened
Component: Core (Other) | Version: SVN
Severity: Normal | Resolution:
Keywords: | Triage Stage: Fixed on
Has patch: 1 | a branch
Needs tests: 0 | Needs documentation: 0
Easy pickings: 0 | Patch needs improvement: 0
| UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by aav):

* cc: aav (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:125>

Django

unread,
Feb 29, 2012, 4:20:36 PM2/29/12
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: reopened
Component: Core (Other) | Version: SVN
Severity: Normal | Resolution:
Keywords: | Triage Stage: Fixed on
Has patch: 1 | a branch
Needs tests: 0 | Needs documentation: 0
Easy pickings: 0 | Patch needs improvement: 0
| UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by danols):

* cc: danols@… (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:126>

Django

unread,
Mar 11, 2012, 8:07:25 PM3/11/12
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: reopened
Component: Core (Other) | Version: SVN
Severity: Normal | Resolution:
Keywords: | Triage Stage: Fixed on
Has patch: 1 | a branch
Needs tests: 0 | Needs documentation: 0
Easy pickings: 0 | Patch needs improvement: 0
| UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by steffann):

* cc: steffann (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:127>

Django

unread,
Mar 19, 2012, 3:00:19 PM3/19/12
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: reopened
Component: Core (Other) | Version: SVN
Severity: Normal | Resolution:
Keywords: | Triage Stage: Fixed on
Has patch: 1 | a branch
Needs tests: 0 | Needs documentation: 0
Easy pickings: 0 | Patch needs improvement: 0
| UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by pshields@…):

* cc: pshields@… (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:128>

Django

unread,
Mar 24, 2012, 10:52:28 PM3/24/12
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: reopened
Component: Core (Other) | Version: SVN
Severity: Normal | Resolution:
Keywords: | Triage Stage: Fixed on
Has patch: 1 | a branch
Needs tests: 0 | Needs documentation: 0
Easy pickings: 0 | Patch needs improvement: 0
| UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by flisky):

* cc: flisky (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:129>

Django

unread,
Apr 2, 2012, 6:14:22 AM4/2/12
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: reopened
Component: Core (Other) | Version: SVN
Severity: Normal | Resolution:
Keywords: | Triage Stage: Fixed on
Has patch: 1 | a branch
Needs tests: 0 | Needs documentation: 0
Easy pickings: 0 | Patch needs improvement: 0
| UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by mrbox):

* cc: jakub@… (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:130>

Django

unread,
Apr 27, 2012, 4:54:17 AM4/27/12
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: reopened
Component: Core (Other) | Version: SVN
Severity: Normal | Resolution:
Keywords: | Triage Stage: Fixed on
Has patch: 1 | a branch
Needs tests: 0 | Needs documentation: 0
Easy pickings: 0 | Patch needs improvement: 0
| UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by aalbrecht):

* cc: albrecht.andi@… (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:131>

Django

unread,
May 31, 2012, 7:17:41 PM5/31/12
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: reopened
Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Fixed on
Has patch: 1 | a branch
Needs tests: 0 | Needs documentation: 0
Easy pickings: 0 | Patch needs improvement: 0
| UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by JonathanBarratt):

* cc: JonathanBarratt (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:132>

Django

unread,
Jun 8, 2012, 2:29:42 AM6/8/12
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: reopened
Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Fixed on
Has patch: 1 | a branch
Needs tests: 0 | Needs documentation: 0
Easy pickings: 0 | Patch needs improvement: 0
| UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by mjtamlyn):

* cc: marc.tamlyn@… (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:133>

Django

unread,
Jul 1, 2012, 10:02:17 AM7/1/12
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: reopened
Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Fixed on
Has patch: 1 | a branch
Needs tests: 0 | Needs documentation: 0
Easy pickings: 0 | Patch needs improvement: 0
| UI/UX: 1
-------------------------------------+-------------------------------------

Comment (by akaariai):

2b9fb2e6443c04e4415b17083d727bd80047b6e5 fixed a deadlock in app loading.
It does not contain tests as it seemed too hard to write one into Django's
test suite. So, a heads up: the app-loading refactor should take care not
to reintroduce the deadlock condition again. Refs #18251.

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:134>

Django

unread,
Nov 13, 2012, 3:09:17 PM11/13/12
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: reopened
Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Fixed on
Has patch: 1 | a branch
Needs tests: 0 | Needs documentation: 0
Easy pickings: 0 | Patch needs improvement: 0
| UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by fcurella):

* cc: flavio.curella@… (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:135>

Django

unread,
Dec 7, 2012, 2:32:22 PM12/7/12
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: reopened
Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Fixed on
Has patch: 1 | a branch
Needs tests: 0 | Needs documentation: 0
Easy pickings: 0 | Patch needs improvement: 0
| UI/UX: 1
-------------------------------------+-------------------------------------

Comment (by paramburu):

Wanted to let you know I've started a discussion on the django developers
group that is related to this ticket. I would appreciate your opinions
regarding the topic and advice on how to make it go forward.

[https://groups.google.com/forum/?fromgroups=#!topic/django-
developers/7f0gKen2ces]

Thank you in advance for the troubles.

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:136>

Django

unread,
Dec 14, 2012, 9:34:45 AM12/14/12
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
-------------------------------------+-------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: reopened
Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Fixed on
Has patch: 1 | a branch
Needs tests: 0 | Needs documentation: 0
Easy pickings: 0 | Patch needs improvement: 0
| UI/UX: 1
-------------------------------------+-------------------------------------
Changes (by 4glitch@…):

* cc: 4glitch@… (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:137>

Django

unread,
Dec 16, 2012, 9:18:30 AM12/16/12
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
------------------------------+------------------------------------

Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: reopened
Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 1
------------------------------+------------------------------------
Changes (by aaugustin):

* stage: Fixed on a branch => Accepted


Comment:

The GSoC branch is out of date.

The latest efforts are in the [https://github.com/ptone/django/tree/app-
loading app-loading branch].

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:138>

Django

unread,
Feb 3, 2013, 3:44:43 AM2/3/13
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
------------------------------+------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: reopened
Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 1
------------------------------+------------------------------------
Changes (by lsaffre):

* cc: luc.saffre@… (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:139>

Django

unread,
Feb 18, 2013, 3:53:16 PM2/18/13
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
------------------------------+------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: reopened
Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 1
------------------------------+------------------------------------
Changes (by zachborboa+django@…):

* cc: zachborboa+django@… (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:140>

Django

unread,
Apr 8, 2013, 5:08:31 PM4/8/13
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
------------------------------+------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: new

Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 1
------------------------------+------------------------------------

Comment (by malavon_despana@…):

My suggestion: Let the developer declare in the application package's
__init__.py something like:

class Meta: #or whatever the name should be.
verbose_name = _(u"App title for stuff like Admin")
... perhaps more stuff would be convenient here ...

Keepin' seein' the raw name in the admin interface just sucks :(.

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:142>

Django

unread,
Apr 23, 2013, 3:29:21 PM4/23/13
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
------------------------------+------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: new
Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 1
------------------------------+------------------------------------
Changes (by vzima):

* cc: vlastimil@… (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:143>

Django

unread,
May 14, 2013, 10:29:11 AM5/14/13
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
------------------------------+------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: new
Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 1
------------------------------+------------------------------------
Changes (by ejaury <django@…>):

* cc: django@… (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:144>

Django

unread,
Jun 24, 2013, 1:25:34 PM6/24/13
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
------------------------------+------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: new
Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 1
------------------------------+------------------------------------
Changes (by akanouras):

* cc: akanouras (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:145>

Django

unread,
Jul 22, 2013, 7:08:39 PM7/22/13
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
------------------------------+------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: new
Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 1
------------------------------+------------------------------------
Changes (by unpig):

* cc: unpig (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:146>

Django

unread,
Aug 15, 2013, 5:22:17 AM8/15/13
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
------------------------------+------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: new
Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 1
------------------------------+------------------------------------
Changes (by BinaryKhaos):

* cc: ua_django_bugzilla@… (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:147>

Django

unread,
Sep 2, 2013, 9:12:10 AM9/2/13
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
------------------------------+------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: new
Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 1
------------------------------+------------------------------------

Comment (by russellm):

#21018 raised an interesting point about ordering in INSTALLED_APPS that
should be tracked as part of this issue.

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:148>

Django

unread,
Oct 7, 2013, 10:20:33 AM10/7/13
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
------------------------------+------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: new
Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 1

Easy pickings: 0 | UI/UX: 1
------------------------------+------------------------------------
Changes (by timo):

* needs_better_patch: 0 => 1


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:149>

Django

unread,
Oct 24, 2013, 4:37:33 PM10/24/13
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
------------------------------+------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: new
Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 1
Easy pickings: 0 | UI/UX: 1
------------------------------+------------------------------------
Changes (by Fak3):

* cc: someuniquename@… (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:150>

Django

unread,
Oct 24, 2013, 6:43:47 PM10/24/13
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
------------------------------+------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: new
Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 1
Easy pickings: 0 | UI/UX: 1
------------------------------+------------------------------------
Changes (by bendavis78):

* cc: bendavis78 (removed)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:151>

Django

unread,
Dec 11, 2013, 5:32:15 AM12/11/13
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
------------------------------+------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: new
Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 1
Easy pickings: 0 | UI/UX: 1
------------------------------+------------------------------------
Changes (by danielsamuels):

* cc: danielsamuels (added)


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:152>

Django

unread,
Dec 14, 2013, 3:02:49 PM12/14/13
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
------------------------------+------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: new
Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 1
Easy pickings: 0 | UI/UX: 0
------------------------------+------------------------------------
Changes (by aaugustin):

* ui_ux: 1 => 0


Comment:

WIP https://github.com/django/django/pull/2076

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:153>

Django

unread,
Dec 16, 2013, 8:30:47 AM12/16/13
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
------------------------------+------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: new
Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0

Easy pickings: 0 | UI/UX: 0
------------------------------+------------------------------------
Changes (by aaugustin):

* needs_better_patch: 1 => 0


Comment:

Thread https://groups.google.com/d/msg/django-
developers/_iggZzrYtJQ/FWFPgCflSnkJ

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:154>

Django

unread,
Dec 25, 2013, 3:35:49 PM12/25/13
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
------------------------------+------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: new
Component: Core (Other) | Version: master
Severity: Normal | Resolution:
Keywords: | Triage Stage: Accepted
Has patch: 0 | Needs documentation: 0

Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
------------------------------+------------------------------------
Changes (by aaugustin):

* has_patch: 1 => 0


Comment:

Django now supports a custom verbose_name (in master, which will become
1.7).

There's no patch available for the next steps.

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:155>

Django

unread,
Dec 26, 2013, 3:58:04 PM12/26/13
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
------------------------------+------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: closed

Component: Core (Other) | Version: master
Severity: Normal | Resolution: fixed

Keywords: | Triage Stage: Accepted
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
------------------------------+------------------------------------
Changes (by aaugustin):

* status: new => closed
* resolution: => fixed


Comment:

This ticket has become long and unwieldy.

Since the hardest part of the refactoring is done, I'm going to close it.

One of the two original features is implemented and the other is tracked
in #21683.

I'm filing a series of smaller tickets for remaining or related tasks:
https://code.djangoproject.com/query?status=!closed&keywords=~app-loading

--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:156>

Django

unread,
Dec 26, 2013, 4:18:35 PM12/26/13
to django-...@googlegroups.com
#3591: add support for custom app_label and verbose_name
------------------------------+------------------------------------
Reporter: jkocherhans | Owner: adrian
Type: New feature | Status: closed
Component: Core (Other) | Version: master
Severity: Normal | Resolution: fixed
Keywords: app-loading | Triage Stage: Accepted

Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
------------------------------+------------------------------------
Changes (by aaugustin):

* keywords: => app-loading


--
Ticket URL: <https://code.djangoproject.com/ticket/3591#comment:157>

Reply all
Reply to author
Forward
0 new messages