Re: PEAR website

From: Date: Sun, 15 Jul 2001 14:57:37 +0000
Subject: Re: PEAR website
References: 1  Groups: php.pear.dev 
Request: Send a blank email to pear-dev+get-779@lists.php.net to get a copy of this message
Martin Jansen wrote: > > Hi, > > are there currently any plans, how the PEAR modules > are going to be listed on the PEAR website? Stig? There is a browsing script that looks pretty much like any catalog browser. It uses the database (currently mysql, table defs in pearweb/sql/). We're very CVS focused here now, and that's good for the devel process, but for the release process my intention is to have people register and upload the release in the database at pear.php.net. It can be done through a command-line tool (I implemented a "test of concept" script for uploading throgh xml-rpc, see pearweb/public_html/xmlrpc.php and pearweb/include/pear-database.php. So the plan is to first of all offer a web interface where each maintainer can "officially release" a new version of a package, and second to have an xml-rpc interface for the same operations (so IDEs or other online systems can do the same thing or build services on top). To bootstrap this we need to nail a release tagging standard for the "pear" module at cvs.php.net (people not using this server may of course do whatever they want). That way we can build a script that checks which releases exist of each package and populate the database with real data, and build package tarballs. Tagging standard: I suggest we use "V_<version>_RELEASE" for the release itself, "V_<version>_QA" for release-candidate branches (optional of course) and "V_<version>_MAINT" for maintenance brances (also optional). Maint branches are for the cases where you get important bugfixes and want to release a "pl1", but your main trunk already has too many changes in it. Then you start a MAINT brach at the RELEASE tag, and do patchlevel fixes and releases on that branch. Short version of release process (say I want to release Money_Fast 1.2): 1. From the pear/Money_Fast dir, I run "cvs tag V_1_2_RELEASE" 2. With the web interface, I log in, choose my Money_Fast package and say I want to release Money_Fast 1.2, tag it as "stable" and enter my release notes 3. Unless I upload the tgz myself, the web interface checks out V_1_2_RELEASE from cvs, runs "pear package". Then the tgz is moved to the right directory and finally my release notes etc. are submitted into the database. 4. Money_Fast is now visible in the package browser, a notice can be sent out to a pear-announce list, freshmeat etc. - Stig

« previous php.pear.dev (#779) next »