Installation#

Requirements#

The installation of PyScaffold only requires a recent version of of setuptools, (at least version 46.1), pip, as well as a working installation of Git (meaning at least your name and email were configured but also setting the default branch might be useful in your first-time git setup). Especially Windows users should make sure that the command git is available on the command line. Otherwise, check and update your PATH environment variable or run PyScaffold from the Git Bash.

Tip

It is recommended to use an isolated development environment as provided by virtualenv or conda for your work with Python in general. You might want to install PyScaffold globally in your system, but consider using virtual environments when developing your packages.

Installation#

PyScaffold relies on a Python package manager for its installation. The easiest way of getting started is via our loved pip. Make sure you have pip installed [1], then simply type:

pip install --upgrade pyscaffold

to get the latest stable version. The most recent development version can be installed with:

pip install --pre --upgrade pyscaffold

Using pip also has the advantage that all requirements are automatically installed.

If you want to install PyScaffold with all official extensions, run:

pip install --upgrade pyscaffold[all]

Alternative Methods#

It is very easy to get PyScaffold installed with pip, but some people do prefer other package managers such as conda while doing their work.

If you do lots of number crunching or data science in general [2] and you already rely on conda-forge packages, you might also use the following method:

conda install -c conda-forge pyscaffold

It is also very common for developers to have more then one Python version installed on their machines, and a plethora of virtual environments spread all over the place… Instead of constantly re-installing PyScaffold in each one of these installations and virtual environments, you can use pipx to do a “minimally-invasive” system-wide installation and have the putup command always available independently of which Python you are using:

pipx install pyscaffold

Please check the documentation of each tool to understand how they work with extra requirements (e.g. [all]) or how to add extensions (e.g. pipx inject pyscaffold pyscaffoldext-dsproject).

Additional Requirements#

We strongly recommend installing tox together with PyScaffold (both can be installed with pip, conda or pipx), so you can take advantage of its automation capabilities and avoid having to install dependencies/requirements manually. If you do that, just by running the commands tox and tox -e docs, you should be able to run your tests or build your docs out of the box (a list with all the available tasks is obtained via the tox -av command).

If you dislike tox, or are having problems with it, you can run commands (like pytest and make -C docs) manually within your project, but then you will have to deal with additional requirements and dependencies yourself. It might be the case you already have them installed but this can be confusing because these packages won’t be available to other packages when you use a virtual environment. If that is the case, just install following packages inside the environment you are using for development:

Note

If you have problems using PyScaffold, please make sure you are using Python 3.6 or greater.