[openstack-dev] [testing] moving testrepository *outside* the tox venv
mordred at inaugust.com
Fri Jul 10 23:34:52 UTC 2015
On 07/10/2015 07:19 PM, Robert Collins wrote:
> On 10 July 2015 at 01:59, Morgan Fainberg <morgan.fainberg at gmail.com> wrote:
>> Or a database per python major version (or at least gracefully handle the incompatibility).
> So that would partition the data, and the whole point of test
> *repository* is that it builds a database across all your tests to
> answer useful questions.
Totally understand that.
On the other hand ...
a) is that setup/behavior common enough to be more important than:
b) the dbm file format mess is both annoying and confusing
I get the theory of why - but it's also a common thing that provides rage.
>> Sent via mobile
>>> On Jul 9, 2015, at 06:43, Doug Hellmann <doug at doughellmann.com> wrote:
>>> Excerpts from Robert Collins's message of 2015-07-09 10:37:17 +1200:
>>>> I don't remember if this has previously been discussed, but as our
>>>> Python3 readiness increases folk are going to feel pain from testr due
>>>> to a silly Python 2/3 incompatibility around dbm files.
>>>> OpenStack (alone in the universe as far as I can tell) installs
>>>> testrepository *inside* a tox venv. This then causes the timing
>>>> database to be Python version specific. It also causes the test venv
>>>> to suck in any dependencies testr might add.
>>>> But testrepository is like tox- its meant to be installed systemwide
>>>> (or at least in its own venv) and then just used to *run* test runners
>>>> within whatever context.
>>>> So - I'm looking to:
>>>> A) have a discussion and identify any issues with moving testr out of
>>>> the venvs. (Note: this doesn't mean stop using it, just removing it
>>>> from test-requirements.txt, in the same way that tox isn't in
>>>> B) Capture that in a spec if its non-trivial.
>>>> C) find volunteers to make it happen.
>>> How much work would it be to make testrepository use a database format
>>> that would be the same under all versions of python?
> I'd love a patch. Relevant tests:
> Mac OS X's default Python
> Ubuntu's default Python 2.x + 3.x, for newest LTS + current dev.
> Ditto Fedora
> And Python 2.7 and 3.4 and 3.5 for Windows (upstream distribution)
More information about the OpenStack-dev