[Checkins] SVN: zc.buildout/branch/regebro-python3/ OK, so we won't use zope.testing at all, in an effort to preserve some sanity.

Lennart Regebro regebro at gmail.com
Fri Apr 16 11:24:51 EDT 2010


Log message for revision 110979:
  OK, so we won't use zope.testing at all, in an effort to preserve some sanity.
  

Changed:
  U   zc.buildout/branch/regebro-python3/buildout.cfg
  U   zc.buildout/branch/regebro-python3/setup.py
  U   zc.buildout/branch/regebro-python3/src/zc/buildout/allowhosts.txt
  U   zc.buildout/branch/regebro-python3/src/zc/buildout/bootstrap.txt
  U   zc.buildout/branch/regebro-python3/src/zc/buildout/buildout.py
  U   zc.buildout/branch/regebro-python3/src/zc/buildout/buildout.txt
  U   zc.buildout/branch/regebro-python3/src/zc/buildout/debugging.txt
  U   zc.buildout/branch/regebro-python3/src/zc/buildout/dependencylinks.txt
  U   zc.buildout/branch/regebro-python3/src/zc/buildout/download.txt
  U   zc.buildout/branch/regebro-python3/src/zc/buildout/downloadcache.txt
  U   zc.buildout/branch/regebro-python3/src/zc/buildout/easy_install.py
  U   zc.buildout/branch/regebro-python3/src/zc/buildout/easy_install.txt
  U   zc.buildout/branch/regebro-python3/src/zc/buildout/extends-cache.txt
  A   zc.buildout/branch/regebro-python3/src/zc/buildout/py2compat.py
  U   zc.buildout/branch/regebro-python3/src/zc/buildout/repeatable.txt
  U   zc.buildout/branch/regebro-python3/src/zc/buildout/rmtree.py
  U   zc.buildout/branch/regebro-python3/src/zc/buildout/runsetup.txt
  U   zc.buildout/branch/regebro-python3/src/zc/buildout/setup.txt
  U   zc.buildout/branch/regebro-python3/src/zc/buildout/testing.py
  U   zc.buildout/branch/regebro-python3/src/zc/buildout/tests.py
  U   zc.buildout/branch/regebro-python3/src/zc/buildout/testselectingpython.py
  U   zc.buildout/branch/regebro-python3/src/zc/buildout/update.txt
  U   zc.buildout/branch/regebro-python3/src/zc/buildout/windows.txt
  U   zc.buildout/branch/regebro-python3/zc.recipe.egg_/setup.py
  U   zc.buildout/branch/regebro-python3/zc.recipe.egg_/src/zc/recipe/egg/README.txt
  U   zc.buildout/branch/regebro-python3/zc.recipe.egg_/src/zc/recipe/egg/api.txt
  U   zc.buildout/branch/regebro-python3/zc.recipe.egg_/src/zc/recipe/egg/custom.txt
  U   zc.buildout/branch/regebro-python3/zc.recipe.egg_/src/zc/recipe/egg/selecting-python.txt

-=-
Modified: zc.buildout/branch/regebro-python3/buildout.cfg
===================================================================
--- zc.buildout/branch/regebro-python3/buildout.cfg	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/buildout.cfg	2010-04-16 15:24:50 UTC (rev 110979)
@@ -1,28 +1,9 @@
 [buildout]
 develop = zc.recipe.egg_ .
-parts = test oltest py
+parts = py
 
 [py]
 recipe = zc.recipe.egg
 eggs = zc.buildout
-       zope.testing
 interpreter = py
 
-[test]
-recipe = zc.recipe.testrunner
-eggs = 
-  zc.buildout
-  zc.recipe.egg
-
-# Tests that can be run wo a network
-[oltest]
-recipe = zc.recipe.testrunner
-eggs = 
-  zc.buildout
-  zc.recipe.egg
-defaults =
-  [
-  '-t',
-  '!(bootstrap|selectingpython|selecting-python)',
-  ]
-

Modified: zc.buildout/branch/regebro-python3/setup.py
===================================================================
--- zc.buildout/branch/regebro-python3/setup.py	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/setup.py	2010-04-16 15:24:50 UTC (rev 110979)
@@ -66,13 +66,6 @@
 
 """ % dict(name=name)
 
-if sys.version > '3':
-    py3extras = {
-        'use_2to3': True,
-    }
-else:
-    py3extras = {}
-
 setup(
     name = name,
     version = version,
@@ -83,12 +76,12 @@
     license = "ZPL 2.1",
     keywords = "development build",
     url='http://buildout.org',
-
+    test_suite='zc.buildout.tests.test_suite',
     data_files = [('.', ['README.txt'])],
     packages = ['zc', 'zc.buildout'],
     package_dir = {'': 'src'},
     namespace_packages = ['zc'],
-    install_requires = 'setuptools',
+    install_requires = ['setuptools'],
     include_package_data = True,
     entry_points = entry_points,
     zip_safe=False,
@@ -98,5 +91,4 @@
        'Topic :: Software Development :: Build Tools',
        'Topic :: Software Development :: Libraries :: Python Modules',
        ],
-    **py3extras
     )

Modified: zc.buildout/branch/regebro-python3/src/zc/buildout/allowhosts.txt
===================================================================
--- zc.buildout/branch/regebro-python3/src/zc/buildout/allowhosts.txt	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/src/zc/buildout/allowhosts.txt	2010-04-16 15:24:50 UTC (rev 110979)
@@ -55,7 +55,7 @@
 
 Now we can run the buildout and make sure all attempts to dist.plone.org fails::
 
-    >>> print system(buildout)
+    >>> print((system(buildout)))
     Develop: '/sample-buildout/allowdemo'
     Installing eggs.
     <BLANKLINE>
@@ -91,7 +91,7 @@
 
 Now we can run the buildout and make sure all attempts to dist.plone.org fails::
 
-    >>> print system(buildout)
+    >>> print((system(buildout)))
     Develop: '/sample-buildout/allowdemo'
     Installing eggs.
     <BLANKLINE>
@@ -121,7 +121,7 @@
     ... eggs=zc.buildout
     ... interpreter=python
     ... ''')
-    >>> print system(buildout)
+    >>> print((system(buildout)))
     Unused options for buildout: 'foo'.
     Installing python.
     Generated script '/sample-buildout/bin/buildout'.
@@ -132,3 +132,5 @@
 This was fixed in this changeset:
 http://svn.zope.org/zc.buildout/trunk/src/zc/buildout/buildout.py?rev=87309&r1=87277&r2=87309
 
+
+

Modified: zc.buildout/branch/regebro-python3/src/zc/buildout/bootstrap.txt
===================================================================
--- zc.buildout/branch/regebro-python3/src/zc/buildout/bootstrap.txt	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/src/zc/buildout/bootstrap.txt	2010-04-16 15:24:50 UTC (rev 110979)
@@ -20,9 +20,9 @@
     ... parts =
     ... ''')
     >>> write('bootstrap.py', open(bootstrap_py).read())
-    >>> print 'X'; print system(
+    >>> print('X'); print((system(
     ...     zc.buildout.easy_install._safe_arg(sys.executable)+' '+
-    ...     'bootstrap.py'); print 'X' # doctest: +ELLIPSIS
+    ...     'bootstrap.py'))); print('X') # doctest: +ELLIPSIS
     X...
     Creating directory '/sample/bin'.
     Creating directory '/sample/parts'.
@@ -43,7 +43,7 @@
     >>> ls(sample_buildout, 'bin')
     -  buildout
 
-    >>> print 'X'; ls(sample_buildout, 'eggs') # doctest: +ELLIPSIS
+    >>> print('X'); ls(sample_buildout, 'eggs') # doctest: +ELLIPSIS
     X...
     d  zc.buildout-...egg
 
@@ -52,20 +52,20 @@
 
 Let's try with an unknown version::
 
-    >>> print 'X'; print system(
+    >>> print('X'); print((system(
     ...     zc.buildout.easy_install._safe_arg(sys.executable)+' '+
-    ...     'bootstrap.py --version UNKNOWN'); print 'X' # doctest: +ELLIPSIS
-    ...
+    ...     'bootstrap.py --version UNKNOWN'))); print('X') # doctest: +ELLIPSIS
+    ... 
     X
     No local packages or download links found for zc.buildout==UNKNOWN
     ...
 
 Now let's try with `1.1.2`, which happens to exist::
 
-    >>> print 'X'; print system(
+    >>> print('X'); print((system(
     ...     zc.buildout.easy_install._safe_arg(sys.executable)+' '+
-    ...     'bootstrap.py --version 1.1.2'); print 'X'
-    ...
+    ...     'bootstrap.py --version 1.1.2'))); print('X')
+    ... 
     X
     Generated script '/sample/bin/buildout'.
     <BLANKLINE>
@@ -76,7 +76,7 @@
     >>> buildout_script = join(sample_buildout, 'bin', 'buildout')
     >>> if sys.platform.startswith('win'):
     ...     buildout_script += '-script.py'
-    >>> print open(buildout_script).read() # doctest: +ELLIPSIS
+    >>> print((open(buildout_script).read())) # doctest: +ELLIPSIS
     #...
     <BLANKLINE>
     import sys
@@ -93,10 +93,10 @@
 
 Let's try with `1.2.1`::
 
-    >>> print 'X'; print system(
+    >>> print('X'); print((system(
     ...     zc.buildout.easy_install._safe_arg(sys.executable)+' '+
-    ...     'bootstrap.py --version 1.2.1'); print 'X' # doctest: +ELLIPSIS
-    ...
+    ...     'bootstrap.py --version 1.2.1'))); print('X') # doctest: +ELLIPSIS
+    ... 
     X
     Generated script '/sample/bin/buildout'.
     <BLANKLINE>
@@ -104,7 +104,7 @@
 
 Let's make sure the generated `buildout` script uses it::
 
-    >>> print open(buildout_script).read() # doctest: +ELLIPSIS
+    >>> print((open(buildout_script).read())) # doctest: +ELLIPSIS
     #...
     <BLANKLINE>
     import sys
@@ -122,10 +122,10 @@
 `zc.buildout` now can also run with `Distribute` with the `--distribute` option::
 
 
-    >>> print 'X'; print system(
+    >>> print('X'); print((system(
     ...     zc.buildout.easy_install._safe_arg(sys.executable)+' '+
-    ...     'bootstrap.py --distribute'); print 'X' # doctest: +ELLIPSIS
-    ...
+    ...     'bootstrap.py --distribute'))); print('X') # doctest: +ELLIPSIS
+    ... 
     X
     ...
     Generated script '/sample/bin/buildout'.
@@ -134,7 +134,7 @@
 
 Let's make sure the generated `buildout` script uses it::
 
-    >>> print open(buildout_script).read() # doctest: +ELLIPSIS
+    >>> print((open(buildout_script).read())) # doctest: +ELLIPSIS
     #...
     <BLANKLINE>
     import sys
@@ -151,10 +151,10 @@
 
 Make sure both options can be used together::
 
-    >>> print 'X'; print system(
+    >>> print('X'); print((system(
     ...     zc.buildout.easy_install._safe_arg(sys.executable)+' '+
-    ...     'bootstrap.py --distribute --version 1.2.1'); print 'X' # doctest: +ELLIPSIS
-    ...
+    ...     'bootstrap.py --distribute --version 1.2.1'))); print('X') # doctest: +ELLIPSIS
+    ... 
     X
     ...
     Generated script '/sample/bin/buildout'.
@@ -163,7 +163,7 @@
 
 Let's make sure the generated `buildout` script uses ``Distribute`` *and* ``zc.buildout-1.2.1``::
 
-    >>> print open(buildout_script).read() # doctest: +ELLIPSIS
+    >>> print((open(buildout_script).read())) # doctest: +ELLIPSIS
     #...
     <BLANKLINE>
     import sys
@@ -184,10 +184,10 @@
     >>> f = open(conf_file, 'w')
     >>> f.write('[buildout]\nparts=\n\n')
     >>> f.close()
-    >>> print 'X'; print system(
+    >>> print('X'); print((system(
     ...     zc.buildout.easy_install._safe_arg(sys.executable)+' '+
-    ...     'bootstrap.py -c %s --distribute' % conf_file); print 'X' # doctest: +ELLIPSIS
-    ...
+    ...     'bootstrap.py -c %s --distribute' % conf_file))); print('X') # doctest: +ELLIPSIS
+    ... 
     X
     ...
     Generated script '/sample/bin/buildout'.
@@ -195,3 +195,5 @@
     X
 
 
+
+

Modified: zc.buildout/branch/regebro-python3/src/zc/buildout/buildout.py
===================================================================
--- zc.buildout/branch/regebro-python3/src/zc/buildout/buildout.py	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/src/zc/buildout/buildout.py	2010-04-16 15:24:50 UTC (rev 110979)
@@ -1395,18 +1395,20 @@
                         if (not (f.endswith('pyc') or f.endswith('pyo'))
                             and os.path.exists(os.path.join(dirpath, f)))
                         ]
-        hash.update(' '.join(dirnames))
-        hash.update(' '.join(filenames))
+        hash.update(' '.join(dirnames).encode('ascii', 'ignore'))
+        hash.update(' '.join(filenames).encode('ascii', 'ignore'))
         for name in filenames:
-            hash.update(open(os.path.join(dirpath, name)).read())
-    return hash.digest().encode('base64').strip()
+            hash.update(open(os.path.join(dirpath, name), 'rb').read())
+    digest = hash.digest()
+    import base64
+    return base64.b64encode(digest).strip()
 
 def _dists_sig(dists):
     result = []
     for dist in dists:
         location = dist.location
         if dist.precedence == pkg_resources.DEVELOP_DIST:
-            result.append(dist.project_name + '-' + _dir_hash(location))
+            result.append(dist.project_name + '-' + _dir_hash(location).decode())
         else:
             result.append(os.path.basename(location))
     return result

Modified: zc.buildout/branch/regebro-python3/src/zc/buildout/buildout.txt
===================================================================
--- zc.buildout/branch/regebro-python3/src/zc/buildout/buildout.txt	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/src/zc/buildout/buildout.txt	2010-04-16 15:24:50 UTC (rev 110979)
@@ -284,7 +284,7 @@
     >>> import os
     >>> os.chdir(sample_buildout)
     >>> buildout = os.path.join(sample_buildout, 'bin', 'buildout')
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Installing data-dir.
     data-dir: Creating directory mystuff
@@ -333,7 +333,7 @@
     ... path = mydata
     ... """)
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling data-dir.
     Installing data-dir.
@@ -353,7 +353,7 @@
 the part will be reinstalled:
 
     >>> rmdir(sample_buildout, 'mydata')
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling data-dir.
     Installing data-dir.
@@ -384,7 +384,7 @@
 
 We'll get a user error, not a traceback.
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     data-dir: Cannot create /xxx/mydata. /xxx is not a directory.
     While:
