[py-dev] [pypy-dev] py lib 0.9.0: py.test, distributed execution, microthreads ...
holger krekel
holger at merlinux.de
Thu Mar 8 17:14:23 CET 2007
Hey Martijn!
thanks a lot for the pointers, they help - i think
we should go for generating a plain no-tricks setup.py file.
This way one can be rather specific of what should be
included and such, i guess. Regarding win32:
py.test can run tests remotely, i.e. from a linux
box on a windows box with full feedback. If
we have a permanent win32 host somewhere that can compile
C via distutils (i know such things exist, it's just hard
to get hold of such a configuration, grrr). And then
finally have all-platform automated ad-hoc testing,
maybe even with PDB interactive prompts etc :)
best & have a nice flight back,
holger
On Thu, Mar 08, 2007 at 17:05 +0100, Martijn Faassen wrote:
> Hey Holger,
>
> On 3/7/07, holger krekel <holger at merlinux.de> wrote:
> > Hi Martijn! (hi CCed py-dev),
>
> > hope you are doing well!
>
> Yes, still in Singapore actually but coming back this weekend.
>
> > I am considering doing a py lib 0.9.1 with a particular focus
> > on packaging and win32 issues. Could you maybe provide some pointers,
> > keypoints on what you think would be nice to have in this
> > area? I haven't really followed the packaging mechanisms in
> > the last year and need to catch up, i guess. Any help is
> > appreciated.
>
> I can't really tell you much about win32 issues. Concerning packaging
> - it's a fairly huge issue that I only have partial experience with
> too, but I'll attempt to give a few pointers based on my experience:
>
> * The minimal thing you'd want is an entry in the cheeseshop which
> points to the .tgz of the source somewhere on your site. If your
> setup.py is fairly straightforward you may be in luck; tools like
> easy_install (and buildout tools like zc.buildout, which can install
> packages locally instead of centrally) might very well be able to
> download and install the software automatically. I've even had this
> happen with lxml, which means a C-compile happens successfully.
>
> * Next, try some command like 'python setup.py sdist upload' to
> automatically upload tarballs to the cheeseshop itself.
>
> * the next step would be to look at setuptools, which is an extension
> of distutils. This stuff:
>
> http://peak.telecommunity.com/DevCenter/setuptools
>
> It is a lot of stuff and therefore somewhat intimidating. I believe
> the minimal way to start using setuptools is to replace your import in
> setup.py with setuptools instead of distutils.
>
> * once you use setuptools, you can use it to create an egg, which is
> just another way to package Python code for distribution. If it's just
> Python code, that's fairly simple as you get a platform independent
> egg. If it's C code you'll need to do some more work in the setup.py
> and eggs will be platform specific, but I believe setuptools automates
> quite a bit. You can use things like 'python setup.py bdist_egg
> upload' to upload the egg.
>
> Important in all this is to keep your setup.py relatively
> straightforward. Not always possible, but I've seen some setup.py's
> that do all kinds of work themselves that breaks a lot of all this,
> and that's a shame. egg downloading and such starts to get nice once
> you have automatic dependency management and the ability to install
> eggs as a user, using tools like zc.buildout (if you need lots of
> cooperating bits and pieces including things like databases and
> servers) or workingenv.py (lightweight clever hack). Both
> install eggs in some other place than
> /usr/lib/python2.4/site-packages, which is the default and rather
> ugly.
>
> I hope these pointers help you a bit to get you on your way.
>
> Regards,
>
> Martijn
> _______________________________________________
> py-dev mailing list
> py-dev at codespeak.net
> http://codespeak.net/mailman/listinfo/py-dev
>
--
merlinux GmbH Steinbergstr. 42 31139 Hildesheim
http://merlinux.de tel +49 5121 20800 75 (fax 77)
More information about the py-dev
mailing list