mirror of https://github.com/FriendsOfTYPO3/tea.git synced 2024-11-15 08:16:13 +01:00
tea/Documentation/DependencyManager.rst

22 lines
940 B
ReStructuredText
Raw Permalink Normal View History

.. include:: /Includes.rst.txt
.. _dependency-manager:
==================
Dependency manager
==================
To keep things simple, most development tools, for example PHP_CodeSniffer, are
installed by Composer as development requirements and in some cases where
installation via Composer is not possible, we use `PHIVE <https://phar.io/>`__.
PHIVE packages each tool with all its dependencies as
a separate PHAR. This helps avoid dependency hell (which means that you cannot
install or upgrade some tool as the tool's dependencies conflict with the
dependencies on another library). It also allows running versions of tools
that require a PHP version that is higher than the lowest allowed PHP version
for this project. Currently, we use PHIVE for
`PHP Copy/Paste Detector <https://github.com/sebastianbergmann/phpcpd>`__,
that requires PHP >= 7.3, which conflicts with this project's PHP version
support (we also support PHP 7.2).