@@ -449,7 +449,7 @@
     ... path = foo bin
     ... """)
 
-    >>> print system(buildout), # doctest: +ELLIPSIS
+    >>> print(system(buildout), end=' ') # doctest: +ELLIPSIS
     Develop: '/sample-buildout/recipes'
     Uninstalling data-dir.
     Installing data-dir.
@@ -483,7 +483,7 @@
     ... path = foo bins
     ... """)
 
-    >>> print system(buildout), # doctest: +ELLIPSIS
+    >>> print(system(buildout), end=' ') # doctest: +ELLIPSIS
     Develop: '/sample-buildout/recipes'
     Installing data-dir.
     data-dir: Creating directory foo
@@ -559,7 +559,7 @@
 
 When we rerun the buildout:
 
-    >>> print system(buildout), # doctest: +ELLIPSIS
+    >>> print(system(buildout), end=' ') # doctest: +ELLIPSIS
     Develop: '/sample-buildout/recipes'
     Installing data-dir.
     data-dir: Creating directory foo
@@ -640,7 +640,7 @@
 If we rerun the buildout, again, we'll get the error and no
 directories will be created:
 
-    >>> print system(buildout), # doctest: +ELLIPSIS
+    >>> print(system(buildout), end=' ') # doctest: +ELLIPSIS
     Develop: '/sample-buildout/recipes'
     Installing data-dir.
     data-dir: Creating directory foo
@@ -670,7 +670,7 @@
     ... path = foo bins
     ... """)
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Installing data-dir.
     data-dir: Creating directory foo
@@ -717,7 +717,7 @@
 the origin of the value (file name or COMPUTED_VALUE, DEFAULT_VALUE,
 COMMAND_LINE_VALUE).
 
-    >>> print system(buildout+ ' annotate'),
+    >>> print(system(buildout+ ' annotate'), end=' ')
     ... # doctest: +ELLIPSIS +NORMALIZE_WHITESPACE
     <BLANKLINE>
     Annotated sections
@@ -778,7 +778,7 @@
     ...         items = self.options.items()
     ...         items.sort()
     ...         for option, value in items:
-    ...             print option, value
+    ...             print(option, value)
     ...         return ()
     ...
     ...     update = install
@@ -834,7 +834,7 @@
 Now, if we run the buildout, we'll see the options with the values
 substituted.
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling data-dir.
     Installing data-dir.
@@ -853,7 +853,7 @@
 recipe, so it assumed it could and reinstalled mydata.  If we rerun
 the buildout:
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Updating data-dir.
     Updating debug.
@@ -892,7 +892,7 @@
     ... path = mydata
     ... """)
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling debug.
     Updating data-dir.
@@ -930,7 +930,7 @@
 
 It will still be treated as a part:
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling debug.
     Updating data-dir.
@@ -969,7 +969,7 @@
 
 It will still be treated as a part:
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Updating data-dir.
     Updating debug.
@@ -1018,7 +1018,7 @@
     ... path = mydata
     ... """)
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling debug.
     Uninstalling data-dir.
@@ -1110,8 +1110,8 @@
     >>> write(sample_buildout, 'demo', 'demo.py',
     ... """
     ... def ext(buildout):
-    ...     print [part['option'] for name, part in buildout.items() \
-    ...           if name.startswith('part')]
+    ...     print([part['option'] for name, part in buildout.items() \
+    ...           if name.startswith('part')])
     ... """)
 
     >>> write(sample_buildout, 'demo', 'setup.py',
@@ -1134,7 +1134,7 @@
     ... """)
 
     >>> os.chdir(sample_buildout)
-    >>> print system(os.path.join(sample_buildout, 'bin', 'buildout')),
+    >>> print(system(os.path.join(sample_buildout, 'bin', 'buildout')), end=' ')
     Develop: '/sample-buildout/demo'
     Uninstalling myfiles.
     Getting distribution for 'recipes'.
@@ -1152,14 +1152,14 @@
     ... extends = extension2.cfg
     ... """)
 
-    >>> print system(os.path.join('bin', 'buildout')),
+    >>> print(system(os.path.join('bin', 'buildout')), end=' ')
     ['a1 a2/na3 a4/na5', 'b1 b2 b3 b4', 'c1 c2/nc3 c4 c5', 'h1 h2']
     Develop: '/sample-buildout/demo'
 
 Annotated sections output shows which files are responsible for which
 operations.
 
-    >>> print system(os.path.join('bin', 'buildout') + ' annotate'),
+    >>> print(system(os.path.join('bin', 'buildout') + ' annotate'), end=' ')
     ... # doctest: +ELLIPSIS +NORMALIZE_WHITESPACE
     <BLANKLINE>
     Annotated sections
@@ -1235,7 +1235,7 @@
     ... op = base
     ... """)
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Installing debug.
     op buildout
@@ -1305,7 +1305,7 @@
     ... name = base
     ... """)
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling debug.
     Installing debug.
@@ -1367,7 +1367,7 @@
     ... """ % dict(url=server_url))
 
 
-    >>> print system(buildout+ ' -c client.cfg'),
+    >>> print(system(buildout+ ' -c client.cfg'), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling debug.
     Installing debug.
@@ -1398,7 +1398,7 @@
     ... name = remote
     ... """)
 
-    >>> print system(buildout + ' -c ' + server_url + '/remote.cfg'),
+    >>> print(system(buildout + ' -c ' + server_url + '/remote.cfg'), end=' ')
     While:
       Initializing.
     Error: Missing option: buildout:directory
@@ -1408,10 +1408,10 @@
 files loaded from URLs.  In this case, the buildout directory would
 normally be defined on the command line:
 
-    >>> print system(buildout
+    >>> print(system(buildout
     ...              + ' -c ' + server_url + '/remote.cfg'
     ...              + ' buildout:directory=' + sample_buildout
-    ...              ),
+    ...              ), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling debug.
     Installing debug.
@@ -1440,7 +1440,7 @@
     ... """)
 
     >>> os.environ['HOME'] = home
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling debug.
     Installing debug.
@@ -1457,7 +1457,7 @@
 A buildout command-line argument, -U, can be used to suppress reading
 user defaults:
 
-    >>> print system(buildout + ' -U'),
+    >>> print(system(buildout + ' -U'), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling debug.
     Installing debug.
@@ -1486,7 +1486,7 @@
     ... extends = b1.cfg b2.cfg
     ... """)
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     name base
     op1 b1 1
     op2 b2 2
@@ -1511,7 +1511,7 @@
     ... op = timeout
     ... """)
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Socket timeout is set to 5 seconds.
     Develop: '/sample-buildout/recipes'
     Uninstalling debug.
@@ -1533,7 +1533,7 @@
     ... op = timeout
     ... """)
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Error: Timeout value must be numeric [5s].
 
 Uninstall recipes
@@ -1572,7 +1572,7 @@
     ...         self.options = options
     ...
     ...     def install(self):
-    ...         print "chkconfig --add %s" % self.options['script']
+    ...         print("chkconfig --add %s" % self.options['script'])
     ...         return ()
     ...
     ...     def update(self):
@@ -1580,7 +1580,7 @@
     ...
     ...
     ... def uninstall_service(name, options):
-    ...     print "chkconfig --del %s" % options['script']
+    ...     print("chkconfig --del %s" % options['script'])
     ... """)
 
 To use these recipes we must register them using entry points. Make
@@ -1619,7 +1619,7 @@
 
 When the buildout is run the service will be installed
 
-    >>> print system(buildout)
+    >>> print(system(buildout))
     Develop: '/sample-buildout/recipes'
     Uninstalling debug.
     Installing service.
@@ -1629,7 +1629,7 @@
 The service has been installed. If the buildout is run again with no
 changes, the service shouldn't be changed.
 
-    >>> print system(buildout)
+    >>> print(system(buildout))
     Develop: '/sample-buildout/recipes'
     Updating service.
     <BLANKLINE>
@@ -1648,7 +1648,7 @@
     ... script = /path/to/a/different/script
     ... """)
 
-    >>> print system(buildout)
+    >>> print(system(buildout))
     Develop: '/sample-buildout/recipes'
     Uninstalling service.
     Running uninstall recipe.
@@ -1669,7 +1669,7 @@
     ... recipe = recipes:debug
     ... """)
 
-    >>> print system(buildout)
+    >>> print(system(buildout))
     Develop: '/sample-buildout/recipes'
     Uninstalling service.
     Running uninstall recipe.
@@ -1694,7 +1694,7 @@
     ... def backup_directory(name, options):
     ...     path = options['path']
     ...     size = len(os.listdir(path))
-    ...     print "backing up directory %s of size %s" % (path, size)
+    ...     print("backing up directory %s of size %s" % (path, size))
     ... """)
 
 It must be registered with the zc.buildout.uninstall entry
@@ -1736,7 +1736,7 @@
 
 Run the buildout to install the part.
 
-    >>> print system(buildout)
+    >>> print(system(buildout))
     Develop: '/sample-buildout/recipes'
     Uninstalling debug.
     Installing dir.
@@ -1760,7 +1760,7 @@
 When the buildout is run the part is removed, and the uninstall recipe
 is run before the directory is deleted.
 
-    >>> print system(buildout)
+    >>> print(system(buildout))
     Develop: '/sample-buildout/recipes'
     Uninstalling dir.
     Running uninstall recipe.
@@ -1865,7 +1865,7 @@
 Note that we used the installed buildout option to specify an
 alternate file to store information about installed parts.
 
-    >>> print system(buildout+' -c other.cfg debug:op1=foo -v'),
+    >>> print(system(buildout+' -c other.cfg debug:op1=foo -v'), end=' ')
     Develop: '/sample-buildout/recipes'
     Installing debug.
     name other
@@ -1878,7 +1878,7 @@
 
 Options can also be combined in the usual Unix way, as in:
 
-    >>> print system(buildout+' -vcother.cfg debug:op1=foo'),
+    >>> print(system(buildout+' -vcother.cfg debug:op1=foo'), end=' ')
     Develop: '/sample-buildout/recipes'
     Updating debug.
     name other
@@ -1919,7 +1919,7 @@
     ... recipe = recipes:debug
     ... """)
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling debug.
     Installing debug.
@@ -2003,7 +2003,7 @@
 
 and run the buildout specifying just d3 and d4:
 
-    >>> print system(buildout+' install d3 d4'),
+    >>> print(system(buildout+' install d3 d4'), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling d3.
     Installing d3.
@@ -2074,7 +2074,7 @@
 
 Now, if we run the buildout without the install command:
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling d2.
     Uninstalling d1.
@@ -2131,7 +2131,7 @@
     ...    work = os.path.join(alt, 'work'),
     ... ))
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Creating directory '/sample-alt/scripts'.
     Creating directory '/sample-alt/work'.
     Creating directory '/sample-alt/basket'.
@@ -2167,7 +2167,7 @@
     ...    recipes=os.path.join(sample_buildout, 'recipes'),
     ...    ))
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Creating directory '/sample-alt/bin'.
     Creating directory '/sample-alt/parts'.
     Creating directory '/sample-alt/eggs'.
@@ -2219,7 +2219,7 @@
 configuration file.  Because the verbosity is subtracted from the log
 level, we get a final log level of 20, which is the INFO level.
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     INFO Develop: '/sample-buildout/recipes'
 
 Predefined buildout options
@@ -2237,7 +2237,7 @@
     ... parts =
     ... """)
 
-    >>> print system(buildout+' -vv'), # doctest: +NORMALIZE_WHITESPACE
+    >>> print(system(buildout+' -vv'), end=' ') # doctest: +NORMALIZE_WHITESPACE
     Installing 'zc.buildout', 'setuptools'.
     We have a develop egg: zc.buildout 1.0.0.
     We have the best distribution that satisfies 'setuptools'.
@@ -2333,9 +2333,9 @@
 
     >>> sample_bootstrapped = tmpdir('sample-bootstrapped')
 
-    >>> print system(buildout
+    >>> print(system(buildout
     ...              +' -c'+os.path.join(sample_bootstrapped, 'setup.cfg')
-    ...              +' init'),
+    ...              +' init'), end=' ')
     Creating '/sample-bootstrapped/setup.cfg'.
     Creating directory '/sample-bootstrapped/bin'.
     Creating directory '/sample-bootstrapped/parts'.
@@ -2374,9 +2374,9 @@
 
     >>> sample_bootstrapped2 = tmpdir('sample-bootstrapped2')
 
-    >>> print system(buildout
+    >>> print(system(buildout
     ...              +' -c'+os.path.join(sample_bootstrapped2, 'setup.cfg')
-    ...              +' bootstrap'),
+    ...              +' bootstrap'), end=' ')
     While:
       Initializing.
     Error: Couldn't open /sample-bootstrapped2/setup.cfg
@@ -2387,9 +2387,9 @@
     ... parts =
     ... """)
 
-    >>> print system(buildout
+    >>> print(system(buildout
     ...              +' -c'+os.path.join(sample_bootstrapped2, 'setup.cfg')
-    ...              +' bootstrap'),
+    ...              +' bootstrap'), end=' ')
     Creating directory '/sample-bootstrapped2/bin'.
     Creating directory '/sample-bootstrapped2/parts'.
     Creating directory '/sample-bootstrapped2/eggs'.
@@ -2519,7 +2519,7 @@
     ... recipe = recipes:debug
     ... """)
 
-    >>> print system(buildout+' buildout:installed=inst.cfg'),
+    >>> print(system(buildout+' buildout:installed=inst.cfg'), end=' ')
     Develop: '/sample-buildout/recipes'
     Installing debug.
     recipe recipes:debug
@@ -2541,7 +2541,7 @@
 buildout installed option:
 
     >>> os.remove('inst.cfg')
-    >>> print system(buildout+' buildout:installed='),
+    >>> print(system(buildout+' buildout:installed='), end=' ')
     Develop: '/sample-buildout/recipes'
     Installing debug.
     recipe recipes:debug
@@ -2567,7 +2567,7 @@
     ... parts =
     ... """)
 
-    >>> print system(buildout+' buildout:installed=inst.cfg'),
+    >>> print(system(buildout+' buildout:installed=inst.cfg'), end=' ')
 
     >>> ls(sample_buildout)
     -  b1.cfg
