Adrian Holovaty wrote: > So how is this implemented? The simplest way we could do it is a > __dependencies__ variable in the __init__.py of the app. For example, > this would go in django/contrib/admin/__init__.py: > > __dependencies__ = ('django.contrib.auth',) > > (This assumes auth gets moved to django.contrib.auth rather than being > special-cased in django/models.)
As always with a simple feature, it gets you thinking about possible complexities... Eg. The admin_log functionality could be switched over to use signals, and therefore be totally optional, or replaceable. How would this be expressed? With auth, I can see different security systems in future that depend on user and group, but not the current permission tables. How could we express this?