web-dev-qa-db-fra.com

Comment installer une ancienne version de PHPUnit via PEAR?

Je voudrais rétrograder mon installation de PHPUnit 3.4 à 3.3. Je ne sais juste pas comment faire.

Comment installer la version 3.3 de PHPUnit sur Ubuntu en utilisant PEAR?

43
Andrew

Vous devez connaître le numéro de version exact vers lequel vous souhaitez rétrograder. Au moment de la rédaction, la dernière version que vous recherchez est la 3.3.17, qui peut être trouvée par vérification la chaîne appropriée PEAR.

Pour rétrograder vers cette version particulière, exécutez deux commandes:

  • pear uninstall phpunit/PHPUnit
  • pear install phpunit/PHPUnit-3.3.17
51
etheros

Notez que si vous souhaitez rétrograder d'une version 3.6.x à 3.5.15 (version finale stable 3.x), vous devez désinstaller, puis réinstaller plusieurs dépendances manuellement. Sinon, pear forcera simplement l'installation de la dernière version de PHPUnit.

Voici comment:

(Instructions originales du blog de Dusty Reagan: http://dustyreagan.com/downgrade-phpunit-3-6-to-3-5-15/ . Dupliqué à SO au cas où le lien d'origine mourrait pour une raison quelconque.)

Vous devez d'abord désinstaller PHPUnit 3.6 et toutes ses dépendances.

Sudo pear uninstall phpunit/PHPUnit
Sudo pear uninstall phpunit/DbUnit
Sudo pear uninstall phpunit/PHP_CodeCoverage
Sudo pear uninstall phpunit/File_Iterator
Sudo pear uninstall phpunit/PHPUnit_MockObject
Sudo pear uninstall phpunit/Text_Template
Sudo pear uninstall phpunit/PHP_Timer
Sudo pear uninstall phpunit/PHPUnit_Selenium
Sudo pear uninstall pear.symfony-project.com/YAML

Installez ensuite ces versions spécifiques de chaque dépendance, dans cet ordre, en installant PHPUnit-3.5.15 en dernier.

Sudo pear install pear.symfony-project.com/YAML-1.0.2
Sudo pear install phpunit/PHPUnit_Selenium-1.0.1
Sudo pear install phpunit/Text_Template-1.0.0
Sudo pear install phpunit/PHPUnit_MockObject-1.0.3
Sudo pear install phpunit/PHP_Timer-1.0.0
Sudo pear install phpunit/File_Iterator-1.2.3
Sudo pear install phpunit/PHP_CodeCoverage-1.0.2
Sudo pear install phpunit/DbUnit-1.0.0
Sudo pear install phpunit/PHPUnit-3.5.15

Remarque: vous devrez peut-être ajouter un canal pour PHP_CodeCoverage, ce qui ne semble pas être obligatoire pour PHPUnit 3.6

Sudo pear channel-discover components.ez.no
Sudo pear install channel://components.ez.no/ConsoleTools-1.6
22
Jens Wegar

Si vous obtenez l'erreur Fatal error: Class 'PHP_Token_Stream' not found in /usr/share/pear/PHP/Token/Stream/CachingFactory.php on line 68 vous devrez utiliser l'ordre suivant pour obtenir la bonne version de PHP_TokenStream:

pear uninstall phpunit/PHPUnit
pear uninstall phpunit/DbUnit
pear uninstall phpunit/PHP_CodeCoverage
pear uninstall phpunit/PHP_TokenStream
pear uninstall phpunit/File_Iterator
pear uninstall phpunit/PHP_Timer
pear uninstall phpunit/PHPUnit_MockObject
pear uninstall phpunit/Text_Template
pear uninstall phpunit/PHPUnit_Selenium
pear uninstall pear.symfony-project.com/YAML


pear install pear.symfony-project.com/YAML-1.0.2
pear install phpunit/PHPUnit_Selenium-1.0.1
pear install phpunit/Text_Template-1.0.0
pear install phpunit/PHPUnit_MockObject-1.0.3
pear install phpunit/PHP_Timer-1.0.0
pear install phpunit/File_Iterator-1.2.3
pear install phpunit/PHP_TokenStream-1.0.1
pear install phpunit/PHP_CodeCoverage-1.0.2
pear install phpunit/DbUnit-1.0.0
pear install phpunit/PHPUnit-3.5.15
6
toneplex

Je ne sais pas si c'est toujours possible en utilisant PEAR seul.

Lorsque j'ai dû rétrograder un package auparavant, l'ancienne version n'était plus disponible sur le canal. J'ai désinstallé le package que je voulais rétrograder, téléchargé l'ancienne version et installé à partir du fichier téléchargé.

1

Quant à la rétrogradation de 3.6.x à 3.5.15, cela fonctionne bien pour moi dans l'ordre suivant:

Désinstallation de 3.6

Sudo pear uninstall phpunit/PHPUnit_Selenium
Sudo pear uninstall phpunit/PHPUnit
Sudo pear uninstall phpunit/DbUnit
Sudo pear uninstall phpunit/PHP_CodeCoverage
Sudo pear uninstall phpunit/PHP_Iterator
Sudo pear uninstall phpunit/PHPUnit_MockObject
Sudo pear uninstall phpunit/Text_Template
Sudo pear uninstall phpunit/PHP_Timer
Sudo pear uninstall phpunit/File_Iterator
Sudo pear uninstall pear.symfony-project.com/YAML

Installation de 3.5.15

Sudo pear install pear.symfony-project.com/YAML-1.0.2
Sudo pear install phpunit/PHPUnit_Selenium-1.0.1
Sudo pear install phpunit/PHP_Timer-1.0.0
Sudo pear install phpunit/Text_Template-1.0.0
Sudo pear install phpunit/PHPUnit_MockObject-1.0.3
Sudo pear install phpunit/File_Iterator-1.2.3
Sudo pear install phpunit/PHP_CodeCoverage-1.0.2
Sudo pear install phpunit/DbUnit-1.0.0
Sudo pear install phpunit/PHPUnit-3.5.15

J'ai trouvé la solution ICI .

0
faramka