]> granicus.if.org Git - php/commitdiff
Remove a bunch of old junk.
authorJames Gingerich <jimi@php.net>
Tue, 20 Jul 1999 01:15:34 +0000 (01:15 +0000)
committerJames Gingerich <jimi@php.net>
Tue, 20 Jul 1999 01:15:34 +0000 (01:15 +0000)
BUGS [deleted file]
CHANGES-3.0 [deleted file]
COPYING [deleted file]
EXTENSION_STATUS [deleted file]
TODO [deleted file]
WISHLIST [deleted file]
WISHLIST-3.1 [deleted file]
cvsusers [deleted file]
press-release-3.0.txt [deleted file]

diff --git a/BUGS b/BUGS
deleted file mode 100644 (file)
index 8966692..0000000
--- a/BUGS
+++ /dev/null
@@ -1,11 +0,0 @@
-If you think you've found a bug in PHP3, you can report it on the bug
-reporting page at:
-       http://www.php.net/
-
-Current Known Bugs:
-
-* split() function doesn't return regex errors nicely
-* Preprocessed scripts don't work with require() and define()
-* unset() doesn't actually erase the variables it just marks them as uninitialized
-* Some parts in the language core prevent more than 256 arguments in function
-  calls from being possible
\ No newline at end of file
diff --git a/CHANGES-3.0 b/CHANGES-3.0
deleted file mode 100644 (file)
index b3b9d8b..0000000
+++ /dev/null
@@ -1,624 +0,0 @@
-Noticeable Changes between PHP/FI 2.0 and PHP 3.0
-=================================================
-
-This file was designed to be viewed with a tab size of 4 characters.
-
-This file is divided into 4 sections:
-1.  Downwards incompatible language changes.  This section includes all of
-    the changes in the core language which may require people to modify
-    their scripts before using them with PHP 3.0.  It does NOT list
-    changes made in the behavior of specific functions.
-2.  New language features.  This section includes all of the new additions
-    to the core language, that may be used to enhance scripts designed for
-    PHP 3.0.  Likewise, it does not include a listing of new functions.
-3.  Structural changes not directly effecting the end user.  The core
-    of PHP 3.0 is a complete rewrite.  As such, many issues effecting
-    PHP/FI 2.0 were addressed and vastly improved in this version,
-    resulting in a much more stable and efficient implementation.  This
-    section lists these changes in design.
-4.  Other changes that don't fit in any of the above categories.
-
-Please remember that PHP 3.0's core is a complete rewrite, and thus,
-there may be other undocumented incompatibilities we haven't thought
-of ourselves.  If you think you've found a incompatibility (or a new
-feature) which is not listed here, please mail us at
-php-dev@php.iquest.net.
-
-
-
-                                                                                               - Zeev
-
-------------------------------------------------------------------------------
-
-Downwards incompatible language changes
-=======================================
-
-[1]    The close-PHP tag has changed from > to ?>
-
-       This means that instead of writing:
-
-       <?echo $title;>
-
-       You should write:
-
-       <?echo $title;?>
-
-       PHP3 also includes support for a longer-form start tag that is
-       XML-compliant:
-
-       <?php echo $title;?>
-
-       The ability to use the short start tag ('<?') can be turned on and
-       off using the short_tags() function. Whether it is enabled or not by
-       default is a compile-time option (normally set to enabled by default).
-
-
-[2]    Semicolons in if/elseif/else must be replaced with colons.
-
-       For example, the equivalent of:
-
-               if (expr);
-                 statements
-                 ...
-               elseif (expr);
-                 statements
-                 ...
-               else;
-                 statements
-               endif;
-
-       in PHP 3.0 would be:
-
-               if (expr):
-                 statements
-                 ...
-               elseif (expr):
-                 statements
-                 ...
-               else:
-                 statements
-               endif;
-
-       Note that the endif is followed by a semicolon and not a colon even in
-       PHP 3.0, which marks the end of the entire IF sentence.
-
-       Also note that the implementation of the colon-mode and curly-braces
-       mode in PHP 3.0 is identical, one isn't buggier than the other (note
-       that I'm not saying they're not buggy, though :)
-
-
-[3]    Semicolons in while loops must also be replaced with colons.
-
-       For example, the equivalent of:
-
-               while (expr);
-                 statements
-                 ...
-               endwhile;
-
-       in PHP 3.0 would be:
-
-               while (expr):
-                 statements
-                 ...
-               endwhile;
-
-       Note that the endwhile is followed by a semicolon and not a colon even
-       in PHP 3.0, which marks the end of the WHILE sentence.  As with the IF
-       statement, the implementation of the colon-mode and curly-braces mode
-       in PHP 3.0 is identical, one isn't buggier than the other.
-
-       Also note that failing to change the semicolon to a colon can result in
-       scripts that get stuck in the while loop because the loop-condition never
-       changes.
-
-
-[4]    $foo[0] is no longer identical to $foo.
-
-       In PHP/FI 2.0, a side-effect of the implementation caused $foo[0] to be
-       identical to $foo.  This is not the case in PHP 3.0.
-
-
-[5]    Expressions determine their types differently.
-
-       The way expressions are evaluated has changed radically in PHP 3.0.
-       Expressions are no longer given the type of the left argument, but are
-       assigned types taking both types into account, and regardless of which
-       is on the left side and which is on the right side.  On simple scripts
-       that should probably not effect you, but if you've relied on this fact
-       (even without realizing you do) it may change the way your scripts work.
-       Consider the next example:
-
-               $a[0]=5;
-               $a[1]=7;
-
-               $key = key($a);
-               while ("" != $key) {
-                       echo "$key\n";
-                       next($a);
-               }
-
-
-       In PHP/FI 2.0, this would display both of $a's indices.  In PHP 3.0, it
-       wouldn't display anything.  The reason is that in PHP/FI 2.0, because the
-       left argument's type was string, a string comparison was made, and indeed
-       "" does not equal "0", and the loop went through.  In PHP 3.0, when a
-       string is compared with an integer, an integer comparison is made (the
-       string is converted to an integer).  This results in comparing atoi("")
-       which is 0, and $key which is also 0, and since 0==0, the loop doesn't
-       go through even once.  The fix for this is simple, by replacing the
-       while statement with:
-
-               while ("" != stringval($key)) {
-
-       This would first convert the integer 0 to a string "0", and then
-       compare "" and "0", which are not equal, and the loop would go through
-       as expected.  As mentioned later, casting operators are supported in
-       PHP 3.0 for a quicker and more readable way of changing variables'
-       types. For example, you could use:
-
-               while ("" != (string)$key) {
-
-
-[6]    The structure of error messages has changed.
-
-       Although the error messages are usually more accurate, you won't be shown
-       the actual line of text and actual place in which the error occured.
-       You'll be supplied with the line number in which the error has occured,
-       though.
-
-
-[7]    The format string argument to echo is no longer supported.
-
-       Use printf(format,arg1,arg2,arg3,...) instead (unlimited arguments).
-
-
-[8]    The use of read-mode $array[] is no longer supported.
-
-       That is, you cannot traverse an array by having a loop that does $data =
-       $array[].  Use current() and next() instead.  Also, $array1[] = $array2
-       does not append the values of $array2 to $array1, but appends $array2
-       as the last entry of $array1 (see the multidimensional array support).
-
-
-[9]    Apache versions older than 1.2 are not supported anymore.
-
-       The apache module requires apache 1.2 or later (1.3-beta is supported).
-
-
-[10] Indirect references inside quoted strings
-
-       PHP2-style indirect reference inside quoted strings is no longer
-    supported.  That is, if $foo="bar", and $bar="abc", in PHP2,
-    "$$foo" would print out "abc".  In PHP3, this would print
-    "$bar" (the contents of $foo is replaced with "bar").
-    To use indirect reference in PHP3 inside quoted strings, you should use 
-    the new notation: "${$foo}".  The standard $$foo notation will work
-    outside of the quoted string.
-
-[11]
-               Some functions have changed names, are missing, or have been deprecated
-               by other functions
-
-       As a whole new rewrite, written by many more people and supporting many
-       more APIs than it's predecessor, there's a good chance some of the functions
-       you're used to from PHP/FI 2 aren't available in release 3, or have changed
-       names.  Many functions that do exist behave a bit differently, mainly
-       because they return different values for errors (false) but also for other
-       reasons.  We can't list all of these functions here, simply because drawing
-       a full comparison between the function sets of the two versions is way too
-       much work.  If a converted PHP/FI 2 script doesn't work for you, nothing
-       can replace the good old human eye going over the code, doublechecking
-       with the online manual that each function still does what you expected it
-       to do.
-
-[12]   Other incompatibilities.
-
-       It's not too unlikely that other documented behavior of PHP2 has changed
-       in this release.  If you think you've found an example, please mail
-       us at php-dev@php.iquest.net.  Even if you've found an undocumented
-       feature of PHP2 that stopped working in PHP3, we'd like to know about it
-       (although it's more than likely that it will not be supported).
-
-
-
-------------------------------------------------------------------------------
-
-
-New Language Features
-=====================
-
-[1]    Expressions
-
-       PHP 3.0 includes a rich implementation of expressions, much more advanced
-       than this of 2.0.  Just about any complex C-like or perl-like expression
-       would work.  Support was added for assignment operators (+=, -=, *= etc),
-       pre and post increment/decerement (e.g. $i++, ++$i) and the questionmark
-       operator ( (expr?expr:expr) ).  Every assignment is now an expression
-       with a value, which means stuff like $a = $b = $c = $d = 0;  would work.
-       It is difficult to describe the power of expressions within a few lines
-       of text, but if you're familiar with them, you probably get the picture.
-
-
-[2]    for loops are now supported.
-
-       for loops were fairly difficult to implement (in fact, we didn't find
-       any parallel interpreter that supports for loops anywhere (no, perl is
-       not an interpreter)).  The bottom line is that for loops work, and are
-       around 5% slower than comparable while loops (that may vary), but often
-       they're much nicer.
-
-       The syntax is identical to the one of C:
-
-               for (expr; expr; expr) statement;
-
-       or
-
-               for (expr; expr; expr) { statements ... }
-
-       The first expression is executed the first time the loop is encountered,
-       the loop is run as long as the second expression is evaluated as TRUE,
-       and after each iteration, the 3rd expression is evaluated.
-
-       Colon-mode FOR loops are also supported:
-       for (expr; expr; expr):
-               statements
-               ...
-       endfor;
-
-
-[3]    do..while(expr) loops are now supported.
-
-       Like with its C parallel, the statements inside a do..while loop are
-       run once the first time the loop is encountered, and then as long as
-       the expression evaluates as true.
-
-       For example:
-
-               do {
-                       statements;
-               } while ($i++ < $max);
-
-
-[4]    break and continue statements are now supported inside loops.
-
-       You can break out of loops, or continue to the next iteration of the
-       loop using these statements.  A special feature of PHP is the ability
-       to specify an expression argument to break or continue, which specifies
-       how many loops you want to break out from or continue to.  For example:
-
-               for ($i=0; $i<10; $i++) {
-                       for ($j=0; $j<10; $j++) {
-                               if ($j>5)
-                                       break;
-                               if ($i>5)
-                                       break 2;
-                       }
-               }
-       
-       The first break statement would end the inner loop every time $j is
-       greater than 5.  The second break statement would end both the inner
-       and outer loop when $i is greater than 5.
-
-       Note:  For this matter, switch statements are considered as loops.  So
-       if you write "break 2;" inside a switch statement, you would be asking
-       to break out of the switch, and the innermost loop in which is nested.
-
-
-[5]    Switched to C-style declaration of functions.
-
-       Here's a pretty useless function which makes a good example:
-
-               function concat($str1,$str2)
-               {
-                       return $str1.$str2;
-               }
-
-       NOTE:   The old style function definition is still supported, to
-                       allow easier upgrading from PHP/FI 2.0 scripts.  Simply
-                       change 'function' to 'old_function' for these functions.
-
-
-[6]    OOP support
-
-       Classes and inheritance are supported to a limited extent in PHP 3.0.
-       Here's how to declare a simple class:
-
-               class simple_class {
-                       var $property1,$property2;
-                       var $property3=5;
-
-                       function display() {
-                               printf("p1=%d, p2=%d, p3=%d\n",
-                                       $this->property1,
-                                       $this->property2,
-                                       $this->property3);
-                       }
-                       function init($p1,$p2) {
-                               $this->property1 = $p1;
-                               $this->property2 = $p2;
-                       }
-               };
-
-       Here's how to create an object of that class:
-
-               $obj = new simple_class;
-
-       At this point, $obj is an object with 2 uninitialized variables, 1
-       initialized variable, and 2 member functions.  No protection is made on
-       the internals of the object, and using its properties is simple:
-
-               $obj->property1 = 7;
-
-       would assign 7 to $property1 inside $obj.  Calling member functions is
-       also simple:
-
-               $obj->display()
-
-       would run the display() member function of $obj.  Note that the
-       implementation of display() uses the special variable $this, which is
-       replaced with the object the function is called on.
-
-       Inheritance is pretty simple too:
-
-               class complex_class extends simple_class {
-                       var $property4="test";
-
-                       function display() {
-                               printf("p1=%d, p2=%d, p3=%d, p4=%d\n",
-                                       $this->property1,
-                                       $this->property2,
-                                       $this->property3,
-                                       $this->property4);
-                       }
-               }       
-
-       Basically, the class complex_class inherits everything from its parent,
-       simple_class, except properties or member functions which override the
-       ones in the parent.  In this example, since we supply an alternative
-       display() function, it would be used with complex_class objects instead
-       of the display() function that was declared in simple_class.  On the other
-       hand, since we don't supply an alternative init() function, complex_class
-       objects would have the same init() function as simple_class objects do.
-
-       As with expressions, it's impossible to teach OOP in a few lines, and
-       personally I'm unclear as to how useful this would be in day to day
-       scripting.  If you like this, play with this until you figure it out :)
-
-       Objects can reside in arrays, and can contain arrays.  However,
-       a limitation of the current implementation doesn't allow an object
-       to contain an array of objects (actually, this is allowed, but
-       there's no way to address the properties of such an object directly,
-       but only indirectly).  For example, assuming $a[3] is an object,
-       $a[3]->b[2] is an object as well, you can't address the properties
-       of $a[3]->b[2] (i.e. you can't write $a[3]->b[2]->foo = "bar", for
-       instance).  
-
-
-[7]    Function pointers are now supported.
-
-       A simple illustrative example:
-
-               $func_ptr = "time";
-               $current_time = $func_ptr();
-
-       is identical to
-
-               $current_time = time();
-
-
-[8]    Indirect references are much more powerful.
-
-       For example, one can use the dollar operator an infinite amount of times:
-
-               $a = "b";
-               $b = "c";
-               $c = "d";
-               $d = "e";
-               $e = "Testing\n";
-
-               echo $$$$$a;
-
-       Would display $e's content, which is "Testing\n".
-
-       In addition, one can use complex expressions to generate variable names
-       using a perl-like notation:
-
-               $i="123";
-               ${"test".$i} = 5;
-
-       would assign 5 to $test123.
-
-[9]    A string concatenation operator was added, '+' no longer concatenates strings.
-
-       A perl-like string concatenation operator was added, the '.' operator.
-       It converts both of its arguments to strings, and concatenates them.
-       For example:
-
-               $result = "abcd".5;
-
-       assigns "abcd5" to result.  Note that under PHP 3.0, the '+' operator
-       no longer performs concatenation if its arguments are strings.  Use
-       the '.' operator instead.
-
-[10]   Supports passing function arguments by references instead of by value.
-
-       Support for passing function arguments by reference instead of by value
-       has been added.  This doesn't result in having to change the function
-       implementations in any way, but, when calling the function, you can
-       decide on whether the variable you supply would actually be changed by
-       the function, or a copy of it.
-
-       Example:
-
-               function inc($arg)
-               {
-                       $arg++;
-               }
-
-               $i=0;
-               inc($i);  # here $i in the outer scope wouldn't change, and remain 0
-               inc(&$i); # here $i is passed by reference, and would change to 1
-
-
-[11]   Support for multidimensional arrays.
-
-       (Or as Andi calls them, 'hyperdimensional variables'.)
-
-       The easiest way to define this support of PHP 3.0 is inductive -
-       arrays can contain any type of variables, including other arrays.
-       A simple example:
-
-               $a[0]=5;
-               $a[1]["testing"]=17;
-               $b["foo"]=$a;
-
-       Ok, so it may be not so simple.  Play with it, it's pretty powerful.
-
-
-[12]   Array initialization is now supported.
-
-       For example, let's say you want to initialize a lookup table to convert
-       number to month names:
-
-               $months = array("January", "February", "March",
-                                               "April", "May", "June", "July", "August",
-                                               "September", "October", "November", "December");
-
-       would assign $months[0] to be January, $months[1] to be February, etc.
-       Alternately, you may want the count to start at '1' instead of 0.
-       You can do so easily:
-
-               $months = array(1=>"January", "February", "March",
-                                               "April", "May", "June", "July", "August",
-                                               "September", "October", "November", "December");
-
-       Also, you can specify an index for every entry, not just the first one:
-
-               $first_names = array("Doe"=>"John", "Gates"=>"William",
-                                                       "Clinton"=>"Bill" });
-
-       would assign $first_names["Doe"]="John", etc.
-
-
-[13]   Perl style lists now supported.
-
-       Multiple values from arrays may now be assigned into several
-       variables using one assignment.  For example:
-       
-               $str = "johndoe:x:555:555:Doe, John:/home/johndoe:/bin/tcsh";
-               
-               list($username,$passwd,$uid,$gid,$realname,$homedir,$shell) = 
-                       explode(":",$str);
-       
-       Would assign 'johndoe' into $username, 'x' into $passwd, etc.
-
-
-[14]   Colons are supported in 'case' and 'default' statements.
-
-       For example:
-
-               switch($value) {
-                       case 'A':
-                               statement;
-                               break;
-                       case 'B':
-                               statement;
-                               break;
-                       case 'C':
-                               statement;
-                               /* fall-through */
-                       default:
-                               statement;
-               }
-       
-       Semicolons are still supported, but when writing new scripts, they
-       should be phased out in favour of colons.
-
-
-------------------------------------------------------------------------------
-
-
-Non Language Related New Features
-=================================
-
-[1]    Persistent resource lists.
-
-       In plain english this means that there's now an easy way of writing the
-       SQL drivers so that they don't open and close the SQL link every time,
-       but instead open it the first time it's required, and then use it on
-       every later hit.  As of PHP 3.0a1, only the MySQL, mSQL and PostgresSQL
-       drivers have been changed (rewritten) to take advantage of this option.
-       To use it, use mysql_pconnect() instead of mysql_connect() (or the
-       equivalents for the two other databases).
-
-
-[2]    Configuration file.
-
-       PHP now has its own configuration file, and many compile-time options
-       of PHP2 are now configurable at runtime.
-
-
-[3]    Syntax Highlighting.
-
-       A syntax highlighter has been built into PHP 3.0, which means PHP 3.0 can
-       display your code, syntax highlighted, instead of executing it.
-       There are currently two ways to use the syntax highlighter.  One is to
-       use the show_source() statement.  This statement is identical to the
-       include() statement, except instead of executing the file, it displays
-       its source syntax highlighted.
-       The second way is possible only when running as an apache module, and is
-       to define a special extension for PHP 3.0 source files (e.g. .php3s)
-       and instruct apache to automatically syntax highlight them.
-
-
-[4]    Loadable modules.
-
-       This would have a huge impact on the Windows version, and would probably
-       be used in the UNIX environment as well.  One can now add PHP internal
-       functions in runtime by loading a dynamic module.  This is known to work
-       under Solaris, Linux and Win32 at this time, but would be ported to any
-       other capable platform if an incompatability is found.
-
-
-------------------------------------------------------------------------------
-
-
-Other Interesting Issues
-========================
-
-
-[1]    Improved performance.
-
-       The performance of PHP 3.0 is much better than the one of PHP/FI 2.0.
-       Memory consumption has been dramatically reduced in many cases, due
-       to the use of an internal memory manager, instead of apache's pools.
-       Speedwise, PHP 3.0 is somewhere between 2 and 3 times faster than
-       PHP/FI 2.0.
-
-
-[2]    More reliable parser.
-
-       After PHP 3.0 is well tested, it'll be pretty safe to say that it's
-       more reliable than PHP/FI 2.0 is.  While PHP/FI 2.0 performed well on
-       simple, and fairly complex scripts, a fundamental design difference
-       from PHP 3.0 makes it more prone to errors.  In PHP 3.0, obscure parser
-       problems are much less likely.
-
-
-[3]    Improved C API.
-
-       If you're a C coder, adding functionality to PHP was never easier.
-       A pretty well documented API is available (apidoc.txt), and you no longer
-       have to touch the parser or scanner code when adding your function.
-       Also, it's more complicated to 'go wrong' when implementing a PHP3
-       function than it was in PHP2 (no stack to maintain) - but of course,
-       you can mess up here too :)
-
-
-[4]    Name change.
-
-       PHP/FI 2.0 was renamed to PHP 3.0, and the meaning has changed from
-       'Personal Home Pages / Forms Interpreter' to 'PHP: Hypertext Preprocessor'.
-       'Personal' home pages was an understatement for PHP/FI 2.0, and is
-       definitely an understatement for PHP 3.0.
diff --git a/COPYING b/COPYING
deleted file mode 100644 (file)
index a43ea21..0000000
--- a/COPYING
+++ /dev/null
@@ -1,339 +0,0 @@
-                   GNU GENERAL PUBLIC LICENSE
-                      Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
-                          675 Mass Ave, Cambridge, MA 02139, USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-                           Preamble
-
-  The licenses for most software are designed to take away your
-freedom to share and change it.  By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users.  This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it.  (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.)  You can apply it to
-your programs, too.
-
-  When we speak of free software, we are referring to freedom, not
-price.  Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
-  To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
-  For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have.  You must make sure that they, too, receive or can get the
-source code.  And you must show them these terms so they know their
-rights.
-
-  We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
-  Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software.  If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
-  Finally, any free program is threatened constantly by software
-patents.  We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary.  To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
-  The precise terms and conditions for copying, distribution and
-modification follow.
-\f
-                   GNU GENERAL PUBLIC LICENSE
-   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
-  0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License.  The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language.  (Hereinafter, translation is included without limitation in
-the term "modification".)  Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope.  The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
-  1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
-  2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
-    a) You must cause the modified files to carry prominent notices
-    stating that you changed the files and the date of any change.
-
-    b) You must cause any work that you distribute or publish, that in
-    whole or in part contains or is derived from the Program or any
-    part thereof, to be licensed as a whole at no charge to all third
-    parties under the terms of this License.
-
-    c) If the modified program normally reads commands interactively
-    when run, you must cause it, when started running for such
-    interactive use in the most ordinary way, to print or display an
-    announcement including an appropriate copyright notice and a
-    notice that there is no warranty (or else, saying that you provide
-    a warranty) and that users may redistribute the program under
-    these conditions, and telling the user how to view a copy of this
-    License.  (Exception: if the Program itself is interactive but
-    does not normally print such an announcement, your work based on
-    the Program is not required to print an announcement.)
-\f
-These requirements apply to the modified work as a whole.  If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works.  But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
-  3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
-    a) Accompany it with the complete corresponding machine-readable
-    source code, which must be distributed under the terms of Sections
-    1 and 2 above on a medium customarily used for software interchange; or,
-
-    b) Accompany it with a written offer, valid for at least three
-    years, to give any third party, for a charge no more than your
-    cost of physically performing source distribution, a complete
-    machine-readable copy of the corresponding source code, to be
-    distributed under the terms of Sections 1 and 2 above on a medium
-    customarily used for software interchange; or,
-
-    c) Accompany it with the information you received as to the offer
-    to distribute corresponding source code.  (This alternative is
-    allowed only for noncommercial distribution and only if you
-    received the program in object code or executable form with such
-    an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it.  For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable.  However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-\f
-  4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License.  Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
-  5. You are not required to accept this License, since you have not
-signed it.  However, nothing else grants you permission to modify or
-distribute the Program or its derivative works.  These actions are
-prohibited by law if you do not accept this License.  Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
-  6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions.  You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
-  7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License.  If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all.  For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices.  Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-\f
-  8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded.  In such case, this License incorporates
-the limitation as if written in the body of this License.
-
-  9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time.  Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number.  If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation.  If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
-  10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission.  For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this.  Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
-                           NO WARRANTY
-
-  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
-  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
-                    END OF TERMS AND CONDITIONS
-\f
-       Appendix: How to Apply These Terms to Your New Programs
-
-  If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
-  To do so, attach the following notices to the program.  It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
-    <one line to give the program's name and a brief idea of what it does.>
-    Copyright (C) 19yy  <name of author>
-
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 2 of the License, or
-    (at your option) any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the Free Software
-    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
-    Gnomovision version 69, Copyright (C) 19yy name of author
-    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
-    This is free software, and you are welcome to redistribute it
-    under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License.  Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary.  Here is a sample; alter the names:
-
-  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
-  `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
-  <signature of Ty Coon>, 1 April 1989
-  Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs.  If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library.  If this is what you want to do, use the GNU Library General
-Public License instead of this License.
diff --git a/EXTENSION_STATUS b/EXTENSION_STATUS
deleted file mode 100644 (file)
index 48be544..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-The core of PHP 3.0 is considered to be stable at this time.  However, some of
-the modules that are bundled with it are still undergoing development, or
-contain known bugs.  The purpose of this file is to document the status of
-each module (extension).  Patches to unstable modules will be available through
-the CVS, and through periodic maintenance releases.
-
-Stability scale:
-Rock solid - We believe it's safe to base a production site on it.
-Stable     - It should be safe to base a production site on it.
-             Isn't rated as rock-solid because it contained problems
-             in the not-so-far past, or doesn't have enough users
-             to test it to know it's rock solid.
-Beta       - This module probably contains bugs, sometimes even known
-             bugs.  You can give it a try and there's a good chance
-             it'll work fine, but it might not be a good idea to base
-             a production site on it.
-Alpha      - This module is in initial development steps.  Don't trust
-             it, play with it at your own risk.
-Deprecated - This module is only available for downwards compatability,
-             and will not be supported in any way.  The code quality
-             is usually around the Beta status.
-             
-The standard disclaimers apply, that is, if a rock-solid module blows up on
-you and ruins your site, nobody in the PHP development team is responsible.
-We'll probably try to help, though.
-
-
-Extension Name            Status            Comments
------------------------------------------------------------------------------
-DBM                     Rock Solid      That relies on a working DBM library.
-                                        The flatfile support is probably not
-                                        as stable.
-MySQL                   Rock Solid
-mSQL                    Rock Solid
-Sybase DB               Stable
-Sybase CT               Stable
-BC Math                 Rock Solid      Arbitary precision math library
-Postgres SQL            Stable          Postgres 6.2 and earlier is stable,
-                                        but problems were reported with 6.3
-Debugger                Beta
-Unified ODBC            Beta
-Solid                   Deprecated      Replaced by Unified ODBC
-iODBC                   Deprecated      Replaced by Unified ODBC
-Adabas                  Deprecated      Replaced by Unified ODBC
-LDAP                    Stable          Lightweight Directory Access Protocol.
-dBase
-FilePro
-Oracle                  Beta            Not tested thoroughly enough.
-IMAP                    Beta            Bundled in the dl/ directory
-SNMP                    Stable          Very solid, but also very limited.
-                                        Only supports GET and WALK requests.
-Raima Velocis           Beta            If use with Unified ODBC, replaced
-                                        by Unified ODBC
-Raima Velocis           Alpha           If use without Unified ODBC
diff --git a/TODO b/TODO
deleted file mode 100644 (file)
index 5a35e41..0000000
--- a/TODO
+++ /dev/null
@@ -1,100 +0,0 @@
-$Id$
-
-+----
-| * -- to be done
-| ? -- to be done sometime if possible
-| P -- in progress (name should appear in parentheses after task)
-| D -- delayed until later date (specify in parentheses after task)
-| U -- done, untested
-| V -- done
-+----
-
-Configuration Issues
---------------------
-* properly detect dbm routines when they're in libc
-* add the appropriate #define magic for memmove and friends (see
-  GNU autoconf info pages for details)
-* make it possible to disable support for some extensions (gd, dbm)
-* make it possible to build selected extensions so they are
-  dynamically-loadable
-
-Core Language Issues
---------------------
-* go through PHP2's php.h and see how each special #define might be
-  applied/supported in PHP3
-* move Treatdata() to language-scanner.lex where hash_environment()
-  is called including a decision about priority of variables and moving
-  Treatdata() to use hash_add() instead of hash_update() for insertions
-  to the symbol table.
-* go through FIXME and XXX lines (egrep 'FIXME|XXX' *.[ch])
-* make lexer and parser thread-safe
-* verify that binary strings are handled correctly
-V don't evaluate truth expressions more than once
-V make unset() work on arrays (tricky)
-
-Core Functions
---------------
-* go through all file functions and make sure they are opened in binary
-  mode in win32 if needed (ie copy)
-* go through all functions and look at PHP_SAFE_MODE issues
-* have a look at return codes of fsockopen() function - we should
-  probably RETURN_FALSE and then set an error code somewhere (Rasmus)
-* go through FIXME and XXX lines (egrep 'FIXME|XXX' functions/*.[ch])
-* add user-level flock() implementation to let people lock and unlock files 
-* add "'" modifier to sprintf to group thousands by comma
-* Add an improved eval() that doesn't "leak"
-? sorting of objects with a user-defined comparison function (like Perl)
-  (this shouldn't be expected before 3.1, if at all).
-
-
-Extensions
-----------
-* add version strings for all extensions
-* Oracle persistent connections
-U gd support for windows
-* Illustra support (APIS)
-? CQL++ support (http://www.cql.com/)
-? GNU SQL support (does anybody actually use this?)
-? DB2 support (http://www.sleepycat.com/)
-? Shore support (http://www.cs.wisc.edu/shore/)
-? PGP Interface (use PGPlib?)
-? more Perl-like regex handling?
-
-Server Support
---------------
-P ISAPI (Shane)
-  * process cookies
-  * blocking functions
-  * make sure it's Microsoft-clean so it can be used with other ISAPI
-    implementations
-* WSAPI
-* NSAPI
-  * process cookies
-  * check POST method handling code
-  * use Netscape memory allocation inside emalloc() and company
-* FastCGI support - see http://fastcgi.idle.com/
-
-Win32 Specific
---------------
-* implement some kind of syslog->file log support for win95.
-* change all file open/read/write functions from c library to win32 
-  api file functions.  The win32 api functions handle both disk files
-  and network files.  This will allow include and require to use http
-  or ftp files as the unix version does, and do away with my
-  workaround to support this.  (3.1?)
-* implement symlinks via windows shell links (shortcuts).  This will
-  work only at the script level and is not a c language level port.
-
-Testing
--------
-* truss/strace a typical PHP request and see if there are some system
-  calls that could be optimized out
-* verify that regression tests exist for all core functions
-
-Miscellaneous
--------------
-* remove hard-coded compilation options
-? locale issues - funny things happen in PHP2 when the locale is set to
-  use , instead of . as the decimal seperator.  ie. 1.5+1.5 = 1
-? SSI->PHP3 conversion script
-? SQL-based access logging (start with examples/log-*.php3)
diff --git a/WISHLIST b/WISHLIST
deleted file mode 100644 (file)
index 99d3876..0000000
--- a/WISHLIST
+++ /dev/null
@@ -1,17 +0,0 @@
-- Persistant per-process scripting
-
-  Apache 1.3 has added things that makes this much easier than before.
-  The module structure now contains a child_init hook and a child_exit 
-  hook where you can register functions to be called when an httpd
-  process starts up and when one shuts down (due to MaxRequestsPerChild 
-  or a Kill).  The only real trick now is to come up with some sort of
-  syntax for specifying what to do from the child_init call and the
-  child_exit call.
-
-  One idea is to be able to add a <PHP>...</PHP> block to the Apache
-  httpd.conf file which would somehow define a series of PHP statements
-  to be executed from the child_* calls.  One for startup and another
-  block for shutdown.  These blocks would work with the per-process
-  memory pool, so any variables initialized here would have a lifespan
-  equal to that of the httpd process.  Basically request-spanning
-  global variables.
diff --git a/WISHLIST-3.1 b/WISHLIST-3.1
deleted file mode 100644 (file)
index 1320f71..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-V Do yystype_ptr and hash pointers the right way - use the hash
-  pointer and the bucket pointer, instead of a pointer to the data.
-  Allows for a real unset() among other things.
-V Improve performance of simple variable lookups
-* Improve string performance by using smarter memory allocation methods
-- Improve preprocessor (handle require() efficiently), possibly handle
-  automatic preprocessing for sites based on timestamp
-V Use a reference count mechanism to prevent unnecessary duplication of data.
-* Write and stabilize a complete persistent data API.  Feature wishlist:
-  - memory manager using shared memory
-  - process-global symbol table
-  - make api inter-thread capable for win32 and some far off future where unix
-    version will be multithreaded
-V Handle out of memory (inside emalloc()?)
-* Try to figure out a way to declare *real* global variables
-* Improve the reading of configuration variables into php3_ini (generalize)
-  Make it possible to implement config_get("configuration_variable") and
-  config_set("configuration_variable","value") that'll work with *php3_ini*,
-  not the configuration hash!
-* Bundle some nice classes (like Bjørn's graphing class)
-* Bundle some database abstraction classes
-* Distribute binaries
-* Clean up API and modules to make .so modules portable across CGI and server
-  binaries
-* dbm cleanup (don't arbitrarily pick, and support multiple concurrent formats)
-* start system defines so that we can move away from the standard c lib on
-  windows to the win32 lib.  (file functions primarily)
-* COM implementation so php can be used as an asp language (cant find any docs
-  on how this is done though)
-* Clean up the file structure so the top-level directory isn't such a mess.
-* Bring the module concept to maturity: use libtool and make it
-  possible to decide at compile time whether you want to compile a
-  module statically or dynamically.  Remove the distinction between
-  the stuff currently in dl/ and functions/.
-* a way of letting each module specify its options, so ini file options and
-  Apache directives can be set up from the same specification.
-V Make it possible to declare smarter user functions: (done in 3.0)
-  - Optional parameters
-  - Parameters that are forced/prefered by reference
-* Make object parsing more general, and allow nested arrays/objects with
-  unlimited levels.
-V Make it possible to copy references of variables.
-* data tainting (like perl -T)
-* multi-dimensional array support in GET/POST/COOKIE handling code
-* Persistent functions and classes
-* odbc_fetch_assoc
-* Add env handling to gpc_order
-* Populate track_vars regardless of gpc_order
-* a real exec() function
-* Support passing arguments to functions by name (e.g. foo(arg1 => "bar", arg2 => "foobar"))
-* Add an optional setting to destroy persistent resources if a PHP script terminates
-  abnormally
-V COM automation support for Win32
-? Add a setting for making function names case sensitive
-* stat() files before feeding them to flex - it doesn't handle special files very well
diff --git a/cvsusers b/cvsusers
deleted file mode 100644 (file)
index 9763c24..0000000
--- a/cvsusers
+++ /dev/null
@@ -1,62 +0,0 @@
-CVS login     Name            Email                      Works on
-andi          Andi Gutmans    andi@php.net               Core + API
-jim           Jim Winstead    jimw@php.net               Everything
-rasmus        Rasmus Lerdorf  rasmus@php.net             Everything
-shane         Shane Caraveo   shane@php.net              WIN32 + API
-ssb           Stig Bakken     stig@php.net               Everything
-zeev          Zeev Suraski    zeev@php.net               Everything
-jaakko        Jaakko Hyvatti  jaakko@hyvatti.iki.fi      Everything
-veebert       Rex Logan       veebert@dimensional.com    IMAP
-chad          Chad Robinson   chadr@brttech.com          Documentation
-myddryn                                                  PostgreSQL
-wojtek
-mitch         Mitch Golden                               Oracle
-brian
-lr            Lachlan Roche   lr@www.wwi.com.au          MD5
-damian
-ian
-jah           Jouni Ahto      jah@cultnet.fi             Postgres, Informix
-adam
-amitay        Amitay Isaacs   amitay@w-o-i.com           LDAP
-dizzy
-mark
-guy
-jeffhu        Jeffrey Hulten  jeffh@premier1.net         WIN32 + modules(?)
-eschmid       Egon Schmid     eschmid@delos.lf.net       Documentation
-cslawi        Torben Wilson   torben@netmill.com         Documentation
-bwk  
-eric
-tcobb         Troy Cobb                                  www
-gareth                                                   www
-willer        Steve Willer    willer@interlog.com        pack
-cmv           Colin Viebrock  cmv@privateworld.com       www
-soderman
-tin
-musone        Mark Musone     musone@afterfive.com       IMAP
-abelits       Alex Belits     abelits@phobos.illtel.denver.co.us fhttpd module
-ars           Ariel Shkedi    ars@ziplink.net            setup
-mag           Nikolay P. Romanyuk  mag@redcom.ru         Raima DB
-rse           Ralf S. Engelschall rse@engelschall.com    Apache configuration
-sr            Stefan Roehrich sr@linux.de                zlib module
-owl           Igor Kovalenko  owl@infomarket.ru          QNX support
-pcurtis       Paul Curtis     pcurtis@netscape.com       NSAPI work (??)
-lynch         Richard Lynch   lynch@lscorp.com           Documentation
-steffann      Sander Steffann steffann@nederland.net     Safe Mode
-wdiestel      Wolfram Diestel wdiestel@debis.com         Oracle WebServer cartridge
-fmk           Frank M. Kromann fmk@businessnet.dk        Direct MS-SQL, NaVision, Lotus Notes
-steinm        Uwe Steinmann   Uwe.Steinmann@fernuni-hagen.de  Hyperwave Module
-danny         Danny Heijl     Danny.Heijl@cevi.be        Informix
-kara          Andreas Karajannis Andreas.Karajannis@gmd.de ODBC, Oracle
-nyenyon       Christian Cartus chc@idgruppe.de           Informix
-kk            Kristian Köhntopp kk@shonline.de        Documentation
-ted           Ted Rolle       ted.rolle@usa.net          Documentation
-holger        Holger Zimmermann  zimpel@t-online.de      Pi3Web support
-sgk           Shigeru Kanemoto  sgk@happysize.co.jp      Japanese language support
-jimjag        Jim Jagielski   jim@jaguNET.com            Misc scraps
-martin        Martin Kraemer  Martin.Kraemer@Mch.SNI.De  EBCDIC (BS2000 mainframe port)
-kwazy         Landon Bradshaw landon@bradshaw.org        Documentation
-thies         Thies C. Arntzen thies@digicol.de          implement IPTC reader, maybe some oracle stuff
-cschneid      Christian Schneider cschneid@relog.ch      gzip run-time encoding of output stream
-tommay        Tom May         tom@go2net.com             Sybase-CT
-swilliam      Steve Williams  swilliam@empress.com       Empress support in unified ODBC
-sas           Sascha Schumann sas@schell.de              Various tweaks
diff --git a/press-release-3.0.txt b/press-release-3.0.txt
deleted file mode 100644 (file)
index afef4b0..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-
-                        FOR IMMEDIATE RELEASE
-
-                           PHP 3.0 RELEASED
-
-June 6, 1998 -- The PHP Development Team announced the release of
-PHP 3.0, the latest release of the server-side scripting solution already
-in use on over 70,000 World Wide Web sites.
-
-This all-new version of the popular scripting language includes support
-for all major operating systems (Windows 95/NT, most versions of Unix,
-and Macintosh) and web servers (including Apache, Netscape servers,
-WebSite Pro, and Microsoft Internet Information Server).
-
-PHP 3.0 also supports a wide range of databases, including Oracle, Sybase,
-Solid, MySQ, mSQL, and PostgreSQL, as well as ODBC data sources.
-
-New features include persistent database connections, support for the
-SNMP and IMAP protocols, and a revamped C API for extending the language
-with new features.
-
-"PHP is a very programmer-friendly scripting language suitable for
-people with little or no programming experience as well as the
-seasoned web developer who needs to get things done quickly.  The
-best thing about PHP is that you get results quickly," said
-Rasmus Lerdorf, one of the developers of the language.
-
-"Version 3 provides a much more powerful, reliable and efficient
-implementation of the language, while maintaining the ease of use and 
-rapid development that were the key to PHP's success in the past", 
-added Andi Gutmans, one of the implementors of the new language core.
-
-"At Circle Net we have found PHP to be the most robust platform for
-rapid web-based application development available today," said Troy
-Cobb, Chief Technology Officer at Circle Net, Inc.  "Our use of PHP
-has cut our development time in half, and more than doubled our client
-satisfaction.  PHP has enabled us to provide database-driven dynamic
-solutions which perform at phenomenal speeds."
-
-PHP 3.0 is available for free download in source form and binaries for
-several platforms at http://www.php.net/.
-
-The PHP Development Team is an international group of programmers who
-lead the open development of PHP and related projects.
-
-For more information, the PHP Development Team can be contacted at
-core@php.net.