This is an automated email from the ASF dual-hosted git repository.

jsorel pushed a change to branch feat/exportableTransform
in repository https://gitbox.apache.org/repos/asf/sis.git


 discard cb366ebe13 Add ExportableTransform interface
     add 97a7d215f4 Avoid a raster copy in gimi MatrixGridResource
     add 14c6715972 Avoid recomputing matrix grid geometry, fix matrix 
transform alignement
     add 7bdaab6a29 Decode OGR vector layers, rebuild FeatureTypes
     add 1c959654f2 Cache loaded tiles in GIMI resource
     add 2448d007cd Add converters between strings to various kinds of 
`java.time` objects. This is needed by `SQLStore` when a column is mapped to 
e.g. `LocalDate`.
     add 5e694bfb26 Fix a DataStoreException about duplicated identifier when a 
table contains 2 foreigner keys referencing the same table. 
https://issues.apache.org/jira/browse/SIS-606
     add e9389778e3 Fix beamFlags and qualityFlags in GSF decoder
     add 34665ed53e Review the GDAL/OGR bindings. - Resolve memory leaks in 
allocation of native memory segments. - Complete the support of GDAL field 
types: dates, lists and raw binary. - Support of Z and M coordinate values in 
points, line-strings and polygons. - Better integration in SIS and reuse of 
existing classes (GeometryType, ByteOrder). - Remove the direct dependency on 
JTS for the geometry types (allow ESRI and S2 too). - Prepare for more 
efficient feature instantiations by rea [...]
     add 5437963714 Minor cleanups: * Fix wrong class name in documentation: 
ReferencingFactory → WKTDictionary * Add a missing `synchronized` keyword on 
`WorldFileStore.getFileSet()`.
     add cccbaee7b7 Merge branch 'geoapi-4.0' into geoapi-3.1. Contains a 
correction in the SQL data store and addition of OGR support in the binding to 
GDAL.
     add a833e1da47 Merge branch 'geoapi-3.1'
     add 0af37a0472 Post-merge automatic reorganization of imports order.
     add 1531118a77 Merge branch 'geoapi-4.0': automatic reorganization of 
imports.
     add 2cfb383a96 Merge branch 'geoapi-4.0' into geoapi-3.1
     add 90a499a32d Resolve a "unspecified CRS" exception when reading a 
GeoTIFF with a three-dimensional CRS (a geographic or projected CRS + a 
vertical CRS on user-defined datum).
     add afb365202e Make the code more SecurityException-proof. This commit 
does not introduce new dependency since the Apache SIS code already had some 
`catch (SecurityException)` statements. While the security manager is removed 
in Java 24, SIS can run on Java 11 and some softwares are still running in 
security-constrained environments. This commit will be reverted when Apache SIS 
will require Java 24, or when the `SecurityException` class will be deprecated.
     add 416551cdc7 Add a public `Configuration.shutdown()` method.
     add 7a696fe83a Change the order of `AxesConvention` enumeration values 
from most conservative to most aggressive.
     add 66809d27ae Handle empty files as non-existent files when opening a 
`DataStore` in write mode. This is needed because when requesting a temporary 
file, an empty file is created.
     add e93449f33c Document an extra step needed for a more complete shutdown 
of the system.
     add 6cdeffb8f5 Add a `DataStores.open(Object, String)` method which allows 
to specify the preferred data store implementation.
     add 56de57f5b7 Add a `GridGeometry.getOrigin()` method.
     add e76f36ff59 Avoid a NullPointerException when a GeoTIFF file has 
incomplete georeferencing information.
     add a1b220381e Relax the check for the number of dimensions when the grid 
