Hi,
Paster Plone skeletons create the following entry points for Plone apps (at
least AT apps) by default:
# -*- entry_points -*-
[distutils.setup_keywords]
paster_plugins = setuptools.dist:assert_string_list
[egg_info.writers]
paster_plugins.txt = setuptools.command.egg_info:write_arg
They are needed to use paster addcontent command for Plone.
However sometimes (always?) this leads to infinite recursion when you run
buildout and there already exists .egg-info folders for the product from
previous buildout run:
Develop: '/srv/plone/saariselka/src/collective.mountpoint'
Traceback (most recent call last):
File "/tmp/tmpWfiFy9", line 11, in ?
execfile('/srv/plone/saariselka/src/collective.mountpoint/setup.py')
File "/srv/plone/saariselka/src/collective.mountpoint/setup.py", line 72,
in ?
paster_plugins = ["ZopeSkel"],
File "/usr/lib/python2.4/distutils/core.py", line 110, in setup
_setup_distribution = dist = klass(attrs)
File
"/srv/plone/saariselka/eggs/setuptools-0.6c9-py2.4.egg/setuptools/dist.py",
line 223, in __init__
_Distribution.__init__(self,attrs)
File "/usr/lib/python2.4/distutils/dist.py", line 240, in __init__
self.finalize_options()
File
"/srv/plone/saariselka/eggs/setuptools-0.6c9-py2.4.egg/setuptools/dist.py",
line 255, in finalize_options
ep.require(installer=self.fetch_build_egg)
File
"/srv/plone/saariselka/eggs/setuptools-0.6c9-py2.4.egg/pkg_resources.py",
line 1925, in require
working_set.resolve(self.dist.requires(self.extras),env,installer))
File
"/srv/plone/saariselka/eggs/setuptools-0.6c9-py2.4.egg/pkg_resources.py",
line 522, in resolve
dist = best[req.key] = env.best_match(req, self, installer)
File
"/srv/plone/saariselka/eggs/setuptools-0.6c9-py2.4.egg/pkg_resources.py",
line 758, in best_match
return self.obtain(req, installer) # try and download/install
File
"/srv/plone/saariselka/eggs/setuptools-0.6c9-py2.4.egg/pkg_resources.py",
line 770, in obtain
return installer(requirement)
File
"/srv/plone/saariselka/eggs/setuptools-0.6c9-py2.4.egg/setuptools/dist.py",
line 286, in fetch_build_egg
return cmd.easy_install(req)
File
"/srv/plone/saariselka/eggs/setuptools-0.6c9-py2.4.egg/setuptools/command/easy_install.py",
line 446, in easy_install
return self.install_item(spec, dist.location, tmpdir, deps)
File
"/srv/plone/saariselka/eggs/setuptools-0.6c9-py2.4.egg/setuptools/command/easy_install.py",
line 476, in install_item
dists = self.install_eggs(spec, download, tmpdir)
File
"/srv/plone/saariselka/eggs/setuptools-0.6c9-py2.4.egg/setuptools/command/easy_install.py",
line 655, in install_eggs
return self.build_and_install(setup_script, setup_base)
File
"/srv/plone/saariselka/eggs/setuptools-0.6c9-py2.4.egg/setuptools/command/easy_install.py",
line 930, in build_and_install
self.run_setup(setup_script, setup_base, args)
File
"/srv/plone/saariselka/eggs/setuptools-0.6c9-py2.4.egg/setuptools/command/easy_install.py",
line 921, in run_setup
raise DistutilsError("Setup script exited with %s" % (v.args[0],))
distutils.errors.DistutilsError: Setup script exited with error: Setup
script exited with error: Setup script exited with error: Setup script
exited with error: Setup script exited with error: Setup script exited with
error: Setup script exited with error: Setup script exited with error: Setup
script exited with error: Setup script exited with error: Setup script
exited with error: Setup script exited with error: Setup script exited with
error: Setup script exited with error: Setup script exited with error: Setup
script exited with error: Setup script exited with error: Setup script
exited with error: Setup script exited with error: Setup script exited with
error: Setup script exited with error: Setup script exited with error:
Numerical result out of range
While:
Installing.
The cure is run this before running buildout:
find src -iname "*.egg-info" | xargs rm -rf
But is there any more elegant solution available?
- Fix paster templates?
- Fix buildout?
- Fix setuptools?
Cheers,
Mikko
--
View this message in context:
http://n2.nabble.com/Infinite-setuptools-recursion-with-paster-entry-points-tp3692450p3692450.html
Sent from the Product Developers mailing list archive at Nabble.com.
_______________________________________________
Product-Developers mailing list
[email protected]
http://lists.plone.org/mailman/listinfo/product-developers