Difference between revisions of "ReactOS Release Engineer/Step-by-Step Guide"

From ReactOS Wiki
Jump to: navigation, search
(Add a page for describing the Release Engineering process)
 
(add the outdated tag)
 
(8 intermediate revisions by 6 users not shown)
Line 1: Line 1:
This page shall give an overview about the steps involved when creating new ReactOS releases.
+
{{outdated|reason=The ReactOS main repository was moved to Git / GitHub in October 2017. See [[Building ReactOS]] or [[ReactOS Git For Dummies]] for details.}}
  
As of now (2010-10-08), two [[ReactOS Release Engineer|Release Engineers]] are working for the ReactOS Project. The tasks are currently split up in a way that one of them primarily takes care about the changelog while the other one does most of the other (simpler) tasks.
+
This page shall give an overview about the steps involved when creating new ReactOS releases. For further information, please contact our [[ReactOS Release Engineer|Release Engineers]].
 +
The tasks are currently split up in a way that one of them primarily takes care about the changelog while the other one does most of the other (simpler) tasks.
  
 
We assume that a Changelog Wiki page has already been created after the previous release to allow people to add their important changes as soon as possible.
 
We assume that a Changelog Wiki page has already been created after the previous release to allow people to add their important changes as soon as possible.
Line 7: Line 8:
  
 
== Guide ==
 
== Guide ==
# Choose a trunk revision to branch from and create a branch ''ros-branch-X_X_XX''. (where ''X_X_XX'' is the release version number with replaced dots)<br>The SVN command is: <pre>svn cp svn://svn.reactos.org/reactos/trunk@REVISION_NUMBER svn://svn.reactos.org/reactos/branches/ros-branch-X_X_XX</pre>
+
# Choose a trunk revision to branch from and create a branch ''ros-branch-X_X_XX''. (where ''X_X_XX'' is the release version number with replaced dots)<br />The SVN command is: <br /><pre>svn cp svn://svn.reactos.org/reactos/trunk@REVISION_NUMBER svn://svn.reactos.org/reactos/branches/ros-branch-X_X_XX</pre>
 
# Start bugging people about getting their Changelog parts done :-)
 
# Start bugging people about getting their Changelog parts done :-)
# Create a Wiki page with just the version number as the title (looking like e.g. [[0.3.12]]). You can already add information about the branched revision.
+
# Create a Wiki page with just the version number as the title (looking like e.g. [[{{ReactOS-Curr-Version}}]]). You can already add information about the branched revision.
# Create a Wiki page called ''Tests for X.X.XX'' (see [[Tests for 0.3.12]]), so that people can report the state of popular applications/drivers on this release.
+
# Create a Wiki page called ''Tests for X.X.XX'' (see [[Tests for {{ReactOS-Curr-Version}}]]), so that people can report the state of popular applications/drivers on this release.
 
# Change the identification options in the release branch. (version number, wallpaper, shortcuts, etc.)
 
# Change the identification options in the release branch. (version number, wallpaper, shortcuts, etc.)
 
# Apply some hacks to the release branch to work around known bugs. (if necessary)
 
# Apply some hacks to the release branch to work around known bugs. (if necessary)
# Get approvements from involved developers and testers that the code in the branch is ready to be released.
+
# Get approval from involved developers and testers that the code in the branch is ready to be released.
 
# Create packages according to the guide [[ReactOS Release Engineer/Packaging ReactOS Releases|Packaging ReactOS Releases]].
 
# Create packages according to the guide [[ReactOS Release Engineer/Packaging ReactOS Releases|Packaging ReactOS Releases]].
# Create a tag ''ReactOS-X.X.XX'' from the branch. The SVN command is: <pre>svn mv svn://svn.reactos.org/reactos/branches/ros-branch-X_X_XX svn://svn.reactos.org/reactos/tags/ReactOS-X.X.XX</pre>
+
# Create a tag ''ReactOS-X.X.XX'' from the branch.<br /> The SVN command is:<br /> <pre>svn mv svn://svn.reactos.org/reactos/branches/ros-branch-X_X_XX svn://svn.reactos.org/reactos/tags/ReactOS-X.X.XX</pre>
 
# Upload the packages to SourceForge.net in the ''OldFiles'' directory, so that they are not visible yet.
 
# Upload the packages to SourceForge.net in the ''OldFiles'' directory, so that they are not visible yet.
 
# Move the packages to the ReactOS/X.X.XX folder on SourceForge.net shortly before the official announcement is published.
 
# Move the packages to the ReactOS/X.X.XX folder on SourceForge.net shortly before the official announcement is published.
# Publish the official announcement on the website and on the ros-announce mailing list.
+
# Execute the ''sf-sync'' script on the Rose-General server to update the http://download.reactos.org download mirror.
# Add the new version number as an option to the [http://reactos.org/compat Compatibility Database].
+
# Publish the official announcement on the website, the ''News'' forum and on the ''ros-announce'' mailing list.
 
# CELEBRATE!!
 
# CELEBRATE!!
 +
== Notes ==
 +
Version information is in include/reactos/version.cmake
 +
 +
Desktop shortcuts need to be manually added in code in dll/win32/syssetup/install.c
 +
[[Category:Tutorial]]

Latest revision as of 10:14, 16 November 2020

This page is probably outdated

The ReactOS main repository was moved to Git / GitHub in October 2017. See Building ReactOS or ReactOS Git For Dummies for details.
A Wiki Administrator should look at this page and decide or discuss what to do with it.


This page shall give an overview about the steps involved when creating new ReactOS releases. For further information, please contact our Release Engineers. The tasks are currently split up in a way that one of them primarily takes care about the changelog while the other one does most of the other (simpler) tasks.

We assume that a Changelog Wiki page has already been created after the previous release to allow people to add their important changes as soon as possible. You should also get people to write the official announcement.

Guide

  1. Choose a trunk revision to branch from and create a branch ros-branch-X_X_XX. (where X_X_XX is the release version number with replaced dots)
    The SVN command is:
    svn cp svn://svn.reactos.org/reactos/trunk@REVISION_NUMBER svn://svn.reactos.org/reactos/branches/ros-branch-X_X_XX
  2. Start bugging people about getting their Changelog parts done :-)
  3. Create a Wiki page with just the version number as the title (looking like e.g. 0.4.14). You can already add information about the branched revision.
  4. Create a Wiki page called Tests for X.X.XX (see Tests for 0.4.14), so that people can report the state of popular applications/drivers on this release.
  5. Change the identification options in the release branch. (version number, wallpaper, shortcuts, etc.)
  6. Apply some hacks to the release branch to work around known bugs. (if necessary)
  7. Get approval from involved developers and testers that the code in the branch is ready to be released.
  8. Create packages according to the guide Packaging ReactOS Releases.
  9. Create a tag ReactOS-X.X.XX from the branch.
    The SVN command is:
    svn mv svn://svn.reactos.org/reactos/branches/ros-branch-X_X_XX svn://svn.reactos.org/reactos/tags/ReactOS-X.X.XX
  10. Upload the packages to SourceForge.net in the OldFiles directory, so that they are not visible yet.
  11. Move the packages to the ReactOS/X.X.XX folder on SourceForge.net shortly before the official announcement is published.
  12. Execute the sf-sync script on the Rose-General server to update the http://download.reactos.org download mirror.
  13. Publish the official announcement on the website, the News forum and on the ros-announce mailing list.
  14. CELEBRATE!!

Notes

Version information is in include/reactos/version.cmake

Desktop shortcuts need to be manually added in code in dll/win32/syssetup/install.c