5 new commits in tox:

https://bitbucket.org/hpk42/tox/commits/f9f760fb37a9/
Changeset:   f9f760fb37a9
User:        mordred
Date:        2013-07-16 17:21:11
Summary:     Expand --develop help text to be more correct

The --develop option actually triggers pip install -e . instead of
calling setup.py develop directly. Be clear about that.
Affected #:  1 file

diff -r 8c7e68bd1c8e5e29101ea9dc54c0525476295a0c -r 
f9f760fb37a95f36f934cb010a5a8cacb65f1657 tox/_config.py
--- a/tox/_config.py
+++ b/tox/_config.py
@@ -91,7 +91,8 @@
     parser.add_argument("--sdistonly", action="store_true", dest="sdistonly",
         help="only perform the sdist packaging activity.")
     parser.add_argument("--develop", action="store_true", dest="develop",
-        help="install package in the venv using setup.py develop")
+        help="install package in the venv using setup.py develop using "
+             "'pip -e .'")
     parser.add_argument("--installpkg", action="store", default=None,
         help="use specified package for installation into venv")
     parser.add_argument('-i', action="append",


https://bitbucket.org/hpk42/tox/commits/139084074f08/
Changeset:   139084074f08
User:        mordred
Date:        2013-07-16 17:25:24
Summary:     Don't run --no-deps on intial install

Copy the logic from installpkg more completely.
Affected #:  1 file

diff -r f9f760fb37a95f36f934cb010a5a8cacb65f1657 -r 
139084074f081f014758e4549209f8ac5c8a82a6 tox/_venv.py
--- a/tox/_venv.py
+++ b/tox/_venv.py
@@ -216,10 +216,15 @@
 
     def developpkg(self, setupdir, action):
         assert action is not None
-        self.finish()
+        if getattr(self, 'just_created', False):
+            action.setactivity("inst", sdistpath)
+            self.finish()
+            extraopts = []
+        else:
+            action.setactivity("inst-nodeps", sdistpath)
+            extraopts = ['--no-deps']
         if not self._needs_reinstall(setupdir, action):
             return
-        extraopts = ['--no-deps']
         self._install(['-e', setupdir], extraopts=extraopts, action=action)
 
     def installpkg(self, sdistpath, action):


https://bitbucket.org/hpk42/tox/commits/1a80bac8f67d/
Changeset:   1a80bac8f67d
User:        mordred
Date:        2013-07-16 17:39:42
Summary:     Report better on what we're doing

develop mode should emit actions telling us what it's doing.
Affected #:  2 files

diff -r 139084074f081f014758e4549209f8ac5c8a82a6 -r 
1a80bac8f67d32948751b20ee66f98ff03ec29ed tests/test_z_cmdline.py
--- a/tests/test_z_cmdline.py
+++ b/tests/test_z_cmdline.py
@@ -362,7 +362,16 @@
 def test_develop(initproj, cmd):
     initproj("example123", filedefs={'tox.ini': """
     """})
-    result = cmd.run("tox", "-v", "--develop")
+    result = cmd.run("tox", "-vv", "--develop")
+    assert not result.ret
+    assert "sdist-make" not in result.stdout.str()
+
+def test_usedevelop(initproj, cmd):
+    initproj("example123", filedefs={'tox.ini': """
+            [tox]
+            usedevelop=True
+    """})
+    result = cmd.run("tox", "-vv")
     assert not result.ret
     assert "sdist-make" not in result.stdout.str()
 

diff -r 139084074f081f014758e4549209f8ac5c8a82a6 -r 
1a80bac8f67d32948751b20ee66f98ff03ec29ed tox/_venv.py
--- a/tox/_venv.py
+++ b/tox/_venv.py
@@ -217,14 +217,15 @@
     def developpkg(self, setupdir, action):
         assert action is not None
         if getattr(self, 'just_created', False):
-            action.setactivity("inst", sdistpath)
+            action.setactivity("develop-inst", setupdir)
             self.finish()
             extraopts = []
         else:
-            action.setactivity("inst-nodeps", sdistpath)
+            if not self._needs_reinstall(setupdir, action):
+                action.setactivity("develop-inst-noop", setupdir)
+                return
+            action.setactivity("develop-inst-nodeps", setupdir)
             extraopts = ['--no-deps']
-        if not self._needs_reinstall(setupdir, action):
-            return
         self._install(['-e', setupdir], extraopts=extraopts, action=action)
 
     def installpkg(self, sdistpath, action):


https://bitbucket.org/hpk42/tox/commits/44e60897da2b/
Changeset:   44e60897da2b
User:        mordred
Date:        2013-07-16 17:57:41
Summary:     Add develop to the configs that trigger recreate
Affected #:  4 files

diff -r 1a80bac8f67d32948751b20ee66f98ff03ec29ed -r 
44e60897da2beb01adb940ef972bc58d7c076e03 tests/test_config.py
--- a/tests/test_config.py
+++ b/tests/test_config.py
@@ -370,6 +370,7 @@
         assert envconfig.changedir == config.setupdir
         assert envconfig.distribute == False
         assert envconfig.sitepackages == False
+        assert envconfig.develop == False
         assert envconfig.envlogdir == envconfig.envdir.join("log")
         assert envconfig.setenv is None
 

diff -r 1a80bac8f67d32948751b20ee66f98ff03ec29ed -r 
44e60897da2beb01adb940ef972bc58d7c076e03 tests/test_venv.py
--- a/tests/test_venv.py
+++ b/tests/test_venv.py
@@ -473,6 +473,18 @@
         venv.update()
         mocksession.report.expect("verbosity0", "*recreate*")
 
+    def test_develop_recreation(self, newconfig, mocksession):
+        config = newconfig([], "")
+        envconfig = config.envconfigs['python']
+        venv = VirtualEnv(envconfig, session=mocksession)
+        venv.update()
+        cconfig = venv._getliveconfig()
+        cconfig.develop = True
+        cconfig.writeconfig(venv.path_config)
+        mocksession._clearmocks()
+        venv.update()
+        mocksession.report.expect("verbosity0", "*recreate*")
+
 class TestVenvTest:
 
     def test_patchPATH(self, newmocksession, monkeypatch):

diff -r 1a80bac8f67d32948751b20ee66f98ff03ec29ed -r 
44e60897da2beb01adb940ef972bc58d7c076e03 tox/_config.py
--- a/tox/_config.py
+++ b/tox/_config.py
@@ -262,6 +262,7 @@
         vc.config = config
         reader = IniReader(self._cfg, fallbacksections=["testenv"])
         reader.addsubstitions(**subs)
+        vc.develop = config.usedevelop or config.option.develop
         vc.envdir = reader.getpath(section, "envdir", "{toxworkdir}/%s" % name)
         vc.args_are_paths = reader.getbool(section, "args_are_paths", True)
         if reader.getdefault(section, "python", None):

diff -r 1a80bac8f67d32948751b20ee66f98ff03ec29ed -r 
44e60897da2beb01adb940ef972bc58d7c076e03 tox/_venv.py
--- a/tox/_venv.py
+++ b/tox/_venv.py
@@ -5,18 +5,20 @@
 from tox._config import DepConfig
 
 class CreationConfig:
-    def __init__(self, md5, python, version, distribute, sitepackages, deps):
+    def __init__(self, md5, python, version, distribute, sitepackages,
+                 develop, deps):
         self.md5 = md5
         self.python = python
         self.version = version
         self.distribute = distribute
         self.sitepackages = sitepackages
+        self.develop = develop
         self.deps = deps
 
     def writeconfig(self, path):
         lines = ["%s %s" % (self.md5, self.python)]
-        lines.append("%s %d %d" % (self.version, self.distribute,
-                        self.sitepackages))
+        lines.append("%s %d %d %d" % (self.version, self.distribute,
+                        self.sitepackages, self.develop))
         for dep in self.deps:
             lines.append("%s %s" % dep)
         path.ensure()
@@ -28,15 +30,17 @@
             lines = path.readlines(cr=0)
             value = lines.pop(0).split(None, 1)
             md5, python = value
-            version, distribute, sitepackages = lines.pop(0).split(None, 2)
+            version, distribute, sitepackages, develop = lines.pop(0).split(
+                None, 3)
             distribute = bool(int(distribute))
             sitepackages = bool(int(sitepackages))
+            develop = bool(int(develop))
             deps = []
             for line in lines:
                 md5, depstring = line.split(None, 1)
                 deps.append((md5, depstring))
             return CreationConfig(md5, python, version,
-                        distribute, sitepackages, deps)
+                        distribute, sitepackages, develop, deps)
         except KeyboardInterrupt:
             raise
         except:
@@ -48,6 +52,7 @@
            and self.version == other.version
            and self.distribute == other.distribute
            and self.sitepackages == other.sitepackages
+           and self.develop == other.develop
            and self.deps == other.deps)
 
 class VirtualEnv(object):
@@ -144,13 +149,14 @@
         version = tox.__version__
         distribute = self.envconfig.distribute
         sitepackages = self.envconfig.sitepackages
+        develop = self.envconfig.develop
         deps = []
         for dep in self._getresolvedeps():
             raw_dep = dep.name
             md5 = getdigest(raw_dep)
             deps.append((md5, raw_dep))
         return CreationConfig(md5, python, version,
-                        distribute, sitepackages, deps)
+                        distribute, sitepackages, develop, deps)
 
     def _getresolvedeps(self):
         l = []


https://bitbucket.org/hpk42/tox/commits/fb612de381a7/
Changeset:   fb612de381a7
User:        mordred
Date:        2013-07-16 18:00:05
Summary:     Use the python from the venv for setup.py --name
Affected #:  1 file

diff -r 44e60897da2beb01adb940ef972bc58d7c076e03 -r 
fb612de381a79f8d7bff9cf2e0bc8fab42237efd tox/_venv.py
--- a/tox/_venv.py
+++ b/tox/_venv.py
@@ -209,7 +209,7 @@
     def _needs_reinstall(self, setupdir, action):
         setup_py = setupdir.join('setup.py')
         setup_cfg = setupdir.join('setup.cfg')
-        args = [str(self.getconfigexecutable()), str(setup_py), '--name']
+        args = [self.envconfig.envpython, str(setup_py), '--name']
         output = action.popen(args, cwd=setupdir, redirect=False,
                               returnout=True)
         name = output.strip().decode('utf-8')

Repository URL: https://bitbucket.org/hpk42/tox/

--

This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.
_______________________________________________
pytest-commit mailing list
pytest-commit@python.org
http://mail.python.org/mailman/listinfo/pytest-commit

Reply via email to