• Save
PEAR2 & Pyrus - The look ahead
Upcoming SlideShare
Loading in...5

PEAR2 & Pyrus - The look ahead



Ever wondered what PEAR2 and Pyrus are all about ? ...

Ever wondered what PEAR2 and Pyrus are all about ?
Want to know what they introduce and improve upon the old PEAR, well look no further. A core member of the PEAR community will lead the attendees through the maze and enlighten them about all this and more.



Total Views
Views on SlideShare
Embed Views



2 Embeds 13

http://www.slideshare.net 12
http://b.hatena.ne.jp 1



Upload Details

Uploaded via as OpenOffice

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment
  • Sandbox available to all
  • The default exception is good enough Exception implement an interface, each package has their own base exception namespace PEAR2PackageName; interface Exception {}
  • Uses OpenSSL2 PKCS#12 and X.509 certificates for package signing and verification
  • Smaller / Faster: Uses internal PHP 5.3+ feature to drop code size Robus: Uses XML and Sqlite3 for redundant register, can recover corrupt registries and so on
  • • Build process is easier then PEAR1, no more editing XML files • Code layout has to follow the PEAR2 rules • Project info goes in Readme file • Developer list goes in Credits file • Release notes go in Release-0.1.0 file • Run makepackage.php • Get a package

PEAR2 & Pyrus - The look ahead PEAR2 & Pyrus - The look ahead Presentation Transcript

  • PEAR2 & Pyrus, The Look Ahead
  • Head of R&D at echolibre , pear extraordinaire, author and from Iceland Head of R&D at echolibre , pear extraordinaire, published author and an Icelander Who is Helgi ? Head of R&D at echolibre , pear extraordinaire, author and from Iceland
  • What is PEAR today
    • Structured library
    • Distribution system
    • Standards
    • Community
  • PEAR - New things
    • PEAR Group elected by developers
    • Mirrors
    • More QA (Test coverage, Doc coverage)
    • Documentation
  • PEAR - Problems
    • Documentation
    • High bus factor
    • Attracting new people
    • Image issues
  • PEAR2 Dissected
  • What is PEAR2
    • Concept overhaul of PEAR
    • PHP 5.3+
    • New Installer
  • New proposal process
    • New packages go into the Sandbox
    • Channel for stable packages only
    • Sandbox to main channel at beta
  • From sandbox to production
    • Complete-sih documentation
    • 50%+ code coverage in unit tests
    • API approved by other developers
    • Final package name
  • Documentation with PhD
    • Uses the new awesome PhD
    • Still Docbook
    • Easy to setup
    • Integration of full books possible (TDG)
  • Documentation with PhD The PEAR manual is built in 5 minutes, not hours !
  • Exceptions
    • No base exception to extend from
    • SPL exceptions encouraged
  • Include / Require Once
    • Not allowed !
    • Users given the choice
  • Include / Require Once
    • PEAR2 Autoload
    • allfiles.php – Includes everything
    • Include files that are highly tweaked
  • Unzip and go
    • Classical unzip just works
    • Extracted packages can be upgraded
  • Namespaces
      Will be used in PEAR2
  • Namespaces Namespace PEAR2; class MyClass {} Namespace PEAR2HTTP; class Request {} Class: PEAR2HTTPRequest Package Name: PEAR2_HTTP_Request
  • PEAR Pyrus Pyrus_Developer
  • The new installer
    • Easier to use
    • No installation of the installer just grab phar
    • Capable of packaging entire apps in phars
    • Can manage multiple installed PEAR trees
  • The new installer
    • Custom tree can use deps from the system
    • Easy packaging when using PEAR2 svn layout
    • More security
  • The new installer
    • Smaller
    • Faster
    • More robust
    • Better handling of PECL
    • Easy to embed in your app
  • Status
    • Waiting for PHP 5.3.1
    • Finishing touches on pear2.php.net
    • Almost ready for alpha!
    • 80% Test Coverage
  • How to use
    • php pyrus.phar command
    • php pyrus.phar [directory] command
  • Pyrus_Developer
    • generate-pear2
    • make
    • package
    • generate-ext
    • pickle
    • build
  • Handling package xml files
    • Use the standard directory structure
    • Package info goes into README
    • Developer info goes into CREDITS
    • Release notes go into RELEASE-0.1.0
    • Run a 20 line package.php
    • Voila ! Package is created
  • Simple Channel Server
    • PEAR Channel info REST server
    • No dependencies except for pyrus
    • Builds static XML and package files
    • No web frontend
  • Questions? Email: [email_address] Twitter: @h http://joind.in/talk/view/955