@@ -2604,9 +2604,9 @@
     >>> write(sample_bootstrapped, 'demo', 'demo.py',
     ... """
     ... def ext(buildout):
-    ...     print 'ext', list(buildout)
+    ...     print('ext', list(buildout))
     ... def unload(buildout):
-    ...     print 'unload', list(buildout)
+    ...     print('unload', list(buildout))
     ... """)
 
     >>> write(sample_bootstrapped, 'demo', 'setup.py',
@@ -2636,7 +2636,7 @@
     ... """)
 
     >>> os.chdir(sample_bootstrapped)
-    >>> print system(os.path.join(sample_bootstrapped, 'bin', 'buildout')),
+    >>> print(system(os.path.join(sample_bootstrapped, 'bin', 'buildout')), end=' ')
     Develop: '/sample-bootstrapped/demo'
 
 Now we can add the extensions option.  We were a bit tricky and ran
@@ -2656,7 +2656,7 @@
 
 We see that our extension is loaded and executed:
 
-    >>> print system(os.path.join(sample_bootstrapped, 'bin', 'buildout')),
+    >>> print(system(os.path.join(sample_bootstrapped, 'bin', 'buildout')), end=' ')
     ext ['buildout']
     Develop: '/sample-bootstrapped/demo'
     unload ['buildout']
@@ -2695,3 +2695,4 @@
        package, we would need specify much more information.  See the
        `setuptools documentation
        <http://peak.telecommunity.com/DevCenter/setuptools>`_.
+

Modified: zc.buildout/branch/regebro-python3/src/zc/buildout/debugging.txt
===================================================================
--- zc.buildout/branch/regebro-python3/src/zc/buildout/debugging.txt	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/src/zc/buildout/debugging.txt	2010-04-16 15:24:50 UTC (rev 110979)
@@ -56,7 +56,7 @@
 
 If we run the buildout, we'll get an error:
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Installing data-dir.
     While:
@@ -67,11 +67,11 @@
 If we want to debug the error, we can add the -D option. Here's we'll
 supply some input:
 
-    >>> print system(buildout+" -D", """\
+    >>> print(system(buildout+" -D", """\
     ... up
     ... p self.options.keys()
     ... q
-    ... """),
+    ... """), end=' ')
     Develop: '/sample-buildout/recipes'
     Installing data-dir.
     > /zc/buildout/buildout.py(925)__getitem__()
@@ -95,3 +95,4 @@
     MissingOption: Missing option: data-dir:directory
     <BLANKLINE>
     Starting pdb:
+

Modified: zc.buildout/branch/regebro-python3/src/zc/buildout/dependencylinks.txt
===================================================================
--- zc.buildout/branch/regebro-python3/src/zc/buildout/dependencylinks.txt	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/src/zc/buildout/dependencylinks.txt	2010-04-16 15:24:50 UTC (rev 110979)
@@ -54,7 +54,7 @@
 
 Now we can run the buildout.
 
-    >>> print system(buildout)
+    >>> print(system(buildout))
     GET 200 /
     GET 200 /demoneeded-1.2c1.zip
     Develop: '/sample-buildout/depdemo'
@@ -83,7 +83,7 @@
     ...     for egg in glob(join(sample_buildout, 'eggs', 'demoneeded*.egg')):
     ...         remove(sample_buildout, 'eggs', egg)
     >>> remove_demoneeded_egg()
-    >>> print system(buildout)
+    >>> print(system(buildout))
     Develop: '/sample-buildout/depdemo'
     Updating eggs.
     Couldn't find index page for 'demoneeded' (maybe misspelled?)
@@ -112,7 +112,7 @@
     ... eggs = depdemo
     ... ''' % link_server)
 
-    >>> print system(buildout)
+    >>> print(system(buildout))
     Develop: '/sample-buildout/depdemo'
     Installing eggs.
     Getting distribution for 'demoneeded'.
@@ -134,7 +134,7 @@
     ... '''  % link_server2)
 
     >>> remove_demoneeded_egg()
-    >>> print system(buildout) #doctest: +ELLIPSIS
+    >>> print(system(buildout)) #doctest: +ELLIPSIS
     GET 200 /...
     Develop: '/sample-buildout/depdemo'
     Updating eggs.
@@ -166,7 +166,7 @@
     ... ''' % link_server)
 
     >>> remove_demoneeded_egg()
-    >>> print system(buildout)
+    >>> print(system(buildout))
     Develop: '/sample-buildout/depdemo'
     Updating eggs.
     Getting distribution for 'demoneeded'.
@@ -191,10 +191,11 @@
     ... eggs = depdemo
     ... ''' % link_server)
     >>> remove_demoneeded_egg()
-    >>> print system(buildout) #doctest: +ELLIPSIS
+    >>> print(system(buildout)) #doctest: +ELLIPSIS
     GET 200 /...
     Develop: '/sample-buildout/depdemo'
     Updating eggs.
     Getting distribution for 'demoneeded'.
     Got demoneeded 1.2c1.
     <BLANKLINE>
+

Modified: zc.buildout/branch/regebro-python3/src/zc/buildout/download.txt
===================================================================
--- zc.buildout/branch/regebro-python3/src/zc/buildout/download.txt	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/src/zc/buildout/download.txt	2010-04-16 15:24:50 UTC (rev 110979)
@@ -28,7 +28,7 @@
 
 >>> from zc.buildout.download import Download
 >>> download = Download()
->>> print download.cache_dir
+>>> print(download.cache_dir)
 None
 
 Downloading a file is achieved by calling the utility with the URL as an
@@ -37,7 +37,7 @@
 meant to be cleaned up during the same buildout run:
 
 >>> path, is_temp = download(server_url+'foo.txt')
->>> print path
+>>> print(path)
 /.../buildout-...
 >>> cat(path)
 This is a foo text.
@@ -59,8 +59,8 @@
 When trying to access a file that doesn't exist, we'll get an exception:
 
 >>> try: download(server_url+'not-there') # doctest: +ELLIPSIS
-... except: print 'download error'
-... else: print 'woops'
+... except: print('download error')
+... else: print('woops')
 download error
 
 Downloading a local file doesn't produce a temporary file but simply returns
@@ -102,7 +102,7 @@
 >>> target_dir = tmpdir('download-target')
 >>> path, is_temp = download(server_url+'foo.txt',
 ...                          path=join(target_dir, 'downloaded.txt'))
->>> print path
+>>> print(path)
 /download-target/downloaded.txt
 >>> cat(path)
 This is a foo text.
@@ -136,7 +136,7 @@
 
 >>> cache = tmpdir('download-cache')
 >>> download = Download(cache=cache)
->>> print download.cache_dir
+>>> print(download.cache_dir)
 /download-cache/
 
 Simple usage
@@ -148,7 +148,7 @@
 
 >>> ls(cache)
 >>> path, is_temp = download(server_url+'foo.txt')
->>> print path
+>>> print(path)
 /download-cache/foo.txt
 >>> cat(path)
 This is a foo text.
@@ -160,7 +160,7 @@
 
 >>> write(server_data, 'foo.txt', 'The wrong text.')
 >>> path, is_temp = download(server_url+'foo.txt')
->>> print path
+>>> print(path)
 /download-cache/foo.txt
 >>> cat(path)
 This is a foo text.
@@ -179,7 +179,7 @@
 >>> mkdir(server_data, 'other')
 >>> write(server_data, 'other', 'foo.txt', 'The wrong text.')
 >>> path, is_temp = download(server_url+'other/foo.txt')
->>> print path
+>>> print(path)
 /download-cache/foo.txt
 >>> cat(path)
 This is a foo text.
@@ -194,7 +194,7 @@
 
 >>> path, is_temp = download(server_url+'foo.txt',
 ...                          path=join(target_dir, 'downloaded.txt'))
->>> print path
+>>> print(path)
 /download-target/downloaded.txt
 >>> cat(path)
 This is a foo text.
@@ -208,7 +208,7 @@
 
 >>> path, is_temp = download(server_url+'foo.txt',
 ...                          path=join(target_dir, 'downloaded.txt'))
->>> print path
+>>> print(path)
 /download-target/downloaded.txt
 >>> cat(path)
 This is a foo text.
@@ -274,7 +274,7 @@
 download cache. Let's use a namespace "test" instead:
 
 >>> download = Download(cache=cache, namespace='test')
->>> print download.cache_dir
+>>> print(download.cache_dir)
 /download-cache/test
 
 The namespace sub-directory hasn't been created yet:
@@ -285,7 +285,7 @@
 of the file inside it:
 
 >>> path, is_temp = download(server_url+'foo.txt')
->>> print path
+>>> print(path)
 /download-cache/test/foo.txt
 >>> ls(cache)
 d test
@@ -304,7 +304,7 @@
 >>> write(cache, 'foo.txt', 'The wrong text.')
 
 >>> path, is_temp = download(server_url+'foo.txt')
->>> print path
+>>> print(path)
 /download-cache/test/foo.txt
 >>> cat(path)
 This is a foo text.
@@ -325,7 +325,7 @@
 
 >>> download = Download(cache=cache, hash_name=True)
 >>> path, is_temp = download(server_url+'foo.txt')
->>> print path
+>>> print(path)
 /download-cache/09f5793fcdc1716727f72d49519c688d
 >>> cat(path)
 This is a foo text.
@@ -355,7 +355,7 @@
 cache under a different name:
 
 >>> path2, is_temp = download(server_url+'other/foo.txt')
->>> print path2
+>>> print(path2)
 /download-cache/537b6d73267f8f4447586989af8c470e
 >>> path == path2
 False
@@ -383,7 +383,7 @@
 cache is configured in the first place:
 
 >>> download = Download(cache=cache, fallback=True)
->>> print download.cache_dir
+>>> print(download.cache_dir)
 /download-cache/
 
 A downloaded file will be cached:
@@ -401,8 +401,8 @@
 
 >>> remove(server_data, 'foo.txt')
 >>> try: Download()(server_url+'foo.txt') # doctest: +ELLIPSIS
-... except: print 'download error'
-... else: print 'woops'
+... except: print('download error')
+... else: print('woops')
 download error
 >>> path, is_temp = download(server_url+'foo.txt')
 >>> cat(path)
@@ -419,7 +419,7 @@
 
 >>> offline_download = Download(cache=cache, offline=True, fallback=True)
 >>> path, is_temp = offline_download(server_url+'foo.txt')
->>> print path
+>>> print(path)
 /download-cache/foo.txt
 >>> cat(path)
 This is a foo text.
@@ -459,7 +459,7 @@
 option:
 
 >>> download = Download({'download-cache': cache}, namespace='cmmi')
->>> print download.cache_dir
+>>> print(download.cache_dir)
 /download-cache/cmmi
 
 If the ``download-cache`` option specifies a relative path, it is understood
@@ -467,18 +467,18 @@
 that is given:
 
 >>> download = Download({'download-cache': 'relative-cache'})
->>> print download.cache_dir
+>>> print(download.cache_dir)
 /sample-buildout/relative-cache/
 
 >>> download = Download({'directory': join(sample_buildout, 'root'),
 ...                      'download-cache': 'relative-cache'})
->>> print download.cache_dir
+>>> print(download.cache_dir)
 /sample-buildout/root/relative-cache/
 
 Keyword parameters take precedence over the corresponding options:
 
 >>> download = Download({'download-cache': cache}, cache=None)
->>> print download.cache_dir
+>>> print(download.cache_dir)
 None
 
 Whether to assume offline mode can be inferred from either the ``offline`` or
@@ -548,3 +548,4 @@
 Reset the global temporary directory:
 
 >>> tempfile.tempdir = old_tempdir
+

Modified: zc.buildout/branch/regebro-python3/src/zc/buildout/downloadcache.txt
===================================================================
--- zc.buildout/branch/regebro-python3/src/zc/buildout/downloadcache.txt	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/src/zc/buildout/downloadcache.txt	2010-04-16 15:24:50 UTC (rev 110979)
@@ -31,7 +31,7 @@
 We specified a link server that has some distributions available for
 download:
 
-    >>> print get(link_server),
+    >>> print(get(link_server), end=' ')
     <html><body>
     <a href="bigdemo-0.1-py2.4.egg">bigdemo-0.1-py2.4.egg</a><br>
     <a href="demo-0.1-py2.4.egg">demo-0.1-py2.4.egg</a><br>
@@ -58,7 +58,7 @@
 If we run the buildout, we'll see the eggs installed from the link
 server as usual:
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     GET 200 /
     GET 200 /demo-0.2-py2.4.egg
     GET 200 /demoneeded-1.2c1.zip
@@ -88,7 +88,7 @@
     ...     if f.startswith('demo'):
     ...         remove('eggs', f)
    
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     GET 200 /
     Updating eggs.
     Getting distribution for 'demo==0.2'.
@@ -131,7 +131,7 @@
     ... eggs = demo
     ... ''' % globals())
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Uninstalling eggs.
     Installing eggs.
     Getting distribution for 'demo'.
@@ -139,3 +139,4 @@
     Getting distribution for 'demoneeded'.
     Got demoneeded 1.2c1.
     Generated script '/sample-buildout/bin/demo'.
+

Modified: zc.buildout/branch/regebro-python3/src/zc/buildout/easy_install.py
===================================================================
--- zc.buildout/branch/regebro-python3/src/zc/buildout/easy_install.py	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/src/zc/buildout/easy_install.py	2010-04-16 15:24:50 UTC (rev 110979)
@@ -1175,7 +1175,7 @@
         self.err, self.ws = err, ws
 
     def __str__(self):
-        existing_dist, req = self.err
+        existing_dist, req = self.err.args
         result = ["There is a version conflict.",
                   "We already have: %s" % existing_dist,
                   ]

Modified: zc.buildout/branch/regebro-python3/src/zc/buildout/easy_install.txt
===================================================================
--- zc.buildout/branch/regebro-python3/src/zc/buildout/easy_install.txt	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/src/zc/buildout/easy_install.txt	2010-04-16 15:24:50 UTC (rev 110979)
@@ -99,7 +99,7 @@
 
 We have a link server that has a number of eggs:
 
-    >>> print get(link_server),
+    >>> print(get(link_server), end=" ")
     <html><body>
     <a href="bigdemo-0.1-py2.4.egg">bigdemo-0.1-py2.4.egg</a><br>
     <a href="demo-0.1-py2.4.egg">demo-0.1-py2.4.egg</a><br>
@@ -130,7 +130,7 @@
 The working set contains the distributions we retrieved.
 
     >>> for dist in ws:
-    ...     print dist
+    ...     print(dist)
     demo 0.2
     demoneeded 1.1
 
@@ -174,7 +174,7 @@
     >>> ws = zc.buildout.easy_install.install(
     ...     ['demo'], dest, links=[link_server], index=link_server+'index/')
     >>> for dist in ws:
-    ...     print dist
+    ...     print(dist)
     demo 0.4c1
     demoneeded 1.2c1
 
@@ -199,7 +199,7 @@
     ...     links=[link_server], index=link_server+'index/')
 
     >>> for dist in ws:
-    ...     print dist
+    ...     print(dist)
     demo 0.3
     other 1.0
     demoneeded 1.0
@@ -311,7 +311,7 @@
     ...
     IncompatibleVersionError: Bad version 0.2
 
-    >>> print handler
+    >>> print(handler)
     zc.buildout.easy_install DEBUG
       Installing 'demo >0.2'.
     zc.buildout.easy_install ERROR
@@ -326,7 +326,7 @@
     ...     ['demo'], dest, links=[link_server], index=link_server+'index/',
     ...     )
 
-    >>> print handler
+    >>> print(handler)
     zc.buildout.easy_install DEBUG
       Installing 'demo'.
     zc.buildout.easy_install DEBUG
@@ -700,20 +700,20 @@
 
     >>> write('ascript', '''
     ... "demo doc"
-    ... print sys.argv
-    ... print (__name__, __file__, __doc__)
+    ... print(sys.argv)
+    ... print((__name__, __file__, __doc__,))
     ... ''')
-    >>> print system(join(bin, 'py')+' ascript a b c'),
+    >>> print(system(join(bin, 'py')+' ascript a b c'), end=" ")
     ['ascript', 'a', 'b', 'c']
     ('__main__', 'ascript', 'demo doc')
 
 For Python 2.5 and higher, you can also use the -m option to run a
 module:
 
-    >>> print system(join(bin, 'py')+' -m pdb'),
+    >>> print(system(join(bin, 'py')+' -m pdb'), end=" ")
     usage: pdb.py scriptfile [arg] ...
 
-    >>> print system(join(bin, 'py')+' -m pdb what'),
+    >>> print(system(join(bin, 'py')+' -m pdb what'), end=" ")
     Error: what does not exist
 
 An additional argument can be passed to define which scripts to install
@@ -733,7 +733,7 @@
     >>> ls(bin)
     -  run
 
-    >>> print system(os.path.join(bin, 'run')),
+    >>> print(system(os.path.join(bin, 'run')), end=" ")
     3 1
 
 Including extra paths in scripts
@@ -863,7 +863,7 @@
 
 Of course, running the script works:
 
-    >>> print system(join(bo, 'bin', 'run')),
+    >>> print(system(join(bo, 'bin', 'run')), end=" ")
     3 1
 
 We specified an interpreter and its paths are adjusted too:
@@ -1025,7 +1025,7 @@
 Let's update our link server with a new version of extdemo:
 
     >>> update_extdemo()
-    >>> print get(link_server),
+    >>> print(get(link_server), end=" ")
     <html><body>
     <a href="bigdemo-0.1-py2.4.egg">bigdemo-0.1-py2.4.egg</a><br>
     <a href="demo-0.1-py2.4.egg">demo-0.1-py2.4.egg</a><br>

Modified: zc.buildout/branch/regebro-python3/src/zc/buildout/extends-cache.txt
===================================================================
--- zc.buildout/branch/regebro-python3/src/zc/buildout/extends-cache.txt	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/src/zc/buildout/extends-cache.txt	2010-04-16 15:24:50 UTC (rev 110979)
@@ -41,20 +41,20 @@
 When trying to run this buildout offline, we'll find that we cannot read all
 of the required configuration:
 
->>> print system(buildout + ' -o')
+>>> print(system(buildout + ' -o'))
 While:
   Initializing.
 Error: Couldn't download 'http://localhost/base.cfg' in offline mode.
 
 Trying the same online, we can:
 
->>> print system(buildout)
+>>> print(system(buildout))
 Unused options for buildout: 'foo'.
 
 As long as we haven't said anything about caching downloaded configuration,
 nothing gets cached. Offline mode will still cause the buildout to fail:
 
->>> print system(buildout + ' -o')
+>>> print(system(buildout + ' -o'))
 While:
   Initializing.
 Error: Couldn't download 'http://localhost/base.cfg' in offline mode.
@@ -73,7 +73,7 @@
 ... extends-cache = cache
 ... """ % server_url)
 
->>> print system(buildout)
+>>> print(system(buildout))
 Unused options for buildout: 'foo'.
 
 >>> cache = join(sample_buildout, 'cache')
@@ -88,7 +88,7 @@
 
 We can now run buildout offline as it will read base.cfg from the cache:
 
->>> print system(buildout + ' -o')
+>>> print(system(buildout + ' -o'))
 Unused options for buildout: 'foo'.
 
 The cache is being used purely as a fall-back in case we are offline or don't
@@ -104,18 +104,18 @@
 ... bar = baz
 ... """)
 
->>> print system(buildout + ' -o')
+>>> print(system(buildout + ' -o'))
 Unused options for buildout: 'foo'.
 
 In online mode, buildout will download and use the modified version:
 
->>> print system(buildout)
+>>> print(system(buildout))
 Unused options for buildout: 'bar'.
 
 Trying offline mode again, the new version will be used as it has been put in
 the cache now:
 
->>> print system(buildout + ' -o')
+>>> print(system(buildout + ' -o'))
 Unused options for buildout: 'bar'.
 
 Clean up:
@@ -203,7 +203,7 @@
 Buildout will now assemble its configuration from all of these 6 files,
 defaults first. The online resources end up in the respective extends caches:
 
->>> print system(buildout)
+>>> print(system(buildout))
 Unused options for buildout: 'foo'.
 
 >>> ls('user-cache')
@@ -249,7 +249,7 @@
 >>> remove('user-cache', os.listdir('user-cache')[0])
 >>> remove('cache', os.listdir('cache')[0])
 
->>> print system(buildout)
+>>> print(system(buildout))
 Unused options for buildout: 'foo'.
 
 >>> ls('user-cache')
@@ -272,7 +272,7 @@
 If we run buildout in offline mode now, it will fail because it cannot get at
 the remote configuration file needed by the user's defaults:
 
->>> print system(buildout + ' -o')
+>>> print(system(buildout + ' -o'))
 While:
   Initializing.
 Error: Couldn't download 'http://localhost/base_default.cfg' in offline mode.
@@ -285,7 +285,7 @@
 ... extends = fancy_default.cfg
 ... offline = true
 ... """)
