sis-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From build...@apache.org
Subject svn commit: r1049413 - in /websites/staging/sis/trunk/content: ./ source.html
Date Fri, 30 Aug 2019 10:29:48 GMT
Author: buildbot
Date: Fri Aug 30 10:29:47 2019
New Revision: 1049413

Log:
Staging update by buildbot for sis

Modified:
    websites/staging/sis/trunk/content/   (props changed)
    websites/staging/sis/trunk/content/source.html

Propchange: websites/staging/sis/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Fri Aug 30 10:29:47 2019
@@ -1 +1 @@
-1866105
+1866143

Modified: websites/staging/sis/trunk/content/source.html
==============================================================================
--- websites/staging/sis/trunk/content/source.html (original)
+++ websites/staging/sis/trunk/content/source.html Fri Aug 30 10:29:47 2019
@@ -117,15 +117,12 @@ or to cherry-pick only the interesting p
 <li><a href="#data">Create data directory</a></li>
 <li><a href="#non-free">Checkout non-free data</a></li>
 <li><a href="#postgres">Configure PostgreSQL</a></li>
+<li><a href="#tests">Running extensive tests</a></li>
 <li><a href="#branches">Switch to development branch</a></li>
 </ul>
 </li>
+<li><a href="#netbeans">Opening Apache SIS in NetBeans</a></li>
 <li><a href="#history">History</a></li>
-<li><a href="#ide">Opening Apache SIS in an IDE</a><ul>
-<li><a href="#netbeans">NetBeans</a></li>
-<li><a href="#eclipse">Eclipse</a></li>
-</ul>
-</li>
 </ul>
 </div>
 <h1 id="basic">Basic installation<a class="headerlink" href="#basic" title="Permanent
link">&para;</a></h1>
@@ -207,14 +204,45 @@ Derby and HSQL are tested automatically
 But testing on PostgreSQL requires the creation of a dedicated database on the developer
platform.
 The requirements are:</p>
 <ul>
-<li>PostgreSQL server is running and listening to <code>localhost</code>
on default port (5432).</li>
-<li>An empty database named <code>"SpatialMetadataTest"</code> exists (Apache
SIS will not create it itself).</li>
-<li>A role having the same name than Unix user name exists</li>
-<li>Above-cited role can connect to <code>"SpatialMetadataTest"</code>
without password.</li>
-</ul>
-<p>The last point may require the following line in the <code>pg_hba.conf</code>
file
-(location of this file is system-dependent; try <code>/var/​lib/​pgsql/​data</code>):</p>
-<div class="codehilite"><pre>host    all    my_unix_user_name    127.0.0.1/32
   trust
+<li>PostgreSQL server running and listening to <code>localhost</code> on
default port (5432).</li>
+<li>A role with the same name than Unix user name of the developer running tests.</li>
+<li>An empty database named <code>"SpatialMetadataTest"</code>.</li>
+<li>Above-cited role can connect to <code>SpatialMetadataTest</code> database
without password.</li>
+<li><code>org.apache.sis.test.extensive</code> Java property set to <code>true</code>.</li>
+</ul>
+<p>The <code>SpatialMetadataTest</code> database should stay empty when
not running tests,
+because Apache SIS always delete the temporary schema after tests completion,
+regardless if the tests were successful or not.
+The role and database can be created by the following SQL instructions
+(replace <code>my_unix_user_name</code> by your actual user name):</p>
+<div class="codehilite"><pre><span class="k">CREATE</span> <span
class="k">ROLE</span> <span class="n">my_unix_user_name</span> <span
class="n">LOGIN</span><span class="p">;</span>
+<span class="k">CREATE</span> <span class="k">DATABASE</span> <span
class="ss">&quot;SpatialMetadataTest&quot;</span> <span class="k">WITH</span>
<span class="k">OWNER</span> <span class="o">=</span> <span class="n">my_unix_user_name</span><span
class="p">;</span>
+<span class="k">COMMENT</span> <span class="k">ON</span> <span
class="k">DATABASE</span> <span class="ss">&quot;SpatialMetadataTest&quot;</span>
<span class="k">IS</span> <span class="s1">&#39;For Apache SIS tests
only.&#39;</span><span class="p">;</span>
+</pre></div>
+
+
+<p>For opening access to that database without password, it may be necessary
+to add following line (ignoring comment lines) in the <code>pg_hba.conf</code>
file.
+Location of this file is system-dependent; it may be <code>/var/​lib/​pgsql/​data</code>:</p>
+<div class="codehilite"><pre># IPv4 local connections:
+# TYPE  DATABASE               USER                 ADDRESS         METHOD
+host    SpatialMetadataTest    my_unix_user_name    127.0.0.1/32    trust
+</pre></div>
+
+
+<p>The last step for allowing Apache SIS to run tests on PostgreSQL is to set the
+<code>org.apache.sis.test.extensive</code> Java property to <code>true</code>
(see next section).
+This requirement has been added for avoiding undesired interference with host.
+Note that this step is likely to change after Apache SIS upgrade to JUnit 5.</p>
+<h2 id="tests">Running extensive tests<a class="headerlink" href="#tests" title="Permanent
link">&para;</a></h2>
+<p>A simple <code>mvn install</code> execution in the <code>sis</code>
directory
+will build and test Apache SIS with the default set of JUnit tests.
+Some tests are skipped by default, either because they would have some effects outside
+the <code>sis</code> directory (for example writing in <code>SpatialMetadataTest</code>
database on PostgreSQL),
+or because those tests take a long time to execute.
+For enabling all tests, use the following command:</p>
+<div class="codehilite"><pre><span class="nb">cd </span>sis
+mvn install -Dorg.apache.sis.test.extensive<span class="o">=</span><span class="nb">true</span>
 </pre></div>
 
 
