Hi all,

I've added David and Zeev's suggestion and added a little.
Please fix/add/comment. Thank you.

----------------------------------------------------------------
Submitting Patch for PHP
========================

This document describes how to submit patch for PHP. Since you are
reading this document, you are willing to submit patch for PHP!
Please keep reading! Submitting patch for PHP is easy.

How to create patch?
--------------------
We are working with CVS. You need to get CVS source to create patch
that we accept.  Visit http://www.php.net/anoncvs.php to get CVS
source. You can check out older versions, but make sure you get
default branch (i.e. Do not use -r option when you check out CVS
source)

Now you are ready to create patch. Modify source to fix bugs in PHP or
add new feature to PHP. After you finished editing, please test your
patch. Read README.TESTING for testing.

After you finish testing your patch, take diff file using
"cvs diff > your.patch" command.

Read README.TESTING for submitting test script for your patch. This is
not strictly required, but it is preferred to submit test script along
with your patch. Making new test script is very easy. It help us to
understand what you have been fixed or added to PHP.


Tips for creating patch
-----------------------
If you would like to fix multiple bugs. It is easier for us if you
could create 1 patch for 1 bugs, but it's not strictly required.

If you would like change/add many lines, you may better to ask module
maintainer and/or [EMAIL PROTECTED]  Official module maintainers
can be found in EXTENSIONS file in PHP source.


Recommended CVS client settings for getting patch file
------------------------------------------------------
Recommended ~/.cvsrc file setting is:
------
cvs -z3
update -d -P
checkout -P
diff -u -b -w -B
------
diff -u -b -w -B means:
  -b     Ignore changes in amount of white space.
  -B     Ignore changes that just insert or delete blank lines.
  -u     Use the unified output format.
  -w     Ignore white space when comparing lines.

With this CVS setting, you don't have to worry about adding/deleting
newlines and new spaces.


Check list for submitting patch
-------------------------------
  - Did you run "make test" to check if your patch didn't break
    other features?
  - Did you compile PHP with --enable-debug and check php/webserver
    error logs when you test your patch?
  - Did you build PHP for multi-threaded web servers. (Optional)
  - Did you create test script for "make test"? (Optional)
  - Did you check your patch is unified format and it does not
    contain white space changes? (If you are not using recommended
    cvs setting)
  - Did you update CVS source before you take final patch?


Where to send your patch?
-------------------------
You are supposed to send patch to [EMAIL PROTECTED] If you
are patching module, you should also send patch to the maintainer.
Official module maintainers are listed in EXTENSION file in source.

Make sure you add "[PATCH]" prefix to mail subject. Please make sure
attach patch file even if patch is really short one. Finally, explain
what has been fixed/added/changed by your patch.

If you know bug ID that can be closed by your patch, please note the
bug ID numbers also.



How long it will take to get response?
--------------------------------------
Since we are volunteers, it may take more than a few days to get
response. If you didn't get any response in a few days, please let us
know you have been submitted the patch, but you didn't get any
response.


Thank you for sending patch for PHP!


-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to