[Checkins] SVN: z3c.recipe.egg_/trunk/z3c/recipe/egg/ * Incomplete
work on getting editable eggs on part initialization
Ross Patterson
me at rpatterson.net
Sat Jun 7 15:31:16 EDT 2008
Log message for revision 87233:
* Incomplete work on getting editable eggs on part initialization
instead of install. This approach doesn't work or make sence
afterall. Will revert in next commit.
Changed:
U z3c.recipe.egg_/trunk/z3c/recipe/egg/__init__.py
U z3c.recipe.egg_/trunk/z3c/recipe/egg/editable.txt
U z3c.recipe.egg_/trunk/z3c/recipe/egg/tests/tests.py
-=-
Modified: z3c.recipe.egg_/trunk/z3c/recipe/egg/__init__.py
===================================================================
--- z3c.recipe.egg_/trunk/z3c/recipe/egg/__init__.py 2008-06-07 19:03:56 UTC (rev 87232)
+++ z3c.recipe.egg_/trunk/z3c/recipe/egg/__init__.py 2008-06-07 19:31:16 UTC (rev 87233)
@@ -65,10 +65,23 @@
options['versions'] = self.get_online_versions()
else:
options['versions'] = self.get_offline_versions()
+
+ self.onInit = (
+ options.setdefault('init', 'True').lower()
+ in ['true', 'yes', '1'])
+ if self.onInit:
+ self.setup()
+
+ def install(self):
+ if not self.onInit:
+ self.setup()
+ return self.get_location()
+
+ update = install
- def install(self):
+ def setup(self):
if not self.online:
- return self.get_location()
+ return
options = self.options
@@ -111,10 +124,6 @@
req.key)
for req in self.reqs))
- return self.get_location()
-
- update = install
-
def get_location(self):
if os.path.isdir(self.options['location']):
return self.options['location']
Modified: z3c.recipe.egg_/trunk/z3c/recipe/egg/editable.txt
===================================================================
--- z3c.recipe.egg_/trunk/z3c/recipe/egg/editable.txt 2008-06-07 19:03:56 UTC (rev 87232)
+++ z3c.recipe.egg_/trunk/z3c/recipe/egg/editable.txt 2008-06-07 19:31:16 UTC (rev 87233)
@@ -41,9 +41,9 @@
... """ % dict(server=link_server))
>>> print system(buildout),
+ Develop: '/sample-buildout/parts/demoneeded/demoneeded'
Uninstalling demoneeded.
Installing demoneeded.
- Develop: '/sample-buildout/parts/demoneeded/demoneeded'
>>> ls(sample_buildout, 'develop-eggs')
- demoneeded.egg-link
@@ -61,7 +61,7 @@
... recipe = z3c.recipe.egg:editable
... find-links = %(server)s
... eggs = demoneeded
- ... extdemo
+ ... demoupgraded
... """ % dict(server=link_server))
>>> print system(buildout),
@@ -70,32 +70,21 @@
>>> ls(sample_buildout, 'parts', 'demoneeded')
d demoneeded
- d extdemo
+ d demoupgraded
If a new qualifying version is available then the part will be
reinstalled.
- >>> write(
- ... sample_buildout, 'parts', 'demoneeded', 'demoneeded',
- ... 'setup.py', """
- ... from setuptools import setup
- ... setup(name='demoneeded', py_modules=['eggrecipedemoneeded'],
- ... zip_safe=True, version='1.3', author='bob',
- ... url='bob', author_email='bob')
- ... """)
+ >>> from z3c.recipe.egg.tests import tests
+ >>> tests.create_sample_egg(sample_eggs, version='1.1')
- >>> import os
- >>> sdist(os.path.join(
- ... sample_buildout, 'parts', 'demoneeded', 'demoneeded'),
- ... sample_eggs)
-
>>> print system(buildout),
Uninstalling demoneeded.
Installing demoneeded.
>>> ls(sample_buildout, 'parts', 'demoneeded')
d demoneeded
- d extdemo
+ d demoupgraded
>>> cat(
... sample_buildout, 'parts', 'demoneeded', 'demoneeded',
@@ -114,7 +103,7 @@
>>> ls(sample_buildout, 'parts', 'demoneeded')
d demoneeded
- d extdemo
+ d demoupgraded
If the part is to be reinstalled and buildout is run in offline or
non-newest mode, the recipe does nothing.
@@ -145,7 +134,7 @@
... recipe = z3c.recipe.egg:editable
... find-links = %(server)s
... eggs = demoneeded
- ... extdemo
+ ... demoupgraded
... """ % dict(server=link_server))
>>> print system(buildout+' -o'),
@@ -168,7 +157,7 @@
... recipe = z3c.recipe.egg:editable
... find-links = %(server)s
... eggs = demoneeded
- ... extdemo
+ ... demoupgraded
... build-directory = src
... """ % dict(server=link_server))
@@ -179,7 +168,7 @@
>>> ls(sample_buildout, 'parts')
>>> ls(sample_buildout, 'src')
d demoneeded
- d extdemo
+ d demoupgraded
If the build directory is present, it will not be removed when the
part is installed preserving any changes.
@@ -201,7 +190,7 @@
... recipe = z3c.recipe.egg:editable
... find-links = %(server)s
... eggs = demoneeded
- ... extdemo
+ ... demoupgraded
... build-directory = src
... """ % dict(server=link_server))
@@ -211,7 +200,7 @@
>>> ls(sample_buildout, 'src')
d demoneeded
- d extdemo
+ d demoupgraded
>>> cat(
... sample_buildout, 'src', 'demoneeded', 'setup.py')
Modified: z3c.recipe.egg_/trunk/z3c/recipe/egg/tests/tests.py
===================================================================
--- z3c.recipe.egg_/trunk/z3c/recipe/egg/tests/tests.py 2008-06-07 19:03:56 UTC (rev 87232)
+++ z3c.recipe.egg_/trunk/z3c/recipe/egg/tests/tests.py 2008-06-07 19:31:16 UTC (rev 87233)
@@ -1,15 +1,33 @@
-import unittest, os, shutil
+import unittest, os, shutil, tempfile
from zope.testing import doctest, renormalizing
import zc.buildout.testing
-import zc.recipe.egg.tests
+from zc.recipe.egg import tests
+versioned_dist_template = """
+from setuptools import setup
+setup(name=%r, zip_safe=False, version=%r,
+ author='bob', url='bob', author_email='bob')
+"""
+
+def create_sample_egg(dest, template=versioned_dist_template,
+ name='demoupgraded', version='1.0'):
+ write = zc.buildout.testing.write
+ tmp = tempfile.mkdtemp()
+ try:
+ write(tmp, 'README.txt', '')
+ write(tmp, 'setup.py', template % (name, version))
+ zc.buildout.testing.sdist(tmp, dest)
+ finally:
+ shutil.rmtree(tmp)
+
def setUp(test):
- zc.recipe.egg.tests.setUp(test)
+ tests.setUp(test)
zc.buildout.testing.install_develop('z3c.recipe.egg', test)
shutil.copytree(os.path.join(os.path.dirname(__file__), 'foo'),
'foo')
shutil.copytree(os.path.join(os.path.dirname(__file__), 'bar'),
'bar')
+ create_sample_egg(test.globs['sample_eggs'])
def test_suite():
return doctest.DocFileSuite(
More information about the Checkins
mailing list