Hello!

Here is the patch for including PECL functions in version information
in PHP documentation to achieve e.g.
    "apd_breakpoint (PECL)" instead of
    "apd_breakpoint (no version information, might be only in CVS)" or
    "bzclose (PHP 4 >= 4.0.4, PHP 5, PECL)" instead of
    "bzclose (PHP 4 >= 4.0.4, PHP 5)".

I tested it and it seems it works well.

Jakub Vrana
Index: genfunclist
===================================================================
RCS file: /repository/functable/genfunclist,v
retrieving revision 1.13
diff -u -r1.13 genfunclist
--- genfunclist 23 Oct 2003 07:10:15 -0000      1.13
+++ genfunclist 30 Dec 2004 10:02:33 -0000
@@ -5,7 +5,7 @@
 
 # for the releases we do not replace informations
 # already available
-for version in $versions php_3_cvs php_4_cvs php_5_cvs
+for version in $versions php_3_cvs php_4_cvs php_5_cvs pecl_cvs
 do
        echo -n "parsing version $version ... "
                
@@ -53,9 +53,11 @@
        update funclist set versionid=399 where version='php_3_cvs';
        update funclist set versionid=499 where version='php_4_cvs';
        update funclist set versionid=599 where version='php_5_cvs';
+       update funclist set versionid=10099 where version='pecl_cvs';
        update funcimp  set versionid=399 where version='php_3_cvs';
        update funcimp  set versionid=499 where version='php_4_cvs';
        update funcimp  set versionid=599 where version='php_5_cvs';
+       update funcimp  set versionid=10099 where version='pecl_cvs';
        delete from funclist where function like "\t%";      
        delete from funclist where function like "";      
   delete from funclist where alias_for='warn_not_available';
Index: update.all
===================================================================
RCS file: /repository/functable/update.all,v
retrieving revision 1.12
diff -u -r1.12 update.all
--- update.all  23 Oct 2003 07:13:54 -0000      1.12
+++ update.all  30 Dec 2004 10:13:58 -0000
@@ -87,6 +87,15 @@
     cvs -d ":pserver:[EMAIL PROTECTED]:/repository" get -d php_5_cvs -r HEAD 
php-src
   fi
        
+  # getting PECL snapshot
+  echo updating PECL cvs
+  if [ -d pecl_cvs ]
+  then
+    (cd pecl_cvs; cvs update 2>&1 | grep -v "^. pecl_cvs" | grep -v Updating)
+  else
+    cvs -d ":pserver:[EMAIL PROTECTED]:/repository" get -d pecl_cvs pecl
+  fi
+       
        # getting current manual snapshot
   echo updating phpdoc cvs
        if [ -d phpdoc ]
Index: lib/doc_versions.php
===================================================================
RCS file: /repository/functable/lib/doc_versions.php,v
retrieving revision 1.3
diff -u -r1.3 doc_versions.php
--- lib/doc_versions.php        16 Apr 2004 16:38:57 -0000      1.3
+++ lib/doc_versions.php        30 Dec 2004 09:15:44 -0000
@@ -66,6 +66,19 @@
        }
        mysql_free_result($result);
 
+       $result = mysql_query("SELECT function
+                           FROM funclist 
+                          WHERE versionid >= 10000
+                            AND versionid  < 10100
+                       GROUP BY function
+                        ");
+       if(!$result) { echo mysql_error(); exit; }
+       while ($row=mysql_fetch_array($result)) {
+               $func[$row["function"]] = true;
+               $pecl[$row["function"]] = true;
+       }
+       mysql_free_result($result);
+
 
        foreach($func as $key => $dummy) {
                $vers = array();
@@ -80,7 +93,7 @@
                        } else if($min==99){
                                $vers[3].=" CVS only";
                        } else {
-                               if($max==99) { $vers[3].=">= ".$ver[$min+300]; }
+                               if($max==99) { $vers[3].=" >= ".$ver[$min+300]; 
}
                                else if ($min==$max) 
{$vers[3].=$ver[$min+300]." only";}
                                else { $vers[3]=$ver[$min+300]." - 
".$ver[$max+300]." only";}
                        }
@@ -89,14 +102,14 @@
                if(isset($min4[$key])) {
                        $min = $min4[$key]-400;
                        $max = $max4[$key]-400;
-                       $vers[4]="PHP 4 ";
+                       $vers[4]="PHP 4";
                        if($min==0) {
                                if($max==99) { ; }
                                else { $vers[4].=" <= ".$ver[$max+400];}
                        } else if($min==99){
                                $vers[4]="PHP 4 CVS only";
                        } else {
-                               if($max==99) { $vers[4].=">= ".$ver[$min+400]; }
+                               if($max==99) { $vers[4].=" >= ".$ver[$min+400]; 
}
                                else if ($min==$max) 
{$vers[4].=$ver[$min+400]." only";}
                                else { $vers[4]=$ver[$min+400]." - 
".$ver[$max+400]." only";}
                        }
@@ -106,6 +119,10 @@
                        $vers[5] = "PHP 5";
                }
                
+               if(isset($pecl[$key])) {
+                       $vers["pecl"] = "PECL";
+               }
+               
                $doc_version[$key] = join(", ", $vers);
        }
 

Reply via email to