->>> print system(buildout)
+>>> print(system(buildout))
 While:
   Initializing.
 Error: Couldn't download 'http://localhost/base_default.cfg' in offline mode.
@@ -299,7 +299,7 @@
 ... extends = %sbase_default.cfg
 ... offline = true
 ... """ % server_url)
->>> print system(buildout)
+>>> print(system(buildout))
 While:
   Initializing.
 Error: Couldn't download 'http://localhost/base.cfg' in offline mode.
@@ -313,7 +313,7 @@
 ... extends = fancy.cfg
 ... offline = true
 ... """)
->>> print system(buildout)
+>>> print(system(buildout))
 While:
   Initializing.
 Error: Couldn't download 'http://localhost/base.cfg' in offline mode.
@@ -327,7 +327,7 @@
 ... extends = %sbase.cfg
 ... offline = true
 ... """ % server_url)
->>> print system(buildout)
+>>> print(system(buildout))
 Unused options for buildout: 'foo'.
 
 The ``install-from-cache`` option is treated accordingly:
@@ -337,7 +337,7 @@
 ... extends = fancy_default.cfg
 ... install-from-cache = true
 ... """)
->>> print system(buildout)
+>>> print(system(buildout))
 While:
   Initializing.
 Error: Couldn't download 'http://localhost/base_default.cfg' in offline mode.
@@ -351,7 +351,7 @@
 ... extends = %sbase_default.cfg
 ... install-from-cache = true
 ... """ % server_url)
->>> print system(buildout)
+>>> print(system(buildout))
 While:
   Initializing.
 Error: Couldn't download 'http://localhost/base.cfg' in offline mode.
@@ -365,7 +365,7 @@
 ... extends = fancy.cfg
 ... install-from-cache = true
 ... """)
->>> print system(buildout)
+>>> print(system(buildout))
 While:
   Initializing.
 Error: Couldn't download 'http://localhost/base.cfg' in offline mode.
@@ -379,7 +379,7 @@
 ... extends = %sbase.cfg
 ... install-from-cache = true
 ... """ % server_url)
->>> print system(buildout)
+>>> print(system(buildout))
 While:
   Installing.
   Checking for upgrades.
@@ -397,3 +397,4 @@
 Reset the global temporary directory:
 
 >>> tempfile.tempdir = old_tempdir
+

Added: zc.buildout/branch/regebro-python3/src/zc/buildout/py2compat.py
===================================================================
--- zc.buildout/branch/regebro-python3/src/zc/buildout/py2compat.py	                        (rev 0)
+++ zc.buildout/branch/regebro-python3/src/zc/buildout/py2compat.py	2010-04-16 15:24:50 UTC (rev 110979)
@@ -0,0 +1,104 @@
+import sys
+
+def prn(arg1='', sep=' ', end='\n', file=sys.stdout, *args):
+    file.write(str(arg1))        
+    for ob in args:
+        file.write(sep)            
+        file.write(str(ob))
+    file.write(end)
+
+    
+class DictMixin:
+    # Mixin defining all dictionary methods for classes that already have
+    # a minimum dictionary interface including getitem, setitem, delitem,
+    # and keys. Without knowledge of the subclass constructor, the mixin
+    # does not define __init__() or copy().  In addition to the four base
+    # methods, progressively more efficiency comes with defining
+    # __contains__(), __iter__(), and iteritems().
+
+    # second level definitions support higher levels
+    def __iter__(self):
+        for k in self.keys():
+            yield k
+    def has_key(self, key):
+        try:
+            value = self[key]
+        except KeyError:
+            return False
+        return True
+    def __contains__(self, key):
+        return self.has_key(key)
+
+    # third level takes advantage of second level definitions
+    def iteritems(self):
+        for k in self:
+            yield (k, self[k])
+    def iterkeys(self):
+        return self.__iter__()
+
+    # fourth level uses definitions from lower levels
+    def itervalues(self):
+        for _, v in self.iteritems():
+            yield v
+    def values(self):
+        return [v for _, v in self.iteritems()]
+    def items(self):
+        return list(self.iteritems())
+    def clear(self):
+        for key in self.keys():
+            del self[key]
+    def setdefault(self, key, default=None):
+        try:
+            return self[key]
+        except KeyError:
+            self[key] = default
+        return default
+    def pop(self, key, *args):
+        if len(args) > 1:
+            raise TypeError("pop expected at most 2 arguments, got "\
+                              + repr(1 + len(args)))
+        try:
+            value = self[key]
+        except KeyError:
+            if args:
+                return args[0]
+            raise
+        del self[key]
+        return value
+    def popitem(self):
+        try:
+            k, v = self.iteritems().next()
+        except StopIteration:
+            raise KeyError('container is empty')
+        del self[k]
+        return (k, v)
+    def update(self, other=None, **kwargs):
+        # Make progressively weaker assumptions about "other"
+        if other is None:
+            pass
+        elif hasattr(other, 'iteritems'):  # iteritems saves memory and lookups
+            for k, v in other.iteritems():
+                self[k] = v
+        elif hasattr(other, 'keys'):
+            for k in other.keys():
+                self[k] = other[k]
+        else:
+            for k, v in other:
+                self[k] = v
+        if kwargs:
+            self.update(kwargs)
+    def get(self, key, default=None):
+        try:
+            return self[key]
+        except KeyError:
+            return default
+    def __repr__(self):
+        return repr(dict(self.iteritems()))
+    def __cmp__(self, other):
+        if other is None:
+            return 1
+        if isinstance(other, DictMixin):
+            other = dict(other.iteritems())
+        return cmp(dict(self.iteritems()), other)
+    def __len__(self):
+        return len(self.keys())

Modified: zc.buildout/branch/regebro-python3/src/zc/buildout/repeatable.txt
===================================================================
--- zc.buildout/branch/regebro-python3/src/zc/buildout/repeatable.txt	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/src/zc/buildout/repeatable.txt	2010-04-16 15:24:50 UTC (rev 110979)
@@ -24,7 +24,7 @@
     ... class Recipe:
     ...     def __init__(*a): pass
     ...     def install(self):
-    ...         print 'recipe v1'
+    ...         print('recipe v1')
     ...         return ()
     ...     update = install
     ... ''')
@@ -39,7 +39,7 @@
 
     >>> write('recipe', 'README', '')
 
-    >>> print system(buildout+' setup recipe bdist_egg'), # doctest: +ELLIPSIS
+    >>> print(system(buildout+' setup recipe bdist_egg'), end=' ') # doctest: +ELLIPSIS
     Running setup script 'recipe/setup.py'.
     ...
 
@@ -50,7 +50,7 @@
     ... class Recipe:
     ...     def __init__(*a): pass
     ...     def install(self):
-    ...         print 'recipe v2'
+    ...         print('recipe v2')
     ...         return ()
     ...     update = install
     ... ''')
@@ -64,7 +64,7 @@
     ... ''')
 
 
-    >>> print system(buildout+' setup recipe bdist_egg'), # doctest: +ELLIPSIS
+    >>> print(system(buildout+' setup recipe bdist_egg'), end=' ') # doctest: +ELLIPSIS
     Running setup script 'recipe/setup.py'.
     ...
 
@@ -82,7 +82,7 @@
 
 If we run the buildout, it will use version 2:
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Getting distribution for 'spam'.
     Got spam 2.
     Installing foo.
@@ -112,7 +112,7 @@
 
 Now, if we run the buildout, we'll use version 1 of the spam recipe:
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Getting distribution for 'spam==1'.
     Got spam 1.
     Uninstalling foo.
@@ -123,7 +123,7 @@
 about versions used. If we run the buildout in verbose mode without
 specifying a versions section:
 
-    >>> print system(buildout+' buildout:versions= -v'), # doctest: +ELLIPSIS
+    >>> print(system(buildout+' buildout:versions= -v'), end=' ') # doctest: +ELLIPSIS
     Installing 'zc.buildout', 'setuptools'.
     We have a develop egg: zc.buildout 1.0.0.
     We have the best distribution that satisfies 'setuptools'.
@@ -145,7 +145,7 @@
 
 If we run the buildout with the versions section:
 
-    >>> print system(buildout+' -v'), # doctest: +ELLIPSIS
+    >>> print(system(buildout+' -v'), end=' ') # doctest: +ELLIPSIS
     Installing 'zc.buildout', 'setuptools'.
     We have a develop egg: zc.buildout 1.0.0.
     We have the best distribution that satisfies 'setuptools'.
@@ -178,3 +178,4 @@
     ... [foo]
     ... recipe = spam
     ... ''' % join('recipe', 'dist'))
+

Modified: zc.buildout/branch/regebro-python3/src/zc/buildout/rmtree.py
===================================================================
--- zc.buildout/branch/regebro-python3/src/zc/buildout/rmtree.py	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/src/zc/buildout/rmtree.py	2010-04-16 15:24:50 UTC (rev 110979)
@@ -42,7 +42,7 @@
 
     and make it unwriteable
 
-    >>> os.chmod (foo, 0400)
+    >>> os.chmod (foo, 0o400)
 
     rmtree should be able to remove it:
 
@@ -64,3 +64,4 @@
 
 if "__main__" == __name__:
     doctest.testmod()
+

Modified: zc.buildout/branch/regebro-python3/src/zc/buildout/runsetup.txt
===================================================================
--- zc.buildout/branch/regebro-python3/src/zc/buildout/runsetup.txt	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/src/zc/buildout/runsetup.txt	2010-04-16 15:24:50 UTC (rev 110979)
@@ -17,7 +17,7 @@
 To illustrate this, we'll create a package in a sample buildout:
 
     >>> mkdir('hello')
-    >>> write('hello', 'hello.py', 'print "Hello World!"')
+    >>> write('hello', 'hello.py', 'print("Hello World!")')
     >>> write('hello', 'README', 'This is hello')
     >>> write('hello', 'setup.py',
     ... """
