Difference between revisions of "PEAR"

From Freephile Wiki
Jump to navigation Jump to search
(v.2009)
 
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
PEAR (http://pear.php.net/) is the PHP Extension and Add-on Repository.
 
PEAR (http://pear.php.net/) is the PHP Extension and Add-on Repository.
  
It's a glue framework, meaning it contains independent packages that can be chosen and "glued" together in your application to meet your requirements.  Since PEAR dates back to the origins of PHP, it is oftentimes an underlying requirement for basic PHP functionality which other developers build upon.  For a hypothetical example, you could have a Drupal module developer use an underlying PEAR package for critical functionality at the system level, while the module proper deals with application integration and extension of Drupal capabilities.
+
It's a glue framework, meaning it contains independent packages that can be chosen and "glued" together in your application to meet your requirements.  Since PEAR dates back to the origins of [[PHP]], it is oftentimes an underlying requirement for basic PHP functionality which other developers build upon.  For a hypothetical example, you could have a [[Drupal]] module developer use an underlying PEAR package for critical functionality at the system level, while the module proper deals with application integration and extension of Drupal capabilities.
  
 
PEAR is also a packaging and code distribution system using a command-line application (think apt-get).  There is actually a web front-end available too for managing PEAR packages.  See http://blog.jldupont.com/2008/03/pear-web-installer.html for more on that.
 
PEAR is also a packaging and code distribution system using a command-line application (think apt-get).  There is actually a web front-end available too for managing PEAR packages.  See http://blog.jldupont.com/2008/03/pear-web-installer.html for more on that.
Line 7: Line 7:
 
Notable PEAR developers:
 
Notable PEAR developers:
  
* Brion Vibber (CTO of MediaWiki Foundation) is now a PEAR developer http://leuksman.com/log/
+
* Brion Vibber (CTO of MediaWiki Foundation)
* Jean-Lou Dupont http://blog.jldupont.com/2008/03/pear-web-installer.html (his mediawiki extensions are at http://code.google.com/p/mediawiki/ - although he is not actively developing for MediaWiki)
+
* Jean-Lou Dupont  
 
* Gregory Beaver
 
* Gregory Beaver
  
<source lang="bash">
+
== PEAR in 2016 ==
# update your pear installation
+
Is PEAR still relevant? In the age of GitHub and [[Composer]], if you listen to chatter on the Internet, it's easy to think that PEAR is a moribund project that is also irrelevant.  But it is actually alive and kicking.  Sadly, I don't think that the trends will reverse. Still, you need to know about PEAR because there are many cases where a PEAR class is underlying your application or hosting platform. [https://stackoverflow.com/questions/20804004/installing-php-pear-packages-via-ansible-with-idempotency How to install PEAR with idempotency in Ansible]<ref>In my tests the 'and' trick for failed_when did not work because the new 2.x module does not have .stdout.  There is only msg https://github.com/ansible/ansible-modules-extras/blob/devel/packaging/language/pear.py</ref>
sudo pear upgrade pear
+
 
# add Jean-lou Dupont's channel
+
[[Category:PHP]]
sudo pear channel-discover mediawiki.googlecode.com/svn
 
# install the web front-end
 
sudo pear install PEAR_Frontend_WEB
 
# which fails because it's 'beta' and our package preference is set to 'stable'
 
# therefore install it specifically
 
sudo pear install channel://pear.php.net/PEAR_Frontend_WEB-0.7.4
 
</source>
 

Latest revision as of 23:06, 12 September 2016

PEAR (http://pear.php.net/) is the PHP Extension and Add-on Repository.

It's a glue framework, meaning it contains independent packages that can be chosen and "glued" together in your application to meet your requirements. Since PEAR dates back to the origins of PHP, it is oftentimes an underlying requirement for basic PHP functionality which other developers build upon. For a hypothetical example, you could have a Drupal module developer use an underlying PEAR package for critical functionality at the system level, while the module proper deals with application integration and extension of Drupal capabilities.

PEAR is also a packaging and code distribution system using a command-line application (think apt-get). There is actually a web front-end available too for managing PEAR packages. See http://blog.jldupont.com/2008/03/pear-web-installer.html for more on that.

Notable PEAR developers:

  • Brion Vibber (CTO of MediaWiki Foundation)
  • Jean-Lou Dupont
  • Gregory Beaver

PEAR in 2016[edit | edit source]

Is PEAR still relevant? In the age of GitHub and Composer, if you listen to chatter on the Internet, it's easy to think that PEAR is a moribund project that is also irrelevant. But it is actually alive and kicking. Sadly, I don't think that the trends will reverse. Still, you need to know about PEAR because there are many cases where a PEAR class is underlying your application or hosting platform. How to install PEAR with idempotency in Ansible[1]

  1. In my tests the 'and' trick for failed_when did not work because the new 2.x module does not have .stdout. There is only msg https://github.com/ansible/ansible-modules-extras/blob/devel/packaging/language/pear.py