(sis) 03/03: Remove deprecated methods.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit c4a3614aa02b18cbc54b63624605ef8850a77d3a Author: Martin Desruisseaux AuthorDate: Sun Oct 29 00:12:05 2023 +0200 Remove deprecated methods. --- .../org.apache.sis.feature/main/module-info.java | 2 +- .../main/org/apache/sis/image/ImageProcessor.java | 151 + .../main/org/apache/sis/image/Visualization.java | 12 -- .../main/org/apache/sis/image/package-info.java| 2 +- .../org.apache.sis.metadata/main/module-info.java | 2 +- .../apache/sis/metadata/iso/DefaultMetadata.java | 88 +++- .../org/apache/sis/metadata/iso/package-info.java | 2 +- .../DefaultCoordinateOperationFactory.java | 2 +- .../referencing/operation/matrix/MatrixSIS.java| 23 +--- .../referencing/operation/matrix/package-info.java | 2 +- .../provider/FranceGeocentricInterpolation.java| 9 +- .../operation/transform/MathTransforms.java| 18 --- .../src/org.apache.sis.util/main/module-info.java | 2 +- .../main/org/apache/sis/util/ArgumentChecks.java | 66 - .../main/org/apache/sis/util/CharSequences.java| 36 + .../main/org/apache/sis/util/logging/Logging.java | 18 +-- .../org/apache/sis/util/logging/package-info.java | 2 +- .../apache/sis/gui/internal/ImageConverter.java| 2 +- 18 files changed, 32 insertions(+), 407 deletions(-) diff --git a/endorsed/src/org.apache.sis.feature/main/module-info.java b/endorsed/src/org.apache.sis.feature/main/module-info.java index 09a24df5b4..33a7fd41d2 100644 --- a/endorsed/src/org.apache.sis.feature/main/module-info.java +++ b/endorsed/src/org.apache.sis.feature/main/module-info.java @@ -20,7 +20,7 @@ * * @author Johann Sorel (Geomatys) * @author Martin Desruisseaux (Geomatys) - * @version 1.4 + * @version 1.5 * @since 0.5 */ module org.apache.sis.feature { diff --git a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/image/ImageProcessor.java b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/image/ImageProcessor.java index f0b11ebc5d..2b81da640a 100644 --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/image/ImageProcessor.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/image/ImageProcessor.java @@ -137,7 +137,7 @@ import org.apache.sis.measure.Units; * * @author Martin Desruisseaux (Geomatys) * @author Alexis Manin (Geomatys) - * @version 1.4 + * @version 1.5 * * @see org.apache.sis.coverage.grid.GridCoverageProcessor * @@ -223,18 +223,6 @@ public class ImageProcessor implements Cloneable { */ private Colorizer colorizer; -/** - * Colors to use for arbitrary categories of sample values. This function can return {@code null} - * or empty arrays for some categories, which are interpreted as fully transparent pixels. - * - * @see #getCategoryColors() - * @see #setCategoryColors(Function) - * - * @deprecated Replaced by {@link #colorizer}. - */ -@Deprecated(since="1.4", forRemoval=true) -private Function colors; - /** * Hints about the desired positional accuracy (in "real world" units or in pixel units), * or {@code null} if unspecified. In order to avoid the need to clone this array in the @@ -403,44 +391,6 @@ public class ImageProcessor implements Cloneable { */ public synchronized void setColorizer(final Colorizer colorizer) { this.colorizer = colorizer; -colors = null; -} - -/** - * Returns the colors to use for given categories of sample values, or {@code null} if unspecified. - * This method returns the function set by the last call to {@link #setCategoryColors(Function)}. - * - * @return colors to use for arbitrary categories of sample values, or {@code null} for default. - * - * @deprecated Replaced by {@link #getColorizer()}. - */ -@Deprecated(since="1.4", forRemoval=true) -public synchronized Function getCategoryColors() { -return colors; -} - -/** - * Sets the colors to use for given categories in image, or {@code null} if unspecified. - * This function provides a way to colorize images without knowing in advance the numerical values of pixels. - * For example, instead of specifying "pixel value 0 is blue, 1 is green, 2 is yellow", - * this function allows to specify "Lakes are blue, Forests are green, Sand is yellow". - * It is still possible however to use numerical values if the function desires to do so, - * since this information is available with {@link Category#getSampleRange()}. - * - * This function is used by methods expecting {@link SampleDimension} arguments such as - * {@link #visualize(RenderedImage, List)}. The given function can ret
(sis) 02/03: Following the removal of `InterpolatedMolodenskyTransform`, retrofit `MolodenskyFormula` into `MolodenskyTransform`.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit 4956bf7511f6840524685a3c021b96b871b1878b Author: Martin Desruisseaux AuthorDate: Sat Oct 28 23:29:32 2023 +0200 Following the removal of `InterpolatedMolodenskyTransform`, retrofit `MolodenskyFormula` into `MolodenskyTransform`. --- .../main/module-info.java | 2 +- .../transform/AbridgedMolodenskyTransform2D.java | 2 +- .../operation/transform/MolodenskyFormula.java | 463 - .../operation/transform/MolodenskyTransform.java | 418 ++- 4 files changed, 401 insertions(+), 484 deletions(-) diff --git a/endorsed/src/org.apache.sis.referencing/main/module-info.java b/endorsed/src/org.apache.sis.referencing/main/module-info.java index 6b668db7a6..af2202a759 100644 --- a/endorsed/src/org.apache.sis.referencing/main/module-info.java +++ b/endorsed/src/org.apache.sis.referencing/main/module-info.java @@ -21,7 +21,7 @@ * @author Martin Desruisseaux (Geomatys) * @author Rémi Maréchal (Geomatys) * @author Maxime Gavens (Geomatys) - * @version 1.4 + * @version 1.5 * @since 0.3 */ module org.apache.sis.referencing { diff --git a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/transform/AbridgedMolodenskyTransform2D.java b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/transform/AbridgedMolodenskyTransform2D.java index d1ca0e7fd7..0eaef9b946 100644 --- a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/transform/AbridgedMolodenskyTransform2D.java +++ b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/transform/AbridgedMolodenskyTransform2D.java @@ -26,7 +26,7 @@ import static java.lang.Math.*; /** * Two-dimensional abridged Molodensky transform with all translation terms fixed to zero. * This implementation performs only a change of ellipsoid. It provides nothing new compared - * to {@link MolodenskyFormula}, except performance. + * to {@link MolodenskyTransform}, except performance. * * Note: this transform is yet more abridged than standard "abridged Molondensky" transform since * it sets all translation terms to zero. A better class name could be "Very abridged Molodensky transform". diff --git a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/transform/MolodenskyFormula.java b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/transform/MolodenskyFormula.java deleted file mode 100644 index 63c0a9f3e9..00 --- a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/transform/MolodenskyFormula.java +++ /dev/null @@ -1,463 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.sis.referencing.operation.transform; - -import javax.measure.Unit; -import javax.measure.quantity.Length; -import org.opengis.parameter.ParameterValueGroup; -import org.opengis.parameter.ParameterDescriptorGroup; -import org.opengis.referencing.datum.Ellipsoid; -import org.opengis.referencing.operation.Matrix; -import org.opengis.referencing.operation.TransformException; -import org.apache.sis.referencing.operation.matrix.Matrices; -import org.apache.sis.referencing.datum.DefaultEllipsoid; -import org.apache.sis.referencing.datum.DatumShiftGrid; -import org.apache.sis.referencing.operation.provider.Molodensky; -import org.apache.sis.util.ArgumentChecks; -import org.apache.sis.util.ComparisonMode; -import org.apache.sis.util.Debug; -import org.apache.sis.util.internal.Numerics; -import org.apache.sis.parameter.Parameters; - -import static java.lang.Math.*; - - -/** - * Implementation of Molodensky formulas. - * - * @author Martin Desruisseaux (Geomatys) - */ -abstract class MolodenskyFormula extends DatumShiftTransform { -/** - * Serial number for inter-operability with different versions. - */ -private static final long serialVersionUID = 7684676923384073055L; - -/** -
(sis) branch geoapi-4.0 updated (b4fbe3c1d5 -> c4a3614aa0)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git from b4fbe3c1d5 Remove NullArgumentException. https://issues.apache.org/jira/browse/SIS-562 new a7331c907e Remove the deprecated `InterpolatedMolodenskyTransform` class. new 4956bf7511 Following the removal of `InterpolatedMolodenskyTransform`, retrofit `MolodenskyFormula` into `MolodenskyTransform`. new c4a3614aa0 Remove deprecated methods. The 3 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../org.apache.sis.feature/main/module-info.java | 2 +- .../main/org/apache/sis/image/ImageProcessor.java | 151 +-- .../main/org/apache/sis/image/Visualization.java | 12 - .../main/org/apache/sis/image/package-info.java| 2 +- .../org.apache.sis.metadata/main/module-info.java | 2 +- .../apache/sis/metadata/iso/DefaultMetadata.java | 88 +--- .../org/apache/sis/metadata/iso/package-info.java | 2 +- .../main/module-info.java | 2 +- .../DefaultCoordinateOperationFactory.java | 2 +- .../referencing/operation/matrix/MatrixSIS.java| 23 +- .../referencing/operation/matrix/package-info.java | 2 +- .../provider/FranceGeocentricInterpolation.java| 32 +- .../provider/MolodenskyInterpolation.java | 105 - .../transform/AbridgedMolodenskyTransform2D.java | 2 +- .../operation/transform/DatumShiftTransform.java | 32 +- .../transform/InterpolatedGeocentricTransform.java | 30 +- .../transform/InterpolatedMolodenskyTransform.java | 458 --- .../InterpolatedMolodenskyTransform2D.java | 139 -- .../operation/transform/MathTransforms.java| 18 - .../operation/transform/MolodenskyFormula.java | 490 - .../operation/transform/MolodenskyTransform.java | 418 +- .../operation/transform/package-info.java | 2 +- .../operation/provider/ProvidersTest.java | 1 - .../InterpolatedMolodenskyTransformTest.java | 130 -- .../src/org.apache.sis.util/main/module-info.java | 2 +- .../main/org/apache/sis/util/ArgumentChecks.java | 66 --- .../main/org/apache/sis/util/CharSequences.java| 36 +- .../main/org/apache/sis/util/logging/Logging.java | 18 +- .../org/apache/sis/util/logging/package-info.java | 2 +- .../apache/sis/gui/internal/ImageConverter.java| 2 +- 30 files changed, 464 insertions(+), 1807 deletions(-) delete mode 100644 endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/provider/MolodenskyInterpolation.java delete mode 100644 endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/transform/InterpolatedMolodenskyTransform.java delete mode 100644 endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/transform/InterpolatedMolodenskyTransform2D.java delete mode 100644 endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/transform/MolodenskyFormula.java delete mode 100644 endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/operation/transform/InterpolatedMolodenskyTransformTest.java
(sis) branch visual-test updated: Fix compilation of visual tests.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch visual-test in repository https://gitbox.apache.org/repos/asf/sis.git The following commit(s) were added to refs/heads/visual-test by this push: new e78eaa8933 Fix compilation of visual tests. e78eaa8933 is described below commit e78eaa893386ecf37e9711760d44b87afc27cde1 Author: Martin Desruisseaux AuthorDate: Sat Oct 28 18:17:06 2023 +0200 Fix compilation of visual tests. --- pom.xml| 14 +- src/main/java/org/apache/sis/swing/DoubleDimension2D.java | 2 +- src/main/java/org/apache/sis/swing/ZoomPane.java | 3 +-- src/main/java/org/apache/sis/test/visual/IsolinesView.java | 4 ++-- 4 files changed, 17 insertions(+), 6 deletions(-) diff --git a/pom.xml b/pom.xml index 463807f31b..68e5570b61 100644 --- a/pom.xml +++ b/pom.xml @@ -27,7 +27,7 @@ org.apache.sis -core +parent 2.0-SNAPSHOT @@ -82,6 +82,18 @@ sis-feature ${project.version} + + org.junit.jupiter + junit-jupiter-api + 5.9.3 + test + + + org.junit.vintage + junit-vintage-engine + 5.9.3 + test + diff --git a/src/main/java/org/apache/sis/swing/DoubleDimension2D.java b/src/main/java/org/apache/sis/swing/DoubleDimension2D.java index d8f1ea301b..b78e25e9f7 100644 --- a/src/main/java/org/apache/sis/swing/DoubleDimension2D.java +++ b/src/main/java/org/apache/sis/swing/DoubleDimension2D.java @@ -19,7 +19,7 @@ package org.apache.sis.swing; import java.io.Serializable; import java.awt.geom.Dimension2D; import static java.lang.Double.doubleToLongBits; -import org.apache.sis.internal.util.Numerics; +import org.apache.sis.util.internal.Numerics; /** diff --git a/src/main/java/org/apache/sis/swing/ZoomPane.java b/src/main/java/org/apache/sis/swing/ZoomPane.java index d8f6e885d4..f84f5ae65c 100644 --- a/src/main/java/org/apache/sis/swing/ZoomPane.java +++ b/src/main/java/org/apache/sis/swing/ZoomPane.java @@ -74,7 +74,6 @@ import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import org.apache.sis.util.logging.Logging; -import org.apache.sis.util.NullArgumentException; import org.apache.sis.referencing.operation.matrix.AffineTransforms2D; import org.apache.sis.util.resources.Errors; import org.apache.sis.swing.internal.Resources; @@ -1353,7 +1352,7 @@ public abstract class ZoomPane extends JComponent implements DeformableViewer { * because some classes use it for updating scrollbars. */ if (change == null) { -throw new NullArgumentException(); +throw new NullPointerException(); } ZoomChangeEvent event = null; final Object[] listeners = listenerList.getListenerList(); diff --git a/src/main/java/org/apache/sis/test/visual/IsolinesView.java b/src/main/java/org/apache/sis/test/visual/IsolinesView.java index e778d69ed2..e66e0fcdaf 100644 --- a/src/main/java/org/apache/sis/test/visual/IsolinesView.java +++ b/src/main/java/org/apache/sis/test/visual/IsolinesView.java @@ -34,8 +34,8 @@ import java.awt.image.BufferedImage; import java.awt.image.DataBuffer; import javax.swing.JComponent; import org.apache.sis.referencing.operation.matrix.AffineTransforms2D; -import org.apache.sis.internal.coverage.j2d.RasterFactory; -import org.apache.sis.internal.processing.isoline.Isolines; +import org.apache.sis.coverage.grid.j2d.RasterFactory; +import org.apache.sis.image.processing.isoline.Isolines; import org.apache.sis.swing.ZoomPane; import org.apache.sis.util.Classes;
(sis) 01/02: Add more classes or packages to qualify as test dependencies when organizing import statements.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit 34f2e7c37391b08ce7c8926de829a14e39fbee01 Author: Martin Desruisseaux AuthorDate: Sat Oct 28 17:35:51 2023 +0200 Add more classes or packages to qualify as test dependencies when organizing import statements. --- .../sis/buildtools/coding/ReorganizeImports.java | 31 +++--- 1 file changed, 21 insertions(+), 10 deletions(-) diff --git a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/coding/ReorganizeImports.java b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/coding/ReorganizeImports.java index 042adb95db..0768e3b922 100644 --- a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/coding/ReorganizeImports.java +++ b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/coding/ReorganizeImports.java @@ -141,13 +141,24 @@ public final class ReorganizeImports extends SimpleFileVisitor { }; /** - * Packages of test dependencies. The first time that one of those packages is found, + * Classes or packages of test dependencies. The first time that one of those elements is found, * a "// Test dependencies" header comment will be added. */ -private static final String[] TEST_PACKAGES = { +private static final String[] TEST_ELEMENTS = { "org.junit", "org.opengis.test", -"org.apache.sis.test" +"org.apache.sis.test", +"org.apache.sis.util.test", +"org.apache.sis.xml.test", +"org.apache.sis.storage.test", +"org.apache.sis.image.TiledImageMock", +"org.apache.sis.metadata.sql.TestDatabase", +"org.apache.sis.referencing.cs.HardCodedAxes", +"org.apache.sis.referencing.cs.HardCodedCS", +"org.apache.sis.referencing.crs.HardCodedCRS", +"org.apache.sis.referencing.datum.HardCodedDatum", +"org.apache.sis.referencing.operation.HardCodedConversions", +"org.apache.sis.metadata.iso.citation.HardCodedCitations" }; /** @@ -235,7 +246,7 @@ public final class ReorganizeImports extends SimpleFileVisitor { private String[] header, body; /** - * The imported package names, together with a bitmask telling in which branches they are found. + * The imported class or package names, together with a bitmask telling in which branches they are found. */ private final Map imports; @@ -420,13 +431,13 @@ public final class ReorganizeImports extends SimpleFileVisitor { } /** - * Returns whether the given imported package is a test package. + * Returns whether the given imported class or package is for testing purpose. * - * @param element name of the package to test. - * @return whether the specified package is a test package. + * @param element name of the class or package to filter. + * @return whether the specified class or package is for tests. */ -private static boolean isTestPackage(final String element) { -for (final String c : TEST_PACKAGES) { +private static boolean isTestElement(final String element) { +for (final String c : TEST_ELEMENTS) { if (element.startsWith(c)) { return true; } @@ -495,7 +506,7 @@ public final class ReorganizeImports extends SimpleFileVisitor { * imports to a group of static imports, then add the import statement. */ final String element = entry.getKey(); -if (!isTestImports && isTestPackage(element)) { +if (!isTestImports && isTestElement(element)) { needSeparator = false; isTestImports = true; dest.add("");
(sis) branch geoapi-4.0 updated (53ac462e63 -> b4fbe3c1d5)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git from 53ac462e63 Automatic reordering and branch-separation of import statements. This is done by the `org.apache.sis.buildtools.coding.ReorganizeImports` tool in buildSrc for putting Java imports first, then Jakarta, then OpenGIS, and finally Apache SIS. The most important thing is that `ReorganizeImports` creates separated sections for imports that are not the same between the "geoapi-4.0", "geoapi-3.1" and "main" branches. new 34f2e7c373 Add more classes or packages to qualify as test dependencies when organizing import statements. new b4fbe3c1d5 Remove NullArgumentException. https://issues.apache.org/jira/browse/SIS-562 The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../sis/buildtools/coding/ReorganizeImports.java | 31 ++ .../org/apache/sis/coverage/grid/GridGeometry.java | 5 +- .../org/apache/sis/coverage/grid/package-info.java | 2 +- .../apache/sis/feature/builder/TypeBuilder.java| 7 +-- .../apache/sis/feature/builder/package-info.java | 2 +- .../sis/geometry/wrapper/GeometryWrapper.java | 5 +- .../DefaultCoordinateOperationFactory.java | 5 +- .../sis/referencing/operation/package-info.java| 2 +- .../main/org/apache/sis/util/ArgumentChecks.java | 54 - .../org/apache/sis/util/NullArgumentException.java | 67 -- .../apache/sis/util/collection/CodeListSet.java| 5 +- .../sis/util/collection/WeakValueHashMap.java | 11 ++-- .../apache/sis/util/collection/package-info.java | 2 +- .../apache/sis/util/internal/CheckedArrayList.java | 3 +- .../apache/sis/util/internal/CheckedHashSet.java | 3 +- .../main/org/apache/sis/util/package-info.java | 2 +- .../org/apache/sis/util/ArgumentChecksTest.java| 4 +- .../sis/util/internal/CheckedArrayListTest.java| 5 +- 18 files changed, 75 insertions(+), 140 deletions(-) delete mode 100644 endorsed/src/org.apache.sis.util/main/org/apache/sis/util/NullArgumentException.java
(sis) 02/02: Remove NullArgumentException. https://issues.apache.org/jira/browse/SIS-562
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit b4fbe3c1d524d896eacc8a9f53e5ae8836788cb3 Author: Martin Desruisseaux AuthorDate: Sat Oct 28 17:58:15 2023 +0200 Remove NullArgumentException. https://issues.apache.org/jira/browse/SIS-562 --- .../org/apache/sis/coverage/grid/GridGeometry.java | 5 +- .../org/apache/sis/coverage/grid/package-info.java | 2 +- .../apache/sis/feature/builder/TypeBuilder.java| 7 +-- .../apache/sis/feature/builder/package-info.java | 2 +- .../sis/geometry/wrapper/GeometryWrapper.java | 5 +- .../DefaultCoordinateOperationFactory.java | 5 +- .../sis/referencing/operation/package-info.java| 2 +- .../main/org/apache/sis/util/ArgumentChecks.java | 54 - .../org/apache/sis/util/NullArgumentException.java | 67 -- .../apache/sis/util/collection/CodeListSet.java| 5 +- .../sis/util/collection/WeakValueHashMap.java | 11 ++-- .../apache/sis/util/collection/package-info.java | 2 +- .../apache/sis/util/internal/CheckedArrayList.java | 3 +- .../apache/sis/util/internal/CheckedHashSet.java | 3 +- .../main/org/apache/sis/util/package-info.java | 2 +- .../org/apache/sis/util/ArgumentChecksTest.java| 4 +- .../sis/util/internal/CheckedArrayListTest.java| 5 +- 17 files changed, 54 insertions(+), 130 deletions(-) diff --git a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/coverage/grid/GridGeometry.java b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/coverage/grid/GridGeometry.java index 75c2397d38..b77e437c60 100644 --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/coverage/grid/GridGeometry.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/coverage/grid/GridGeometry.java @@ -61,7 +61,6 @@ import org.apache.sis.referencing.util.TemporalAccessor; import org.apache.sis.referencing.util.AxisDirections; import org.apache.sis.metadata.internal.ReferencingServices; import org.apache.sis.feature.internal.Resources; -import org.apache.sis.util.NullArgumentException; import org.apache.sis.util.LenientComparable; import org.apache.sis.util.ComparisonMode; import org.apache.sis.util.ArgumentChecks; @@ -132,7 +131,7 @@ import static org.apache.sis.referencing.CRS.findOperation; * * @author Martin Desruisseaux (IRD, Geomatys) * @author Johann Sorel (Geomatys) - * @version 1.4 + * @version 1.5 * @since 1.0 */ public class GridGeometry implements LenientComparable, Serializable { @@ -661,7 +660,7 @@ public class GridGeometry implements LenientComparable, Serializable { boolean nilEnvelope = true; if (target == null || ((nilEnvelope = target.isAllNaN()) && target.getCoordinateReferenceSystem() == null)) { if (target != null && nilEnvelope) { -throw new NullArgumentException(Errors.format(Errors.Keys.UnspecifiedCRS)); +throw new NullPointerException(Errors.format(Errors.Keys.UnspecifiedCRS)); } ArgumentChecks.ensureNonNull("extent", extent); this.envelope = null; diff --git a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/coverage/grid/package-info.java b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/coverage/grid/package-info.java index cd3dd5c96c..1dc6010778 100644 --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/coverage/grid/package-info.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/coverage/grid/package-info.java @@ -41,7 +41,7 @@ * @author Martin Desruisseaux (Geomatys) * @author Johann Sorel (Geomatys) * @author Alexis Manin (Geomatys) - * @version 1.4 + * @version 1.5 * @since 1.0 */ package org.apache.sis.coverage.grid; diff --git a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/builder/TypeBuilder.java b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/builder/TypeBuilder.java index 36f9c77e75..91733ca9df 100644 --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/builder/TypeBuilder.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/builder/TypeBuilder.java @@ -26,7 +26,6 @@ import org.opengis.util.GenericName; import org.opengis.util.InternationalString; import org.apache.sis.feature.AbstractIdentifiedType; import org.apache.sis.feature.internal.Resources; -import org.apache.sis.util.NullArgumentException; import org.apache.sis.util.Deprecable; import org.apache.sis.util.Localized; import org.apache.sis.util.Classes; @@ -74,7 +73,7 @@ import org.opengis.feature.PropertyNotFoundException; * * @author Johann Sorel (Geomatys) * @author Martin Desruisseaux (Geomatys) - * @version 0.8 + * @version 1.5 * @since 0.8 */ public abstract class TypeBuilder implements Localized {
(sis) branch main updated (9686f9d864 -> 8783e66c1f)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch main in repository https://gitbox.apache.org/repos/asf/sis.git from 9686f9d864 Merge branch 'geoapi-3.1' add 53ac462e63 Automatic reordering and branch-separation of import statements. This is done by the `org.apache.sis.buildtools.coding.ReorganizeImports` tool in buildSrc for putting Java imports first, then Jakarta, then OpenGIS, and finally Apache SIS. The most important thing is that `ReorganizeImports` creates separated sections for imports that are not the same between the "geoapi-4.0", "geoapi-3.1" and "main" branches. add e0f5cfa3ec Merge branch 'geoapi-4.0' into geoapi-3.1 new 8783e66c1f Merge branch 'geoapi-3.1' The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../apache/sis/geometry/wrapper/jts/Wrapper.java | 2 +- .../sis/metadata/PropertyConsistencyCheck.java | 2 +- .../apache/sis/storage/geotiff/GeoTiffStore.java | 2 +- .../org/apache/sis/storage/geotiff/Writer.java | 4 ++-- .../sis/storage/geotiff/writer/GeoEncoder.java | 9 + .../storage/geotiff/writer/ReformattedImage.java | 3 ++- .../org/apache/sis/storage/geotiff/WriterTest.java | 7 --- .../apache/sis/storage/base/MetadataFetcher.java | 3 ++- .../sis/io/stream/HyperRectangleWriterTest.java| 6 -- .../apache/sis/io/stream/UpdatableWriteTest.java | 6 -- .../storage/coveragejson/CoverageJsonStore.java| 22 +++--- .../coveragejson/CoverageJsonStoreProvider.java| 8 .../sis/storage/coveragejson/CoverageResource.java | 21 +++-- .../sis/storage/coveragejson/binding/Axe.java | 4 ++-- .../sis/storage/coveragejson/binding/Axes.java | 2 +- .../sis/storage/coveragejson/binding/Category.java | 2 +- .../coveragejson/binding/CategoryEncoding.java | 4 ++-- .../sis/storage/coveragejson/binding/Coverage.java | 6 +++--- .../coveragejson/binding/CoverageCollection.java | 4 ++-- .../storage/coveragejson/binding/Dictionary.java | 4 ++-- .../sis/storage/coveragejson/binding/Domain.java | 4 ++-- .../coveragejson/binding/GeographicCRS.java| 2 +- .../sis/storage/coveragejson/binding/I18N.java | 8 .../storage/coveragejson/binding/IdentifierRS.java | 2 +- .../sis/storage/coveragejson/binding/NdArray.java | 4 ++-- .../coveragejson/binding/ObservedProperty.java | 4 ++-- .../storage/coveragejson/binding/Parameter.java| 2 +- .../coveragejson/binding/ParameterGroup.java | 4 ++-- .../storage/coveragejson/binding/Parameters.java | 4 ++-- .../storage/coveragejson/binding/ProjectedCRS.java | 2 +- .../sis/storage/coveragejson/binding/Ranges.java | 4 ++-- .../binding/ReferenceSystemConnection.java | 4 ++-- .../sis/storage/coveragejson/binding/Symbol.java | 2 +- .../coveragejson/binding/TargetConcept.java| 2 +- .../storage/coveragejson/binding/TemporalRS.java | 2 +- .../sis/storage/coveragejson/binding/TileSet.java | 6 +++--- .../storage/coveragejson/binding/TiledNdArray.java | 4 ++-- .../sis/storage/coveragejson/binding/Unit.java | 2 +- .../storage/coveragejson/binding/VerticalCRS.java | 2 +- .../coveragejson/CoverageJsonStoreTest.java| 13 - .../storage/coveragejson/binding/BindingTest.java | 13 - 41 files changed, 113 insertions(+), 98 deletions(-)
(sis) 01/01: Merge branch 'geoapi-3.1'
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/sis.git commit 8783e66c1f5f995a5cb2c75cebf1598f81d2cad5 Merge: 9686f9d864 e0f5cfa3ec Author: Martin Desruisseaux AuthorDate: Sat Oct 28 17:08:29 2023 +0200 Merge branch 'geoapi-3.1' .../apache/sis/geometry/wrapper/jts/Wrapper.java | 2 +- .../sis/metadata/PropertyConsistencyCheck.java | 2 +- .../apache/sis/storage/geotiff/GeoTiffStore.java | 2 +- .../org/apache/sis/storage/geotiff/Writer.java | 4 ++-- .../sis/storage/geotiff/writer/GeoEncoder.java | 9 + .../storage/geotiff/writer/ReformattedImage.java | 3 ++- .../org/apache/sis/storage/geotiff/WriterTest.java | 7 --- .../apache/sis/storage/base/MetadataFetcher.java | 3 ++- .../sis/io/stream/HyperRectangleWriterTest.java| 6 -- .../apache/sis/io/stream/UpdatableWriteTest.java | 6 -- .../storage/coveragejson/CoverageJsonStore.java| 22 +++--- .../coveragejson/CoverageJsonStoreProvider.java| 8 .../sis/storage/coveragejson/CoverageResource.java | 21 +++-- .../sis/storage/coveragejson/binding/Axe.java | 4 ++-- .../sis/storage/coveragejson/binding/Axes.java | 2 +- .../sis/storage/coveragejson/binding/Category.java | 2 +- .../coveragejson/binding/CategoryEncoding.java | 4 ++-- .../sis/storage/coveragejson/binding/Coverage.java | 6 +++--- .../coveragejson/binding/CoverageCollection.java | 4 ++-- .../storage/coveragejson/binding/Dictionary.java | 4 ++-- .../sis/storage/coveragejson/binding/Domain.java | 4 ++-- .../coveragejson/binding/GeographicCRS.java| 2 +- .../sis/storage/coveragejson/binding/I18N.java | 8 .../storage/coveragejson/binding/IdentifierRS.java | 2 +- .../sis/storage/coveragejson/binding/NdArray.java | 4 ++-- .../coveragejson/binding/ObservedProperty.java | 4 ++-- .../storage/coveragejson/binding/Parameter.java| 2 +- .../coveragejson/binding/ParameterGroup.java | 4 ++-- .../storage/coveragejson/binding/Parameters.java | 4 ++-- .../storage/coveragejson/binding/ProjectedCRS.java | 2 +- .../sis/storage/coveragejson/binding/Ranges.java | 4 ++-- .../binding/ReferenceSystemConnection.java | 4 ++-- .../sis/storage/coveragejson/binding/Symbol.java | 2 +- .../coveragejson/binding/TargetConcept.java| 2 +- .../storage/coveragejson/binding/TemporalRS.java | 2 +- .../sis/storage/coveragejson/binding/TileSet.java | 6 +++--- .../storage/coveragejson/binding/TiledNdArray.java | 4 ++-- .../sis/storage/coveragejson/binding/Unit.java | 2 +- .../storage/coveragejson/binding/VerticalCRS.java | 2 +- .../coveragejson/CoverageJsonStoreTest.java| 13 - .../storage/coveragejson/binding/BindingTest.java | 13 - 41 files changed, 113 insertions(+), 98 deletions(-) diff --cc endorsed/src/org.apache.sis.metadata/test/org/apache/sis/metadata/PropertyConsistencyCheck.java index 531f71f93b,9fa86d38b4..7460f4a0ef --- a/endorsed/src/org.apache.sis.metadata/test/org/apache/sis/metadata/PropertyConsistencyCheck.java +++ b/endorsed/src/org.apache.sis.metadata/test/org/apache/sis/metadata/PropertyConsistencyCheck.java @@@ -31,10 -31,13 +31,10 @@@ import org.apache.sis.metadata.internal // Test dependencies import org.junit.Test; - import org.apache.sis.test.TestUtilities; import org.apache.sis.test.DependsOn; + import org.apache.sis.test.TestUtilities; import org.apache.sis.xml.test.AnnotationConsistencyCheck; -// Specific to the geoapi-3.1 and geoapi-4.0 branches: -import org.opengis.util.ControlledVocabulary; - /** * Base class for tests done on metadata objects using reflection. This base class tests JAXB annotations diff --cc endorsed/src/org.apache.sis.storage/main/org/apache/sis/storage/base/MetadataFetcher.java index 8e0f417ddb,7a60ecb1f7..f987d86fd6 --- a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/storage/base/MetadataFetcher.java +++ b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/storage/base/MetadataFetcher.java @@@ -41,9 -40,11 +40,11 @@@ import org.opengis.metadata.spatial.Cel import org.opengis.metadata.spatial.Georectified; import org.opengis.metadata.spatial.SpatialRepresentation; import org.opengis.metadata.spatial.GridSpatialRepresentation; + import org.apache.sis.util.collection.CodeListSet; -// Specific to the geoapi-3.1 and geoapi-4.0 branches: -import org.opengis.metadata.citation.Party; -import org.opengis.metadata.citation.Responsibility; ++// Specific to the main branch: +import org.opengis.metadata.citation.ResponsibleParty; +import org.apache.sis.metadata.iso.DefaultMetadata; /** diff --cc incubator/src/org.apache.sis.storage.coveragejson/main/org/apache/sis/storage/coveragejson/CoverageResource.java index 2891698e2e,db4aeaf0ce
(sis) branch geoapi-3.1 updated (b81aa21f91 -> e0f5cfa3ec)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch geoapi-3.1 in repository https://gitbox.apache.org/repos/asf/sis.git from b81aa21f91 Merge branch 'geoapi-4.0' into geoapi-3.1. Contains the addition of a "coveragejson" module and a first draft of GeoTIFF writer. add 53ac462e63 Automatic reordering and branch-separation of import statements. This is done by the `org.apache.sis.buildtools.coding.ReorganizeImports` tool in buildSrc for putting Java imports first, then Jakarta, then OpenGIS, and finally Apache SIS. The most important thing is that `ReorganizeImports` creates separated sections for imports that are not the same between the "geoapi-4.0", "geoapi-3.1" and "main" branches. new e0f5cfa3ec Merge branch 'geoapi-4.0' into geoapi-3.1 The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../apache/sis/geometry/wrapper/jts/Wrapper.java | 2 +- .../sis/metadata/PropertyConsistencyCheck.java | 2 +- .../sis/metadata/xml/SchemaComplianceTest.java | 2 +- .../apache/sis/storage/geotiff/GeoTiffStore.java | 2 +- .../org/apache/sis/storage/geotiff/Writer.java | 4 ++-- .../sis/storage/geotiff/writer/GeoEncoder.java | 9 + .../storage/geotiff/writer/ReformattedImage.java | 3 ++- .../org/apache/sis/storage/geotiff/WriterTest.java | 7 --- .../apache/sis/storage/base/MetadataFetcher.java | 8 +--- .../sis/io/stream/HyperRectangleWriterTest.java| 6 -- .../apache/sis/io/stream/UpdatableWriteTest.java | 6 -- .../storage/coveragejson/CoverageJsonStore.java| 22 +++--- .../coveragejson/CoverageJsonStoreProvider.java| 8 .../sis/storage/coveragejson/CoverageResource.java | 22 -- .../sis/storage/coveragejson/binding/Axe.java | 4 ++-- .../sis/storage/coveragejson/binding/Axes.java | 2 +- .../sis/storage/coveragejson/binding/Category.java | 2 +- .../coveragejson/binding/CategoryEncoding.java | 4 ++-- .../sis/storage/coveragejson/binding/Coverage.java | 6 +++--- .../coveragejson/binding/CoverageCollection.java | 4 ++-- .../storage/coveragejson/binding/Dictionary.java | 4 ++-- .../sis/storage/coveragejson/binding/Domain.java | 4 ++-- .../coveragejson/binding/GeographicCRS.java| 2 +- .../sis/storage/coveragejson/binding/I18N.java | 8 .../storage/coveragejson/binding/IdentifierRS.java | 2 +- .../sis/storage/coveragejson/binding/NdArray.java | 4 ++-- .../coveragejson/binding/ObservedProperty.java | 4 ++-- .../storage/coveragejson/binding/Parameter.java| 2 +- .../coveragejson/binding/ParameterGroup.java | 4 ++-- .../storage/coveragejson/binding/Parameters.java | 4 ++-- .../storage/coveragejson/binding/ProjectedCRS.java | 2 +- .../sis/storage/coveragejson/binding/Ranges.java | 4 ++-- .../binding/ReferenceSystemConnection.java | 4 ++-- .../sis/storage/coveragejson/binding/Symbol.java | 2 +- .../coveragejson/binding/TargetConcept.java| 2 +- .../storage/coveragejson/binding/TemporalRS.java | 2 +- .../sis/storage/coveragejson/binding/TileSet.java | 6 +++--- .../storage/coveragejson/binding/TiledNdArray.java | 4 ++-- .../sis/storage/coveragejson/binding/Unit.java | 2 +- .../storage/coveragejson/binding/VerticalCRS.java | 2 +- .../coveragejson/CoverageJsonStoreTest.java| 13 - .../storage/coveragejson/binding/BindingTest.java | 13 - 42 files changed, 118 insertions(+), 101 deletions(-)
(sis) 01/01: Merge branch 'geoapi-4.0' into geoapi-3.1
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-3.1 in repository https://gitbox.apache.org/repos/asf/sis.git commit e0f5cfa3ec8216015164da158bfe05792714fe77 Merge: b81aa21f91 53ac462e63 Author: Martin Desruisseaux AuthorDate: Sat Oct 28 16:57:33 2023 +0200 Merge branch 'geoapi-4.0' into geoapi-3.1 .../apache/sis/geometry/wrapper/jts/Wrapper.java | 2 +- .../sis/metadata/PropertyConsistencyCheck.java | 2 +- .../sis/metadata/xml/SchemaComplianceTest.java | 2 +- .../apache/sis/storage/geotiff/GeoTiffStore.java | 2 +- .../org/apache/sis/storage/geotiff/Writer.java | 4 ++-- .../sis/storage/geotiff/writer/GeoEncoder.java | 9 + .../storage/geotiff/writer/ReformattedImage.java | 3 ++- .../org/apache/sis/storage/geotiff/WriterTest.java | 7 --- .../apache/sis/storage/base/MetadataFetcher.java | 8 +--- .../sis/io/stream/HyperRectangleWriterTest.java| 6 -- .../apache/sis/io/stream/UpdatableWriteTest.java | 6 -- .../storage/coveragejson/CoverageJsonStore.java| 22 +++--- .../coveragejson/CoverageJsonStoreProvider.java| 8 .../sis/storage/coveragejson/CoverageResource.java | 22 -- .../sis/storage/coveragejson/binding/Axe.java | 4 ++-- .../sis/storage/coveragejson/binding/Axes.java | 2 +- .../sis/storage/coveragejson/binding/Category.java | 2 +- .../coveragejson/binding/CategoryEncoding.java | 4 ++-- .../sis/storage/coveragejson/binding/Coverage.java | 6 +++--- .../coveragejson/binding/CoverageCollection.java | 4 ++-- .../storage/coveragejson/binding/Dictionary.java | 4 ++-- .../sis/storage/coveragejson/binding/Domain.java | 4 ++-- .../coveragejson/binding/GeographicCRS.java| 2 +- .../sis/storage/coveragejson/binding/I18N.java | 8 .../storage/coveragejson/binding/IdentifierRS.java | 2 +- .../sis/storage/coveragejson/binding/NdArray.java | 4 ++-- .../coveragejson/binding/ObservedProperty.java | 4 ++-- .../storage/coveragejson/binding/Parameter.java| 2 +- .../coveragejson/binding/ParameterGroup.java | 4 ++-- .../storage/coveragejson/binding/Parameters.java | 4 ++-- .../storage/coveragejson/binding/ProjectedCRS.java | 2 +- .../sis/storage/coveragejson/binding/Ranges.java | 4 ++-- .../binding/ReferenceSystemConnection.java | 4 ++-- .../sis/storage/coveragejson/binding/Symbol.java | 2 +- .../coveragejson/binding/TargetConcept.java| 2 +- .../storage/coveragejson/binding/TemporalRS.java | 2 +- .../sis/storage/coveragejson/binding/TileSet.java | 6 +++--- .../storage/coveragejson/binding/TiledNdArray.java | 4 ++-- .../sis/storage/coveragejson/binding/Unit.java | 2 +- .../storage/coveragejson/binding/VerticalCRS.java | 2 +- .../coveragejson/CoverageJsonStoreTest.java| 13 - .../storage/coveragejson/binding/BindingTest.java | 13 - 42 files changed, 118 insertions(+), 101 deletions(-)
(sis) branch geoapi-4.0 updated: Automatic reordering and branch-separation of import statements. This is done by the `org.apache.sis.buildtools.coding.ReorganizeImports` tool in buildSrc for putting
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git The following commit(s) were added to refs/heads/geoapi-4.0 by this push: new 53ac462e63 Automatic reordering and branch-separation of import statements. This is done by the `org.apache.sis.buildtools.coding.ReorganizeImports` tool in buildSrc for putting Java imports first, then Jakarta, then OpenGIS, and finally Apache SIS. The most important thing is that `ReorganizeImports` creates separated sections for imports that are not the same between the "geoapi-4.0", "geoapi-3.1" and "main" branches. 53ac462e63 is described below commit 53ac462e63222bdd509df494f0eae06440bf2bce Author: Martin Desruisseaux AuthorDate: Sat Oct 28 16:46:51 2023 +0200 Automatic reordering and branch-separation of import statements. This is done by the `org.apache.sis.buildtools.coding.ReorganizeImports` tool in buildSrc for putting Java imports first, then Jakarta, then OpenGIS, and finally Apache SIS. The most important thing is that `ReorganizeImports` creates separated sections for imports that are not the same between the "geoapi-4.0", "geoapi-3.1" and "main" branches. --- .../apache/sis/geometry/wrapper/jts/Wrapper.java | 2 +- .../sis/metadata/PropertyConsistencyCheck.java | 2 +- .../sis/metadata/xml/SchemaComplianceTest.java | 2 +- .../apache/sis/storage/geotiff/GeoTiffStore.java | 2 +- .../org/apache/sis/storage/geotiff/Writer.java | 4 ++-- .../sis/storage/geotiff/writer/GeoEncoder.java | 9 + .../storage/geotiff/writer/ReformattedImage.java | 3 ++- .../org/apache/sis/storage/geotiff/WriterTest.java | 7 --- .../apache/sis/storage/base/MetadataFetcher.java | 8 +--- .../sis/io/stream/HyperRectangleWriterTest.java| 6 -- .../apache/sis/io/stream/UpdatableWriteTest.java | 6 -- .../storage/coveragejson/CoverageJsonStore.java| 22 +++--- .../coveragejson/CoverageJsonStoreProvider.java| 8 .../sis/storage/coveragejson/CoverageResource.java | 22 -- .../sis/storage/coveragejson/binding/Axe.java | 4 ++-- .../sis/storage/coveragejson/binding/Axes.java | 2 +- .../sis/storage/coveragejson/binding/Category.java | 2 +- .../coveragejson/binding/CategoryEncoding.java | 4 ++-- .../sis/storage/coveragejson/binding/Coverage.java | 6 +++--- .../coveragejson/binding/CoverageCollection.java | 4 ++-- .../storage/coveragejson/binding/Dictionary.java | 4 ++-- .../sis/storage/coveragejson/binding/Domain.java | 4 ++-- .../coveragejson/binding/GeographicCRS.java| 2 +- .../sis/storage/coveragejson/binding/I18N.java | 8 .../storage/coveragejson/binding/IdentifierRS.java | 2 +- .../sis/storage/coveragejson/binding/NdArray.java | 4 ++-- .../coveragejson/binding/ObservedProperty.java | 4 ++-- .../storage/coveragejson/binding/Parameter.java| 2 +- .../coveragejson/binding/ParameterGroup.java | 4 ++-- .../storage/coveragejson/binding/Parameters.java | 4 ++-- .../storage/coveragejson/binding/ProjectedCRS.java | 2 +- .../sis/storage/coveragejson/binding/Ranges.java | 4 ++-- .../binding/ReferenceSystemConnection.java | 4 ++-- .../sis/storage/coveragejson/binding/Symbol.java | 2 +- .../coveragejson/binding/TargetConcept.java| 2 +- .../storage/coveragejson/binding/TemporalRS.java | 2 +- .../sis/storage/coveragejson/binding/TileSet.java | 6 +++--- .../storage/coveragejson/binding/TiledNdArray.java | 4 ++-- .../sis/storage/coveragejson/binding/Unit.java | 2 +- .../storage/coveragejson/binding/VerticalCRS.java | 2 +- .../coveragejson/CoverageJsonStoreTest.java| 13 - .../storage/coveragejson/binding/BindingTest.java | 13 - 42 files changed, 118 insertions(+), 101 deletions(-) diff --git a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/geometry/wrapper/jts/Wrapper.java b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/geometry/wrapper/jts/Wrapper.java index 77f1837e40..4d1389dec7 100644 --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/geometry/wrapper/jts/Wrapper.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/geometry/wrapper/jts/Wrapper.java @@ -52,11 +52,11 @@ import org.apache.sis.geometry.GeneralEnvelope; import org.apache.sis.geometry.wrapper.Geometries; import org.apache.sis.geometry.wrapper.GeometryType; import org.apache.sis.geometry.wrapper.GeometryWrapper; -import org.apache.sis.util.collection.BackingStoreException; import org.apache.sis.util.UnconvertibleObjectException; import org.apache.sis.util.ArgumentChecks; import org.apache.sis.util.ArraysExt; import org.apache.sis.util.Debug; +import org.apache.sis.util.collection.Backing
(sis) branch main updated (7276317ed7 -> 9686f9d864)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch main in repository https://gitbox.apache.org/repos/asf/sis.git from 7276317ed7 Set version number to 1.5 for next release cycle. add 3858503ae4 Documentation and code updates in I/O in preparation for GeoTIFF writer. add 255a5b2bd7 `ChannelDataInput` implements `DataInput` for allowing `instanceof` checks against a public interface. add a5cb0d0568 `ChannelDataOutput` implements `DataOutput` for allowing `instanceof` checks against a public interface. add e45d945158 Add `HyperRectangleWriter` as an helper class for multi-dimensional grid coverage writers. add 4fe9373158 Add `UpdatableWrite` as an helper class for data store writers which need to update values after they have been written. add defbef6e4a Tune test utilities in preparation for the addition of GeoTIFF writer. add 8facc18164 First version of a TIFF writer (work initiated by Erwan Roussel). This initial version works, but with a limited amount of color models and sample models. add 0cdc177a1b Rename GeoKeys from GeoTIFF 1.0 to GeoTIFF 1.1 names. The keys related to units of measure are now handled in a separated class. add e97299fd67 Initial GeoKeys support. add 182326f448 Fix spurious warnings during the verification of map projection parameters. add a93258c0ba Give more informative names to some parameters. add 3762fd80fe Redesign the way that readers and writers co-exist in `DataStore` implementations: - `isWritable(…)` needs to distinguish between opening an existing file or creating a new one. - `setStreamPosition(long)` removed. It was misused in most places, causing probable bugs. - Allow creation of `ChannelDataOutput` from a `ChannelDataInput`, sharing same internal. - Add `synchronize(…)` for making input `ChannelData` consistent with output, or conversely. add e91f576e12 Refactor `ChannelImageOutputStream` as an implementation of `ImageOutputStream`. It allows us to test `ChannelData.yield(ChannelData)`. add 4c94f8269e First draft of GeoTIFF writer accessible from public API. For now we do that with a `GeoTiffStore.appen(…)` method. add 0c4e04b918 Bug fixes when an channel data input yield to the output, or conversely. add 49288e5777 feat(CoverageJSON): add simple coveragejson read/write support in incubator add 00bd021524 Fix the project configuration for the addition of CoverageJSON store. add 11339c7efa Superficial formatting of CoverageJSON incubator module. add 130695a20b Fix the way reading and writing of single bits are handled in `ChannelData` input/output classes. add 2f6557ee18 Remove the "..." characters in JSON files for making them valid. add 8043b8130f Rearrange the GeoTIFF internal classes in some subpackages in order to provide at least a partial separation between reader and writer classes. add b81aa21f91 Merge branch 'geoapi-4.0' into geoapi-3.1. Contains the addition of a "coveragejson" module and a first draft of GeoTIFF writer. new 9686f9d864 Merge branch 'geoapi-3.1' The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../sis/coverage/grid/j2d/ImageUtilities.java | 18 + .../test/org/apache/sis/image/TiledImageMock.java | 38 +- .../apache/sis/referencing/IdentifiedObjects.java | 25 +- .../referencing/operation/matrix/MatrixSIS.java| 36 +- .../org/apache/sis/storage/geotiff/DataCube.java | 9 +- .../org/apache/sis/storage/geotiff/DataSubset.java | 5 +- .../apache/sis/storage/geotiff/DeferredEntry.java | 2 + .../org/apache/sis/storage/geotiff/GeoKeys.java| 142 .../apache/sis/storage/geotiff/GeoTiffOption.java | 60 ++ .../apache/sis/storage/geotiff/GeoTiffStore.java | 280 +-- .../sis/storage/geotiff/GeoTiffStoreProvider.java | 26 +- .../storage/geotiff/{GeoTIFF.java => IOBase.java} | 60 +- .../sis/storage/geotiff/ImageFileDirectory.java| 40 +- .../apache/sis/storage/geotiff/NativeMetadata.java | 21 +- .../org/apache/sis/storage/geotiff/Reader.java | 107 ++- .../org/apache/sis/storage/geotiff/Writer.java | 826 + .../geotiff/{internal => base}/Compression.java| 2 +- .../sis/storage/geotiff/{ => base}/GeoCodes.java | 33 +- .../apache/sis/storage/geotiff/base/GeoKeys.java | 126 .../geotiff/{internal => base}/Predictor.java | 2 +- .../geotiff/{internal => base}/Resources.java | 22 +- .../{internal => base}/Resources.properties| 4 + .../geotiff/{internal => base}/Resources_en.java | 2 +- .../geotiff/{internal => base}/Resources_fr.java | 2 +- .../{internal =>
(sis) 01/01: Merge branch 'geoapi-3.1'
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/sis.git commit 9686f9d864ed0cc4cb68ccfc1eb7245ab71a9e33 Merge: 7276317ed7 b81aa21f91 Author: Martin Desruisseaux AuthorDate: Sat Oct 28 16:16:18 2023 +0200 Merge branch 'geoapi-3.1' .../sis/coverage/grid/j2d/ImageUtilities.java | 18 + .../test/org/apache/sis/image/TiledImageMock.java | 38 +- .../apache/sis/referencing/IdentifiedObjects.java | 25 +- .../referencing/operation/matrix/MatrixSIS.java| 36 +- .../org/apache/sis/storage/geotiff/DataCube.java | 9 +- .../org/apache/sis/storage/geotiff/DataSubset.java | 5 +- .../apache/sis/storage/geotiff/DeferredEntry.java | 2 + .../org/apache/sis/storage/geotiff/GeoKeys.java| 142 .../apache/sis/storage/geotiff/GeoTiffOption.java | 60 ++ .../apache/sis/storage/geotiff/GeoTiffStore.java | 280 +-- .../sis/storage/geotiff/GeoTiffStoreProvider.java | 26 +- .../storage/geotiff/{GeoTIFF.java => IOBase.java} | 60 +- .../sis/storage/geotiff/ImageFileDirectory.java| 40 +- .../apache/sis/storage/geotiff/NativeMetadata.java | 21 +- .../org/apache/sis/storage/geotiff/Reader.java | 107 ++- .../org/apache/sis/storage/geotiff/Writer.java | 826 + .../geotiff/{internal => base}/Compression.java| 2 +- .../sis/storage/geotiff/{ => base}/GeoCodes.java | 33 +- .../apache/sis/storage/geotiff/base/GeoKeys.java | 126 .../geotiff/{internal => base}/Predictor.java | 2 +- .../geotiff/{internal => base}/Resources.java | 22 +- .../{internal => base}/Resources.properties| 4 + .../geotiff/{internal => base}/Resources_en.java | 2 +- .../geotiff/{internal => base}/Resources_fr.java | 2 +- .../{internal => base}/Resources_fr.properties | 4 + .../sis/storage/geotiff/{ => base}/Tags.java | 8 +- .../apache/sis/storage/geotiff/base/UnitKey.java | 186 + .../geotiff/{internal => base}/package-info.java | 4 +- .../geotiff/inflater/CompressionChannel.java | 2 +- .../sis/storage/geotiff/inflater/Inflater.java | 9 +- .../apache/sis/storage/geotiff/inflater/LZW.java | 2 +- .../storage/geotiff/inflater/PredictorChannel.java | 2 +- .../apache/sis/storage/geotiff/package-info.java | 2 +- .../storage/geotiff/{ => reader}/CRSBuilder.java | 317 .../geotiff/{ => reader}/GeoKeysLoader.java| 36 +- .../geotiff/{ => reader}/GridGeometryBuilder.java | 38 +- .../geotiff/{ => reader}/ImageMetadataBuilder.java | 46 +- .../storage/geotiff/{ => reader}/Localization.java | 2 +- .../geotiff/{ => reader}/ReversedBitsChannel.java | 26 +- .../sis/storage/geotiff/{ => reader}/Type.java | 8 +- .../storage/geotiff/{ => reader}/XMLMetadata.java | 39 +- .../geotiff/{internal => reader}/package-info.java | 10 +- .../sis/storage/geotiff/writer/GeoEncoder.java | 800 .../storage/geotiff/writer/ReformattedImage.java | 158 .../sis/storage/geotiff/writer/TagValue.java | 105 +++ .../sis/storage/geotiff/writer/TileMatrix.java | 212 ++ .../geotiff/{internal => writer}/package-info.java | 10 +- .../org/apache/sis/storage/geotiff/WriterTest.java | 479 .../{internal => base}/CompressionTest.java| 2 +- .../storage/geotiff/{ => base}/GeoCodesTest.java | 2 +- .../storage/geotiff/{ => base}/GeoIdentifiers.java | 2 +- .../storage/geotiff/{ => base}/GeoKeysTest.java| 14 +- .../sis/storage/geotiff/{ => base}/TagsTest.java | 2 +- .../geotiff/{ => reader}/CRSBuilderTest.java | 2 +- .../sis/storage/geotiff/{ => reader}/TypeTest.java | 2 +- .../geotiff/{ => reader}/XMLMetadataTest.java | 2 +- .../org/apache/sis/storage/gpx/StoreProvider.java | 2 +- .../org.apache.sis.storage/main/module-info.java | 4 +- .../main/org/apache/sis/io/stream/ChannelData.java | 285 --- .../org/apache/sis/io/stream/ChannelDataInput.java | 298 ++-- .../apache/sis/io/stream/ChannelDataOutput.java| 407 +++--- .../sis/io/stream/ChannelImageInputStream.java | 115 +-- .../sis/io/stream/ChannelImageOutputStream.java| 223 +++--- .../apache/sis/io/stream/HyperRectangleReader.java | 2 +- .../apache/sis/io/stream/HyperRectangleWriter.java | 301 .../main/org/apache/sis/io/stream/IOUtilities.java | 75 +- .../apache/sis/io/stream/InputStreamAdapter.java | 58 +- .../main/org/apache/sis/io/stream/Markable.java| 2 +- .../apache/sis/io/stream/OutputStreamAdapter.java | 11 +- .../main/org/apache/sis/io/stream/Region.java | 38 +- .../org/apache/sis/io/stream/UpdatableWrite.java | 352 + .../sis/storage/ReadOnlyStorageException.java | 1 + .../org/apache/sis/storage/StorageConnector.java | 138 ++
(sis) 01/02: Remove the "..." characters in JSON files for making them valid.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit 2f6557ee18cf683528545fe8b755a28f92d1fee3 Author: Martin Desruisseaux AuthorDate: Fri Oct 27 14:54:57 2023 +0200 Remove the "..." characters in JSON files for making them valid. --- .../sis/storage/coveragejson/binding/domaintype_multipoint.json | 4 ++-- .../storage/coveragejson/binding/domaintype_multipointseries.json | 4 ++-- .../sis/storage/coveragejson/binding/domaintype_multipolygon.json | 6 +++--- .../storage/coveragejson/binding/domaintype_multipolygonseries.json | 6 +++--- .../apache/sis/storage/coveragejson/binding/domaintype_point.json | 6 +++--- .../sis/storage/coveragejson/binding/domaintype_pointseries.json| 6 +++--- .../apache/sis/storage/coveragejson/binding/domaintype_polygon.json | 6 +++--- .../sis/storage/coveragejson/binding/domaintype_polygonseries.json | 6 +++--- .../apache/sis/storage/coveragejson/binding/domaintype_section.json | 6 +++--- .../sis/storage/coveragejson/binding/domaintype_trajectory.json | 6 +++--- .../storage/coveragejson/binding/domaintype_vertical_profile.json | 6 +++--- 11 files changed, 31 insertions(+), 31 deletions(-) diff --git a/incubator/src/org.apache.sis.storage.coveragejson/test/org/apache/sis/storage/coveragejson/binding/domaintype_multipoint.json b/incubator/src/org.apache.sis.storage.coveragejson/test/org/apache/sis/storage/coveragejson/binding/domaintype_multipoint.json index 47ca3264b5..e11c311afc 100644 --- a/incubator/src/org.apache.sis.storage.coveragejson/test/org/apache/sis/storage/coveragejson/binding/domaintype_multipoint.json +++ b/incubator/src/org.apache.sis.storage.coveragejson/test/org/apache/sis/storage/coveragejson/binding/domaintype_multipoint.json @@ -16,7 +16,7 @@ } }, "parameters" : { -"temperature": {...} +"temperature": {} }, "ranges" : { "temperature" : { @@ -24,7 +24,7 @@ "dataType": "float", "axisNames": ["composite"], "shape": [2], - "values" : [...] + "values" : [] } } } \ No newline at end of file diff --git a/incubator/src/org.apache.sis.storage.coveragejson/test/org/apache/sis/storage/coveragejson/binding/domaintype_multipointseries.json b/incubator/src/org.apache.sis.storage.coveragejson/test/org/apache/sis/storage/coveragejson/binding/domaintype_multipointseries.json index 298b8cfb1c..14c2afa1da 100644 --- a/incubator/src/org.apache.sis.storage.coveragejson/test/org/apache/sis/storage/coveragejson/binding/domaintype_multipointseries.json +++ b/incubator/src/org.apache.sis.storage.coveragejson/test/org/apache/sis/storage/coveragejson/binding/domaintype_multipointseries.json @@ -17,7 +17,7 @@ } }, "parameters" : { -"temperature": {...} +"temperature": {} }, "ranges" : { "temperature" : { @@ -25,7 +25,7 @@ "dataType": "float", "axisNames": ["t", "composite"], "shape": [2, 3], - "values" : [...] + "values" : [] } } } \ No newline at end of file diff --git a/incubator/src/org.apache.sis.storage.coveragejson/test/org/apache/sis/storage/coveragejson/binding/domaintype_multipolygon.json b/incubator/src/org.apache.sis.storage.coveragejson/test/org/apache/sis/storage/coveragejson/binding/domaintype_multipolygon.json index e24f503100..a4c190ed1e 100644 --- a/incubator/src/org.apache.sis.storage.coveragejson/test/org/apache/sis/storage/coveragejson/binding/domaintype_multipolygon.json +++ b/incubator/src/org.apache.sis.storage.coveragejson/test/org/apache/sis/storage/coveragejson/binding/domaintype_multipolygon.json @@ -15,10 +15,10 @@ "z": { "values": [2] }, "t": { "values": ["2008-01-01T04:00:00Z"] } }, -"referencing": [...] +"referencing": [] }, "parameters" : { -"temperature": {...} +"temperature": {} }, "ranges" : { "temperature" : { @@ -26,7 +26,7 @@ "dataType": "float", "axisNames": ["composite"], "shape": [2], - "values" : [...] + "values" : [] } } } \ No newline at end of file diff --git a/incubator/src/org.apache.sis.storage.coveragejson/test/org/apache/sis/storage/coveragejson/binding/domaintype_multipolygonseries.json b/incubator/src/org.apache.sis.storage.coveragejson/test/org/apache/sis/storage/coveragejson/binding/domaintype_multipolygonseries.json index a3ff18886f..58ba59ada9 100644 --- a/i
(sis) branch geoapi-3.1 updated (6008e5e18d -> b81aa21f91)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch geoapi-3.1 in repository https://gitbox.apache.org/repos/asf/sis.git from 6008e5e18d Merge branch 'geoapi-4.0' into geoapi-3.1 add 3858503ae4 Documentation and code updates in I/O in preparation for GeoTIFF writer. add 255a5b2bd7 `ChannelDataInput` implements `DataInput` for allowing `instanceof` checks against a public interface. add a5cb0d0568 `ChannelDataOutput` implements `DataOutput` for allowing `instanceof` checks against a public interface. add e45d945158 Add `HyperRectangleWriter` as an helper class for multi-dimensional grid coverage writers. add 4fe9373158 Add `UpdatableWrite` as an helper class for data store writers which need to update values after they have been written. add defbef6e4a Tune test utilities in preparation for the addition of GeoTIFF writer. add 8facc18164 First version of a TIFF writer (work initiated by Erwan Roussel). This initial version works, but with a limited amount of color models and sample models. add 0cdc177a1b Rename GeoKeys from GeoTIFF 1.0 to GeoTIFF 1.1 names. The keys related to units of measure are now handled in a separated class. add e97299fd67 Initial GeoKeys support. add 182326f448 Fix spurious warnings during the verification of map projection parameters. add a93258c0ba Give more informative names to some parameters. add 3762fd80fe Redesign the way that readers and writers co-exist in `DataStore` implementations: - `isWritable(…)` needs to distinguish between opening an existing file or creating a new one. - `setStreamPosition(long)` removed. It was misused in most places, causing probable bugs. - Allow creation of `ChannelDataOutput` from a `ChannelDataInput`, sharing same internal. - Add `synchronize(…)` for making input `ChannelData` consistent with output, or conversely. add e91f576e12 Refactor `ChannelImageOutputStream` as an implementation of `ImageOutputStream`. It allows us to test `ChannelData.yield(ChannelData)`. add 4c94f8269e First draft of GeoTIFF writer accessible from public API. For now we do that with a `GeoTiffStore.appen(…)` method. add 0c4e04b918 Bug fixes when an channel data input yield to the output, or conversely. add 49288e5777 feat(CoverageJSON): add simple coveragejson read/write support in incubator add 00bd021524 Fix the project configuration for the addition of CoverageJSON store. add 11339c7efa Superficial formatting of CoverageJSON incubator module. add 130695a20b Fix the way reading and writing of single bits are handled in `ChannelData` input/output classes. add 2f6557ee18 Remove the "..." characters in JSON files for making them valid. add 8043b8130f Rearrange the GeoTIFF internal classes in some subpackages in order to provide at least a partial separation between reader and writer classes. new b81aa21f91 Merge branch 'geoapi-4.0' into geoapi-3.1. Contains the addition of a "coveragejson" module and a first draft of GeoTIFF writer. The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../sis/coverage/grid/j2d/ImageUtilities.java | 18 + .../test/org/apache/sis/image/TiledImageMock.java | 38 +- .../apache/sis/referencing/IdentifiedObjects.java | 25 +- .../referencing/operation/matrix/MatrixSIS.java| 36 +- .../org/apache/sis/storage/geotiff/DataCube.java | 9 +- .../org/apache/sis/storage/geotiff/DataSubset.java | 5 +- .../apache/sis/storage/geotiff/DeferredEntry.java | 2 + .../org/apache/sis/storage/geotiff/GeoKeys.java| 142 .../apache/sis/storage/geotiff/GeoTiffOption.java | 60 ++ .../apache/sis/storage/geotiff/GeoTiffStore.java | 280 +-- .../sis/storage/geotiff/GeoTiffStoreProvider.java | 26 +- .../storage/geotiff/{GeoTIFF.java => IOBase.java} | 60 +- .../sis/storage/geotiff/ImageFileDirectory.java| 40 +- .../apache/sis/storage/geotiff/NativeMetadata.java | 21 +- .../org/apache/sis/storage/geotiff/Reader.java | 107 ++- .../org/apache/sis/storage/geotiff/Writer.java | 826 + .../geotiff/{internal => base}/Compression.java| 2 +- .../sis/storage/geotiff/{ => base}/GeoCodes.java | 33 +- .../apache/sis/storage/geotiff/base/GeoKeys.java | 126 .../geotiff/{internal => base}/Predictor.java | 2 +- .../geotiff/{internal => base}/Resources.java | 22 +- .../{internal => base}/Resources.properties| 4 + .../geotiff/{internal => base}/Resources_en.java | 2 +- .../geotiff/{internal => base}/Resources_fr.java | 2 +- .../{internal => base}/Resources_fr.properties | 4 + .../
(sis) 01/01: Merge branch 'geoapi-4.0' into geoapi-3.1. Contains the addition of a "coveragejson" module and a first draft of GeoTIFF writer.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-3.1 in repository https://gitbox.apache.org/repos/asf/sis.git commit b81aa21f9145f2d3c8dd869c54bd418e192e4591 Merge: 6008e5e18d 8043b8130f Author: Martin Desruisseaux AuthorDate: Sat Oct 28 15:55:24 2023 +0200 Merge branch 'geoapi-4.0' into geoapi-3.1. Contains the addition of a "coveragejson" module and a first draft of GeoTIFF writer. .../sis/coverage/grid/j2d/ImageUtilities.java | 18 + .../test/org/apache/sis/image/TiledImageMock.java | 38 +- .../apache/sis/referencing/IdentifiedObjects.java | 25 +- .../referencing/operation/matrix/MatrixSIS.java| 36 +- .../org/apache/sis/storage/geotiff/DataCube.java | 9 +- .../org/apache/sis/storage/geotiff/DataSubset.java | 5 +- .../apache/sis/storage/geotiff/DeferredEntry.java | 2 + .../org/apache/sis/storage/geotiff/GeoKeys.java| 142 .../apache/sis/storage/geotiff/GeoTiffOption.java | 60 ++ .../apache/sis/storage/geotiff/GeoTiffStore.java | 280 +-- .../sis/storage/geotiff/GeoTiffStoreProvider.java | 26 +- .../storage/geotiff/{GeoTIFF.java => IOBase.java} | 60 +- .../sis/storage/geotiff/ImageFileDirectory.java| 40 +- .../apache/sis/storage/geotiff/NativeMetadata.java | 21 +- .../org/apache/sis/storage/geotiff/Reader.java | 107 ++- .../org/apache/sis/storage/geotiff/Writer.java | 826 + .../geotiff/{internal => base}/Compression.java| 2 +- .../sis/storage/geotiff/{ => base}/GeoCodes.java | 33 +- .../apache/sis/storage/geotiff/base/GeoKeys.java | 126 .../geotiff/{internal => base}/Predictor.java | 2 +- .../geotiff/{internal => base}/Resources.java | 22 +- .../{internal => base}/Resources.properties| 4 + .../geotiff/{internal => base}/Resources_en.java | 2 +- .../geotiff/{internal => base}/Resources_fr.java | 2 +- .../{internal => base}/Resources_fr.properties | 4 + .../sis/storage/geotiff/{ => base}/Tags.java | 8 +- .../apache/sis/storage/geotiff/base/UnitKey.java | 186 + .../geotiff/{internal => base}/package-info.java | 4 +- .../geotiff/inflater/CompressionChannel.java | 2 +- .../sis/storage/geotiff/inflater/Inflater.java | 9 +- .../apache/sis/storage/geotiff/inflater/LZW.java | 2 +- .../storage/geotiff/inflater/PredictorChannel.java | 2 +- .../apache/sis/storage/geotiff/package-info.java | 2 +- .../storage/geotiff/{ => reader}/CRSBuilder.java | 317 .../geotiff/{ => reader}/GeoKeysLoader.java| 36 +- .../geotiff/{ => reader}/GridGeometryBuilder.java | 38 +- .../geotiff/{ => reader}/ImageMetadataBuilder.java | 46 +- .../storage/geotiff/{ => reader}/Localization.java | 2 +- .../geotiff/{ => reader}/ReversedBitsChannel.java | 26 +- .../sis/storage/geotiff/{ => reader}/Type.java | 8 +- .../storage/geotiff/{ => reader}/XMLMetadata.java | 39 +- .../geotiff/{internal => reader}/package-info.java | 10 +- .../sis/storage/geotiff/writer/GeoEncoder.java | 800 .../storage/geotiff/writer/ReformattedImage.java | 158 .../sis/storage/geotiff/writer/TagValue.java | 105 +++ .../sis/storage/geotiff/writer/TileMatrix.java | 212 ++ .../geotiff/{internal => writer}/package-info.java | 10 +- .../org/apache/sis/storage/geotiff/WriterTest.java | 479 .../{internal => base}/CompressionTest.java| 2 +- .../storage/geotiff/{ => base}/GeoCodesTest.java | 2 +- .../storage/geotiff/{ => base}/GeoIdentifiers.java | 2 +- .../storage/geotiff/{ => base}/GeoKeysTest.java| 14 +- .../sis/storage/geotiff/{ => base}/TagsTest.java | 2 +- .../geotiff/{ => reader}/CRSBuilderTest.java | 2 +- .../sis/storage/geotiff/{ => reader}/TypeTest.java | 2 +- .../geotiff/{ => reader}/XMLMetadataTest.java | 2 +- .../org/apache/sis/storage/gpx/StoreProvider.java | 2 +- .../org.apache.sis.storage/main/module-info.java | 4 +- .../main/org/apache/sis/io/stream/ChannelData.java | 285 --- .../org/apache/sis/io/stream/ChannelDataInput.java | 298 ++-- .../apache/sis/io/stream/ChannelDataOutput.java| 407 +++--- .../sis/io/stream/ChannelImageInputStream.java | 115 +-- .../sis/io/stream/ChannelImageOutputStream.java| 223 +++--- .../apache/sis/io/stream/HyperRectangleReader.java | 2 +- .../apache/sis/io/stream/HyperRectangleWriter.java | 301 .../main/org/apache/sis/io/stream/IOUtilities.java | 75 +- .../apache/sis/io/stream/InputStreamAdapter.java | 58 +- .../main/org/apache/sis/io/stream/Markable.java| 2 +- .../apache/sis/io/stream/OutputStreamAdapter.java | 11 +- .../main/org/apache/sis/io/stream/Region.java | 38 +- .../org/apache/sis/io/stream/UpdatableWrite.java | 352
(sis) 02/02: Rearrange the GeoTIFF internal classes in some subpackages in order to provide at least a partial separation between reader and writer classes.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit 8043b8130f1b8394fa951fe11d8d42b552b27458 Author: Martin Desruisseaux AuthorDate: Fri Oct 27 15:00:19 2023 +0200 Rearrange the GeoTIFF internal classes in some subpackages in order to provide at least a partial separation between reader and writer classes. --- .../org/apache/sis/storage/geotiff/DataCube.java | 7 +- .../org/apache/sis/storage/geotiff/DataSubset.java | 3 +- .../apache/sis/storage/geotiff/DeferredEntry.java | 2 + .../apache/sis/storage/geotiff/GeoTiffStore.java | 95 -- .../sis/storage/geotiff/GeoTiffStoreProvider.java | 8 +- .../storage/geotiff/{GeoTIFF.java => IOBase.java} | 52 +++- .../sis/storage/geotiff/ImageFileDirectory.java| 40 ++--- .../apache/sis/storage/geotiff/NativeMetadata.java | 15 ++-- .../org/apache/sis/storage/geotiff/Reader.java | 22 - .../org/apache/sis/storage/geotiff/Writer.java | 79 +- .../geotiff/{internal => base}/Compression.java| 2 +- .../sis/storage/geotiff/{ => base}/GeoCodes.java | 33 +++- .../sis/storage/geotiff/{ => base}/GeoKeys.java| 19 + .../geotiff/{internal => base}/Predictor.java | 2 +- .../geotiff/{internal => base}/Resources.java | 2 +- .../{internal => base}/Resources.properties| 0 .../geotiff/{internal => base}/Resources_en.java | 2 +- .../geotiff/{internal => base}/Resources_fr.java | 2 +- .../{internal => base}/Resources_fr.properties | 0 .../sis/storage/geotiff/{ => base}/Tags.java | 8 +- .../sis/storage/geotiff/{ => base}/UnitKey.java| 16 ++-- .../geotiff/{internal => base}/package-info.java | 4 +- .../geotiff/inflater/CompressionChannel.java | 2 +- .../sis/storage/geotiff/inflater/Inflater.java | 6 +- .../apache/sis/storage/geotiff/inflater/LZW.java | 2 +- .../storage/geotiff/inflater/PredictorChannel.java | 2 +- .../storage/geotiff/{ => reader}/CRSBuilder.java | 50 .../geotiff/{ => reader}/GeoKeysLoader.java| 34 +++- .../geotiff/{ => reader}/GridGeometryBuilder.java | 38 + .../geotiff/{ => reader}/ImageMetadataBuilder.java | 46 --- .../storage/geotiff/{ => reader}/Localization.java | 2 +- .../geotiff/{ => reader}/ReversedBitsChannel.java | 9 +- .../sis/storage/geotiff/{ => reader}/Type.java | 8 +- .../storage/geotiff/{ => reader}/XMLMetadata.java | 39 + .../geotiff/{internal => reader}/package-info.java | 10 ++- .../{GeoKeysWriter.java => writer/GeoEncoder.java} | 76 + .../geotiff/{ => writer}/ReformattedImage.java | 22 ++--- .../{TagValueWriter.java => writer/TagValue.java} | 52 ++-- .../TileMatrix.java} | 22 ++--- .../geotiff/{internal => writer}/package-info.java | 10 ++- .../org/apache/sis/storage/geotiff/WriterTest.java | 11 +-- .../{internal => base}/CompressionTest.java| 2 +- .../storage/geotiff/{ => base}/GeoCodesTest.java | 2 +- .../storage/geotiff/{ => base}/GeoIdentifiers.java | 2 +- .../storage/geotiff/{ => base}/GeoKeysTest.java| 6 +- .../sis/storage/geotiff/{ => base}/TagsTest.java | 2 +- .../geotiff/{ => reader}/CRSBuilderTest.java | 2 +- .../sis/storage/geotiff/{ => reader}/TypeTest.java | 2 +- .../geotiff/{ => reader}/XMLMetadataTest.java | 2 +- .../apache/sis/storage/base/MetadataFetcher.java | 4 +- 50 files changed, 485 insertions(+), 393 deletions(-) diff --git a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/DataCube.java b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/DataCube.java index eff8a80e3e..43980dd29e 100644 --- a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/DataCube.java +++ b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/DataCube.java @@ -28,9 +28,10 @@ import org.apache.sis.storage.DataStoreContentException; import org.apache.sis.storage.event.StoreListeners; import org.apache.sis.coverage.grid.GridCoverage; import org.apache.sis.coverage.grid.GridGeometry; -import org.apache.sis.storage.geotiff.internal.Resources; -import org.apache.sis.storage.geotiff.internal.Predictor; -import org.apache.sis.storage.geotiff.internal.Compression; +import org.apache.sis.storage.geotiff.base.Tags; +import org.apache.sis.storage.geotiff.base.Resources; +import org.apache.sis.storage.geotiff.base.Predictor; +import org.apache.sis.storage.geotiff.base.Compression; import org.apache.sis.storage.base.TiledGridResource; import org.apache.sis.storage.base.ResourceOnFileSystem; import org.apache.sis.storage.base.StoreResource; diff --git
(sis) branch geoapi-4.0 updated (130695a20b -> 8043b8130f)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git from 130695a20b Fix the way reading and writing of single bits are handled in `ChannelData` input/output classes. new 2f6557ee18 Remove the "..." characters in JSON files for making them valid. new 8043b8130f Rearrange the GeoTIFF internal classes in some subpackages in order to provide at least a partial separation between reader and writer classes. The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../org/apache/sis/storage/geotiff/DataCube.java | 7 +- .../org/apache/sis/storage/geotiff/DataSubset.java | 3 +- .../apache/sis/storage/geotiff/DeferredEntry.java | 2 + .../apache/sis/storage/geotiff/GeoTiffStore.java | 95 -- .../sis/storage/geotiff/GeoTiffStoreProvider.java | 8 +- .../storage/geotiff/{GeoTIFF.java => IOBase.java} | 52 +++- .../sis/storage/geotiff/ImageFileDirectory.java| 40 ++--- .../apache/sis/storage/geotiff/NativeMetadata.java | 15 ++-- .../org/apache/sis/storage/geotiff/Reader.java | 22 - .../org/apache/sis/storage/geotiff/Writer.java | 79 +- .../geotiff/{internal => base}/Compression.java| 2 +- .../sis/storage/geotiff/{ => base}/GeoCodes.java | 33 +++- .../sis/storage/geotiff/{ => base}/GeoKeys.java| 19 + .../geotiff/{internal => base}/Predictor.java | 2 +- .../geotiff/{internal => base}/Resources.java | 2 +- .../{internal => base}/Resources.properties| 0 .../sis/storage/geotiff/base}/Resources_en.java| 2 +- .../sis/storage/geotiff/base}/Resources_fr.java| 2 +- .../{internal => base}/Resources_fr.properties | 0 .../sis/storage/geotiff/{ => base}/Tags.java | 8 +- .../sis/storage/geotiff/{ => base}/UnitKey.java| 16 ++-- .../sis/storage/geotiff/base}/package-info.java| 4 +- .../geotiff/inflater/CompressionChannel.java | 2 +- .../sis/storage/geotiff/inflater/Inflater.java | 6 +- .../apache/sis/storage/geotiff/inflater/LZW.java | 2 +- .../storage/geotiff/inflater/PredictorChannel.java | 2 +- .../sis/storage/geotiff/internal/Resources_en.java | 30 --- .../sis/storage/geotiff/internal/Resources_fr.java | 30 --- .../sis/storage/geotiff/internal/package-info.java | 28 --- .../storage/geotiff/{ => reader}/CRSBuilder.java | 50 .../geotiff/{ => reader}/GeoKeysLoader.java| 34 +++- .../geotiff/{ => reader}/GridGeometryBuilder.java | 38 + .../geotiff/{ => reader}/ImageMetadataBuilder.java | 46 --- .../storage/geotiff/{ => reader}/Localization.java | 2 +- .../geotiff/{ => reader}/ReversedBitsChannel.java | 9 +- .../sis/storage/geotiff/{ => reader}/Type.java | 8 +- .../storage/geotiff/{ => reader}/XMLMetadata.java | 39 + .../sis/storage/geotiff/reader}/package-info.java | 10 ++- .../{GeoKeysWriter.java => writer/GeoEncoder.java} | 76 + .../geotiff/{ => writer}/ReformattedImage.java | 22 ++--- .../{TagValueWriter.java => writer/TagValue.java} | 52 ++-- .../TileMatrix.java} | 22 ++--- .../sis/storage/geotiff/writer}/package-info.java | 10 ++- .../org/apache/sis/storage/geotiff/WriterTest.java | 11 +-- .../{internal => base}/CompressionTest.java| 2 +- .../storage/geotiff/{ => base}/GeoCodesTest.java | 2 +- .../storage/geotiff/{ => base}/GeoIdentifiers.java | 2 +- .../storage/geotiff/{ => base}/GeoKeysTest.java| 6 +- .../sis/storage/geotiff/{ => base}/TagsTest.java | 2 +- .../geotiff/{ => reader}/CRSBuilderTest.java | 2 +- .../sis/storage/geotiff/{ => reader}/TypeTest.java | 2 +- .../geotiff/{ => reader}/XMLMetadataTest.java | 2 +- .../apache/sis/storage/base/MetadataFetcher.java | 4 +- .../binding/domaintype_multipoint.json | 4 +- .../binding/domaintype_multipointseries.json | 4 +- .../binding/domaintype_multipolygon.json | 6 +- .../binding/domaintype_multipolygonseries.json | 6 +- .../coveragejson/binding/domaintype_point.json | 6 +- .../binding/domaintype_pointseries.json| 6 +- .../coveragejson/binding/domaintype_polygon.json | 6 +- .../binding/domaintype_polygonseries.json | 6 +- .../coveragejson/binding/domaintype_section.json | 6 +- .../binding/domaintype_trajectory.json | 6 +- .../binding/domaintype_vertical_profile.json | 6 +- 64 files changed, 516 insertions(+), 512 deletions(-) rename endorsed/src/org.apac
(sis) branch geoapi-4.0 updated: Fix the way reading and writing of single bits are handled in `ChannelData` input/output classes.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git The following commit(s) were added to refs/heads/geoapi-4.0 by this push: new 130695a20b Fix the way reading and writing of single bits are handled in `ChannelData` input/output classes. 130695a20b is described below commit 130695a20b77553514c68e1faa1f551234005dc4 Author: Martin Desruisseaux AuthorDate: Thu Oct 26 20:47:54 2023 +0200 Fix the way reading and writing of single bits are handled in `ChannelData` input/output classes. --- .../sis/storage/geotiff/ReversedBitsChannel.java | 6 +- .../main/org/apache/sis/io/stream/ChannelData.java | 88 +++--- .../org/apache/sis/io/stream/ChannelDataInput.java | 103 + .../apache/sis/io/stream/ChannelDataOutput.java| 81 +--- .../sis/io/stream/ChannelImageInputStream.java | 26 +- .../sis/io/stream/ChannelImageOutputStream.java| 14 +-- .../sis/io/stream/ChannelDataOutputTest.java | 11 +-- .../io/stream/ChannelImageOutputStreamTest.java| 12 +-- .../io/stream/MemoryCacheImageOutputStream.java| 68 +- 9 files changed, 270 insertions(+), 139 deletions(-) diff --git a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/ReversedBitsChannel.java b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/ReversedBitsChannel.java index 8d181cb727..f8dec2fd9a 100644 --- a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/ReversedBitsChannel.java +++ b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/ReversedBitsChannel.java @@ -63,10 +63,8 @@ final class ReversedBitsChannel implements ReadableByteChannel, SeekableByteChan * and because a new buffer is created for each strip or tile to read. */ static ChannelDataInput wrap(final ChannelDataInput input) throws IOException { -final var buffer = ByteBuffer.allocate(2048).order(input.buffer.order()); -final var reverse = new ChannelDataInput(input.filename, new ReversedBitsChannel(input), buffer, true); -input.yield(reverse); -return reverse; +final var buffer = ByteBuffer.allocate(2048).order(input.buffer.order()); +return new ChannelDataInput(input, new ReversedBitsChannel(input), buffer); } /** diff --git a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelData.java b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelData.java index 60bece689e..d9da89481f 100644 --- a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelData.java +++ b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelData.java @@ -42,7 +42,7 @@ public abstract class ChannelData implements Markable { * assert (1 << BIT_OFFSET_SIZE) == Byte.SIZE; * } */ -private static final int BIT_OFFSET_SIZE = 3; +static final int BIT_OFFSET_SIZE = 3; /** * A short identifier (typically a filename without path) used for formatting error message. @@ -68,13 +68,18 @@ public abstract class ChannelData implements Markable { private long channelOffset; /** - * The channel position where is located the {@link #buffer} value at index 0. + * The channel position where is located the {@link #buffer}. * This is initially zero and shall be incremented as below: * * * By {@link ByteBuffer#position()} every time {@link ByteBuffer#compact()} is invoked. * By {@link ByteBuffer#limit()}every time {@link ByteBuffer#clear()} is invoked. * + * + * Subclass-dependent interpretation + * The value depends on whether the buffer is used before or after transfer from/to the channel. + * For {@link ChannelDataOutput}, the value is the channel position of buffer position 0. + * For {@link ChannelDataInput}, the value is the channel position of buffer limit. */ long bufferOffset; @@ -83,9 +88,16 @@ public abstract class ChannelData implements Markable { * and the remaining of the {@code long} value is the stream position where the bit * offset is valid. * + * Subclass-dependent interpretation + * Which byte contains the bits depends on whether this {@code ChannelData} is an input or an output. + * For {@link ChannelDataOutput}, the bits are stored in the byte before the current buffer position. + * For {@link ChannelDataInput}, the bits are stored in the byte at the current buffer position. + * * @see #getBitOffset() + * @see #setBitOffset(int) + * @see #skipRemainingBits() */ -private long bitPosition; +long bitPosition; /** * The most recent mark, or {@code null} if none. @@ -
(sis) branch geoapi-4.0 updated (49288e5777 -> 11339c7efa)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git from 49288e5777 feat(CoverageJSON): add simple coveragejson read/write support in incubator new 00bd021524 Fix the project configuration for the addition of CoverageJSON store. new 11339c7efa Superficial formatting of CoverageJSON incubator module. The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../org.apache.sis.storage/main/module-info.java | 10 .../main/module-info.java | 29 ++ .../storage/coveragejson/CoverageJsonStore.java| 1 + .../coveragejson/CoverageJsonStoreProvider.java| 5 .../sis/storage/coveragejson/CoverageResource.java | 5 ++-- .../sis/storage/coveragejson/binding/Axe.java | 19 +- .../sis/storage/coveragejson/binding/Axes.java | 5 .../sis/storage/coveragejson/binding/Category.java | 12 +++-- .../coveragejson/binding/CategoryEncoding.java | 9 ++- .../sis/storage/coveragejson/binding/Coverage.java | 18 +- .../coveragejson/binding/CoverageCollection.java | 15 ++- .../coveragejson/binding/CoverageJsonObject.java | 5 +++- .../storage/coveragejson/binding/Dictionary.java | 16 +++- .../sis/storage/coveragejson/binding/Domain.java | 11 +++- .../coveragejson/binding/GeographicCRS.java| 9 ++- .../sis/storage/coveragejson/binding/I18N.java | 8 +- .../storage/coveragejson/binding/IdentifierRS.java | 15 +-- .../storage/coveragejson/binding/Identifiers.java | 4 ++- .../sis/storage/coveragejson/binding/NdArray.java | 12 + .../coveragejson/binding/ObservedProperty.java | 12 ++--- .../storage/coveragejson/binding/Parameter.java| 18 -- .../coveragejson/binding/ParameterGroup.java | 14 ++- .../storage/coveragejson/binding/Parameters.java | 9 ++- .../storage/coveragejson/binding/ProjectedCRS.java | 9 ++- .../sis/storage/coveragejson/binding/Ranges.java | 9 ++- .../binding/ReferenceSystemConnection.java | 9 ++- .../sis/storage/coveragejson/binding/Symbol.java | 7 +- .../coveragejson/binding/TargetConcept.java| 5 .../storage/coveragejson/binding/TemporalRS.java | 9 ++- .../sis/storage/coveragejson/binding/TileSet.java | 8 +- .../storage/coveragejson/binding/TiledNdArray.java | 13 +- .../sis/storage/coveragejson/binding/Unit.java | 8 +- .../storage/coveragejson/binding/VerticalCRS.java | 9 ++- .../coveragejson/binding}/package-info.java| 6 +++-- .../sis/storage/coveragejson}/package-info.java| 6 +++-- .../coveragejson/CoverageJsonStoreTest.java| 14 --- .../storage/coveragejson/binding/BindingTest.java | 5 +++- .../sis/storage/coveragejson/binding/LICENSE.md| 5 .../storage/coveragejson/binding/package-info.java | 28 - netbeans-project/ivy.xml | 1 + netbeans-project/nbproject/project.properties | 1 + settings.gradle.kts| 2 +- 42 files changed, 325 insertions(+), 90 deletions(-) copy incubator/src/{org.apache.sis.webapp/main/org/apache/sis/services => org.apache.sis.storage.coveragejson/main/org/apache/sis/storage/coveragejson/binding}/package-info.java (88%) copy incubator/src/{org.apache.sis.webapp/main/org/apache/sis/services => org.apache.sis.storage.coveragejson/main/org/apache/sis/storage/coveragejson}/package-info.java (88%) create mode 100644 incubator/src/org.apache.sis.storage.coveragejson/test/org/apache/sis/storage/coveragejson/binding/LICENSE.md delete mode 100644 incubator/src/org.apache.sis.storage.coveragejson/test/org/apache/sis/storage/coveragejson/binding/package-info.java
(sis) 01/02: Fix the project configuration for the addition of CoverageJSON store.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit 00bd0215240e624746adcc59bc38cd5bccb41eae Author: Martin Desruisseaux AuthorDate: Fri Oct 27 14:06:54 2023 +0200 Fix the project configuration for the addition of CoverageJSON store. --- .../org.apache.sis.storage/main/module-info.java | 10 .../main/module-info.java | 29 ++ .../sis/storage/coveragejson/CoverageResource.java | 5 ++-- .../storage/coveragejson/binding/package-info.java | 7 +- .../sis/storage/coveragejson}/package-info.java| 11 +++- .../sis/storage/coveragejson/binding/LICENSE.md| 5 netbeans-project/ivy.xml | 1 + netbeans-project/nbproject/project.properties | 1 + settings.gradle.kts| 2 +- 9 files changed, 44 insertions(+), 27 deletions(-) diff --git a/endorsed/src/org.apache.sis.storage/main/module-info.java b/endorsed/src/org.apache.sis.storage/main/module-info.java index e5b206051e..adf86a6b61 100644 --- a/endorsed/src/org.apache.sis.storage/main/module-info.java +++ b/endorsed/src/org.apache.sis.storage/main/module-info.java @@ -20,7 +20,7 @@ * * @author Johann Sorel (Geomatys) * @author Martin Desruisseaux (Geomatys) - * @version 1.4 + * @version 1.5 * @since 0.3 */ module org.apache.sis.storage { @@ -53,20 +53,20 @@ module org.apache.sis.storage { org.apache.sis.storage.netcdf, org.apache.sis.storage.geotiff, org.apache.sis.storage.earthobservation, +org.apache.sis.storage.coveragejson,// In the "incubator" sub-project. org.apache.sis.util,// For the "About" command. org.apache.sis.console, org.apache.sis.openoffice, -org.apache.sis.gui, // In the "optional" sub-project. -org.apache.sis.storage.coveragejson;// In the "incubator" +org.apache.sis.gui; // In the "optional" sub-project. exports org.apache.sis.io.stream to org.apache.sis.storage.xml, org.apache.sis.storage.sql, org.apache.sis.storage.netcdf, org.apache.sis.storage.geotiff, +org.apache.sis.storage.coveragejson,// In the "incubator" sub-project. org.apache.sis.cloud.aws, -org.apache.sis.gui, // In the "optional" sub-project. -org.apache.sis.storage.coveragejson;// In the "incubator" +org.apache.sis.gui; // In the "optional" sub-project. exports org.apache.sis.storage.xml to org.apache.sis.storage.xml, diff --git a/incubator/src/org.apache.sis.storage.coveragejson/main/module-info.java b/incubator/src/org.apache.sis.storage.coveragejson/main/module-info.java index 2daabe4da5..4005e4cdf9 100644 --- a/incubator/src/org.apache.sis.storage.coveragejson/main/module-info.java +++ b/incubator/src/org.apache.sis.storage.coveragejson/main/module-info.java @@ -18,18 +18,37 @@ /** * Coverage-json store. * + * @todo Consider renaming as {@code org.apache.sis.storage.json.coverage} in order to group all JSON formats + * in a single root. Also rename package names accordingly. Having the exact format name "coveragejson" + * in module/package name is redundant with {@code CoverageJsonStore} class name. Furthermore the + * "Coverage-json" description appears right after module name in Javadoc. Having a single "json" + * root allow Javadoc to detect more easily the related modules and organize them accordingly. + * * @author Johann Sorel (Geomatys) */ module org.apache.sis.storage.coveragejson { +// Dependencies used in public API. +requires transitive org.apache.sis.referencing; requires transitive org.apache.sis.storage; -requires transitive jakarta.json.bind; -requires transitive jakarta.json; -requires transitive org.eclipse.yasson; + +// Dependencies internal to the implementation. +requires jakarta.json; +requires jakarta.json.bind; + +// Temporary dependency used by BindingTest class. TODO: remove that dependency. +requires org.eclipse.yasson; provides org.apache.sis.storage.DataStoreProvider -with org.apache.sis.storage.coveragejson.CoverageJsonStoreProvider; +with org.apache.sis.storage.coveragejson.CoverageJsonStoreProvider; exports org.apache.sis.storage.coveragejson; -//should not be exposed but is needed for yasson to find classes and methods. + +/* + * TODO + * Following should be a qualified export to
(sis) 02/02: Superficial formatting of CoverageJSON incubator module.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit 11339c7efa40235808ffaed6476b42650f274d4c Author: Martin Desruisseaux AuthorDate: Fri Oct 27 14:17:38 2023 +0200 Superficial formatting of CoverageJSON incubator module. --- .../sis/storage/coveragejson/CoverageJsonStore.java | 1 + .../coveragejson/CoverageJsonStoreProvider.java | 5 + .../apache/sis/storage/coveragejson/binding/Axe.java | 19 ++- .../apache/sis/storage/coveragejson/binding/Axes.java | 5 + .../sis/storage/coveragejson/binding/Category.java| 12 ++-- .../coveragejson/binding/CategoryEncoding.java| 9 - .../sis/storage/coveragejson/binding/Coverage.java| 18 +- .../coveragejson/binding/CoverageCollection.java | 15 ++- .../coveragejson/binding/CoverageJsonObject.java | 5 - .../sis/storage/coveragejson/binding/Dictionary.java | 16 ++-- .../sis/storage/coveragejson/binding/Domain.java | 11 ++- .../storage/coveragejson/binding/GeographicCRS.java | 9 - .../apache/sis/storage/coveragejson/binding/I18N.java | 8 +++- .../storage/coveragejson/binding/IdentifierRS.java| 15 +-- .../sis/storage/coveragejson/binding/Identifiers.java | 4 +++- .../sis/storage/coveragejson/binding/NdArray.java | 12 .../coveragejson/binding/ObservedProperty.java| 12 +--- .../sis/storage/coveragejson/binding/Parameter.java | 18 -- .../storage/coveragejson/binding/ParameterGroup.java | 14 +- .../sis/storage/coveragejson/binding/Parameters.java | 9 - .../storage/coveragejson/binding/ProjectedCRS.java| 9 - .../sis/storage/coveragejson/binding/Ranges.java | 9 - .../binding/ReferenceSystemConnection.java| 9 - .../sis/storage/coveragejson/binding/Symbol.java | 7 ++- .../storage/coveragejson/binding/TargetConcept.java | 5 + .../sis/storage/coveragejson/binding/TemporalRS.java | 9 - .../sis/storage/coveragejson/binding/TileSet.java | 8 +++- .../storage/coveragejson/binding/TiledNdArray.java| 13 - .../apache/sis/storage/coveragejson/binding/Unit.java | 8 +++- .../sis/storage/coveragejson/binding/VerticalCRS.java | 9 - .../storage/coveragejson/CoverageJsonStoreTest.java | 14 +- .../sis/storage/coveragejson/binding/BindingTest.java | 5 - 32 files changed, 277 insertions(+), 45 deletions(-) diff --git a/incubator/src/org.apache.sis.storage.coveragejson/main/org/apache/sis/storage/coveragejson/CoverageJsonStore.java b/incubator/src/org.apache.sis.storage.coveragejson/main/org/apache/sis/storage/coveragejson/CoverageJsonStore.java index 61ce1c9c48..07eb67bbd0 100644 --- a/incubator/src/org.apache.sis.storage.coveragejson/main/org/apache/sis/storage/coveragejson/CoverageJsonStore.java +++ b/incubator/src/org.apache.sis.storage.coveragejson/main/org/apache/sis/storage/coveragejson/CoverageJsonStore.java @@ -48,6 +48,7 @@ import org.apache.sis.storage.WritableAggregate; import org.opengis.metadata.Metadata; import org.opengis.parameter.ParameterValueGroup; + /** * A data store backed by Coverage-JSON files. * diff --git a/incubator/src/org.apache.sis.storage.coveragejson/main/org/apache/sis/storage/coveragejson/CoverageJsonStoreProvider.java b/incubator/src/org.apache.sis.storage.coveragejson/main/org/apache/sis/storage/coveragejson/CoverageJsonStoreProvider.java index cce719fc29..ab272fed38 100644 --- a/incubator/src/org.apache.sis.storage.coveragejson/main/org/apache/sis/storage/coveragejson/CoverageJsonStoreProvider.java +++ b/incubator/src/org.apache.sis.storage.coveragejson/main/org/apache/sis/storage/coveragejson/CoverageJsonStoreProvider.java @@ -31,6 +31,7 @@ import org.apache.sis.storage.StorageConnector; import org.apache.sis.util.Version; import org.opengis.parameter.ParameterDescriptorGroup; + /** * The provider of {@link CoverageJsonStore} instances. Given a {@link StorageConnector} input, * this class tries to instantiate a {@code CoverageJsonStore}. @@ -48,6 +49,7 @@ import org.opengis.parameter.ParameterDescriptorGroup; public class CoverageJsonStoreProvider extends DataStoreProvider { public static final String NAME = "CoverageJSON"; + /** * The MIME type for Coverage-JSON files. */ @@ -65,6 +67,9 @@ public class CoverageJsonStoreProvider extends DataStoreProvider { */ private static final ParameterDescriptorGroup OPEN_DESCRIPTOR = URIDataStore.Provider.descriptor(NAME); +public CoverageJsonStoreProvider() { +} + @Override public String getShortName() { return NAME; diff --git a/incubator/src/org.apache.sis.storage.coveragejson/main/
[sis-site] branch asf-site updated (275fc8aa -> bdf55413)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch asf-site in repository https://gitbox.apache.org/repos/asf/sis-site.git from 275fc8aa Merge branch 'asf-staging' into asf-site. add bb4d725e Regenerate the "supported formats" page. new bdf55413 Merge branch 'asf-staging' into asf-site The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: formats.html | 14 ++ index.xml| 2 +- 2 files changed, 15 insertions(+), 1 deletion(-)
[sis-site] 01/01: Merge branch 'asf-staging' into asf-site
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch asf-site in repository https://gitbox.apache.org/repos/asf/sis-site.git commit bdf554139e83093f643bef3056fd51a7bece21b4 Merge: 275fc8aa bb4d725e Author: Martin Desruisseaux AuthorDate: Wed Oct 25 18:38:18 2023 +0200 Merge branch 'asf-staging' into asf-site formats.html | 14 ++ index.xml| 2 +- 2 files changed, 15 insertions(+), 1 deletion(-)
[sis-site] branch asf-staging updated: Regenerate the "supported formats" page.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch asf-staging in repository https://gitbox.apache.org/repos/asf/sis-site.git The following commit(s) were added to refs/heads/asf-staging by this push: new bb4d725e Regenerate the "supported formats" page. bb4d725e is described below commit bb4d725e86c82c3475b965e00ada1092857f392b Author: Martin Desruisseaux AuthorDate: Wed Oct 25 18:37:08 2023 +0200 Regenerate the "supported formats" page. --- formats.html | 14 ++ index.xml| 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/formats.html b/formats.html index 3a555d25..914ed02b 100644 --- a/formats.html +++ b/formats.html @@ -115,58 +115,72 @@ in which case the root resource will be Aggregate. Format Capability +Module Type of resource CSV Read +org.apache.sis.storage FeatureSet ESRI ASCII Grid Read/write +org.apache.sis.storage GridCoverageResource ESRI BIL/BIQ/BSQ Read +org.apache.sis.storage GridCoverageResource Folder Read/write +org.apache.sis.storage Aggregate, FeatureSet, GridCoverageResource (Big) GeoTIFF Read +org.apache.sis.storage.geotiff Aggregate, GridCoverageResource GML (CRS only) Read/write⁽¹⁾ +org.apache.sis.referencing Resource GPX Read/write +org.apache.sis.storage.xml FeatureSet ISO 19115 XML Read/write⁽¹⁾ +org.apache.sis.metadata Resource Landsat Read +org.apache.sis.storage.earthobservation Aggregate, GridCoverageResource NetCDF Read +org.apache.sis.storage.netcdf Aggregate, FeatureSet, GridCoverageResource SQL⁽²⁾ Read +org.apache.sis.storage.sql Aggregate, FeatureSet WKT (CRS only) Read/write⁽¹⁾ +org.apache.sis.referencing Resource World File Read/write +org.apache.sis.storage GridCoverageResource, sometimes Aggregate diff --git a/index.xml b/index.xml index cbd3790f..57cb05fd 100644 --- a/index.xml +++ b/index.xml @@ -75,7 +75,7 @@ import java.awt.Shape; import org.apache.sis.referencing.CommonCRS; import org.< https://sis.apache.org/formats.html Apache SIS can read data from the formats listed below. Some formats are supported in read-only mode, others in read/write modes. Data may be structured as vectors or rasters, which in Apache SIS are mapped to the FeatureSet and GridCoverageResource interfaces respectively. Some formats can contain an arbitrary number of feature types or rasters, in which case the root resource will be Aggregate. -Format Capability Type of resource CSV Read FeatureSet ESRI ASCII Grid Read/write GridCoverageResource ESRI BIL/BIQ/BSQ Read GridCoverageResource Folder Read/write Aggregate, FeatureSet, GridCoverageResource (Big) GeoTIFF Read Aggregate, GridCoverageResource GML (CRS only) Read/write⁽¹⁾ Resource GPX Read/write FeatureSet ISO 19115 XML Read/write⁽¹⁾ Resource Landsat Read Aggregate, GridCoverageResource NetCDF Read Aggregate, FeatureSet, GridCoverageResource SQL⁽²⁾ Read Aggregate, FeatureS [...] +Format Capability Module Type of resource CSV Read org.
[sis-site] branch main updated: Add a column saying which module provides each data format.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/sis-site.git The following commit(s) were added to refs/heads/main by this push: new 88b18f0a Add a column saying which module provides each data format. 88b18f0a is described below commit 88b18f0a598d920f11059f3257ade101f0b43743 Author: Martin Desruisseaux AuthorDate: Wed Oct 25 18:34:35 2023 +0200 Add a column saying which module provides each data format. --- content/formats.md | 14 ++ 1 file changed, 14 insertions(+) diff --git a/content/formats.md b/content/formats.md index ac1cafbd..f91f1aaa 100644 --- a/content/formats.md +++ b/content/formats.md @@ -13,58 +13,72 @@ in which case the root resource will be `Aggregate`. Format Capability +Module Type of resource {{% CSV %}} Read +org.apache.sis.storage FeatureSet ESRI ASCII Grid Read/write +org.apache.sis.storage GridCoverageResource ESRI BIL/BIQ/BSQ Read +org.apache.sis.storage GridCoverageResource Folder Read/write +org.apache.sis.storage Aggregate, FeatureSet, GridCoverageResource (Big) GeoTIFF Read +org.apache.sis.storage.geotiff Aggregate, GridCoverageResource {{% GML %}} ({{% CRS %}} only) Read/write⁽¹⁾ +org.apache.sis.referencing Resource {{% GPX %}} Read/write +org.apache.sis.storage.xml FeatureSet {{% ISO %}} 19115 {{% XML %}} Read/write⁽¹⁾ +org.apache.sis.metadata Resource Landsat Read +org.apache.sis.storage.earthobservation Aggregate, GridCoverageResource NetCDF Read +org.apache.sis.storage.netcdf Aggregate, FeatureSet, GridCoverageResource {{% SQL %}}⁽²⁾ Read +org.apache.sis.storage.sql Aggregate, FeatureSet {{% WKT %}} ({{% CRS %}} only) Read/write⁽¹⁾ +org.apache.sis.referencing Resource World File Read/write +org.apache.sis.storage GridCoverageResource, sometimes Aggregate
[sis] branch geoapi-4.0 updated: Bug fixes when an channel data input yield to the output, or conversely.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git The following commit(s) were added to refs/heads/geoapi-4.0 by this push: new 0c4e04b918 Bug fixes when an channel data input yield to the output, or conversely. 0c4e04b918 is described below commit 0c4e04b91877bdd0fdb40a8a221808a4510f862e Author: Martin Desruisseaux AuthorDate: Wed Oct 25 13:25:02 2023 +0200 Bug fixes when an channel data input yield to the output, or conversely. --- .../main/org/apache/sis/storage/geotiff/Reader.java| 3 ++- .../main/org/apache/sis/io/stream/ChannelData.java | 12 .../main/org/apache/sis/io/stream/ChannelDataInput.java| 14 +- .../main/org/apache/sis/io/stream/ChannelDataOutput.java | 8 .../apache/sis/io/stream/ChannelImageOutputStreamTest.java | 11 +-- 5 files changed, 36 insertions(+), 12 deletions(-) diff --git a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/Reader.java b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/Reader.java index 7a70c4a1cc..4901c84c7d 100644 --- a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/Reader.java +++ b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/Reader.java @@ -491,8 +491,9 @@ final class Reader extends GeoTIFF { if (getImage(Integer.MAX_VALUE) == null && endOfFile) { nextIFD = position; endOfFile = false; +} else { +throw new InternalDataStoreException(); // Should never happen. } -throw new InternalDataStoreException(); // Should never happen. } /** diff --git a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelData.java b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelData.java index 3e67483dc9..60bece689e 100644 --- a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelData.java +++ b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelData.java @@ -448,6 +448,8 @@ public abstract class ChannelData implements Markable { takeOver.bufferOffset = bufferOffset; takeOver.channelOffset = channelOffset; takeOver.bitPosition = bitPosition; +takeOver.mark = mark; +mark = null; } /** @@ -505,6 +507,16 @@ public abstract class ChannelData implements Markable { return Math.addExact(channelOffset, position); } +/** + * Translates the buffer by the given amount of bytes. + * Callers should subtract the same amount from the buffer position. + * + * @param count number of bytes to add to {@link #bufferOffset}. + */ +final void moveBufferForward(final int count) { +bufferOffset = Math.addExact(bufferOffset, count); +} + /** * Invoked when an operation between the channel and the buffer transferred no byte. Note that this is unrelated * to end-of-file, in which case {@link java.nio.channels.ReadableByteChannel#read(ByteBuffer)} returns -1. diff --git a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelDataInput.java b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelDataInput.java index 7480b27156..2431168752 100644 --- a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelDataInput.java +++ b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelDataInput.java @@ -182,7 +182,7 @@ public class ChannelDataInput extends ChannelData implements DataInput { if (buffer.hasRemaining()) { return true; } -bufferOffset += buffer.limit(); +moveBufferForward(buffer.limit()); buffer.clear(); int c = channel.read(buffer); while (c == 0) { @@ -206,7 +206,7 @@ public class ChannelDataInput extends ChannelData implements DataInput { assert n >= 0 && n <= buffer.capacity() : n; n -= buffer.remaining(); if (n > 0) { -bufferOffset += buffer.position(); +moveBufferForward(buffer.position()); buffer.compact(); do { final int c = channel.read(buffer); @@ -671,7 +671,7 @@ public class ChannelDataInput extends ChannelData implements DataInput { // Buffer position must be a multiple of the data size. // If not, fix that by shifting the content to index 0. if ((buffer.position() & ((1 << dataSizeShift) - 1)) != 0) { -bufferOffset += buffer.position(); +moveBufferForward(buffer.position()); buffer.compact().flip(); }
[sis] 01/03: Redesign the way that readers and writers co-exist in `DataStore` implementations: - `isWritable(…)` needs to distinguish between opening an existing file or creating a new one. - `setStr
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit 3762fd80fe3177d3070e0b601a6387fc85e6b78d Author: Martin Desruisseaux AuthorDate: Sun Oct 22 15:34:50 2023 +0200 Redesign the way that readers and writers co-exist in `DataStore` implementations: - `isWritable(…)` needs to distinguish between opening an existing file or creating a new one. - `setStreamPosition(long)` removed. It was misused in most places, causing probable bugs. - Allow creation of `ChannelDataOutput` from a `ChannelDataInput`, sharing same internal. - Add `synchronize(…)` for making input `ChannelData` consistent with output, or conversely. --- .../apache/sis/storage/geotiff/GeoTiffStore.java | 2 +- .../sis/storage/geotiff/ReversedBitsChannel.java | 19 +- .../org/apache/sis/storage/geotiff/Writer.java | 2 +- .../sis/storage/geotiff/inflater/Inflater.java | 3 +- .../org/apache/sis/storage/gpx/StoreProvider.java | 2 +- .../main/org/apache/sis/io/stream/ChannelData.java | 235 +++-- .../org/apache/sis/io/stream/ChannelDataInput.java | 86 +--- .../apache/sis/io/stream/ChannelDataOutput.java| 191 - .../main/org/apache/sis/io/stream/Markable.java| 2 +- .../org/apache/sis/io/stream/UpdatableWrite.java | 39 +++- .../org/apache/sis/storage/StorageConnector.java | 25 ++- .../org/apache/sis/storage/base/URIDataStore.java | 26 ++- .../sis/storage/esri/AsciiGridStoreProvider.java | 2 +- .../org/apache/sis/storage/image/FormatFinder.java | 2 +- .../storage/internal/WritableResourceSupport.java | 1 - .../main/org/apache/sis/storage/package-info.java | 2 +- .../io/stream/ChannelImageOutputStreamTest.java| 2 +- 17 files changed, 457 insertions(+), 184 deletions(-) diff --git a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoTiffStore.java b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoTiffStore.java index cd0d520035..4b8fa1f835 100644 --- a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoTiffStore.java +++ b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoTiffStore.java @@ -224,7 +224,7 @@ public class GeoTiffStore extends DataStore implements Aggregate { location = connector.getStorageAs(URI.class); path = connector.getStorageAs(Path.class); try { -if (URIDataStore.Provider.isWritable(connector)) { +if (URIDataStore.Provider.isWritable(connector, true)) { ChannelDataOutput output = connector.commit(ChannelDataOutput.class, Constants.GEOTIFF); writer = new Writer(this, output, connector.getOption(GeoTiffOption.OPTION_KEY)); } else { diff --git a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/ReversedBitsChannel.java b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/ReversedBitsChannel.java index 394d10adf0..8d181cb727 100644 --- a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/ReversedBitsChannel.java +++ b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/ReversedBitsChannel.java @@ -63,11 +63,10 @@ final class ReversedBitsChannel implements ReadableByteChannel, SeekableByteChan * and because a new buffer is created for each strip or tile to read. */ static ChannelDataInput wrap(final ChannelDataInput input) throws IOException { -final ChannelDataInput output = new ChannelDataInput( -input.filename, new ReversedBitsChannel(input), - ByteBuffer.allocate(2048).order(input.buffer.order()).limit(0), true); -output.setStreamPosition(input.getStreamPosition()); -return output; +final var buffer = ByteBuffer.allocate(2048).order(input.buffer.order()); +final var reverse = new ChannelDataInput(input.filename, new ReversedBitsChannel(input), buffer, true); +input.yield(reverse); +return reverse; } /** @@ -75,11 +74,9 @@ final class ReversedBitsChannel implements ReadableByteChannel, SeekableByteChan */ @Override public long size() throws IOException { -if (input.channel instanceof SeekableByteChannel) { -return ((SeekableByteChannel) input.channel).size(); -} else { -throw unsupported("size"); -} +final long size = input.length(); +if (size >= 0) return size; +throw unsupported("size"); } /** @@ -95,7 +92,7 @@ final class ReversedBitsChannel implements ReadableByteChannel, SeekableByteChan */ @Override public SeekableByteChannel position(final lon
[sis] branch geoapi-4.0 updated (a93258c0ba -> 4c94f8269e)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git from a93258c0ba Give more informative names to some parameters. new 3762fd80fe Redesign the way that readers and writers co-exist in `DataStore` implementations: - `isWritable(…)` needs to distinguish between opening an existing file or creating a new one. - `setStreamPosition(long)` removed. It was misused in most places, causing probable bugs. - Allow creation of `ChannelDataOutput` from a `ChannelDataInput`, sharing same internal. - Add `synchronize(…)` for making input `ChannelData` consistent with output, or conversely. new e91f576e12 Refactor `ChannelImageOutputStream` as an implementation of `ImageOutputStream`. It allows us to test `ChannelData.yield(ChannelData)`. new 4c94f8269e First draft of GeoTIFF writer accessible from public API. For now we do that with a `GeoTiffStore.appen(…)` method. The 3 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../org/apache/sis/storage/geotiff/DataCube.java | 2 +- .../org/apache/sis/storage/geotiff/DataSubset.java | 2 - .../org/apache/sis/storage/geotiff/GeoTIFF.java| 4 +- .../apache/sis/storage/geotiff/GeoTiffStore.java | 157 -- .../apache/sis/storage/geotiff/NativeMetadata.java | 6 +- .../org/apache/sis/storage/geotiff/Reader.java | 76 +++-- .../sis/storage/geotiff/ReformattedImage.java | 13 + .../sis/storage/geotiff/ReversedBitsChannel.java | 19 +- .../sis/storage/geotiff/TileMatrixWriter.java | 16 +- .../org/apache/sis/storage/geotiff/Writer.java | 118 +-- .../sis/storage/geotiff/inflater/Inflater.java | 3 +- .../org/apache/sis/storage/geotiff/WriterTest.java | 7 +- .../org/apache/sis/storage/gpx/StoreProvider.java | 2 +- .../main/org/apache/sis/io/stream/ChannelData.java | 235 ++ .../org/apache/sis/io/stream/ChannelDataInput.java | 86 -- .../apache/sis/io/stream/ChannelDataOutput.java| 191 .../sis/io/stream/ChannelImageInputStream.java | 21 +- .../sis/io/stream/ChannelImageOutputStream.java| 186 +-- .../main/org/apache/sis/io/stream/IOUtilities.java | 75 ++--- .../main/org/apache/sis/io/stream/Markable.java| 2 +- .../apache/sis/io/stream/OutputStreamAdapter.java | 11 +- .../org/apache/sis/io/stream/UpdatableWrite.java | 39 ++- .../sis/storage/ReadOnlyStorageException.java | 1 + .../org/apache/sis/storage/StorageConnector.java | 25 +- ...ception.java => WriteOnlyStorageException.java} | 27 +- .../org/apache/sis/storage/base/URIDataStore.java | 26 +- .../sis/storage/esri/AsciiGridStoreProvider.java | 2 +- .../org/apache/sis/storage/image/FormatFinder.java | 2 +- .../storage/internal/WritableResourceSupport.java | 1 - .../main/org/apache/sis/storage/package-info.java | 2 +- .../sis/io/stream/ChannelDataOutputTest.java | 340 ++--- .../apache/sis/io/stream/ChannelDataTestCase.java | 53 +++- .../sis/io/stream/ChannelImageInputStreamTest.java | 97 -- .../io/stream/ChannelImageOutputStreamTest.java| 254 --- .../main/org/apache/sis/util/resources/Errors.java | 5 + .../apache/sis/util/resources/Errors.properties| 1 + .../apache/sis/util/resources/Errors_fr.properties | 1 + 37 files changed, 1439 insertions(+), 669 deletions(-) copy endorsed/src/org.apache.sis.storage/main/org/apache/sis/storage/{UnsupportedQueryException.java => WriteOnlyStorageException.java} (66%)
[sis] 03/03: First draft of GeoTIFF writer accessible from public API. For now we do that with a `GeoTiffStore.appen(…)` method.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit 4c94f8269e60aad551c00bd4e2130b5206422395 Author: Martin Desruisseaux AuthorDate: Wed Oct 25 04:51:21 2023 +0200 First draft of GeoTIFF writer accessible from public API. For now we do that with a `GeoTiffStore.appen(…)` method. --- .../org/apache/sis/storage/geotiff/DataCube.java | 2 +- .../org/apache/sis/storage/geotiff/DataSubset.java | 2 - .../org/apache/sis/storage/geotiff/GeoTIFF.java| 4 +- .../apache/sis/storage/geotiff/GeoTiffStore.java | 155 ++--- .../apache/sis/storage/geotiff/NativeMetadata.java | 6 +- .../org/apache/sis/storage/geotiff/Reader.java | 76 +++--- .../sis/storage/geotiff/ReformattedImage.java | 13 ++ .../sis/storage/geotiff/TileMatrixWriter.java | 16 ++- .../org/apache/sis/storage/geotiff/Writer.java | 116 +++ .../org/apache/sis/storage/geotiff/WriterTest.java | 7 +- .../sis/storage/ReadOnlyStorageException.java | 1 + ...ception.java => WriteOnlyStorageException.java} | 30 ++-- .../main/org/apache/sis/util/resources/Errors.java | 5 + .../apache/sis/util/resources/Errors.properties| 1 + .../apache/sis/util/resources/Errors_fr.properties | 1 + 15 files changed, 333 insertions(+), 102 deletions(-) diff --git a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/DataCube.java b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/DataCube.java index 007de175b1..eff8a80e3e 100644 --- a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/DataCube.java +++ b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/DataCube.java @@ -246,7 +246,7 @@ abstract class DataCube extends TiledGridResource implements ResourceOnFileSyste coverage = preload(coverage); } } catch (RuntimeException e) { -throw canNotRead(reader.input.filename, domain, e); +throw canNotRead(filename(), domain, e); } logReadOperation(reader.store.path, coverage.getGridGeometry(), startTime); return coverage; diff --git a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/DataSubset.java b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/DataSubset.java index 673946ef07..def938762b 100644 --- a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/DataSubset.java +++ b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/DataSubset.java @@ -46,7 +46,6 @@ import org.apache.sis.storage.geotiff.internal.Resources; import org.apache.sis.util.resources.Errors; import org.apache.sis.math.Vector; -import static java.lang.Math.addExact; import static java.lang.Math.subtractExact; import static java.lang.Math.multiplyExact; import static java.lang.Math.multiplyFull; @@ -386,7 +385,6 @@ class DataSubset extends TiledGridCoverage implements Localized { boolean isEmpty = true; for (int b=0; b getOptions(); +public abstract Set getOptions(); /** * Returns the resources to use for formatting error messages. diff --git a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoTiffStore.java b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoTiffStore.java index 4b8fa1f835..e6ef201639 100644 --- a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoTiffStore.java +++ b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoTiffStore.java @@ -27,6 +27,7 @@ import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.nio.file.Path; import java.nio.file.StandardOpenOption; +import java.awt.image.RenderedImage; import org.opengis.util.NameSpace; import org.opengis.util.NameFactory; import org.opengis.util.GenericName; @@ -41,23 +42,28 @@ import org.apache.sis.storage.DataStoreProvider; import org.apache.sis.storage.StorageConnector; import org.apache.sis.storage.DataStoreException; import org.apache.sis.storage.DataStoreClosedException; +import org.apache.sis.storage.ReadOnlyStorageException; +import org.apache.sis.storage.WriteOnlyStorageException; import org.apache.sis.storage.IllegalNameException; +import org.apache.sis.storage.base.MetadataBuilder; +import org.apache.sis.storage.base.StoreUtilities; +import org.apache.sis.storage.base.URIDataStore; import org.apache.sis.storage.event.StoreEvent; import org.apache.sis.storage.event.StoreListener; import org.apache.sis.storage.event.StoreListeners; import org.apache.sis.storage.event.WarningEvent; +imp
[sis] 02/03: Refactor `ChannelImageOutputStream` as an implementation of `ImageOutputStream`. It allows us to test `ChannelData.yield(ChannelData)`.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit e91f576e12fd2aa70c26b29966d4c5d7e2c99d0d Author: Martin Desruisseaux AuthorDate: Wed Oct 25 04:54:12 2023 +0200 Refactor `ChannelImageOutputStream` as an implementation of `ImageOutputStream`. It allows us to test `ChannelData.yield(ChannelData)`. --- .../sis/io/stream/ChannelImageInputStream.java | 21 +- .../sis/io/stream/ChannelImageOutputStream.java| 186 +-- .../main/org/apache/sis/io/stream/IOUtilities.java | 75 ++--- .../apache/sis/io/stream/OutputStreamAdapter.java | 11 +- .../sis/io/stream/ChannelDataOutputTest.java | 340 ++--- .../apache/sis/io/stream/ChannelDataTestCase.java | 53 +++- .../sis/io/stream/ChannelImageInputStreamTest.java | 97 -- .../io/stream/ChannelImageOutputStreamTest.java| 254 --- 8 files changed, 649 insertions(+), 388 deletions(-) diff --git a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelImageInputStream.java b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelImageInputStream.java index 04eeaead32..9426cb2caa 100644 --- a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelImageInputStream.java +++ b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelImageInputStream.java @@ -167,7 +167,8 @@ public class ChannelImageInputStream extends ChannelDataInput implements ImageIn /** * Reads up to {@code length} bytes from the stream, and modifies the supplied * {@code IIOByteBuffer} to indicate the byte array, offset, and length where - * the data may be found. + * the data may be found. This method may reference the internal buffer, thus + * avoiding a copy. * * @param destthe buffer to be written to. * @param length the maximum number of bytes to read. @@ -175,10 +176,22 @@ public class ChannelImageInputStream extends ChannelDataInput implements ImageIn */ @Override public final void readBytes(final IIOByteBuffer dest, int length) throws IOException { -final byte[] data = new byte[length]; -length = read(data); +clearBitOffset(); +final byte[] data; +final int offset; +if (buffer.hasArray()) { +ensureBufferContains(1); +data = buffer.array(); +offset = buffer.position(); +length = Math.min(buffer.remaining(), length); +buffer.position(offset + length); +} else { +data = new byte[length]; +length = read(data); +offset = 0; +} dest.setData(data); -dest.setOffset(0); +dest.setOffset(offset); dest.setLength(length); } diff --git a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelImageOutputStream.java b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelImageOutputStream.java index a46152ca96..037b81ee80 100644 --- a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelImageOutputStream.java +++ b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelImageOutputStream.java @@ -16,63 +16,191 @@ */ package org.apache.sis.io.stream; -import java.io.Closeable; -import java.io.DataOutput; import java.io.IOException; +import java.io.OutputStream; import java.nio.ByteBuffer; -import java.nio.channels.WritableByteChannel; +import java.nio.ByteOrder; +import java.nio.channels.ByteChannel; +import javax.imageio.stream.IIOByteBuffer; import javax.imageio.stream.ImageOutputStream; /** - * Adds the missing methods in {@code ChannelDataOutput} for implementing the {@code DataOutput} interface. - * Current implementation does not yet implements the {@code ImageOutputStream} sub-interface, but a future - * implementation may do so. + * An {@code ImageOutputStream} backed by {@code ChannelDataInput} and {@code ChannelDataOutput}. + * Contrarily to most other I/O frameworks in the standard JDK, {@code ImageOutputStream} is read/write. * - * We do not implement {@link ImageOutputStream} yet because the latter inherits all read operations from - * {@code ImageInputStream}, while the {@code org.apache.sis.storage.base} package keeps the concerns - * separated. Despite that, the name of this {@code ChannelImageOutputStream} anticipates a future version - * which would implement the image I/O interface. - * - * This class is a place-holder for future development. + * @todo Not yet used in {@link org.apache.sis.storage.StorageConnector}. * * @author Rémi Maréchal (Geomatys) * @author Martin Desruisseaux (Geomatys) */ -public class ChannelImageOutputStream extends ChannelDataOutput implements DataOutput, Closeable { +@SuppressWarnings("deprec
[sis-site] 01/01: Merge branch 'asf-staging' into asf-site.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch asf-site in repository https://gitbox.apache.org/repos/asf/sis-site.git commit 275fc8aa9a784484aa53b0d174f44e277dcb0895 Merge: 905533d0 c8f51174 Author: Martin Desruisseaux AuthorDate: Wed Oct 18 22:42:24 2023 +0200 Merge branch 'asf-staging' into asf-site. DOAP.rdf| 9 - en/sitemap.xml | 2 +- standards.html | 7 ++- templates/release-announce.html | 4 ++-- 4 files changed, 17 insertions(+), 5 deletions(-)
[sis-site] branch asf-site updated (905533d0 -> 275fc8aa)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch asf-site in repository https://gitbox.apache.org/repos/asf/sis-site.git from 905533d0 Merge branch 'asf-staging' into asf-site add c8f51174 Update web site with COG added in the list of supported standards. new 275fc8aa Merge branch 'asf-staging' into asf-site. The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: DOAP.rdf| 9 - en/sitemap.xml | 2 +- standards.html | 7 ++- templates/release-announce.html | 4 ++-- 4 files changed, 17 insertions(+), 5 deletions(-)
[sis-site] branch asf-staging updated: Update web site with COG added in the list of supported standards.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch asf-staging in repository https://gitbox.apache.org/repos/asf/sis-site.git The following commit(s) were added to refs/heads/asf-staging by this push: new c8f51174 Update web site with COG added in the list of supported standards. c8f51174 is described below commit c8f511743edea1c92d6b1cd5df636c8f27b149a2 Author: Martin Desruisseaux AuthorDate: Wed Oct 18 22:41:21 2023 +0200 Update web site with COG added in the list of supported standards. --- DOAP.rdf| 9 - en/sitemap.xml | 2 +- standards.html | 7 ++- templates/release-announce.html | 4 ++-- 4 files changed, 17 insertions(+), 5 deletions(-) diff --git a/DOAP.rdf b/DOAP.rdf index 724377b6..00b56c49 100644 --- a/DOAP.rdf +++ b/DOAP.rdf @@ -157,7 +157,14 @@ OGC GeoTIFF standard Open Geospatial Consortium -OGC 19-008r4 +http://www.opengis.net/doc/IS/GeoTIFF/1.1 + + + + +OGC Cloud Optimized GeoTIFF Standard +Open Geospatial Consortium +http://www.opengis.net/doc/is/COG/1.0 diff --git a/en/sitemap.xml b/en/sitemap.xml index 25d41cf1..af5ab012 100644 --- a/en/sitemap.xml +++ b/en/sitemap.xml @@ -148,7 +148,7 @@ 2023-10-02T23:31:58+02:00 https://sis.apache.org/standards.html -2023-09-30T17:48:07+02:00 +2023-10-18T22:37:15+02:00 https://sis.apache.org/ 2023-10-03T18:22:46+02:00 diff --git a/standards.html b/standards.html index ed153caf..d46ea8b0 100644 --- a/standards.html +++ b/standards.html @@ -192,9 +192,14 @@ Some standards are implemented partially, others almost fully. Grid Coverage -http://docs.opengeospatial.org/is/19-008r4/19-008r4.html;>OGC 19-008 +http://www.opengis.net/doc/IS/GeoTIFF/1.1;>OGC 19-008 GeoTIFF format + + +http://www.opengis.net/doc/is/COG/1.0;>OGC 21-026 + +Cloud Optimized GeoTIF https://portal.ogc.org/files/?artifact_id=43734;>OGC 10-092 diff --git a/templates/release-announce.html b/templates/release-announce.html index 96fd50b8..92e9424e 100644 --- a/templates/release-announce.html +++ b/templates/release-announce.html @@ -17,7 +17,7 @@ Apache SIS is a Java language library for developing geospatial applications. SIS provides data structures for geographic features and associated metadata - along with methods to manipulate those data structures. + along with methods to manipulate those data structures, such as map projections. The library is an implementation of GeoAPI 3.0 interfaces and can be used for desktop or server applications. A JavaFX application is provided for demonstration purposes. @@ -25,7 +25,7 @@ Some Apache SIS features are: - Read netCDF-3, GeoTIFF (including BigTIFF) and Moving Feature CSV data formats + Read netCDF-3, Cloud Optimized GeoTIFF (including BigTIFF) and Moving Feature CSV data formats Read/write GPX, ASCII Grid, World File, ISO 19115-3 metadata and legacy ISO 19139 compliant XML documents Referencing by coordinates (ISO 19111) or by identifiers (ISO 19112) Well Known Text (WKT) version 1 and 2 (ISO 19162)
[sis-site] branch main updated: Add the newly released http://www.opengis.net/doc/is/COG/1.0 in the list of standards supported by SIS.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/sis-site.git The following commit(s) were added to refs/heads/main by this push: new d478474a Add the newly released http://www.opengis.net/doc/is/COG/1.0 in the list of standards supported by SIS. d478474a is described below commit d478474adb529f7e56c95d47f375de342373e155 Author: Martin Desruisseaux AuthorDate: Wed Oct 18 22:37:15 2023 +0200 Add the newly released http://www.opengis.net/doc/is/COG/1.0 in the list of standards supported by SIS. https://www.ogc.org/press-release/cloud-optimized-geotiff-cog-published-as-official-ogc-standard/ --- content/standards.md | 7 ++- static/DOAP.rdf| 9 - static/templates/release-announce.html | 4 ++-- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/content/standards.md b/content/standards.md index f7560001..c0c047bc 100644 --- a/content/standards.md +++ b/content/standards.md @@ -90,9 +90,14 @@ Some standards are implemented partially, others almost fully. Grid Coverage -http://docs.opengeospatial.org/is/19-008r4/19-008r4.html;>OGC 19-008 +http://www.opengis.net/doc/IS/GeoTIFF/1.1;>OGC 19-008 GeoTIFF format + + +http://www.opengis.net/doc/is/COG/1.0;>OGC 21-026 + +Cloud Optimized GeoTIF https://portal.ogc.org/files/?artifact_id=43734;>OGC 10-092 diff --git a/static/DOAP.rdf b/static/DOAP.rdf index 724377b6..00b56c49 100644 --- a/static/DOAP.rdf +++ b/static/DOAP.rdf @@ -157,7 +157,14 @@ OGC GeoTIFF standard Open Geospatial Consortium -OGC 19-008r4 +http://www.opengis.net/doc/IS/GeoTIFF/1.1 + + + + +OGC Cloud Optimized GeoTIFF Standard +Open Geospatial Consortium +http://www.opengis.net/doc/is/COG/1.0 diff --git a/static/templates/release-announce.html b/static/templates/release-announce.html index 96fd50b8..92e9424e 100644 --- a/static/templates/release-announce.html +++ b/static/templates/release-announce.html @@ -17,7 +17,7 @@ Apache SIS is a Java language library for developing geospatial applications. SIS provides data structures for geographic features and associated metadata - along with methods to manipulate those data structures. + along with methods to manipulate those data structures, such as map projections. The library is an implementation of GeoAPI 3.0 interfaces and can be used for desktop or server applications. A JavaFX application is provided for demonstration purposes. @@ -25,7 +25,7 @@ Some Apache SIS features are: - Read netCDF-3, GeoTIFF (including BigTIFF) and Moving Feature CSV data formats + Read netCDF-3, Cloud Optimized GeoTIFF (including BigTIFF) and Moving Feature CSV data formats Read/write GPX, ASCII Grid, World File, ISO 19115-3 metadata and legacy ISO 19139 compliant XML documents Referencing by coordinates (ISO 19111) or by identifiers (ISO 19112) Well Known Text (WKT) version 1 and 2 (ISO 19162)
[sis] 01/05: First version of a TIFF writer (work initiated by Erwan Roussel). This initial version works, but with a limited amount of color models and sample models.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit 8facc18164725ed86aeba392fc59dc79e6ed6dac Author: Martin Desruisseaux AuthorDate: Sat Sep 16 20:04:55 2023 +0200 First version of a TIFF writer (work initiated by Erwan Roussel). This initial version works, but with a limited amount of color models and sample models. https://issues.apache.org/jira/browse/SIS-589 --- .../sis/coverage/grid/j2d/ImageUtilities.java | 18 + .../org/apache/sis/storage/geotiff/GeoTIFF.java| 6 + .../apache/sis/storage/geotiff/GeoTiffOption.java | 60 ++ .../apache/sis/storage/geotiff/GeoTiffStore.java | 78 ++- .../sis/storage/geotiff/GeoTiffStoreProvider.java | 18 +- .../org/apache/sis/storage/geotiff/Reader.java | 10 + .../sis/storage/geotiff/ReformattedImage.java | 143 .../apache/sis/storage/geotiff/TagValueWriter.java | 69 ++ .../sis/storage/geotiff/TileMatrixWriter.java | 204 ++ .../org/apache/sis/storage/geotiff/Writer.java | 740 + .../apache/sis/storage/geotiff/package-info.java | 2 +- .../org/apache/sis/storage/geotiff/WriterTest.java | 441 .../apache/sis/storage/base/MetadataFetcher.java | 339 ++ .../org/apache/sis/util/internal/Numerics.java | 6 + 14 files changed, 2121 insertions(+), 13 deletions(-) diff --git a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/coverage/grid/j2d/ImageUtilities.java b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/coverage/grid/j2d/ImageUtilities.java index 69d1a5ee85..f7f96ae301 100644 --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/coverage/grid/j2d/ImageUtilities.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/coverage/grid/j2d/ImageUtilities.java @@ -115,6 +115,22 @@ public final class ImageUtilities extends Static { ((long) low) + aoi.height) - aoi.y); } +/** + * Returns whether the given image has an alpha channel. + * + * @param image the image or {@code null}. + * @return whether the image has an alpha channel. + * + * @see #getTransparencyDescription(ColorModel) + */ +public static boolean hasAlpha(final RenderedImage image) { +if (image != null) { +final ColorModel cm = image.getColorModel(); +if (cm != null) return cm.hasAlpha(); +} +return false; +} + /** * Returns the number of bands in the given image, or 0 if the image or its sample model is null. * @@ -242,6 +258,8 @@ public final class ImageUtilities extends Static { * * @param cm the color model from which to get the transparency, or {@code null}. * @return a {@link Resources.Keys} value for the transparency, or 0 if unknown. + * + * @see #hasAlpha(RenderedImage) */ public static short getTransparencyDescription(final ColorModel cm) { if (cm != null) { diff --git a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoTIFF.java b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoTIFF.java index 9d0ee1e76b..11d3caba35 100644 --- a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoTIFF.java +++ b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoTIFF.java @@ -16,6 +16,7 @@ */ package org.apache.sis.storage.geotiff; +import java.util.Set; import java.util.Locale; import java.util.TimeZone; import java.io.Closeable; @@ -76,6 +77,11 @@ abstract class GeoTIFF implements Closeable { this.store = store; } +/** + * {@return the options (BigTIFF, COG…) used by this reader or writer}. + */ +abstract Set getOptions(); + /** * Returns the resources to use for formatting error messages. */ diff --git a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoTiffOption.java b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoTiffOption.java new file mode 100644 index 00..9d74388a74 --- /dev/null +++ b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoTiffOption.java @@ -0,0 +1,60 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distrib
[sis] 03/05: Initial GeoKeys support.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit e97299fd6765b136a4dae4d4c438fd2a7238a526 Author: Martin Desruisseaux AuthorDate: Thu Sep 21 18:35:37 2023 +0200 Initial GeoKeys support. https://issues.apache.org/jira/browse/SIS-589 --- .../apache/sis/referencing/IdentifiedObjects.java | 2 + .../org/apache/sis/storage/geotiff/GeoKeys.java| 13 + .../apache/sis/storage/geotiff/GeoKeysWriter.java | 790 + .../org/apache/sis/storage/geotiff/Writer.java | 53 +- .../sis/storage/geotiff/internal/Resources.java| 20 + .../storage/geotiff/internal/Resources.properties | 4 + .../geotiff/internal/Resources_fr.properties | 4 + .../apache/sis/storage/geotiff/GeoKeysTest.java| 10 + .../org/apache/sis/storage/geotiff/WriterTest.java | 50 +- .../apache/sis/storage/base/MetadataBuilder.java | 6 +- .../apache/sis/storage/base/MetadataFetcher.java | 56 ++ .../main/org/apache/sis/util/resources/Errors.java | 5 + .../apache/sis/util/resources/Errors.properties| 1 + .../apache/sis/util/resources/Errors_fr.properties | 1 + 14 files changed, 994 insertions(+), 21 deletions(-) diff --git a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/IdentifiedObjects.java b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/IdentifiedObjects.java index d4b50835d8..db3442e7c3 100644 --- a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/IdentifiedObjects.java +++ b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/IdentifiedObjects.java @@ -35,6 +35,7 @@ import org.opengis.referencing.operation.ConcatenatedOperation; import org.apache.sis.util.Static; import org.apache.sis.util.CharSequences; import org.apache.sis.util.ArgumentChecks; +import org.apache.sis.util.OptionalCandidate; import org.apache.sis.util.logging.Logging; import org.apache.sis.xml.IdentifierSpace; import org.apache.sis.util.internal.Strings; @@ -556,6 +557,7 @@ public final class IdentifiedObjects extends Static { * * @since 0.7 */ +@OptionalCandidate public static Integer lookupEPSG(final IdentifiedObject object) throws FactoryException { Integer code = null; if (object != null) { diff --git a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoKeys.java b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoKeys.java index 2740943ba1..2762793adc 100644 --- a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoKeys.java +++ b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoKeys.java @@ -105,6 +105,19 @@ final class GeoKeys { /** For user-defined CRS. */ public static final short VerticalDatum = 4098; /** For vertical axis. */ public static final short VerticalUnits = 4099; +/** + * Number of keys. Because keys cannot be repeated, this is the maximal + * number of entries that {@link GeoKeysWriter#keyDirectory} can contain. + * This value is verified by the {@code GeoKeysTest.verifyNumKeys()}. + */ +static final int NUM_KEYS = 46; + +/** + * Number of parameters that are of type {@code double}. + * This is the maximal length of {@link GeoKeysWriter#doubleParams}. + */ +static final int NUM_DOUBLES = 25; + /** * Returns the name of the given key. Implementation of this method is inefficient, * but it should rarely be invoked (mostly for formatting error messages). diff --git a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoKeysWriter.java b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoKeysWriter.java new file mode 100644 index 00..38f00f0067 --- /dev/null +++ b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoKeysWriter.java @@ -0,0 +1,790 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the Li
[sis] 04/05: Fix spurious warnings during the verification of map projection parameters.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit 182326f448bca9937b40b15517d074f1842f481c Author: Martin Desruisseaux AuthorDate: Mon Oct 16 05:42:45 2023 +0200 Fix spurious warnings during the verification of map projection parameters. --- .../apache/sis/referencing/IdentifiedObjects.java | 23 ++-- .../org/apache/sis/storage/geotiff/CRSBuilder.java | 116 - 2 files changed, 80 insertions(+), 59 deletions(-) diff --git a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/IdentifiedObjects.java b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/IdentifiedObjects.java index db3442e7c3..8bbd779010 100644 --- a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/IdentifiedObjects.java +++ b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/IdentifiedObjects.java @@ -174,6 +174,7 @@ public final class IdentifiedObjects extends Static { * * @see AbstractIdentifiedObject#getName() */ +@OptionalCandidate public static String getName(final IdentifiedObject object, final Citation authority) { return getName(object, authority, null); } @@ -255,6 +256,7 @@ public final class IdentifiedObjects extends Static { * * @see AbstractIdentifiedObject#getIdentifier() */ +@OptionalCandidate public static Identifier getIdentifier(final IdentifiedObject object, final Citation authority) { if (object != null) { String cs = null; @@ -297,19 +299,16 @@ public final class IdentifiedObjects extends Static { * @see #lookupURN(IdentifiedObject, Citation) */ public static String getIdentifierOrName(final IdentifiedObject object) { -if (object != null) { -for (final Identifier id : nonNull(object.getIdentifiers())) { -final String code = toString(id); -if (code != null) { // Paranoiac check. -return code; -} -} -final String name = toString(object.getName()); -if (name != null) { // Paranoiac check. -return name; +if (object == null) { +return null; +} +for (final Identifier id : nonNull(object.getIdentifiers())) { +final String code = toString(id); +if (code != null) { // Paranoiac check. +return code; } } -return null; +return toString(object.getName()); } /** @@ -336,6 +335,7 @@ public final class IdentifiedObjects extends Static { * * @since 1.0 */ +@OptionalCandidate public static String getSimpleNameOrIdentifier(final IdentifiedObject object) { if (object != null) { Identifier identifier = object.getName(); @@ -449,6 +449,7 @@ public final class IdentifiedObjects extends Static { * * @since 0.7 */ +@OptionalCandidate public static String lookupURN(final IdentifiedObject object, final Citation authority) throws FactoryException { if (object == null) { return null; diff --git a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/CRSBuilder.java b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/CRSBuilder.java index c8cc438544..e3643d7088 100644 --- a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/CRSBuilder.java +++ b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/CRSBuilder.java @@ -36,6 +36,8 @@ import javax.measure.quantity.Angle; import javax.measure.quantity.Length; import org.opengis.metadata.Identifier; import org.opengis.metadata.spatial.CellGeometry; +import org.opengis.parameter.GeneralParameterDescriptor; +import org.opengis.parameter.ParameterDescriptor; import org.opengis.parameter.ParameterValueGroup; import org.opengis.parameter.ParameterNotFoundException; import org.opengis.referencing.IdentifiedObject; @@ -56,30 +58,31 @@ import org.opengis.referencing.operation.Conversion; import org.opengis.referencing.operation.CoordinateOperation; import org.opengis.referencing.operation.OperationMethod; import org.opengis.util.FactoryException; -import org.apache.sis.storage.geotiff.internal.Resources; +import org.apache.sis.parameter.Parameters; import org.apache.sis.referencing.CommonCRS; import org.apache.sis.referencing.IdentifiedObjects; +import org.apache.sis.referencing.cs.AxesConvention; +import org.apache.sis.referencing.cs.CoordinateSystems; +import org.apache.sis.referencing.crs.DefaultProjectedCRS; +import org.apache.sis.referencing.crs.DefaultGeographicCRS
[sis] branch geoapi-4.0 updated (defbef6e4a -> a93258c0ba)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git from defbef6e4a Tune test utilities in preparation for the addition of GeoTIFF writer. new 8facc18164 First version of a TIFF writer (work initiated by Erwan Roussel). This initial version works, but with a limited amount of color models and sample models. new 0cdc177a1b Rename GeoKeys from GeoTIFF 1.0 to GeoTIFF 1.1 names. The keys related to units of measure are now handled in a separated class. new e97299fd67 Initial GeoKeys support. new 182326f448 Fix spurious warnings during the verification of map projection parameters. new a93258c0ba Give more informative names to some parameters. The 5 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../sis/coverage/grid/j2d/ImageUtilities.java | 18 + .../apache/sis/referencing/IdentifiedObjects.java | 25 +- .../referencing/operation/matrix/MatrixSIS.java| 36 +- .../org/apache/sis/storage/geotiff/CRSBuilder.java | 269 --- .../org/apache/sis/storage/geotiff/GeoKeys.java| 153 ++-- .../apache/sis/storage/geotiff/GeoKeysLoader.java | 4 +- .../apache/sis/storage/geotiff/GeoKeysWriter.java | 790 + .../org/apache/sis/storage/geotiff/GeoTIFF.java| 6 + .../apache/sis/storage/geotiff/GeoTiffOption.java | 60 ++ .../apache/sis/storage/geotiff/GeoTiffStore.java | 78 +- .../sis/storage/geotiff/GeoTiffStoreProvider.java | 18 +- .../org/apache/sis/storage/geotiff/Reader.java | 10 + .../sis/storage/geotiff/ReformattedImage.java | 143 .../apache/sis/storage/geotiff/TagValueWriter.java | 69 ++ .../sis/storage/geotiff/TileMatrixWriter.java | 204 ++ .../org/apache/sis/storage/geotiff/UnitKey.java| 186 + .../org/apache/sis/storage/geotiff/Writer.java | 765 .../sis/storage/geotiff/internal/Resources.java| 20 + .../storage/geotiff/internal/Resources.properties | 4 + .../geotiff/internal/Resources_fr.properties | 4 + .../apache/sis/storage/geotiff/package-info.java | 2 +- .../apache/sis/storage/geotiff/GeoKeysTest.java| 12 +- .../org/apache/sis/storage/geotiff/WriterTest.java | 483 + .../apache/sis/storage/base/MetadataBuilder.java | 6 +- .../apache/sis/storage/base/MetadataFetcher.java | 395 +++ .../org/apache/sis/util/internal/Numerics.java | 6 + .../main/org/apache/sis/util/resources/Errors.java | 5 + .../apache/sis/util/resources/Errors.properties| 1 + .../apache/sis/util/resources/Errors_fr.properties | 1 + 29 files changed, 3534 insertions(+), 239 deletions(-) create mode 100644 endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoKeysWriter.java create mode 100644 endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoTiffOption.java create mode 100644 endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/ReformattedImage.java create mode 100644 endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/TagValueWriter.java create mode 100644 endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/TileMatrixWriter.java create mode 100644 endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/UnitKey.java create mode 100644 endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/Writer.java create mode 100644 endorsed/src/org.apache.sis.storage.geotiff/test/org/apache/sis/storage/geotiff/WriterTest.java create mode 100644 endorsed/src/org.apache.sis.storage/main/org/apache/sis/storage/base/MetadataFetcher.java
[sis] 05/05: Give more informative names to some parameters.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit a93258c0ba5e319497c3ce17d2e45b933900e178 Author: Martin Desruisseaux AuthorDate: Mon Oct 16 22:33:36 2023 +0200 Give more informative names to some parameters. --- .../referencing/operation/matrix/MatrixSIS.java| 36 +++--- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/matrix/MatrixSIS.java b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/matrix/MatrixSIS.java index fc69495556..777601507b 100644 --- a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/matrix/MatrixSIS.java +++ b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/matrix/MatrixSIS.java @@ -308,17 +308,17 @@ public abstract class MatrixSIS implements Matrix, LenientComparable, Cloneable, * Sets this matrix to the values of another matrix. * The given matrix must have the same size. * - * @param matrix the matrix to copy. + * @param source the matrix to copy. * @throws MismatchedMatrixSizeException if the given matrix has a different size than this matrix. * * @since 0.7 */ -public void setMatrix(final Matrix matrix) throws MismatchedMatrixSizeException { -ArgumentChecks.ensureNonNull("matrix", matrix); +public void setMatrix(final Matrix source) throws MismatchedMatrixSizeException { +ArgumentChecks.ensureNonNull("source", source); final int numRow = getNumRow(); final int numCol = getNumCol(); -ensureSizeMatch(numRow, numCol, matrix); -setElements(matrix, 0, 0, 0, 0, numRow, numCol); +ensureSizeMatch(numRow, numCol, source); +setElements(source, 0, 0, 0, 0, numRow, numCol); } /** @@ -512,23 +512,23 @@ public abstract class MatrixSIS implements Matrix, LenientComparable, Cloneable, /** * Returns a new matrix which is the result of multiplying this matrix with the specified one. - * In other words, returns {@code this} × {@code matrix}. + * In other words, returns {@code this} × {@code other}. * * Relationship with coordinate operations - * In the context of coordinate operations, {@code Matrix.multiply(other)} is equivalent to + * In the context of coordinate operations, {@code other.multiply(other)} is equivalent to * {@linkplain AffineTransform#concatenate AffineTransform.concatenate}(other): * first transforms by the {@code other} transform and then transform the result by {@code this} transform. * - * @param matrix the matrix to multiply to this matrix. - * @return the result of {@code this} × {@code matrix}. + * @param other the matrix to multiply to this matrix. + * @return the result of {@code this} × {@code other}. * @throws MismatchedMatrixSizeException if the number of rows in the given matrix is not equals to the * number of columns in this matrix. */ -public MatrixSIS multiply(final Matrix matrix) throws MismatchedMatrixSizeException { -final int nc = matrix.getNumCol(); -ensureNumRowMatch(getNumCol(), matrix.getNumRow(), nc); +public MatrixSIS multiply(final Matrix other) throws MismatchedMatrixSizeException { +final int nc = other.getNumCol(); +ensureNumRowMatch(getNumCol(), other.getNumRow(), nc); final GeneralMatrix result = GeneralMatrix.create(getNumRow(), nc, false); -result.setToProduct(this, matrix); +result.setToProduct(this, other); return result; } @@ -615,18 +615,18 @@ public abstract class MatrixSIS implements Matrix, LenientComparable, Cloneable, } /** - * Returns the value of U which solves {@code this} × U = {@code matrix}. + * Returns the value of U which solves {@code this} × U = {@code target}. * This is equivalent to first computing the inverse of {@code this}, then multiplying the result * by the given matrix. * - * @param matrix the matrix to solve. - * @return the U matrix that satisfies {@code this} × U = {@code matrix}. + * @param target the matrix to solve. + * @return the U matrix that satisfies {@code this} × U = {@code target}. * @throws MismatchedMatrixSizeException if the number of rows in the given matrix is not equals * to the number of columns in this matrix. * @throws NoninvertibleMatrixException if this matrix is not invertible. */ -public MatrixSIS solve(final Matrix matrix) throws MismatchedMatrixSizeException, NoninvertibleMatrixException { -return Solver.solve(this, matrix); +public MatrixSIS solve(final M
[sis] 02/05: Rename GeoKeys from GeoTIFF 1.0 to GeoTIFF 1.1 names. The keys related to units of measure are now handled in a separated class.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit 0cdc177a1bb1569263bd668afa7b6cb7811c95e9 Author: Martin Desruisseaux AuthorDate: Wed Sep 20 16:59:30 2023 +0200 Rename GeoKeys from GeoTIFF 1.0 to GeoTIFF 1.1 names. The keys related to units of measure are now handled in a separated class. --- .../org/apache/sis/storage/geotiff/CRSBuilder.java | 169 +++ .../org/apache/sis/storage/geotiff/GeoKeys.java| 152 - .../apache/sis/storage/geotiff/GeoKeysLoader.java | 4 +- .../org/apache/sis/storage/geotiff/UnitKey.java| 186 + .../apache/sis/storage/geotiff/GeoKeysTest.java| 2 +- 5 files changed, 353 insertions(+), 160 deletions(-) diff --git a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/CRSBuilder.java b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/CRSBuilder.java index c99a30f41a..c8cc438544 100644 --- a/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/CRSBuilder.java +++ b/endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/CRSBuilder.java @@ -97,9 +97,9 @@ import static org.apache.sis.util.Utilities.equalsIgnoreMetadata; final class CRSBuilder extends ReferencingFactoryContainer { /** * Index where to store the name of the geodetic CRS, the datum, the ellipsoid and the prime meridian. - * The GeoTIFF specification has only one key, {@link GeoKeys#GeogCitation}, for the geographic CRS and - * its components. But some GeoTIFF files encode the names of all components in the value associated to - * that key, as in the following example: + * The GeoTIFF specification has only one key, {@link GeoKeys#GeodeticCitation}, for the geographic CRS + * and its components. But some GeoTIFF files encode the names of all components in the value associated + * to that key, as in the following example: * * * GCS Name = wgs84|Datum = unknown|Ellipsoid = WGS_1984|Primem = Greenwich| @@ -111,7 +111,7 @@ final class CRSBuilder extends ReferencingFactoryContainer { // PRIMEM must be first and GCRS must be last. /** - * Keys that may be used in the value associated to {@link GeoKeys#GeogCitation}. + * Keys that may be used in the value associated to {@link GeoKeys#GeodeticCitation}. * For each element in this array at index {@code i}, the {@code i/2} value is equal to the * {@code DATUM}, {@code ELLIPSOID} or {@code PRIMEM} constant for the corresponding type. */ @@ -503,7 +503,7 @@ final class CRSBuilder extends ReferencingFactoryContainer { * At this point we finished copying all GeoTIFF keys in the `geoKeys` map. Before to create the CRS, * store a few metadata. The first one is an ASCII reference to published documentation on the overall * configuration of the GeoTIFF file. In practice it seems to be often the projected CRS name, despite - * GeoKeys.PCSCitation being already for that purpose. + * GeoKeys.ProjectedCitation being already for that purpose. */ description = getAsString(GeoKeys.Citation); int code = getAsInteger(GeoKeys.RasterType); @@ -531,7 +531,7 @@ final class CRSBuilder extends ReferencingFactoryContainer { final VerticalCRS vertical = createVerticalCRS(); if (vertical != null) { if (crs == null) { -missingValue(GeoKeys.GeographicType); +missingValue(GeoKeys.GeodeticCRS); } else { crs = getCRSFactory().createCompoundCRS(Map.of(IdentifiedObject.NAME_KEY, crs.getName()), crs, vertical); } @@ -605,26 +605,49 @@ final class CRSBuilder extends ReferencingFactoryContainer { return (EllipsoidalCS) CoordinateSystems.replaceAngularUnit(cs, unit); } +/** + * Shortcut for {@code createUnit(…)} when the unit is angular. + * If no unit is specified, the default is degrees. + * + * @param key key of the unit to fetch. + * @return the unit of measurement associated to the given key, or the default value. + */ +private Unit createAngularUnit(final UnitKey key) throws FactoryException { +return createUnit(key, Angle.class, Units.DEGREE); +} + +/** + * Shortcut for {@code createUnit(…)} when the unit is linear. + * If no unit is specified, the default is metre. + * + * @param key key of the unit to fetch. + * @return the unit of measurement associated to the given key, or the default value. + */ +private Unit createLinearUnit(final UnitKey key) throws FactoryException { +return createUnit(key, Length.class, Units.METRE); +} + /** * Creates
svn commit: r1912969 - /sis/data/non-free/sis-embedded-data/pom.xml
Author: desruisseaux Date: Sat Oct 14 15:16:09 2023 New Revision: 1912969 URL: http://svn.apache.org/viewvc?rev=1912969=rev Log: Remove automatic name manifest entry. It is not needed anymore since the module has a module-info file. Modified: sis/data/non-free/sis-embedded-data/pom.xml Modified: sis/data/non-free/sis-embedded-data/pom.xml URL: http://svn.apache.org/viewvc/sis/data/non-free/sis-embedded-data/pom.xml?rev=1912969=1912968=1912969=diff == --- sis/data/non-free/sis-embedded-data/pom.xml (original) +++ sis/data/non-free/sis-embedded-data/pom.xml Sat Oct 14 15:16:09 2023 @@ -138,14 +138,6 @@ Provides non-free data, including the EP **/Generator* - - - - -org.apache.sis.referencing.database - - -
[sis-site] branch main updated: Fix an error in the version of Glassfish dependency. Also fix more minor errors in release management guide.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/sis-site.git The following commit(s) were added to refs/heads/main by this push: new 191a5800 Fix an error in the version of Glassfish dependency. Also fix more minor errors in release management guide. 191a5800 is described below commit 191a580099a6bb8362d0a9f7ded8aabb45927729 Author: Martin Desruisseaux AuthorDate: Fri Oct 13 00:29:13 2023 +0200 Fix an error in the version of Glassfish dependency. Also fix more minor errors in release management guide. --- content/developer-guide/introduction/Installation.html | 2 +- content/downloads.md | 2 +- content/release-management.md | 9 ++--- 3 files changed, 4 insertions(+), 9 deletions(-) diff --git a/content/developer-guide/introduction/Installation.html b/content/developer-guide/introduction/Installation.html index d34e6f77..6749122c 100644 --- a/content/developer-guide/introduction/Installation.html +++ b/content/developer-guide/introduction/Installation.html @@ -72,7 +72,7 @@ dependency groupIdorg.glassfish.jaxb/groupId artifactIdjaxb-runtime/artifactId -version2.3.6/version +version4.0.3/version scoperuntime/scope /dependency diff --git a/content/downloads.md b/content/downloads.md index d517cdf7..74b9f6c2 100644 --- a/content/downloads.md +++ b/content/downloads.md @@ -125,7 +125,7 @@ Below are examples of declarations in a `pom.xml` file for building a project wi org.glassfish.jaxb jaxb-runtime -2.3.6 +4.0.3 runtime diff --git a/content/release-management.md b/content/release-management.md index 5fec8d67..859c 100644 --- a/content/release-management.md +++ b/content/release-management.md @@ -47,7 +47,6 @@ provided that all relative paths in this page are adjusted accordingly. │ │ └─ $NEW_VERSION │ │ └─ RC$RELEASE_CANDIDATE │ └─ test -│ ├─ integration │ └─ maven └─ site ├─ asf-site @@ -827,13 +826,9 @@ svn delete https://dist.apache.org/repos/dist/release/sis/$OLD_VERSION \ On the `main` branch: -* Update the version numbers in all `pom.xml` files. +* Search for all occurrences of `SNAPSHOT` and update the version number. * Edit the value of the `MAJOR_VERSION` or `MINOR_VERSION` constant in the - `core/sis-utility/src/main/java/org/apache/sis/internal/system/Modules.java` file. - -Then on the development branch: - -* Edit the version number in the `application/sis-javafx/src/main/artifact/README` file. + `endorsed/src/org.apache.sis.util/main/org/apache/sis/system/Modules.java` file. ## Delete old artifacts on Maven snapshot repository{#nexus-clean}
[sis-site] branch asf-site updated (cf66df92 -> 905533d0)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch asf-site in repository https://gitbox.apache.org/repos/asf/sis-site.git from cf66df92 Merge branch 'asf-staging' into asf-site. add 438d998f Fix erroneous version number of Glassfish dependency. new 905533d0 Merge branch 'asf-staging' into asf-site The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: downloads.html | 2 +- en/sitemap.xml | 4 ++-- release-management.html | 9 ++--- 3 files changed, 5 insertions(+), 10 deletions(-)
[sis-site] 01/01: Merge branch 'asf-staging' into asf-site
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch asf-site in repository https://gitbox.apache.org/repos/asf/sis-site.git commit 905533d06b33abb839ff79b54d7fedd7464c07f0 Merge: cf66df92 438d998f Author: Martin Desruisseaux AuthorDate: Fri Oct 13 00:33:46 2023 +0200 Merge branch 'asf-staging' into asf-site downloads.html | 2 +- en/sitemap.xml | 4 ++-- release-management.html | 9 ++--- 3 files changed, 5 insertions(+), 10 deletions(-)
[sis-site] branch asf-staging updated: Fix erroneous version number of Glassfish dependency.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch asf-staging in repository https://gitbox.apache.org/repos/asf/sis-site.git The following commit(s) were added to refs/heads/asf-staging by this push: new 438d998f Fix erroneous version number of Glassfish dependency. 438d998f is described below commit 438d998f1d3e43c50686cbfbc20f91d3bb83 Author: Martin Desruisseaux AuthorDate: Fri Oct 13 00:32:20 2023 +0200 Fix erroneous version number of Glassfish dependency. --- downloads.html | 2 +- en/sitemap.xml | 4 ++-- release-management.html | 9 ++--- 3 files changed, 5 insertions(+), 10 deletions(-) diff --git a/downloads.html b/downloads.html index f85f017f..c4415467 100644 --- a/downloads.html +++ b/downloads.html @@ -200,7 +200,7 @@ Below are examples of declarations in a pom.xml file for building a dependency groupIdorg.glassfish.jaxb/groupId artifactIdjaxb-runtime/artifactId -version2.3.6/version +version4.0.3/version scoperuntime/scope /dependency /dependencies diff --git a/en/sitemap.xml b/en/sitemap.xml index 169330b4..25d41cf1 100644 --- a/en/sitemap.xml +++ b/en/sitemap.xml @@ -3,7 +3,7 @@ xmlns:xhtml="http://www.w3.org/1999/xhtml;> https://sis.apache.org/downloads.html -2023-10-03T18:22:46+02:00 +2023-10-13T00:29:13+02:00 https://sis.apache.org/team-list.html 2022-12-08T22:07:22+01:00 @@ -100,7 +100,7 @@ 2022-12-08T22:07:22+01:00 https://sis.apache.org/release-management.html -2023-10-07T16:05:00+02:00 +2023-10-13T00:29:13+02:00 https://sis.apache.org/release-notes.html 2023-10-02T17:36:51+02:00 diff --git a/release-management.html b/release-management.html index 64db8496..391423f9 100644 --- a/release-management.html +++ b/release-management.html @@ -201,7 +201,6 @@ provided that all relative paths in this page are adjusted accordingly. │ │ └─ $NEW_VERSION │ │ └─ RC$RELEASE_CANDIDATE │ └─ test -│ ├─ integration │ └─ maven └─ site ├─ asf-site @@ -753,13 +752,9 @@ and the message format must be RAW text only (no HTML). Update main branch for the next development cycle On the main branch: -Update the version numbers in all pom.xml files. +Search for all occurrences of SNAPSHOT and update the version number. Edit the value of the MAJOR_VERSION or MINOR_VERSION constant in the -core/sis-utility/src/main/java/org/apache/sis/internal/system/Modules.java file. - -Then on the development branch: - -Edit the version number in the application/sis-javafx/src/main/artifact/README file. +endorsed/src/org.apache.sis.util/main/org/apache/sis/system/Modules.java file. Delete old artifacts on Maven snapshot repository Login in the https://repository.apache.org/index.html;>Nexus repository.
[sis-site] 01/01: Merge branch 'asf-staging' into asf-site.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch asf-site in repository https://gitbox.apache.org/repos/asf/sis-site.git commit cf66df9281bc93834b3d1895e45e7c885ba52d96 Merge: 3a836900 930adf19 Author: Martin Desruisseaux AuthorDate: Fri Oct 13 00:24:41 2023 +0200 Merge branch 'asf-staging' into asf-site. DOAP.rdf | 5 + build.html | 244 -- code-patterns.html | 2 +- coding-conventions.html| 62 +- command-line.html | 10 +- contributor.html | 2 +- downloads.html | 82 +- en/sitemap.xml | 75 +- epsg.html | 26 +- faq.html | 2 +- formats.html | 4 +- fr/index.html | 2 +- fr/index.xml | 2 +- howto.html | 2 +- howto/crs_equality.html| 2 +- howto/datalake_to_datacube.html| 4 +- howto/envelopes_in_different_crs.html | 2 +- howto/export_metadata_to_xml.html | 2 +- howto/geodetic_paths.html | 2 +- howto/geographic_bounding_box.html | 2 +- howto/index.xml| 24 +- howto/instantiate_utm_projection.html | 2 +- howto/lookup_crs_urn.html | 2 +- howto/parallel_computation.html| 2 +- howto/parse_and_format_mgrs_codes.html | 2 +- howto/raster_values_at_geographic_coordinates.html | 2 +- howto/raster_values_at_pixel_coordinates.html | 2 +- howto/rasters_bigger_than_memory.html | 2 +- howto/read_geotiff.html| 5 +- howto/read_netcdf.html | 5 +- howto/resample_raster.html | 2 +- howto/transform_coordinates.html | 2 +- howto/transform_envelopes.html | 4 +- howto/write_raster.html| 37 +- index.html | 19 +- index.xml | 219 +++-- javafx.html| 6 +- mail-lists.html| 2 +- release-management-setup.html | 276 --- release-management.html| 664 +-- release-notes.html | 8 +- release-notes/0.1.html | 2 +- release-notes/0.2.html | 2 +- release-notes/0.3.html | 2 +- release-notes/0.4.html | 2 +- release-notes/0.5.html | 2 +- release-notes/0.6.html | 2 +- release-notes/0.7.html | 4 +- release-notes/0.8.html | 2 +- release-notes/1.0.html | 2 +- release-notes/1.1.html | 4 +- release-notes/1.2.html | 2 +- release-notes/1.3.html | 6 +- release-notes/{1.2.html => 1.4.html} | 102 ++- release-notes/Modularization.html | 891 + release-notes/index.xml| 66 +- sitemap.xml| 2 +- source.html| 100 ++- standards.html | 4 +- syntax.css | 7 +- tables/CoordinateOperationMethods.html | 14 +- tables/CoordinateReferenceSystems.html | 2 +- team-list.html | 2 +- 63 files changed, 1891 insertions(+), 1152 deletions(-)
[sis-site] branch asf-site updated (3a836900 -> cf66df92)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch asf-site in repository https://gitbox.apache.org/repos/asf/sis-site.git from 3a836900 Merge branch 'asf-staging' into asf-site. add 930adf19 Staging repository for the 1.4 release. new cf66df92 Merge branch 'asf-staging' into asf-site. The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: DOAP.rdf | 5 + build.html | 244 -- code-patterns.html | 2 +- coding-conventions.html| 62 +- command-line.html | 10 +- contributor.html | 2 +- downloads.html | 82 +- en/sitemap.xml | 75 +- epsg.html | 26 +- faq.html | 2 +- formats.html | 4 +- fr/index.html | 2 +- fr/index.xml | 2 +- howto.html | 2 +- howto/crs_equality.html| 2 +- howto/datalake_to_datacube.html| 4 +- howto/envelopes_in_different_crs.html | 2 +- howto/export_metadata_to_xml.html | 2 +- howto/geodetic_paths.html | 2 +- howto/geographic_bounding_box.html | 2 +- howto/index.xml| 24 +- howto/instantiate_utm_projection.html | 2 +- howto/lookup_crs_urn.html | 2 +- howto/parallel_computation.html| 2 +- howto/parse_and_format_mgrs_codes.html | 2 +- howto/raster_values_at_geographic_coordinates.html | 2 +- howto/raster_values_at_pixel_coordinates.html | 2 +- howto/rasters_bigger_than_memory.html | 2 +- howto/read_geotiff.html| 5 +- howto/read_netcdf.html | 5 +- howto/resample_raster.html | 2 +- howto/transform_coordinates.html | 2 +- howto/transform_envelopes.html | 4 +- howto/write_raster.html| 37 +- index.html | 19 +- index.xml | 219 +++-- javafx.html| 6 +- mail-lists.html| 2 +- release-management-setup.html | 276 --- release-management.html| 664 +-- release-notes.html | 8 +- release-notes/0.1.html | 2 +- release-notes/0.2.html | 2 +- release-notes/0.3.html | 2 +- release-notes/0.4.html | 2 +- release-notes/0.5.html | 2 +- release-notes/0.6.html | 2 +- release-notes/0.7.html | 4 +- release-notes/0.8.html | 2 +- release-notes/1.0.html | 2 +- release-notes/1.1.html | 4 +- release-notes/1.2.html | 2 +- release-notes/1.3.html | 6 +- release-notes/{1.2.html => 1.4.html} | 102 ++- release-notes/Modularization.html | 891 + release-notes/index.xml| 66 +- sitemap.xml| 2 +- source.html| 100 ++- standards.html | 4 +- syntax.css | 7 +- tables/CoordinateOperationMethods.html | 14 +- tables/CoordinateReferenceSystems.html | 2 +- team-list.html | 2 +- 63 files changed, 1891 insertions(+), 1152 deletions(-) delete mode 100644 build.html delete mode 100644 release-management-setup.html copy release-notes/{1.2.html => 1.4.html} (52%) create mode 100644 release-notes/Modularization.html
[sis] branch main updated: Set version number to 1.5 for next release cycle.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/sis.git The following commit(s) were added to refs/heads/main by this push: new 7276317ed7 Set version number to 1.5 for next release cycle. 7276317ed7 is described below commit 7276317ed7e929a670f6165d6977d5aabdfc82bf Author: Martin Desruisseaux AuthorDate: Sat Oct 7 17:36:28 2023 +0200 Set version number to 1.5 for next release cycle. --- endorsed/build.gradle.kts | 2 +- endorsed/src/org.apache.sis.openoffice/bundle/README.md | 2 +- .../test/org/apache/sis/referencing/factory/sql/epsg/README.md | 2 +- .../src/org.apache.sis.util/main/org/apache/sis/system/Modules.java | 2 +- incubator/build.gradle.kts | 2 +- optional/build.gradle.kts | 2 +- parent/pom.xml | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/endorsed/build.gradle.kts b/endorsed/build.gradle.kts index ca7aa0308d..09483d0fe9 100644 --- a/endorsed/build.gradle.kts +++ b/endorsed/build.gradle.kts @@ -15,7 +15,7 @@ * limitations under the License. */ group = "org.apache.sis" -version = "1.4-SNAPSHOT" +version = "1.5-SNAPSHOT" /* * "org.apache.sis.buildtools" is a custom Gradle plugin for building a project with Module Source Hierarchy diff --git a/endorsed/src/org.apache.sis.openoffice/bundle/README.md b/endorsed/src/org.apache.sis.openoffice/bundle/README.md index ebdcfa6a12..84cd4dc2a9 100644 --- a/endorsed/src/org.apache.sis.openoffice/bundle/README.md +++ b/endorsed/src/org.apache.sis.openoffice/bundle/README.md @@ -83,7 +83,7 @@ Launch: ``` cd target -unopkg add apache-sis-1.4-SNAPSHOT.oxt --log-file log.txt +unopkg add apache-sis-1.5-SNAPSHOT.oxt --log-file log.txt scalc -env:RTL_LOGFILE=log.txt ``` diff --git a/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/factory/sql/epsg/README.md b/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/factory/sql/epsg/README.md index f7945afcd7..5238e5710c 100644 --- a/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/factory/sql/epsg/README.md +++ b/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/factory/sql/epsg/README.md @@ -98,7 +98,7 @@ cd __ mvn clean install export CLASSPATH=~/.m2/repository/org/apache/derby/derby/10.14.2.0/derby-10.14.2.0.jar export CLASSPATH=$PWD/core/sis-metadata/target/test-classes:$CLASSPATH -export CLASSPATH=$PWD/target/binaries/sis-referencing-1.4-SNAPSHOT.jar:$CLASSPATH +export CLASSPATH=$PWD/target/binaries/sis-referencing-1.5-SNAPSHOT.jar:$CLASSPATH export CLASSPATH=$PWD/core/sis-metadata/target/test-classes:$CLASSPATH export CLASSPATH=$PWD/core/sis-referencing/target/test-classes:$CLASSPATH cd http://svn.apache.org/repos/asf/sis/data/non-free/> diff --git a/endorsed/src/org.apache.sis.util/main/org/apache/sis/system/Modules.java b/endorsed/src/org.apache.sis.util/main/org/apache/sis/system/Modules.java index e148e9dfd4..5f4c76b615 100644 --- a/endorsed/src/org.apache.sis.util/main/org/apache/sis/system/Modules.java +++ b/endorsed/src/org.apache.sis.util/main/org/apache/sis/system/Modules.java @@ -116,7 +116,7 @@ public final class Modules { * * @see org.apache.sis.util.Version */ -public static final int MINOR_VERSION = 4; +public static final int MINOR_VERSION = 5; /** * The prefix of all classnames in Apache SIS, including a trailing dot. diff --git a/incubator/build.gradle.kts b/incubator/build.gradle.kts index 0724c5f5f4..0a1a1bd5c2 100644 --- a/incubator/build.gradle.kts +++ b/incubator/build.gradle.kts @@ -15,7 +15,7 @@ * limitations under the License. */ group = "org.apache.sis" -version = "1.4-SNAPSHOT" +version = "1.5-SNAPSHOT" /* * "org.apache.sis.buildtools" is a custom Gradle plugin for building a project with Module Source Hierarchy. diff --git a/optional/build.gradle.kts b/optional/build.gradle.kts index c7d02a5e1e..27d145361b 100644 --- a/optional/build.gradle.kts +++ b/optional/build.gradle.kts @@ -15,7 +15,7 @@ * limitations under the License. */ group = "org.apache.sis" -version = "1.4-SNAPSHOT" +version = "1.5-SNAPSHOT" val pathToFX = System.getenv("PATH_TO_FX") if (pathToFX == null) { diff --git a/parent/pom.xml b/parent/pom.xml index 7d8dfa94e9..9b3f339cfc 100644 --- a/parent/pom.xml +++ b/parent/pom.xml @@ -38,7 +38,7 @@ == --> org.apache.sis parent - 1.4-SNAPSHOT + 1.5-SNAPSHOT pom Apache SIS
[sis] tag 1.4-RC1 deleted (was 6f5b664363)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to tag 1.4-RC1 in repository https://gitbox.apache.org/repos/asf/sis.git *** WARNING: tag 1.4-RC1 was deleted! *** was 6f5b664363 Set the version number to 1.4. The revisions that were on this tag are still contained in other references; therefore, this change does not discard any commits from the repository.
[sis] tag 1.4 created (now 6f5b664363)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to tag 1.4 in repository https://gitbox.apache.org/repos/asf/sis.git at 6f5b664363 (commit) No new revisions were added by this update.
svn commit: r64502 - /dev/sis/1.4/
Author: desruisseaux Date: Thu Oct 12 16:04:59 2023 New Revision: 64502 Log: Delete SIS 1.4 staging repository after release. Removed: dev/sis/1.4/
svn commit: r64501 - /dev/sis/1.4/RC1/ /release/sis/1.4/
Author: desruisseaux Date: Thu Oct 12 16:04:15 2023 New Revision: 64501 Log: Committing SIS Source and Binary Release Candidate 1 for SIS-1.4. Added: release/sis/1.4/ - copied from r64500, dev/sis/1.4/RC1/ Removed: dev/sis/1.4/RC1/
svn commit: r1912922 - /sis/release-test/integration/
Author: desruisseaux Date: Thu Oct 12 15:47:22 2023 New Revision: 1912922 URL: http://svn.apache.org/viewvc?rev=1912922=rev Log: Remove the integration tests because Apache SIS code repository no longer contains `TestSuite` classes. The removed project also contained a Proj4 - Apache SIS comparator, which is removed as a side effect. If we want those comparisons, we would need to redo them with PROJ-JNI. Removed: sis/release-test/integration/
[sis] 06/06: Tune test utilities in preparation for the addition of GeoTIFF writer.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit defbef6e4a7ec537e96598eb3b9139f28dd7d173 Author: Martin Desruisseaux AuthorDate: Mon Sep 18 16:20:08 2023 +0200 Tune test utilities in preparation for the addition of GeoTIFF writer. --- .../test/org/apache/sis/image/TiledImageMock.java | 38 + .../org/apache/sis/io/stream/ByteArrayChannel.java | 49 ++ 2 files changed, 71 insertions(+), 16 deletions(-) diff --git a/endorsed/src/org.apache.sis.feature/test/org/apache/sis/image/TiledImageMock.java b/endorsed/src/org.apache.sis.feature/test/org/apache/sis/image/TiledImageMock.java index 9426fc852d..e5a0031733 100644 --- a/endorsed/src/org.apache.sis.feature/test/org/apache/sis/image/TiledImageMock.java +++ b/endorsed/src/org.apache.sis.feature/test/org/apache/sis/image/TiledImageMock.java @@ -41,7 +41,7 @@ import org.apache.sis.coverage.grid.j2d.WritableTiledImage; import org.apache.sis.util.ArraysExt; import org.apache.sis.util.internal.Numerics; -import static org.junit.Assert.*; +import static org.junit.jupiter.api.Assertions.*; /** @@ -180,7 +180,19 @@ public final class TiledImageMock extends PlanarImage implements WritableRendere } /** - * Returns a gray scale color model if the data type is byte, or {@code null} otherwise. + * Sets the color model. This method can be invoked at most once. + * + * @param cm the color model to use. + */ +public synchronized void setColorModel(final ColorModel cm) { +assertNull(colorModel, "Already initialized."); +assertTrue(cm.isCompatibleSampleModel(sampleModel)); +colorModel = cm; +} + +/** + * Returns the color model. + * The default value is a gray scale color model if the data type is byte, or {@code null} otherwise. * More color models may be supported in future versions if there is a need for them. */ @Override @@ -269,6 +281,14 @@ public final class TiledImageMock extends PlanarImage implements WritableRendere StrictMath.floorDiv(oy, tileHeight) + minTileY, true).setSample(x, y, b, value); } +/** + * Initializes the sample values of all all bands in all tiles to testing values. + * The sample value pattern is described by {@link #initializeAllTiles(int[], int)}. + */ +public void initializeAllTiles() { +initializeAllTiles(ArraysExt.range(0, sampleModel.getNumBands()), 0); +} + /** * Initializes the sample values of all tiles to testing values. * The sample values will be 4 digits numbers of the form "BTYX" where: @@ -369,7 +389,7 @@ public final class TiledImageMock extends PlanarImage implements WritableRendere */ @Override public synchronized Raster getTile(final int tileX, final int tileY) { -assertFalse("isTileAcquired", isTileAcquired); // See javadoc. +assertFalse(isTileAcquired, "isTileAcquired"); // See javadoc. return tile(tileX, tileY, false); } @@ -378,7 +398,7 @@ public final class TiledImageMock extends PlanarImage implements WritableRendere */ @Override public synchronized WritableRaster getWritableTile(final int tileX, final int tileY) { -assertFalse("isTileAcquired", isTileAcquired); +assertFalse(isTileAcquired, "isTileAcquired"); final WritableRaster raster = tile(tileX, tileY, true); isTileAcquired = true; acquiredTileX = tileX; @@ -420,9 +440,9 @@ public final class TiledImageMock extends PlanarImage implements WritableRendere */ @Override public synchronized void releaseWritableTile(final int tileX, final int tileY) { -assertTrue("isTileAcquired", isTileAcquired); -assertEquals("tileX", acquiredTileX, tileX); -assertEquals("tileY", acquiredTileY, tileY); +assertTrue(isTileAcquired, "isTileAcquired"); +assertEquals(acquiredTileX, tileX, "tileX"); +assertEquals(acquiredTileY, tileY, "tileY"); isTileAcquired = false; } @@ -476,8 +496,8 @@ public final class TiledImageMock extends PlanarImage implements WritableRendere final int minY = r.getMinY(); final int tx = ImageUtilities.pixelToTileX(this, minX); final int ty = ImageUtilities.pixelToTileY(this, minY); -assertEquals("Unsupported operation.", tx, ImageUtilities.pixelToTileX(this, minX + r.getWidth() - 1)); -assertEquals("Unsupported operation.", ty, ImageUtilities.pixelToTileX(this, minY + r.getHeight() - 1)); +assertEquals(tx, ImageUtilities.pixelToTileX(this, minX + r.getWidth() - 1), "Unsupported operation.
[sis] branch geoapi-4.0 updated (a2820288ee -> defbef6e4a)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git from a2820288ee Modify the structure of the binary bundle for avoiding to have undesired applications on the module-path. new 3858503ae4 Documentation and code updates in I/O in preparation for GeoTIFF writer. new 255a5b2bd7 `ChannelDataInput` implements `DataInput` for allowing `instanceof` checks against a public interface. new a5cb0d0568 `ChannelDataOutput` implements `DataOutput` for allowing `instanceof` checks against a public interface. new e45d945158 Add `HyperRectangleWriter` as an helper class for multi-dimensional grid coverage writers. new 4fe9373158 Add `UpdatableWrite` as an helper class for data store writers which need to update values after they have been written. new defbef6e4a Tune test utilities in preparation for the addition of GeoTIFF writer. The 6 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../test/org/apache/sis/image/TiledImageMock.java | 38 ++- .../org/apache/sis/io/stream/ChannelDataInput.java | 125 +++- .../apache/sis/io/stream/ChannelDataOutput.java| 201 ++--- .../sis/io/stream/ChannelImageInputStream.java | 70 + .../sis/io/stream/ChannelImageOutputStream.java| 85 +- .../apache/sis/io/stream/HyperRectangleReader.java | 2 +- .../apache/sis/io/stream/HyperRectangleWriter.java | 301 +++ .../apache/sis/io/stream/InputStreamAdapter.java | 58 +++- .../main/org/apache/sis/io/stream/Region.java | 38 ++- .../org/apache/sis/io/stream/UpdatableWrite.java | 323 + .../org/apache/sis/storage/StorageConnector.java | 113 --- .../org/apache/sis/storage/base/URIDataStore.java | 7 +- .../org/apache/sis/io/stream/ByteArrayChannel.java | 49 +++- .../sis/io/stream/ChannelDataOutputTest.java | 91 ++ .../io/stream/ChannelImageOutputStreamTest.java| 18 +- .../sis/io/stream/HyperRectangleWriterTest.java| 206 + .../apache/sis/io/stream/UpdatableWriteTest.java | 145 + .../apache/sis/storage/StorageConnectorTest.java | 10 +- 18 files changed, 1501 insertions(+), 379 deletions(-) create mode 100644 endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/HyperRectangleWriter.java create mode 100644 endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/UpdatableWrite.java create mode 100644 endorsed/src/org.apache.sis.storage/test/org/apache/sis/io/stream/HyperRectangleWriterTest.java create mode 100644 endorsed/src/org.apache.sis.storage/test/org/apache/sis/io/stream/UpdatableWriteTest.java
[sis] 02/06: `ChannelDataInput` implements `DataInput` for allowing `instanceof` checks against a public interface.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit 255a5b2bd73bcf4873d78a677eed30140f843e6d Author: Martin Desruisseaux AuthorDate: Sun Sep 17 14:51:39 2023 +0200 `ChannelDataInput` implements `DataInput` for allowing `instanceof` checks against a public interface. --- .../org/apache/sis/io/stream/ChannelDataInput.java | 125 +++-- .../sis/io/stream/ChannelImageInputStream.java | 70 +--- .../apache/sis/io/stream/InputStreamAdapter.java | 58 +- .../org/apache/sis/storage/StorageConnector.java | 99 .../apache/sis/storage/StorageConnectorTest.java | 10 +- 5 files changed, 227 insertions(+), 135 deletions(-) diff --git a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelDataInput.java b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelDataInput.java index 5f0c4c5c9e..a7aa272888 100644 --- a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelDataInput.java +++ b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelDataInput.java @@ -16,10 +16,13 @@ */ package org.apache.sis.io.stream; +import java.io.DataInput; +import java.io.DataInputStream; import java.io.IOException; import java.io.EOFException; import java.nio.Buffer; import java.nio.ByteBuffer; +import java.nio.ByteOrder; import java.nio.CharBuffer; import java.nio.ShortBuffer; import java.nio.IntBuffer; @@ -51,17 +54,14 @@ import static org.apache.sis.util.ArgumentChecks.ensureBetween; * Since this class is only a helper tool, it does not "own" the channel and consequently does not provide * {@code close()} method. It is users responsibility to close the channel after usage. * - * Relationship with {@code DataInput} - * This class API is compatibly with the {@link java.io.DataInput} interface, so subclasses can implement that - * interface if they wish. This class does not implement {@code DataInput} itself because it is not needed for - * SIS purposes, and because {@code DataInput} has undesirable methods ({@code readLine()} and {@code readUTF()}). - * However, the {@link ChannelImageInputStream} class implements the {@code DataInput} interface, together with - * the {@link javax.imageio.stream.ImageInputStream} one, mostly for situations when inter-operability with - * {@link javax.imageio} is needed. + * Relationship with {@code ChannelImageInputStream} + * This class API is compatible with the {@link javax.imageio.stream.ImageInputStream} interface, so subclasses + * can implement that interface if they wish. This is done by {@link ChannelImageInputStream} for situations + * when inter-operability with {@link javax.imageio} is needed. * * @author Martin Desruisseaux (Geomatys) */ -public class ChannelDataInput extends ChannelData { +public class ChannelDataInput extends ChannelData implements DataInput { /** * Minimum number of bytes to skip in the {@code seek(long)} operation. * If there is less bytes to skip, then it is not worth to do a seek @@ -173,7 +173,7 @@ public class ChannelDataInput extends ChannelData { /** * Returns {@code true} if the buffer or the channel has at least one byte remaining. - * If the {@linkplain #buffer buffer} has no remaining bytes, then this method will attempts + * If the {@linkplain #buffer buffer} has no remaining bytes, then this method will attempt * to read at least one byte from the {@linkplain #channel}. If no bytes can be read because * the channel has reached the end of stream, then this method returns {@code false}. * @@ -244,10 +244,10 @@ public class ChannelDataInput extends ChannelData { } /** - * Pushes back the last processed byte. This is used when a call to {@code readBit()} did not - * used every bits in a byte, or when {@code readLine()} checked for the Windows-style of EOL. + * Pushes back the last processed byte. This is used when a call to {@link #readBits(int)} did not + * used every bits in a byte, or when {@link #readLine()} checked for the Windows-style of EOL. */ -final void pushBack() { +private void pushBack() { buffer.position(buffer.position() - 1); } @@ -257,6 +257,8 @@ public class ChannelDataInput extends ChannelData { * * @return the value of the next bit from the stream. * @throws IOException if an error occurred while reading (including EOF). + * + * @see #readBoolean() */ public final int readBit() throws IOException { ensureBufferContains(Byte.BYTES); @@ -297,6 +299,26 @@ public class ChannelDataInput extends ChannelData { return value; } +/** + * Reads a byte from the stream and returns {@code true} if it is nonzero, {@code false}
[sis] 01/06: Documentation and code updates in I/O in preparation for GeoTIFF writer.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit 3858503ae455572140d13cf99f21bc1bdd3747cf Author: Martin Desruisseaux AuthorDate: Sat Sep 16 11:04:01 2023 +0200 Documentation and code updates in I/O in preparation for GeoTIFF writer. --- .../apache/sis/io/stream/ChannelDataOutput.java| 87 ++ .../apache/sis/io/stream/HyperRectangleReader.java | 2 +- .../main/org/apache/sis/io/stream/Region.java | 38 +++--- .../org/apache/sis/storage/base/URIDataStore.java | 7 +- 4 files changed, 86 insertions(+), 48 deletions(-) diff --git a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelDataOutput.java b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelDataOutput.java index ea8c18fff7..31e17058bb 100644 --- a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelDataOutput.java +++ b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelDataOutput.java @@ -436,6 +436,12 @@ public class ChannelDataOutput extends ChannelData implements Flushable { * in order to avoid duplicating almost identical code many times. */ private abstract class ArrayWriter { +/** + * Creates a new writer. + */ +ArrayWriter() { +} + /** * Creates a new buffer of the type required by the array to write. * This method is guaranteed to be invoked exactly once. @@ -459,11 +465,11 @@ public class ChannelDataOutput extends ChannelData implements Flushable { } /** - * Writes {@code length} characters from the array to the stream. + * Writes {@code length} elements from the array to the stream. * * @param dataSize the size of the Java primitive type which is the element of the array. * @param offsetthe starting position within {@code src} to write. - * @param lengththe number of characters to write. + * @param lengththe number of elements to write. * @throws IOException if an error occurred while writing the stream. */ final void writeFully(final int dataSize, int offset, int length) throws IOException { @@ -580,17 +586,51 @@ public class ChannelDataOutput extends ChannelData implements Flushable { } /** - * Fills the buffer with the zero values from its position up to the limit. - * After this method call, the position is undetermined and shall be set to - * a new value by the caller. + * Repeats the same byte many times. + * This method can be used for filling a region of the output stream. + * + * @param count number of bytes to write. + * @param value the byte to repeat the given amount of times. */ -private void clear() { -if (buffer.hasArray()) { -final int offset = buffer.arrayOffset(); -Arrays.fill(buffer.array(), offset + buffer.position(), offset + buffer.limit(), (byte) 0); -} else { -while (buffer.hasRemaining()) { -buffer.put((byte) 0); +public final void repeat(long count, final byte value) throws IOException { +clearBitOffset(); +if (count > 0) { +/* + * Fill the buffer with the specified value. The filling is done only once, + * even if the number of bytes to write is greater than the buffer capacity. + * We can do that because the same buffer content can be reused during each + * `WritableByteChannel.write(ByteBuffer)` call. + */ +long n = Math.min(count, buffer.capacity()); +ensureBufferAccepts((int) n); +if (buffer.hasArray()) { +final int offset = buffer.arrayOffset(); +final int lower = buffer.position(); +final int upper = lower + (int) n; +Arrays.fill(buffer.array(), offset + lower, offset + upper, value); +buffer.position(upper); +} else { +for (int i = (int) n; --i >= 0;) { +buffer.put(value); +} +} +/* + * If the number of bytes to write is greater than the capacity, we need to flush the buffer. + * Not necessarily fully however, because maybe there is not so much extra bytes to write. + */ +if ((count -= n) > 0) { // What remains, not counting what we put in the buffer. +assert buffer.position() == buffer.capacity(); // Because of `ensureBufferAccepts(capacity)`. +int c; +do { +c = channel.write(buffer.rewind()); +bufferOf
[sis] 03/06: `ChannelDataOutput` implements `DataOutput` for allowing `instanceof` checks against a public interface.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit a5cb0d05680cd62201d58669e8460b1b6d1d6595 Author: Martin Desruisseaux AuthorDate: Sun Sep 17 16:32:14 2023 +0200 `ChannelDataOutput` implements `DataOutput` for allowing `instanceof` checks against a public interface. --- .../apache/sis/io/stream/ChannelDataOutput.java| 114 +++-- .../sis/io/stream/ChannelImageOutputStream.java| 85 +-- .../org/apache/sis/storage/StorageConnector.java | 14 +-- .../sis/io/stream/ChannelDataOutputTest.java | 91 +--- .../io/stream/ChannelImageOutputStreamTest.java| 18 +--- 5 files changed, 142 insertions(+), 180 deletions(-) diff --git a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelDataOutput.java b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelDataOutput.java index 31e17058bb..ccf2e6701e 100644 --- a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelDataOutput.java +++ b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/ChannelDataOutput.java @@ -17,10 +17,12 @@ package org.apache.sis.io.stream; import java.util.Arrays; +import java.io.DataOutput; import java.io.Flushable; import java.io.IOException; import java.nio.Buffer; import java.nio.ByteBuffer; +import java.nio.ByteOrder; import java.nio.CharBuffer; import java.nio.DoubleBuffer; import java.nio.FloatBuffer; @@ -29,6 +31,7 @@ import java.nio.LongBuffer; import java.nio.ShortBuffer; import java.nio.channels.SeekableByteChannel; import java.nio.channels.WritableByteChannel; +import java.nio.charset.StandardCharsets; import org.apache.sis.util.internal.Numerics; import org.apache.sis.storage.internal.Resources; @@ -50,18 +53,15 @@ import static org.apache.sis.util.ArgumentChecks.ensureBetween; * Since this class is only a helper tool, it does not "own" the channel and consequently does not provide * {@code close()} method. It is users responsibility to close the channel after usage. * - * Relationship with {@code DataOutput} - * This class API is compatibly with the {@link java.io.DataOutput} interface, so subclasses can implement that - * interface if they wish. This class does not implement {@code DataOutput} itself because it is not needed for - * SIS purposes. - * However, the {@link ChannelImageOutputStream} class implements the {@code DataOutput} interface, together with - * the {@link javax.imageio.stream.ImageOutputStream} one, mostly for situations when inter-operability with - * {@link javax.imageio} is needed. + * Relationship with {@code ImageOutputStream} + * This class API is compatibly with the {@link javax.imageio.stream.ImageOutputStream} interface, so subclasses + * can implement that interface if they wish. This class does not implement {@code ImageOutputStream} because it + * is not needed for SIS purposes. * * @author Rémi Maréchal (Geomatys) * @author Martin Desruisseaux (Geomatys) */ -public class ChannelDataOutput extends ChannelData implements Flushable { +public class ChannelDataOutput extends ChannelData implements DataOutput, Flushable { /** * The channel where data are written. * This is supplied at construction time. @@ -151,6 +151,8 @@ public class ChannelDataOutput extends ChannelData implements Flushable { * * @param bit the bit to write (rightmost bit). * @throws IOException if an error occurred while creating the data output. + * + * @see #writeBoolean(boolean) */ public final void writeBit(final int bit) throws IOException { writeBits(bit, 1); @@ -207,6 +209,38 @@ public class ChannelDataOutput extends ChannelData implements Flushable { } } +/** + * Writes boolean value (8 bits) into the steam. This method delegates to {@linkplain #writeByte(int)}. + * If boolean {@code v} is {@code true} the byte value 1 is written whereas if boolean is {@code false} + * zero is written. + * + * For writing a single bit, see {@link #writeBit(int)} instead. + * + * @param v boolean to be written. + * @throws IOException if some I/O exception occurs during writing. + * + * @see #writeBit(int) + */ +@Override +public final void writeBoolean(final boolean v) throws IOException { +writeByte(v ? 1 : 0); +} + +/** + * Writes a single byte to the stream at the current position. + * The 24 high-order bits of {@code v} are ignored. + * + * @param v an integer whose lower 8 bits are to be written. + * @throws IOException if some I/O exception occurs during writing. + * + * @deprecated Prefer {@link #writeByte(int)} for readability. + */ +@Override +@Deprecated +public final void write(final int v) throws I
[sis] 05/06: Add `UpdatableWrite` as an helper class for data store writers which need to update values after they have been written.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit 4fe9373158928221702a29aac51e9cc11a92452e Author: Martin Desruisseaux AuthorDate: Sat Sep 16 16:36:46 2023 +0200 Add `UpdatableWrite` as an helper class for data store writers which need to update values after they have been written. --- .../org/apache/sis/io/stream/UpdatableWrite.java | 323 + .../apache/sis/io/stream/UpdatableWriteTest.java | 145 + 2 files changed, 468 insertions(+) diff --git a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/UpdatableWrite.java b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/UpdatableWrite.java new file mode 100644 index 00..22416314be --- /dev/null +++ b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/UpdatableWrite.java @@ -0,0 +1,323 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.sis.io.stream; + +import java.io.IOException; +import java.nio.ByteBuffer; +import java.util.OptionalLong; +import org.apache.sis.util.resources.Errors; +import org.apache.sis.util.collection.CheckedContainer; + + +/** + * Placeholder for a primitive value which is written now but can be modified later. + * A typical usage of this class is when the next value to write in the output stream is the length of something, + * but that length is not yet known because it depends on how many bytes will be emitted by the next operations. + * That length may be hard to predict when it is the result of a compression. + * + * @author Martin Desruisseaux (Geomatys) + * + * @paramtype of value to write. + */ +public abstract class UpdatableWrite implements CheckedContainer { +/** + * The stream position where the updatable value has been written. + * This is the position where the value will be rewritten if it needs to be updated. + * + * @see ChannelDataOutput#getStreamPosition() + */ +public final long position; + +/** + * Prepares a new updatable value. + * + * @param position stream where to write the value. + */ +private UpdatableWrite(final ChannelDataOutput output) { +position = output.getStreamPosition(); +} + +/** + * Creates a pseudo-updatable associated to no value. + * This variant can be used when the caller only want to record the position, with no write operation. + * + * @param output stream where to write the value. + * @param value the unsigned short value to write. + * @return handler for modifying the value later. + * @throws IOException if an error occurred while writing the value. + */ +public static UpdatableWrite of(final ChannelDataOutput output) { +return new OfVoid(output); +} + +/** + * Creates an updatable unsigned short value. + * + * @param output stream where to write the value. + * @param value the unsigned short value to write. + * @return handler for modifying the value later. + * @throws IOException if an error occurred while writing the value. + */ +public static UpdatableWrite of(final ChannelDataOutput output, final short value) throws IOException { +final var dw = new OfShort(output, value); +dw.write(output); +return dw; +} + +/** + * Creates an updatable unsigned integer value. + * + * @param output stream where to write the value. + * @param value the unsigned integer value to write. + * @return handler for modifying the value later. + * @throws IOException if an error occurred while writing the value. + */ +public static UpdatableWrite of(final ChannelDataOutput output, final int value) throws IOException { +final var dw = new OfInt(output, value); +dw.write(output); +return dw; +} + +/** + * Creates an updatable long value. + * + * @param output stream where to write the value. + * @param value the value to write. + * @return handler for modifying the value later. + *
[sis] 04/06: Add `HyperRectangleWriter` as an helper class for multi-dimensional grid coverage writers.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit e45d94515849b665770ac89d82e8bca2d3f01493 Author: Martin Desruisseaux AuthorDate: Sat Sep 16 14:51:04 2023 +0200 Add `HyperRectangleWriter` as an helper class for multi-dimensional grid coverage writers. --- .../apache/sis/io/stream/HyperRectangleWriter.java | 301 + .../sis/io/stream/HyperRectangleWriterTest.java| 206 ++ 2 files changed, 507 insertions(+) diff --git a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/HyperRectangleWriter.java b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/HyperRectangleWriter.java new file mode 100644 index 00..961007a995 --- /dev/null +++ b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/io/stream/HyperRectangleWriter.java @@ -0,0 +1,301 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.sis.io.stream; + +import java.io.IOException; +import java.awt.Rectangle; +import java.awt.image.DataBuffer; +import java.awt.image.SampleModel; +import java.awt.image.ComponentSampleModel; +import java.awt.image.MultiPixelPackedSampleModel; +import java.awt.image.SinglePixelPackedSampleModel; +import org.apache.sis.util.ArraysExt; + + +/** + * Helper methods for writing a rectangular area, a cube or a hyper-cube in a channel. + * A rectangular area is usually a tile, and consequently should be relatively small. + * The same instance can be reused when the shape of source arrays and the shape of + * the region to write do not change, which is typically the case when writing tiles. + * This class is thread-safe if writing in different output channels. + * + * @author Martin Desruisseaux (Geomatys) + */ +public final class HyperRectangleWriter { +/** + * Index of the first value to use in the array given to write methods. + */ +private final int startAt; + +/** + * Number of elements that can be written in a single I/O operation. + */ +private final int contiguousDataLength; + +/** + * Number of elements to write in each dimension after the contiguous dimensions, in reverse order. + * For an image, it may be an array of length 2 with the height and width of the destination region, + * in that order. However it may be an array of length 1 with only the height, or an empty array + * if some chunks of data can be written in a single I/O operation. + * + * Values in this array are decremented by 1. + */ +private final int[] remaining; + +/** + * Value by which to increment the flat array index for moving to the next value. + * The array length and the element order is the same as in {@link #remaining}. + */ +private final int[] strides; + +/** + * Creates a new writer for data of a shape specified by the given region. + * The region also specifies the subset to write. + * + * @param output where to write data. + * @param region size of the source hyper-rectangle and region to write. + * @throws ArithmeticException if the region is too large. + */ +public HyperRectangleWriter(final Region region) { +startAt = Math.toIntExact(region.startAt); +int cdd = region.contiguousDataDimension(); +contiguousDataLength = region.targetLength(cdd); +final int d = region.getDimension() - cdd; +remaining= new int[d]; +strides = new int[d]; +for (int i=d; --i>=0; cdd++) { +if ((remaining[i] = region.getTargetSize(cdd) - 1) < 0 || + (strides[i] = Math.toIntExact(region.getSkip(cdd) + contiguousDataLength)) == 0) +{ +/* + * Should have been verified as of Region constructor contract. + * Check again as a safety against never-ending loops. + */ +throw new AssertionError(region); +} +} +} + +/** + * Creates a new writer for raster d
[sis] tag 1.4-RC1 created (now 6f5b664363)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to tag 1.4-RC1 in repository https://gitbox.apache.org/repos/asf/sis.git at 6f5b664363 (commit) This tag includes the following new commits: new 9cc3d31096 Remove non-released files: - Incubator modules. - Style classes (they should have been in the incubator group). - Configuration files for ASF. new 6f5b664363 Set the version number to 1.4. The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference.
[sis] 02/02: Set the version number to 1.4.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to tag 1.4-RC1 in repository https://gitbox.apache.org/repos/asf/sis.git commit 6f5b66436319de9fcb1e7b748e3058b9418e803a Author: Martin Desruisseaux AuthorDate: Sat Sep 30 16:06:42 2023 +0200 Set the version number to 1.4. --- endorsed/build.gradle.kts | 2 +- endorsed/src/org.apache.sis.openoffice/bundle/README.md | 2 +- .../test/org/apache/sis/referencing/factory/sql/epsg/README.md | 2 +- endorsed/src/org.apache.sis.util/main/org/apache/sis/util/Version.java | 2 +- optional/build.gradle.kts | 2 +- parent/pom.xml | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/endorsed/build.gradle.kts b/endorsed/build.gradle.kts index ca7aa0308d..aac7fcc855 100644 --- a/endorsed/build.gradle.kts +++ b/endorsed/build.gradle.kts @@ -15,7 +15,7 @@ * limitations under the License. */ group = "org.apache.sis" -version = "1.4-SNAPSHOT" +version = "1.4" /* * "org.apache.sis.buildtools" is a custom Gradle plugin for building a project with Module Source Hierarchy diff --git a/endorsed/src/org.apache.sis.openoffice/bundle/README.md b/endorsed/src/org.apache.sis.openoffice/bundle/README.md index ebdcfa6a12..1351b41d8b 100644 --- a/endorsed/src/org.apache.sis.openoffice/bundle/README.md +++ b/endorsed/src/org.apache.sis.openoffice/bundle/README.md @@ -83,7 +83,7 @@ Launch: ``` cd target -unopkg add apache-sis-1.4-SNAPSHOT.oxt --log-file log.txt +unopkg add apache-sis-1.4.oxt --log-file log.txt scalc -env:RTL_LOGFILE=log.txt ``` diff --git a/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/factory/sql/epsg/README.md b/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/factory/sql/epsg/README.md index f7945afcd7..46712e1536 100644 --- a/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/factory/sql/epsg/README.md +++ b/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/factory/sql/epsg/README.md @@ -98,7 +98,7 @@ cd __ mvn clean install export CLASSPATH=~/.m2/repository/org/apache/derby/derby/10.14.2.0/derby-10.14.2.0.jar export CLASSPATH=$PWD/core/sis-metadata/target/test-classes:$CLASSPATH -export CLASSPATH=$PWD/target/binaries/sis-referencing-1.4-SNAPSHOT.jar:$CLASSPATH +export CLASSPATH=$PWD/target/binaries/sis-referencing-1.4.jar:$CLASSPATH export CLASSPATH=$PWD/core/sis-metadata/target/test-classes:$CLASSPATH export CLASSPATH=$PWD/core/sis-referencing/target/test-classes:$CLASSPATH cd http://svn.apache.org/repos/asf/sis/data/non-free/> diff --git a/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/Version.java b/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/Version.java index 82f6640912..54c14170eb 100644 --- a/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/Version.java +++ b/endorsed/src/org.apache.sis.util/main/org/apache/sis/util/Version.java @@ -58,7 +58,7 @@ public class Version implements CharSequence, Comparable, Serializable /** * The version of this Apache SIS distribution. */ -public static final Version SIS = new Version(MAJOR_VERSION + "." + MINOR_VERSION + "-SNAPSHOT"); +public static final Version SIS = new Version(MAJOR_VERSION + "." + MINOR_VERSION); /** * A few commonly used version numbers. This list is based on SIS needs, e.g. in {@code DataStore} implementations. diff --git a/optional/build.gradle.kts b/optional/build.gradle.kts index c7d02a5e1e..5125b2a8bf 100644 --- a/optional/build.gradle.kts +++ b/optional/build.gradle.kts @@ -15,7 +15,7 @@ * limitations under the License. */ group = "org.apache.sis" -version = "1.4-SNAPSHOT" +version = "1.4" val pathToFX = System.getenv("PATH_TO_FX") if (pathToFX == null) { diff --git a/parent/pom.xml b/parent/pom.xml index 7d8dfa94e9..755a231df2 100644 --- a/parent/pom.xml +++ b/parent/pom.xml @@ -38,7 +38,7 @@ == --> org.apache.sis parent - 1.4-SNAPSHOT + 1.4 pom Apache SIS
[sis-site] 02/02: Prepare documentation for the 1.4 release.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/sis-site.git commit 0f8f3e93410e74319b143e1e42428941c870baff Author: Martin Desruisseaux AuthorDate: Sat Oct 7 16:05:00 2023 +0200 Prepare documentation for the 1.4 release. --- content/release-management.md | 13 +++-- static/DOAP.rdf | 5 + 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/content/release-management.md b/content/release-management.md index 6674ae5c..5fec8d67 100644 --- a/content/release-management.md +++ b/content/release-management.md @@ -622,12 +622,12 @@ wget https://sis.apache.org/examples/coordinates/CanadianCities.csv Go to the test Maven project. Open the root `pom.xml` file and set the `` number to the SIS release to be tested. -Then go to the `` declaration of the first `` and replace value by the URL +Then go to the `` declaration of ` each block and replace value by the URL of the temporary Maven repository created by Nexus. Usually, only the 3 last digits need to be updated. {{< highlight bash >}} -cd $SIS_RC_DIR/../releases/tests/maven +cd $SIS_RC_DIR/../release/test/maven # Edit in pom.xml before to continue. mvn compile svn commit -m "Test project for SIS $NEW_VERSION-RC$RELEASE_CANDIDATE" @@ -637,6 +637,7 @@ Clear the local Maven repository in order to force downloads from the Nexus repo This will also verify the checksums. {{< highlight bash >}} +rm -r $SIS_DATA/* rm -r ~/.m2/repository/org/apache/sis mvn package --show-version --strict-checksums {{< / highlight >}} @@ -668,7 +669,7 @@ wget https://dist.apache.org/repos/dist/dev/sis/$NEW_VERSION/RC$RELEASE_CANDIDAT # Test gpg --verify apache-sis-$NEW_VERSION-src.zip.asc unzip apache-sis-$NEW_VERSION-src.zip -cd sis-$NEW_VERSION +cd apache-sis-$NEW_VERSION-src gradle assemble {{< / highlight >}} @@ -682,8 +683,8 @@ gpg --verify apache-sis-$NEW_VERSION-bin.zip.asc unzip apache-sis-$NEW_VERSION-bin.zip cd apache-sis-$NEW_VERSION unset SIS_DATA -bin/sis about --verbose -bin/sis crs https://github.com/apache/sis/raw/main/core/sis-referencing/src/test/resources/org/apache/sis/referencing/crs/ProjectedCRS.xml --format WKT +./bin/sis about --verbose +./bin/sis crs https://raw.githubusercontent.com/apache/sis/main/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/crs/ProjectedCRS.xml --format WKT {{< / highlight >}} @@ -694,7 +695,7 @@ Add a new `` block for the new release with the estimated release date. Update the following files (e.g. the release date in `index.md`): -* `content/index.md` +* `content/_index.md` * `content/command-line.md` * `content/epsg.md` for EPSG dataset version * `content/download.md` for SIS version and JAXB dependency diff --git a/static/DOAP.rdf b/static/DOAP.rdf index 7a369ea3..724377b6 100644 --- a/static/DOAP.rdf +++ b/static/DOAP.rdf @@ -161,6 +161,11 @@ + +Apache SIS 1.4 — Java 11 and JPMS +2023-10-10 +1.4 + Apache SIS 1.3 — data quality 2022-12-25
[sis-site] 01/02: Update the "test release candidate" section of release management page.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/sis-site.git commit aa1471870262b42411ecbda168b897808ad1a726 Author: Martin Desruisseaux AuthorDate: Fri Oct 6 14:57:47 2023 +0200 Update the "test release candidate" section of release management page. --- content/release-management.md | 277 +- 1 file changed, 110 insertions(+), 167 deletions(-) diff --git a/content/release-management.md b/content/release-management.md index 6ac4fab4..6674ae5c 100644 --- a/content/release-management.md +++ b/content/release-management.md @@ -161,7 +161,7 @@ Then, the signed public key shall be appended to the `KEYS` file on the [SIS sou then copied to the [SIS distribution directory][dist]. -## Gradle configuration +## Gradle configuration{#gradle-config} Edit the `~/.gradle/gradle.properties` file, making sure that the following properties are present: @@ -173,7 +173,7 @@ asfNexusPassword= {{< / highlight >}} -## Maven configuration +## Maven configuration{#maven-config} Edit the `~/.m2/setting.xml` file, making sure that the following fragments are present. Note that the [password can be enctypted](https://maven.apache.org/guides/mini/guide-encryption.html). @@ -191,7 +191,7 @@ Note that the [password can be enctypted](https://maven.apache.org/guides/mini/g {{< / highlight >}} -# Configure{#configure} +# Specific release configuration{#release-config} For all instructions in this page, `$OLD_VERSION` and `$NEW_VERSION` stand for the version number of the previous and the new release respectively, and `$RELEASE_CANDIDATE` stands for @@ -209,7 +209,7 @@ Make sure that the code signing key is the defauly key declared in `~/.gnupg/gpg during the Maven deployment phase. -# Review project status before branching{#prepare-source} +# Review project status before branching{#prereview} Replace the `$OLD_VERSION` number by `$NEW_VERSION` in the values of following properties on the development branch: @@ -455,10 +455,11 @@ git commit --message "Update javadoc for SIS $NEW_VERSION." ## Publish Maven artifacts{#publish-artifacts} -This section publish artifacts to the staging repository. +This section publishes artifacts to the staging repository. +If there is any issue with the deployment, the staging repository can easily be dropped and recreated. -### Stage the parent POM +### Stage the parent POM{#publish-parent} Execute the following: @@ -467,11 +468,18 @@ cd $SIS_RC_DIR/parent mvn clean install deploy --activate-profiles apache-release {{< / highlight >}} -Connect to the [Nexus repository][repository], select the staging repository, -navigate to the `parent` sub-directory, and delete all `parent-*-source-release.zip` files. +Connect to the [Nexus repository][repository]. +The artifacts can be found under _Build Promotion_ → _Staging repositories_, +and searching for `org.apache.sis` in the _Repository_ column. +Delete all `org/apache/sis/parent/$NEW_VERSION/parent-$NEW_VERSION-source-release.zip.*` files on the Nexus repository. +They should not be there - source release will be deployed on another repository later. +Then close this staging repository by clicking the checkbox for the open staging repositories +(`org.apache.sis-`) and press _Close_ in the menu bar. +In the description field, specify _"Apache SIS parent POM"_. +Keep the window open, we will need it again later. -### Stage the project arfifacts +### Stage the project arfifacts{#publish-main} Build the project and publish in the Maven local repository. The `org.apache.sis.releaseVersion` property will cause Javadoc to be generated for earch artifact @@ -483,18 +491,37 @@ git status # Make sure that everything is clean. gradle clean gradle test --system-prop org.apache.sis.test.extensive=true gradle assemble +mv --interactive optional/build/bundle/apache-sis-$NEW_VERSION.zip $DIST_DIR/apache-sis-$NEW_VERSION-bin.zip + rm endorsed/build/docs/*# For forcing a rerun. +rm optional/build/docs/* +cd optional/build/libs/ +ln ../../../endorsed/build/libs/*.jar . +ln $PATH_TO_FX/*.jar . +cd - gradle assemble --system-prop org.apache.sis.releaseVersion=$NEW_VERSION +find -name "org.apache.sis.*-javadoc.jar" -exec zip -d '{}' errors.log \; gradle publishToMavenLocal --system-prop org.apache.sis.releaseVersion=$NEW_VERSION +# Check that the Javadoc archives do not have a size close to zero. ll ~/.m2/repository/org/apache/sis/core/sis-referencing/$NEW_VERSION +ll ~/.m2/repository/org/apache/sis/application/sis-javafx/$NEW_VERSION find ~/.m2/repository/org/apache/sis -name "sis-*-$NEW_VERSION-*.asc" -exec gpg --verify '{}' \; gradle publish --system-prop org.apache.sis.releaseVersion=$NEW_VERSION
[sis-site] branch main updated (78d55766 -> 0f8f3e93)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch main in repository https://gitbox.apache.org/repos/asf/sis-site.git from 78d55766 Add instruction about Maven deployment (for the parent POM). new aa147187 Update the "test release candidate" section of release management page. new 0f8f3e93 Prepare documentation for the 1.4 release. The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: content/release-management.md | 288 +- static/DOAP.rdf | 5 + 2 files changed, 121 insertions(+), 172 deletions(-)
svn commit: r64391 - in /dev/sis/1.4: ./ RC1/
Author: desruisseaux Date: Sat Oct 7 13:43:24 2023 New Revision: 64391 Log: SIS 1.4 release candidate 1 Added: dev/sis/1.4/ dev/sis/1.4/RC1/ dev/sis/1.4/RC1/HEADER.html - copied unchanged from r64351, release/sis/1.3/HEADER.html dev/sis/1.4/RC1/apache-sis-1.4-bin.zip (with props) dev/sis/1.4/RC1/apache-sis-1.4-bin.zip.asc (with props) dev/sis/1.4/RC1/apache-sis-1.4-bin.zip.sha512 dev/sis/1.4/RC1/apache-sis-1.4-doc.zip (with props) dev/sis/1.4/RC1/apache-sis-1.4-doc.zip.asc (with props) dev/sis/1.4/RC1/apache-sis-1.4-doc.zip.sha512 dev/sis/1.4/RC1/apache-sis-1.4-src.zip (with props) dev/sis/1.4/RC1/apache-sis-1.4-src.zip.asc (with props) dev/sis/1.4/RC1/apache-sis-1.4-src.zip.sha512 Added: dev/sis/1.4/RC1/apache-sis-1.4-bin.zip == Binary file - no diff available. Propchange: dev/sis/1.4/RC1/apache-sis-1.4-bin.zip -- svn:mime-type = application/zip Added: dev/sis/1.4/RC1/apache-sis-1.4-bin.zip.asc == Binary file - no diff available. Propchange: dev/sis/1.4/RC1/apache-sis-1.4-bin.zip.asc -- svn:mime-type = application/pgp-signature Added: dev/sis/1.4/RC1/apache-sis-1.4-bin.zip.sha512 == --- dev/sis/1.4/RC1/apache-sis-1.4-bin.zip.sha512 (added) +++ dev/sis/1.4/RC1/apache-sis-1.4-bin.zip.sha512 Sat Oct 7 13:43:24 2023 @@ -0,0 +1 @@ +8fb123ed24aa57860de308924668a8282a6461b340f4ec623d06c0e8e97b573f3ae6adf56142926bf17cd46a154631b1ad0039486b201dcdcf75f526bbf8db63 apache-sis-1.4-bin.zip Added: dev/sis/1.4/RC1/apache-sis-1.4-doc.zip == Binary file - no diff available. Propchange: dev/sis/1.4/RC1/apache-sis-1.4-doc.zip -- svn:mime-type = application/zip Added: dev/sis/1.4/RC1/apache-sis-1.4-doc.zip.asc == Binary file - no diff available. Propchange: dev/sis/1.4/RC1/apache-sis-1.4-doc.zip.asc -- svn:mime-type = application/pgp-signature Added: dev/sis/1.4/RC1/apache-sis-1.4-doc.zip.sha512 == --- dev/sis/1.4/RC1/apache-sis-1.4-doc.zip.sha512 (added) +++ dev/sis/1.4/RC1/apache-sis-1.4-doc.zip.sha512 Sat Oct 7 13:43:24 2023 @@ -0,0 +1 @@ +88950966ba0f201d64b25debb964751fc76a06a5242a03f7e9aa2e349e61d2e037f83d29c389a1cec26a66ee5331a6170966e7f39cb807a69a21663458347d69 apache-sis-1.4-doc.zip Added: dev/sis/1.4/RC1/apache-sis-1.4-src.zip == Binary file - no diff available. Propchange: dev/sis/1.4/RC1/apache-sis-1.4-src.zip -- svn:mime-type = application/zip Added: dev/sis/1.4/RC1/apache-sis-1.4-src.zip.asc == Binary file - no diff available. Propchange: dev/sis/1.4/RC1/apache-sis-1.4-src.zip.asc -- svn:mime-type = application/pgp-signature Added: dev/sis/1.4/RC1/apache-sis-1.4-src.zip.sha512 == --- dev/sis/1.4/RC1/apache-sis-1.4-src.zip.sha512 (added) +++ dev/sis/1.4/RC1/apache-sis-1.4-src.zip.sha512 Sat Oct 7 13:43:24 2023 @@ -0,0 +1 @@ +dfbee400fe61ba42a2c2f7d6b8a5fbf13a67a832fc051f99f4fe4bae79e34dc555060a3ffddbd23ee8b869555a265ec5269b28d9cbdcf63e6ddb215259590151 apache-sis-1.4-src.zip
svn commit: r1912784 - in /sis/release-test/maven: pom.xml src/main/java/org/apache/sis/test/referencing/CoordinateOperationComparator.java src/test/java/org/apache/sis/test/SelfConsistencyTest.java
Author: desruisseaux Date: Sat Oct 7 13:38:53 2023 New Revision: 1912784 URL: http://svn.apache.org/viewvc?rev=1912784=rev Log: Test project for SIS 1.4-RC1 Modified: sis/release-test/maven/pom.xml sis/release-test/maven/src/main/java/org/apache/sis/test/referencing/CoordinateOperationComparator.java sis/release-test/maven/src/test/java/org/apache/sis/test/SelfConsistencyTest.java Modified: sis/release-test/maven/pom.xml URL: http://svn.apache.org/viewvc/sis/release-test/maven/pom.xml?rev=1912784=1912783=1912784=diff == --- sis/release-test/maven/pom.xml (original) +++ sis/release-test/maven/pom.xml Sat Oct 7 13:38:53 2023 @@ -27,14 +27,14 @@ org.apache.sis.test maven - 1.4-SNAPSHOT + 1.4 jar Test of Maven dependencies https://sis.apache.org -Test the Apache SIS release candidate on the staging repository. -Testers need to edit the URL of the 'sis.staging' repository below. +Test the Apache SIS release candidate on the staging repositories. +Testers need to edit the URL of each 'sis.staging' repository below. The URL is given by the release manager when a release candidate is submitted. Typically, only the three last digits need to be updated. @@ -48,6 +48,8 @@ ${project.version} ${project.version} UTF-8 +17 +17 @@ -58,9 +60,19 @@ - sis.staging - SIS staging repository - https://repository.apache.org/content/repositories/orgapachesis-1039 + sis.staging.parent + SIS staging repository of Parent POM + https://repository.apache.org/content/repositories/orgapachesis-1043 + + + sis.staging.main + SIS staging repository of main artifacts + https://repository.apache.org/content/repositories/orgapachesis-1049 + + + sis.staging.non-free + SIS staging repository of non-free resources + https://repository.apache.org/content/repositories/orgapachesis-1050 UCAR @@ -69,19 +81,6 @@ - - - - -org.apache.sis -parent -${sis.version} -pom -import - - - - org.apache.sis.core @@ -139,14 +138,25 @@ ${sis.version} + org.apache.sis.profiles + sis-french-profile + ${sis.version} + + + org.apache.sis.profiles + sis-japan-profile + ${sis.version} + + org.apache.sis.non-free sis-epsg ${sis-nonfree.version} runtime - edu.ucar - cdm-core + org.apache.sis.non-free + sis-embedded-data + ${sis-nonfree.version} runtime @@ -154,59 +164,10 @@ sis-console ${sis.version} - - - - junit - junit - - - org.opengis - geoapi-conformance - - - org.glassfish.jaxb - jaxb-runtime - test - - - org.slf4j - slf4j-jdk14 - test - - - org.apache.derby - derby - test - - - org.apache.derby - derbytools - test - - - org.hsqldb - hsqldb - test - - - gov.nist.math - jama - test - - - org.locationtech.jts - jts-core - true - - - com.esri.geometry - esri-geometry-api - test - - net.sf.geographiclib - GeographicLib-Java + org.junit.jupiter + junit-jupiter + 5.10.0 test @@ -216,12 +177,12 @@ maven-compiler-plugin -3.10.1 +3.11.0 org.apache.maven.plugins maven-surefire-plugin -3.0.0-M7 +3.1.2 Modified: sis/release-test/maven/src/main/java/org/apache/sis/test/referencing/CoordinateOperationComparator.java URL: http://svn.apache.org/viewvc/sis/release-test/maven/src/main/java/org/apache/sis/test/referencing/CoordinateOperationComparator.java?rev=1912784=1912783=1912784=diff == --- sis/release-test/maven/src/main/java/org/apache/sis/test/referencing/CoordinateOperationComparator.java [UTF-8] (original) +++ sis/release-test/maven/src/main/java/org/apache/sis/test/referencing/CoordinateOperationComparator.java [UTF-8] Sat Oct 7 13:38:53 2023 @@ -36,9 +36,9 @@ import org.apache.sis.referencing.CRS; import org.apache.sis.referencing.IdentifiedObjects; import org.apache.sis.referencing.crs.AbstractCRS; import org.apache.sis.referencing.cs.AxesConvention; -import org.apache.sis.internal.metadata.ReferencingServices; -import org.apache.sis.internal.util.StandardDateFormat; -import org.apache.sis.internal.referencing.Formulas; +import org.apache.sis.metadata.internal.ReferencingServices; +import org.apache.sis.util.internal.StandardDateFormat; +import
[sis] branch geoapi-4.0 updated (a24a7b212f -> a2820288ee)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git from a24a7b212f Add qualified exports needed by the "non-free" optional modules for EPSG data. add a2820288ee Modify the structure of the binary bundle for avoiding to have undesired applications on the module-path. No new revisions were added by this update. Summary of changes: .../apache/sis/buildtools/gradle/Assembler.java| 74 -- .../org.apache.sis.storage/main/module-info.java | 1 + optional/src/org.apache.sis.gui/bundle/bin/sis | 3 +- optional/src/org.apache.sis.gui/bundle/bin/sis.bat | 3 +- optional/src/org.apache.sis.gui/bundle/bin/sisfx | 2 +- .../src/org.apache.sis.gui/bundle/bin/sisfx.bat| 2 +- optional/src/org.apache.sis.gui/bundle/lib/README | 10 ++- .../src/org.apache.sis.gui/bundle/lib/app/README | 2 + 8 files changed, 70 insertions(+), 27 deletions(-) create mode 100644 optional/src/org.apache.sis.gui/bundle/lib/app/README
[sis] branch geoapi-3.1 updated (d4fc457a24 -> 6008e5e18d)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch geoapi-3.1 in repository https://gitbox.apache.org/repos/asf/sis.git from d4fc457a24 Merge branch 'geoapi-4.0' into geoapi-3.1 add a2820288ee Modify the structure of the binary bundle for avoiding to have undesired applications on the module-path. add 6008e5e18d Merge branch 'geoapi-4.0' into geoapi-3.1 No new revisions were added by this update. Summary of changes: .../apache/sis/buildtools/gradle/Assembler.java| 74 -- .../org.apache.sis.storage/main/module-info.java | 1 + optional/src/org.apache.sis.gui/bundle/bin/sis | 3 +- optional/src/org.apache.sis.gui/bundle/bin/sis.bat | 3 +- optional/src/org.apache.sis.gui/bundle/bin/sisfx | 2 +- .../src/org.apache.sis.gui/bundle/bin/sisfx.bat| 2 +- optional/src/org.apache.sis.gui/bundle/lib/README | 10 ++- .../src/org.apache.sis.gui/bundle/lib/app/README | 2 + 8 files changed, 70 insertions(+), 27 deletions(-) create mode 100644 optional/src/org.apache.sis.gui/bundle/lib/app/README
[sis] 01/03: Modify the structure of the binary bundle for avoiding to have undesired applications on the module-path.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/sis.git commit a2820288eeda7922d479b6529c1c7fc4bd9d2baa Author: Martin Desruisseaux AuthorDate: Fri Oct 6 20:47:43 2023 +0200 Modify the structure of the binary bundle for avoiding to have undesired applications on the module-path. --- .../apache/sis/buildtools/gradle/Assembler.java| 74 -- .../org.apache.sis.storage/main/module-info.java | 1 + optional/src/org.apache.sis.gui/bundle/bin/sis | 3 +- optional/src/org.apache.sis.gui/bundle/bin/sis.bat | 3 +- optional/src/org.apache.sis.gui/bundle/bin/sisfx | 2 +- .../src/org.apache.sis.gui/bundle/bin/sisfx.bat| 2 +- optional/src/org.apache.sis.gui/bundle/lib/README | 10 ++- .../src/org.apache.sis.gui/bundle/lib/app/README | 2 + 8 files changed, 70 insertions(+), 27 deletions(-) diff --git a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/Assembler.java b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/Assembler.java index 70966519fb..55f5f2af8f 100644 --- a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/Assembler.java +++ b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/Assembler.java @@ -16,8 +16,9 @@ */ package org.apache.sis.buildtools.gradle; +import java.util.Set; import java.io.File; -import java.io.FilenameFilter; +import java.io.FileFilter; import java.io.FileNotFoundException; import java.io.UncheckedIOException; import java.io.IOException; @@ -35,13 +36,13 @@ import org.apache.commons.compress.archivers.zip.ZipArchiveOutputStream; * the content of the endorsed/build/libs and optional/build/libs directories. * * - * Assemblies are created only for module having an {@code bundle} sub-directory. - * The module is hard-coded for now (a future version could perform a search if desired). + * Assemblies are created only for the module having a {@code bundle} sub-directory in source code. + * That module is hard-coded for now (a future version could perform a search if desired). * * @author Martin Desruisseaux (Geomatys) * @author Quentin Bialota (Geomatys) */ -final class Assembler extends ZipWriter.Apache implements FilenameFilter { +final class Assembler extends ZipWriter.Apache implements FileFilter { /** * The module on which to apply this task. */ @@ -54,6 +55,40 @@ final class Assembler extends ZipWriter.Apache implements FilenameFilter { */ private static final String LIB_DIRECTORY = "lib/"; +/** + * Subdirectory of {@link #LIB_DIRECTORY} where to put applications. + * We keep them in a separated directory because we need to put only + * one of them in the module-path. + */ +private static final String APP_DIRECTORY = "app/"; + +/** + * Modules to put in the {@link #APP_DIRECTORY} directory. + */ +private static final Set APPLICATIONS = Set.of(MODULE, "org.apache.sis.console"); + +/** + * Modules to exclude from the {@link #LIB_DIRECTORY}, not counting applications. + */ +private static final Set EXCLUDES = Set.of( +"org.apache.sis.profile.japan", // For avoiding UCAR dependencies. +"org.apache.sis.cloud.aws");// For avoiding UCAR dependencies. + +/** + * Suffix of JAR files. This is the part to remove from filenames for getting the module names. + */ +private static final String JAR_SUFFIX = ".jar"; + +/** + * Whether this task is in the process of copying the application JAR files. + */ +private boolean isCopyingApplication; + +/** + * Whether the copy operation shall include dependencies. + */ +private boolean includeDependencies; + /** * Creates an helper object for creating the assembly. * @@ -78,10 +113,14 @@ final class Assembler extends ZipWriter.Apache implements FilenameFilter { String filename = FINALNAME_PREFIX + project.getVersion(); target = new File(target, filename + ".zip"); filename += '/'; +final String libDir = filename + LIB_DIRECTORY; try (ZipArchiveOutputStream out = new ZipArchiveOutputStream(target)) { final var c = new Assembler(project, out); c.writeDirectory(sourceDirectory, null, filename); -c.copyCompiledJARs(filename + LIB_DIRECTORY); +c.isCopyingApplication = false; +c.copyCompiledJARs(libDir); +c.isCopyingApplication = true; +c.copyCompiledJARs(libDir + APP_DIRECTORY); } } catch (IOException e) { throw new UncheckedIOException(e); @@ -95,7 +134,9 @@ fin
[sis] 02/03: Merge branch 'geoapi-4.0' into geoapi-3.1
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/sis.git commit 6008e5e18d484c93b2ee7b32a79aa23a4fca3719 Merge: d4fc457a24 a2820288ee Author: Martin Desruisseaux AuthorDate: Fri Oct 6 20:49:00 2023 +0200 Merge branch 'geoapi-4.0' into geoapi-3.1 .../apache/sis/buildtools/gradle/Assembler.java| 74 -- .../org.apache.sis.storage/main/module-info.java | 1 + optional/src/org.apache.sis.gui/bundle/bin/sis | 3 +- optional/src/org.apache.sis.gui/bundle/bin/sis.bat | 3 +- optional/src/org.apache.sis.gui/bundle/bin/sisfx | 2 +- .../src/org.apache.sis.gui/bundle/bin/sisfx.bat| 2 +- optional/src/org.apache.sis.gui/bundle/lib/README | 10 ++- .../src/org.apache.sis.gui/bundle/lib/app/README | 2 + 8 files changed, 70 insertions(+), 27 deletions(-)
[sis] 03/03: Merge branch 'geoapi-3.1'
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/sis.git commit 27a4ac4fede2909b96eee4e6973d6beaac8a179f Merge: 2596723a0b 6008e5e18d Author: Martin Desruisseaux AuthorDate: Fri Oct 6 20:50:51 2023 +0200 Merge branch 'geoapi-3.1' .../apache/sis/buildtools/gradle/Assembler.java| 74 -- .../org.apache.sis.storage/main/module-info.java | 1 + optional/src/org.apache.sis.gui/bundle/bin/sis | 3 +- optional/src/org.apache.sis.gui/bundle/bin/sis.bat | 3 +- optional/src/org.apache.sis.gui/bundle/bin/sisfx | 2 +- .../src/org.apache.sis.gui/bundle/bin/sisfx.bat| 2 +- optional/src/org.apache.sis.gui/bundle/lib/README | 10 ++- .../src/org.apache.sis.gui/bundle/lib/app/README | 2 + 8 files changed, 70 insertions(+), 27 deletions(-)
[sis] branch main updated (2596723a0b -> 27a4ac4fed)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch main in repository https://gitbox.apache.org/repos/asf/sis.git from 2596723a0b Merge branch 'geoapi-3.1' new a2820288ee Modify the structure of the binary bundle for avoiding to have undesired applications on the module-path. new 6008e5e18d Merge branch 'geoapi-4.0' into geoapi-3.1 new 27a4ac4fed Merge branch 'geoapi-3.1' The 3 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../apache/sis/buildtools/gradle/Assembler.java| 74 -- .../org.apache.sis.storage/main/module-info.java | 1 + optional/src/org.apache.sis.gui/bundle/bin/sis | 3 +- optional/src/org.apache.sis.gui/bundle/bin/sis.bat | 3 +- optional/src/org.apache.sis.gui/bundle/bin/sisfx | 2 +- .../src/org.apache.sis.gui/bundle/bin/sisfx.bat| 2 +- optional/src/org.apache.sis.gui/bundle/lib/README | 10 ++- .../src/org.apache.sis.gui/bundle/lib/app/README | 2 + 8 files changed, 70 insertions(+), 27 deletions(-) create mode 100644 optional/src/org.apache.sis.gui/bundle/lib/app/README
svn commit: r1912778 - /sis/data/non-free/sis-embedded-data/pom.xml
Author: desruisseaux Date: Fri Oct 6 19:58:59 2023 New Revision: 1912778 URL: http://svn.apache.org/viewvc?rev=1912778=rev Log: Send Derby logging file to target directory. Modified: sis/data/non-free/sis-embedded-data/pom.xml Modified: sis/data/non-free/sis-embedded-data/pom.xml URL: http://svn.apache.org/viewvc/sis/data/non-free/sis-embedded-data/pom.xml?rev=1912778=1912777=1912778=diff == --- sis/data/non-free/sis-embedded-data/pom.xml (original) +++ sis/data/non-free/sis-embedded-data/pom.xml Fri Oct 6 19:58:59 2023 @@ -157,6 +157,12 @@ Provides non-free data, including the EP + + + derby.stream.error.file + ${project.build.directory}/derby.log + +
svn commit: r1912767 - in /sis/data/non-free/sis-embedded-data/src: main/java/ main/java/org/apache/sis/resources/embedded/ test/java/org/apache/sis/resources/embedded/
Author: desruisseaux Date: Fri Oct 6 08:10:38 2023 New Revision: 1912767 URL: http://svn.apache.org/viewvc?rev=1912767=rev Log: Enable JPMS on `sis-embedded-data`, using a naming trick for allowing Derby to access the database. Added: sis/data/non-free/sis-embedded-data/src/main/java/module-info.java - copied, changed from r1912766, sis/data/non-free/sis-embedded-data/src/main/java/module-info.bak Removed: sis/data/non-free/sis-embedded-data/src/main/java/module-info.bak Modified: sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/EmbeddedResources.java sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/Generator.java sis/data/non-free/sis-embedded-data/src/test/java/org/apache/sis/resources/embedded/EmbeddedResourcesTest.java Copied: sis/data/non-free/sis-embedded-data/src/main/java/module-info.java (from r1912766, sis/data/non-free/sis-embedded-data/src/main/java/module-info.bak) URL: http://svn.apache.org/viewvc/sis/data/non-free/sis-embedded-data/src/main/java/module-info.java?p2=sis/data/non-free/sis-embedded-data/src/main/java/module-info.java=sis/data/non-free/sis-embedded-data/src/main/java/module-info.bak=1912766=1912767=1912767=diff == --- sis/data/non-free/sis-embedded-data/src/main/java/module-info.bak (original) +++ sis/data/non-free/sis-embedded-data/src/main/java/module-info.java Fri Oct 6 08:10:38 2023 @@ -1,5 +1,3 @@ -TODO: Not yet working, as Derby seems to not find the database anymore. - /* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with Modified: sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/EmbeddedResources.java URL: http://svn.apache.org/viewvc/sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/EmbeddedResources.java?rev=1912767=1912766=1912767=diff == --- sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/EmbeddedResources.java [UTF-8] (original) +++ sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/EmbeddedResources.java [UTF-8] Fri Oct 6 08:10:38 2023 @@ -125,7 +125,7 @@ public class EmbeddedResources extends I verifyAuthority(authority); final EmbeddedDataSource ds = new EmbeddedDataSource(); ds.setDataSourceName(Initializer.DATABASE); -ds.setDatabaseName("classpath:SIS_DATA/Databases/" + Initializer.DATABASE); +ds.setDatabaseName("classpath:SIS_DATA/Databases/" + Generator.EMBEDDED_DATABASE); return ds; } Modified: sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/Generator.java URL: http://svn.apache.org/viewvc/sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/Generator.java?rev=1912767=1912766=1912767=diff == --- sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/Generator.java [UTF-8] (original) +++ sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/Generator.java [UTF-8] Fri Oct 6 08:10:38 2023 @@ -62,6 +62,14 @@ import org.apache.sis.referencing.factor */ final class Generator { /** + * Returns the name of the database embedded in the JAR file. + * It must be an invalid package name, because otherwise the Java Platform Module System (JPMS) enforces + * encapsulation in the same way as non-exported packages, which makes the database inaccessible to Derby. + * This naming trick is part of JPMS specification, so it should be reliable. + */ +static final String EMBEDDED_DATABASE = "spatial-metadata"; + +/** * Generates the embedded resources in the {@code target/classes} directory. * See class Javadoc for more information. * @@ -101,7 +109,7 @@ final class Generator { /** * Provides connection to "SpatialMetadata" database. The connection URL will reference the - * {@code SIS_DATA/Databases/SpatialMetadata} directory in the Maven {@code target/classes} directory. + * {@code SIS_DATA/Databases/spatial-metadata} directory in the Maven {@code target/classes} directory. */ private final EmbeddedDataSource dataSource; @@ -136,7 +144,7 @@ final class Generator { target = Files.createDirectory(target.resolve(Paths.get("Databases"))); dataSource = new EmbeddedDataSource(); dataSource.setDataSourceName(Initializer.DATABASE); - dataSource.setDatabaseName(target.resolve(Initializer.DATABASE).toString()); + dataSource.setDatab
[sis-site] branch main updated: Add instruction about Maven deployment (for the parent POM).
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/sis-site.git The following commit(s) were added to refs/heads/main by this push: new 78d55766 Add instruction about Maven deployment (for the parent POM). 78d55766 is described below commit 78d557662ebeb692678dfd460c9b1993522918ef Author: Martin Desruisseaux AuthorDate: Fri Oct 6 02:13:34 2023 +0200 Add instruction about Maven deployment (for the parent POM). --- content/release-management.md | 30 -- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/content/release-management.md b/content/release-management.md index 0e261a64..6ac4fab4 100644 --- a/content/release-management.md +++ b/content/release-management.md @@ -173,6 +173,24 @@ asfNexusPassword= {{< / highlight >}} +## Maven configuration + +Edit the `~/.m2/setting.xml` file, making sure that the following fragments are present. +Note that the [password can be enctypted](https://maven.apache.org/guides/mini/guide-encryption.html). + +{{< highlight xml >}} + + + + apache.releases.https + login for uploding to Maven Central + password for uploading to Maven Central + + + +{{< / highlight >}} + + # Configure{#configure} For all instructions in this page, `$OLD_VERSION` and `$NEW_VERSION` stand for the version @@ -439,15 +457,19 @@ git commit --message "Update javadoc for SIS $NEW_VERSION." This section publish artifacts to the staging repository. + ### Stage the parent POM Execute the following: {{< highlight bash >}} cd $SIS_RC_DIR/parent -mvn install deploy +mvn clean install deploy --activate-profiles apache-release {{< / highlight >}} +Connect to the [Nexus repository][repository], select the staging repository, +navigate to the `parent` sub-directory, and delete all `parent-*-source-release.zip` files. + ### Stage the project arfifacts @@ -461,13 +483,17 @@ git status # Make sure that everything is clean. gradle clean gradle test --system-prop org.apache.sis.test.extensive=true gradle assemble -gradle assemble --system-prop org.apache.sis.releaseVersion=$NEW_VERSION --rerun +rm endorsed/build/docs/*# For forcing a rerun. +gradle assemble --system-prop org.apache.sis.releaseVersion=$NEW_VERSION gradle publishToMavenLocal --system-prop org.apache.sis.releaseVersion=$NEW_VERSION ll ~/.m2/repository/org/apache/sis/core/sis-referencing/$NEW_VERSION find ~/.m2/repository/org/apache/sis -name "sis-*-$NEW_VERSION-*.asc" -exec gpg --verify '{}' \; + +gradle publish --system-prop org.apache.sis.releaseVersion=$NEW_VERSION {{< / highlight >}} + ### Stage the non-free resources{#maven-nonfree} Go to the directory that contains a checkout of `https://svn.apache.org/repos/asf/sis/data/non-free/sis-epsg`.
[sis] branch main updated (2ce512f85a -> 2596723a0b)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch main in repository https://gitbox.apache.org/repos/asf/sis.git from 2ce512f85a Fix more Javadoc errors. add 7e10eef9d5 Fixes to the build plugin based on release experience. add 0c022f2f1f Define Maven repositories for snapshots and release deployments. add a24a7b212f Add qualified exports needed by the "non-free" optional modules for EPSG data. add d4fc457a24 Merge branch 'geoapi-4.0' into geoapi-3.1 new 2596723a0b Merge branch 'geoapi-3.1' The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../org/apache/sis/buildtools/gradle/BuildHelper.java | 1 + .../org/apache/sis/buildtools/gradle/Conventions.java | 5 + .../apache/sis/buildtools/gradle/ModularJavadoc.java| 1 + .../apache/sis/buildtools/gradle/ModularSources.java| 7 +-- endorsed/build.gradle.kts | 17 + .../src/org.apache.sis.metadata/main/module-info.java | 3 ++- endorsed/src/org.apache.sis.util/main/module-info.java | 11 --- incubator/build.gradle.kts | 17 + optional/build.gradle.kts | 17 + settings.gradle.kts | 1 + 10 files changed, 70 insertions(+), 10 deletions(-)
[sis] 01/01: Merge branch 'geoapi-3.1'
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/sis.git commit 2596723a0ba2b246587bfacfc93cd9cc8997a8f5 Merge: 2ce512f85a d4fc457a24 Author: Martin Desruisseaux AuthorDate: Fri Oct 6 02:10:17 2023 +0200 Merge branch 'geoapi-3.1' .../org/apache/sis/buildtools/gradle/BuildHelper.java | 1 + .../org/apache/sis/buildtools/gradle/Conventions.java | 5 + .../apache/sis/buildtools/gradle/ModularJavadoc.java| 1 + .../apache/sis/buildtools/gradle/ModularSources.java| 7 +-- endorsed/build.gradle.kts | 17 + .../src/org.apache.sis.metadata/main/module-info.java | 3 ++- endorsed/src/org.apache.sis.util/main/module-info.java | 11 --- incubator/build.gradle.kts | 17 + optional/build.gradle.kts | 17 + settings.gradle.kts | 1 + 10 files changed, 70 insertions(+), 10 deletions(-) diff --cc buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularJavadoc.java index 6d2f01949d,1e89ccf257..24e358113c --- a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularJavadoc.java +++ b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularJavadoc.java @@@ -69,7 -69,8 +69,8 @@@ final class ModularJavadoc extends Conv "todo:a:\"TODO:\""); options.links( "https://docs.oracle.com/en/java/javase/11/docs/api;, -"http://www.geoapi.org/snapshot/javadoc;, +"http://www.geoapi.org/3.0/javadoc;, + "https://openjfx.io/javadoc/21/;, "http://unitsofmeasurement.github.io/unit-api/site/apidocs;); /* * Taglet defined in this `buildSrc` sub-project. diff --cc settings.gradle.kts index f5dd152e4a,71a8d48fc6..b35086ca0c --- a/settings.gradle.kts +++ b/settings.gradle.kts @@@ -38,7 -39,9 +38,8 @@@ dependencyResolutionManagement */ repositories { mavenCentral() -mavenLocal()// For GeoAPI SNAPSHOT only, which are built locally. maven { + name = "UCAR" url = uri("https://artifacts.unidata.ucar.edu/repository/unidata-releases;) content { includeGroup("edu.ucar")// Restrict usage to those dependencies.
[sis] branch geoapi-3.1 updated (2730c89d63 -> d4fc457a24)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch geoapi-3.1 in repository https://gitbox.apache.org/repos/asf/sis.git from 2730c89d63 Merge branch 'geoapi-4.0' into geoapi-3.1 add 7e10eef9d5 Fixes to the build plugin based on release experience. add 0c022f2f1f Define Maven repositories for snapshots and release deployments. add a24a7b212f Add qualified exports needed by the "non-free" optional modules for EPSG data. new d4fc457a24 Merge branch 'geoapi-4.0' into geoapi-3.1 The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../org/apache/sis/buildtools/gradle/BuildHelper.java | 1 + .../org/apache/sis/buildtools/gradle/Conventions.java | 5 + .../apache/sis/buildtools/gradle/ModularJavadoc.java| 1 + .../apache/sis/buildtools/gradle/ModularSources.java| 7 +-- endorsed/build.gradle.kts | 17 + .../src/org.apache.sis.metadata/main/module-info.java | 3 ++- endorsed/src/org.apache.sis.util/main/module-info.java | 11 --- incubator/build.gradle.kts | 17 + optional/build.gradle.kts | 17 + settings.gradle.kts | 1 + 10 files changed, 70 insertions(+), 10 deletions(-)
[sis] 01/01: Merge branch 'geoapi-4.0' into geoapi-3.1
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-3.1 in repository https://gitbox.apache.org/repos/asf/sis.git commit d4fc457a24f10d906d2ef8f34267730d895e60e7 Merge: 2730c89d63 a24a7b212f Author: Martin Desruisseaux AuthorDate: Fri Oct 6 02:04:50 2023 +0200 Merge branch 'geoapi-4.0' into geoapi-3.1 .../org/apache/sis/buildtools/gradle/BuildHelper.java | 1 + .../org/apache/sis/buildtools/gradle/Conventions.java | 5 + .../apache/sis/buildtools/gradle/ModularJavadoc.java| 1 + .../apache/sis/buildtools/gradle/ModularSources.java| 7 +-- endorsed/build.gradle.kts | 17 + .../src/org.apache.sis.metadata/main/module-info.java | 3 ++- endorsed/src/org.apache.sis.util/main/module-info.java | 11 --- incubator/build.gradle.kts | 17 + optional/build.gradle.kts | 17 + settings.gradle.kts | 1 + 10 files changed, 70 insertions(+), 10 deletions(-)
[sis] branch geoapi-4.0 updated: Add qualified exports needed by the "non-free" optional modules for EPSG data.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git The following commit(s) were added to refs/heads/geoapi-4.0 by this push: new a24a7b212f Add qualified exports needed by the "non-free" optional modules for EPSG data. a24a7b212f is described below commit a24a7b212fae60c4257b54be0d3da15b3f57dc56 Author: Martin Desruisseaux AuthorDate: Fri Oct 6 02:03:32 2023 +0200 Add qualified exports needed by the "non-free" optional modules for EPSG data. --- endorsed/src/org.apache.sis.metadata/main/module-info.java | 3 ++- endorsed/src/org.apache.sis.util/main/module-info.java | 11 --- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/endorsed/src/org.apache.sis.metadata/main/module-info.java b/endorsed/src/org.apache.sis.metadata/main/module-info.java index d9a14d16c5..6975678255 100644 --- a/endorsed/src/org.apache.sis.metadata/main/module-info.java +++ b/endorsed/src/org.apache.sis.metadata/main/module-info.java @@ -149,7 +149,8 @@ module org.apache.sis.metadata { exports org.apache.sis.metadata.sql.util to org.apache.sis.referencing, -org.apache.sis.storage.sql; +org.apache.sis.storage.sql, +org.apache.sis.referencing.database; exports org.apache.sis.metadata.simple to org.apache.sis.referencing, diff --git a/endorsed/src/org.apache.sis.util/main/module-info.java b/endorsed/src/org.apache.sis.util/main/module-info.java index 34ebd8ec24..60dfbff8cd 100644 --- a/endorsed/src/org.apache.sis.util/main/module-info.java +++ b/endorsed/src/org.apache.sis.util/main/module-info.java @@ -112,7 +112,9 @@ module org.apache.sis.util { org.apache.sis.cloud.aws, org.apache.sis.console, org.apache.sis.openoffice, -org.apache.sis.gui; // In the "optional" sub-project. +org.apache.sis.gui, // In the "optional" sub-project. +org.apache.sis.referencing.epsg, +org.apache.sis.referencing.database; exports org.apache.sis.util.internal to org.apache.sis.metadata, @@ -129,7 +131,9 @@ module org.apache.sis.util { org.apache.sis.portrayal, org.apache.sis.cloud.aws, org.apache.sis.console, -org.apache.sis.gui; // In the "optional" sub-project. +org.apache.sis.gui, // In the "optional" sub-project. +org.apache.sis.referencing.epsg, +org.apache.sis.referencing.database; exports org.apache.sis.pending.temporal to org.apache.sis.metadata; @@ -155,7 +159,8 @@ module org.apache.sis.util { org.apache.sis.portrayal, org.apache.sis.console, org.apache.sis.webapp, // In the "incubator" sub-project. -org.apache.sis.gui; // In the "optional" sub-project. +org.apache.sis.gui, // In the "optional" sub-project. +org.apache.sis.referencing.database; exports org.apache.sis.pending.jdk to org.apache.sis.feature,
svn commit: r1912761 - in /sis/data/non-free: sis-embedded-data/ sis-embedded-data/src/main/java/ sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/ sis-embedded-data/src/test/java/org
Author: desruisseaux Date: Thu Oct 5 23:59:42 2023 New Revision: 1912761 URL: http://svn.apache.org/viewvc?rev=1912761=rev Log: Add `module-info.java` files. Added: sis/data/non-free/sis-embedded-data/src/main/java/module-info.bak sis/data/non-free/sis-epsg/src/main/java/module-info.java Modified: sis/data/non-free/sis-embedded-data/pom.xml sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/EmbeddedResources.java sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/Generator.java sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/package-info.java sis/data/non-free/sis-embedded-data/src/test/java/org/apache/sis/resources/embedded/EmbeddedResourcesTest.java sis/data/non-free/sis-epsg/pom.xml sis/data/non-free/sis-epsg/src/main/java/org/apache/sis/referencing/factory/sql/epsg/package-info.java sis/data/non-free/sis-epsg/src/test/java/org/apache/sis/referencing/factory/sql/epsg/ScriptProviderTest.java Modified: sis/data/non-free/sis-embedded-data/pom.xml URL: http://svn.apache.org/viewvc/sis/data/non-free/sis-embedded-data/pom.xml?rev=1912761=1912760=1912761=diff == --- sis/data/non-free/sis-embedded-data/pom.xml (original) +++ sis/data/non-free/sis-embedded-data/pom.xml Thu Oct 5 23:59:42 2023 @@ -136,7 +136,7 @@ Provides non-free data, including the EP maven-jar-plugin -**/Generator* +**/Generator* Added: sis/data/non-free/sis-embedded-data/src/main/java/module-info.bak URL: http://svn.apache.org/viewvc/sis/data/non-free/sis-embedded-data/src/main/java/module-info.bak?rev=1912761=auto == --- sis/data/non-free/sis-embedded-data/src/main/java/module-info.bak (added) +++ sis/data/non-free/sis-embedded-data/src/main/java/module-info.bak Thu Oct 5 23:59:42 2023 @@ -0,0 +1,29 @@ +TODO: Not yet working, as Derby seems to not find the database anymore. + +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +module org.apache.sis.referencing.database { +requires transitive org.opengis.geoapi; +requires transitive org.apache.sis.referencing; +requiresorg.apache.derby.tools; + +exports org.apache.sis.resources.embedded; + +uses org.apache.sis.setup.InstallationResources; +provides org.apache.sis.setup.InstallationResources +with org.apache.sis.resources.embedded.EmbeddedResources; +} Modified: sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/EmbeddedResources.java URL: http://svn.apache.org/viewvc/sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/EmbeddedResources.java?rev=1912761=1912760=1912761=diff == --- sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/EmbeddedResources.java [UTF-8] (original) +++ sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/EmbeddedResources.java [UTF-8] Thu Oct 5 23:59:42 2023 @@ -36,7 +36,7 @@ import org.apache.sis.util.resources.Err * which should be accepted by users before the EPSG dataset can be installed. * * @author Martin Desruisseaux (Geomatys) - * @version 0.8 + * @version 1.4 * @since 0.8 * * @see https://www.epsg.org/;>https://www.epsg.org/ Modified: sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/Generator.java URL: http://svn.apache.org/viewvc/sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/Generator.java?rev=1912761=1912760=1912761=diff == --- sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/Generator.java [UTF-8] (original) +++ sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/Generator.java [UTF-8] Thu Oct 5
[sis] branch geoapi-4.0 updated (24b12731b9 -> 0c022f2f1f)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git from 24b12731b9 Add GPG signing for endorsed and optional modules. Incubator modules are not signed because not intended to be released. new 7e10eef9d5 Fixes to the build plugin based on release experience. new 0c022f2f1f Define Maven repositories for snapshots and release deployments. The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../org/apache/sis/buildtools/gradle/BuildHelper.java | 1 + .../org/apache/sis/buildtools/gradle/Conventions.java | 5 + .../apache/sis/buildtools/gradle/ModularJavadoc.java| 1 + .../apache/sis/buildtools/gradle/ModularSources.java| 7 +-- endorsed/build.gradle.kts | 17 + incubator/build.gradle.kts | 17 + optional/build.gradle.kts | 17 + settings.gradle.kts | 1 + 8 files changed, 60 insertions(+), 6 deletions(-)
[sis] 02/02: Define Maven repositories for snapshots and release deployments.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit 0c022f2f1f71fc4fdac2d0e1a63d57cc9490a157 Author: Martin Desruisseaux AuthorDate: Fri Sep 15 15:25:06 2023 +0200 Define Maven repositories for snapshots and release deployments. --- endorsed/build.gradle.kts | 17 + incubator/build.gradle.kts | 17 + optional/build.gradle.kts | 17 + settings.gradle.kts| 1 + 4 files changed, 52 insertions(+) diff --git a/endorsed/build.gradle.kts b/endorsed/build.gradle.kts index c4806ce7ed..abf77b66cc 100644 --- a/endorsed/build.gradle.kts +++ b/endorsed/build.gradle.kts @@ -444,6 +444,23 @@ publishing { } } } +/* Following block is currently repeated in all sub-projects. */ +repositories { +maven { +name = "Apache" +url = uri(if (version.toString().endsWith("SNAPSHOT")) + "https://repository.apache.org/content/repositories/snapshots; else + "https://repository.apache.org/service/local/staging/deploy/maven2;) +credentials { +val asfNexusUsername = providers.gradleProperty("asfNexusUsername") +val asfNexusPassword = providers.gradleProperty("asfNexusPassword") +if (asfNexusUsername.isPresent() && asfNexusPassword.isPresent()) { +username = asfNexusUsername.get() +password = asfNexusPassword.get() +} +} +} +} } signing { diff --git a/incubator/build.gradle.kts b/incubator/build.gradle.kts index e2e76b96bd..b2a0c48eb0 100644 --- a/incubator/build.gradle.kts +++ b/incubator/build.gradle.kts @@ -151,4 +151,21 @@ publishing { } } } +/* Following block is currently repeated in all sub-projects. */ +repositories { +maven { +name = "Apache" +url = uri(if (version.toString().endsWith("SNAPSHOT")) + "https://repository.apache.org/content/repositories/snapshots; else + "https://repository.apache.org/service/local/staging/deploy/maven2;) +credentials { +val asfNexusUsername = providers.gradleProperty("asfNexusUsername") +val asfNexusPassword = providers.gradleProperty("asfNexusPassword") +if (asfNexusUsername.isPresent() && asfNexusPassword.isPresent()) { +username = asfNexusUsername.get() +password = asfNexusPassword.get() +} +} +} +} } diff --git a/optional/build.gradle.kts b/optional/build.gradle.kts index a96990dfa5..a819cfed16 100644 --- a/optional/build.gradle.kts +++ b/optional/build.gradle.kts @@ -175,6 +175,23 @@ publishing { } } } +/* Following block is currently repeated in all sub-projects. */ +repositories { +maven { +name = "Apache" +url = uri(if (version.toString().endsWith("SNAPSHOT")) + "https://repository.apache.org/content/repositories/snapshots; else + "https://repository.apache.org/service/local/staging/deploy/maven2;) +credentials { +val asfNexusUsername = providers.gradleProperty("asfNexusUsername") +val asfNexusPassword = providers.gradleProperty("asfNexusPassword") +if (asfNexusUsername.isPresent() && asfNexusPassword.isPresent()) { +username = asfNexusUsername.get() +password = asfNexusPassword.get() +} +} +} +} } signing { diff --git a/settings.gradle.kts b/settings.gradle.kts index 6f5cf90996..c938ca4576 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -41,6 +41,7 @@ dependencyResolutionManagement { mavenCentral() mavenLocal()// For GeoAPI SNAPSHOT only, which are built locally. maven { +name = "UCAR" url = uri("https://artifacts.unidata.ucar.edu/repository/unidata-releases;) content { includeGroup("edu.ucar")// Restrict usage to those dependencies.
[sis] 01/02: Fixes to the build plugin based on release experience.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git commit 7e10eef9d532c0ea8b9b08858ea6aff30acca36a Author: Martin Desruisseaux AuthorDate: Thu Oct 5 21:17:07 2023 +0200 Fixes to the build plugin based on release experience. --- .../main/org/apache/sis/buildtools/gradle/BuildHelper.java | 1 + .../main/org/apache/sis/buildtools/gradle/Conventions.java | 5 + .../main/org/apache/sis/buildtools/gradle/ModularJavadoc.java | 1 + .../main/org/apache/sis/buildtools/gradle/ModularSources.java | 7 +-- 4 files changed, 8 insertions(+), 6 deletions(-) diff --git a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/BuildHelper.java b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/BuildHelper.java index 0408b27a8f..7dd86924e3 100644 --- a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/BuildHelper.java +++ b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/BuildHelper.java @@ -162,6 +162,7 @@ public final class BuildHelper implements Plugin { tasks.withType(Jar.class).forEach((task) -> { task.getInputs().dir(Conventions.SOURCE_DIRECTORY); task.getOutputs().dir(Conventions.fileRelativeToBuild(project, Conventions.LIBS_DIRECTORY)); +task.getOutputs().dir(Conventions.fileRelativeToBuild(project, Conventions.DOCS_DIRECTORY)); task.setActions(List.of((t) -> {// Replace the default action by our own. ModularJAR.execute(BuildHelper.this, (Jar) t); })); diff --git a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/Conventions.java b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/Conventions.java index c50dbefa95..471f16d67c 100644 --- a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/Conventions.java +++ b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/Conventions.java @@ -80,6 +80,11 @@ abstract class Conventions { */ static final String LIBS_DIRECTORY = "libs"; +/** + * The sub-directory inside "{@value #BUILD_DIRECTORY}" for the Javadoc and sources ZIP files. + */ +static final String DOCS_DIRECTORY = "docs"; + /** * The sub-directory inside "{@value #BUILD_DIRECTORY}" for the ZIP or OXT files (assemblies). * Also the sibling directory of "{@value #MAIN_DIRECTORY}" and "{@value #TEST_DIRECTORY}" diff --git a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularJavadoc.java b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularJavadoc.java index 63e917813a..1e89ccf257 100644 --- a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularJavadoc.java +++ b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularJavadoc.java @@ -70,6 +70,7 @@ final class ModularJavadoc extends Conventions { options.links( "https://docs.oracle.com/en/java/javase/11/docs/api;, "http://www.geoapi.org/snapshot/javadoc;, +"https://openjfx.io/javadoc/21/;, "http://unitsofmeasurement.github.io/unit-api/site/apidocs;); /* * Taglet defined in this `buildSrc` sub-project. diff --git a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularSources.java b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularSources.java index 9525b4f796..d330d6a9e5 100644 --- a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularSources.java +++ b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularSources.java @@ -31,11 +31,6 @@ import org.gradle.api.Task; * @author Martin Desruisseaux (Geomatys) */ final class ModularSources extends ZipWriter.JDK { -/** - * The directory where the ZIP files will be written. - */ -private static final String OUTPUT_DIRECTORY = "docs"; - /** * The Java system property to set to {@code true} for enabling Javadoc generation. */ @@ -136,7 +131,7 @@ final class ModularSources extends ZipWriter.JDK { } else { sources = sourcesDir(project, module); } -final var target = Conventions.fileRelativeToBuild(project, OUTPUT_DIRECTORY); +final var target = Conventions.fileRelativeToBuild(project, Conventions.DOCS_DIRECTORY); target.mkdir(); final File file = new File(target, module + '-' + (javadoc ? "javadoc" : "sources") + ".jar"); try (ZipOutputStream out = new ZipOutputStream(new FileOutputStream(file))) {
svn commit: r1912760 - in /sis/data/non-free: ./ sis-embedded-data/ sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/ sis-embedded-data/src/test/java/org/apache/sis/resources/embedded
Author: desruisseaux Date: Thu Oct 5 23:21:19 2023 New Revision: 1912760 URL: http://svn.apache.org/viewvc?rev=1912760=rev Log: Upgrade to Apache SIS 1.4. Removed: sis/data/non-free/sis-embedded-data/src/test/java/org/apache/sis/resources/embedded/EmbeddedDataTestSuite.java sis/data/non-free/sis-epsg/src/test/java/org/apache/sis/referencing/factory/sql/epsg/EpsgTestSuite.java Modified: sis/data/non-free/pom.xml sis/data/non-free/sis-embedded-data/pom.xml sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/EmbeddedResources.java sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/Generator.java sis/data/non-free/sis-embedded-data/src/test/java/org/apache/sis/resources/embedded/EmbeddedResourcesTest.java sis/data/non-free/sis-epsg/pom.xml sis/data/non-free/sis-epsg/src/main/java/org/apache/sis/referencing/factory/sql/epsg/ScriptProvider.java sis/data/non-free/sis-epsg/src/test/java/org/apache/sis/referencing/factory/sql/epsg/ScriptProviderTest.java Modified: sis/data/non-free/pom.xml URL: http://svn.apache.org/viewvc/sis/data/non-free/pom.xml?rev=1912760=1912759=1912760=diff == --- sis/data/non-free/pom.xml (original) +++ sis/data/non-free/pom.xml Thu Oct 5 23:21:19 2023 @@ -27,7 +27,7 @@ org.apache.sis parent -1.3 +1.4 @@ -95,12 +95,7 @@ The "non-free" modules contain data that org.opengis geoapi-conformance - - - org.apache.sis.core - sis-utility - ${project.version} - test-jar + 3.0.2 test Modified: sis/data/non-free/sis-embedded-data/pom.xml URL: http://svn.apache.org/viewvc/sis/data/non-free/sis-embedded-data/pom.xml?rev=1912760=1912759=1912760=diff == --- sis/data/non-free/sis-embedded-data/pom.xml (original) +++ sis/data/non-free/sis-embedded-data/pom.xml Thu Oct 5 23:21:19 2023 @@ -27,7 +27,7 @@ org.apache.sis non-free -1.3 +1.4 @@ -84,6 +84,13 @@ Provides non-free data, including the EP org.apache.derby derby + 10.15.2.0 + compile + + + org.apache.derby + derbytools + 10.15.2.0 compile Modified: sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/EmbeddedResources.java URL: http://svn.apache.org/viewvc/sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/EmbeddedResources.java?rev=1912760=1912759=1912760=diff == --- sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/EmbeddedResources.java [UTF-8] (original) +++ sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/EmbeddedResources.java [UTF-8] Thu Oct 5 23:21:19 2023 @@ -24,8 +24,8 @@ import java.io.InputStreamReader; import java.io.IOException; import javax.sql.DataSource; import org.apache.derby.jdbc.EmbeddedDataSource; -import org.apache.sis.internal.util.MetadataServices; -import org.apache.sis.internal.metadata.sql.Initializer; +import org.apache.sis.util.internal.MetadataServices; +import org.apache.sis.metadata.sql.util.Initializer; import org.apache.sis.setup.InstallationResources; import org.apache.sis.util.resources.Errors; Modified: sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/Generator.java URL: http://svn.apache.org/viewvc/sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/Generator.java?rev=1912760=1912759=1912760=diff == --- sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/Generator.java [UTF-8] (original) +++ sis/data/non-free/sis-embedded-data/src/main/java/org/apache/sis/resources/embedded/Generator.java [UTF-8] Thu Oct 5 23:21:19 2023 @@ -37,10 +37,10 @@ import java.sql.SQLException; import org.opengis.util.FactoryException; import org.opengis.referencing.crs.GeographicCRS; import org.apache.derby.jdbc.EmbeddedDataSource; -import org.apache.sis.internal.metadata.sql.Initializer; -import org.apache.sis.internal.metadata.sql.LocalDataSource; -import org.apache.sis.internal.system.Shutdown; -import org.apache.sis.internal.util.Constants; +import org.apache.sis.metadata.sql.util.Initializer; +import org.apache.sis.metadata.sql.util.LocalDataSource; +import org.apache.sis.system.Shutdown; +import org.apache.sis.util.internal.Constants; import org.apache.sis.metadata.MetadataStandard; import org.apache.sis.metadata.sql.MetadataSource; import org.apache.sis.metadata.sql.MetadataStoreException; Modified: sis/data/non-free/sis-embedded-data/src/test/java/
[sis-site] branch main updated: Partial update of release management notes, with more instruction about publishing.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/sis-site.git The following commit(s) were added to refs/heads/main by this push: new e173b3eb Partial update of release management notes, with more instruction about publishing. e173b3eb is described below commit e173b3ebe551eb99faeae83fce8232546226ce03 Author: Martin Desruisseaux AuthorDate: Thu Oct 5 21:56:17 2023 +0200 Partial update of release management notes, with more instruction about publishing. --- content/release-management.md | 173 -- 1 file changed, 117 insertions(+), 56 deletions(-) diff --git a/content/release-management.md b/content/release-management.md index fefc147a..0e261a64 100644 --- a/content/release-management.md +++ b/content/release-management.md @@ -161,6 +161,18 @@ Then, the signed public key shall be appended to the `KEYS` file on the [SIS sou then copied to the [SIS distribution directory][dist]. +## Gradle configuration + +Edit the `~/.gradle/gradle.properties` file, making sure that the following properties are present: + +{{< highlight text >}} +org.gradle.java.home= +signing.gnupg.keyName= +asfNexusUsername= +asfNexusPassword= +{{< / highlight >}} + + # Configure{#configure} For all instructions in this page, `$OLD_VERSION` and `$NEW_VERSION` stand for the version @@ -292,7 +304,7 @@ git commit --message "Release notes for Apache SIS $NEW_VERSION." {{< / highlight >}} -# Create release branch{#branch} +# Create release artifacts{#create-artifacts} Execute the following commands. It is okay to checkout the branch in a separated directory if desired. @@ -340,48 +352,123 @@ gradle test git commit --message="Set version number to $NEW_VERSION." {{< / highlight >}} + +## Initialize the distribution directory{#dist} + +Create the directory for the new version and release candidate within the distribution directory. +The `$RELEASE_CANDIDATE` variable shall be the number of current release attempt. + +{{< highlight bash >}} +cd ../release/distribution +svn update +mkdir -p $NEW_VERSION/RC$RELEASE_CANDIDATE +svn add $NEW_VERSION +cd $NEW_VERSION/RC$RELEASE_CANDIDATE +export DIST_DIR=`pwd` +{{< / highlight >}} + +Copy the `HEADER.html` file from the previous release. +Update the file content if necessary. + +{{< highlight bash >}} +svn copy https://dist.apache.org/repos/dist/release/sis/$OLD_VERSION/HEADER.html . +{{< / highlight >}} + + ## Generate Javadoc{#javadoc} -Execute the following commands. The first one (`gradle javadoc`) will fail. -This is a known problem with the current build. -Open `javadoc.options` file as below (`gedit` can be replaced by another editor), -and move all `-classpath` content to `--module-path`. -Then launch Javadoc from the command-line: +Execute `gradle javadoc`. That command will fail. This is a known problem with the current Gradle build configuration. +But it should have created a `javadoc.options` file that we will patch as below (`gedit` can be replaced by another editor): {{< highlight bash >}} -gradle javadoc +cd $SIS_RC_DIR +gradle javadoc # Fail. See workaround below. gedit endorsed/build/tmp/javadoc/javadoc.options +{{< / highlight >}} + +Apply the following changes: + +* Move all `-classpath` content to `--module-path`. +* Add the value of `$PATH_TO_FX` environment variable to the module-path. +* Delete all Java source files listed after the options, everything until the end of file. +* Add the following line in-place of deleted lines (omit the `org.opengis.geoapi` module if not desired): + +{{< highlight text >}} +--module org.opengis.geoapi,org.apache.sis.util,org.apache.sis.metadata,org.apache.sis.referencing,org.apache.sis.referencing.gazetteer,org.apache.sis.feature,org.apache.sis.storage,org.apache.sis.storage.sql,org.apache.sis.storage.xml,org.apache.sis.storage.netcdf,org.apache.sis.storage.geotiff,org.apache.sis.storage.earthobservation,org.apache.sis.cloud.aws,org.apache.sis.portrayal,org.apache.sis.profile.france,org.apache.sis.profile.japan,org.apache.sis.openoffice,org.apache.sis.conso [...] +{{< / highlight >}} + +The following commands temporarily create links to optional modules for inclusion in the Javadoc. +The GeoAPI interfaces may also be copied if they should be bundled with the Javadoc. +Then the Javadoc command is launched manually. + +{{< highlight bash >}} +cd endorsed/src +ln -s ../../optional/src/org.apache.sis.gui +cd - + +# Replace "../../GeoAPI/3.0.2" by the path to a GeoAPI 3.0.2 checkout, or omit those lines. +mkdir endorsed/src/org.opengis.geoapi +cp -r ../../GeoAPI/3.0.2/geoapi/src/main/java endorsed/src/org.opengis.geoapi/main +cp -r ../../GeoAPI/3.0.2/geoapi/src/pending/java/org
[sis] 03/03: Fix more Javadoc errors.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/sis.git commit 2ce512f85a6e66adb8645e1641e15e5c15191863 Author: Martin Desruisseaux AuthorDate: Thu Oct 5 15:43:08 2023 +0200 Fix more Javadoc errors. --- .../main/org/apache/sis/feature/AbstractFeature.java | 2 +- .../apache/sis/xml/bind/metadata/code/MD_CharacterSetCode.java | 2 +- .../main/org/apache/sis/referencing/IdentifiedObjects.java | 2 +- .../apache/sis/referencing/factory/GeodeticObjectFactory.java| 2 +- .../main/org/apache/sis/storage/FeatureQuery.java| 9 + 5 files changed, 9 insertions(+), 8 deletions(-) diff --git a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/AbstractFeature.java b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/AbstractFeature.java index 033cc8d924..fc502bf8ec 100644 --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/AbstractFeature.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/AbstractFeature.java @@ -437,7 +437,7 @@ public abstract class AbstractFeature implements Serializable { * but the {@linkplain FeatureOperations#link link} and * {@linkplain FeatureOperations#compound compound} operations (for instances) do. * Whether an operation is writable or not depends on whether the computed {@link Property} - * supports {@link Attribute#setValue(Object)} or {@link FeatureAssociation#setValue(Feature)}. + * supports {@link AbstractAttribute#setValue(Object)} or {@link AbstractAssociation#setValue(Feature)}. * * @param name the name of the operation to execute. The caller is responsible to ensure that the *property type for that name is an instance of {@link AbstractOperation}. diff --git a/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/xml/bind/metadata/code/MD_CharacterSetCode.java b/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/xml/bind/metadata/code/MD_CharacterSetCode.java index ff2fbfbfc0..9a7f67e7e3 100644 --- a/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/xml/bind/metadata/code/MD_CharacterSetCode.java +++ b/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/xml/bind/metadata/code/MD_CharacterSetCode.java @@ -109,7 +109,7 @@ public final class MD_CharacterSetCode extends XmlAdapter{@link AbstractIdentifiedObject#getDomains()} * {@value org.opengis.referencing.IdentifiedObject#REMARKS_KEY} * {@link IdentifiedObject#getRemarks()} - * {@value org.opengis.referencing.ReferenceSystem#SCOPE_KEY + * {@value org.opengis.referencing.ReferenceSystem#SCOPE_KEY} * {@link DefaultObjectDomain#getScope()} * {@value org.opengis.referencing.ReferenceSystem#DOMAIN_OF_VALIDITY_KEY} * {@link DefaultObjectDomain#getDomainOfValidity()} diff --git a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/GeodeticObjectFactory.java b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/GeodeticObjectFactory.java index d979184f3f..30b647a50c 100644 --- a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/GeodeticObjectFactory.java +++ b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/GeodeticObjectFactory.java @@ -139,7 +139,7 @@ import org.apache.sis.xml.XML; * * {@value org.opengis.referencing.ReferenceSystem#SCOPE_KEY} * {@link String} or {@link InternationalString} - * {@link DefaultObjectDomain#getScope()} + * {@link org.apache.sis.referencing.DefaultObjectDomain#getScope()} * * {@value org.opengis.referencing.datum.Datum#ANCHOR_POINT_KEY} * {@link InternationalString} or {@link String} diff --git a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/storage/FeatureQuery.java b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/storage/FeatureQuery.java index 9a5b59763b..1353ab3c74 100644 --- a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/storage/FeatureQuery.java +++ b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/storage/FeatureQuery.java @@ -52,6 +52,7 @@ import org.apache.sis.util.resources.Vocabulary; import org.apache.sis.feature.AbstractFeature; import org.apache.sis.feature.DefaultFeatureType; import org.apache.sis.feature.DefaultAttributeType; +import org.apache.sis.feature.AbstractAttribute; import org.apache.sis.filter.Filter; import org.apache.sis.filter.Expression; import org.apache.sis.pending.geoapi.filter.Literal; @@ -434,7 +435,7 @@ public class FeatureQuery extends Query implements Cloneable, Serializable { /** * Whether a property evaluated by a query is computed on the fly or stored. * By default, an expression is evaluated only once for each feature instance
[sis] branch main updated (00e6806277 -> 2ce512f85a)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch main in repository https://gitbox.apache.org/repos/asf/sis.git from 00e6806277 Replace a link to GeoAPI-snapshot by a link to GeoAPI 3.0. new d214faa29b Fix some Javadoc warnings specific to the main branch. add c847947bde Fix some Javadoc warnings. add 17c3f73eca Generate sources JAR and Javadoc JAR together with the Maven artifacts. add 24b12731b9 Add GPG signing for endorsed and optional modules. Incubator modules are not signed because not intended to be released. add 2730c89d63 Merge branch 'geoapi-4.0' into geoapi-3.1 new 161c52e539 Merge branch 'geoapi-3.1' new 2ce512f85a Fix more Javadoc errors. The 3 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../apache/sis/buildtools/gradle/BuildHelper.java | 1 + .../apache/sis/buildtools/gradle/Dependency.java | 2 +- .../apache/sis/buildtools/gradle/ModularJAR.java | 9 +- .../sis/buildtools/gradle/ModularSources.java | 147 + .../apache/sis/buildtools/gradle/ZipWriter.java| 2 +- endorsed/build.gradle.kts | 109 --- .../org/apache/sis/feature/AbstractFeature.java| 6 +- .../sis/feature/internal/FeatureExpression.java| 6 +- .../main/org/apache/sis/filter/Filter.java | 2 + .../org/apache/sis/filter/sqlmm/OneGeometry.java | 2 + .../org/apache/sis/filter/sqlmm/ST_Transform.java | 2 + .../org/apache/sis/filter/sqlmm/TwoGeometries.java | 2 + .../main/org/apache/sis/util/iso/Types.java| 5 +- .../main/org/apache/sis/xml/TransformedEvent.java | 2 +- .../bind/metadata/code/MD_CharacterSetCode.java| 2 +- .../bind/metadata/replace/QualityParameter.java| 8 +- .../bind/metadata/replace/ServiceParameter.java| 2 +- .../sis/referencing/AbstractIdentifiedObject.java | 4 +- .../apache/sis/referencing/IdentifiedObjects.java | 2 +- .../referencing/factory/GeodeticObjectFactory.java | 6 +- .../org/apache/sis/storage/sql/feature/Table.java | 2 +- .../org/apache/sis/storage/gpx/WritableStore.java | 1 - .../main/org/apache/sis/storage/FeatureQuery.java | 15 ++- .../org/apache/sis/storage/StorageConnector.java | 2 + .../org/apache/sis/storage/WritableFeatureSet.java | 1 - .../apache/sis/storage/base/MetadataBuilder.java | 2 +- .../org/apache/sis/converter/NumberConverter.java | 2 + .../org/apache/sis/converter/ObjectToString.java | 4 + .../org/apache/sis/converter/StringConverter.java | 4 + .../sis/util/collection/WeakValueHashMap.java | 2 +- .../apache/sis/util/internal/MetadataServices.java | 2 - .../apache/sis/util/internal/PropertyFormat.java | 2 +- incubator/build.gradle.kts | 10 +- optional/build.gradle.kts | 13 +- .../org/apache/sis/gui/map/ValuesFormatter.java| 2 +- 35 files changed, 323 insertions(+), 62 deletions(-) create mode 100644 buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularSources.java
[sis] 02/03: Merge branch 'geoapi-3.1'
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/sis.git commit 161c52e539145524ccc81992879d9241e0438dd8 Merge: d214faa29b 2730c89d63 Author: Martin Desruisseaux AuthorDate: Thu Oct 5 15:41:28 2023 +0200 Merge branch 'geoapi-3.1' .../apache/sis/buildtools/gradle/BuildHelper.java | 1 + .../apache/sis/buildtools/gradle/Dependency.java | 2 +- .../apache/sis/buildtools/gradle/ModularJAR.java | 9 +- .../sis/buildtools/gradle/ModularSources.java | 147 + .../apache/sis/buildtools/gradle/ZipWriter.java| 2 +- endorsed/build.gradle.kts | 109 --- .../org/apache/sis/filter/sqlmm/OneGeometry.java | 2 + .../org/apache/sis/filter/sqlmm/ST_Transform.java | 2 + .../org/apache/sis/filter/sqlmm/TwoGeometries.java | 2 + .../main/org/apache/sis/util/iso/Types.java| 5 +- .../bind/metadata/replace/QualityParameter.java| 6 +- .../sis/referencing/AbstractIdentifiedObject.java | 4 +- .../referencing/factory/GeodeticObjectFactory.java | 4 +- .../org/apache/sis/storage/gpx/WritableStore.java | 1 - .../org/apache/sis/storage/StorageConnector.java | 2 + .../org/apache/sis/storage/WritableFeatureSet.java | 1 - .../org/apache/sis/converter/NumberConverter.java | 2 + .../org/apache/sis/converter/ObjectToString.java | 4 + .../org/apache/sis/converter/StringConverter.java | 4 + .../sis/util/collection/WeakValueHashMap.java | 2 +- .../apache/sis/util/internal/MetadataServices.java | 2 - incubator/build.gradle.kts | 10 +- optional/build.gradle.kts | 13 +- .../org/apache/sis/gui/map/ValuesFormatter.java| 2 +- 24 files changed, 298 insertions(+), 40 deletions(-) diff --cc endorsed/src/org.apache.sis.metadata/main/org/apache/sis/xml/bind/metadata/replace/QualityParameter.java index c74f3dfd1d,def4612fa5..336458e1ba --- a/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/xml/bind/metadata/replace/QualityParameter.java +++ b/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/xml/bind/metadata/replace/QualityParameter.java @@@ -94,11 -97,10 +94,9 @@@ public final class QualityParameter ext /** * Description of the data quality parameter. - * - * @see #getDescription() */ @XmlElement -@SuppressWarnings("serial") // Most Apache SIS implementations are serializable. -public Description description; +public DefaultMeasureDescription description; /** * Value type of the data quality parameter (shall be one of the data types defined in ISO/TS 19103:2005). @@@ -204,6 -229,11 +202,8 @@@ * Otherwise the given class is used as if it was already a component type (i.e. a singleton item). * * - * This method is used for mapping {@link Class} to ({@link ValueStructure}, {@link TypeName}) pair. - * The other member of the pair is given by {@link ValueStructure#valueOf(Class)}. - * + * @todo {@code Coverage} case needs to be added. It would be handle like {@link Matrix}. + * * @param valueClass the type of values for which to infer a {@link TypeName} instance. * @return a type name for components of the given type. */ diff --cc endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/GeodeticObjectFactory.java index ad235c995f,95c4401371..d979184f3f --- a/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/GeodeticObjectFactory.java +++ b/endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/factory/GeodeticObjectFactory.java @@@ -129,9 -129,9 +129,9 @@@ import org.apache.sis.xml.XML * {@link Identifier} (optionally as array) * {@link AbstractIdentifiedObject#getIdentifiers()} * - * {@value org.opengis.referencing.IdentifiedObject#DOMAINS_KEY} - * {@link org.opengis.referencing.ObjectDomain} (optionally as array) + * "domains" + * {@link org.apache.sis.referencing.DefaultObjectDomain} (optionally as array) - * {@link #getDomains()} + * {@link AbstractIdentifiedObject#getDomains()} * * {@value org.opengis.referencing.ReferenceSystem#DOMAIN_OF_VALIDITY_KEY} * {@link Extent} diff --cc endorsed/src/org.apache.sis.storage/main/org/apache/sis/storage/WritableFeatureSet.java index 247a31c171,06ce25d8d4..ee46e96473 --- a/endorsed/src/org.apache.sis.storage/main/org/apache/sis/storage/WritableFeatureSet.java +++ b/endorsed/src/org.apache.sis.storage/main/org/apache/sis/storage/WritableFeatureSet.java @@@ -81,10 -81,9 +81,9 @@@ public interface WritableFeatureSet ext * Removes all feature instances from this {@code FeatureSet} which matches the given predicate. * * @param
[sis] 01/03: Fix some Javadoc warnings specific to the main branch.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/sis.git commit d214faa29b785586ab2835cefc4f693c19b99cd9 Author: Martin Desruisseaux AuthorDate: Tue Oct 3 23:46:44 2023 +0200 Fix some Javadoc warnings specific to the main branch. --- .../main/org/apache/sis/feature/AbstractFeature.java | 4 ++-- .../org/apache/sis/feature/internal/FeatureExpression.java | 6 +++--- .../main/org/apache/sis/filter/Filter.java | 2 ++ .../main/org/apache/sis/xml/TransformedEvent.java | 2 +- .../sis/xml/bind/metadata/replace/QualityParameter.java| 2 +- .../sis/xml/bind/metadata/replace/ServiceParameter.java| 2 +- .../main/org/apache/sis/storage/sql/feature/Table.java | 2 +- .../main/org/apache/sis/storage/FeatureQuery.java | 14 +++--- .../main/org/apache/sis/storage/base/MetadataBuilder.java | 2 +- .../main/org/apache/sis/util/internal/PropertyFormat.java | 2 +- 10 files changed, 20 insertions(+), 18 deletions(-) diff --git a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/AbstractFeature.java b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/AbstractFeature.java index 6def733227..033cc8d924 100644 --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/AbstractFeature.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/AbstractFeature.java @@ -54,8 +54,8 @@ import org.apache.sis.feature.internal.Resources; * * * Operations - * Properties that are instances of {@link Operation} are usually not stored in {@code Feature} instances. - * Instead, the {@link Operation#apply Operation.apply(…)} method is invoked every times that the property + * Properties that are instances of {@code Operation} are usually not stored in {@code Feature} instances. + * Instead, the {@link AbstractOperation#apply Operation.apply(…)} method is invoked every times that the property * value is requested. {@code AbstractFeature} does not cache operation results. * Those results are usually read-only, but may be writable under the conditions documented in * {@link #setOperationValue(String, Object)}. diff --git a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/internal/FeatureExpression.java b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/internal/FeatureExpression.java index cc2b87f3f6..05bd7e153e 100644 --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/internal/FeatureExpression.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/internal/FeatureExpression.java @@ -73,9 +73,9 @@ public interface FeatureExpression extends Expression { /** * Provides the expected type of values produced by this expression when a feature of the given - * type is evaluated. The resulting type shall describe a "static" property, i.e. it can be an - * {@link AttributeType} or a {@link org.opengis.feature.FeatureAssociationRole} - * but not an {@link org.opengis.feature.Operation}. + * type is evaluated. The resulting type shall describe a "static" property, i.e. it can be a + * {@link org.apache.sis.feature.DefaultAttributeType} or a {@link org.apache.sis.feature.DefaultAssociationRole} + * but not an {@link org.apache.sis.feature.AbstractOperation}. * * If this method returns an instance of {@link AttributeTypeBuilder}, then its parameterized * type should be the same {@code } than this {@code FeatureExpression}. diff --git a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/filter/Filter.java b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/filter/Filter.java index 8676107bf7..0e11130b4f 100644 --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/filter/Filter.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/filter/Filter.java @@ -32,6 +32,8 @@ import java.util.function.Predicate; * instead of {@code org.apache.sis.filter}. * * + * @paramthe type of resources (e.g. {@link org.apache.sis.feature.AbstractFeature}) to filter. + * * @since 1.1 */ public interface Filter extends Predicate { diff --git a/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/xml/TransformedEvent.java b/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/xml/TransformedEvent.java index f906873041..e86698e2c0 100644 --- a/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/xml/TransformedEvent.java +++ b/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/xml/TransformedEvent.java @@ -126,7 +126,7 @@ abstract class TransformedEvent implements XMLEvent { /** * Wrapper over a namespace emitted during the reading or writing of an XML document. * This wrapper is used for changing the namespace URI. The wrapped {@link #event} - * should b
[sis] 01/01: Merge branch 'geoapi-4.0' into geoapi-3.1
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-3.1 in repository https://gitbox.apache.org/repos/asf/sis.git commit 2730c89d637c575eb52f75fa51b067a47fa40355 Merge: fba1ecf3f7 24b12731b9 Author: Martin Desruisseaux AuthorDate: Thu Oct 5 15:33:25 2023 +0200 Merge branch 'geoapi-4.0' into geoapi-3.1 .../apache/sis/buildtools/gradle/BuildHelper.java | 1 + .../apache/sis/buildtools/gradle/Dependency.java | 2 +- .../apache/sis/buildtools/gradle/ModularJAR.java | 9 +- .../sis/buildtools/gradle/ModularSources.java | 147 + .../apache/sis/buildtools/gradle/ZipWriter.java| 2 +- endorsed/build.gradle.kts | 109 --- .../org/apache/sis/filter/sqlmm/OneGeometry.java | 2 + .../org/apache/sis/filter/sqlmm/ST_Transform.java | 2 + .../org/apache/sis/filter/sqlmm/TwoGeometries.java | 2 + .../main/org/apache/sis/util/iso/Types.java| 5 +- .../bind/metadata/replace/QualityParameter.java| 6 +- .../sis/referencing/AbstractIdentifiedObject.java | 4 +- .../referencing/factory/GeodeticObjectFactory.java | 4 +- .../org/apache/sis/storage/gpx/WritableStore.java | 1 - .../org/apache/sis/storage/StorageConnector.java | 2 + .../org/apache/sis/storage/WritableFeatureSet.java | 1 - .../org/apache/sis/converter/NumberConverter.java | 2 + .../org/apache/sis/converter/ObjectToString.java | 4 + .../org/apache/sis/converter/StringConverter.java | 4 + .../sis/util/collection/WeakValueHashMap.java | 2 +- .../apache/sis/util/internal/MetadataServices.java | 2 - incubator/build.gradle.kts | 15 ++- optional/build.gradle.kts | 13 +- .../org/apache/sis/gui/map/ValuesFormatter.java| 2 +- 24 files changed, 302 insertions(+), 41 deletions(-)
[sis] branch geoapi-3.1 updated (fba1ecf3f7 -> 2730c89d63)
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a change to branch geoapi-3.1 in repository https://gitbox.apache.org/repos/asf/sis.git from fba1ecf3f7 Merge branch 'geoapi-4.0' into geoapi-3.1 add c847947bde Fix some Javadoc warnings. add 17c3f73eca Generate sources JAR and Javadoc JAR together with the Maven artifacts. add 24b12731b9 Add GPG signing for endorsed and optional modules. Incubator modules are not signed because not intended to be released. new 2730c89d63 Merge branch 'geoapi-4.0' into geoapi-3.1 The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: .../apache/sis/buildtools/gradle/BuildHelper.java | 1 + .../apache/sis/buildtools/gradle/Dependency.java | 2 +- .../apache/sis/buildtools/gradle/ModularJAR.java | 9 +- .../sis/buildtools/gradle/ModularSources.java | 147 + .../apache/sis/buildtools/gradle/ZipWriter.java| 2 +- endorsed/build.gradle.kts | 109 --- .../org/apache/sis/filter/sqlmm/OneGeometry.java | 2 + .../org/apache/sis/filter/sqlmm/ST_Transform.java | 2 + .../org/apache/sis/filter/sqlmm/TwoGeometries.java | 2 + .../main/org/apache/sis/util/iso/Types.java| 5 +- .../bind/metadata/replace/QualityParameter.java| 6 +- .../sis/referencing/AbstractIdentifiedObject.java | 4 +- .../referencing/factory/GeodeticObjectFactory.java | 4 +- .../org/apache/sis/storage/gpx/WritableStore.java | 1 - .../org/apache/sis/storage/StorageConnector.java | 2 + .../org/apache/sis/storage/WritableFeatureSet.java | 1 - .../org/apache/sis/converter/NumberConverter.java | 2 + .../org/apache/sis/converter/ObjectToString.java | 4 + .../org/apache/sis/converter/StringConverter.java | 4 + .../sis/util/collection/WeakValueHashMap.java | 2 +- .../apache/sis/util/internal/MetadataServices.java | 2 - incubator/build.gradle.kts | 15 ++- optional/build.gradle.kts | 13 +- .../org/apache/sis/gui/map/ValuesFormatter.java| 2 +- 24 files changed, 302 insertions(+), 41 deletions(-) create mode 100644 buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularSources.java
[sis] branch geoapi-4.0 updated: Add GPG signing for endorsed and optional modules. Incubator modules are not signed because not intended to be released.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git The following commit(s) were added to refs/heads/geoapi-4.0 by this push: new 24b12731b9 Add GPG signing for endorsed and optional modules. Incubator modules are not signed because not intended to be released. 24b12731b9 is described below commit 24b12731b9b7b84d0dd5ee78931049b2ae33c9f5 Author: Martin Desruisseaux AuthorDate: Thu Oct 5 15:32:24 2023 +0200 Add GPG signing for endorsed and optional modules. Incubator modules are not signed because not intended to be released. --- .../sis/buildtools/gradle/ModularSources.java | 11 +- endorsed/build.gradle.kts | 24 ++ optional/build.gradle.kts | 8 3 files changed, 38 insertions(+), 5 deletions(-) diff --git a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularSources.java b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularSources.java index b07e0cc9ca..9525b4f796 100644 --- a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularSources.java +++ b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularSources.java @@ -39,7 +39,7 @@ final class ModularSources extends ZipWriter.JDK { /** * The Java system property to set to {@code true} for enabling Javadoc generation. */ -private static final String CREATE_JAVADOC_PROPERTY = "org.apache.sis.create-javadoc"; +private static final String RELEASE_VERSION_PROPERTY = "org.apache.sis.releaseVersion"; /** * Creates a helper instance. @@ -101,13 +101,14 @@ final class ModularSources extends ZipWriter.JDK { } /* * For performance reason, we actually generate the Javadoc only of the - * "org.apache.sis.create-javadoc" system property is set to `true`. + * "org.apache.sis.releaseVersion" system property is set to a non-null value. * Otherwise the Javadoc files will be empty. */ -if (Boolean.getBoolean(CREATE_JAVADOC_PROPERTY)) { +final String version = System.getProperty(RELEASE_VERSION_PROPERTY); +if (version != null) { final var pb = new ProcessBuilder("javadoc", "-locale", "en", -"-doctitle","Apache SIS API", +"-doctitle","Apache SIS " + version + " API", "-tag", "category:X:Category:", "-tag", "todo:a:TODO:", "-nonavbar", "-noindex", "-nodeprecatedlist", "-notree", "-nohelp", @@ -129,7 +130,7 @@ final class ModularSources extends ZipWriter.JDK { "For performance reason, Javadoc generation is disabled by default.\n" + "For generating Javadoc, set the following system property:\n" + "\n" + -"" + CREATE_JAVADOC_PROPERTY + "=true\n" + +"" + RELEASE_VERSION_PROPERTY + "=\n" + "\n"); } } else { diff --git a/endorsed/build.gradle.kts b/endorsed/build.gradle.kts index b8671e60c3..c4806ce7ed 100644 --- a/endorsed/build.gradle.kts +++ b/endorsed/build.gradle.kts @@ -42,6 +42,7 @@ version = "2.0-SNAPSHOT" plugins { `java-library` `maven-publish` +signing id("org.apache.sis.buildtools") } @@ -444,3 +445,26 @@ publishing { } } } + +signing { +useGpgCmd() +if (System.getProperty("org.apache.sis.releaseVersion") != null) { +sign(publishing.publications["util"]) +sign(publishing.publications["metadata"]) +sign(publishing.publications["referencing"]) +sign(publishing.publications["referencing.gazetteer"]) +sign(publishing.publications["feature"]) +sign(publishing.publications["portrayal"]) +sign(publishing.publications["storage"]) +sign(publishing.publications["storage.sql"]) +sign(publishing.publications["storage.xml"]) +sign(publishing.publications["storage.netcdf"]) +sign(publishing.publications["storage.geotiff"]) +sign(publishing.publications["storage.earthobserva
[sis] branch geoapi-4.0 updated: Generate sources JAR and Javadoc JAR together with the Maven artifacts.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git The following commit(s) were added to refs/heads/geoapi-4.0 by this push: new 17c3f73eca Generate sources JAR and Javadoc JAR together with the Maven artifacts. 17c3f73eca is described below commit 17c3f73eca02c394d0897b18176d82ee0d5487cc Author: Martin Desruisseaux AuthorDate: Wed Oct 4 18:10:23 2023 +0200 Generate sources JAR and Javadoc JAR together with the Maven artifacts. --- .../apache/sis/buildtools/gradle/BuildHelper.java | 1 + .../apache/sis/buildtools/gradle/Dependency.java | 2 +- .../apache/sis/buildtools/gradle/ModularJAR.java | 9 +- .../sis/buildtools/gradle/ModularSources.java | 146 + .../apache/sis/buildtools/gradle/ZipWriter.java| 2 +- endorsed/build.gradle.kts | 85 +--- incubator/build.gradle.kts | 15 ++- optional/build.gradle.kts | 5 +- 8 files changed, 240 insertions(+), 25 deletions(-) diff --git a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/BuildHelper.java b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/BuildHelper.java index 729fa33f0e..0408b27a8f 100644 --- a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/BuildHelper.java +++ b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/BuildHelper.java @@ -160,6 +160,7 @@ public final class BuildHelper implements Plugin { }); }); tasks.withType(Jar.class).forEach((task) -> { +task.getInputs().dir(Conventions.SOURCE_DIRECTORY); task.getOutputs().dir(Conventions.fileRelativeToBuild(project, Conventions.LIBS_DIRECTORY)); task.setActions(List.of((t) -> {// Replace the default action by our own. ModularJAR.execute(BuildHelper.this, (Jar) t); diff --git a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/Dependency.java b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/Dependency.java index f05b607943..c4b4ef9f4a 100644 --- a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/Dependency.java +++ b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/Dependency.java @@ -151,7 +151,7 @@ public final class Dependency { } } } -return null; +return name.replace('-', '.'); } /** diff --git a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularJAR.java b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularJAR.java index 72f4be0535..ba1e3b96b3 100644 --- a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularJAR.java +++ b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularJAR.java @@ -81,7 +81,7 @@ final class ModularJAR extends ZipWriter.JDK { * Invoked when the {@code jar} task is executed. * * @param context the extension which is invoking this task. - * @param task the {@link Javadoc} task to configure. + * @param task the {@link Jar} task to configure. */ static void execute(final BuildHelper context, final Jar task) { final Project project= task.getProject(); @@ -106,9 +106,14 @@ final class ModularJAR extends ZipWriter.JDK { } } try { -write(project, module, new File(target, module.getName() + ".jar"), filteredAttributes); +final String name = module.getName(); +write(project, module, new File(target, name + ".jar"), filteredAttributes); +ModularSources.write(task, name, false); +ModularSources.write(task, name, true); } catch (IOException e) { throw new UncheckedIOException(e); +} catch (InterruptedException e) { +throw new RuntimeException(e); } filteredAttributes.clear(); } diff --git a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularSources.java b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularSources.java new file mode 100644 index 00..b07e0cc9ca --- /dev/null +++ b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularSources.java @@ -0,0 +1,146 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + *
[sis] branch geoapi-4.0 updated: Fix some Javadoc warnings.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git The following commit(s) were added to refs/heads/geoapi-4.0 by this push: new c847947bde Fix some Javadoc warnings. c847947bde is described below commit c847947bde095bc7b55544bb6d5d611b7cba4890 Author: Martin Desruisseaux AuthorDate: Tue Oct 3 23:45:15 2023 +0200 Fix some Javadoc warnings. --- .../main/org/apache/sis/filter/sqlmm/OneGeometry.java | 2 ++ .../main/org/apache/sis/filter/sqlmm/ST_Transform.java | 2 ++ .../main/org/apache/sis/filter/sqlmm/TwoGeometries.java | 2 ++ .../org.apache.sis.metadata/main/org/apache/sis/util/iso/Types.java | 5 ++--- .../org/apache/sis/xml/bind/metadata/replace/QualityParameter.java | 6 +++--- .../main/org/apache/sis/referencing/AbstractIdentifiedObject.java | 4 ++-- .../org/apache/sis/referencing/factory/GeodeticObjectFactory.java | 4 ++-- .../main/org/apache/sis/storage/gpx/WritableStore.java | 1 - .../main/org/apache/sis/storage/StorageConnector.java | 2 ++ .../main/org/apache/sis/storage/WritableFeatureSet.java | 1 - .../main/org/apache/sis/converter/NumberConverter.java | 2 ++ .../main/org/apache/sis/converter/ObjectToString.java | 4 .../main/org/apache/sis/converter/StringConverter.java | 4 .../main/org/apache/sis/util/collection/WeakValueHashMap.java | 2 +- .../main/org/apache/sis/util/internal/MetadataServices.java | 2 -- .../main/org/apache/sis/gui/map/ValuesFormatter.java| 2 +- 16 files changed, 29 insertions(+), 16 deletions(-) diff --git a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/filter/sqlmm/OneGeometry.java b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/filter/sqlmm/OneGeometry.java index a64c216bd0..5d26727042 100644 --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/filter/sqlmm/OneGeometry.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/filter/sqlmm/OneGeometry.java @@ -103,6 +103,8 @@ class OneGeometry extends SpatialFunction { /** * SQLMM spatial functions taking a single geometry operand with one argument. + * + * @paramthe type of resources (e.g. {@code Feature}) used as inputs. */ static final class WithArgument extends OneGeometry { /** For cross-version compatibility. */ diff --git a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/filter/sqlmm/ST_Transform.java b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/filter/sqlmm/ST_Transform.java index b53f00f620..15ea2201be 100644 --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/filter/sqlmm/ST_Transform.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/filter/sqlmm/ST_Transform.java @@ -58,6 +58,8 @@ import org.opengis.filter.InvalidFilterValueException; * * @author Johann Sorel (Geomatys) * @author Martin Desruisseaux (Geomatys) + * + * @paramthe type of resources (e.g. {@code Feature}) used as inputs. */ final class ST_Transform extends FunctionWithSRID { /** diff --git a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/filter/sqlmm/TwoGeometries.java b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/filter/sqlmm/TwoGeometries.java index e205ee0e52..1d856296b5 100644 --- a/endorsed/src/org.apache.sis.feature/main/org/apache/sis/filter/sqlmm/TwoGeometries.java +++ b/endorsed/src/org.apache.sis.feature/main/org/apache/sis/filter/sqlmm/TwoGeometries.java @@ -148,6 +148,8 @@ class TwoGeometries extends SpatialFunction { /** * SQLMM spatial functions taking a single geometry operand with one argument. + * + * @paramthe type of resources (e.g. {@code Feature}) used as inputs. */ static final class WithArgument extends TwoGeometries { /** For cross-version compatibility. */ diff --git a/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/util/iso/Types.java b/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/util/iso/Types.java index 236c62eed4..0d19f3ef5d 100644 --- a/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/util/iso/Types.java +++ b/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/util/iso/Types.java @@ -403,9 +403,8 @@ public final class Types extends Static { /** * The {@link InternationalString} returned by the {@code Types.getCodeTitle(…)} method. - * The code below is a duplicated - in a different way - of {@code CodeListUID(CodeList)} - * constructor ({@link org.apache.sis.xml.bind.metadata.code package}). This duplication exists - * because {@code CodeListUID} constructor stores more information in an opportunist way. + * The code below is a duplicated - in a different way - of {@code CodeListUID(CodeList
[sis] 02/02: Replace a link to GeoAPI-snapshot by a link to GeoAPI 3.0.
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/sis.git commit 00e6806277c6a20a43e3d319f91b678d8f88d5dc Author: Martin Desruisseaux AuthorDate: Tue Oct 3 16:12:57 2023 +0200 Replace a link to GeoAPI-snapshot by a link to GeoAPI 3.0. --- .../main/org/apache/sis/buildtools/gradle/ModularJavadoc.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularJavadoc.java b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularJavadoc.java index 63e917813a..6d2f01949d 100644 --- a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularJavadoc.java +++ b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/gradle/ModularJavadoc.java @@ -69,7 +69,7 @@ final class ModularJavadoc extends Conventions { "todo:a:\"TODO:\""); options.links( "https://docs.oracle.com/en/java/javase/11/docs/api;, -"http://www.geoapi.org/snapshot/javadoc;, +"http://www.geoapi.org/3.0/javadoc;, "http://unitsofmeasurement.github.io/unit-api/site/apidocs;); /* * Taglet defined in this `buildSrc` sub-project.
[sis] 01/02: Merge branch 'geoapi-3.1'
This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/sis.git commit 3c3d94aa98c6e15bb65c448c03f506e0a5c375ca Merge: 0c2f9effc0 fba1ecf3f7 Author: Martin Desruisseaux AuthorDate: Tue Oct 3 17:52:18 2023 +0200 Merge branch 'geoapi-3.1' NOTICE | 10 +- README.md | 9 + .../buildtools/coding/VerifyVersionInJavadoc.java | 293 + .../apache/sis/buildtools/gradle/BuildHelper.java | 1 + .../apache/sis/buildtools/gradle/ZipWriter.java| 7 +- endorsed/README.md | 15 ++ endorsed/build.gradle.kts | 2 + .../org.apache.sis.console/main/module-info.java | 18 +- .../apache/sis/metadata/sql/MetadataSource.java| 2 +- .../apache/sis/metadata/sql/util/Initializer.java | 6 +- .../sis/metadata/sql/util/LocalDataSource.java | 2 +- .../src/org.apache.sis.openoffice/bundle/README.md | 2 +- .../referencing/factory/FactoryDataException.java | 5 +- .../factory/MissingFactoryResourceException.java | 1 + .../sis/referencing/factory/sql/EPSGFactory.java | 4 +- .../sis/referencing/factory/sql/EPSG_README.md | 2 +- .../sis/referencing/factory/sql/package-info.java | 2 +- .../operation/provider/DatumShiftGridLoader.java | 3 +- .../sis/referencing/factory/sql/epsg/README.md | 4 +- .../sis/referencing/report/HTMLGenerator.java | 2 +- .../src/org.apache.sis.util/main/module-info.java | 2 +- .../main/org/apache/sis/setup/Configuration.java | 2 +- .../apache/sis/setup/InstallationResources.java| 4 +- .../apache/sis/setup/OptionalInstallations.java| 4 +- incubator/README.md| 10 + optional/README.md | 29 ++ optional/build.gradle.kts | 5 + optional/src/org.apache.sis.gui/bundle/README | 7 +- optional/src/org.apache.sis.gui/bundle/lib/README | 1 + .../src/org.apache.sis.gui/main/module-info.java | 26 +- 30 files changed, 433 insertions(+), 47 deletions(-) diff --cc NOTICE index e8e93764f9,ff3ba0a520..da26da730b --- a/NOTICE +++ b/NOTICE @@@ -5,9 -5,9 +5,9 @@@ This product includes software develope The Apache Software Foundation (https://www.apache.org/). The Javadoc contains documentation from the Open Geospatial Consortium (OGC®) - specifications (https://www.ogc.org/standards/), also known as OpenGIS. + specifications (https://www.ogc.org/standards/), also known as OpenGIS®. -Apache SIS depends on GeoAPI published by OGC under Apache 2.0 license. +Apache SIS depends on GeoAPI published by OGC under BSD-style license. https://www.ogc.org/about-ogc/policies/software-licenses/ Apache SIS depends on JSR-385 (API only) published under BSD license. diff --cc endorsed/src/org.apache.sis.openoffice/bundle/README.md index 39993eeb62,e21a6980b6..ebdcfa6a12 --- a/endorsed/src/org.apache.sis.openoffice/bundle/README.md +++ b/endorsed/src/org.apache.sis.openoffice/bundle/README.md @@@ -83,7 -83,7 +83,7 @@@ Launch ``` cd target - unopkg add apache-sis-1.1-SNAPSHOT.oxt --log-file log.txt -unopkg add apache-sis-1.x-SNAPSHOT.oxt --log-file log.txt ++unopkg add apache-sis-1.4-SNAPSHOT.oxt --log-file log.txt scalc -env:RTL_LOGFILE=log.txt ``` diff --cc endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/factory/sql/epsg/README.md index 73d583a49e,6a90fc4e0b..f7945afcd7 --- a/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/factory/sql/epsg/README.md +++ b/endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/factory/sql/epsg/README.md @@@ -98,7 -98,7 +98,7 @@@ cd _ mvn clean install export CLASSPATH=~/.m2/repository/org/apache/derby/derby/10.14.2.0/derby-10.14.2.0.jar export CLASSPATH=$PWD/core/sis-metadata/target/test-classes:$CLASSPATH - export CLASSPATH=$PWD/target/binaries/sis-referencing-2.0-SNAPSHOT.jar:$CLASSPATH -export CLASSPATH=$PWD/target/binaries/sis-referencing-1.x-SNAPSHOT.jar:$CLASSPATH ++export CLASSPATH=$PWD/target/binaries/sis-referencing-1.4-SNAPSHOT.jar:$CLASSPATH export CLASSPATH=$PWD/core/sis-metadata/target/test-classes:$CLASSPATH export CLASSPATH=$PWD/core/sis-referencing/target/test-classes:$CLASSPATH cd http://svn.apache.org/repos/asf/sis/data/non-free/> diff --cc endorsed/src/org.apache.sis.util/main/module-info.java index 227645d78a,34ebd8ec24..982cf73679 --- a/endorsed/src/org.apache.sis.util/main/module-info.java +++ b/endorsed/src/org.apache.sis.util/main/module-info.java @@@ -34,11 -34,11 +34,11 @@@ * @since 0.3 */ module org.apache.sis.util { - requires java.sql; requires java.management; + requires transitive java.sql; requires transitive java.logging; requires transitive java.meas