Cómo instalar una versión anterior de PHPUnit a través de PEAR?


Me gustaría degradar mi instalación de PHPUnit 3.4 a 3.3. No estoy seguro de cómo hacerlo.

¿Cómo instalo la versión 3.3 de PHPUnit en Ubuntu usando PEAR?

Author: Andrew, 2009-10-15

5 answers

Necesita saber el número de versión exacto al que desea degradar. En el momento de escribir este artículo, la última versión que buscas es la 3.3.17, que se puede encontrar marcando el canal de PERA apropiado.

Para bajar a esa versión en particular, ejecute dos comandos:

  • pear uninstall phpunit/PHPUnit
  • pear install phpunit/PHPUnit-3.3.17
 51
Author: etheros,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-12-12 14:21:35

Tenga en cuenta que si desea bajar de categoría desde una 3.6.x versión 3.5.15 (estable final 3.x release), luego debe desinstalar y luego reinstalar varias dependencias manualmente. De lo contrario, pear solo obligará a instalar la última versión de PHPUnit.

He aquí cómo:

(Instrucciones originales del blog de Dusty Reagan: http://dustyreagan.com/downgrade-phpunit-3-6-to-3-5-15 / . duplicado a SO en caso de que el enlace original muera por alguna razón.)

Primero necesitas desinstalar PHPUnit 3.6 y todas sus dependencias.

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

A continuación instalar estas versiones específicas de cada dependencia, en este orden, instalando PHPUnit-3.5.15 último.

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

Nota: Es posible que deba agregar un canal para PHP_CodeCoverage, que no parece ser obligatorio para PHPUnit 3.6

sudo pear channel-discover components.ez.no
sudo pear install channel://components.ez.no/ConsoleTools-1.6
 22
Author: Jens Wegar,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-02-03 00:07:41

Si obtienes el error Fatal error: Class 'PHP_Token_Stream' not found in /usr/share/pear/PHP/Token/Stream/CachingFactory.php on line 68 necesitarás usar el siguiente orden, para obtener la versión correcta 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
Author: toneplex,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-12-08 14:34:25

No se si siempre es posible usar PEAR solo.

Cuando tuve que degradar un paquete antes, la versión anterior ya no estaba disponible en el canal. Desinstalé el paquete que quería degradar, descargué la versión anterior e instalé desde el archivo descargado.

 1
Author: Nikki Erwin Ramirez,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-10-16 05:44:00

En cuanto a la degradación de 3.6.x a 3.5.15, funciona bien para mí en el siguiente orden:

Desinstalación 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

Instalación 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

He encontrado la solución AQUÍ.

 0
Author: faramka,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-04-04 12:59:42