@@ -223,8 +251,8 @@ The requirements are:</p>
 Apache SIS releases are created from <code>master</code>, which depends on the
latest GeoAPI version
 released by the Open Geospatial Consortium (<abbr title="Open Geospatial Consortium">OGC</abbr>),
currently <a href="http://www.geoapi.org/3.0/index.html">GeoAPI 3.0.1</a>.
 However daily developments occur on the <code>geoapi-4.0</code> branch before
to be merged (indirectly) to <code>master</code>.
-Those branches exist in order to experiment early new API and technologies — since it
may impact
-the library design — while keeping the releases compatible with officially released
environments.
+Those branches exist in order to experiment early new API and technologies — since they
may impact
+the library design — while keeping the releases compatible with officially released
API.
 In summary:</p>
 <ul>
 <li>The <code>geoapi-4.0</code> branch implements interfaces defined in
GeoAPI 4.0 snapshots.</li>
@@ -232,45 +260,26 @@ In summary:</p>
 <li>The <code>master</code> implements interfaces defined by the <a
href="http://www.geoapi.org/3.0/index.html">GeoAPI 3.0.1 stable release</a>.</li>
 </ul>
 <p>Developments on <code>geoapi-4.0</code> branch are merged to <code>geoapi-3.1</code>
branch, which is then merged to <code>master</code>.
-Note that commits on master can not be removed, since <code>git push --force</code>
is not allowed on that branch.
-If some commits need to be rearranged, it should be done on other branches before merge to
<code>master</code>.</p>
-<p>Developers can switch to the current development branch as below.
-Note that those <code>geoapi-xxx</code> branches may disappear after <abbr
title="Open Geospatial Consortium">OGC</abbr> released the corresponding GeoAPI versions.</p>
+When commits reach <code>master</code>, they become unmodifiable — <code>git
push --force</code> command is not allowed on that branch.
+Contributors to Apache SIS project should switch to the current development branch before
submitting patches:</p>
 <div class="codehilite"><pre><span class="nb">cd </span>sis
 git checkout geoapi-4.0
 </pre></div>
 
 
