[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