@@ -32,7 +32,7 @@
   
 We can use the buildout command to generate the hello egg:
 
-    >>> print system(buildout +' setup hello -q bdist_egg'),
+    >>> print(system(buildout +' setup hello -q bdist_egg'), end=' ')
     Running setup script 'hello/setup.py'.
     zip_safe flag not set; analyzing archive contents...
 
@@ -40,3 +40,4 @@
 
     >>> ls('hello', 'dist')
     -  hello-1.0-py2.4.egg
+

Modified: zc.buildout/branch/regebro-python3/src/zc/buildout/setup.txt
===================================================================
--- zc.buildout/branch/regebro-python3/src/zc/buildout/setup.txt	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/src/zc/buildout/setup.txt	2010-04-16 15:24:50 UTC (rev 110979)
@@ -28,14 +28,14 @@
 doesn't import setuptools.  Let's try running it to create an egg.
 We'll use the buildout script from our sample buildout:
 
-    >>> print system(buildout+' setup'),
+    >>> print(system(buildout+' setup'), end=" ")
     ... # doctest: +NORMALIZE_WHITESPACE
     Error: The setup command requires the path to a setup script or
     directory containing a setup script, and its arguments.
 
 Oops, we forgot to give the name of the setup script:
 
-    >>> print system(buildout+' setup setup.py bdist_egg'),
+    >>> print(system(buildout+' setup setup.py bdist_egg'), end=" ")
     ... # doctest: +ELLIPSIS
     Running setup script 'setup.py'.
     ...
@@ -46,6 +46,6 @@
 Note that we can specify a directory name.  This is often shorter and
 preferred by the lazy :)
 
-    >>> print system(buildout+' setup . bdist_egg'), # doctest: +ELLIPSIS
+    >>> print(system(buildout+' setup . bdist_egg'), end=" ") # doctest: +ELLIPSIS
     Running setup script './setup.py'.
     ...

Modified: zc.buildout/branch/regebro-python3/src/zc/buildout/testing.py
===================================================================
--- zc.buildout/branch/regebro-python3/src/zc/buildout/testing.py	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/src/zc/buildout/testing.py	2010-04-16 15:24:50 UTC (rev 110979)
@@ -148,7 +148,7 @@
         if os.path.exists(e):
             return e
     else:
-        cmd = 'python%s -c "import sys; print sys.executable"' % version
+        cmd = 'python%s -c "import sys; print(sys.executable)"' % version
         p = subprocess.Popen(cmd,
                              shell=True,
                              stdin=subprocess.PIPE,
@@ -161,7 +161,7 @@
         o.close()
         if os.path.exists(e):
             return e
-        cmd = 'python -c "import sys; print \'%s.%s\' % sys.version_info[:2]"'
+        cmd = 'python -c "import sys; print(\'%s.%s\' % sys.version_info[:2])"'
         p = subprocess.Popen(cmd,
                              shell=True,
                              stdin=subprocess.PIPE,
@@ -173,7 +173,7 @@
         e = o.read().strip()
         o.close()
         if e == version:
-            cmd = 'python -c "import sys; print sys.executable"'
+            cmd = 'python -c "import sys; print(sys.executable)"'
             p = subprocess.Popen(cmd,
                                 shell=True,
                                 stdin=subprocess.PIPE,

Modified: zc.buildout/branch/regebro-python3/src/zc/buildout/tests.py
===================================================================
--- zc.buildout/branch/regebro-python3/src/zc/buildout/tests.py	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/src/zc/buildout/tests.py	2010-04-16 15:24:50 UTC (rev 110979)
@@ -11,8 +11,7 @@
 # FOR A PARTICULAR PURPOSE.
 #
 ##############################################################################
-from zope.testing import doctest
-from zope.testing import renormalizing
+import doctest
 import os
 import pkg_resources
 import re
@@ -48,7 +47,7 @@
     ... parts =
     ... ''')
 
-    >>> print system(join('bin', 'buildout')),
+    >>> print(system(join('bin', 'buildout')), end=' ')
     Develop: '/sample-buildout/foo'
 
     >>> ls('develop-eggs')
@@ -75,7 +74,7 @@
     ... parts =
     ... ''')
 
-    >>> print system(join('bin', 'buildout')+' -vv'), # doctest: +ELLIPSIS
+    >>> print(system(join('bin', 'buildout')+' -vv'), end=' ') # doctest: +ELLIPSIS
     Installing...
     Develop: '/sample-buildout/foo'
     ...
@@ -86,7 +85,7 @@
     -  foo.egg-link
     -  zc.recipe.egg.egg-link
 
-    >>> print system(join('bin', 'buildout')+' -vvv'), # doctest: +ELLIPSIS
+    >>> print(system(join('bin', 'buildout')+' -vvv'), end=' ') # doctest: +ELLIPSIS
     Installing...
     Develop: '/sample-buildout/foo'
     in: '/sample-buildout/foo'
@@ -127,7 +126,7 @@
     ... z = ${buildout:x}
     ... ''')
 
-    >>> print system(os.path.join(sample_buildout, 'bin', 'buildout')),
+    >>> print(system(os.path.join(sample_buildout, 'bin', 'buildout')), end=' ')
     ... # doctest: +NORMALIZE_WHITESPACE +ELLIPSIS
     While:
       Initializing.
@@ -149,7 +148,7 @@
     ... x = ${bui$ldout:y}
     ... ''')
 
-    >>> print system(os.path.join(sample_buildout, 'bin', 'buildout')),
+    >>> print(system(os.path.join(sample_buildout, 'bin', 'buildout')), end=' ')
     While:
       Initializing.
       Getting section buildout.
@@ -166,7 +165,7 @@
     ... x = ${buildout:y{z}
     ... ''')
 
-    >>> print system(os.path.join(sample_buildout, 'bin', 'buildout')),
+    >>> print(system(os.path.join(sample_buildout, 'bin', 'buildout')), end=' ')
     While:
       Initializing.
       Getting section buildout.
@@ -185,7 +184,7 @@
     ... x = ${parts}
     ... ''')
 
-    >>> print system(os.path.join(sample_buildout, 'bin', 'buildout')),
+    >>> print(system(os.path.join(sample_buildout, 'bin', 'buildout')), end=' ')
     While:
       Initializing.
       Getting section buildout.
@@ -202,7 +201,7 @@
     ... x = ${buildout:y:z}
     ... ''')
 
-    >>> print system(os.path.join(sample_buildout, 'bin', 'buildout')),
+    >>> print(system(os.path.join(sample_buildout, 'bin', 'buildout')), end=' ')
     While:
       Initializing.
       Getting section buildout.
@@ -219,7 +218,7 @@
     ... parts = x
     ... ''')
 
-    >>> print system(os.path.join(sample_buildout, 'bin', 'buildout')),
+    >>> print(system(os.path.join(sample_buildout, 'bin', 'buildout')), end=' ')
     While:
       Installing.
       Getting section x.
@@ -237,7 +236,7 @@
     ... foo = 1
     ... ''')
 
-    >>> print system(os.path.join(sample_buildout, 'bin', 'buildout')),
+    >>> print(system(os.path.join(sample_buildout, 'bin', 'buildout')), end=' ')
     While:
       Installing.
     Error: Missing option: x:recipe
@@ -286,7 +285,7 @@
     ...        samplez
     ... ''' % globals())
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/sampley'
     Develop: '/sample-buildout/samplez'
     Installing eggs.
@@ -319,7 +318,7 @@
 
 If we use the verbose switch, we can see where requirements are coming from:
 
-    >>> print system(buildout+' -v'), # doctest: +ELLIPSIS
+    >>> print(system(buildout+' -v'), end=' ') # doctest: +ELLIPSIS
     Installing 'zc.buildout', 'setuptools'.
     We have a develop egg: zc.buildout 1.0.0
     We have the best distribution that satisfies 'setuptools'.
@@ -370,7 +369,7 @@
     ... eggs = samplea
     ... ''')
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/sampley'
     Develop: '/sample-buildout/samplea'
     Develop: '/sample-buildout/sampleb'
@@ -447,14 +446,14 @@
     >>> os.chdir(sample_buildout)
     >>> buildout = os.path.join(sample_buildout, 'bin', 'buildout')
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Installing debug.
 
 If we run the buildout again, we shoudn't get a message about
 uninstalling anything because the configuration hasn't changed.
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Updating debug.
 """
@@ -518,7 +517,7 @@
     >>> write('demo', 'demo.py',
     ... '''
     ... def main():
-    ...     print 'Python 2.5'
+    ...     print('Python 2.5')
     ... ''')
 
     >>> write('buildout.cfg',
@@ -528,7 +527,7 @@
     ... parts =
     ... ''')
 
-    >>> print system(join('bin', 'buildout')),
+    >>> print(system(join('bin', 'buildout')), end=' ')
     Develop: '/sample-buildout/demo'
 
     >>> import zc.buildout.easy_install
@@ -538,7 +537,7 @@
     ...      ['demo'], ws, sys.executable, 'bin'))
     True
 
-    >>> print system(join('bin', 'demo')),
+    >>> print(system(join('bin', 'demo')), end=' ')
     Python 2.5
 
 Now, finally, let's test _get_version:
@@ -557,7 +556,7 @@
     ... x = ${foo:bar}
     ... ''')
 
-    >>> print system(buildout + ' foo:bar=1 -vv'), # doctest: +ELLIPSIS
+    >>> print(system(buildout + ' foo:bar=1 -vv'), end=' ') # doctest: +ELLIPSIS
     Installing 'zc.buildout', 'setuptools'.
     ...
     [foo]
@@ -568,7 +567,7 @@
 
 def test_help():
     """
-    >>> print system(os.path.join(sample_buildout, 'bin', 'buildout')+' -h'),
+    >>> print(system(os.path.join(sample_buildout, 'bin', 'buildout')+' -h'), end=' ')
     ... # doctest: +ELLIPSIS
     Usage: buildout [options] [assignments] [command [command arguments]]
     <BLANKLINE>
@@ -577,8 +576,8 @@
       -h, --help
     ...
 
-    >>> print system(os.path.join(sample_buildout, 'bin', 'buildout')
-    ...              +' --help'),
+    >>> print(system(os.path.join(sample_buildout, 'bin', 'buildout')
+    ...              +' --help'), end=' ')
     ... # doctest: +ELLIPSIS
     Usage: buildout [options] [assignments] [command [command arguments]]
     <BLANKLINE>
@@ -604,8 +603,8 @@
     ... ''')
 
     >>> os.chdir(d)
-    >>> print system(os.path.join(sample_buildout, 'bin', 'buildout')
-    ...              + ' bootstrap'),
+    >>> print(system(os.path.join(sample_buildout, 'bin', 'buildout')
+    ...              + ' bootstrap'), end=' ')
     Creating directory '/sample-bootstrap/bin'.
     Creating directory '/sample-bootstrap/parts'.
     Creating directory '/sample-bootstrap/eggs'.
@@ -631,15 +630,15 @@
     ... ''')
 
     >>> os.chdir(d)
-    >>> print system(os.path.join(sample_buildout, 'bin', 'buildout')
-    ...              + ' bootstrap'),
+    >>> print(system(os.path.join(sample_buildout, 'bin', 'buildout')
+    ...              + ' bootstrap'), end=' ')
     Creating directory '/sample-bootstrap/bin'.
     Creating directory '/sample-bootstrap/parts'.
     Creating directory '/sample-bootstrap/eggs'.
     Creating directory '/sample-bootstrap/develop-eggs'.
     Generated script '/sample-bootstrap/bin/buildout'.
 
-    >>> print system(os.path.join('bin', 'buildout')),
+    >>> print(system(os.path.join('bin', 'buildout')), end=' ')
     Unused options for buildout: 'scripts' 'eggs'.
 
     """
@@ -663,7 +662,7 @@
     ... parts =
     ... """)
 
-    >>> print system(join('bin', 'buildout')),
+    >>> print(system(join('bin', 'buildout')), end=' ')
     Develop: '/sample-buildout/foo'
 
     >>> ls('develop-eggs')
@@ -685,7 +684,7 @@
     ... parts =
     ... """)
 
-    >>> print system(join('bin', 'buildout')),
+    >>> print(system(join('bin', 'buildout')), end=' ')
     Develop: '/sample-buildout/foo'
     Develop: '/sample-buildout/bar'
 
@@ -702,7 +701,7 @@
     ... develop = bar
     ... parts =
     ... """)
-    >>> print system(join('bin', 'buildout')),
+    >>> print(system(join('bin', 'buildout')), end=' ')
     Develop: '/sample-buildout/bar'
 
 It is gone
@@ -718,7 +717,7 @@
     ... [buildout]
     ... parts =
     ... """)
-    >>> print system(join('bin', 'buildout')),
+    >>> print(system(join('bin', 'buildout')), end=' ')
 
 All gone
 
@@ -763,7 +762,7 @@
     ... parts =
     ... """)
 
-    >>> print system(join('bin', 'buildout')),
+    >>> print(system(join('bin', 'buildout')), end=' ')
     Develop: '/sample-buildout/foo'
 
 Now, if we generate a working set using the egg link, we will get a warning
@@ -782,7 +781,7 @@
     ...     ])]
     ['foox', 'setuptools']
 
-    >>> print handler
+    >>> print(handler)
     zc.buildout.easy_install WARNING
       Develop distribution: foox 0.0.0
     uses namespace packages but the distribution does not require setuptools.
@@ -813,7 +812,7 @@
     ...     ])]
     ['foox', 'setuptools']
 
-    >>> print handler,
+    >>> print(handler, end=' ')
 
 We get the same behavior if the it is a depedency that uses a
 namespace package.
@@ -834,7 +833,7 @@
     ... parts =
     ... """)
 
-    >>> print system(join('bin', 'buildout')),
+    >>> print(system(join('bin', 'buildout')), end=' ')
     Develop: '/sample-buildout/foo'
     Develop: '/sample-buildout/bar'
 
@@ -846,7 +845,7 @@
     ...     ])]
     ['bar', 'foox', 'setuptools']
 
-    >>> print handler,
+    >>> print(handler, end=' ')
     zc.buildout.easy_install WARNING
       Develop distribution: foox 0.0.0
     uses namespace packages but the distribution does not require setuptools.
@@ -922,9 +921,9 @@
     ... class Install:
     ...     def __init__(*args): pass
     ...     def install(self):
-    ...         print 'installing'
+    ...         print('installing')
     ...         return ()
-    ... def uninstall(name, options): print 'uninstalling'
+    ... def uninstall(name, options): print('uninstalling')
     ... ''')
 
     >>> write('buildout.cfg', '''
@@ -935,7 +934,7 @@
     ... recipe = recipes:demo
     ... ''')
 
