Skip to content
Extraits de code Groupes Projets
Valider 69a86360 rédigé par JamesRezo's avatar JamesRezo :tada:
Parcourir les fichiers

feat!: PHP mini 8.2

BREAKING CHANGE: SPIP requiert PHP 8.2 minimum

Fixes #5898
parent c3a11ef5
Branches
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -18,6 +18,7 @@ ...@@ -18,6 +18,7 @@
### Changed ### Changed
- #5898 PHP MIN à 8.2
- !5708 Découpage des fichiers de démarrage de SPIP (non surchargeables) dans `ecrire/boostrap` - !5708 Découpage des fichiers de démarrage de SPIP (non surchargeables) dans `ecrire/boostrap`
- !5765 Nettoyage des paramètres d’URI : la constante `_CONTEXTE_IGNORE_LISTE_VARIABLES` remplace `_CONTEXTE_IGNORE_VARIABLES` supprimée. - !5765 Nettoyage des paramètres d’URI : la constante `_CONTEXTE_IGNORE_LISTE_VARIABLES` remplace `_CONTEXTE_IGNORE_VARIABLES` supprimée.
- #3637 Phraseur: Accepter des crochets dans la partie optionnelle d’une balise. `[hop] (#REM) [truc]` devient possible. - #3637 Phraseur: Accepter des crochets dans la partie optionnelle d’une balise. `[hop] (#REM) [truc]` devient possible.
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
## Préliminaires ## Préliminaires
SPIP 5.0 nécessite PHP 8.1 minimum. SPIP 5.0 nécessite PHP 8.2 minimum.
### Migration BDD ### Migration BDD
...@@ -10,7 +10,7 @@ SPIP 5.0 ne contient pas les mises à jour de BDD antérieures à SPIP 4.0. ...@@ -10,7 +10,7 @@ SPIP 5.0 ne contient pas les mises à jour de BDD antérieures à SPIP 4.0.
Pour rappel, SPIP 4.x ne contient pas les mises à jour antérieures SPIP 2.0. Pour rappel, SPIP 4.x ne contient pas les mises à jour antérieures SPIP 2.0.
Dit autrement, il faut a minima partir d’un SPIP 3.2 (ou supérieur donc) pour que la migration en SPIP 5.0 de la base de données s’effectue correctement. Dit autrement, il faut a minima partir d’un SPIP 3.2 (ou supérieur donc) pour que la migration en SPIP 5.0 de la base de données s’effectue correctement.
Pour des questions de compatibilité de SPIP 5.0 avec PHP 8.1 minimum, il est conseillé (mais pas obligatoire) de partir au moins d’un SPIP 4.1. Pour des questions de compatibilité de SPIP 5.0 avec PHP 8.2 minimum, il est conseillé (mais pas obligatoire) de partir au moins d’un SPIP 4.1.
### Déplacement plugins-dist ### Déplacement plugins-dist
......
{ {
"license": "GPL-3.0-only", "license": "GPL-3.0-only",
"require": { "require": {
"php": "^8.1", "php": "^8.2",
"ext-json": "*", "ext-json": "*",
"ext-sodium": "*", "ext-sodium": "*",
"ext-xml": "*", "ext-xml": "*",
...@@ -44,10 +44,10 @@ ...@@ -44,10 +44,10 @@
"lolli42/finediff": "^1.0", "lolli42/finediff": "^1.0",
"phpcompatibility/php-compatibility": "10.x-dev", "phpcompatibility/php-compatibility": "10.x-dev",
"phpstan/phpstan": "^1.10", "phpstan/phpstan": "^1.10",
"phpunit/phpunit": "^10.2", "phpunit/phpunit": "^11.0",
"spip/coding-standards": "^1.3", "spip/coding-standards": "^1.3",
"symplify/easy-coding-standard": "^11.5", "symfony/var-dumper": "^6.4",
"symfony/var-dumper": "^6.4" "symplify/easy-coding-standard": "^11.5"
}, },
"suggest": { "suggest": {
"ext-curl": "*", "ext-curl": "*",
...@@ -102,7 +102,7 @@ ...@@ -102,7 +102,7 @@
"spip/composer-installer": true "spip/composer-installer": true
}, },
"platform": { "platform": {
"php": "8.1.27" "php": "8.2.17"
} }
}, },
"extra": { "extra": {
......
Ce diff est replié.
...@@ -48,8 +48,8 @@ define('_SPIP_VERSION_ID', 50000); ...@@ -48,8 +48,8 @@ define('_SPIP_VERSION_ID', 50000);
define('_SPIP_EXTRA_VERSION', '-dev'); define('_SPIP_EXTRA_VERSION', '-dev');
/** version PHP minimum exigee (cf. inc/utils) */ /** version PHP minimum exigee (cf. inc/utils) */
define('_PHP_MIN', '8.1.0'); define('_PHP_MIN', '8.2.0');
define('_PHP_MAX', '8.2.99'); define('_PHP_MAX', '8.4.99');
// cette version dev accepte tous les plugins compatible avec la version ci-dessous // cette version dev accepte tous les plugins compatible avec la version ci-dessous
// a supprimer en phase beta/rc/release // a supprimer en phase beta/rc/release
......
parameters: parameters:
ignoreErrors: ignoreErrors:
-
message: "#^Call to function unset\\(\\) contains undefined variable \\$args\\.$#"
count: 1
path: ecrire/bootstrap/inc/logging.php
-
message: "#^Call to sprintf contains 0 placeholders, 2 values given\\.$#"
count: 1
path: ecrire/bootstrap/inc/logging.php
- -
message: "#^Instantiated class csstidy not found\\.$#" message: "#^Instantiated class csstidy not found\\.$#"
count: 1 count: 1
......
...@@ -2,6 +2,7 @@ includes: ...@@ -2,6 +2,7 @@ includes:
- phpstan-baseline.neon - phpstan-baseline.neon
parameters: parameters:
phpVersion: 80200
paths: paths:
- ecrire - ecrire
- prive - prive
......
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/11.0/phpunit.xsd"
bootstrap="ecrire/tests/bootstrap.php" bootstrap="ecrire/tests/bootstrap.php"
colors="true"
stopOnFailure="false"
xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/10.1/phpunit.xsd"
cacheDirectory=".phpunit.cache" cacheDirectory=".phpunit.cache"
> executionOrder="depends,defects"
<source> requireCoverageMetadata="false"
<include> beStrictAboutCoverageMetadata="false"
<directory suffix=".php">plugins-dist/spip</directory> beStrictAboutOutputDuringTests="false"
<directory suffix=".php">prive</directory> failOnRisky="false"
<directory suffix=".php">ecrire</directory> failOnWarning="false"
<directory suffix=".php">squelettes-dist</directory> colors="true">
</include> <testsuites>
<exclude> <testsuite name="default">
<directory suffix=".php">ecrire/tests</directory> <directory>ecrire/tests</directory>
<directory suffix=".php">ecrire/lang</directory> </testsuite>
<directory suffix=".php">plugins-dist/spip/*/lib</directory> <testsuite name="spip/compresseur">
<directory suffix=".php">plugins-dist/spip/*/tests</directory> <directory>./plugins-dist/spip/compresseur/tests</directory>
<directory suffix=".php">plugins-dist/spip/*/lang</directory> </testsuite>
<directory suffix=".php">squelettes-dist/lang</directory> <testsuite name="spip/images">
</exclude> <directory>./plugins-dist/spip/images/tests</directory>
</source> </testsuite>
<coverage> <testsuite name="spip/porte-plume">
<report> <directory>./plugins-dist/spip/porte-plume/tests</directory>
<html outputDirectory=".phpunit.cache/html"/> </testsuite>
<text outputFile="php://stdout"/> <testsuite name="spip/sites">
</report> <directory>./plugins-dist/spip/sites/tests</directory>
</coverage> </testsuite>
<testsuites> <testsuite name="spip/tw">
<testsuite name="spip/spip"> <directory>./plugins-dist/spip/tw/tests</directory>
<directory>./ecrire/tests</directory> </testsuite>
</testsuite> </testsuites>
<testsuite name="spip/compresseur">
<directory>./plugins-dist/spip/compresseur/tests</directory> <source restrictDeprecations="false" restrictNotices="false" restrictWarnings="false">
</testsuite> <include>
<testsuite name="spip/images"> <directory suffix=".php">plugins-dist/spip</directory>
<directory>./plugins-dist/spip/images/tests</directory> <directory suffix=".php">prive</directory>
</testsuite> <directory suffix=".php">ecrire</directory>
<testsuite name="spip/porte-plume"> <directory suffix=".php">squelettes-dist</directory>
<directory>./plugins-dist/spip/porte-plume/tests</directory> </include>
</testsuite> <exclude>
<testsuite name="spip/sites"> <directory suffix=".php">ecrire/tests</directory>
<directory>./plugins-dist/spip/sites/tests</directory> <directory suffix=".php">ecrire/lang</directory>
</testsuite> <directory suffix=".php">plugins-dist/spip/*/lib</directory>
<testsuite name="spip/tw"> <directory suffix=".php">plugins-dist/spip/*/tests</directory>
<directory>./plugins-dist/spip/tw/tests</directory> <directory suffix=".php">plugins-dist/spip/*/lang</directory>
</testsuite> <directory suffix=".php">squelettes-dist/lang</directory>
</testsuites> </exclude>
</source>
<coverage>
<report>
<html outputDirectory=".phpunit.cache/html"/>
<text outputFile="php://stdout"/>
</report>
</coverage>
</phpunit> </phpunit>
...@@ -18,7 +18,8 @@ return static function (RectorConfig $rectorConfig): void { ...@@ -18,7 +18,8 @@ return static function (RectorConfig $rectorConfig): void {
]); ]);
$rectorConfig->sets([ $rectorConfig->sets([
LevelSetList::UP_TO_PHP_81 LevelSetList::UP_TO_PHP_81,
LevelSetList::UP_TO_PHP_82,
]); ]);
$rectorConfig->skip([ $rectorConfig->skip([
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter