Difference between revisions of "Submitting Patches"

From ReactOS Wiki
Jump to: navigation, search
(Submitting a patch to the project)
(Cleanup)
Line 1: Line 1:
= Submitting a patch to the project =
+
Since ReactOS does not have a definite maintainer for each section of the code, you should [[File Bugs|file a new bug]] in [[Bugzilla]] and apply your patch.
 
+
Set the severity level to major to draw the developers attention to the patch. If you are unsure about something, talk to a developer in the [irc://irc.freenode.net/reactos #reactos] IRC Channel.
Since ReactOS does not have a definite maintainer for each section of the code, you should open a new bug in bugzilla and apply your patch. Set the severity level to major to draw the developers attention to the patch. If you are unsure about something, talk to some dev in the #reactos irc channel.
 
 
 
'''Test your patch'''
 
  
 +
== Test your patch ==
 
Thoroughly check that your change works as intended.
 
Thoroughly check that your change works as intended.
Test your changes with the latest code from SVN. Something may have changed in the latest code that either breaks your change or causes your change to break something else.
 
Make sure that ReactOS can still boot and that any applications or systems that may be affected by your change still run properly.
 
  
 +
Test your changes with the latest code from SVN. Something may have changed in the latest revision that either breaks your change or causes your change to break something else.
 +
Make sure that ReactOS can still boot and that any application or system that may be affected by your change still runs properly.
  
'''Preparing the patch'''
+
== Preparing the patch ==
 +
Make sure that your patch is against the latest code from SVN. Where you have made changes to an existing source file, you have to use the ''diff'' function of your SVN client to obtain a file that contains only the changes that you have made.
  
Make sure that your patch is against the latest code from SVN. Where you have made changes to an existing source file, you will use diff to obtain a file that contains only the changes that you have made:
+
Also make sure that you have installed an SVN client. The page [[Subversion#Access_the_sources|Subversion - Access the sources]] gives you more information about getting an SVN client for your operating system.
Make sure you have svn on your system (svn.exe on Windows). If you use Windows and don't have this tool, you can obtain it from http://subversion.tigris.org/ (remember to put the subversion directory in your path).
 
To create the patch:
 
  
* ''cd "top-directory-for-all-changed-files"''
+
Then read the section ''Creating a patch/diff file'' of the usage page for your SVN client.<br>
* ''svn diff > mypatch.diff''
+
All these usage pages are listed here: [[Subversion#Usage_of_the_SVN_clients|Subversion - Usage of the SVN clients]].
  
or use TortoiseSVN, which provides easy to use context menus in Windows Explorer.
+
== Attaching the patch to the bug report ==
 +
If your changes are all in one patch file, you can simply attach the patch file to the bug report. Don't forget to tick the check box ''patch'' when attaching the file to indicate that this is a patch file.
  
Zip all new files and diffs to existing files and send them to the person that will commit the changes to SVN or submit the patch to [http://www.reactos.com/bugzilla Bugzilla].
+
If your changes can't be stored in just one patch file (for example binary files can't be stored in patch files), create a ZIP file containing your new files and attach it to the bug report.
  
* You also need to provide your name and mail address! Patches from unknown authors are not accepeted!!!
+
== Other information ==
 +
* '''You need to provide your name and mail address!'''<br>Patches from unknown authors are not accepted!!!

Revision as of 14:15, 29 October 2007

Since ReactOS does not have a definite maintainer for each section of the code, you should file a new bug in Bugzilla and apply your patch. Set the severity level to major to draw the developers attention to the patch. If you are unsure about something, talk to a developer in the #reactos IRC Channel.

Test your patch

Thoroughly check that your change works as intended.

Test your changes with the latest code from SVN. Something may have changed in the latest revision that either breaks your change or causes your change to break something else. Make sure that ReactOS can still boot and that any application or system that may be affected by your change still runs properly.

Preparing the patch

Make sure that your patch is against the latest code from SVN. Where you have made changes to an existing source file, you have to use the diff function of your SVN client to obtain a file that contains only the changes that you have made.

Also make sure that you have installed an SVN client. The page Subversion - Access the sources gives you more information about getting an SVN client for your operating system.

Then read the section Creating a patch/diff file of the usage page for your SVN client.
All these usage pages are listed here: Subversion - Usage of the SVN clients.

Attaching the patch to the bug report

If your changes are all in one patch file, you can simply attach the patch file to the bug report. Don't forget to tick the check box patch when attaching the file to indicate that this is a patch file.

If your changes can't be stored in just one patch file (for example binary files can't be stored in patch files), create a ZIP file containing your new files and attach it to the bug report.

Other information

  • You need to provide your name and mail address!
    Patches from unknown authors are not accepted!!!