-    >>> print system(join('bin', 'buildout')),
+    >>> print(system(join('bin', 'buildout')), end=' ')
     Develop: '/sample-buildout/recipes'
     Installing demo.
     installing
@@ -950,7 +949,7 @@
     ... x = 1
     ... ''')
 
-    >>> print system(join('bin', 'buildout')),
+    >>> print(system(join('bin', 'buildout')), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling demo.
     Running uninstall recipe.
@@ -965,7 +964,7 @@
     ... parts =
     ... ''')
 
-    >>> print system(join('bin', 'buildout')),
+    >>> print(system(join('bin', 'buildout')), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling demo.
     Running uninstall recipe.
@@ -980,7 +979,7 @@
     >>> write('demo', 'demo.py',
     ... """
     ... def ext(buildout):
-    ...     print 'ext', list(buildout)
+    ...     print('ext' + " " + list(buildout))
     ... """)
 
     >>> write('demo', 'setup.py',
@@ -1005,7 +1004,7 @@
     ... offline = true
     ... """)
 
-    >>> print system(join(sample_buildout, 'bin', 'buildout')),
+    >>> print(system(join(sample_buildout, 'bin', 'buildout')), end=' ')
     ext ['buildout']
 
 
@@ -1043,20 +1042,20 @@
     ... ''')
 
 
-    >>> print system(join(sample_buildout, 'bin', 'buildout')),
+    >>> print(system(join(sample_buildout, 'bin', 'buildout')), end=' ')
     Develop: '/sample-buildout/recipe'
     Installing foo.
 
     >>> mkdir('recipe', '.svn')
     >>> mkdir('recipe', 'CVS')
-    >>> print system(join(sample_buildout, 'bin', 'buildout')),
+    >>> print(system(join(sample_buildout, 'bin', 'buildout')), end=' ')
     Develop: '/sample-buildout/recipe'
     Updating foo.
 
     >>> write('recipe', '.svn', 'x', '1')
     >>> write('recipe', 'CVS', 'x', '1')
 
-    >>> print system(join(sample_buildout, 'bin', 'buildout')),
+    >>> print(system(join(sample_buildout, 'bin', 'buildout')), end=' ')
     Develop: '/sample-buildout/recipe'
     Updating foo.
 
@@ -1095,7 +1094,7 @@
     ... ''')
 
 
-    >>> print system(join(sample_buildout, 'bin', 'buildout')),
+    >>> print(system(join(sample_buildout, 'bin', 'buildout')), end=' ')
     Develop: '/sample-buildout/recipe'
     Installing foo.
 
@@ -1112,7 +1111,7 @@
 
     >>> remove('recipe', 'some-file')
 
-    >>> print system(join(sample_buildout, 'bin', 'buildout')),
+    >>> print(system(join(sample_buildout, 'bin', 'buildout')), end=' ')
     Develop: '/sample-buildout/recipe'
     Updating foo.
 
@@ -1120,7 +1119,7 @@
 
 def o_option_sets_offline():
     """
-    >>> print system(join(sample_buildout, 'bin', 'buildout')+' -vvo'),
+    >>> print(system(join(sample_buildout, 'bin', 'buildout')+' -vvo'), end=' ')
     ... # doctest: +ELLIPSIS
     <BLANKLINE>
     ...
@@ -1141,7 +1140,7 @@
     ... class Recipe:
     ...     def __init__(*a): pass
     ...     def install(self):
-    ...         print 'recipe v1'
+    ...         print('recipe v1')
     ...         return ()
     ...     update = install
     ... ''')
@@ -1156,7 +1155,7 @@
 
     >>> write('recipe', 'README', '')
 
-    >>> print system(buildout+' setup recipe bdist_egg'), # doctest: +ELLIPSIS
+    >>> print(system(buildout+' setup recipe bdist_egg'), end=' ') # doctest: +ELLIPSIS
     Running setup script 'recipe/setup.py'.
     ...
 
@@ -1174,7 +1173,7 @@
     ... recipe = recipe
     ... ''' % join('recipe', 'dist'))
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Getting distribution for 'recipe'.
     Got recipe 1.
     Installing foo.
@@ -1187,7 +1186,7 @@
     ... class Recipe:
     ...     def __init__(*a): pass
     ...     def install(self):
-    ...         print 'recipe v2'
+    ...         print('recipe v2')
     ...         return ()
     ...     update = install
     ... ''')
@@ -1201,25 +1200,25 @@
     ... ''')
 
 
-    >>> print system(buildout+' setup recipe bdist_egg'), # doctest: +ELLIPSIS
+    >>> print(system(buildout+' setup recipe bdist_egg'), end=' ') # doctest: +ELLIPSIS
     Running setup script 'recipe/setup.py'.
     ...
 
 We won't get the update if we specify -N:
 
-    >>> print system(buildout+' -N'),
+    >>> print(system(buildout+' -N'), end=' ')
     Updating foo.
     recipe v1
 
 or if we use -o:
 
-    >>> print system(buildout+' -o'),
+    >>> print(system(buildout+' -o'), end=' ')
     Updating foo.
     recipe v1
 
 But we will if we use neither of these:
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Getting distribution for 'recipe'.
     Got recipe 2.
     Uninstalling foo.
@@ -1238,7 +1237,7 @@
     ... recipe = recipe ==1
     ... ''' % join('recipe', 'dist'))
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Uninstalling foo.
     Installing foo.
     recipe v1
@@ -1287,11 +1286,11 @@
     ... recipe = recipe
     ... ''')
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipe'
     Installing foo.
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipe'
     Updating foo.
 
@@ -1323,7 +1322,7 @@
     ...     ['demo==0.2'], dest,
     ...     links=[link_server], index=link_server+'index/')
 
-    >>> print handler # doctest: +ELLIPSIS
+    >>> print(handler) # doctest: +ELLIPSIS
     zc.buildout.easy_install DEBUG
       Installing 'demo==0.2'.
     zc.buildout.easy_install DEBUG
@@ -1369,7 +1368,7 @@
     ... recipe = recipes:mkdir
     ... ''')
 
-    >>> print system(buildout), # doctest: +ELLIPSIS
+    >>> print(system(buildout), end=' ') # doctest: +ELLIPSIS
     Develop: '/sample-buildout/recipes'
     While:
       Installing.
@@ -1421,7 +1420,7 @@
     ... z = 1
     ... """)
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/.'
     Unused options for buildout: 'a'.
     Installing foo.
@@ -1489,19 +1488,19 @@
     ... recipe = recipes:clean
     ... ''')
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Installing p1.
     Installing p2.
     Installing p3.
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Updating p1.
     Updating p2.
     Installing p3.
 
-    >>> print system(buildout+' buildout:parts='),
+    >>> print(system(buildout+' buildout:parts='), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling p2.
     Uninstalling p1.
@@ -1527,20 +1526,20 @@
     ... recipe = recipes:clean
     ... ''')
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Installing p1.
     Installing p2.
     Installing p3.
     Installing p4.
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Updating p1.
     Updating p2.
     Updating p3.
 
-    >>> print system(buildout+' buildout:parts='),
+    >>> print(system(buildout+' buildout:parts='), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling p2.
     Uninstalling p1.
@@ -1568,7 +1567,7 @@
     ... recipe = recipes:clean
     ... ''')
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Installing p1.
     Installing p2.
@@ -1595,7 +1594,7 @@
     ... x = 1
     ... ''')
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling p4.
     Updating p1.
@@ -1619,7 +1618,7 @@
     ... recipe = recipes:clean
     ... ''')
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling p1.
     Installing p1.
@@ -1652,7 +1651,7 @@
     ...     zip_safe=False)
     ... ''')
 
-    >>> print system(buildout+' setup badegg sdist'), # doctest: +ELLIPSIS
+    >>> print(system(buildout+' setup badegg sdist'), end=' ') # doctest: +ELLIPSIS
     Running setup script 'badegg/setup.py'.
     ...
 
@@ -1674,7 +1673,7 @@
     ... scripts = buildout=bo
     ... ''' % globals())
 
-    >>> print system(buildout);print 'X' # doctest: +ELLIPSIS
+    >>> print(system(buildout));print('X') # doctest: +ELLIPSIS
     Installing eggs.
     Getting distribution for 'badegg'.
     Got badegg 1.
@@ -1736,7 +1735,7 @@
     ... eggs = demo
     ... ''' % globals())
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Installing x.
     Getting distribution for 'demo'.
     Got demo 0.4c1.
@@ -1744,7 +1743,7 @@
     Got demoneeded 1.2c1.
     Generated script '/sample-buildout/bin/demo'.
 
-    >>> print system(join('bin', 'demo')),
+    >>> print(system(join('bin', 'demo')), end=' ')
     4 2
 
     >>> write('buildout.cfg',
@@ -1758,14 +1757,14 @@
     ... eggs = demo ==0.1
     ... ''' % globals())
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Uninstalling x.
     Installing x.
     Getting distribution for 'demo==0.1'.
     Got demo 0.1.
     Generated script '/sample-buildout/bin/demo'.
 
-    >>> print system(join('bin', 'demo')),
+    >>> print(system(join('bin', 'demo')), end=' ')
     1 2
     """
 
@@ -1777,8 +1776,8 @@
         ...     p = subprocess.Popen(s, stdin=subprocess.PIPE,
         ...                 stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
         ...     p.stdin.close()
-        ...     print p.stdout.read()
-        ...     print 'Exit:', bool(p.wait())
+        ...     print(p.stdout.read())
+        ...     print('Exit:', bool(p.wait()))
 
         >>> call(buildout)
         <BLANKLINE>
@@ -1849,11 +1848,11 @@
     ... import os
     ... class Bad:
     ...     def __init__(self, *_):
-    ...         print os.getcwd()
+    ...         print(os.getcwd())
     ...     def install(self):
-    ...         print os.getcwd()
+    ...         print(os.getcwd())
     ...         os.chdir('bad_start')
-    ...         print os.getcwd()
+    ...         print(os.getcwd())
     ...         return ()
     ... ''')
 
@@ -1876,8 +1875,8 @@
     ... ''')
 
     >>> os.chdir('bad_start')
-    >>> print system(join(sample_buildout, 'bin', 'buildout')
-    ...              +' -c '+join(sample_buildout, 'buildout.cfg')),
+    >>> print(system(join(sample_buildout, 'bin', 'buildout')
+    ...              +' -c '+join(sample_buildout, 'buildout.cfg')), end=' ')
     Develop: '/sample-buildout/.'
     /sample-buildout
     /sample-buildout
@@ -1906,7 +1905,7 @@
 
 
     >>> for dist in ws:
-    ...     print dist
+    ...     print(dist)
     demo 0.2
     demoneeded 1.1
 
@@ -1919,7 +1918,7 @@
 def bug_75607_buildout_should_not_run_if_it_creates_an_empty_buildout_cfg():
     """
     >>> remove('buildout.cfg')
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     While:
       Initializing.
     Error: Couldn't open /sample-buildout/buildout.cfg
@@ -1960,7 +1959,7 @@
     ... eggs = pack0
     ... ''')
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/pack0'
     Develop: '/sample-buildout/pack1'
     Develop: '/sample-buildout/pack2'
@@ -1976,7 +1975,7 @@
 
     However, if we run in verbose mode, we can see why packages were included:
 
-    >>> print system(buildout+' -v'), # doctest: +ELLIPSIS
+    >>> print(system(buildout+' -v'), end=' ') # doctest: +ELLIPSIS
     Installing 'zc.buildout', 'setuptools'.
     We have a develop egg: zc.buildout 1.0.0
     We have the best distribution that satisfies 'setuptools'.
@@ -2041,7 +2040,7 @@
     ...             },
     ...       )
     ... ''')
-    >>> print system(buildout+' setup '+src+' bdist_egg'),
+    >>> print(system(buildout+' setup '+src+' bdist_egg'), end=' ')
     ... # doctest: +ELLIPSIS
     Running setup ...
     creating 'dist/wackyextension-1-...
@@ -2065,7 +2064,7 @@
 When we run the buildout. it will load the extension from the dist
 directory and then use the wacky extension to load the demo package
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Getting distribution for 'wackyextension'.
     Got wackyextension 1.
     Installing demo.
@@ -2087,7 +2086,7 @@
     ... setup(name='foo')
     ... ''')
 
-    >>> print system(buildout+' setup test bdist_egg'), # doctest: +ELLIPSIS
+    >>> print(system(buildout+' setup test bdist_egg'), end=' ') # doctest: +ELLIPSIS
     Running setup script 'test/setup.py'.
     ...
 
@@ -2267,7 +2266,7 @@
     ... eggs = demo
     ... ''' % globals())
 
-    >>> print system(buildout+' -v'), # doctest: +ELLIPSIS
+    >>> print(system(buildout+' -v'), end=' ') # doctest: +ELLIPSIS
     Installing 'zc.buildout', 'setuptools'.
     ...
     Picked: demo = 0.4c1
@@ -2289,7 +2288,7 @@
     ... eggs = demo
     ... ''' % globals())
 
-    >>> print system(buildout+' -v'), # doctest: +ELLIPSIS
+    >>> print(system(buildout+' -v'), end=' ') # doctest: +ELLIPSIS
     Installing 'zc.buildout', 'setuptools'.
     ...
     Picked: demo = 0.4c1
@@ -2311,7 +2310,7 @@
     ... eggs = demo
     ... ''' % globals())
 
-    >>> print system(buildout+' -v'), # doctest: +ELLIPSIS
+    >>> print(system(buildout+' -v'), end=' ') # doctest: +ELLIPSIS
     Installing 'zc.buildout', 'setuptools'.
     ...
     Picked: demo = 0.3
@@ -2332,7 +2331,7 @@
     ... eggs = demo
     ... ''' % globals())
 
-    >>> print system(buildout+' -v'), # doctest: +ELLIPSIS
+    >>> print(system(buildout+' -v'), end=' ') # doctest: +ELLIPSIS
     While:
       Initializing.
     Error: Invalid value for prefer-final option: no
@@ -2362,7 +2361,7 @@
     ... parts =
     ... ''')
 
-    >>> print system(join('bin', 'buildout')),
+    >>> print(system(join('bin', 'buildout')), end=' ')
     Develop: '/sample-buildout/foo'
 
     >>> ls('develop-eggs')
