<para>This section contains instructions for project administrators.</para>
<formalpara>Note: Our build process is currently broken for
Windows machines (see "Making a File Release",
step 6, "Make the release and put it into Subversion".)</formalpara>
<section>
<title>Building All Parts of DrJava from Scratch</title>
<para>These are the instructions to create a fresh build of all parts of DrJava, including the constituent libraries.</para>
<formalpara>
<orderedlist>
<listitem><para>Check out trunk (<filename>svn co https://drjava.svn.sourceforge.net/svnroot/drjava/trunk</filename>), or if you have trunk checked out, update it.</para></listitem>
<listitem><para>Create the release locally. It's a good idea to do this first, without touching Subversion or SourceForge. To create a development release:</para>
<listitem><para>To upload files to SourceForge, we will follow this guide written by <ulink url="https://sourceforge.net/apps/trac/sourceforge/wiki/Release%20files%20for%20download">SourceForge</ulink>. I find that using SFTP is the easiest.</para></listitem>
<listitem><para>Log into SFTP. In the following command, replace <filename><username></filename> with your SourceForge username:</para>
<listitem><para>Click on <filename>1. DrJava Stable Releases</filename> or <filename>2. DrJava Development Releases</filename>, find the tag, and enter that directory. You should see the
files you uploaded.</para></listitem>
<listitem><para>Click on the <filename>(i)</filename> (Info) button next to the exe file, check the
Windows checkbox, and press save.</para>
<formalpara>Click on the <filename>(i)</filename> (Info) button next to the Mac application, check the
Mac checkbox, and press save.</formalpara>
<formalpara>Click on the <filename>(i)</filename> (Info) button next to the jar file, check all the
other checkboxes (except Windows and Mac), and press save.</formalpara>
<formalpara>This step changes the default download on DrJava's SourceForge page
(in the "Download Now!" button on <ulink url="https://sourceforge.net/projects/drjava/">https://sourceforge.net/projects/drjava/</ulink>). People downloading
directly from the SourceForge page will start getting the new release.</formalpara></listitem>
<listitem><para>Prepare the release notes text file called <filename>readme.txt</filename>. I start
with a template that looks like the one below. To determine the lists
of new features and bug fixes, you can look up the revision number of
the last release you're comparing to, and then you can go through the
Subversion log and look at the descriptions of the commits, which
should hopefully be good enough to tell you what was done. Unless the
last version was a stable release, I usually include a comparison to
the last stable release as well, which is easy to create just by
copying and pasting the lists from individual release notes together.</para>
<formalpara><programlisting>
Available for download at http://drjava.org .
DrJava is a lightweight programming environment for Java designed to
foster test-driven software development. It includes an intelligent
program editor, an interactions pane for evaluating program text, a
source level debugger, and a unit testing tool.
In addition to bug fixes, this <stable/beta/development> release
includes a number of new features introduced after the last
<stable/beta/development> release:
<brief description of MAJOR features>
Note: Java 1.4 compatibility has been dropped. To use DrJava, you will
need Java 5 or newer.
New features since the last <beta/development> release:
- list of new features since the last beta/development release
Bug fixes since last <beta/development> release:
- list of bug fixes since the last beta/development release
New features since the last stable release:
- list of new features since the last stable release
Bug fixes since the last stable release:
- list of bug fixes since the last stable release
</programlisting></formalpara></listitem>
<listitem><para>On the DrJava SourceForge page, upload the release notes into the
new release's folder. You can do that either using SFTP again or using
the web upload by clicking on "Add File". I just find that SFTP works
better for uploading the multiple large files earlier in step 16.</para></listitem>
<listitem><para>On the DrJava SourceForge page, hover over "Develop" and click on
"News" (or go to <ulink url="https://sourceforge.net/news/?group_id=44253">https://sourceforge.net/news/?group_id=44253</ulink>, but that link has changed frequently). Click on "Submit" and paste the contents of the <filename>readme.txt</filename> file into the "Details" part. In the "Subject" line, I usually put something like "DrJava Development
<listitem><para>That's it! Thanks for helping make DrJava even better.</para></listitem>
</orderedlist>
</para>
</section>
<!-- Clipped from the previous docs:
<para>It is important to update the DrJava website after all changes to the documentation. This involves copying the HTML files for the user, quickstart, and developer documentation (and the PDF file for the user documentation) to <filename>drjava.sf.net:/home/groups/d/dr/drjava/htdocs/</filename>. The HTML files should go in the <filename>userdocs/</filename>, <filename>quickstartdocs</filename>, and <filename>devdocs/</filename> directories, respectively, while the PDF should be saved as <filename>drjava-userdoc.pdf</filename> directly in <filename>htdocs/</filename>.</para>