[TIP] tox and pypy and numpypy
Albert-Jan Roskam
fomcl at yahoo.com
Fri Nov 21 11:49:41 PST 2014
----- Original Message -----
> From: Tres Seaver <tseaver at palladion.com>
> To: testing-in-python at lists.idyll.org
> Cc:
> Sent: Friday, November 21, 2014 5:54 PM
> Subject: Re: [TIP] tox and pypy and numpypy
>
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On 11/21/2014 03:08 AM, Albert-Jan Roskam wrote:
>
>> I am using the latest version of Tox and I would like to include Pypy
>> in my list of environments. One of the required packages is numpy.
>> Currently, tox tries to pip install the standard numpy (which fails),
>> not numpypy. What is the correct way to solve this? I just read about
>> 'use_sitepackages=True', which might be an option.
>
> You can set up the 'deps' for the environment differently. E.g.:
>
>
> - ------------------------- %< --------------------------
> [tox]
> envlist = py26,py27,pypy
>
> [testenv]
> deps =
> nose
> numpy
> commands =
> nosetests
>
> [testenv:pypy]
> deps =
> nose
>
> numpypy
> commands =
> nosetests
> - ------------------------- %< --------------------------
>
hi,
Thanks, you put me on the right track. Numpypy and the normal numpy are both called 'numpy' though.
I got it working with a separate 'dep', like you suggested, and by using the (experimental) 'install_command'
[tox]
envlist = pypy,py27,py33,py34,docs
skipsdist = True
[testenv]
deps =
setuptools
nose
gocept.testing
numpy
commands =
nosetests --with-xunit --xunit-file=junit-{envname}.xml --verbosity=3
[testenv:pypy]
deps =
setuptools
nose
gocept.testing
install_command =
pip install git+https://bitbucket.org/pypy/numpy.git {packages}
And it was worth the effort, because numpypy apparently does not 'upcast' arrays with mixed data types. This is with regular numpy (notice the ints become str, upcasting):
>>> numpy.array([['a', 1], ['b', 2]])
array([['a', '1'],
['b', '2']],
dtype='|S1')
regards,
Albert-Jan
More information about the testing-in-python
mailing list