@@ -2403,7 +2402,7 @@
     ... ''' % pkg_resources.working_set.find(
     ...    pkg_resources.Requirement.parse('setuptools')).version)
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Installing foo.
     Getting distribution for 'foo==1'.
     Got foo 1.
@@ -2431,11 +2430,11 @@
     >>> write('t.py',
     ... '''
     ... import eggrecipedemo, eggrecipedemoneeded
-    ... print eggrecipedemo.main.func_code.co_filename
-    ... print eggrecipedemoneeded.f.func_code.co_filename
+    ... print(eggrecipedemo.main.func_code.co_filename)
+    ... print(eggrecipedemoneeded.f.func_code.co_filename)
     ... ''')
 
-    >>> print system(join('bin', 'py')+ ' t.py'),
+    >>> print(system(join('bin', 'py')+ ' t.py'), end=' ')
     /sample-buildout/eggs/demo-0.4c1-py2.4.egg/eggrecipedemo.py
     /sample-buildout/eggs/demoneeded-1.2c1-py2.4.egg/eggrecipedemoneeded.py
 
@@ -2458,7 +2457,7 @@
     ... eggs-directory = ${buildout:directory}/develop-eggs
     ... parts =
     ... ''' % globals())
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
 
     """
 
@@ -2489,7 +2488,7 @@
 
     We can see that both eggs were found:
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/sampley'
     Develop: '/sample-buildout/samplez'
     Installing eggs.
@@ -2521,7 +2520,7 @@
     We should get one of the eggs, and a warning for the pattern that
     did not match anything.
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/samplea'
     Couldn't develop '/sample-buildout/grumble*' (not found)
     Installing eggs.
@@ -2576,7 +2575,7 @@
     ... <= p1
     ... ''')
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Installing p1.
       foo='1\n2 b'
       recipe='zc.buildout:debug'
@@ -2616,7 +2615,7 @@
     ... x = ${buildout:bar-option} ${buildout:foo-option}
     ... ''')
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Installing p.
       recipe='zc.buildout:debug'
       x='bar\nbaz foo\nham'
@@ -2643,7 +2642,7 @@
     ... <= p1
     ... ''')
 
-    >>> print system(buildout+' buildout:parts+=p2 p1:foo+=bar'),
+    >>> print(system(buildout+' buildout:parts+=p2 p1:foo+=bar'), end=' ')
     Installing p1.
       foo='1 a\nb\nbar'
       recipe='zc.buildout:debug'
@@ -2689,7 +2688,7 @@
                 tmp, 'eggrecipedemo.py',
                 'import eggrecipedemoneeded\n'
                 'x=%s\n'
-                'def main(): print x, eggrecipedemoneeded.y\n'
+                'def main(): print(x + " " + eggrecipedemoneeded.y)\n'
                 % i)
             c1 = i==4 and 'c1' or ''
             write(
@@ -2741,7 +2740,7 @@
 from distutils.core import setup, Extension
 
 if os.environ.get('test-variable'):
-    print "Have environment test-variable:", os.environ['test-variable']
+    print("Have environment test-variable:", os.environ['test-variable'])
 
 setup(name = "extdemo", version = "%s", url="http://www.zope.org",
       author="Demo", author_email="demo at demo.com",
@@ -2860,63 +2859,17 @@
             'buildout.txt', 'runsetup.txt', 'repeatable.txt', 'setup.txt',
             setUp=zc.buildout.testing.buildoutSetUp,
             tearDown=zc.buildout.testing.buildoutTearDown,
-            checker=renormalizing.RENormalizing([
-               zc.buildout.testing.normalize_path,
-               zc.buildout.testing.normalize_endings,
-               zc.buildout.testing.normalize_script,
-               zc.buildout.testing.normalize_egg_py,
-               (re.compile('__buildout_signature__ = recipes-\S+'),
-                '__buildout_signature__ = recipes-SSSSSSSSSSS'),
-               (re.compile('executable = [\S ]+python\S*', re.I),
-                'executable = python'),
-               (re.compile('[-d]  setuptools-\S+[.]egg'), 'setuptools.egg'),
-               (re.compile('zc.buildout(-\S+)?[.]egg(-link)?'),
-                'zc.buildout.egg'),
-               (re.compile('creating \S*setup.cfg'), 'creating setup.cfg'),
-               (re.compile('hello\%ssetup' % os.path.sep), 'hello/setup'),
-               (re.compile('Picked: (\S+) = \S+'),
-                'Picked: \\1 = V.V'),
-               (re.compile(r'We have a develop egg: zc.buildout (\S+)'),
-                'We have a develop egg: zc.buildout X.X.'),
-               (re.compile(r'\\[\\]?'), '/'),
-               (re.compile('WindowsError'), 'OSError'),
-               (re.compile(r'\[Error \d+\] Cannot create a file '
-                           r'when that file already exists: '),
-                '[Errno 17] File exists: '
-                ),
-               ])
             ),
         doctest.DocFileSuite(
             'debugging.txt',
             setUp=zc.buildout.testing.buildoutSetUp,
             tearDown=zc.buildout.testing.buildoutTearDown,
-            checker=renormalizing.RENormalizing([
-               zc.buildout.testing.normalize_path,
-               zc.buildout.testing.normalize_endings,
-               (re.compile(r'\S+buildout.py'), 'buildout.py'),
-               (re.compile(r'line \d+'), 'line NNN'),
-               (re.compile(r'py\(\d+\)'), 'py(NNN)'),
-               ])
             ),
 
         doctest.DocFileSuite(
             'update.txt',
             setUp=updateSetup,
             tearDown=zc.buildout.testing.buildoutTearDown,
-            checker=renormalizing.RENormalizing([
-               zc.buildout.testing.normalize_path,
-               zc.buildout.testing.normalize_endings,
-               zc.buildout.testing.normalize_script,
-               zc.buildout.testing.normalize_egg_py,
-               normalize_bang,
-               (re.compile('99[.]99'), 'NINETYNINE.NINETYNINE'),
-               (re.compile('(zc.buildout|setuptools)-\d+[.]\d+\S*'
-                           '-py\d.\d.egg'),
-                '\\1.egg'),
-               (re.compile('(zc.buildout|setuptools)( version)? \d+[.]\d+\S*'),
-                '\\1 V.V'),
-               (re.compile('[-d]  setuptools'), '-  setuptools'),
-               ])
             ),
 
         doctest.DocFileSuite(
@@ -2924,21 +2877,6 @@
             'allowhosts.txt', 'unzip.txt', 'upgrading_distribute.txt',
             setUp=easy_install_SetUp,
             tearDown=zc.buildout.testing.buildoutTearDown,
-            checker=renormalizing.RENormalizing([
-               zc.buildout.testing.normalize_path,
-               zc.buildout.testing.normalize_endings,
-               zc.buildout.testing.normalize_script,
-               zc.buildout.testing.normalize_egg_py,
-               normalize_bang,
-               (re.compile('extdemo[.]pyd'), 'extdemo.so'),
-               (re.compile('[-d]  setuptools-\S+[.]egg'), 'setuptools.egg'),
-               (re.compile(r'\\[\\]?'), '/'),
-               (re.compile(r'\#!\S+\bpython\S*'), '#!/usr/bin/python'),
-               ]+(sys.version_info < (2, 5) and [
-                  (re.compile('.*No module named runpy.*', re.S), ''),
-                  (re.compile('.*usage: pdb.py scriptfile .*', re.S), ''),
-                  (re.compile('.*Error: what does not exist.*', re.S), ''),
-                  ] or [])),
             ),
 
         doctest.DocFileSuite(
@@ -2946,74 +2884,13 @@
             setUp=easy_install_SetUp,
             tearDown=zc.buildout.testing.buildoutTearDown,
             optionflags=doctest.NORMALIZE_WHITESPACE | doctest.ELLIPSIS,
-            checker=renormalizing.RENormalizing([
-               (re.compile(' at -?0x[^>]+'), '<MEM ADDRESS>'),
-               (re.compile('http://localhost:[0-9]{4,5}/'),
-                'http://localhost/'),
-               (re.compile('[0-9a-f]{32}'), '<MD5 CHECKSUM>'),
-               zc.buildout.testing.normalize_path,
-               ]),
             ),
 
         doctest.DocTestSuite(
             setUp=easy_install_SetUp,
             tearDown=zc.buildout.testing.buildoutTearDown,
-            checker=renormalizing.RENormalizing([
-               zc.buildout.testing.normalize_path,
-               zc.buildout.testing.normalize_endings,
-               zc.buildout.testing.normalize_script,
-               zc.buildout.testing.normalize_egg_py,
-               (re.compile("buildout: Running \S*setup.py"),
-                'buildout: Running setup.py'),
-               (re.compile('setuptools-\S+-'),
-                'setuptools.egg'),
-               (re.compile('zc.buildout-\S+-'),
-                'zc.buildout.egg'),
-               (re.compile('File "\S+one.py"'),
-                'File "one.py"'),
-               (re.compile(r'We have a develop egg: (\S+) (\S+)'),
-                r'We have a develop egg: \1 V'),
-               (re.compile('Picked: setuptools = \S+'),
-                'Picked: setuptools = V'),
-               (re.compile(r'\\[\\]?'), '/'),
-               (re.compile(
-                   '-q develop -mxN -d "/sample-buildout/develop-eggs'),
-                   '-q develop -mxN -d /sample-buildout/develop-eggs'
-                ),
-               (re.compile(r'^[*]...'), '...'),
-               ]),
             ),
-        zc.buildout.testselectingpython.test_suite(),
-        zc.buildout.rmtree.test_suite(),
         doctest.DocFileSuite(
-            'windows.txt',
-            setUp=zc.buildout.testing.buildoutSetUp,
-            tearDown=zc.buildout.testing.buildoutTearDown,
-            checker=renormalizing.RENormalizing([
-               zc.buildout.testing.normalize_path,
-               zc.buildout.testing.normalize_endings,
-               zc.buildout.testing.normalize_script,
-               zc.buildout.testing.normalize_egg_py,
-               (re.compile('__buildout_signature__ = recipes-\S+'),
-                '__buildout_signature__ = recipes-SSSSSSSSSSS'),
-               (re.compile('[-d]  setuptools-\S+[.]egg'), 'setuptools.egg'),
-               (re.compile('zc.buildout(-\S+)?[.]egg(-link)?'),
-                'zc.buildout.egg'),
-               (re.compile('creating \S*setup.cfg'), 'creating setup.cfg'),
-               (re.compile('hello\%ssetup' % os.path.sep), 'hello/setup'),
-               (re.compile('Picked: (\S+) = \S+'),
-                'Picked: \\1 = V.V'),
-               (re.compile(r'We have a develop egg: zc.buildout (\S+)'),
-                'We have a develop egg: zc.buildout X.X.'),
-               (re.compile(r'\\[\\]?'), '/'),
-               (re.compile('WindowsError'), 'OSError'),
-               (re.compile(r'\[Error 17\] Cannot create a file '
-                           r'when that file already exists: '),
-                '[Errno 17] File exists: '
-                ),
-               ])
-            ),
-        doctest.DocFileSuite(
             'testing_bugfix.txt'),
     ]
 
@@ -3034,13 +2911,7 @@
             'bootstrap.txt',
             setUp=easy_install_SetUp,
             tearDown=zc.buildout.testing.buildoutTearDown,
-            checker=renormalizing.RENormalizing([
-               zc.buildout.testing.normalize_path,
-               zc.buildout.testing.normalize_endings,
-               zc.buildout.testing.normalize_script,
-               normalize_bang,
-               (re.compile('Downloading.*setuptools.*egg\n'), ''),
-               ]),
             ))
 
     return unittest.TestSuite(test_suite)
+

Modified: zc.buildout/branch/regebro-python3/src/zc/buildout/testselectingpython.py
===================================================================
--- zc.buildout/branch/regebro-python3/src/zc/buildout/testselectingpython.py	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/src/zc/buildout/testselectingpython.py	2010-04-16 15:24:50 UTC (rev 110979)
@@ -12,7 +12,7 @@
 #
 ##############################################################################
 import os, re, sys, unittest
-from zope.testing import doctest, renormalizing
+import doctest
 import zc.buildout.tests
 import zc.buildout.testing
 
@@ -61,8 +61,4 @@
     return doctest.DocTestSuite(
         setUp=setup,
         tearDown=zc.buildout.testing.buildoutTearDown,
-        checker=renormalizing.RENormalizing([
-            (re.compile('setuptools-\S+-py%s.egg' % other_version),
-             'setuptools-V-py%s.egg' % other_version),
-            ]),
         )

Modified: zc.buildout/branch/regebro-python3/src/zc/buildout/update.txt
===================================================================
--- zc.buildout/branch/regebro-python3/src/zc/buildout/update.txt	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/src/zc/buildout/update.txt	2010-04-16 15:24:50 UTC (rev 110979)
@@ -43,7 +43,7 @@
     ...     def install(self):
     ...         for project in 'zc.buildout', 'setuptools':
     ...             req = pkg_resources.Requirement.parse(project)
-    ...             print project, pkg_resources.working_set.find(req).version
+    ...             print(project + " " + pkg_resources.working_set.find(req).version)
     ...         return ()
     ...     update = install
     ... """)
@@ -63,7 +63,7 @@
 Now if we run the buildout, the buildout will upgrade itself to the
 new versions found in new releases:
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Getting distribution for 'zc.buildout'.
     Got zc.buildout 99.99.
     Getting distribution for 'setuptools'.
@@ -114,7 +114,7 @@
 
 Now we can see that we actually "upgrade" to an earlier version.
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Upgraded:
       zc.buildout version 1.0.0,
       setuptools version 0.6;
@@ -142,7 +142,7 @@
     ... recipe = showversions
     ... """ % dict(new_releases=new_releases))
 
-    >>> print system(buildout+' -o'),
+    >>> print(system(buildout+' -o'), end=' ')
     Develop: '/sample-buildout/showversions'
     Updating show-versions.
     zc.buildout 1.0.0
@@ -150,7 +150,7 @@
 
 Or in non-newest mode:
 
-    >>> print system(buildout+' -N'),
+    >>> print(system(buildout+' -N'), end=' ')
     Develop: '/sample-buildout/showversions'
     Updating show-versions.
     zc.buildout 1.0.0
@@ -170,7 +170,7 @@
     ... """ % dict(new_releases=new_releases))
 
     >>> cd(sample_buildout2)
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Creating directory '/sample_buildout2/bin'.
     Creating directory '/sample_buildout2/parts'.
     Creating directory '/sample_buildout2/eggs'.
@@ -182,3 +182,4 @@
     Not upgrading because not running a local buildout command.
 
     >>> ls('bin')
+

