On Nov 1, 2009, at 1:36 AM, Harley Bussell wrote: > The idea is to move projects out of the pinax core and turn them into > apps on pypi and github.
That is definitely an eventual goal and something we can start on with projects like your own and maybe other things like the LMS projects without necessarily moving all the the existing projects out in one go. I need to give the specifics below more thought and will encourage the other core devs to do the same. James > Making the project into an app is pretty easy with a setup.py and > MANIFEST.in which includes all the non python files. > > For some reason sdist was adding all the files to the tar file but > when installing from pypi they were removed. > Switching to bdist_egg removed the issue but if you know what may > cause that id love to know. > > I've modified the clone_project command to work with the bundled > projects, projects on the python path and on pypi. > To find project packages i'm looking for "pinax-project" in the > Keywords meta data. > If people like the idea we can use a trove classifier instead. > > clone_project takes a new option for requirements, when true it will > install the project requirements.txt with pip. > > With these changes its now possible to see available projects on pypi, > clone the project and have it ready to run with all its dependencies > using the clone_project command. > > Like to know what you think of this approach to projects. > > Heres some examples of how to use the new clone_project command with > my social-commerce project. > > Create project with an existing package > --------------------------------------- > > mkdir test-site > mkvirtualenv test-site --no-site-packages > cd test-site > workon test-site > easy_install pip > pip install -e git+git://github.com/hbussell/pinax.git#egg=pinax > pip install -e git+git://github.com/hbussell/social-commerce- > project.git#egg=social-commerce > > # changed pinax to instal Django 1.1 instead of 1.0.4 to work with > satchmo > pip install -r src/pinax/requirements/external_apps.txt > pinax-admin clone_project social-commerce project > > # patch friend app > lib/python2.5/site-packages/friends/models.py #43 > replace: > users = models.ManyToManyField(User) > with: > users = models.ManyToManyField(User, related_name="contact_users") > > cd project > python manage.py syncdb > python manage.py runserver > > -------------------------------- > Clone a project from pypi > -------------------------------- > > mkdir test-site2 > mkvirtualenv test-site2 --no-site-packages > cd test-site > workon test-site2 > easy_install pip > pip install -e git+git://github.com/hbussell/pinax.git#egg=pinax > pip install -r src/pinax/requirements/external_apps.txt > # you should see social-commerce listed under the pypi projects > pinax-admin clone_project -l > pinax-admin clone_project social-commerce project > > # patch friend app > lib/python2.5/site-packages/friends/models.py #43 > replace: > users = models.ManyToManyField(User) > with: > users = models.ManyToManyField(User, related_name="contact_users") > > cd project > python manage.py syncdb > python manage.py runserver > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Pinax Core Development" 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/pinax-core-dev?hl=en -~----------~----~----~----~------~----~------~--~---
