-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Martijn Faassen wrote:
>>> * the setup.py I'll create will only work with setuptools installed; >>> is this a problem? >> >> >> Not from us. You'd maybe get even more warm fuzzies from people by >> making it not require setuptools, but that limitation doesn't bother us. > > > Okay, good. Warm fuzzies are nice, but I won't worry too much about that. There is some support for "kickstarting" an eggifying project. E.g.: $ export ZSVN=svn+ssh://svn.zope.org/repos/main $ svn cp -m "Eggify" $ZSVN/productsupport/trunk/project-template \ $ZSVN/zope.foopackage The top-level 'zope.foopackage' will have a skeleton 'trunk', plus empty 'branches' and 'tags': $ svn co $ZSVN/zope.foopackage/trunk zope.foopackage-trunk $ cd zope.foopackage-trunk $ ls -1 CHANGES.txt develop.py INSTALL.txt README.txt setup.cfg.in setup.py src test.py workspace The text files are templates, and should be edited to fit. The 'develop.py' script will set up a local 'bin' and 'lib' directory inside your checkout, and try to install dependencies as specified in 'setup.py' and 'setup.cfg' (which it copies from 'setup.cfg.in'). It also jams the Zope egg URL into 'setup.cfg'. I usually run 'setup.py develop' afterwards, as it is better at finding all the dependencies: $ PYTHONPATH=lib /path/to/your/python setup.py develop The 'zope.testing' package is supposed to be pulled in during that bootstrapping, but often seems missed (I haven't yet figured out why). Running the local 'easy_install' does the trick: $ PYTHONPATH=lib /path/to/your/python bin/easy_install \ zope.testing The 'src/zope' directory is intended to contain a 'svn:externals' pointer to the "canonical" location of the source (we may eventually reverse this, and make the main Zope tree point out at the top-level package directories). E.g. $ svn propedit svn:externals src/zope #... add your external here $ svn up # ... fetches your external. That 'src/zope' directory also contains "setuptools / pkgutil" boilerplat namespace __init__.py: $ cat src/zope/__init__.py # namespace package boilerplate try: __import__('pkg_resources').declare_namespace(__name__) except ImportError, e: from pkgutil import extend_path __path__ = extend_path(__path__, __name__) The 'test.py' needs to be edited to point to your package. At that point, you should have all your package's dependencies installed (assuming that you named them in 'setup.py'), and should be able to run the tests using your local eggs: $ PYTHONPATH=lib /path/to/your/python test.py Nathan, Jim, please correct any mistakes you see. Tres. - -- =================================================================== Tres Seaver +1 202-558-7113 [EMAIL PROTECTED] Palladion Software "Excellence by Design" http://palladion.com -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (GNU/Linux) Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org iD8DBQFEM7tX+gerLs4ltQ4RArrjAJ9GAW9klbLC9n4ZUdcmbvvsrSDQCgCgsz+l SojySIyJZEGgMVercdKH8Uk= =FdIS -----END PGP SIGNATURE----- _______________________________________________ Zope3-dev mailing list Zope3-dev@zope.org Unsub: http://mail.zope.org/mailman/options/zope3-dev/archive%40mail-archive.com