Getting started
Development dependencies
Working on cryptography
requires the installation of a small number of
development dependencies in addition to the dependencies for
Installation (including Rust). These are
handled by the use of nox
, which can be installed with pip
.
$ # Create a virtualenv and activate it
$ # Set up your cryptography build environment
$ pip install nox
$ nox -e local
OpenSSL on macOS
You must have installed OpenSSL (via Homebrew , MacPorts) before
invoking nox
or else pip will fail to compile.
Running tests
cryptography
unit tests are found in the tests/
directory and are
designed to be run using pytest. nox
automatically invokes pytest
and other required checks for cryptography
:
$ nox -e local
You can also specify a subset of tests to run as positional arguments:
$ # run the whole x509 testsuite, plus the fernet tests
$ nox -e local -- tests/x509/ tests/test_fernet.py
Building the docs
Building the docs on non-Windows platforms requires manually installing
the C library libenchant
(installation instructions).
The docs can be built using nox
:
$ nox -e docs