-<h1 id="history">History<a class="headerlink" href="#history" title="Permanent link">&para;</a></h1>
-<p>All developments and tags prior Apache SIS 1.0 were done on a <a href="http://subversion.apache.org">Subversion</a>
repository
-and can be <a href="http://svn.apache.org/viewvc/sis/">browsed online</a>.
-Tags for Apache SIS versions 0.1 to 0.8 should be fetched from the <a href="https://svn.apache.org/repos/asf/sis/tags/">SVN
repository</a>.
-The development branches on that repository were named <code>JDK8</code>, <code>JDK7</code>,
<code>JDK6</code> and <code>trunk</code>.</p>
-<h1 id="ide">Opening Apache SIS in an IDE<a class="headerlink" href="#ide" title="Permanent
link">&para;</a></h1>
-<p>Different SIS branches are available depending on the GeoAPI versions.
-The alternatives are listed in <a href="#development">above section</a>.
-One thing to take in consideration can be summarized as below:</p>
-<ul>
-<li>There is no need to build GeoAPI prior working on SIS master.</li>
-<li>When working on a SIS development branch, we recommend to build GeoAPI 4.0-SNAPSHOT
locally first.</li>
-</ul>
-<p>While the primarily SIS build system is Maven, the project provides some IDE configuration
files for developers convenience.
-Before opening the project in an IDE, the source code needs to be downloaded from the source
repository
-and the project built at least once using Maven:</p>
-<div class="codehilite"><pre>git clone https://gitbox.apache.org/repos/asf/sis.git
-<span class="nb">cd </span>sis
-mvn install
-</pre></div>
-
-
-<h2 id="netbeans">NetBeans<a class="headerlink" href="#netbeans" title="Permanent
link">&para;</a></h2>
-<p>NetBeans can open Maven projects natively. This is the recommended approach for
casual working in a small amount of SIS modules.
-For extensive work on Apache SIS or for work impacting many modules, it may be more convenient
and faster to open Apache SIS as a NetBeans project.
-Such pre-configured NetBeans project is available in the <code>ide-project/NetBeans</code>
directory.
+<p>Note that those <code>geoapi-xxx</code> branches may disappear or be
replaced by something else
+after <abbr title="Open Geospatial Consortium">OGC</abbr> releases the corresponding
GeoAPI versions.</p>
+<h1 id="netbeans">Opening Apache SIS in NetBeans<a class="headerlink" href="#netbeans"
title="Permanent link">&para;</a></h1>
+<p>Apache SIS build is defined by Maven <code>pom.xml</code> files.
+All major IDE, including NetBeans, can open a project defined by those files.
+However in the particular case of NetBeans IDE, we also provide a way to open Apache SIS
using Ant configuration files.
+Compared to "Java with Maven" project, the "Java with Ant" project is faster to build and
debug,
+makes easier to see all modules at once, and provides more configuration options.
+Those configuration files are available in the <code>ide-project/NetBeans</code>
directory.
 This project will fetch dependencies directly from the <code>.m2/repository</code>
local directory,
 and will refer to the resources <code>*.utf</code> files compiled by Maven in
the <code>sis-*/target</code> directories.
-Consequently it is important to run <code>mvn install</code> before opening the
project
-and after any change in the project dependencies or in the resources.</p>
+Consequently it is important to run <code>mvn install</code> manually (on the
command line)
+before opening the project and after any change in the project dependencies or in the resources.</p>
 <p>Users can customize their project configuration by editing the <code>ide-project/NetBeans/nbproject/private/config.properties</code>
file.
 The <code>private</code> directory is excluded by the versioning system, so it
okay to put user-specific information there.
 For example in order to overwrite the default location of the local Maven repository and
to define a system property at execution time,
@@ -280,17 +289,11 @@ one can use:</p>
 </pre></div>
 
 
-<h2 id="eclipse">Eclipse<a class="headerlink" href="#eclipse" title="Permanent link">&para;</a></h2>
-<p>Execute the <code>svn checkout</code> to <code>mvn install</code>
commands documented in the beginning of this section,
-then execute the following steps:</p>
-<ul>
-<li>Execute <code>mvn eclipse:eclipse</code> on the command line.</li>
-<li>Open Eclipse in a new workspace.</li>
-<li>Go to <em>Eclipse</em> → <em>Preferences</em> →
<em>General</em> → <em>Workspace</em>.</li>
-<li>Change <em>Text file encoding</em> to <em>Other: UTF-8</em>,
press <em>Apply</em>, then <em>Ok</em>.</li>
-<li>Go to <em>File</em> → <em>Import</em> → <em>General</em>
→ <em>Existing Projects in Workspace</em>.</li>
-<li>Choose the <code>sis</code> directory and import.</li>
-</ul>
+<h1 id="history">History<a class="headerlink" href="#history" title="Permanent link">&para;</a></h1>
+<p>All developments and tags prior Apache SIS 1.0 were done on a <a href="http://subversion.apache.org">Subversion</a>
repository
+and can be <a href="http://svn.apache.org/viewvc/sis/">browsed online</a>.
+Tags for Apache SIS versions 0.1 to 0.8 should be fetched from the <a href="https://svn.apache.org/repos/asf/sis/tags/">SVN
repository</a>.
+The development branches on that repository were named <code>JDK8</code>, <code>JDK7</code>,
<code>JDK6</code> and <code>trunk</code>.</p>
             </article>
           </section>
         </div><!--/span-->



Mime
View raw message