coverage has less dimensions than expected. Normally, the number of dimensions 
of the tiles should be equal to the number of dimensions declared in the grid 
extent. However, it happens sometime that the `TiledGridResource` is a two 
dimensional image associated to a three-dimensional CRS. This is not 
recommended, but can happen with GeoTIFF for example. What to do with the extra 
dimensions is unclear (the GeoTIF [...]
     add 08710309d3 Upgrade GeoAPI snapshot version. Contains the addition of 
`getReferenceSystemType()` method. This upgrade fixes 
https://issues.apache.org/jira/browse/SIS-470
     add bbe24a2fba Better checks of SampleModel properties before to write a 
GeoTIFF file.
     add 08e4257586 Better checks of ColorModel properties before to write a 
GeoTIFF file.
     add f42386f4e9 Rename `ColorModelBuilder` as `ColorScaleBuilder` for 
reflecting the fact that it is about indexed color model, and for making the 
`ColorModelBuilder` name available for a builder for other cases.
     add c9a672132b Move the `createPackedRGB(…)` and createBandedRGB(…)` 
methods in a new `ColorModelBuilder` class. In gives more flexibility for 
configuring the RGB color model to create.
     add 61589faccb Rename `MultiSourceLayout` and `BandAggregateLayout` for 
making clear that this is about band aggregate only rather than all 
multi-source image.
     add acdc884394 Add an image overlay operation in `ImageProcessor`.
     add 6a22d7e5e9 If an image does not fit the requirement of the TIFF 
specification, reformat the image before to write it in a TIFF file.
     add aeaadf2f05 GeoTIFF writer should throw an exception instead of logging 
a warning when the CRS or the "grid to CRS" transform cannot be encoded.
     add 65d1d016d1 In case of error while writing a GeoTIFF file, restore the 
file to its previous state.
     add a95fbd4ab4 Allow GeoTIFF writer to encode "grid to CRS" where the 
vertical component is non-linear.
     add ae291c6dec Delete leftover temporary files during Geopackage test.
     add 78771af452 Avoid triple-slash for starting a comment, because they are 
reserved for Markdown in latest Java versions.
     add 11790ff20e Accept also regions encoded as character strings instead of 
as an instance of the Region class.
     add 97f67d1dc8 Revisit the S3 documentation for reducing a confusion about 
what S3 call "key". In the context of Apache SIS, a S3 "key" is interpreted as 
a file path. Furthermore, "key" was too easily confused with "access key".
     add 72ce0be904 Upgrade Amazon S3 dependency from 2.26.24 to 2.29.37.
     add 0173414d34 `Extents.getVerticalRange(…)` may throw an exception when a 
value is NaN.
     add ed889b8433 Fix an `IndexArrayOutOfBoundsException` when reading a 
GeoTIFF with a three-dimensional CRS.
     add 6718873520 Add the netCDF attribute names of Mercator data (from 
Copernicus) as an alternative convention when CF attributes were not found. 
Those alternatives are ignored when CF attributes are found.
     add 076c21a2c1 Add a `PlanarImage.getValidArea()` method. `ResampledImage` 
computes this information by reprojecting the valid area of the source.
     add 4349cc81c8 More accurate checks by `ImageOverlay` of which sources are 
worth to keep. This is using the `getValidArea()` method added in the previous 
commit.
     add 8c9c31766b Fix: calculation of contributions in `ImageOverlay` was too 
large. Edit documentation by saying that each image is fully opaque.
     add 1b0067787b Remove the `horizontal` boolean argument in 
`ShapeUtilities.parabolicControlPoint(…)`. It was never used.
     add 69eedf135e Move three `ImageLayout` constants to the classes where 
they are used. Opportunistic renaming of a field for clarity and rewording in 
Javadoc. This is in preparation for moving `ImageLayout` to public API.
     add cc2e967908 Retrofit user-provided arguments as `ImageLayout` 
properties: - The `allowPartialTiles` argument given to `ImageLayout` methods. 
- The `ImageProcessor.autoTileSize` field.
     add e0d5eb16e4 Move `ImageLayout` to public API. The intend is to use it 
as a replacement for `SampleModel` and `ColorModel` arguments in 
`ImageProcessor`.
     add 226c9c5706 Deprecate `ImageProcessor.Resizing`, replaced by 
`ImageLayout`.
     add 49945796f4 Retrofit the `minTile` property of two `ImageLayout` 
subclasses into `ImageLayout` directly.
     add b9f98ce7e1 Add `SampleModel` and `ColorModel` properties into 
`ImageLayout` in replacement for optional arguments given to image processor.
     add 8018b22551 Remove the `ColorModel` property from `ImageLayout` for 
avoiding an overlap with `Colorizer`.
     add 2a7346399c Consolidation in the way that a sample model is created 
from an `ImageLayout` for an image operation. Some `int` arguments are replaced 
by more type-safe objects such as `DataType` or `Dimension`.
     add bb8db50cd2 `BandAggregateLayout` does not need anymore to extend 
`ImageLayout`. This simplication makes easier to complete the constructor, for 
example with the concatenated list of sample dimensions.
     add 482e27bf24 Consolidation of the handling of 
`PlanarImage.SAMPLE_DIMENSIONS_KEY`: - Document that some elements may be null, 
and adjust codes accordingly. - Ensure that `ImageProcessor.statistics(…)` 
never return null values. - Change some internal from `SampleDimensions[]` to 
`List<SampleDimension>`.   It reduces the number of conversions between those 
two types.
     add 49f489db9e Fix an `IndexOutOfBoundsException` when fetching netCDF 
metadata. Adjust the title of GeoTIFF file declared in metadata.
     add cb303c4705 Document the relationship between `ImageCombiner` and 
`ImageProcessor.overlay(…)`.
     add 9160018564 Merge branch 'geoapi-4.0' into geoapi-3.1. Contains bug fix 
related to GeoTIFF and other formats. Contains a new "overlay" image operation 
and improvement in the handling of image properties in "band aggregate" 
operation.
     add 84a6d62055 Merge branch 'geoapi-3.1'
     add 8fdc1e93a3 Rename `SampleModelFactory` as `SampleModelBuilder` 
(internal class).
     add 85b775cfa2 Move the `org.apache.sis.coverage.privy` classes related to 
image handling to a separated `org.apache.sis.image.privy` package. This is 
change in SIS internal only, with no impact on public API. This commit has no 
code change other than the move.
     add 8c6d8cca43 Remove a duplicated localized resource.
     add 630a996a08 Merge branch 'geoapi-4.0' into geoapi-3.1. Contains only 
class or package renaming.
     add 4bd7092a20 Merge branch 'geoapi-3.1'
     add 4049ee5d82 Add a DataType.UINT type for distinguishing whether Java2D 
`DataBuffer.TYPE_INT` should be interpreted as signed or unsigned. The sign of 
the integer type is ambiguous in Java2D, as it depends on the context. Methods 
were added in `DataType` for handling this ambiguity.
     add 8ddfe3bb09 Slight simplification of `DataType` usage when mapping to 
Java primitive types.
     add 6ff4ff2fa9 Add a `GeoTiffStoreProvider.open(ParameterValueGroup)` 
method for taking in account the compression and modifiers parameters.
     add 37ca8154b9 Replace usage of legacy `StringTokenizer` by 
`String.split(…)` or alternatives.
     add afa573ef65 Detect name collision in the fields reported by GDAL. It 
happens for example when using the Shapefile driver, because field names are 
truncated to 10 characters.
     add 4c5563faad Merge branch 'geoapi-4.0' into geoapi-3.1
     add ae65a8be08 Merge branch 'geoapi-3.1'
     add 06ac1e9b3d Fix a wrong license header. This is one of the numerous 
files that we ported from the Geotk project, and we forgot to change the header 
of that one.
     add 06fc3757ff Implement the `getFileSet()` method in `GeoTiffStore`.
     add 93b7969729 Upgrade GeoAPI version for resolving a test failure during 
GeoAPI build.
     add b6025b282d Remove an identifier wrongly associated to format 
specification in metadata.
     add 4006d7b477 Fix a NullPointerException in portrayal (incubator).
     add 387c4e1001 Fix shapefile record reader not skipping trailing bytes
     add b294df8a45 Add style painter declaration in META-INF
     add f19ffb083d Add clarification in documentations related to image 
operations. Update of the link to GeoTIFF specification in metadata, replacing 
OSGeo track by OGC web site. Add a `Strings.appendWithHeuristic(…)` internal 
method for some `toString()` implementations. The rest of this commit contains 
some usages of `var` in place of redundant type declarations.
     add 4e446feef3 More clarification and control on the characteristics (cell 
area/center, rounding mode) of transformation of grid extent between grid 
geometries. As a side-effect of this work, add a 
`GridGeometry.contains(GridGeometry)` and related methods (used mostly for 
assertions at this time). The above are used for identifying and fixing an 
erroneous offset in the use of the GDAL data store.
     add 0196e6e12b Update JTS version to 1.20.0
     add ddb1c86630 Fix a NullPointerException with HDF5 files having unnamed 
dimensions.
     add 3f88ee02c2 Add an "opaque overlay" merge strategy for 
`CoverageAggregator`. Detect automatically when the "slices" are actually tiles 
in a mosaic, in which case the the "opaque overlay" strategy can be 
automatically selected. Improves `ImageOverlay` implementation for avoiding to 
copy tiles when possible.
     add 4be2f9fa8f Add a `Locale` argument to 
`MetadataBuilder.parseLegalNotice(…)`. Opportunistic code refactoring related 
to `InternationalString`.
     add 8c31b5d538 Add a `readNullTerminatedString(Charset)` method in 
`ChannelDataInput`.
     add fbaf9c4b0c Relax the interface implemented by `ByteRangeChannel`. This 
is for making easier to implement wrappers around other channels that are not 
sure to be seekable.
     add 8203b0337b Provide default method in `TreeTable.Node` interface for 
unmodifiable nodes.
     add 0cc353e119 Complete the translation (or "grid shift") methods by 
convenience methods doing the translation in the reverse direction. It avoids 
the need for the caller to negate the value, and in extreme case can avoid an 
integer overflow.
     add 62afc80973 Add methods in `GridDerivation` for providing more 
information on the subsampling.
     add cd3eb5eaf8 Move `ReshapedImage` to an internal package for reuse by 
other modules, and add a constructor for creating a translated image. It will 
be needed for work on aggregation in later commit.
     add a7888b6e69 Javadoc and minor cleaning.
     add 9ee2b4da8f Improve `CoverageAggregator` for better support of image 
mosaic, including when a subsampling is requested. A difficulty is that 
`GridCoverageResource` can read a coverage with a subsampling different than 
requested, and there is no guarantee that the different tiles in a mosaic will 
choose the same subsampling factors.
     add 2a8655e255 Change of axis order in GeoTIFF writer should accept 
directions such as "North along 90°E".
     add d7d2aed41e Fix an `AssertionError` when writing a 
`MultiPixelPackedSampleModel`.
     add 2b04bd8532 Fix a `NullPointerException` in the JavaFX application.
     add 628fa843c5 Make the JavaFX application easier to launch with the 
optional UCAR netCDF library.
     add f63533fbb6 Improves the encoding of map projection in GeoTIFF files: * 
Fix the missing EPSG code for prime meridian. * Replace "Pseudo-Sinusoidal" by 
"Sinusoidal".
     add f797799d32 Missing translation when writing a GeoTIFF file with grid 
coordinates that do not start at zero.
     add 64feb29631 Merge branch 'geoapi-4.0' into geoapi-3.1
     add fed83f0af1 Merge branch 'geoapi-3.1'
     add 6b10062195 Cleanup (use of existing methods, formatting).
     add b33e87aa76 Support ISO 19162:2019 keyword for GeographicCRS as parsing 
time. This is not a real upgrade of WKT 2 support, only a help for a common 
case.
     add ceda4f9ca2 Try to make the warning a little bit more accurate in 
netCDF data store. When the CRS is declared in different ways, verify that they 
are consistent. Store enumeration values on 64 bits integers instead of 32 
bits, because they are sometime bitmask with values that require 32 bits 
unsigned integers.
     add 68225b78a9 Fix an exception in the creation of a concatenated 
operation when one of the steps has different source and target CRS but 
nevertheless an identity transform.
     add 0ec29ad1eb Fix an exception when metadata in a TIFF file declare a 
resolution of 0.
     add 4cb1bd2a20 Add a fallback when the identifier is null while formatting 
an error message.
     add 22378d7a3f Consolidation of previous commit: regroup in the same class 
all the fields used for creating the identifier.
     add 7c0bba0243 Do not interpret as authorities the code spaces that are 
filenames. We do that by adding a method in `Citations` which returns a value 
only for known authorities.
     add ab515ea614 Accept materialized views in SQL queries.
     add aa27c5dff7 Add internal utility methods which will be needed for 
GeoHEIF: - For using arrays of long as keys in a hash map. - For aligning pixel 
coordinates to tiles border.
     add b925009bef Make color model and sample model builders more flexible in 
preparation for GeoHEIF reader.
     add d7e30273d6 Support `ChannelImageInputStream` (internal class). This is 
needed for data stores that do a mix of own work and work delegated to Image 
I/O.
     add 372de6b8ce Make possible to handle tiles that are not created by 
`TiledGridCoverage.Iterator` itself.
     add 64f25a5066 Allow `HyperRectangleReader` to store the values in an 
existing array instead of allocating a new one.
     add c2b85ee4ee Merge branch 'geoapi-4.0' into geoapi-3.1. This merge 
contains work in preparation of the refactoring of the GeoHEIF reader.
     add 65cb13ffb1 Merge branch 'geoapi-3.1': preparation for GeoHEIF 
refactoring.
     add b9447e62de Rename the "GIMI" module to "GeoHEIF" and rename classes to 
the names of the equivalent classes after refactoring. The intend is to have 
git to report changes in the correct classes (auto-detection of moved files 
will not work). This commit makes no change in the code except renaming.
     add aa935c702b Add initially empty package-info files.
     add f5ba1784c7 Merge branch 'geoapi-4.0' into geoapi-3.1: renaming of GIMI 
classes and module.
     add 0a0451285d Merge branch 'geoapi-3.1': renaming of GeoHEIF classes and 
module.
     add c7bfa69041 Refactoring of the GIMI reader: * Rename "gimi" module and 
packages as "geoheif". * Retrofit GIMI internal package into the main package. 
* Reduce the visibility of classes that don't need to be public. * Handle 
container boxes in a dedicated `ContainerBox` subclass. * Move some field 
initializations to constructors (it removes redundancies). * Keep box 
identifiers as integers instead of converting them to strings. * Replace chains 
of `if - else` statements by a switch [...]
     add 470783640d Merge branch 'geoapi-4.0' into geoapi-3.1: refactoring of 
the GIMI reader.
     add 81e91adb6b Merge branch 'geoapi-3.1': refactoring of GeoHEIF reader.
     add 58c30aad3d Post-merge automatic reorganization of imports order.
     add 61ff831a8e Merge branch 'geoapi-4.0' into geoapi-3.1: reorganization 
of imports.
     add 09335964ca Merge branch 'geoapi-3.1': automatic reorganization of 
imports.
     add 3164e8db34 When opening a large image in the JavaFX application, if 
there is no overview, zoom in the middle of the image as an initial view. We do 
that for avoiding to load too much data when the initial view is the whole 
image.
     add fcb23b6f67 Safety against resolution of zero during metadata 
construction.
     add 0a53a466e3 Add a safety against singular matrices read from GeoTIFF 
files.
     add 634a39a70c Vertical resolution was fetched from the old dimension when 
z is not the third axis.
     add abd5100711 If the original CRS used the [0 … 360]° longitude range, 
convert to the [−180 … +180]° range.
     add 84deb1e236 `SQLBuilder.appendValue(Object)` should format temporal 
objects as SQL dates.
     add 0ddd4d225c Make the search for geometry columns robust to the case 
where there is no information about which catalog and schema contain the table. 
This case happens with materialized views.
     add 5797abfbc8 The "raster_columns" table of PostGIS should be optional: 
do not throw `SQLException` if that table does not exist.
     add 292697f58c Improve the SQL store metadata with information about the 
spatial schema, database version and (if applicable) PostGIS version.
     add 7c2e16ac90 Make the information about database version accessible 
through public API.
     add 1aa1be663e Use the image input/output stream provided by the storage 
connector in World File data store. Fix a "channel closed" exception when using 
the image output stream.
     add 07fa48c9e6 Fix shapefile parsing of string floating point data types
     add 6a7fb5526f Add missing converter declarations in `META-INF/services/` 
and minor formating.
     add d4bba49f28 Make the search for database metadata more robust to 
drivers that do not define an escape character.
     add 1693635df4 Make the search for primary keys, foreigner keys and row 
counts more robust to databases that do not support those features.
     add 6d57ee4af0 Tune SQL LIKE search escape by being more conservative when 
no escape is known. Also escape the escape character itself.
     add 38bf69764d Add a `Dialect.DUCKDB` case together with specific code in 
SQL store. Contains modifications to SQL store internal for accommodating 
DuckDB.
     add 6cffa03c4c Add the SRID argument when executing a spatial function 
`ST_*` in a spatial database. The reprojection of geometry literal, if needed, 
was already handled by `Optimization`. Add special case where the geometry 
column declares the CRS but the literal does not. Redirect to data store 
listeners the logs that may occur during geometry reprojection.
     add 913e4ff28a Move `ListingPropertyVisitor` from Shapefile module to the 
main feature module. It will also be needed by the SQL data store, among others.
     add c5ac1dc86a When only a subset of the feature properties is requested, 
declare only that subset in the SQL `SELECT` statement.
     add ceacb1c0df Remove an internal utility class which is no longer useful.
     add ece63c46f5 Fix a never-ending loop when temporal objects are compared 
as `java.lang.Object`. Add a note about future development needed in WKT 
parsing. Minor cleaning.
     add 0704b92b5e Merge branch 'geoapi-4.0' into geoapi-3.1. Contains bug 
fixes in SQLStore.
     add ad3d4f6c2f Merge branch 'geoapi-3.1'. 
https://issues.apache.org/jira/browse/SIS-608
     add 304b134b1d Fix a `ClassCastException` in the comparison of temporal 
objects.
     add f5847a4f88 Handle LocalDate format in CQL parser
     add c171717d16 Allow to specify a timezone when reading features from a 
Shapefile. If a timezone is specified, then hours are arbitrarily set to the 
middle of the day. The default stay no timezone, in which case dates are 
instances of `java.time.LocalDate`.
     add f8a9c9ae79 Partial replacement of `java.util.TimeZone` by 
`java.time.ZoneId`. The old timezone is kept in codes related to 
`java.text.Format`. This commit has two incompatible changes:
     add 934715d706 Move `SchemaModifier` (renamed `CoverageModifier`) to 
public API. Add a method for customizing the `GridGeometry` and invoke it in 
the WorldFile reader. This is useful when an image does not declare a CRS but 
the user know what the CRS should be.
     add 1476b6c6ec Allow to customize the the sample dimensions and grid 
geometry created by GeoHEIF store.
     add ebe3bf8253 Merge branch 'geoapi-4.0' into geoapi-3.1
     add 9b56572ba1 Merge branch 'geoapi-3.1'
     add 2d528ffbea Post-merge automatic reorganization of imports order.
     add 3e609d464e Merge of automatic reorganization of imports order.
     add ac4ad3f36a Merge of automatic reorganization of imports order.
     add ec8d89adde Allow to read tiles through HTTP using HTTP range requests. 
It requires some reorganization for allowing to know the ranges in advance.
     add e07452d79e Check HTTP status when opening a file from an URL.
     add 9a1e96040c Workaround for limitations observed in DuckDB 1.2.1: - 
Ignore the catalog name when the database is DuckDB. - Do not add SRID argument 
in geometries because not supported.
     add ab0610bcf7 Remove the hack for DuckDB 1.2.1 since it has been fixed in 
DuckDB 1.2.2.0. Document DuckDB 1.2.2.0 as the minimal version required by 
Apache SIS.
     add 8abf1fdeeb Add explicit `ST_AsBinary` or `ST_AsText` functions when 
requesting a geometry.
     add bce9be08df Add a fallback for trying to guess the SRID when the table 
of a column is unknown. This is a workaround for incomplete JDBC drivers (in 
this case, DuckDB 1.2.2.0).
     add aefe5d2936 Add getContentPath() method on Tile to allow access to the 
raw tile content without opening a resource
     add 0b665692dc Simplify the default implementation of `getContentPath()`. 
Add `@since 1.5` Javadoc tag and adjust `{@link}` versus `{@linkplain}`. Minor 
editions to the Javadoc sentences and a bit of formatting (one sentence per 
line).
     add 90aaa358f1 Clarification about the circumstances when `guessCRS` may 
be invoked.
     add 2f1112858c Implement getFileSet() on landsat resources
     add 12d68ec5d1 Resolve shapefile sibling files without going trought 
parent path which may be null
     add db6cf1093b More reliable determination of the path to the metadata 
file used for opening a Landsat store. Opportunistic minor editions.
     add 71c5b4f09b Add a `Features.getLinkTargets(PropertyType)` method in 
complement to `getLinkTarget(PropertyType)` method (plural versus singular). 
Bug fix in `SQLStore` where foreigner keys in queries were followed in the 
wrong directions (foreigner keys in tables were okay). Minor simplification in 
exception handling of `DeferredStream` and minor javadoc editions.
     add 428ee02c5e Add a `PropertyTypeBuilder.replaceBy(…)` method.
     add 0db3b21989 `SQLStore` should accept queries with a "projection" (in 
SQL sense) that contains links such as "sis:identifier".
     add ff4f8725a6 Add a test for the new support of "sis:identifier" in 
FeatureQuery.
     add 26bdb313f1 Move flexibility for configuring the builder wrapped by 
`FeatureProjectionBuilder.Item`. More conservative check of whether the 
FeatureType is different than the source.
     add 305ae17810 Improve AWT to JTS conversion logic.
     add ffa96dbde4 Merge branch 'geoapi-4.0' into geoapi-3.1. Contains 
improvements in `SQLStore`.
     add 3d377745a9 Merge branch 'geoapi-3.1'. Contains improvements in: 
`SQLStore`, ShapeFile (incubator), conversions from AWT shapes to JTS, partial 
DuckDB support, and use of HTTP ranges in GeoHEIF.
     add a245c9783f Clarification in required dependencies.
     add 906fcdf516 Missing EOF detection when using HTTP ranges or S3.
     add cf0f31d12a When a `FeatureQuery` contains a projection (in SQL sense), 
and if some properties in the projection are links, recreate the result types 
of the links if they changed.
     add 3a5fcfaa4a Generalize the update of properties of operations to all 
kinds of `AbstractOperation` instead of only links. This is a generalization of 
the previous commit ("recreate the result types of the links if they changed"). 
The intent is to the CRS characteristic updated not only for links, but also 
for the envelope operation.
     add fe843c865e Documentation fix: "did not specified" → "did not specify".
     add 94597927c0 Remove `FeatureCatalogBuilder`, which was not really used.
     add 2e3f2c2370 Add a conversion from geographic to spherical coordinates. 
https://issues.apache.org/jira/browse/SIS-302
     add 2b1ed5b6c5 Find a coordinate operation path between two CRS when a 
step requires a change from spherical coordinates to geodetic coordinates. 
Note: when the spherical coordinates are two-dimensional, current version 
assumes a radius of zero, which is incorrect. The missing radius problem will 
be adressed in a separated commit.
     add e471fe0cf0 Add a "Spherical 2D to 3D" operation where the third 
dimension is the distance R from the centre to the ellipsoid surface. This new 
operation, while apparently simple, has many implications on the way to 
concatenate and optimize a chain of transforms. Therefore, this commit also 
contains:
     add f416e5744b Refactor the 
`CoordinateOperationFinder.createOperationStep(GeodeticCRS source, GeodeticCRS 
target)` method for adding a "spherical to ellipsoidal" step (or its inverse) 
when needed, including addition of radius coordinate ("spherical 2D to 3D").
     add 3abad8c520 Merge branch 'geoapi-4.0' into geoapi-3.1. Contains support 
for conversion from geographic to spherical coordinates without going through 
Cartesian coordinates, and improvements in `SQLStore` with projections (in SQL 
sense) of properties that are links (e.g. "sis:identifier").
     add 95d808c404 Merge branch 'geoapi-3.1'.
     new e0e0ff90a4 Add ExportableTransform interface
     new 9386f8fe78 Implement ExportableTransform for EllipsoidToRadiusTransform

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (cb366ebe13)
            \
             N -- N -- N   refs/heads/feat/exportableTransform (9386f8fe78)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

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:
 README.md                                          |   4 +-
 .../sis/buildtools/coding/ReorganizeImports.java   |   2 +-
 .../apache/sis/buildtools/gradle/Assembler.java    |   2 +-
 .../apache/sis/buildtools/gradle/Dependency.java   |   2 +-
 .../org/apache/sis/buildtools/book/OGC.lst         |   1 +
 .../apache/sis/cloud/aws/s3/ClientFileSystem.java  |   2 +-
 .../org/apache/sis/cloud/aws/s3/FileService.java   |  38 +-
 .../main/org/apache/sis/cloud/aws/s3/KeyPath.java  |   4 +-
 .../apache/sis/cloud/aws/s3/ObjectAttributes.java  |   5 +-
 .../org/apache/sis/cloud/aws/s3/package-info.java  |  31 +-
 .../main/org/apache/sis/console/AboutCommand.java  |   4 +-
 .../main/org/apache/sis/console/CommandRunner.java |   9 +-
 .../org/apache/sis/console/CommandRunnerTest.java  |  11 +-
 .../org.apache.sis.feature/main/module-info.java   |  11 +-
 .../org/apache/sis/coverage/SampleRangeFormat.java |   6 +-
 .../coverage/grid/BandAggregateGridCoverage.java   |  10 +-
 .../sis/coverage/grid/BufferedGridCoverage.java    |   4 +-
 .../coverage/grid/CoordinateOperationFinder.java   |   2 +
 .../apache/sis/coverage/grid/DefaultEvaluator.java |   2 +-
 .../apache/sis/coverage/grid/DomainLinearizer.java |   4 +-
 .../org/apache/sis/coverage/grid/GridCoverage.java |   5 +-
 .../apache/sis/coverage/grid/GridCoverage2D.java   |  27 +-
 .../sis/coverage/grid/GridCoverageBuilder.java     |  15 +-
 .../sis/coverage/grid/GridCoverageProcessor.java   |   8 +-
 .../apache/sis/coverage/grid/GridDerivation.java   | 259 ++++--
 .../org/apache/sis/coverage/grid/GridExtent.java   | 235 ++++--
 .../org/apache/sis/coverage/grid/GridGeometry.java | 456 ++++++++--
 .../apache/sis/coverage/grid/ImageRenderer.java    |  23 +-
 .../apache/sis/coverage/grid/PixelTranslation.java |  28 +-
 .../sis/coverage/grid/ResampledGridCoverage.java   |  12 +-
 .../apache/sis/coverage/grid/SliceGeometry.java    |   4 +-
 ...rceArgument.java => BandAggregateArgument.java} |   8 +-
 .../sis/coverage/privy/CommonDomainFinder.java     |  18 +-
 .../org/apache/sis/coverage/privy/ImageLayout.java | 458 ----------
 .../apache/sis/coverage/privy/RangeArgument.java   |   6 +-
 .../sis/coverage/privy/SampleDimensions.java       |  27 +-
 .../apache/sis/feature/AbstractIdentifiedType.java |  90 +-
 .../org/apache/sis/feature/AbstractOperation.java  |  89 +-
 .../apache/sis/feature/DefaultAssociationRole.java |  15 +-
 .../apache/sis/feature/DefaultAttributeType.java   |  15 +-
 .../org/apache/sis/feature/DefaultFeatureType.java |  17 +-
 .../org/apache/sis/feature/EnvelopeOperation.java  | 197 +++--
 .../apache/sis/feature/ExpressionOperation.java    |   5 +-
 .../main/org/apache/sis/feature/FeatureFormat.java |   9 +-
 .../org/apache/sis/feature/FeatureOperations.java  | 102 ++-
 .../main/org/apache/sis/feature/Features.java      |  29 +-
 .../sis/feature/GroupAsPolylineOperation.java      |  47 +-
 .../main/org/apache/sis/feature/LinkOperation.java |  18 +-
 .../apache/sis/feature/StringJoinOperation.java    | 101 ++-
 .../feature/builder/AssociationRoleBuilder.java    |   2 +-
 .../sis/feature/builder/AttributeTypeBuilder.java  |  16 +-
 .../feature/builder/CharacteristicTypeBuilder.java |   2 +-
 .../sis/feature/builder/FeatureTypeBuilder.java    |  43 +-
 .../sis/feature/builder/OperationWrapper.java      |  67 +-
 .../sis/feature/builder/PropertyTypeBuilder.java   |  45 +-
 .../apache/sis/feature/builder/TypeBuilder.java    |   4 +-
 .../org/apache/sis/feature/internal/Resources.java |  20 +-
 .../sis/feature/internal/Resources.properties      |   7 +-
 .../sis/feature/internal/Resources_fr.properties   |   5 +-
 .../main/org/apache/sis/feature/package-info.java  |   2 +-
 .../sis/feature/privy/AttributeConvention.java     |   6 +
 .../sis/feature/privy/FeatureExpression.java       |  83 +-
 .../sis/feature/privy/FeatureProjection.java       | 341 ++++++++
 .../feature/privy/FeatureProjectionBuilder.java    | 740 ++++++++++++++++
 .../apache/sis/feature/privy/FeatureUtilities.java |  92 --
 .../org/apache/sis/feature/privy/FeatureView.java  | 129 +++
 .../org/apache/sis/filter/ArithmeticFunction.java  |   8 +-
 .../org/apache/sis/filter/AssociationValue.java    |  22 +-
 .../apache/sis/filter/BinaryGeometryFilter.java    |   2 +-
 .../org/apache/sis/filter/ConvertFunction.java     |  21 +-
 .../apache/sis/filter/DefaultFilterFactory.java    |  26 +-
 .../InvalidXPathException.java}                    |  38 +-
 .../main/org/apache/sis/filter/LeafExpression.java |  17 +-
 .../main/org/apache/sis/filter/PropertyValue.java  |  72 +-
 .../main/org/apache/sis/filter/TemporalFilter.java |   6 +-
 .../main/org/apache/sis/filter/internal/Node.java  |  24 +-
 .../sis/filter/privy/ListingPropertyVisitor.java   | 134 +++
 .../org/apache/sis/filter/privy/WarningEvent.java  | 127 +++
 .../main/org/apache/sis/filter/privy/XPath.java    |  18 +-
 .../apache/sis/filter/sqlmm/FunctionWithSRID.java  |  24 +-
 .../sis/filter/sqlmm/GeometryConstructor.java      |   8 +-
 .../apache/sis/filter/sqlmm/SpatialFunction.java   |  36 +-
 .../{AbstractGeometry.java => Capability.java}     |  30 +-
 .../apache/sis/geometry/wrapper/Dimensions.java    | 100 +++
 .../apache/sis/geometry/wrapper/Geometries.java    | 216 +++--
 .../apache/sis/geometry/wrapper/GeometryType.java  | 116 ++-
 .../sis/geometry/wrapper/StandardGeometries.java   |  53 +-
 .../apache/sis/geometry/wrapper/esri/Factory.java  | 211 +++--
 .../apache/sis/geometry/wrapper/esri/Wrapper.java  |   2 +-
 .../apache/sis/geometry/wrapper/j2d/Factory.java   | 114 ++-
 .../sis/geometry/wrapper/jts/ConverterTo2D.java    | 227 +++++
 .../apache/sis/geometry/wrapper/jts/Factory.java   | 449 ++++++----
 .../geometry/wrapper/jts/GeometryTransform.java    |  10 +-
 .../org/apache/sis/geometry/wrapper/jts/JTS.java   |  20 +-
 .../sis/geometry/wrapper/jts/ShapeConverter.java   |  73 +-
 .../apache/sis/geometry/wrapper/jts/Wrapper.java   |  78 +-
 .../main/org/apache/sis/image/AnnotatedImage.java  |   4 +-
 .../org/apache/sis/image/BandAggregateImage.java   | 127 ++-
 ...iSourceLayout.java => BandAggregateLayout.java} | 203 ++---
 .../main/org/apache/sis/image/BandSelectImage.java |  26 +-
 .../main/org/apache/sis/image/BandSharing.java     |   2 +-
 .../apache/sis/image/BandedSampleConverter.java    |  53 +-
 .../main/org/apache/sis/image/Colorizer.java       |  44 +-
 .../main/org/apache/sis/image/ComputedImage.java   |  27 +-
 .../main/org/apache/sis/image/ComputedTiles.java   |  12 +-
 .../main/org/apache/sis/image/DataType.java        | 275 ++++--
 .../main/org/apache/sis/image/ImageAdapter.java    |   4 +-
 .../main/org/apache/sis/image/ImageCombiner.java   |  36 +-
 .../main/org/apache/sis/image/ImageLayout.java     | 673 +++++++++++++++
 .../main/org/apache/sis/image/ImageOverlay.java    | 476 +++++++++++
 .../main/org/apache/sis/image/ImageProcessor.java  | 242 +++++-
 .../main/org/apache/sis/image/MaskImage.java       |   8 +-
 .../main/org/apache/sis/image/MaskedImage.java     |   6 +-
 .../org/apache/sis/image/MultiSourceImage.java     |  43 +-
 .../org/apache/sis/image/MultiSourcePrefetch.java  |   2 +-
 .../main/org/apache/sis/image/PixelIterator.java   |  14 +-
 .../main/org/apache/sis/image/PlanarImage.java     |  86 +-
 .../sis/image/PositionalConsistencyImage.java      |   2 +-
 .../main/org/apache/sis/image/PrefetchedImage.java |   8 +-
 .../main/org/apache/sis/image/RecoloredImage.java  |  70 +-
 .../main/org/apache/sis/image/ResampledImage.java  |  70 +-
 .../org/apache/sis/image/SourceAlignedImage.java   |  10 +
 .../org/apache/sis/image/StatisticsCalculator.java |  15 +-
 .../main/org/apache/sis/image/TileCache.java       |   5 +-
 .../main/org/apache/sis/image/Transferer.java      |   9 +-
 .../main/org/apache/sis/image/Visualization.java   |  80 +-
 .../apache/sis/image/WritableComputedImage.java    |   4 +-
 .../apache/sis/image/privy/AssertionMessages.java  |  87 ++
 .../privy/BatchComputedImage.java                  |   2 +-
 .../apache/sis/image/privy/ColorModelBuilder.java  | 427 ++++++++++
 .../privy/ColorModelFactory.java                   | 100 +--
 .../{coverage => image}/privy/ColorModelType.java  |   4 +-
 .../privy/ColorScaleBuilder.java}                  |  63 +-
 .../{coverage => image}/privy/ColorsForRange.java  |   8 +-
 .../privy/DeferredProperty.java                    |   2 +-
 .../sis/{coverage => image}/privy/FillValues.java  |   2 +-
 .../{coverage => image}/privy/ImageUtilities.java  | 141 +---
 .../privy/MultiBandsIndexColorModel.java           |   2 +-
 .../{coverage => image}/privy/ObservableImage.java |   2 +-
 .../{coverage => image}/privy/RasterFactory.java   |  13 +-
 .../grid => image/privy}/ReshapedImage.java        |  51 +-
 .../privy/SampleModelBuilder.java}                 | 128 ++-
 .../privy/ScaledColorModel.java                    |   2 +-
 .../privy/ScaledColorSpace.java                    |   2 +-
 .../privy/TileErrorHandler.java                    |   2 +-
 .../{coverage => image}/privy/TileOpExecutor.java  |   2 +-
 .../{coverage => image}/privy/TilePlaceholder.java |  12 +-
 .../sis/{coverage => image}/privy/TiledImage.java  |   2 +-
 .../privy/WritableTiledImage.java                  |   2 +-
 .../{coverage => image}/privy/package-info.java    |   4 +-
 .../sis/coverage/grid/GridCoverage2DTest.java      |   2 +-
 .../sis/coverage/grid/GridDerivationTest.java      | 138 ++-
 .../apache/sis/coverage/grid/GridExtentTest.java   |  60 +-
 .../apache/sis/coverage/grid/GridGeometryTest.java | 102 ++-
 .../coverage/grid/ResampledGridCoverageTest.java   |   3 +-
 .../coverage/grid/TranslatedGridCoverageTest.java  |   2 +-
 .../feature/builder/FeatureTypeBuilderTest.java    |  29 +
 .../sis/filter/BinarySpatialFilterTestCase.java    |  21 +-
 .../apache/sis/filter/sqlmm/RegistryTestCase.java  |  24 +-
 .../sis/geometry/wrapper/GeometriesTestCase.java   |  32 +-
 .../sis/geometry/wrapper/esri/FactoryTest.java     |  42 +-
 .../apache/sis/geometry/wrapper/jts/JTSTest.java   |   2 +-
 .../geometry/wrapper/jts/ShapeConverterTest.java   |  40 +-
 .../sis/geometry/wrapper/jts/WrapperTest.java      |  78 ++
 .../apache/sis/image/BandAggregateImageTest.java   |  70 +-
 .../org/apache/sis/image/BandSelectImageTest.java  |   6 +-
 .../sis/image/BandedSampleConverterTest.java       |  17 +-
 .../test/org/apache/sis/image/DataTypeTest.java    |  42 +-
 .../{coverage/privy => image}/ImageLayoutTest.java |  14 +-
 .../org/apache/sis/image/ImageOverlayTest.java     | 116 +++
 .../org/apache/sis/image/InterpolationTest.java    |   2 +-
 .../test/org/apache/sis/image/MaskedImageTest.java |   2 +-
 .../test/org/apache/sis/image/PlanarImageTest.java |   2 +-
 .../org/apache/sis/image/ResampledImageTest.java   |  24 +-
 .../apache/sis/image/StatisticsCalculatorTest.java |   2 +-
 .../test/org/apache/sis/image/TiledImageMock.java  |   4 +-
 .../privy/ColorModelBuilderTest.java               |  15 +-
 .../privy/ImageUtilitiesTest.java                  |  34 +-
 .../grid => image/privy}/ReshapedImageTest.java    |  12 +-
 .../privy/SampleModelBuilderTest.java}             |  64 +-
 .../privy/ScaledColorSpaceTest.java                |   2 +-
 .../sis/image/processing/isoline/IsolinesTest.java |   2 +-
 .../org.apache.sis.metadata/main/module-info.java  |   1 +
 .../sis/metadata/iso/citation/Citations.java       |  54 +-
 .../apache/sis/metadata/iso/extent/Extents.java    |   5 +-
 .../org/apache/sis/metadata/privy/Identifiers.java |   2 +-
 .../sis/metadata/privy/NameToIdentifier.java       |   2 +-
 .../sis/metadata/privy/ReferencingServices.java    |  20 +-
 .../main/org/apache/sis/metadata/sql/Citations.sql |   2 +-
 .../main/org/apache/sis/metadata/sql/Contents.sql  |   2 +
 .../apache/sis/metadata/sql/MetadataWriter.java    |   8 +-
 .../org/apache/sis/metadata/sql/privy/Dialect.java |  63 +-
 .../apache/sis/metadata/sql/privy/Initializer.java |   7 +-
 .../sis/metadata/sql/privy/LocalDataSource.java    |   9 +-
 .../apache/sis/metadata/sql/privy/Reflection.java  |   2 +
 .../apache/sis/metadata/sql/privy/SQLBuilder.java  | 121 ++-
 .../sis/metadata/sql/privy/SQLUtilities.java       |  43 +-
 .../apache/sis/metadata/sql/privy/Supports.java    |  15 +
 .../org/apache/sis/metadata/sql/privy/Syntax.java  |  68 +-
 .../org/apache/sis/temporal/LenientDateFormat.java |   6 +-
 .../main/org/apache/sis/temporal/TimeMethods.java  | 168 +++-
 .../main/org/apache/sis/xml/MarshalContext.java    |  21 +-
 .../main/org/apache/sis/xml/MarshallerPool.java    |  12 +-
 .../main/org/apache/sis/xml/Pooled.java            |  21 +-
 .../main/org/apache/sis/xml/XML.java               |   7 +-
 .../main/org/apache/sis/xml/bind/Context.java      |   8 +-
 .../apache/sis/xml/bind/IdentifierMapAdapter.java  |  16 +-
 .../sis/xml/bind/ModifiableIdentifierMap.java      |  16 +-
 .../org/apache/sis/xml/bind/TypeRegistration.java  |   8 +-
 .../apache/sis/xml/bind/lan/LocaleAndCharset.java  |  10 +-
 .../org/apache/sis/xml/bind/lan/PT_FreeText.java   |  10 +-
 .../metadata/replace/ReferenceSystemMetadata.java  |   8 +-
 .../apache/sis/metadata/PropertyAccessorTest.java  |  20 +-
 .../metadata/iso/citation/DefaultCitationTest.java |   2 +-
 .../sis/metadata/sql/privy/SQLBuilderTest.java     |  97 +++
 .../sis/metadata/sql/privy/SQLUtilitiesTest.java   |  13 +-
 ...neralDurationTest.java => TimeMethodsTest.java} |  30 +-
 .../apache/sis/xml/bind/gco/StringAdapterTest.java |   2 +-
 .../sis/xml/bind/lan/FreeTextMarshallingTest.java  |   2 +-
 .../org/apache/sis/xml/privy/XmlUtilitiesTest.java |   2 +-
 .../test/org/apache/sis/xml/test/TestCase.java     |   4 +-
 .../main/org/apache/sis/openoffice/CalcAddins.java |   2 +-
 .../coverage/MultiResolutionCoverageLoader.java    |   4 +-
 .../org/apache/sis/map/coverage/RenderingData.java |  51 +-
 .../sis/map/coverage/RenderingWorkaround.java      |   2 +-
 .../sis/referencing/gazetteer/LocationFormat.java  |   7 +-
 ...g.opengis.referencing.operation.OperationMethod |   2 +
 .../main/module-info.java                          |   8 +-
 .../org/apache/sis/geometry/EnvelopeReducer.java   |   7 +-
 .../main/org/apache/sis/geometry/Envelopes.java    |  30 +-
 .../main/org/apache/sis/io/wkt/Element.java        |  20 +-
 .../main/org/apache/sis/io/wkt/Formatter.java      |  56 +-
 .../apache/sis/io/wkt/GeodeticObjectParser.java    |  38 +-
 .../main/org/apache/sis/io/wkt/WKTFormat.java      |  16 +-
 .../main/org/apache/sis/io/wkt/doc-files/ESRI.txt  |   2 +-
 .../org/apache/sis/parameter/ParameterFormat.java  |  43 +-
 .../org/apache/sis/parameter/Parameterized.java    |   3 +
 .../apache/sis/referencing/AuthorityFactories.java |   9 +-
 .../main/org/apache/sis/referencing/CRS.java       |   6 +-
 .../main/org/apache/sis/referencing/CommonCRS.java |   5 +-
 .../sis/referencing/ExportableTransform.java       |   2 +-
 .../apache/sis/referencing/GeodeticCalculator.java |   6 +-
 .../sis/referencing/ImmutableIdentifier.java       | 131 ++-
 .../apache/sis/referencing/NamedIdentifier.java    |  24 +-
 .../sis/referencing/StandardDefinitions.java       |  14 +-
 .../sis/referencing/crs/DefaultCompoundCRS.java    |   2 +-
 .../apache/sis/referencing/cs/AxesConvention.java  | 223 ++---
 .../org/apache/sis/referencing/cs/AxisFilter.java  |   2 +-
 .../org/apache/sis/referencing/cs/AxisName.java    |   2 +-
 .../main/org/apache/sis/referencing/cs/Codes.java  |   6 +-
 .../sis/referencing/cs/CoordinateSystems.java      |  96 ++-
 .../sis/referencing/cs/DefaultCompoundCS.java      |   7 +-
 .../cs/DefaultCoordinateSystemAxis.java            |   4 +-
 .../sis/referencing/cs/DirectionAlongMeridian.java |   4 +-
 .../org/apache/sis/referencing/cs/Normalizer.java  |  12 +-
 .../sis/referencing/datum/BursaWolfParameters.java |   2 +-
 .../referencing/datum/DefaultDatumEnsemble.java    |   2 +-
 .../sis/referencing/datum/DefaultEllipsoid.java    |  55 +-
 .../referencing/datum/DefaultGeodeticDatum.java    |   2 +-
 .../org/apache/sis/referencing/datum/Sphere.java   |  15 +-
 .../factory/ConcurrentAuthorityFactory.java        |   4 +-
 .../sis/referencing/factory/sql/EPSGInstaller.java |  22 +-
 .../internal/ParameterizedTransformBuilder.java    | 235 ++++--
 .../referencing/internal/ServicesForMetadata.java  |  20 +-
 .../operation/CoordinateOperationFinder.java       | 278 ++----
 .../operation/CoordinateOperationRegistry.java     |   2 +-
 .../operation/DefaultConcatenatedOperation.java    |   8 +-
 .../referencing/operation/DefaultConversion.java   |   2 +-
 .../DefaultCoordinateOperationFactory.java         |  11 +-
 .../operation/MathTransformContext.java            |  90 +-
 .../operation/builder/LinearTransformBuilder.java  |  28 +-
 .../referencing/operation/builder/Linearizer.java  |  11 +-
 .../operation/builder/ProjectedTransformTry.java   |   6 +-
 .../sis/referencing/operation/gridded/Tile.java    |   6 +-
 .../operation/matrix/GeneralMatrix.java            |  22 +-
 .../sis/referencing/operation/matrix/Matrices.java |  65 +-
 .../operation/provider/AbstractProvider.java       |  52 +-
 .../provider/FranceGeocentricInterpolation.java    |  18 +-
 .../GeocentricAffineBetweenGeographic.java         |  53 +-
 .../operation/provider/GeocentricToGeographic.java |   4 +-
 .../provider/GeocentricToTopocentric.java          |  16 +-
 .../provider/GeocentricTranslation3D.java          |   1 +
 .../operation/provider/Geographic2Dto3D.java       |  26 +-
 .../operation/provider/Geographic3Dto2D.java       |  19 +-
 .../operation/provider/GeographicToGeocentric.java |  40 +-
 .../operation/provider/MapProjection.java          |  61 +-
 .../operation/provider/PseudoMercator.java         |  10 +
 .../operation/provider/PseudoSinusoidal.java       |  10 +
 ...{Geographic2Dto3D.java => Spherical2Dto3D.java} |  59 +-
 ...{Geographic2Dto3D.java => Spherical3Dto2D.java} |  63 +-
 .../operation/transform/AbstractMathTransform.java | 183 +++-
 .../transform/AbstractMathTransform2D.java         |  31 +-
 .../operation/transform/CartesianToPolar.java      |   6 +-
 .../operation/transform/CartesianToSpherical.java  |   6 +-
 .../operation/transform/ConcatenatedTransform.java |  24 +-
 .../transform/ConcatenatedTransform2D.java         |   2 +-
 .../transform/ConcatenatedTransformDirect2D.java   |   2 +-
 .../operation/transform/ContextualParameters.java  |  80 +-
 .../transform/CoordinateSystemTransform.java       |  34 +-
 .../CoordinateSystemTransformBuilder.java          | 350 ++++++--
 .../operation/transform/CopyTransform.java         |  25 +-
 .../operation/transform/DatumShiftTransform.java   |   3 +-
 .../transform/DefaultMathTransformFactory.java     |  20 +-
 .../transform/EllipsoidToCentricTransform.java     | 940 ++++++++++++---------
 .../transform/EllipsoidToRadiusTransform.java      | 532 ++++++++++++
 .../transform/InterpolatedGeocentricTransform.java |   9 +-
 .../InterpolatedGeocentricTransform2D.java         |   4 +-
 .../transform/InterpolatedTransform2D.java         |   4 +-
 .../operation/transform/LinearTransform1D.java     |   5 +-
 .../operation/transform/MathTransforms.java        |  20 +-
 .../operation/transform/MolodenskyTransform.java   |   1 +
 .../operation/transform/MolodenskyTransform2D.java |   2 +-
 .../operation/transform/OnewayLinearTransform.java | 190 +++++
 .../transform/PassThroughTransform2D.java          |   2 +-
 .../operation/transform/PolarToCartesian.java      |   6 +-
 .../operation/transform/PoleRotation.java          |  13 +-
 .../operation/transform/ProjectiveTransform2D.java |   2 +-
 .../transform/SpecializableTransform2D.java        |   4 +-
 .../operation/transform/SphericalToCartesian.java  |   8 +-
 .../operation/transform/TransformSeparator.java    |   6 +-
 .../sis/referencing/privy/AxisDirections.java      |  49 +-
 .../org/apache/sis/referencing/privy/Formulas.java |  26 +-
 .../referencing/privy/ReferencingUtilities.java    |  27 +
 .../sis/referencing/privy/ShapeUtilities.java      | 105 +--
 .../apache/sis/referencing/privy/WKTKeywords.java  |   3 +
 .../org/apache/sis/io/wkt/ComparisonWithEPSG.java  |   2 +-
 .../test/org/apache/sis/io/wkt/ExtraCRS.txt        |   2 +-
 .../test/org/apache/sis/io/wkt/Malformed.txt       |   2 +-
 .../test/org/apache/sis/io/wkt/WKTFormatTest.java  |   5 +-
 .../sis/referencing/ImmutableIdentifierTest.java   |   2 +-
 .../sis/referencing/NamedIdentifierTest.java       |   2 +-
 .../sis/referencing/cs/CoordinateSystemsTest.java  |  22 +-
 .../ParameterizedTransformBuilderTest.java         |   2 +-
 .../operation/CoordinateOperationFinderTest.java   |  74 +-
 .../operation/builder/LinearizerTest.java          |   3 +-
 .../referencing/operation/matrix/MatricesTest.java |  16 +
 .../projection/MercatorMethodComparison.java       |  10 +-
 .../provider/GeocentricTranslationTest.java        |  10 +-
 .../operation/provider/Geographic3Dto2DTest.java   |   5 +-
 .../referencing/operation/provider/NADCONTest.java |  10 +-
 .../referencing/operation/provider/NTv2Test.java   |  10 +-
 .../operation/provider/ProvidersTest.java          |   2 +
 .../transform/EllipsoidToCentricTransformTest.java | 135 +--
 .../transform/EllipsoidToRadiusTransformTest.java  | 162 ++++
 .../EllipsoidToSphericalTransformTest.java         | 198 +++++
 .../operation/transform/MathTransformTestCase.java |   2 +-
 .../operation/transform/MathTransformWrapper.java  |   4 +-
 .../transform/TransformSeparatorTest.java          |   4 +-
 .../sis/referencing/privy/ShapeUtilitiesTest.java  |  23 +-
 .../referencing/privy/ShapeUtilitiesViewer.java    |  10 +-
 .../sis/test/integration/ConsistencyTest.java      |  12 +-
 .../main/org/apache/sis/storage/landsat/Band.java  |  36 +-
 .../org/apache/sis/storage/landsat/BandGroup.java  |  15 +
 .../apache/sis/storage/landsat/LandsatStore.java   |  27 +-
 .../apache/sis/storage/landsat/MetadataReader.java |  16 +-
 .../main/module-info.java                          |   3 -
 .../sis/storage/geotiff/CompressedSubset.java      |   2 +-
 .../org/apache/sis/storage/geotiff/DataCube.java   |   9 +-
 .../org/apache/sis/storage/geotiff/DataSubset.java |  45 +-
 .../apache/sis/storage/geotiff/FormatModifier.java |  14 +-
 .../apache/sis/storage/geotiff/GeoTiffStore.java   | 113 ++-
 .../sis/storage/geotiff/GeoTiffStoreProvider.java  |  66 +-
 .../sis/storage/geotiff/ImageFileDirectory.java    | 285 ++++---
 .../sis/storage/geotiff/MultiResolutionImage.java  |   4 +-
 .../org/apache/sis/storage/geotiff/Reader.java     |  12 +-
 .../org/apache/sis/storage/geotiff/Writer.java     | 159 ++--
 .../storage/geotiff/inflater/CopyFromBytes.java    |   5 +-
 .../geotiff/inflater/HorizontalPredictor.java      |   5 +-
 .../sis/storage/geotiff/reader/CRSBuilder.java     |  72 +-
 .../geotiff/reader/GridGeometryBuilder.java        |  45 +-
 .../sis/storage/geotiff/reader/Localization.java   |   1 +
 .../sis/storage/geotiff/spi/SchemaModifier.java    | 306 -------
 .../sis/storage/geotiff/spi/package-info.java      |  23 -
 .../sis/storage/geotiff/writer/GeoEncoder.java     | 450 +++++++---
 .../geotiff/writer/HorizontalPredictor.java        |   5 +-
 .../storage/geotiff/writer/ReformattedImage.java   | 230 +++--
 .../sis/storage/geotiff/writer/TileMatrix.java     |  83 +-
 .../sis/storage/geotiff/GeoTiffStoreTest.java      | 111 +++
 .../org/apache/sis/storage/geotiff/WriterTest.java |  28 +-
 .../apache/sis/storage/netcdf/AttributeNames.java  |  30 +
 .../apache/sis/storage/netcdf/MetadataReader.java  |  44 +-
 .../org/apache/sis/storage/netcdf/NetcdfStore.java |   5 +-
 .../org/apache/sis/storage/netcdf/base/Axis.java   |   2 +-
 .../apache/sis/storage/netcdf/base/Convention.java |  23 +-
 .../apache/sis/storage/netcdf/base/DataType.java   |   2 +-
 .../apache/sis/storage/netcdf/base/Decoder.java    |  28 +-
 .../apache/sis/storage/netcdf/base/Dimension.java  |   2 +-
 .../apache/sis/storage/netcdf/base/FeatureSet.java |  28 +-
 .../sis/storage/netcdf/base/GridMapping.java       | 317 ++++---
 .../sis/storage/netcdf/base/NamedElement.java      |   2 +-
 .../org/apache/sis/storage/netcdf/base/Node.java   |   3 +-
 .../sis/storage/netcdf/base/RasterResource.java    |  24 +-
 .../apache/sis/storage/netcdf/base/Variable.java   |  36 +-
 .../storage/netcdf/base/VariableTransformer.java   |   2 +-
 .../sis/storage/netcdf/classic/VariableInfo.java   |   2 +-
 .../sis/storage/netcdf/internal/Resources.java     |  20 +-
 .../storage/netcdf/internal/Resources.properties   |   6 +-
 .../netcdf/internal/Resources_fr.properties        |   6 +-
 .../sis/storage/netcdf/ucar/DecoderWrapper.java    |   3 +-
 .../sis/storage/netcdf/ucar/VariableWrapper.java   |  11 +-
 .../sis/storage/netcdf/MetadataReaderTest.java     |   2 -
 .../apache/sis/storage/netcdf/base/GridTest.java   |  15 +-
 .../main/module-info.java                          |   1 +
 .../org/apache/sis/storage/sql/DataAccess.java     |   2 +
 .../main/org/apache/sis/storage/sql/SQLStore.java  |  43 +-
 .../org/apache/sis/storage/sql/duckdb/DuckDB.java  |  88 ++
 .../{postgis => duckdb}/ExtendedClauseWriter.java  |  12 +-
 .../sis/storage/sql/duckdb/package-info.java       |  64 ++
 .../apache/sis/storage/sql/feature/Analyzer.java   | 136 ++-
 .../org/apache/sis/storage/sql/feature/Column.java | 117 ++-
 .../apache/sis/storage/sql/feature/Database.java   | 246 +++++-
 .../sis/storage/sql/feature/FeatureAdapter.java    |  39 +-
 .../sis/storage/sql/feature/FeatureAnalyzer.java   |  12 +-
 .../sis/storage/sql/feature/FeatureIterator.java   |  78 +-
 .../sis/storage/sql/feature/FeatureStream.java     |  85 +-
 .../sis/storage/sql/feature/GeometryEncoding.java  | 128 +++
 .../sis/storage/sql/feature/GeometryGetter.java    | 103 ++-
 .../storage/sql/feature/GeometryTypeEncoding.java  |   2 +
 .../sis/storage/sql/feature/InfoStatements.java    | 220 ++++-
 .../apache/sis/storage/sql/feature/PrimaryKey.java |  12 +
 .../sis/storage/sql/feature/QueryAnalyzer.java     |  30 +-
 .../apache/sis/storage/sql/feature/Relation.java   |  65 +-
 .../apache/sis/storage/sql/feature/Resources.java  |  15 +
 .../sis/storage/sql/feature/Resources.properties   |   3 +
 .../storage/sql/feature/Resources_fr.properties    |   5 +-
 .../sis/storage/sql/feature/SelectionClause.java   | 255 +++++-
 .../storage/sql/feature/SelectionClauseWriter.java |  44 +-
 .../sis/storage/sql/feature/SpatialSchema.java     |  82 +-
 .../org/apache/sis/storage/sql/feature/Table.java  | 167 +++-
 .../sis/storage/sql/feature/TableAnalyzer.java     |  79 +-
 .../sis/storage/sql/feature/TableReference.java    |   2 +-
 .../sis/storage/sql/feature/ValueGetter.java       |   2 +-
 .../storage/sql/postgis/ExtendedClauseWriter.java  |   5 +
 .../sis/storage/sql/postgis/ExtendedInfo.java      |  32 +-
 .../sis/storage/sql/postgis/ExtentEstimator.java   |   2 +-
 .../apache/sis/storage/sql/postgis/Postgres.java   |  26 +-
 .../sis/storage/sql/postgis/RasterReader.java      |   7 +-
 .../org/apache/sis/util/stream/DeferredStream.java |  10 +-
 .../org/apache/sis/storage/sql/SQLStoreTest.java   |  52 +-
 .../storage/sql/feature/GeometryGetterTest.java    |   3 +-
 .../sis/storage/sql/postgis/PostgresTest.java      | 125 ++-
 .../sis/storage/sql/postgis/RasterReaderTest.java  |   5 +-
 .../sis/storage/sql/postgis/RasterWriterTest.java  |   4 +-
 .../sis/storage/sql/postgis/SpatialFeatures.sql    |   8 +
 .../main/org/apache/sis/storage/gpx/Metadata.java  |  10 +-
 .../main/org/apache/sis/storage/gpx/Reader.java    |   4 +-
 .../main/org/apache/sis/storage/gpx/Store.java     |  17 -
 .../main/org/apache/sis/storage/gpx/Types.java     |  26 +-
 .../sis/storage/xml/stream/StaxDataStore.java      |   4 +-
 .../sis/storage/xml/stream/StaxStreamReader.java   |  10 +-
 .../sis/storage/xml/stream/StaxStreamWriter.java   |  10 +-
 .../org.apache.sis.storage/main/module-info.java   |   9 +-
 .../org/apache/sis/io/stream/ByteRangeChannel.java |   4 +-
 .../org/apache/sis/io/stream/ChannelDataInput.java | 324 +++++--
 .../apache/sis/io/stream/ChannelDataOutput.java    |  28 +
 .../org/apache/sis/io/stream/ChannelFactory.java   |  46 +-
 .../org/apache/sis/io/stream/DataTransfer.java     |  28 +-
 .../apache/sis/io/stream/FileCacheByteChannel.java |  26 +-
 .../org/apache/sis/io/stream/HttpByteChannel.java  |  21 +
 .../apache/sis/io/stream/HyperRectangleReader.java |  28 +-
 .../apache/sis/io/stream/HyperRectangleWriter.java | 280 ++++--
 .../main/org/apache/sis/io/stream/IOUtilities.java |  16 +
 .../apache/sis/io/stream/InternalOptionKey.java    |   2 +-
 .../apache/sis/io/stream/MemoryDataTransfer.java   |  22 +-
 .../main/org/apache/sis/io/stream/Region.java      |  45 +-
 .../org/apache/sis/storage/AbstractResource.java   |  10 +-
 .../main/org/apache/sis/storage/DataOptionKey.java |   9 +
 .../sis/storage/DataStoreContentException.java     |   2 +-
 .../org/apache/sis/storage/DataStoreProvider.java  |  22 +-
 .../org/apache/sis/storage/DataStoreRegistry.java  |  47 +-
 .../main/org/apache/sis/storage/DataStores.java    |  63 +-
 .../main/org/apache/sis/storage/FeatureQuery.java  | 301 +++----
 .../main/org/apache/sis/storage/FeatureSet.java    |   1 -
 .../main/org/apache/sis/storage/FeatureSubset.java |  41 +-
 .../apache/sis/storage/GridCoverageResource.java   |   4 +-
 .../sis/storage/IncompatibleResourceException.java |  56 +-
 .../org/apache/sis/storage/ProbeProviderPair.java  |   6 +-
 .../main/org/apache/sis/storage/ProbeResult.java   |  10 +-
 .../org/apache/sis/storage/StorageConnector.java   | 116 ++-
 .../main/org/apache/sis/storage/URLDataSource.java |  25 +-
 .../sis/storage/UnsupportedQueryException.java     |  12 +
 .../sis/storage/aggregate/AggregatedResource.java  | 182 +++-
 .../aggregate/BandAggregateGridResource.java       |  88 +-
 .../aggregate/ConcatenatedGridCoverage.java        | 393 ++++-----
 .../aggregate/ConcatenatedGridResource.java        | 442 +++++-----
 .../sis/storage/aggregate/CoverageAggregator.java  |  77 +-
 .../sis/storage/aggregate/DimensionSelector.java   |  99 ++-
 .../apache/sis/storage/aggregate/GridSlice.java    | 233 +++--
 .../sis/storage/aggregate/GridSliceLocator.java    | 210 ++---
 .../org/apache/sis/storage/aggregate/Group.java    |  61 +-
 .../sis/storage/aggregate/GroupAggregate.java      | 175 +---
 .../apache/sis/storage/aggregate/GroupByCRS.java   |  50 +-
 .../sis/storage/aggregate/GroupBySample.java       |  57 +-
 .../sis/storage/aggregate/GroupByTransform.java    | 121 ++-
 .../sis/storage/aggregate/MergeStrategy.java       | 222 +++--
 .../org/apache/sis/storage/base/ArrayOfLongs.java  |  86 ++
 .../sis/storage/base/FeatureCatalogBuilder.java    |  81 --
 .../sis/storage/base/GridResourceWrapper.java      |   1 +
 .../org/apache/sis/storage/base/LegalSymbols.java  | 107 ++-
 .../sis/storage/base/MemoryGridResource.java       |  44 +-
 .../apache/sis/storage/base/MetadataBuilder.java   | 185 ++--
 .../sis/storage/base/TiledDeferredImage.java       |   3 +-
 .../apache/sis/storage/base/TiledGridCoverage.java | 259 ++++--
 .../apache/sis/storage/base/TiledGridResource.java |  69 +-
 .../org/apache/sis/storage/base/URIDataStore.java  |   4 +-
 .../sis/storage/base/URIDataStoreProvider.java     |  33 +-
 .../sis/storage/base/WritableAggregateSupport.java |   2 +-
 .../storage/base/WritableGridCoverageSupport.java  |   6 +-
 .../sis/storage/csv/MovingFeatureBuilder.java      |   7 +-
 .../main/org/apache/sis/storage/csv/Store.java     |   5 +-
 .../apache/sis/storage/esri/AsciiGridStore.java    |  33 +-
 .../org/apache/sis/storage/esri/RasterStore.java   |  37 +-
 .../apache/sis/storage/esri/RawRasterReader.java   |  24 +-
 .../apache/sis/storage/esri/RawRasterStore.java    |  16 +-
 .../org/apache/sis/storage/esri/WritableStore.java |   5 +-
 .../apache/sis/storage/event/StoreListeners.java   |   5 +-
 .../main/org/apache/sis/storage/folder/Store.java  |   8 +-
 .../apache/sis/storage/folder/StoreProvider.java   |   6 +-
 .../apache/sis/storage/image/DataStoreFilter.java  |  21 +-
 .../org/apache/sis/storage/image/FormatFilter.java |   4 +-
 .../org/apache/sis/storage/image/FormatFinder.java |  67 +-
 .../apache/sis/storage/image/MultiImageStore.java  |   2 +-
 .../apache/sis/storage/image/SingleImageStore.java |   2 +-
 .../sis/storage/image/WorldFileResource.java       |  18 +-
 .../apache/sis/storage/image/WorldFileStore.java   |  58 +-
 .../apache/sis/storage/image/WritableStore.java    |  37 +-
 .../org/apache/sis/storage/internal/Resources.java |  16 +-
 .../sis/storage/internal/Resources.properties      |   6 +-
 .../sis/storage/internal/Resources_fr.properties   |   6 +-
 .../sis/storage/modifier/CoverageModifier.java     | 385 +++++++++
 .../apache/sis/storage/modifier}/package-info.java |   7 +-
 .../main/org/apache/sis/storage/tiling/Tile.java   |  19 +
 .../org/apache/sis/storage/wkt/StoreFormat.java    |   6 +-
 .../apache/sis/io/stream/ChannelDataInputTest.java | 111 ++-
 .../sis/io/stream/HyperRectangleReaderTest.java    |  10 +-
 .../sis/io/stream/HyperRectangleWriterTest.java    |  44 +
 .../org/apache/sis/storage/FeatureQueryTest.java   |  25 +-
 .../apache/sis/storage/StorageConnectorTest.java   |  16 +
 .../aggregate/BandAggregateGridResourceTest.java   |   4 +-
 .../storage/aggregate/CoverageAggregatorTest.java  | 107 ++-
 .../sis/storage/aggregate/CoverageMosaicTest.java  | 379 +++++++++
 .../sis/storage/aggregate/OpaqueGridResource.java  |  11 +-
 .../sis/storage/base/MetadataBuilderTest.java      |  63 +-
 .../apache/sis/storage/esri/WritableStoreTest.java |   8 +-
 .../sis/storage/image/SelfConsistencyTest.java     |   2 +-
 .../sis/storage/image/WorldFileStoreTest.java      |  13 +-
 .../services/org.apache.sis.util.ObjectConverter   |  11 +
 .../src/org.apache.sis.util/main/module-info.java  |  20 +-
 .../apache/sis/converter/ConverterRegistry.java    |  12 +-
 .../org/apache/sis/converter/DateConverter.java    |  51 +-
 .../org/apache/sis/converter/InstantConverter.java |  83 ++
 .../org/apache/sis/converter/StringConverter.java  |  84 +-
 .../org/apache/sis/converter/SystemRegistry.java   |  10 +-
 .../main/org/apache/sis/io/TableAppender.java      |   7 +-
 .../main/org/apache/sis/io/TabularFormat.java      |  10 +-
 .../main/org/apache/sis/math/FunctionProperty.java |   4 +-
 .../main/org/apache/sis/math/StatisticsFormat.java |   9 +-
 .../main/org/apache/sis/math/Vector.java           |   2 +
 .../main/org/apache/sis/measure/AngleFormat.java   |  47 +-
 .../sis/pending/jdk/{JDK22.java => JDK20.java}     |  23 +-
 .../main/org/apache/sis/pending/jdk/JDK21.java     |  24 +-
 .../main/org/apache/sis/pending/jdk/JDK24.txt      |   1 +
 .../main/org/apache/sis/setup/Configuration.java   |  45 +-
 .../main/org/apache/sis/setup/GeometryLibrary.java |  37 +-
 .../apache/sis/setup/InstallationResources.java    |   7 +-
 .../main/org/apache/sis/setup/OptionKey.java       |  11 +-
 .../main/org/apache/sis/system/Reflect.java        |  27 +
 .../main/org/apache/sis/system/Shutdown.java       |  38 +-
 .../main/org/apache/sis/util/ArraysExt.java        |  41 +-
 .../main/org/apache/sis/util/CharSequences.java    |  16 +-
 .../sis/util/DefaultInternationalString.java       |  39 +-
 .../main/org/apache/sis/util/Version.java          |  13 +-
 .../sis/util/collection/DefaultTreeTable.java      |  25 +-
 .../org/apache/sis/util/collection/RangeSet.java   |   6 +-
 .../org/apache/sis/util/collection/TreeTable.java  |  21 +-
 .../sis/util/collection/TreeTableFormat.java       |  12 +-
 .../org/apache/sis/util/collection/WeakEntry.java  |   2 +-
 .../apache/sis/util/collection/WeakHashSet.java    |   1 +
 .../main/org/apache/sis/util/logging/Logging.java  |   5 +-
 .../org/apache/sis/util/privy/AbstractMap.java     |   8 +-
 .../org/apache/sis/util/privy/CollectionsExt.java  |  26 +-
 .../main/org/apache/sis/util/privy/Numerics.java   |  19 +
 .../main/org/apache/sis/util/privy/Strings.java    |  61 +-
 .../sis/util/privy/UnmodifiableArrayList.java      |   3 +-
 .../main/org/apache/sis/util/resources/Errors.java |   7 +-
 .../apache/sis/util/resources/Errors.properties    |   1 -
 .../apache/sis/util/resources/Errors_fr.properties |   1 -
 .../sis/util/resources/IndexedResourceBundle.java  |  19 +
 .../org/apache/sis/util/resources/Vocabulary.java  |   5 +
 .../sis/util/resources/Vocabulary.properties       |   1 +
 .../sis/util/resources/Vocabulary_fr.properties    |   1 +
 .../org/apache/sis/pending/jdk/JDK18Test.java}     |  29 +-
 .../org/apache/sis/test/LogRecordCollector.java    |   2 +-
 .../sis/util/DefaultInternationalStringTest.java   |   8 +-
 .../sis/util/SimpleInternationalStringTest.java    |   8 +-
 .../sis/util/collection/TreeTableFormatTest.java   |   2 +-
 .../org/apache/sis/util/privy/NumericsTest.java    |  26 +-
 incubator/build.gradle.kts                         |  10 +-
 .../org.apache.sis.storage.DataStoreProvider       |   2 +-
 .../main/module-info.java                          |  31 +-
 .../sis/storage/geoheif/CoverageBuilder.java       | 699 +++++++++++++++
 .../apache/sis/storage/geoheif/FromImageIO.java    | 165 ++++
 .../apache/sis/storage/geoheif/GeoHeifStore.java   | 366 ++++++++
 .../sis/storage/geoheif/GeoHeifStoreProvider.java  | 114 +--
 .../main/org/apache/sis/storage/geoheif/Group.java |  73 ++
 .../main/org/apache/sis/storage/geoheif/Image.java | 143 ++++
 .../apache/sis/storage/geoheif/ImageResource.java  | 473 +++++++++++
 .../org/apache/sis/storage/geoheif/Pyramid.java    |  52 ++
 .../sis/storage/geoheif/ResourceBuilder.java       | 467 ++++++++++
 .../sis/storage/geoheif/UncompressedImage.java     | 123 +++
 .../apache/sis/storage/geoheif}/package-info.java  |  14 +-
 .../main/org/apache/sis/storage/isobmff/Box.java   | 114 +++
 .../apache/sis/storage/isobmff/BoxRegistry.java    |  92 ++
 .../org/apache/sis/storage/isobmff/ByteRanges.java | 163 ++++
 .../apache/sis/storage/isobmff/ContainerBox.java   |  76 ++
 .../org/apache/sis/storage/isobmff/Extension.java  |  89 ++
 .../org/apache/sis/storage/isobmff/FullBox.java    | 111 +++
 .../sis/storage/isobmff/MainBoxRegistry.java       | 189 +++++
 .../org/apache/sis/storage/isobmff/Reader.java     | 393 +++++++++
 .../main/org/apache/sis/storage/isobmff/Root.java  |  53 ++
 .../org/apache/sis/storage/isobmff/TreeNode.java   | 377 +++++++++
 .../isobmff/UnsupportedVersionException.java       |  41 +-
 .../apache/sis/storage/isobmff/VectorReader.java   | 134 +++
 .../storage/isobmff/base/ColourInformation.java    | 124 +++
 .../sis/storage/isobmff/base/CombinaisonType.java  |  63 ++
 .../apache/sis/storage/isobmff/base/Copyright.java |  92 ++
 .../sis/storage/isobmff/base/EntityToGroup.java    |  62 ++
 .../sis/storage/isobmff/base/ExtendedType.java     |  76 ++
 .../storage/isobmff/base/FDItemInfoExtension.java  | 110 +++
 .../apache/sis/storage/isobmff/base/FileType.java  |  80 ++
 .../sis/storage/isobmff/base/FreeSpace.java}       |  44 +-
 .../apache/sis/storage/isobmff/base/GroupList.java |  63 ++
 .../sis/storage/isobmff/base/HandlerReference.java |  79 ++
 .../apache/sis/storage/isobmff/base/HeaderBox.java | 102 +++
 .../storage/isobmff/base/IdentifiedMediaData.java  |  76 ++
 .../apache/sis/storage/isobmff/base/ItemData.java  | 100 +++
 .../apache/sis/storage/isobmff/base/ItemInfo.java  | 113 +++
 .../sis/storage/isobmff/base/ItemInfoEntry.java    | 193 +++++
 .../sis/storage/isobmff/base/ItemLocation.java     | 298 +++++++
 .../sis/storage/isobmff/base/ItemProperties.java   | 207 +++++
 .../isobmff/base/ItemPropertyAssociation.java      | 180 ++++
 .../isobmff/base/ItemPropertyContainer.java        |  64 ++
 .../sis/storage/isobmff/base/ItemReference.java    |  79 ++
 .../apache/sis/storage/isobmff/base/MediaData.java |  58 ++
 .../org/apache/sis/storage/isobmff/base/Meta.java  | 102 +++
 .../org/apache/sis/storage/isobmff/base/Movie.java |  59 ++
 .../sis/storage/isobmff/base/MovieHeader.java      |  81 ++
 .../sis/storage/isobmff/base/OriginalFileType.java |  61 ++
 .../sis/storage/isobmff/base/PrimaryItem.java      |  72 ++
 .../isobmff/base/ProgressiveDownloadInfo.java      |  62 ++
 .../isobmff/base/SingleItemTypeReference.java      |  69 ++
 .../org/apache/sis/storage/isobmff/base/Track.java |  61 ++
 .../sis/storage/isobmff/base/TrackHeader.java      | 124 +++
 .../apache/sis/storage/isobmff/base/UserData.java  |  59 ++
 .../sis/storage/isobmff/base/package-info.java}    |  18 +-
 .../apache/sis/storage/isobmff/gimi/ModelCRS.java  | 116 +++
 .../sis/storage/isobmff/gimi/ModelTiePoint.java    |  97 +++
 .../storage/isobmff/gimi/ModelTransformation.java  |  89 ++
 .../isobmff/gimi/TiledImageConfiguration.java}     |  45 +-
 .../sis/storage/isobmff/gimi/UnknownProperty.java  |  63 ++
 .../sis/storage/isobmff/gimi/package-info.java}    |  18 +-
 .../sis/storage/isobmff/image/CreationTime.java    |  69 ++
 .../isobmff/image/DerivedImageReference.java       |  54 ++
 .../sis/storage/isobmff/image/ImagePyramid.java    | 118 +++
 .../storage/isobmff/image/ImageSpatialExtents.java |  79 ++
 .../storage/isobmff/image/ModificationTime.java    |  69 ++
 .../storage/isobmff/image/PixelInformation.java    |  70 ++
 .../sis/storage/isobmff/image/UserDescription.java | 102 +++
 .../sis/storage/isobmff/image/package-info.java}   |  23 +-
 .../sis/storage/isobmff/mpeg/ChromaLocation.java   |  59 ++
 .../apache/sis/storage/isobmff/mpeg/Component.java | 138 +++
 .../storage/isobmff/mpeg/ComponentDefinition.java  |  96 +++
 .../sis/storage/isobmff/mpeg/ComponentPalette.java | 160 ++++
 .../isobmff/mpeg/ComponentPatternDefinition.java   |  91 ++
 .../isobmff/mpeg/ComponentReferenceLevel.java      |  59 ++
 .../sis/storage/isobmff/mpeg/ComponentType.java    | 188 +++++
 .../isobmff/mpeg/DepthMappingInformation.java      |  59 ++
 .../storage/isobmff/mpeg/DisparityInformation.java |  59 ++
 .../sis/storage/isobmff/mpeg/FieldInterlace.java   |  59 ++
 .../storage/isobmff/mpeg/FieldInterlaceType.java   |  56 ++
 .../isobmff/mpeg/FramePackingInformation.java      |  59 ++
 .../sis/storage/isobmff/mpeg/InterleavingMode.java | 101 +++
 .../mpeg/PolarizationPatternDefinition.java        |  59 ++
 .../storage/isobmff/mpeg/SensorBadPixelsMap.java   |  59 ++
 .../mpeg/SensorNonUniformityCorrection.java        |  59 ++
 .../sis/storage/isobmff/mpeg/TAIClockInfo.java     |  85 ++
 .../sis/storage/isobmff/mpeg/TAITimeStamp.java     |  75 ++
 .../isobmff/mpeg/UncompressedFrameConfig.java      | 269 ++++++
 .../sis/storage/isobmff/mpeg/package-info.java}    |  23 +-
 .../apache/sis/storage/isobmff/package-info.java   |  48 ++
 .../storage/isobmff/video/ContentDescribes.java    |  56 ++
 .../sis/storage/isobmff/video/package-info.java}   |  23 +-
 .../org/apache/sis/storage/isobmff/BoxTest.java    |  36 +-
 .../sis/storage/isobmff/gimi/ExtensionTest.java    |  18 +-
 .../storage/isobmff/mpeg/ComponentTypeTest.java    |  60 ++
 .../apache/sis/storage/geopackage/GpkgStore.java   |   2 +-
 .../sis/storage/geopackage/GpkgStoreTest.java      |  16 +-
 .../conformance/CoreConformanceTest.java           |   2 +-
 .../org.apache.sis.storage.DataStoreProvider       |   4 -
 ...org.apache.sis.storage.gimi.isobmff.BoxRegistry |   8 -
 .../org/apache/sis/storage/gimi/GimiProvider.java  | 118 ---
 .../org/apache/sis/storage/gimi/GimiStore.java     | 259 ------
 .../main/org/apache/sis/storage/gimi/GimiTile.java |  67 --
 .../apache/sis/storage/gimi/GimiTileMatrix.java    | 117 ---
 .../apache/sis/storage/gimi/GimiTileMatrixSet.java |  73 --
 .../main/org/apache/sis/storage/gimi/Group.java    |  67 --
 .../main/org/apache/sis/storage/gimi/Item.java     | 234 -----
 .../org/apache/sis/storage/gimi/ResourceGrid.java  | 173 ----
 .../apache/sis/storage/gimi/ResourceImageJpeg.java |  63 --
 .../storage/gimi/ResourceImageUncompressed.java    | 321 -------
 .../apache/sis/storage/gimi/ResourcePyramid.java   | 199 -----
 .../apache/sis/storage/gimi/ResourceUnknown.java   |  62 --
 .../storage/gimi/internal/MatrixGridRessource.java | 138 ---
 .../sis/storage/gimi/internal/ScaleSortedMap.java  | 105 ---
 .../sis/storage/gimi/internal/StringUtilities.java |  64 --
 .../sis/storage/gimi/internal/TileMatrices.java    |  65 --
 .../org/apache/sis/storage/gimi/isobmff/Box.java   | 279 ------
 .../sis/storage/gimi/isobmff/BoxRegistry.java      |  65 --
 .../sis/storage/gimi/isobmff/ISOBMFFReader.java    | 180 ----
 .../apache/sis/storage/gimi/isobmff/gimi/GIMI.java |  70 --
 .../gimi/isobmff/gimi/ModelTiePointProperty.java   |  64 --
 .../isobmff/gimi/ModelTransformationProperty.java  |  55 --
 .../isobmff/gimi/TiledImageConfigurationBox.java   |  40 -
 .../gimi/isobmff/gimi/WellKnownText2Property.java  |  48 --
 .../gimi/isobmff/iso14496_10/ISO14496_10.java      |  61 --
 .../isobmff/iso14496_12/ColourInformation.java     |  56 --
 .../gimi/isobmff/iso14496_12/CombinaisonType.java  |  45 -
 .../gimi/isobmff/iso14496_12/EntityToGroup.java    |  40 -
 .../gimi/isobmff/iso14496_12/Extension.java        |  31 -
 .../isobmff/iso14496_12/FDItemInfoExtension.java   |  40 -
 .../storage/gimi/isobmff/iso14496_12/FileType.java |  28 -
 .../gimi/isobmff/iso14496_12/FreeSpace.java        |  31 -
 .../gimi/isobmff/iso14496_12/GroupList.java        |  35 -
 .../gimi/isobmff/iso14496_12/HandlerReference.java |  45 -
 .../gimi/isobmff/iso14496_12/ISO14496_12.java      | 115 ---
 .../isobmff/iso14496_12/IdentifiedMediaData.java   |  50 --
 .../storage/gimi/isobmff/iso14496_12/ItemData.java |  40 -
 .../gimi/isobmff/iso14496_12/ItemFullProperty.java |  28 -
 .../storage/gimi/isobmff/iso14496_12/ItemInfo.java |  45 -
 .../gimi/isobmff/iso14496_12/ItemInfoEntry.java    |  75 --
 .../gimi/isobmff/iso14496_12/ItemLocation.java     | 156 ----
 .../gimi/isobmff/iso14496_12/ItemProperties.java   |  35 -
 .../gimi/isobmff/iso14496_12/ItemProperty.java     |  28 -
 .../iso14496_12/ItemPropertyAssociation.java       |  69 --
 .../isobmff/iso14496_12/ItemPropertyContainer.java |  35 -
 .../gimi/isobmff/iso14496_12/ItemReference.java    |  50 --
 .../gimi/isobmff/iso14496_12/MediaData.java        |  61 --
 .../sis/storage/gimi/isobmff/iso14496_12/Meta.java |  36 -
 .../storage/gimi/isobmff/iso14496_12/Movie.java    |  36 -
 .../gimi/isobmff/iso14496_12/MovieHeader.java      |  42 -
 .../gimi/isobmff/iso14496_12/OriginalFileType.java |  35 -
 .../gimi/isobmff/iso14496_12/PrimaryItem.java      |  44 -
 .../iso14496_12/ProgressiveDownloadInfo.java       |  40 -
 .../iso14496_12/SingleItemTypeReference.java       |  50 --
 .../iso14496_12/SingleItemTypeReferenceLarge.java  |  38 -
 .../storage/gimi/isobmff/iso14496_12/Track.java    |  36 -
 .../gimi/isobmff/iso14496_12/TrackHeader.java      |  40 -
 .../gimi/isobmff/iso23001_17/ChromaLocation.java   |  37 -
 .../isobmff/iso23001_17/ComponentDefinition.java   |  68 --
 .../gimi/isobmff/iso23001_17/ComponentPalette.java |  58 --
 .../iso23001_17/ComponentPatternDefinition.java    |  50 --
 .../iso23001_17/ComponentReferenceLevel.java       |  37 -
 .../iso23001_17/DepthMappingInformation.java       |  37 -
 .../isobmff/iso23001_17/DisparityInformation.java  |  37 -
 .../iso23001_17/FieldInterlaceProperty.java        |  37 -
 .../isobmff/iso23001_17/FieldInterlaceType.java    |  37 -
 .../iso23001_17/FramePackingInformation.java       |  37 -
 .../gimi/isobmff/iso23001_17/ISO23001_17.java      |  93 --
 .../iso23001_17/PolarizationPatternDefinition.java |  37 -
 .../isobmff/iso23001_17/SensorBadPixelsMap.java    |  37 -
 .../iso23001_17/SensorNonUniformityCorrection.java |  37 -
 .../gimi/isobmff/iso23001_17/TAIClockInfo.java     |  50 --
 .../gimi/isobmff/iso23001_17/TAITimeStamp.java     |  46 -
 .../iso23001_17/UncompressedFrameConfig.java       |  93 --
 .../isobmff/iso23008_12/DerivedImageReference.java |  29 -
 .../gimi/isobmff/iso23008_12/ISO23008_12.java      |  72 --
 .../iso23008_12/ImagePyramidEntityGroup.java       |  63 --
 .../isobmff/iso23008_12/ImageSpatialExtents.java   |  49 --
 .../iso23008_12/PixelInformationProperty.java      |  42 -
 .../iso23008_12/UserDescriptionProperty.java       |  45 -
 .../org/apache/sis/storage/gimi/package-info.java  |  23 -
 .../org/apache/sis/storage/gimi/StoreTest.java     |  21 -
 .../org/apache/sis/storage/gsf/StructClass.java    |  10 +
 .../org/apache/sis/storage/gsf/SwathBathyPing.java |   8 +-
 .../storage/shapefile/ListingPropertyVisitor.java  |  79 --
 .../sis/storage/shapefile/ShapefileStore.java      |  69 +-
 .../apache/sis/storage/shapefile/dbf/DBFField.java |  42 +-
 .../sis/storage/shapefile/dbf/DBFHeader.java       |   5 +-
 .../sis/storage/shapefile/dbf/DBFReader.java       |   5 +-
 .../sis/storage/shapefile/shp/ShapeRecord.java     |   6 +-
 .../sis/storage/shapefile/dbf/DBFIOTest.java       |   8 +-
 .../apache/sis/storage/shapefile/dbf/Snippets.java |   8 +-
 .../sis/storage/shapefile/shp/ShapeIOTest.java     |   2 +-
 netbeans-project/ivy.xml                           |   4 +-
 netbeans-project/nbproject/project.properties      |   2 +-
 netbeans-project/nbproject/project.xml             |   3 +
 optional/build.gradle.kts                          |   2 +
 optional/src/org.apache.sis.gui/bundle/README      |   2 +-
 optional/src/org.apache.sis.gui/bundle/bin/sisfx   |  12 +
 .../apache/sis/gui/coverage/CoverageCanvas.java    |  74 +-
 .../org/apache/sis/gui/coverage/GridTileCache.java |  11 +-
 .../main/org/apache/sis/gui/coverage/GridView.java |   4 +-
 .../apache/sis/gui/coverage/IsolineRenderer.java   |   2 +-
 .../gui/coverage/MultiResolutionImageLoader.java   |   2 +-
 .../apache/sis/gui/internal/ImageConverter.java    |   4 +-
 .../apache/sis/gui/internal/io/FileAccessItem.java |   2 +-
 .../apache/sis/gui/internal/io/FileAccessView.java |   2 +-
 .../main/org/apache/sis/gui/map/MapCanvas.java     |   8 +-
 .../main/org/apache/sis/gui/map/MapCanvasAWT.java  |   2 +-
 .../main/org/apache/sis/gui/map/StatusBar.java     |   6 +-
 .../main/org/apache/sis/gui/map/package-info.java  |   2 +-
 .../sis/gui/metadata/IdentificationInfo.java       |  14 +-
 .../org/apache/sis/gui/metadata/MetadataTree.java  |  15 +-
 .../sis/gui/metadata/StandardMetadataTree.java     |   8 +-
 .../org/apache/sis/gui/metadata/package-info.java  |   2 +-
 .../org/apache/sis/gui/referencing/WKTPane.java    |   3 +-
 .../org.apache.sis.storage.DataStoreProvider       |   2 +-
 .../main/org/apache/sis/storage/gdal/Band.java     |  21 +-
 .../org/apache/sis/storage/gdal/ErrorHandler.java  |   8 +-
 .../apache/sis/storage/gdal/FeatureIterator.java   | 493 +++++++++++
 .../org/apache/sis/storage/gdal/FeatureLayer.java  | 343 ++++++++
 .../org/apache/sis/storage/gdal/FieldAccessor.java | 656 ++++++++++++++
 .../main/org/apache/sis/storage/gdal/GDAL.java     |  31 +-
 .../org/apache/sis/storage/gdal/GDALStore.java     | 109 ++-
 .../main/org/apache/sis/storage/gdal/OGR.java      | 341 ++++++++
 .../main/org/apache/sis/storage/gdal/Opener.java   |  38 +-
 .../org/apache/sis/storage/gdal/SpatialRef.java    | 138 ++-
 .../org/apache/sis/storage/gdal/TiledCoverage.java |  36 +-
 .../org/apache/sis/storage/gdal/TiledResource.java |  46 +-
 .../org/apache/sis/storage/gdal/package-info.java  |  13 +-
 .../apache/sis/storage/panama/NativeFunctions.java |  14 +-
 .../org/apache/sis/storage/panama/Resources.java   |   5 +
 .../apache/sis/storage/panama/Resources.properties |   1 +
 .../sis/storage/panama/Resources_fr.properties     |   1 +
 .../org/apache/sis/storage/gdal/GDALStoreTest.java |   2 +-
 settings.gradle.kts                                |   6 +-
 836 files changed, 34540 insertions(+), 14905 deletions(-)
 rename 
endorsed/src/org.apache.sis.feature/main/org/apache/sis/coverage/privy/{MultiSourceArgument.java
 => BandAggregateArgument.java} (98%)
 delete mode 100644 
endorsed/src/org.apache.sis.feature/main/org/apache/sis/coverage/privy/ImageLayout.java
 create mode 100644 
endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/privy/FeatureProjection.java
 create mode 100644 
endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/privy/FeatureProjectionBuilder.java
 delete mode 100644 
endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/privy/FeatureUtilities.java
 create mode 100644 
endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/privy/FeatureView.java
 copy 
endorsed/src/org.apache.sis.feature/main/org/apache/sis/{coverage/MismatchedCoverageRangeException.java
 => filter/InvalidXPathException.java} (54%)
 create mode 100644 
endorsed/src/org.apache.sis.feature/main/org/apache/sis/filter/privy/ListingPropertyVisitor.java
 create mode 100644 
endorsed/src/org.apache.sis.feature/main/org/apache/sis/filter/privy/WarningEvent.java
 copy 
endorsed/src/org.apache.sis.feature/main/org/apache/sis/geometry/wrapper/{AbstractGeometry.java
 => Capability.java} (54%)
 create mode 100644 
endorsed/src/org.apache.sis.feature/main/org/apache/sis/geometry/wrapper/Dimensions.java
 create mode 100644 
endorsed/src/org.apache.sis.feature/main/org/apache/sis/geometry/wrapper/jts/ConverterTo2D.java
 rename 
endorsed/src/org.apache.sis.feature/main/org/apache/sis/image/{MultiSourceLayout.java
 => BandAggregateLayout.java} (70%)
 create mode 100644 
endorsed/src/org.apache.sis.feature/main/org/apache/sis/image/ImageLayout.java
 create mode 100644 
endorsed/src/org.apache.sis.feature/main/org/apache/sis/image/ImageOverlay.java
 create mode 100644 
endorsed/src/org.apache.sis.feature/main/org/apache/sis/image/privy/AssertionMessages.java
 rename endorsed/src/org.apache.sis.feature/main/org/apache/sis/{coverage => 
image}/privy/BatchComputedImage.java (99%)
 create mode 100644 
endorsed/src/org.apache.sis.feature/main/org/apache/sis/image/privy/ColorModelBuilder.java
 rename endorsed/src/org.apache.sis.feature/main/org/apache/sis/{coverage => 
image}/privy/ColorModelFactory.java (90%)
 rename endorsed/src/org.apache.sis.feature/main/org/apache/sis/{coverage => 
image}/privy/ColorModelType.java (98%)
 rename 
endorsed/src/org.apache.sis.feature/main/org/apache/sis/{coverage/privy/ColorModelBuilder.java
 => image/privy/ColorScaleBuilder.java} (94%)
 rename endorsed/src/org.apache.sis.feature/main/org/apache/sis/{coverage => 
image}/privy/ColorsForRange.java (98%)
 rename endorsed/src/org.apache.sis.feature/main/org/apache/sis/{coverage => 
image}/privy/DeferredProperty.java (99%)
 rename endorsed/src/org.apache.sis.feature/main/org/apache/sis/{coverage => 
image}/privy/FillValues.java (99%)
 rename endorsed/src/org.apache.sis.feature/main/org/apache/sis/{coverage => 
image}/privy/ImageUtilities.java (85%)
 rename endorsed/src/org.apache.sis.feature/main/org/apache/sis/{coverage => 
image}/privy/MultiBandsIndexColorModel.java (99%)
 rename endorsed/src/org.apache.sis.feature/main/org/apache/sis/{coverage => 
image}/privy/ObservableImage.java (99%)
 rename endorsed/src/org.apache.sis.feature/main/org/apache/sis/{coverage => 
image}/privy/RasterFactory.java (98%)
 rename endorsed/src/org.apache.sis.feature/main/org/apache/sis/{coverage/grid 
=> image/privy}/ReshapedImage.java (87%)
 rename 
endorsed/src/org.apache.sis.feature/main/org/apache/sis/{coverage/privy/SampleModelFactory.java
 => image/privy/SampleModelBuilder.java} (69%)
 rename endorsed/src/org.apache.sis.feature/main/org/apache/sis/{coverage => 
image}/privy/ScaledColorModel.java (99%)
 rename endorsed/src/org.apache.sis.feature/main/org/apache/sis/{coverage => 
image}/privy/ScaledColorSpace.java (99%)
 rename endorsed/src/org.apache.sis.feature/main/org/apache/sis/{coverage => 
image}/privy/TileErrorHandler.java (99%)
 rename endorsed/src/org.apache.sis.feature/main/org/apache/sis/{coverage => 
image}/privy/TileOpExecutor.java (99%)
 rename endorsed/src/org.apache.sis.feature/main/org/apache/sis/{coverage => 
image}/privy/TilePlaceholder.java (97%)
 rename endorsed/src/org.apache.sis.feature/main/org/apache/sis/{coverage => 
image}/privy/TiledImage.java (99%)
 rename endorsed/src/org.apache.sis.feature/main/org/apache/sis/{coverage => 
image}/privy/WritableTiledImage.java (99%)
 copy endorsed/src/org.apache.sis.feature/main/org/apache/sis/{coverage => 
image}/privy/package-info.java (91%)
 create mode 100644 
endorsed/src/org.apache.sis.feature/test/org/apache/sis/geometry/wrapper/jts/WrapperTest.java
 rename endorsed/src/org.apache.sis.feature/test/org/apache/sis/{coverage/privy 
=> image}/ImageLayoutTest.java (79%)
 create mode 100644 
endorsed/src/org.apache.sis.feature/test/org/apache/sis/image/ImageOverlayTest.java
 rename endorsed/src/org.apache.sis.feature/test/org/apache/sis/{coverage => 
image}/privy/ColorModelBuilderTest.java (91%)
 rename endorsed/src/org.apache.sis.feature/test/org/apache/sis/{coverage => 
image}/privy/ImageUtilitiesTest.java (89%)
 rename endorsed/src/org.apache.sis.feature/test/org/apache/sis/{coverage/grid 
=> image/privy}/ReshapedImageTest.java (94%)
 rename 
endorsed/src/org.apache.sis.feature/test/org/apache/sis/{coverage/privy/SampleModelFactoryTest.java
 => image/privy/SampleModelBuilderTest.java} (72%)
 rename endorsed/src/org.apache.sis.feature/test/org/apache/sis/{coverage => 
image}/privy/ScaledColorSpaceTest.java (98%)
 create mode 100644 
endorsed/src/org.apache.sis.metadata/test/org/apache/sis/metadata/sql/privy/SQLBuilderTest.java
 copy 
endorsed/src/org.apache.sis.metadata/test/org/apache/sis/temporal/{GeneralDurationTest.java
 => TimeMethodsTest.java} (54%)
 copy 
endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/provider/{Geographic2Dto3D.java
 => Spherical2Dto3D.java} (63%)
 copy 
endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/provider/{Geographic2Dto3D.java
 => Spherical3Dto2D.java} (62%)
 create mode 100644 
endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/transform/EllipsoidToRadiusTransform.java
 create mode 100644 
endorsed/src/org.apache.sis.referencing/main/org/apache/sis/referencing/operation/transform/OnewayLinearTransform.java
 create mode 100644 
endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/operation/transform/EllipsoidToRadiusTransformTest.java
 create mode 100644 
endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/operation/transform/EllipsoidToSphericalTransformTest.java
 delete mode 100644 
endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/spi/SchemaModifier.java
 delete mode 100644 
endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/spi/package-info.java
 create mode 100644 
endorsed/src/org.apache.sis.storage.geotiff/test/org/apache/sis/storage/geotiff/GeoTiffStoreTest.java
 create mode 100644 
endorsed/src/org.apache.sis.storage.sql/main/org/apache/sis/storage/sql/duckdb/DuckDB.java
 copy 
endorsed/src/org.apache.sis.storage.sql/main/org/apache/sis/storage/sql/{postgis
 => duckdb}/ExtendedClauseWriter.java (87%)
 create mode 100644 
endorsed/src/org.apache.sis.storage.sql/main/org/apache/sis/storage/sql/duckdb/package-info.java
 create mode 100644 
endorsed/src/org.apache.sis.storage.sql/main/org/apache/sis/storage/sql/feature/GeometryEncoding.java
 create mode 100644 
endorsed/src/org.apache.sis.storage/main/org/apache/sis/storage/base/ArrayOfLongs.java
 delete mode 100644 
endorsed/src/org.apache.sis.storage/main/org/apache/sis/storage/base/FeatureCatalogBuilder.java
 create mode 100644 
endorsed/src/org.apache.sis.storage/main/org/apache/sis/storage/modifier/CoverageModifier.java
 copy {optional/src/org.apache.sis.gui/main/org/apache/sis/gui/referencing => 
endorsed/src/org.apache.sis.storage/main/org/apache/sis/storage/modifier}/package-info.java
 (85%)
 create mode 100644 
endorsed/src/org.apache.sis.storage/test/org/apache/sis/storage/aggregate/CoverageMosaicTest.java
 create mode 100644 
endorsed/src/org.apache.sis.util/main/org/apache/sis/converter/InstantConverter.java
 copy 
endorsed/src/org.apache.sis.util/main/org/apache/sis/pending/jdk/{JDK22.java => 
JDK20.java} (62%)
 create mode 100644 
endorsed/src/org.apache.sis.util/main/org/apache/sis/pending/jdk/JDK24.txt
 copy 
endorsed/src/{org.apache.sis.metadata/test/org/apache/sis/metadata/iso/quality/DefaultDomainConsistencyTest.java
 => org.apache.sis.util/test/org/apache/sis/pending/jdk/JDK18Test.java} (61%)
 copy {endorsed/src/org.apache.sis.storage.earthobservation => 
incubator/src/org.apache.sis.storage.geoheif}/main/META-INF/services/org.apache.sis.storage.DataStoreProvider
 (81%)
 rename incubator/src/{org.apache.sis.storage.gimi => 
org.apache.sis.storage.geoheif}/main/module-info.java (51%)
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/geoheif/CoverageBuilder.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/geoheif/FromImageIO.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/geoheif/GeoHeifStore.java
 copy 
endorsed/src/org.apache.sis.storage.geotiff/main/org/apache/sis/storage/geotiff/GeoTiffStoreProvider.java
 => 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/geoheif/GeoHeifStoreProvider.java
 (52%)
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/geoheif/Group.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/geoheif/Image.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/geoheif/ImageResource.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/geoheif/Pyramid.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/geoheif/ResourceBuilder.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/geoheif/UncompressedImage.java
 copy {endorsed/src/org.apache.sis.feature/main/org/apache/sis/feature/internal 
=> 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/geoheif}/package-info.java
 (69%)
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/Box.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/BoxRegistry.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/ByteRanges.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/ContainerBox.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/Extension.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/FullBox.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/MainBoxRegistry.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/Reader.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/Root.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/TreeNode.java
 copy 
endorsed/src/org.apache.sis.console/main/org/apache/sis/console/InvalidCommandException.java
 => 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/UnsupportedVersionException.java
 (50%)
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/VectorReader.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/ColourInformation.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/CombinaisonType.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/Copyright.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/EntityToGroup.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/ExtendedType.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/FDItemInfoExtension.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/FileType.java
 copy 
incubator/src/{org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/GeneralType.java
 => 
org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/FreeSpace.java}
 (51%)
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/GroupList.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/HandlerReference.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/HeaderBox.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/IdentifiedMediaData.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/ItemData.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/ItemInfo.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/ItemInfoEntry.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/ItemLocation.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/ItemProperties.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/ItemPropertyAssociation.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/ItemPropertyContainer.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/ItemReference.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/MediaData.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/Meta.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/Movie.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/MovieHeader.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/OriginalFileType.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/PrimaryItem.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/ProgressiveDownloadInfo.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/SingleItemTypeReference.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/Track.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/TrackHeader.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/UserData.java
 rename 
incubator/src/{org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_10/ContentDescribes.java
 => 
org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/base/package-info.java}
 (65%)
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/gimi/ModelCRS.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/gimi/ModelTiePoint.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/gimi/ModelTransformation.java
 rename 
incubator/src/{org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/GeneralType.java
 => 
org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/gimi/TiledImageConfiguration.java}
 (50%)
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/gimi/UnknownProperty.java
 rename 
incubator/src/{org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/FullBox.java
 => 
org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/gimi/package-info.java}
 (75%)
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/image/CreationTime.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/image/DerivedImageReference.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/image/ImagePyramid.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/image/ImageSpatialExtents.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/image/ModificationTime.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/image/PixelInformation.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/image/UserDescription.java
 copy 
incubator/src/{org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/ExtendedType.java
 => 
org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/image/package-info.java}
 (65%)
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/mpeg/ChromaLocation.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/mpeg/Component.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/mpeg/ComponentDefinition.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/mpeg/ComponentPalette.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/mpeg/ComponentPatternDefinition.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/mpeg/ComponentReferenceLevel.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/mpeg/ComponentType.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/mpeg/DepthMappingInformation.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/mpeg/DisparityInformation.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/mpeg/FieldInterlace.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/mpeg/FieldInterlaceType.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/mpeg/FramePackingInformation.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/mpeg/InterleavingMode.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/mpeg/PolarizationPatternDefinition.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/mpeg/SensorBadPixelsMap.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/mpeg/SensorNonUniformityCorrection.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/mpeg/TAIClockInfo.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/mpeg/TAITimeStamp.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/mpeg/UncompressedFrameConfig.java
 copy 
incubator/src/{org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/ExtendedType.java
 => 
org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/mpeg/package-info.java}
 (64%)
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/package-info.java
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/video/ContentDescribes.java
 rename 
incubator/src/{org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/ExtendedType.java
 => 
org.apache.sis.storage.geoheif/main/org/apache/sis/storage/isobmff/video/package-info.java}
 (69%)
 copy 
endorsed/src/org.apache.sis.cloud.aws/test/org/apache/sis/cloud/aws/s3/ClientFileSystemTest.java
 => 
incubator/src/org.apache.sis.storage.geoheif/test/org/apache/sis/storage/isobmff/BoxTest.java
 (60%)
 copy 
endorsed/src/org.apache.sis.referencing/test/org/apache/sis/referencing/factory/sql/TableInfoTest.java
 => 
incubator/src/org.apache.sis.storage.geoheif/test/org/apache/sis/storage/isobmff/gimi/ExtensionTest.java
 (67%)
 create mode 100644 
incubator/src/org.apache.sis.storage.geoheif/test/org/apache/sis/storage/isobmff/mpeg/ComponentTypeTest.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/META-INF/services/org.apache.sis.storage.DataStoreProvider
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/META-INF/services/org.apache.sis.storage.gimi.isobmff.BoxRegistry
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/GimiProvider.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/GimiStore.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/GimiTile.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/GimiTileMatrix.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/GimiTileMatrixSet.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/Group.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/Item.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/ResourceGrid.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/ResourceImageJpeg.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/ResourceImageUncompressed.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/ResourcePyramid.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/ResourceUnknown.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/internal/MatrixGridRessource.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/internal/ScaleSortedMap.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/internal/StringUtilities.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/internal/TileMatrices.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/Box.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/BoxRegistry.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/ISOBMFFReader.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/gimi/GIMI.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/gimi/ModelTiePointProperty.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/gimi/ModelTransformationProperty.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/gimi/TiledImageConfigurationBox.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/gimi/WellKnownText2Property.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_10/ISO14496_10.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/ColourInformation.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/CombinaisonType.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/EntityToGroup.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/Extension.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/FDItemInfoExtension.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/FileType.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/FreeSpace.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/GroupList.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/HandlerReference.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/ISO14496_12.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/IdentifiedMediaData.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/ItemData.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/ItemFullProperty.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/ItemInfo.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/ItemInfoEntry.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/ItemLocation.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/ItemProperties.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/ItemProperty.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/ItemPropertyAssociation.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/ItemPropertyContainer.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/ItemReference.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/MediaData.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/Meta.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/Movie.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/MovieHeader.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/OriginalFileType.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/PrimaryItem.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/ProgressiveDownloadInfo.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/SingleItemTypeReference.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/SingleItemTypeReferenceLarge.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/Track.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso14496_12/TrackHeader.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23001_17/ChromaLocation.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23001_17/ComponentDefinition.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23001_17/ComponentPalette.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23001_17/ComponentPatternDefinition.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23001_17/ComponentReferenceLevel.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23001_17/DepthMappingInformation.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23001_17/DisparityInformation.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23001_17/FieldInterlaceProperty.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23001_17/FieldInterlaceType.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23001_17/FramePackingInformation.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23001_17/ISO23001_17.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23001_17/PolarizationPatternDefinition.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23001_17/SensorBadPixelsMap.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23001_17/SensorNonUniformityCorrection.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23001_17/TAIClockInfo.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23001_17/TAITimeStamp.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23001_17/UncompressedFrameConfig.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23008_12/DerivedImageReference.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23008_12/ISO23008_12.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23008_12/ImagePyramidEntityGroup.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23008_12/ImageSpatialExtents.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23008_12/PixelInformationProperty.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/isobmff/iso23008_12/UserDescriptionProperty.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/main/org/apache/sis/storage/gimi/package-info.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.gimi/test/org/apache/sis/storage/gimi/StoreTest.java
 delete mode 100644 
incubator/src/org.apache.sis.storage.shapefile/main/org/apache/sis/storage/shapefile/ListingPropertyVisitor.java
 create mode 100644 
optional/src/org.apache.sis.storage.gdal/main/org/apache/sis/storage/gdal/FeatureIterator.java
 create mode 100644 
optional/src/org.apache.sis.storage.gdal/main/org/apache/sis/storage/gdal/FeatureLayer.java
 create mode 100644 
optional/src/org.apache.sis.storage.gdal/main/org/apache/sis/storage/gdal/FieldAccessor.java
 create mode 100644 
optional/src/org.apache.sis.storage.gdal/main/org/apache/sis/storage/gdal/OGR.java

Reply via email to