diff options
Diffstat (limited to 'doc/source/install.rst')
-rw-r--r-- | doc/source/install.rst | 71 |
1 files changed, 46 insertions, 25 deletions
diff --git a/doc/source/install.rst b/doc/source/install.rst index b0d6b4f..a551b18 100644 --- a/doc/source/install.rst +++ b/doc/source/install.rst @@ -1,21 +1,22 @@ +.. _Installation: -Installation steps -================== +Installation +============ *silx* supports most operating systems and different versions of the Python programming language. This table summarizes the support matrix of silx: -+------------+--------------+---------------------+ -| System | Python vers. | Qt and its bindings | -+------------+--------------+---------------------+ -| `Windows`_ | 3.6-3.9 | PyQt5.6+, PySide2 | -+------------+--------------+---------------------+ -| `MacOS`_ | 3.6-3.9 | PyQt5.6+, PySide2 | -+------------+--------------+---------------------+ -| `Linux`_ | 3.6-3.9 | PyQt5.3+, PySide2 | -+------------+--------------+---------------------+ ++------------+--------------+--------------------------------+ +| System | Python vers. | Qt and its bindings | ++------------+--------------+--------------------------------+ +| `Windows`_ | 3.7-3.10 | PyQt5.9+, PySide6.4+, PyQt6.3+ | ++------------+--------------+--------------------------------+ +| `MacOS`_ | 3.7-3.10 | PyQt5.9+, PySide6.4+, PyQt6.3+ | ++------------+--------------+--------------------------------+ +| `Linux`_ | 3.7-3.10 | PyQt5.9+, PySide6.4+, PyQt6.3+ | ++------------+--------------+--------------------------------+ For the description of *silx* dependencies, see the Dependencies_ section. @@ -66,7 +67,8 @@ The mandatory dependencies are: The GUI widgets depend on the following extra packages: * A Qt binding: either `PyQt5 <https://riverbankcomputing.com/software/pyqt/intro>`_, - or `PySide2 <https://wiki.qt.io/Qt_for_Python>`_ + `PySide6 <https://pypi.org/project/PySide6/>`_ or + `PyQt6 <https://pypi.org/project/PyQt6/>`_ * `matplotlib <http://matplotlib.org/>`_ * `PyOpenGL <http://pyopengl.sourceforge.net/>`_ * `qt_console <https://pypi.org/project/qtconsole>`_ @@ -245,7 +247,7 @@ installed using: .. code-block:: bash - pip install -r https://github.com/silx-kit/silx/raw/0.8/requirements-dev.txt + pip install -r https://github.com/silx-kit/silx/raw/master/requirements-dev.txt Building from source @@ -288,32 +290,51 @@ To set the environment variables, type on the command line: Advanced build options ++++++++++++++++++++++ -In case you want more control over the build procedure, the build command is: +Advanced options can be set through the following environment variables: -.. code-block:: bash - - python setup.py build +.. list-table:: + :widths: 1 4 + :header-rows: 1 -There are few advanced options to ``setup.py build``: + * - Environment variable + - Description + * - ``SILX_WITH_OPENMP`` + - Whether or not to compile Cython code with OpenMP support (default: ``True`` except on macOS where it is ``False``) + * - ``SILX_FORCE_CYTHON`` + - Whether or not to force re-generating the C/C++ source code from Cython files (default: ``False``). + * - ``SPECFILE_USE_GNU_SOURCE`` + - Whether or not to use a cleaner locale independent implementation of :mod:`silx.io.specfile` by using `_GNU_SOURCE=1` + (default: ``False``; POSIX operating system only). + * - ``SILX_FULL_INSTALL_REQUIRES`` + - Set it to put all dependencies as ``install_requires`` (For packaging purpose). + * - ``SILX_INSTALL_REQUIRES_STRIP`` + - Comma-separated list of package names to remove from ``install_requires`` (For packaging purpose). +.. note:: Boolean options are passed as ``True`` or ``False``. -* ``--no-cython``: Prevent Cython (even if installed) from re-generating the C source code. - Use the one provided by the development team. -* ``--no-openmp``: Recompiles the Cython code without OpenMP support (default for MacOSX). -* ``--openmp``: Recompiles the Cython code with OpenMP support (default for Windows and Linux). -Package the build into a wheel and install it: +Package the build into a wheel and install it (this requires to install the `build <https://pypa-build.readthedocs.io>`_ package): .. code-block:: bash - python setup.py bdist_wheel + python -m build --wheel pip install dist/silx*.whl To build the documentation, using `Sphinx <http://www.sphinx-doc.org/>`_: .. code-block:: bash - python setup.py build build_doc + pip install . # Make sure to install the same version as the source + sphinx-build doc/source/ build/html + +.. note:: + + To re-generate the example script screenshots, build the documentation with the + environment variable ``DIRECTIVE_SNAPSHOT_QT`` set to ``True``. + +Formatting +++++++++++ +To format the code, use `black <https://black.readthedocs.io>`_. Testing +++++++ |