Skip to main content

tox 3 interpreter discovery plugin for multipython

Project description

tox-multipython

python interpreter discovery plugin for tox 3 and multipython

license python versions pypi tested with multipython uses docsub

[!NOTE] tox-multipython has twin plugin virtualenv-multipython that serves the same purpose for tox 4

This tox plugin comes pre-installed in multipython Docker image and is responsible for resolving tox environment name to Python executable. Most probably, you don't need to install it yourself.

Environment names supported are all multipython tags. More names may be added in the future.

Testing

There is one test suite:

  1. tox3 โ€” tox>=3,<4 is installed in host tag environment, and tox run is executed on tox.ini with env names equal to target tags. This test includes subtests:
    • assert {env_python} version inside tox env
    • assert python version inside tox env
    • install externally built sample package in tox environment
    • execute entrypoint of sample package

Virtualenv supports discovery plugins since v20. In v20.22, it dropped support for Python <=3.6, in v20.27 it dropped support for Python 3.7.

This is why we use 6 different test setups:

  1. tox3 + virtualenv>=20
  2. tox3 + virtualenv>=20,<20.27
  3. tox3 + virtualenv>=20,<20.22

Test report

When tox-multipython is installed inside host tag environment, it allows to use selected โœ… target tag (create virtualenv environment or use as tox env name in env_list) and automatically discovers corresponding multipython executable. For failing ๐Ÿ’ฅ target tag, interpreter is discoverable, but virtual environment with sample package cannot be created.

Host tag and Target tags are valid multipython tags. Host tags are listed vertically (rows), target tags are listed horizontally (columns).

tox>=3,<4, virtualenv>=20
  HOST    TARGETS
โ€”โ€”โ€”โ€”โ€”โ€”    Aโ€‚Bโ€‚Cโ€‚Dโ€‚Eโ€‚Fโ€‚Gโ€‚Hโ€‚Iโ€‚Jโ€‚Kโ€‚Lโ€‚M
py314t  A โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ
py313t  B โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ
 py314  C โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ
 py313  D โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ
 py312  E โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ
 py311  F โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ
 py310  G โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ
  py39  H โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ
  py38  I โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ
  py37  J โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ
  py36  K ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅโœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…
  py35  L ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅโœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…
  py27  M ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅโœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…
tox>=3,<4, virtualenv>=20,<20.27
  HOST    TARGETS
โ€”โ€”โ€”โ€”โ€”โ€”    Aโ€‚Bโ€‚Cโ€‚Dโ€‚Eโ€‚Fโ€‚Gโ€‚Hโ€‚Iโ€‚Jโ€‚Kโ€‚Lโ€‚M
py314t  A โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…
py313t  B โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…
 py314  C โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…
 py313  D โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…
 py312  E โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…
 py311  F โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…
 py310  G โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…
  py39  H โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…
  py38  I โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…
  py37  J โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…
  py36  K ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅโœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…
  py35  L ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅโœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…
  py27  M ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅโœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…
tox>=3,<4, virtualenv>=20,<20.22
  HOST    TARGETS
โ€”โ€”โ€”โ€”โ€”โ€”    Aโ€‚Bโ€‚Cโ€‚Dโ€‚Eโ€‚Fโ€‚Gโ€‚Hโ€‚Iโ€‚Jโ€‚Kโ€‚Lโ€‚M
py314t  A โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ
py313t  B โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ
 py314  C โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ
 py313  D โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ
 py312  E โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ
 py311  F โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ
 py310  G โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ
  py39  H โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ
  py38  I โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ
  py37  J โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ
  py36  K ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅโœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…
  py35  L ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅโœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…
  py27  M ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅ๐Ÿ’ฅโœ…โœ…โœ…โœ…โœ…โœ…โœ…โœ…

Changelog

Check CHANGELOG.md

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tox_multipython-0.2.2.tar.gz (63.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tox_multipython-0.2.2-py2.py3-none-any.whl (5.3 kB view details)

Uploaded Python 2Python 3

File details

Details for the file tox_multipython-0.2.2.tar.gz.

File metadata

  • Download URL: tox_multipython-0.2.2.tar.gz
  • Upload date:
  • Size: 63.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.13

File hashes

Hashes for tox_multipython-0.2.2.tar.gz
Algorithm Hash digest
SHA256 a5a9f003a812c6b18aaa20d39206afb8f0be80ec65dac1adf34077fb800bdc8d
MD5 bbd5522ac7db9cee703e09badd168490
BLAKE2b-256 3d217547604b6685cc4ff62dcb9b65e2476eb8db33cd263fe750b78160b5d46b

See more details on using hashes here.

File details

Details for the file tox_multipython-0.2.2-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for tox_multipython-0.2.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 7f584323bb5b3a6cc00e42df4423090f4497eb0132bbb8b6d8755cb91cfbd811
MD5 279deb8d3946aac9c860cf67c09e3c83
BLAKE2b-256 38d630c704e5dae60a0697c9ae90eca029613a1abe3ce753ccd38828e0e14ee7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page