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 b5b2ca5b2d47667ea41bcf31245893a7a3cd9472 Author: Martin Desruisseaux <martin.desruisse...@geomatys.com> AuthorDate: Sat Aug 19 15:05:15 2023 +0200 Documentation updates related to recent restructuring: - Replace "master" by "main" branch name. - Update copyright year. - Update reference to header. - Convert README to markdown. - Minor typo fixes and cleanups. --- NOTICE | 6 +- README | 91 --------------------- README.md | 92 ++++++++++++++++++++++ .../apache/sis/buildtools/book/package-info.java | 7 +- .../resources/IndexedResourceCompiler.java | 2 +- .../org/apache/sis/cloud/aws/s3/KeyPathTest.java | 6 -- .../org/apache/sis/internal/jaxb/lan/Country.java | 2 +- .../org/apache/sis/metadata/iso/APIVerifier.java | 4 +- .../apache/sis/metadata/iso/api-changes.properties | 2 +- .../sis/util/collection/CodeListSetTest.java | 26 +++--- geoapi/README.md | 4 +- netbeans-project/README.md | 4 +- netbeans-project/nbproject/project.properties | 2 +- .../test/module-info.java | 4 +- optional/src/org.apache.sis.gui/bundle/README | 2 +- parent/LicenseHeader.txt | 16 ---- 16 files changed, 124 insertions(+), 146 deletions(-) diff --git a/NOTICE b/NOTICE index adabad6480..aedd21ff11 100644 --- a/NOTICE +++ b/NOTICE @@ -1,5 +1,5 @@ Apache Spatial Information System (SIS) -Copyright 2010-2022 The Apache Software Foundation +Copyright 2010-2023 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (https://www.apache.org/). @@ -7,8 +7,8 @@ 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. -Apache SIS depends on GeoAPI published by OGC under BSD-style license. -https://www.ogc.org/ogc/software/1.0 +Apache SIS depends on GeoAPI published by OGC under Apache 2.0 license. +https://www.ogc.org/about-ogc/policies/software-licenses/ Apache SIS depends on JSR-385 (API only) published under BSD license. https://jcp.org/en/jsr/detail?id=385 diff --git a/README b/README deleted file mode 100644 index 309a01c880..0000000000 --- a/README +++ /dev/null @@ -1,91 +0,0 @@ -============================================== -Welcome to Apache SIS <https://sis.apache.org> -============================================== - -SIS is a Java language library for developing geospatial applications. -The library is an implementation of GeoAPI 3.0.2 interfaces and can be used -for desktop or server applications. Apache SIS provides data structures for -geographic features and associated metadata along with methods to manipulate -those data structures. The SIS metadata module forms the base of the library -and enables the creation of metadata objects which comply with the ISO 19115 -international standard. The SIS referencing module enable the construction of -geodetic data structures for geospatial referencing as defined by ISO 19111 -standard, along with the associated operations which enable the transformation -of coordinates between different reference systems. The SIS storage modules -provide a common approach to the reading and writing of metadata, features and -coverages applicable to simple imagery as to many dimensional data structures. - -SIS is a project of the Apache Software Foundation <https://www.apache.org/>. - -Apache SIS, SIS, Apache, the Apache feather logo, and the Apache SIS -project logo are trademarks of The Apache Software Foundation. - - -Getting Started -=============== - -Running the library part of Apache SIS requires Java 11 or higher. -Running the JavaFX application part requires Java 16 or higher. -Building SIS requires Java 18 or higher -together with Maven 3 <https://maven.apache.org/> build system. -To build SIS, use the following command in this directory: - - mvn install - -Information for running a command-line tool can be found on the web site: -(<https://sis.apache.org/command-line.html>) - - -License (see also LICENSE) -========================== - -Collective work: Copyright 2010-2022 The Apache Software Foundation. - -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. - -Some Apache SIS subcomponents have dependencies subject to different -license terms. All those dependencies except GeoAPI, JSR-385 and JAXB API -are optional. Your use of those dependencies is subject to the terms and -conditions of the licenses listed in the NOTICE file. - - -Mailing Lists -============= - -Discussion about SIS takes place on the following mailing lists: - - u...@sis.apache.org - About using SIS - d...@sis.apache.org - About developing SIS - -Notification on all code changes are sent to the following mailing list: - - commits@sis.apache.org - -The mailing lists are open to anyone and publicly archived. - -You can subscribe the mailing lists by sending a message to -<LIST>-subscr...@sis.apache.org (for example user-subscribe@...). -To unsubscribe, send a message to <LIST>-unsubscr...@sis.apache.org. -For more instructions, send a message to <LIST>-h...@sis.apache.org. - - -Issue Tracker -============= - -If you encounter errors in SIS or want to suggest an improvement or -a new feature, please visit the SIS issue tracker at -https://issues.apache.org/jira/browse/SIS There you can also find the -latest information on known issues and recent bug fixes and enhancements. diff --git a/README.md b/README.md new file mode 100644 index 0000000000..2289a852d7 --- /dev/null +++ b/README.md @@ -0,0 +1,92 @@ +# Apache Spatial Information System (SIS) + +Apache SIS is a Java language library for developing geospatial applications. +The library is an implementation of [OGC GeoAPI 3.0.2](http://www.geoapi.org/) +interfaces and can be used for desktop or server applications. SIS provides data +structures along with methods derived from the following international standards: + +* Metadata — ISO 19115-1, ISO 19115-2, ISO 19115-3, ISO 19157 +* Referencing — ISO 19111, ISO 19111-2, ISO 19112, OGC 01-009 +* Features and filters — ISO 19109, ISO 19143 +* Units of measurement — ISO 19103, JSR 385 +* Data formats: + * GeoTIFF — OGC 19-008 + * NetCDF — OGC 10-092, OGC 16-114 + * XML and GML — ISO 19139, ISO 19136, OGC 01-009 + * WKT (Well-Known Text) — ISO 19162 + * CSV (Comma-separated values) — OGC 14-084 + +See the https://sis.apache.org/ web site for more information +and a more accurate list of standards. + +SIS is a project of the [Apache Software Foundation](https://www.apache.org/). +Apache SIS, SIS, Apache, the Apache feather logo, and the Apache SIS +project logo are trademarks of The Apache Software Foundation. + + +## Getting Started + +Running the library part of Apache SIS requires Java 11 or higher. +Running the JavaFX application part requires Java 16 or higher. +Building SIS requires Java 18 or higher +together with [Gradle](https://gradle.org/) build system. +To build SIS, use the following command in this directory: + + gradle assemble + +Information for running a [command-line tool](https://sis.apache.org/command-line.html) +or an [optional JavaFX application](https://sis.apache.org/javafx.html) +can be found on the web site. + + +## License (see also LICENSE) + +Collective work: Copyright 2010-2023 The Apache Software Foundation. + +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. + +Some Apache SIS subcomponents have dependencies subject to different +license terms. All those dependencies except GeoAPI, JSR-385 and JAXB API +are optional. Your use of those dependencies is subject to the terms and +conditions of the licenses listed in the NOTICE file. + + +## Mailing Lists + +Discussion about SIS takes place on the following mailing lists: + +* u...@sis.apache.org — about using SIS +* d...@sis.apache.org — about developing SIS + +Notification on all changes are sent to the following mailing lists: + +* commits@sis.apache.org — about code changes +* iss...@sis.apache.org — about issue changes + +The mailing lists are open to anyone and publicly archived. +You can subscribe the mailing lists by sending a message to +_list_-subscr...@sis.apache.org (for example user-subscribe@…). +To unsubscribe, send a message to _list_-unsubscr...@sis.apache.org. +For more instructions, send a message to _list_-h...@sis.apache.org. + + +## Issue Tracker + +If you encounter errors in SIS or want +to suggest an improvement or a new feature, please visit the +[SIS issue tracker](https://issues.apache.org/jira/browse/SIS). +There you can also find the latest information on known issues +and recent bug fixes and enhancements. diff --git a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/book/package-info.java b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/book/package-info.java index a4b5372b94..6902403f8e 100644 --- a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/book/package-info.java +++ b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/book/package-info.java @@ -23,9 +23,8 @@ * Other classes are helper classes that should be ignored. Assuming the following directory layout:</p> * * <pre><current directory> - * ├─ master - * │ └─ core - * │ └─ sis-build-helper + * ├─ main + * │ └─ buildSrc * └─ site * ├─ main * │ └─ content @@ -35,7 +34,7 @@ * * Then the command can be used as below on Unix systems: * - * <pre>java -classpath master/core/sis-build-helper/target/classes org.apache.sis.buildtools.book.Assembler site</pre> + * <pre>java -classpath main/build/classes/java/main org.apache.sis.buildtools.book.Assembler site</pre> * * <h2>Future evolution</h2> * We may replace (at least partially) this tools by some more advanced open-source alternatives. diff --git a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/resources/IndexedResourceCompiler.java b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/resources/IndexedResourceCompiler.java index 872158b366..ce09f65311 100644 --- a/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/resources/IndexedResourceCompiler.java +++ b/buildSrc/src/org.apache.sis.buildtools/main/org/apache/sis/buildtools/resources/IndexedResourceCompiler.java @@ -229,7 +229,7 @@ public class IndexedResourceCompiler { /** * Recursively scans the source directory and finds all Java classes having a property files of the same name. * Then invokes the resource compiler for those files by calls to {@link #onJavaSource(File)}. - * Property files that can not be compiled are linked or copied verbatim to the destination directory. + * Property files that cannot be compiled are linked or copied verbatim to the destination directory. * * @return the number of logical errors found in properties. * @throws IOException if an error occurred while reading or writing a file. diff --git a/endorsed/src/org.apache.sis.cloud.aws/test/org/apache/sis/cloud/aws/s3/KeyPathTest.java b/endorsed/src/org.apache.sis.cloud.aws/test/org/apache/sis/cloud/aws/s3/KeyPathTest.java index d5e5517206..d67ce5a4be 100644 --- a/endorsed/src/org.apache.sis.cloud.aws/test/org/apache/sis/cloud/aws/s3/KeyPathTest.java +++ b/endorsed/src/org.apache.sis.cloud.aws/test/org/apache/sis/cloud/aws/s3/KeyPathTest.java @@ -16,7 +16,6 @@ */ package org.apache.sis.cloud.aws.s3; -import java.net.URI; import java.nio.file.Path; import java.util.Iterator; import org.junit.Test; @@ -34,11 +33,6 @@ import static org.junit.Assert.*; * @since 1.2 */ public final class KeyPathTest extends TestCase { - /** - * A URI to use for testing purpose. - */ - static final URI DUMMY_URI = URI.create("S3://the-bucket/first/second/third/the-file"); - /** * The file system used in for the test paths. */ diff --git a/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/internal/jaxb/lan/Country.java b/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/internal/jaxb/lan/Country.java index f5923c42d5..bb1c116b83 100644 --- a/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/internal/jaxb/lan/Country.java +++ b/endorsed/src/org.apache.sis.metadata/main/org/apache/sis/internal/jaxb/lan/Country.java @@ -16,7 +16,6 @@ */ package org.apache.sis.internal.jaxb.lan; -import org.apache.sis.internal.jaxb.cat.CodeListUID; import java.util.Locale; import jakarta.xml.bind.annotation.XmlType; import jakarta.xml.bind.annotation.XmlElement; @@ -24,6 +23,7 @@ import org.apache.sis.util.CharSequences; import org.apache.sis.internal.jaxb.Context; import org.apache.sis.internal.jaxb.FilterByVersion; import org.apache.sis.internal.xml.LegacyNamespaces; +import org.apache.sis.internal.jaxb.cat.CodeListUID; import org.apache.sis.internal.jaxb.gco.GO_CharacterString; import org.apache.sis.internal.jaxb.gco.CharSequenceAdapter; import org.apache.sis.internal.util.Strings; diff --git a/endorsed/src/org.apache.sis.metadata/test/org/apache/sis/metadata/iso/APIVerifier.java b/endorsed/src/org.apache.sis.metadata/test/org/apache/sis/metadata/iso/APIVerifier.java index f81de5120f..8c4adeed26 100644 --- a/endorsed/src/org.apache.sis.metadata/test/org/apache/sis/metadata/iso/APIVerifier.java +++ b/endorsed/src/org.apache.sis.metadata/test/org/apache/sis/metadata/iso/APIVerifier.java @@ -45,8 +45,8 @@ import static org.junit.Assert.*; * * <p>The content of the {@code api-changes.properties} files is typically empty on Apache SIS * branches that use a snapshot version of GeoAPI, thus making this test a no-op. However, the - * {@code api-changes.properties} file content is non-empty on master if the GeoAPI release used - * by the master branch is behind the snapshot developments.</p> + * {@code api-changes.properties} file content is non-empty on the main branch if the GeoAPI + * release used by the main branch is behind the snapshot developments.</p> * * @author Martin Desruisseaux (Geomatys) * @version 0.5 diff --git a/endorsed/src/org.apache.sis.metadata/test/org/apache/sis/metadata/iso/api-changes.properties b/endorsed/src/org.apache.sis.metadata/test/org/apache/sis/metadata/iso/api-changes.properties index 8476d40cfe..a1687d2058 100644 --- a/endorsed/src/org.apache.sis.metadata/test/org/apache/sis/metadata/iso/api-changes.properties +++ b/endorsed/src/org.apache.sis.metadata/test/org/apache/sis/metadata/iso/api-changes.properties @@ -6,7 +6,7 @@ # This properties file is automatically generated by a comparison between the GeoAPI # 3.0 and 3.1 JAR files, with minor manual editions. This file is used for checking # annotation validity in Apache SIS implementation. This file should be empty in SIS -# branches implementing latest GeoAPI snapshots, and may be non-empty on the master +# branches implementing latest GeoAPI snapshots, and may be non-empty on the main branch # when the changes are not yet incorporated in a standard release. # # Legend: diff --git a/endorsed/src/org.apache.sis.util/test/org/apache/sis/util/collection/CodeListSetTest.java b/endorsed/src/org.apache.sis.util/test/org/apache/sis/util/collection/CodeListSetTest.java index 7cd4b7f0b0..928c959fb9 100644 --- a/endorsed/src/org.apache.sis.util/test/org/apache/sis/util/collection/CodeListSetTest.java +++ b/endorsed/src/org.apache.sis.util/test/org/apache/sis/util/collection/CodeListSetTest.java @@ -237,32 +237,32 @@ public final class CodeListSetTest extends TestCase { */ @Test public void testLargeCodeList() { - final Set<LargeCodeList> master = new HashSet<>(Arrays.asList(LargeCodeList.values())); - assertTrue("This test requires more than 64 elements.", master.size() > Long.SIZE); + final Set<LargeCodeList> main = new HashSet<>(Arrays.asList(LargeCodeList.values())); + assertTrue("This test requires more than 64 elements.", main.size() > Long.SIZE); final CodeListSet<LargeCodeList> c = new CodeListSet<>(LargeCodeList.class); /* - * Copy all content from the master to the CodeListSet. This will indirectly + * Copy all content from the `main` to the CodeListSet. This will indirectly * test CodeListSet.add(E), through the AbstractSet.addAll(Collection) method. */ - assertTrue(c.addAll(master)); - assertEquals(master.size(), c.size()); - assertEquals(master, c); - assertFalse("Invoking a second time should not make any difference.", c.addAll(master)); + assertTrue(c.addAll(main)); + assertEquals(main.size(), c.size()); + assertEquals(main, c); + assertFalse("Invoking a second time should not make any difference.", c.addAll(main)); /* * Keep a copy of the set before we modify it. */ final CodeListSet<LargeCodeList> clone = c.clone(); assertNotSame("Clone shall be a new instance.", c, clone); - assertEquals("Clone shall be equal to the original.", master, clone); + assertEquals("Clone shall be equal to the original.", main, clone); assertEquals(clone, new CodeListSet<>(LargeCodeList.class, true)); /* * Tests contains(Object) and remove(Object). We also remove elements - * from the master set, then we verify that the result is the same. + * from the `main` set, then we verify that the result is the same. */ LargeCodeList lastRemoved = null; final Random random = new Random(); do { - for (final Iterator<LargeCodeList> it=master.iterator(); it.hasNext();) { + for (final Iterator<LargeCodeList> it=main.iterator(); it.hasNext();) { final LargeCodeList code = it.next(); assertTrue(code.name(), c.contains(code)); if (random.nextBoolean()) { @@ -270,7 +270,7 @@ public final class CodeListSetTest extends TestCase { assertFalse(code.name(), c.contains(code)); it.remove(); lastRemoved = code; - if (master.size() == 1) { + if (main.size() == 1) { // Very unlikely, but let be safe since the tests // after the look require at least one element. break; @@ -278,7 +278,7 @@ public final class CodeListSetTest extends TestCase { } } } while (lastRemoved == null); - assertEquals(master, c); + assertEquals(main, c); assertFalse(c.isEmpty()); /* * Test containsAll(Collection) and removeAll(Collection). @@ -288,7 +288,7 @@ public final class CodeListSetTest extends TestCase { assertTrue ("Original set minus one element.", clone.remove(lastRemoved)); assertTrue ("Add an element to be ignored by removeAll(…).", c.add(lastRemoved)); assertTrue ("Remove all elements found in the decimated set.", clone.removeAll(c)); - assertTrue ("Expect no common elements.", Collections.disjoint(master, clone)); + assertTrue ("Expect no common elements.", Collections.disjoint(main, clone)); assertFalse("Invoking a second time should not make any difference.", clone.removeAll(c)); /* * Test retainAll(Collection). diff --git a/geoapi/README.md b/geoapi/README.md index 3dd08237a4..95096d4d2c 100644 --- a/geoapi/README.md +++ b/geoapi/README.md @@ -4,7 +4,7 @@ The Apache SIS source code repository has two branches, named `geoapi-3.1` and ` which depend on [GeoAPI](https://www.geoapi.org/) versions that are still in development. Those GeoAPI versions are not deployed on Maven Central, because they are not yet officially approved OGC releases. The Apache SIS branches that use those versions are never deployed on Maven Central neither. -Official Apache SIS releases are made from the `master` branch, which depends on the standard GeoAPI 3.0.2 release only. +Official Apache SIS releases are made from the `main` branch, which depends on the standard GeoAPI 3.0.2 release only. The Apache SIS `geoapi-3.1` and `geoapi-4.0` branches are nevertheless useful for testing latest GeoAPI developments. The implementation experience gained is used for adjusting the GeoAPI interfaces before submission as an OGC standard. @@ -27,6 +27,6 @@ which is necessary for keeping the Apache SIS code in sync with the GeoAPI snaps git pull --recurse-submodules ``` -## Prerequites +## Prerequisites Maven must be available on the classpath. The GeoAPI snapshot is built by a call to `mvn clean install`. diff --git a/netbeans-project/README.md b/netbeans-project/README.md index 2e454134f6..31afc1b268 100644 --- a/netbeans-project/README.md +++ b/netbeans-project/README.md @@ -33,10 +33,10 @@ javafx.module.path=${PATH_TO_FX}/lib ### GeoAPI 3.1/4.0 development branches -If developing on the `geoapi-3.1` or `geoapi-4.0` branch instead of `master`, +If developing on the `geoapi-3.1` or `geoapi-4.0` branch instead of `main`, then `gradle compileJava` should be executed on the command-line before to open the NetBeans project, in order to install the right GeoAPI development -snapshot. This step is not necessary if developing on the `master` branch. +snapshot. This step is not necessary if developing on the `main` branch. ## Known limitations diff --git a/netbeans-project/nbproject/project.properties b/netbeans-project/nbproject/project.properties index 1e90ed368a..3ba27a93dd 100644 --- a/netbeans-project/nbproject/project.properties +++ b/netbeans-project/nbproject/project.properties @@ -23,7 +23,7 @@ application.vendor = Apache application.homepage = https://sis.apache.org/ application.desc = Apache SIS is a free software, Java language library for developing geospatial applications. project.license = apache20 -project.licensePath = ../parent/LicenseHeader.txt +project.licensePath = ../HEADER work.dir = ${build.dir} source.encoding = UTF-8 javac.source = 16 diff --git a/netbeans-project/src-local/org.apache.sis.test.uncommitted/test/module-info.java b/netbeans-project/src-local/org.apache.sis.test.uncommitted/test/module-info.java index e9e06e78e4..e1b8f5098a 100644 --- a/netbeans-project/src-local/org.apache.sis.test.uncommitted/test/module-info.java +++ b/netbeans-project/src-local/org.apache.sis.test.uncommitted/test/module-info.java @@ -1,7 +1,7 @@ /** * A dummy module for performing tests in a NetBeans environment. - * This module imports all Apache SIS endorsed modules for making - * easy to test any feature. + * This module imports all Apache SIS modules for making easy to + * test any feature. * * <p>This module is <em>not</em> versioned. It is ignored by Git, * except for this {@code module-info} and one {@code package-info}. diff --git a/optional/src/org.apache.sis.gui/bundle/README b/optional/src/org.apache.sis.gui/bundle/README index d51feb0e69..113570835a 100644 --- a/optional/src/org.apache.sis.gui/bundle/README +++ b/optional/src/org.apache.sis.gui/bundle/README @@ -39,7 +39,7 @@ range of file formats like NcML files. License (see also LICENSE) ========================== -Collective work: Copyright 2010-2022 The Apache Software Foundation. +Collective work: Copyright 2010-2023 The Apache Software Foundation. Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with diff --git a/parent/LicenseHeader.txt b/parent/LicenseHeader.txt deleted file mode 100644 index 2944f98194..0000000000 --- a/parent/LicenseHeader.txt +++ /dev/null @@ -1,16 +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. - */