Author: buildbot
Date: Tue Nov 14 13:24:59 2017
New Revision: 1020840
Log:
Staging update by buildbot for sis
Modified:
websites/staging/sis/trunk/content/ (props changed)
websites/staging/sis/trunk/content/index.html
websites/staging/sis/trunk/content/release-management.html
Propchange: websites/staging/sis/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Tue Nov 14 13:24:59 2017
@@ -1 +1 @@
-1815151
+1815214
Modified: websites/staging/sis/trunk/content/index.html
==============================================================================
--- websites/staging/sis/trunk/content/index.html (original)
+++ websites/staging/sis/trunk/content/index.html Tue Nov 14 13:24:59 2017
@@ -120,7 +120,8 @@ The SIS storage modules will provide a c
</ul>
<h2 id="user">Using Apache SIS<a class="headerlink" href="#user"
title="Permanent link">¶</a></h2>
<p>The latest SIS release is 0.8, released November 2017.
-Apache SIS requires a Java 7 Runtime Environment.
+Apache SIS requires a Java 7 or 8 Runtime Environment.
+There is known incompatibilities with Java 9, which will be fixed in next
version.
The EPSG geodetic dataset (optional but recommended) can be <a
href="epsg.html">installed separately</a>.</p>
<p>Apache SIS is a Java library for use by other applications.
Leveraging the full SIS capabilities or getting the best performance require
that users write their own applications on top of SIS.
Modified: websites/staging/sis/trunk/content/release-management.html
==============================================================================
--- websites/staging/sis/trunk/content/release-management.html (original)
+++ websites/staging/sis/trunk/content/release-management.html Tue Nov 14
13:24:59 2017
@@ -99,14 +99,15 @@ The instructions on this page provide a
The intended audiences are SIS release managers.</p>
<div class="toc">
<ul>
-<li><a href="#requirements">Requirements</a><ul>
+<li><a href="#configure">Configure</a><ul>
<li><a href="#directory-layout">Directory layout</a></li>
<li><a href="#java-update">Java updates</a></li>
</ul>
</li>
-<li><a href="#prepare-source">Prepare web site and source code</a><ul>
-<li><a href="#prepare-documentation">Documentation</a></li>
+<li><a href="#prepare-source">Prepare web site and source code before
branching</a><ul>
+<li><a href="#release-notes">Prepare release notes</a></li>
<li><a href="#prepare-website">Web site</a></li>
+<li><a href="#test-trunk">Test trunk extensively</a></li>
<li><a href="#prepare-code">Source code</a></li>
</ul>
</li>
@@ -144,7 +145,7 @@ The intended audiences are SIS release m
</li>
</ul>
</div>
-<h1 id="requirements">Requirements<a class="headerlink" href="#requirements"
title="Permanent link">¶</a></h1>
+<h1 id="configure">Configure<a class="headerlink" href="#configure"
title="Permanent link">¶</a></h1>
<p>Before to perform a release, make sure that the following conditions
hold:</p>
<ul>
<li>Commands will be executed in a Unix shell.</li>
@@ -162,13 +163,19 @@ the current release attempt. Those versi
</pre></div>
-<p>The key ID value is an hexadecimal numbers with 8 or 40 digits.
+<p>The key ID value is an hexadecimal numbers with 8 digits (may be the last 8
digits of a 40 digits number).
It can be found be executing <code>gpg --list-keys</code>.</p>
<p>The boot class path value is highly system-dependent. Some examples are:</p>
<ul>
<li><code>/usr/lib/jvm/java-7/jre/lib/rt.jar</code> on some Linux
distributions (replace <code>java-7</code> by the actual directory name).</li>
<li><code>/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home/jre/lib/rt.jar</code>
on MacOS.</li>
</ul>
+<p>Starts the GPG agent if not already done.
+This is for avoiding to be prompted many time for the passphrase in every
modules to be built by Maven.</p>
+<div class="codehilite"><pre><span class="nb">eval</span> <span
class="k">$(</span>gpg-agent --daemon<span class="k">)</span>
+</pre></div>
+
+
<h2 id="directory-layout">Directory layout<a class="headerlink"
href="#directory-layout" title="Permanent link">¶</a></h2>
<p>The steps described in this page assume the following directory layout
(some directories will be created as
a result of the steps). Any other layout can be used. However if the layout
differs, then the relative paths
@@ -198,15 +205,17 @@ the binaries since JDK7 has reached its
We recommend to create the release with JDK8 instead (note however that JDK8
<code>javadoc</code> tool seems to have a bug that prevent its use with SIS).
Make sure that the JDK installation to be used for the release has been
updated recently, since compilers may receive critical bug fixes.
For example the <code>javadoc</code> tool of older JDK versions was known to
generate HTML pages with a vulnerability in them.</p>
-<h1 id="prepare-source">Prepare web site and source code<a class="headerlink"
href="#prepare-source" title="Permanent link">¶</a></h1>
-<p>Before to start the release process:</p>
+<h1 id="prepare-source">Prepare web site and source code before branching<a
class="headerlink" href="#prepare-source" title="Permanent link">¶</a></h1>
+<p>Before to start the release process, we need to test more extensively the
trunk.
+The tests described below often reveal errors that were unnoticed in daily
builds.
+It is better to detect and fix them before to create the branch.
+First:</p>
<ul>
<li>Review and update the <code>README</code> and <code>NOTICE</code> files on
the source code repository.</li>
<li>Review the <code>javac</code> and <code>javadoc</code> warnings reported
by Jenkins and fix at least the typos.</li>
-<li>Ensure that the <code>trunk</code> build is successful (including tests)
with JDK7 and JDK8.</li>
</ul>
-<h2 id="prepare-documentation">Documentation<a class="headerlink"
href="#prepare-documentation" title="Permanent link">¶</a></h2>
-<p>We update JIRA and web site first because doing so is sometime a reminder
of uncompleted tasks in source code.
+<h2 id="release-notes">Prepare release notes<a class="headerlink"
href="#release-notes" title="Permanent link">¶</a></h2>
+<p>We update JIRA first because doing so is sometime a reminder of uncompleted
tasks in source code.
Update <a href="http://issues.apache.org/jira/browse/SIS">JIRA</a> tasks and
prepare release notes as below:</p>
<ul>
<li>Ensure that the <em>Fix Version</em> in issues resolved since the last
release includes this release version correctly.</li>
@@ -237,6 +246,49 @@ svn commit --message <span class="s2">&q
<p>The new web site will be published in the <a
href="http://sis.staging.apache.org">staging area</a>.
It will not yet be published on <code>http://sis.apache.org</code>.</p>
+<h2 id="test-trunk">Test trunk extensively<a class="headerlink"
href="#test-trunk" title="Permanent link">¶</a></h2>
+<p>Build the project with the <code>apache-release</code> profile enabled.
+This profile performs the following actions:</p>
+<ul>
+<li>Enable extensive tests (i.e. it will set the
<code>org.apache.sis.test.extensive</code> property to <code>true</code>).</li>
+<li>Generate Javadoc. This may fail if the source code contains invalid
Javadoc tags or broken HTML.</li>
+<li>Generate additional binary artifacts (<code>*.pack.gz</code> and
<code>*.oxt</code> files).
+ This will fail if duplicated class files or resources are found.
+ Consequently building the <code>.*pack.gz</code> file is an additional
test worth to do before deployment.</li>
+<li>Sign the artifacts.</li>
+</ul>
+<p>Each of those additional products may cause a failure that did not happen
in normal builds.</p>
+<div class="codehilite"><pre><span class="nb">cd</span> ../trunk
+mvn clean install --activate-profiles apache-release --define <span
class="nv">bootclasspath</span><span class="o">=</span><span
class="nv">$BOOTCLASSPATH</span>
+</pre></div>
+
+
+<p>Verify signature for all files:</p>
+<div class="codehilite"><pre>find . -name <span
class="s2">"sis-*.asc"</span> -exec gpg --verify <span
class="s1">'{}'</span> <span class="se">\;</span>
+</pre></div>
+
+
+<p>If the <code>SIS_DATA</code> environment variable was set during above
build, unset it a try again.
+Ideally the build should be tested in both conditions (<code>SIS_DATA</code>
set and unset).</p>
+<p>Build the <code>non-free</code> group of modules. Those modules will not be
part of the distribution (except on Maven),
+but we nevertheless need to ensure that they work. Before to test, verify that
their version numbers and their
+SIS dependencies are the snapshot tested in this section.</p>
+<div class="codehilite"><pre><span class="nb">cd</span> ../non-free
+svn update
+mvn clean install --define <span class="nv">bootclasspath</span><span
class="o">=</span><span class="nv">$BOOTCLASSPATH</span>
+</pre></div>
+
+
+<p>Run the integration tests. Before to test,
+verify that their version numbers and their SIS dependencies are the snapshot
tested in this section.
+Note that execution of those tests may be slow.</p>
+<div class="codehilite"><pre><span class="nb">cd</span> ../release-test
+svn update
+<span class="nb">cd </span>maven
+mvn clean <span class="nb">test</span> --define <span
class="nv">bootclasspath</span><span class="o">=</span><span
class="nv">$BOOTCLASSPATH</span>
+</pre></div>
+
+
<h2 id="prepare-code">Source code<a class="headerlink" href="#prepare-code"
title="Permanent link">¶</a></h2>
<p>Replace the <code>$OLD_VERSION</code> number by <code>$NEW_VERSION</code>
in the following literals.
Those changes need to be applied on the development branch and merged with all
other branches and trunk.</p>
@@ -289,7 +341,7 @@ svn remove application/sis-javafx
<p>Validate with <code>svn diff</code>, ensure that the build is not broken
(we will run the tests later),
then commit the changes on the branch:</p>
-<div class="codehilite"><pre>mvn install --define <span
class="nv">skipTests</span><span class="o">=</span><span class="nb">true</span>
--define <span class="nv">bootclasspath</span><span class="o">=</span><span
class="nv">$BOOTCLASSPATH</span>
+<div class="codehilite"><pre>mvn clean package --define <span
class="nv">skipTests</span><span class="o">=</span><span class="nb">true</span>
--define <span class="nv">bootclasspath</span><span class="o">=</span><span
class="nv">$BOOTCLASSPATH</span>
svn commit --message <span class="s2">"Prepare branch for $NEW_VERSION
release."</span>
</pre></div>
@@ -330,52 +382,34 @@ plus some additional files:</p>
<h2 id="branch-verify">Verify content<a class="headerlink"
href="#branch-verify" title="Permanent link">¶</a></h2>
-<p>Starts the GPG agent if not already done.
-This is for avoiding to be prompted many time for the passphrase in every
modules to be built by Maven.</p>
-<div class="codehilite"><pre><span class="nb">eval</span> <span
class="k">$(</span>gpg-agent --daemon<span class="k">)</span>
+<p>Build and test the project in the same way than we did on trunk.
+In addition to testing, execution of an <code>install</code> phase before
deployment is required for our custom <code>sis-build-helper</code> plugin.</p>
+<div class="codehilite"><pre>mvn install --activate-profiles apache-release
--define <span class="nv">bootclasspath</span><span class="o">=</span><span
class="nv">$BOOTCLASSPATH</span>
+find . -name <span class="s2">"sis-*.asc"</span> -exec gpg --verify
<span class="s1">'{}'</span> <span class="se">\;</span>
</pre></div>
-<p>Build the project with extensive tests enabled:</p>
-<div class="codehilite"><pre>mvn clean install --activate-profiles
apache-release --define org.apache.sis.test.extensive<span
class="o">=</span><span class="nb">true</span> --define <span
class="nv">bootclasspath</span><span class="o">=</span><span
class="nv">$BOOTCLASSPATH</span>
-</pre></div>
-
-
-<p>Verify signature for all files:</p>
-<div class="codehilite"><pre>find . -name <span
class="s2">"sis-*.asc"</span> -exec gpg --verify <span
class="s1">'{}'</span> <span class="se">\;</span>
-</pre></div>
-
-
-<p>Build the <code>non-free</code> group of modules. Those modules will not be
part of the distribution (except on Maven),
-but we nevertheless need to ensure that they work. Before to test, verify that
their version numbers and their
-SIS dependencies are <code>$NEW_VERSION</code> without <code>-SNAPSHOT</code>
suffix.</p>
+<p>Open the <code>pom.xml</code> file of all modules in the
<code>non-free</code> group.
+Set their version numbers and their SIS dependencies to
<code>$NEW_VERSION</code> without <code>-SNAPSHOT</code> suffix.
+Commit and built:</p>
<div class="codehilite"><pre><span class="nb">cd</span> ../../non-free
-svn update
+svn commit --message <span class="s2">"Set version number and
dependencies to $NEW_VERSION."</span>
mvn clean install --define <span class="nv">bootclasspath</span><span
class="o">=</span><span class="nv">$BOOTCLASSPATH</span>
</pre></div>
-<p>Run the integration tests. The project version number in the
<code>pom.xml</code> file must be set manually to <code>$NEW_VERSION</code>
first.
-Note that execution of those tests may be slow.</p>
+<p>Open the <code>pom.xml</code> file of integration tests.
+Set its version numbers and its SIS dependencies to <code>$NEW_VERSION</code>
without <code>-SNAPSHOT</code> suffix.
+Commit and built (note that execution may be slow).</p>
<div class="codehilite"><pre><span class="nb">cd</span> ../release-test
-svn update
+svn commit --message <span class="s2">"Set version number and
dependencies to $NEW_VERSION."</span>
<span class="nb">cd </span>maven
mvn clean <span class="nb">test</span> --define <span
class="nv">bootclasspath</span><span class="o">=</span><span
class="nv">$BOOTCLASSPATH</span>
</pre></div>
<h1 id="maven-deploy">Deploy Maven artifacts<a class="headerlink"
href="#maven-deploy" title="Permanent link">¶</a></h1>
-<p>Execute an <code>install</code> phase first (required for our custom
<code>sis-build-helper</code> plugin),
-and generate the binary artifact (<code>pack.gz</code> file). The later will
fail if duplicated
-class files or resources are found. Consequently building the
<code>pack.gz</code> file is an
-additional test worth to do before deployment.</p>
-<div class="codehilite"><pre><span class="nb">cd</span> <span
class="nv">$TAG_DIR</span>
-mvn clean install --define <span class="nv">bootclasspath</span><span
class="o">=</span><span class="nv">$BOOTCLASSPATH</span>
-mvn org.apache.sis.core:sis-build-helper:<span
class="nv">$NEW_VERSION</span>:dist --non-recursive
-</pre></div>
-
-
-<p>If the above succeeded, deploy:</p>
+<p>If above verifications succeeded, deploy:</p>
<div class="codehilite"><pre>chmod a-w target/distribution/*.zip
mvn deploy --activate-profiles apache-release --define <span
class="nv">bootclasspath</span><span class="o">=</span><span
class="nv">$BOOTCLASSPATH</span>
</pre></div>
@@ -465,9 +499,7 @@ avoiding the security vulnerability disc
and keeping the <code>diff</code> smaller on the SVN repository of SIS web
site.
If JDK8 is <em>not</em> used, then omit the <code>cp</code> command below.</p>
<div class="codehilite"><pre><span class="nb">cd</span> <span
class="nv">$TAG_DIR</span>
-cp ../../JDK8/src/main/javadoc/stylesheet.css src/main/javadoc/
mvn javadoc:aggregate
-svn revert src/main/javadoc/stylesheet.css
<span class="nb">cd </span>target/site
zip -9 -r apache-sis-<span class="nv">$NEW_VERSION</span>-doc.zip apidocs
<span class="nb">cd</span> ../..
@@ -505,7 +537,7 @@ Update the file content if necessary.</p
<p>Move the files generated by Maven to the distribution directory:</p>
<div class="codehilite"><pre>mv <span
class="nv">$TAG_DIR</span>/target/sis-<span class="nv">$NEW_VERSION</span>-* .
mv <span class="nv">$TAG_DIR</span>/target/site/apache-sis-<span
class="nv">$NEW_VERSION</span>-* .
-mv <span class="nv">$TAG_DIR</span>/target/distribution/apache-sis-<span
class="nv">$NEW_VERSION</span>.zip .
+mv <span
class="nv">$TAG_DIR</span>/application/sis-console/target/distribution/apache-sis-<span
class="nv">$NEW_VERSION</span>.zip .
</pre></div>
@@ -582,7 +614,6 @@ unzip apache-sis-<span class="nv">$NEW_V
<span class="nb">cd </span>apache-sis-<span class="nv">$NEW_VERSION</span>
<span class="nb">unset </span>SIS_DATA
bin/sis about --verbose
-bin/sis metadata
http://catalog.data.gov/harvest/object/df138a1b-e7cb-4ca4-b7c3-316135e81b16
bin/sis metadata
https://github.com/opengeospatial/geoapi/raw/master/geoapi-netcdf/src/test/resources/org/opengis/wrapper/netcdf/NCEP-SST.nc
bin/sis crs
http://svn.apache.org/repos/asf/sis/trunk/core/sis-referencing/src/test/resources/org/apache/sis/referencing/crs/ProjectedCRS.xml
--format WKT
</pre></div>