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',) >
+1 for dependencies, but not so simple. Imagine what will happen when django 1.0 is released and apps are starting poping up. On app may require a specific version of another app, or is incompatible with a specific app. Apps sould define a __version__ in __init__.py wich sould be checked on the dependencies check. maybe a syntax like: __dependencies__ = (('django.contrib.auth', ">=0.1,!=0.2"),('my.app.bla', "==0.3")) would require a version of contrib.auth that is greater as 0.1 but not 0.2 and version 0.3 of bla :) kindly regards daniel