mirror of https://github.com/FriendsOfTYPO3/tea.git synced 2024-11-22 23:16:13 +01:00
tea/Documentation/DependencyManager.rst
Alexander Nitsche fc5b861bcd
[TASK] Update docs (#404)
See c2bb63bead for further details.

The README.md should mostly only cover the abstract and links.

The composer commands are the core value of this extension. List
all commands in the documentation and copy the descriptions from
the `composer.json`. This lets the global search at docs.typo3.org
find these commands.

Remove superfluous Linters page, which is integrated now in the
Running page.

Use sentence case in page titles in order to conform to the
TYPO3 documentation standards.

The ambiguous :ts: text role has been removed to
not confuse the writer with typescript and typoscript.

Add the common extension destinations to `composer.json`.
(Packagist displays them in a prominent place.)
2022-04-12 19:00:11 +02:00

21 lines
940 B
ReStructuredText

.. 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).