Merge pull request #315 from nicoddemus/pylib-woes

Remove last references to obsolete py.code
This commit is contained in:
Bruno Oliveira
2018-07-25 09:07:19 -03:00
committed by GitHub
11 changed files with 42 additions and 39 deletions

View File

@@ -17,10 +17,9 @@ python:
- '3.5' - '3.5'
- '3.6' - '3.6'
env: env:
- TOXENV=py-pytest30 - TOXENV=py-pytest34
- TOXENV=py-pytest31 - TOXENV=py-pytest35
- TOXENV=py-pytest32 - TOXENV=py-pytest36
- TOXENV=py-pytest33
install: pip install tox setuptools_scm install: pip install tox setuptools_scm
script: tox script: tox

View File

@@ -1,22 +1,21 @@
environment: environment:
matrix: matrix:
# note: please use "tox --listenvs" to populate the build matrix - TOXENV: "py27-pytest36"
- TOXENV: "py27-pytest33" - TOXENV: "py34-pytest36"
- TOXENV: "py34-pytest33" - TOXENV: "py35-pytest36"
- TOXENV: "py35-pytest33" - TOXENV: "py36-pytest36"
- TOXENV: "py36-pytest33" - TOXENV: "py27-pytest36-pexpect"
- TOXENV: "py27-pytest33-pexpect" - TOXENV: "py36-pytest36-pexpect"
- TOXENV: "py36-pytest33-pexpect"
- TOXENV: "flakes" - TOXENV: "flakes"
- TOXENV: "readme" - TOXENV: "readme"
install: install:
- C:\Python35\python -m pip install -U tox setuptools_scm pip - C:\Python36\python -m pip install -U tox setuptools_scm pip
build: false # Not a C# project, build stuff at the test step instead. build: false # Not a C# project, build stuff at the test step instead.
test_script: test_script:
- C:\Python35\python -m tox - C:\Python36\python -m tox
# We don't deploy anything on tags with AppVeyor, we use Travis instead, so we # We don't deploy anything on tags with AppVeyor, we use Travis instead, so we
# might as well save resources # might as well save resources

3
changelog/305.bugfix.rst Normal file
View File

@@ -0,0 +1,3 @@
Remove last references to obsolete ``py.code``.
Remove some unnecessary references to ``py.builtin``.

View File

@@ -1,6 +1,6 @@
from setuptools import setup, find_packages from setuptools import setup, find_packages
install_requires = ['execnet>=1.1', 'pytest>=3.0.0', 'pytest-forked'] install_requires = ['execnet>=1.1', 'pytest>=3.4', 'pytest-forked']
setup( setup(

View File

@@ -6,7 +6,7 @@ from xdist.remote import serialize_report
import execnet import execnet
import marshal import marshal
queue = py.builtin._tryimport("queue", "Queue") from six.moves.queue import Queue
WAIT_TIMEOUT = 10.0 WAIT_TIMEOUT = 10.0
@@ -33,7 +33,7 @@ class WorkerSetup:
def __init__(self, request, testdir): def __init__(self, request, testdir):
self.request = request self.request = request
self.testdir = testdir self.testdir = testdir
self.events = queue.Queue() self.events = Queue()
def setup(self, ): def setup(self, ):
self.testdir.chdir() self.testdir.chdir()

View File

@@ -1,3 +1,4 @@
from __future__ import print_function
import py import py
import pytest import pytest
import textwrap import textwrap
@@ -170,7 +171,7 @@ class TestNodeManager:
p, = nodemanager.gwmanager.multi_exec( p, = nodemanager.gwmanager.multi_exec(
"import os ; channel.send(os.getcwd())").receive_each() "import os ; channel.send(os.getcwd())").receive_each()
p = py.path.local(p) p = py.path.local(p)
py.builtin.print_("remote curdir", p) print("remote curdir", p)
assert p == mysetup.dest.join(config.topdir.basename) assert p == mysetup.dest.join(config.topdir.basename)
assert p.join("dir1").check() assert p.join("dir1").check()
assert p.join("dir1", "file1").check() assert p.join("dir1", "file1").check()

11
tox.ini
View File

@@ -1,8 +1,8 @@
[tox] [tox]
# if you change the envlist, please update .travis.yml file as well # if you change the envlist, please update .travis.yml file as well
envlist= envlist=
py{27,34,35,36}-pytest{30,31,32,33} py{27,34,35,36}-pytest{34,35,36}
py{27,36}-pytest{30,31,32,33}-pexpect py{27,36}-pytest36-pexpect
py{27,36}-pytest{master,features} py{27,36}-pytest{master,features}
flakes flakes
readme readme
@@ -15,10 +15,9 @@ deps =
pycmd pycmd
# to avoid .eggs # to avoid .eggs
setuptools_scm setuptools_scm
pytest30: pytest~=3.0.5 pytest34: pytest~=3.4.0
pytest31: pytest~=3.1.0 pytest35: pytest~=3.5.0
pytest32: pytest~=3.2.0 pytest36: pytest~=3.6.0
pytest33: pytest~=3.3.0
pytestmaster: git+https://github.com/pytest-dev/pytest.git@master pytestmaster: git+https://github.com/pytest-dev/pytest.git@master
pytestfeatures: git+https://github.com/pytest-dev/pytest.git@features pytestfeatures: git+https://github.com/pytest-dev/pytest.git@features
pexpect: pexpect pexpect: pexpect

View File

@@ -10,7 +10,7 @@ from xdist.scheduler import (
) )
queue = py.builtin._tryimport('queue', 'Queue') from six.moves.queue import Empty, Queue
class Interrupted(KeyboardInterrupt): class Interrupted(KeyboardInterrupt):
@@ -41,7 +41,7 @@ class DSession(object):
self.shuttingdown = False self.shuttingdown = False
self.countfailures = 0 self.countfailures = 0
self.maxfail = config.getvalue("maxfail") self.maxfail = config.getvalue("maxfail")
self.queue = queue.Queue() self.queue = Queue()
self._session = None self._session = None
self._failed_collection_errors = {} self._failed_collection_errors = {}
self._active_nodes = set() self._active_nodes = set()
@@ -129,7 +129,7 @@ class DSession(object):
try: try:
eventcall = self.queue.get(timeout=2.0) eventcall = self.queue.get(timeout=2.0)
break break
except queue.Empty: except Empty:
continue continue
callname, kwargs = eventcall callname, kwargs = eventcall
assert callname, kwargs assert callname, kwargs

View File

@@ -6,7 +6,7 @@
processes) otherwise changes to source code can crash processes) otherwise changes to source code can crash
the controlling process which should best never happen. the controlling process which should best never happen.
""" """
from __future__ import print_function
import py import py
import pytest import pytest
import sys import sys
@@ -60,7 +60,7 @@ class RemoteControl(object):
def trace(self, *args): def trace(self, *args):
if self.config.option.debug: if self.config.option.debug:
msg = " ".join([str(x) for x in args]) msg = " ".join([str(x) for x in args])
py.builtin.print_("RemoteControl:", msg) print("RemoteControl:", msg)
def initgateway(self): def initgateway(self):
return execnet.makegateway("popen") return execnet.makegateway("popen")
@@ -248,7 +248,7 @@ class StatRecorder(object):
if oldstat.mtime != curstat.mtime or \ if oldstat.mtime != curstat.mtime or \
oldstat.size != curstat.size: oldstat.size != curstat.size:
changed = True changed = True
py.builtin.print_("# MODIFIED", path) print("# MODIFIED", path)
if removepycfiles and path.ext == ".py": if removepycfiles and path.ext == ".py":
pycfile = path + "c" pycfile = path + "c"
if pycfile.check(): if pycfile.check():

