1:LastChangedDate: $LastChangedDate$ 2:LastChangedRevision: $LastChangedRevision$ 3:LastChangedBy: $LastChangedBy$ 4 5Installing Optional Dependencies 6================================ 7 8This document describes the optional dependencies that Twisted supports. 9The dependencies are python packages that Twisted's developers have found useful either for developing Twisted itself or for developing Twisted applications. 10 11The intended audience of this document is someone who is familiar with installing optional dependencies using `pip`_. 12 13If you are unfamiliar with the installation of optional dependencies, the `python packaging tutorial`_ can show you how. 14For a deeper explanation of what optional dependencies are and how they are declared, please see the `setuptools documentation`_. 15 16The following optional dependencies are supported: 17 18* **dev** - packages that aid in the development of Twisted itself. 19 20 * `pyflakes`_ 21 * `twisted-dev-tools`_ 22 * `python-subunit`_ 23 * `Sphinx`_ 24 * `TwistedChecker`_, only available on python2 25 * `pydoctor`_, only available on python2 26 27 28* **tls** - packages that are needed to work with TLS. 29 30 * `pyOpenSSL`_ 31 * `service_identity`_ 32 * `idna`_ 33 34* **conch** - packages for working with conch/SSH. 35 36 * `pyasn1`_ 37 * `cryptography`_ 38 39* **soap** - the `SOAPpy`_ package to work with SOAP. 40 41* **serial** - the `pyserial`_ package to work with serial data. 42 43* **all_non_platform** - installs **tls**, **conch**, **soap**, and **serial** options. 44 45* **macos_platform** - **all_non_platform** options and `pyobjc`_ to work with Objective-C apis. 46 47* **windows_platform** - **all_non_platform** options and `pywin32`_ to work with Windows's apis. 48 49* **http2** - packages needed for http2 support. 50 51 * `h2`_ 52 * `priority`_ 53 54* **contextvars** - the `contextvars`_ backport package to provide contextvars support for Python versions before 3.7. 55 56 57.. _pip: https://pip.pypa.io/en/latest/quickstart.html 58.. _TwistedChecker: https://pypi.python.org/pypi/TwistedChecker 59.. _pyflakes: https://pypi.python.org/pypi/pyflakes 60.. _twisted-dev-tools: https://pypi.python.org/pypi/twisted-dev-tools 61.. _python-subunit: https://pypi.python.org/pypi/python-subunit 62.. _Sphinx: https://pypi.python.org/pypi/Sphinx/1.3b1 63.. _pydoctor: https://pypi.python.org/pypi/pydoctor 64.. _pyOpenSSL: https://pypi.python.org/pypi/pyOpenSSL 65.. _service_identity: https://pypi.python.org/pypi/service_identity 66.. _pyasn1: https://pypi.python.org/pypi/pyasn1 67.. _cryptography: https://pypi.python.org/pypi/cryptography 68.. _SOAPpy: https://pypi.python.org/pypi/SOAPpy 69.. _pyserial: https://pypi.python.org/pypi/pyserial 70.. _pyobjc: https://pypi.python.org/pypi/pyobjc 71.. _pywin32: https://pypi.python.org/pypi/pywin32 72.. _`setuptools documentation`: https://pythonhosted.org/setuptools/setuptools.html#declaring-extras-optional-features-with-their-own-dependencies 73.. _`python packaging tutorial`: https://packaging.python.org/en/latest/installing.html#examples 74.. _idna: https://pypi.python.org/pypi/idna 75.. _h2: https://pypi.python.org/pypi/h2 76.. _priority: https://pypi.python.org/pypi/priority 77.. _contextvars: https://pypi.org/project/contextvars/ 78