Metadata-Version: 2.1
Name: venvstarter
Version: 0.12.2
Summary: Tool to create virtualenvs, manage versions of packages in it and use it start a particular program
Project-URL: Homepage, https://github.com/delfick/venvstarter
Author-email: Stephen Moore <github@delfick.com>
License-Expression: MIT
License-File: LICENSE
Requires-Python: >=3.7
Provides-Extra: tests
Requires-Dist: noseofyeti[black]==2.4.7; extra == 'tests'
Requires-Dist: pytest-helpers-namespace==2021.12.29; extra == 'tests'
Requires-Dist: pytest-parallel==0.1.1; extra == 'tests'
Requires-Dist: pytest>=7.2.0; extra == 'tests'
Description-Content-Type: text/x-rst

Venvstarter
===========

Program to bootstrap a virtualenv for your program!

Full documentation at http://venvstarter.readthedocs.io

Tests
-----

To run the tests you must first create a ``pythons.json`` in the root of your
checkout of venvstarter that tells the tests where to find each version of
Python:

.. code-block:: python

  {
    "python3.7": "~/.pyenv/versions/3.7.12/bin/python",
    "python3.8": "~/.pyenv/versions/3.8.12/bin/python",
    "python3.9": "~/.pyenv/versions/3.9.6/bin/python"
    "python3.10": "~/.pyenv/versions/3.10.0/bin/python"
    "python3.11": "~/.pyenv/versions/3.11.0/bin/python"
  }

In this example I'm using pyenv to get copies of each Python. Using pyenv isn't
a requirement, but it does make it easy! There is nothing in the tests that rely
on features in any particular version, and so the minor patch of each version is
irrelevant. All that matters is having some version of 3.7, 3.8, 3.9, 3.10 and 3.11.

I recommend running the tests in a virtualenv. I use virtualenvwrapper for this
but you can also do a ``python3 -m venv my_venv`` somewhere and use that.

Then once you're in a virtualenv::

  > python -m pip install -e ".[tests]"
  > ./test.sh
