Removed support for PHP 7.2, 7.3, 7.4, required ext-ctype to be installed

TL;DR: polyfills are to be installed by downstream consumers, and not provided by libraries

In order to support PHP 7.2, 7.3 and 7.4, the `symfony/polyfill-php80` library
was dragged in. Symfony now has a long track record of bad stability ranges
(see https://github.com/symfony/polyfill-php80/blob/f4386d7f6f66346254ed4e6bfa4354d2d16b83f8/composer.json#L22-L24),
so it is best to get rid of it, and instead declare API compatibility with a stable API
version (in this case PHP 8.0).

In addition to that, to avoid introducing an explicit `ext-ctype` requirement, `symfony/polyfill-ctype`
was dragged in too, perhaps in an attempt to retain more popularity.
Same as above: symfony has a bad track record of SemVer compliance, so it should
not be introduced until strictly necessary. `ext-ctype` is generally available to most target
installation systems, and downstream consumers are still free to pull out their foot-gun by
doing a `composer require symfony/polyfill-ctype` on their own.
This mean that systems having `ext-ctype` installed will get an installation as expected: otherwise,
any system that requires `ramsey/uuid` automatically becomes a system capable of providing `ext-ctype`
API, which is just not true (before this change).
This commit is contained in:
Marco Pivetta
2022-03-22 12:40:54 +01:00
parent e3e9179f27
commit 56291a3c1d
2 changed files with 3 additions and 10 deletions
@@ -60,9 +60,6 @@ jobs:
fail-fast: false
matrix:
php-version:
- "7.2"
- "7.3"
- "7.4"
- "8.0"
- "8.1"
@@ -128,9 +125,6 @@ jobs:
fail-fast: false
matrix:
php-version:
- "7.2"
- "7.3"
- "7.4"
- "8.0"
- "8.1"
operating-system: