On 15 Aug., 19:51, "Adrian Holovaty" <[EMAIL PROTECTED]> wrote:
> I'd like to split this into several files, turning
> django.core.management into a package. The purest way of splitting the
> functionality would be to give each manage.py action ("runserver",
> "syncdb", etc.) its own Python module, like this:Adrian, +1 Yeah! Dealing with management.py was a major pain in creating something useful for my SoC project. A change to a more "pluggable" interface makes the implementation of my release management [1] much easier. Speaking of SoC, I also hate to have a crowded site-packages directory but also think that the only chance for a vivid app repository is to use the PyPI - which leads us right to the setuptools, upcoming standard in Python 2.6. As a user I really like the idea of egg files as much as dependency tracking, the development mode, installation via easy_install and automatic unittesting. That is why my current patch contains the setuptools bootstrap file to build reusable application packages. A new setup.py file for Django [2] is there too. Regarding my patch for management.py: I changed "startapp" and created "editapp", which are both calling a new metadata assistent. "--no- skeleton" is for the old project-centered behaviour. django.utils.package contains a ReleaseWrapper class for accessing release metadata, an example release assistent "standalone_app", the skeleton directory and ez_setup.py. The resulting app looks like this: MyApp/ |-- INSTALL.txt |-- MANIFEST.in |-- README.txt |-- docs/ |-- myapp/ | |-- __init__.py | |-- models.py | |-- templates | | `-- myapp | `-- views.py |-- release.py |-- setup.py `-- tests/ I would like to encourage users to setup an account with the PyPI and upload their apps to it. The Django application repository app which I'm currently building will scan the PyPI for a hardcoded keyword (e.g. "django.app") and save the resulting information for later review by (to be decided) editorial functions on the website (e.g. django-voting). Since you are refactoring the whole thing anyway, what do you think about a generic command like "app", "package" or something else which combines "startproject", "startapp" and my changes? I hope this wasn't too much off-topic.. Best, Jannis 1: https://websushi.org/trac/browser/django-package/django-package.diff 2: https://websushi.org/trac/pastebin/2 -- jannis.leidel.info code.google.com/p/django-package --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Django developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/django-developers?hl=en -~----------~----~----~----~------~----~------~--~---