Modified: zc.buildout/branch/regebro-python3/src/zc/buildout/windows.txt
===================================================================
--- zc.buildout/branch/regebro-python3/src/zc/buildout/windows.txt	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/src/zc/buildout/windows.txt	2010-04-16 15:24:50 UTC (rev 110979)
@@ -21,7 +21,7 @@
     ...              name)
     ...
     ...     def install(self):
-    ...         print "can't remove read only files"
+    ...         print("can't remove read only files")
     ...         if not os.path.exists (self.location):
     ...             os.makedirs (self.location)
     ...
@@ -43,7 +43,7 @@
 
     >>> write('recipe', 'README', '')
 
-    >>> print system(buildout+' setup recipe bdist_egg'), # doctest: +ELLIPSIS
+    >>> print(system(buildout+' setup recipe bdist_egg'), end=' ') # doctest: +ELLIPSIS
     Running setup script 'recipe/setup.py'.
     ...
 
@@ -59,8 +59,9 @@
     ... recipe = spam
     ... ''' % join('recipe', 'dist'))
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Getting distribution for 'spam'.
     Got spam 1.
     Installing foo.
     can't remove read only files
+

Modified: zc.buildout/branch/regebro-python3/zc.recipe.egg_/setup.py
===================================================================
--- zc.buildout/branch/regebro-python3/zc.recipe.egg_/setup.py	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/zc.recipe.egg_/setup.py	2010-04-16 15:24:50 UTC (rev 110979)
@@ -68,7 +68,6 @@
     install_requires = [
         'zc.buildout >=1.2.0',
         'setuptools'],
-    tests_require = ['zope.testing'],
     test_suite = name+'.tests.test_suite',
     entry_points = {'zc.buildout': ['default = %s:Scripts' % name,
                                     'script = %s:Scripts' % name,

Modified: zc.buildout/branch/regebro-python3/zc.recipe.egg_/src/zc/recipe/egg/README.txt
===================================================================
--- zc.buildout/branch/regebro-python3/zc.recipe.egg_/src/zc/recipe/egg/README.txt	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/zc.recipe.egg_/src/zc/recipe/egg/README.txt	2010-04-16 15:24:50 UTC (rev 110979)
@@ -31,7 +31,7 @@
 
 We have a link server that has a number of distributions:
 
-    >>> print get(link_server),
+    >>> print(get(link_server), end=' ')
     <html><body>
     <a href="bigdemo-0.1-py2.3.egg">bigdemo-0.1-py2.3.egg</a><br>
     <a href="demo-0.1-py2.3.egg">demo-0.1-py2.3.egg</a><br>
@@ -67,7 +67,7 @@
 Let's run the buildout:
 
     >>> import os
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Installing demo.
     Getting distribution for 'demo<0.3'.
     Got demo 0.2.
@@ -111,7 +111,7 @@
     ... index = %(server)s/index
     ... """ % dict(server=link_server))
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Uninstalling demo.
     Installing demo.
     Generated script '/sample-buildout/bin/demo'.
@@ -191,7 +191,7 @@
 specification. We were able to do this because the scripts recipe is
 the default entry point for the zc.recipe.egg egg.
 
-   >>> print system(buildout),
+   >>> print(system(buildout), end=' ')
    Uninstalling demo.
    Installing demo.
    Generated script '/sample-buildout/bin/demo'.
@@ -208,7 +208,7 @@
 
 If we run the demo script, it prints out some minimal data:
 
-    >>> print system(join(sample_buildout, 'bin', 'demo')),
+    >>> print(system(join(sample_buildout, 'bin', 'demo')), end=' ')
     2 2
 
 The value it prints out happens to be some values defined in the
@@ -217,13 +217,13 @@
 We can also run the py-demo script.  Here we'll just print out
 the bits if the path added to reflect the eggs:
 
-    >>> print system(join(sample_buildout, 'bin', 'py-demo'),
+    >>> print(system(join(sample_buildout, 'bin', 'py-demo'),
     ... """import os, sys
     ... for p in sys.path:
     ...     if 'demo' in p:
-    ...         print os.path.basename(p)
-    ...
-    ... """).replace('>>> ', '').replace('... ', ''),
+    ...         print(os.path.basename(p))
+    ... 
+    ... """).replace('>>> ', '').replace('... ', ''), end=' ')
     ... # doctest: +ELLIPSIS +NORMALIZE_WHITESPACE
     demo-0.2-py2.4.egg
     demoneeded-1.2c1-py2.4.egg
@@ -249,7 +249,7 @@
 
 and run the buildout in non-newest mode:
 
-    >>> print system(buildout+' -N'),
+    >>> print(system(buildout+' -N'), end=' ')
     Uninstalling demo.
     Installing demo.
     Generated script '/sample-buildout/bin/demo'.
@@ -260,7 +260,7 @@
 
 We'll also run the buildout in off-line mode:
 
-    >>> print system(buildout+' -o'),
+    >>> print(system(buildout+' -o'), end=' ')
     Updating demo.
 
 We didn't get an update for demo:
@@ -274,7 +274,7 @@
 If we run the buildout on the default online and newest modes,
 we'll get an update for demo:
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Updating demo.
     Getting distribution for 'demo'.
     Got demo 0.4c1.
@@ -291,7 +291,7 @@
 
 The script is updated too:
 
-    >>> print system(join(sample_buildout, 'bin', 'demo')),
+    >>> print(system(join(sample_buildout, 'bin', 'demo')), end=' ')
     4 2
 
 Controlling script generation
@@ -314,7 +314,7 @@
     ... """ % dict(server=link_server))
 
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Uninstalling demo.
     Installing demo.
 
@@ -335,7 +335,7 @@
     ... scripts = demo=foo
     ... """ % dict(server=link_server))
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Uninstalling demo.
     Installing demo.
     Generated script '/sample-buildout/bin/foo'.
@@ -365,7 +365,7 @@
     ...    ${buildout:directory}/spam
     ... """ % dict(server=link_server))
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Uninstalling demo.
     Installing demo.
     Generated script '/sample-buildout/bin/foo'.
@@ -412,7 +412,7 @@
     ...    ${buildout:directory}/spam
     ... """ % dict(server=link_server))
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Uninstalling demo.
     Installing demo.
     Generated script '/sample-buildout/bin/foo'.
@@ -461,7 +461,7 @@
     ...    ${buildout:directory}/spam
     ... """ % dict(server=link_server))
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Uninstalling demo.
     Installing demo.
     Generated script '/sample-buildout/bin/foo'.
@@ -514,7 +514,7 @@
     ... arguments = a, 2
     ... """ % dict(server=link_server))
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Uninstalling demo.
     Installing demo.
     Generated script '/sample-buildout/bin/foo'.
@@ -564,7 +564,7 @@
     ... entry-points = alt=eggrecipedemo:alt other=foo.bar:a.b.c
     ... """ % dict(server=link_server))
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Uninstalling demo.
     Installing demo.
     Generated script '/sample-buildout/bin/demo'.
@@ -611,7 +611,7 @@
     ... index = %(server)s/index
     ... dependent-scripts = true
     ... """ % dict(server=link_server))
-    >>> print system(buildout+' -N'),
+    >>> print(system(buildout+' -N'), end=' ')
     Uninstalling demo.
     Installing bigdemo.
     Getting distribution for 'bigdemo'.
@@ -636,7 +636,8 @@
     ... scripts = demo=foo
     ... """ % dict(server=link_server))
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Uninstalling bigdemo.
     Installing demo.
     Generated script '/sample-buildout/bin/foo'.
+

Modified: zc.buildout/branch/regebro-python3/zc.recipe.egg_/src/zc/recipe/egg/api.txt
===================================================================
--- zc.buildout/branch/regebro-python3/zc.recipe.egg_/src/zc/recipe/egg/api.txt	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/zc.recipe.egg_/src/zc/recipe/egg/api.txt	2010-04-16 15:24:50 UTC (rev 110979)
@@ -30,14 +30,14 @@
     ...     def install(self):
     ...         extras = self.options['extras'].split()
     ...         requirements, ws = self.egg.working_set(extras)
-    ...         print 'Part:', self.name
-    ...         print 'Egg requirements:'
+    ...         print('Part:', self.name)
+    ...         print('Egg requirements:')
     ...         for r in requirements:
-    ...             print r
-    ...         print 'Working set:'
+    ...             print(r)
+    ...         print('Working set:')
     ...         for d in ws:
-    ...             print d
-    ...         print 'extra paths:', self.egg.extra_paths
+    ...             print(d)
+    ...         print('extra paths: ' + self.egg.extra_paths)
     ...         return ()
     ...
     ...     update = install
@@ -81,7 +81,7 @@
     >>> import os
     >>> os.chdir(sample_buildout)
     >>> buildout = os.path.join(sample_buildout, 'bin', 'buildout')
-    >>> print system(buildout + ' -q'),
+    >>> print(system(buildout + ' -q'), end=' ')
     Part: sample-part
     Egg requirements:
     demo<0.3
@@ -141,7 +141,7 @@
 Then we'll see that reflected in the extra_paths attribute in the egg
 recipe instance:
 
-    >>> print system(buildout + ' -q'),
+    >>> print(system(buildout + ' -q'), end=' ')
     Part: sample-part
     Egg requirements:
     demo<0.3
@@ -151,3 +151,4 @@
     demoneeded 1.2c1
     extra paths: ['/foo/bar', '/spam/eggs']
 
+

Modified: zc.buildout/branch/regebro-python3/zc.recipe.egg_/src/zc/recipe/egg/custom.txt
===================================================================
--- zc.buildout/branch/regebro-python3/zc.recipe.egg_/src/zc/recipe/egg/custom.txt	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/zc.recipe.egg_/src/zc/recipe/egg/custom.txt	2010-04-16 15:24:50 UTC (rev 110979)
@@ -137,7 +137,7 @@
     ...
     ... """ % dict(server=link_server))
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Installing extdemo.
     zip_safe flag not set; analyzing archive contents...
 
@@ -164,7 +164,7 @@
     ... """
     ... import extdemo
     ... def main():
-    ...     print extdemo.val
+    ...     print(extdemo.val)
     ... """)
 
     >>> write('demo', 'setup.py',
@@ -193,7 +193,7 @@
     ... entry-points = demo=demo:main
     ... """ % dict(server=link_server))
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/demo'
     Updating extdemo.
     Installing demo.
@@ -201,7 +201,7 @@
 
 When we run the script, we'll 42 printed:
 
-    >>> print system(join('bin', 'demo')),
+    >>> print(system(join('bin', 'demo')), end=' ')
     42
 
 Updating
@@ -216,12 +216,12 @@
 
 If we run the buildout in non-newest or offline modes:
 
-    >>> print system(buildout+' -N'),
+    >>> print(system(buildout+' -N'), end=' ')
     Develop: '/sample-buildout/demo'
     Updating extdemo.
     Updating demo.
 
-    >>> print system(buildout+' -o'),
+    >>> print(system(buildout+' -o'), end=' ')
     Develop: '/sample-buildout/demo'
     Updating extdemo.
     Updating demo.
@@ -237,7 +237,7 @@
 will. This time we also get the test-variable message again, because the new
 version is imported:
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/demo'
     Updating extdemo.
     zip_safe flag not set; analyzing archive contents...
@@ -275,7 +275,7 @@
     ... entry-points = demo=demo:main
     ... """ % dict(server=link_server))
 
-    >>> print system(buildout+' -D'),
+    >>> print(system(buildout+' -D'), end=' ')
     Develop: '/sample-buildout/demo'
     Uninstalling demo.
     Uninstalling extdemo.
@@ -351,7 +351,7 @@
     ... recipe = recipes:environ
     ...
     ... """ % dict(server=link_server))
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling demo.
     Uninstalling extdemo.
@@ -371,7 +371,7 @@
 
     >>> import os
     >>> os.environ['test-variable'] = 'bar'
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Updating extdemo.
     Updating checkenv.
@@ -405,7 +405,7 @@
     ... recipe = recipes:environ
     ...
     ... """ % dict(server=link_server))
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling extdemo.
     Installing extdemo.
@@ -434,7 +434,7 @@
     ... include-dirs = include
     ...
     ... """ % dict(server=link_server))
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/recipes'
     Uninstalling checkenv.
     Uninstalling extdemo.
@@ -541,7 +541,7 @@
 TWO to be defined.  This will cause the module-variable, 'val', to be
 set with a value of 2.
 
-    >>> print system(buildout),
+    >>> print(system(buildout), end=' ')
     Develop: '/sample-buildout/demo'
     Uninstalling extdemo.
     Installing extdemo.
@@ -570,5 +570,6 @@
 Because develop eggs take precedence over non-develop eggs, the demo
 script will use the new develop egg:
 
-    >>> print system(join('bin', 'demo')),
+    >>> print(system(join('bin', 'demo')), end=' ')
     2
+

Modified: zc.buildout/branch/regebro-python3/zc.recipe.egg_/src/zc/recipe/egg/selecting-python.txt
===================================================================
--- zc.buildout/branch/regebro-python3/zc.recipe.egg_/src/zc/recipe/egg/selecting-python.txt	2010-04-16 15:08:53 UTC (rev 110978)
+++ zc.buildout/branch/regebro-python3/zc.recipe.egg_/src/zc/recipe/egg/selecting-python.txt	2010-04-16 15:24:50 UTC (rev 110979)
@@ -9,7 +9,7 @@
 
 We have a link server:
 
-    >>> print get(link_server),
+    >>> print(get(link_server), end=' ')
     <html><body>
     <a href="bigdemo-0.1-py2.4.egg">bigdemo-0.1-py2.4.egg</a><br>
     <a href="demo-0.1-py2.4.egg">demo-0.1-py2.4.egg</a><br>
@@ -50,7 +50,7 @@
    >>> import os
    >>> os.chdir(sample_buildout)
    >>> buildout = os.path.join(sample_buildout, 'bin', 'buildout')
-   >>> print system(buildout),
+   >>> print(system(buildout), end=' ')
    Installing demo.
    Getting distribution for 'demo<0.3'.
    Got demo 0.2.
@@ -80,7 +80,7 @@
     ...     shebang = '#!'+shebang[3:-1]
     >>> shebang == '#!' + other_executable
     True
-    >>> print f.read(), # doctest: +NORMALIZE_WHITESPACE
+    >>> print(f.read(), end=' ') # doctest: +NORMALIZE_WHITESPACE
     <BLANKLINE>
     import sys
     sys.path[0:0] = [
@@ -103,7 +103,7 @@
     ...     shebang = '#!'+shebang[3:-1]
     >>> shebang == '#!' + other_executable
     True
-    >>> print f.read(), # doctest: +NORMALIZE_WHITESPACE
+    >>> print(f.read(), end=' ') # doctest: +NORMALIZE_WHITESPACE
     <BLANKLINE>
     import sys
     <BLANKLINE>
@@ -138,3 +138,4 @@
         __import__("code").interact(banner="", local=globals())
 
     >>> f.close()
+



More information about the checkins mailing list