From e72c7345f1ee2eec7a6439c6d910080b88d10b0c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Guillaume=20Perr=C3=A9al?= <guillaume.perreal@irstea.fr>
Date: Mon, 24 Aug 2020 10:54:52 +0200
Subject: [PATCH] Met en jour le document de customisation.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Maintenant qu'on utilise un "pack". Ce n'est plus tout à fait pareil.
---
 CUSTOMIZATION.md | 58 +++++++++++++-----------------------------------
 1 file changed, 15 insertions(+), 43 deletions(-)

diff --git a/CUSTOMIZATION.md b/CUSTOMIZATION.md
index 02a7db2..1dc4e35 100644
--- a/CUSTOMIZATION.md
+++ b/CUSTOMIZATION.md
@@ -4,7 +4,7 @@ Y décrire comment utiliser le package...
 
 ## Choisir une license
 
-Et adapter le contenu des fichiers `LICENSE`, `.docheader`.
+Et adapter le contenu des fichiers `LICENSE` (et, optionnellement `.docheader`).
 
 ## Editer `composer.json`
 
@@ -23,54 +23,26 @@ Ce sont les champs et sections suivants :
 
 #### Supprimer les scripts du squelette
 
-Ce sont les scripts `post-install-cmd`, `post-update-cmd`, `post-create-project-cmd` et `customize-reminder`.
+Ce sont les scripts `post-install-cmd`, `post-update-cmd`,
+`post-create-project-cmd` et `customize-reminder`.
 
 #### Corriger les namespaces
 
-Ils sont dans les sections `autoload` et `autoload-dev`. Ce sont par défaut `Irstea\MyProject` et `Irstea\MyProject\Tests`, ce qui a peu de chance de correspondre au nouveau projet.
+Ils sont dans les sections `autoload` et `autoload-dev`. Ce sont par défaut
+`Irstea\MyProject` et `Irstea\MyProject\Tests`, ce qui a peu de chance de
+correspondre au nouveau projet.
 
 #### Fixer les contraintes de version
 
-Elle sont dans les sections `require` et `require-dev`. Il faut remplacer `"*"` par des contraintes de version de type `"^x.y"`.
+Le projet inclut `irstea/dev-pack` en version `@stable` par défaut. Ce paquet va
+lui-même inclure par transitivité les versions `@stable` des paquets et
+configurations que nous utilisons par défaut.
 
-**Si vous ne le faites pas, vous risquez une mauvaise surprise lors d'un `composer update`.**
+Toutefois, nous allons écrire du code qui utilise
+certains de ces paquets (notammment PHPUnit) et qui ne sera pas forcément
+compatible avec toutes les versions. Dans ce cas, il faut préciser explicitement
+les versions des paquets utilisés. Normalement, la job "php:composer-require-checker"
+devrait vous indiquer quand vous faites référence à une librairie qui n'est pas
+explicitement référencées.
 
 _Nota bene_: `roave/security-advisories` doit toujours être sur `dev-master`.
-
-La commande `composer show --direct` permet de lister les versions installées.
-
-##### Exemple
-
-```shell
-$ composer show --direct
-beberlei/assert                  v3.2.0             Thin assertion library for input validation in business models.
-irstea/php-cs-fixer-config       1.0.1              Jeux de règles pour php-cs-fixer.
-irstea/phpmd-config              1.0.0              Jeux de règles pour PHP Mess Detector.
-irstea/phpstan-config            1.0.3              Configuration par défaut pour phpstan/phpstan.
-jakub-onderka/php-parallel-lint  v1.0.0             This tool check syntax of PHP files about 20x faster than serial check.
-maglnet/composer-require-checker 2.0.0              CLI tool to analyze composer dependencies and verify that no unknown symbols are used in the sources of a package
-phploc/phploc                    5.0.0              A tool for quickly measuring the size of a PHP project.
-phpunit/phpunit                  8.1.2              The PHP Unit Testing framework.
-roave/security-advisories        dev-master a011222 Prevents installation of composer packages with known security vulnerabilities: no API, simply require it
-sebastian/phpcpd                 4.1.0              Copy/Paste Detector (CPD) for PHP code.
-sensiolabs/security-checker      v5.0.3             A security checker for your composer.lock
-```
-
-```json
-{
-    "require": {
-        "beberlei/assert": "^3.2"
-    },
-    "require-dev": {
-        "irstea/php-cs-fixer-config": "^1.0",
-        "irstea/phpmd-config": "^1.0",
-        "irstea/phpstan-config": "^1.0",
-        "jakub-onderka/php-parallel-lint": "^1.0",
-        "maglnet/composer-require-checker": "^2.0",
-        "phploc/phploc": "^5.0",
-        "phpunit/phpunit": "^8.1",
-        "sebastian/phpcpd": "^4.1",
-        "sensiolabs/security-checker": "^6.0"
-    }
-}
-```
-- 
GitLab