View File

@@ -1,4 +1,4 @@
import py from __future__ import print_function
from difflib import unified_diff from difflib import unified_diff
@@ -17,10 +17,10 @@ def report_collection_diff(from_collection, to_collection, from_id, to_id):
fromfile=from_id, fromfile=from_id,
tofile=to_id, tofile=to_id,
) )
error_message = py.builtin._totext( error_message = (
'Different tests were collected between {from_id} and {to_id}. ' u'Different tests were collected between {from_id} and {to_id}. '
'The difference is:\n' u'The difference is:\n'
'{diff}' u'{diff}'
).format(from_id=from_id, to_id=to_id, diff='\n'.join(diff)) ).format(from_id=from_id, to_id=to_id, diff='\n'.join(diff))
msg = "\n".join([x.rstrip() for x in error_message.split("\n")]) msg = "\n".join([x.rstrip() for x in error_message.split("\n")])
return msg return msg

View File

@@ -1,3 +1,4 @@
from __future__ import print_function
import fnmatch import fnmatch
import os import os
import re import re
@@ -6,6 +7,7 @@ import threading
import py import py
import pytest import pytest
import execnet import execnet
import xdist.remote import xdist.remote
from _pytest import runner # XXX load dynamically from _pytest import runner # XXX load dynamically
@@ -48,7 +50,7 @@ class NodeManager(object):
self.specs.append(spec) self.specs.append(spec)
self.roots = self._getrsyncdirs() self.roots = self._getrsyncdirs()
self.rsyncoptions = self._getrsyncoptions() self.rsyncoptions = self._getrsyncoptions()
self._rsynced_specs = py.builtin.set() self._rsynced_specs = set()
def rsync_roots(self, gateway): def rsync_roots(self, gateway):
"""Rsync the set of roots to the node's gateway cwd.""" """Rsync the set of roots to the node's gateway cwd."""
@@ -180,8 +182,7 @@ class HostRSync(execnet.RSync):
if self._verbose: if self._verbose:
path = os.path.basename(self._sourcedir) + "/" + modified_rel_path path = os.path.basename(self._sourcedir) + "/" + modified_rel_path
remotepath = gateway.spec.chdir remotepath = gateway.spec.chdir
py.builtin.print_('%s:%s <= %s' % print('%s:%s <= %s' % (gateway.spec, remotepath, path))
(gateway.spec, remotepath, path))
def make_reltoroot(roots, args): def make_reltoroot(roots, args):
@@ -333,8 +334,9 @@ class WorkerController(object):
# should not land in receiver-thread # should not land in receiver-thread
raise raise
except: # noqa except: # noqa
excinfo = py.code.ExceptionInfo() from _pytest._code import ExceptionInfo
py.builtin.print_("!" * 20, excinfo) excinfo = ExceptionInfo()
print("!" * 20, excinfo)
self.config.notify_exception(excinfo) self.config.notify_exception(excinfo)
self.shutdown() self.shutdown()
self.notify_inproc("errordown", node=self, error=excinfo) self.notify_inproc("errordown", node=self, error=excinfo)