Releases: locationtech/geotrellis
Releases · locationtech/geotrellis
3.4.0
WARNING: This is a non-binary-compatible release (due to #3256).
Added
Changed
- Fix GeoTrellisRasterSources to properly pass time though all the internal functions #3226
- Move GDAL overview strategy logger to debug level #3230
- Fix S3RDDLayerReader partitioning #3231
- GDALRasterSource works inconsistenly with BitCellType and ByteCellType #3232
- rasterizeWithValue accepts only topologically valid polygons #3236
- Rasterizer.rasterize should be consistent with rasterizeWithValue #3238
- GeoTrellisRasterSource should return None on empty reads #3240
- ArrayTile equals method always returns true if first elements are NaN #3242
- Fixed resource issue with JpegDecompressor that was causing a "too many open files in the system" exception on many parallel reads of JPEG compressed GeoTiffs. #3249
- Fix MosaicRasterSource, GDALRasterSource and GeoTiffResampleRasterSource behavior #3252
- HttpRangeReader should live outside of the Spark package #3254
- HttpRangeReader moved to
geotrellis.util
#3256 - Consistently construct GridExtents with
math.round
#3248
3.3.0
Added
- GeoTrellisPath assumes
file
scheme when none provided #3191 - toStrings overrides to common classes #3217
- GeoTrellisRasterSources legacy and temporal layers support #3179
Changed
- Fix
OverviewStrategy
instances now define their own overview selection logic and more accurately port GDAL-Warp -ovr options #3196 - Fix
PolygonRasterizer
failure on some inputs #3160 - Fix GeoTiff Byte and UByte CellType conversions #3189
- Fix incorrect parsing of authority in GeoTrellisPath #3191
- GeoTrellisPath.zoomLevel is now
Option[Int]
->Int
to better indicate that it is a required parameter #3191 - Fix the length of one degree at the equator in metres #3197
- Fix Fix DelaunayRasterizer #3202
- RasterSources resolutions should be consistent across implementations #3210
- Bump gdal-warp-bindings version up to 1.0.0 #3211
- Fixed GDALRasterSource.resample method behavior to respect the passed resampleMethod #3211
- Fix Jackson dependencies #3212
- Fix Rasterizer for polygons containing concavities whith
PixelIsArea
option #3192 - Fix spatial join (Spark) when using different partitioning in left and right RDDs #3175
- Fix Monad instance for
PolygonalSummaryResult
#3221
Removed
3.2.0
3.1.0
This release addressees compatibility problem with RasterFrames where traits extending CellGrid
did not appear to be subclasses of it through reflection. This a major use for GeoTrellis and warrants snap release. Users should use at least version 3.1.0
when upgrading from 2.x
branch.
Changed
v3.0.0
Added
- RasterSources API #3053
geotrellis.layer
package to group functionality related to tiled layers.SpatialKey
,SpaceTimeKey
,TemporalKey
,Bounds
,Boundable
,EmptyBounds
,KeyBounds
,TemporalProjectedExtent
,EmptyBoundsError
,SpatialComponent
,TemporalComponent
,LayoutDefinition
,LayoutScheme
,LayoutLevel
,LocalLayoutScheme
,FloatingLayoutScheme
,ZoomedLayoutScheme
,MapKeyTransform
, etc.
geotrellis.store
package to group interfaces related to saving and reading tiled layers. Implementations save moved to:geotrellis.store.accumulo
geotrellis.store.cassandra
geotrellis.store.hbase
geotrellis.store.hadoop
geotrellis.store.s3
geotrellis.vectortile.MVTFeature
which properly conforms to the MVT 2.0 spec. Specifically,MVTFeature
addsid: Option[Long]
property.RangeReader
SPI produced an instance of the reader fromURI
#2998geotrellis.raster.mapalgebra.focal.ZFactor
to improve slope calculations #3014- A
sparseStitch
method ongeotrellis.layer.stitch.SpatialTileLayoutCollectionStitchMethods
. Note thatSpatialTileLayoutCollectionStitchMethods
now has the additional constraintgeotrellis.raster.prototype.TilePrototypeMethods
on typeV
. This should be transparent for users of thegeotrellis.raster.Tile
andgeotrellis.raster.MultibandTile
types #3017 geotrellis.util.np
package which containslinspace
andpercentile
methods that match NumPy functionality. An implicit class was also added togeotrellis.raster
which provides thepercentile
method forgeotrellis.raster.Tile
#3067- Conversion from raster to features of cells #3117
io.circe
JSON encoders and decoders forGeoTiffInfo
and related classes #3128
Changed
geotrellis.raster.summary.polygonal.[Multi]TilePolygonalSummaryHandler
replaced withgeotrellis.raster.summary.polygonal.PolygonalSummary
. Users should expect to implement concrete subclasses ofgeotrellis.raster.summary.GridVisitor
and pass those to the new polygonalSummary methods. There are a number of default implementations provided for simple operations ingeotrellis.raster.summary.visitors
- Polygonal summaries on raster RDDs of
RDD[(SpatialKey, T <: Grid[Int])] with Metadata[TileLayerMetadata[SpatialKey]]
can now be performed with far less boilerplate using the same visitor pattern as the new raster polygonal summary API. SeeRDDPolygonalSummary.scala
for additional details. geotrellis.raster.Grid.dimensions
is nowDimensions[N]
instead of(N, N)
#3124GeoTiffInfo
moved out ofGeoTiffReader
into containing package #3128- Replaced use of internal
Mergable
trait with cats'Semigroup
- The
slope
focal method now requires aZFactor
instance. - Use the AWS S3 SDK v2 instead of v1 #2911.
- The implicit/package structure of the
geotrellis.raster
package has changed such that it's now possible to import almost all features/extensions withimport geotrellis.raster._
#2891 geotrellis.pro4j.WKT
object conversion methods to and from EPSG codes have changed. All now return Options rather than silently unwrap. Methods that convert from EPSG code to WKT string are now prefixed consistently withfromEpsg
and methods that convert from WKT string to EPSG code are now prefixed consistently withtoEpsg
.geotrellis.util.CRS.fromWKT
now returnsOption[CRS]
instead ofCRS
after silently unwrapping an optional internally- The
geotrellis.vectortile.{Layer, VectorTile}
interfaces now usesMVTFeature
instead ofgeotrellis.vector.Feature
. - Change from
scala-logging
tolog4s
#3116 - Update dependencies #2904.
- Update dependencies #3053.
- Bump ScalaPB version up with some API enhancements #2898.
- Artifacts in Viewshed have been addressed, the pixels/meter calculation has also been improved #2917.
- Fix map{X|Y}ToGrid function behavior that could give a bit incorrect results #2953.
- Fix COG layer update bug related to
COGLayerMetadata
zoom ranges ordering #2922. - Use original
ZoomRanges
on COG layer update #2956. ArrayTile
equality will now check the cols, rows, and cellType of the two tiles #2991.- Fix incorrect Deflate compressor usage in GeoTiff reading #2997.
- Refactor IO thread pool usage #3007.
S3RangeReader
will now optionally read the HEADER of an object #3025.FileRangeReaderProvider
can now handle more types ofURI
s #3034.- Bump
proj4
version to fix multiple performance issues #3039. - Fix
HttpRangeReader
swallows 404 error #3073 - Add a ToSpatial function for the collections API #3082.
- Fix
TIFFTagsReader
to skip unsupported tags #3088. reprojectExtentAsPolygon
should be more deterministic #3083.AmazonS3URI.getKey
now returns an empty string instead of null if no key was provided #3096.- Improved handling of null prefix for
S3AttributeStore
. Prefer use ofS3AttributeStore.apply
to take advantage of this improved handling #3096. - Fix Tiled TIFF BitCellType Segments conversion #3102
- Updated
computeResolution
inIterativeCostDistance
to match Iterative Viewshed #3106
Removed
- Scala wrappers of JTS Geometry in
geotrellis.vector
#2932 geotrellis.etl
package has been removed. The code has been archived at https://github.com/geotrellis/spark-etl #2969.- The
S3Client
wrapper that was used to support AWS SDK v1 has been removed in favor of directly using AWS SDK S3Client #2911. geotrellis.s3-testkit
has been removed; testing now depends on an external min.io server which mocks the S3 API. #2911.geotrellis.slick
has been removed. Slick support will now reside ingeotrellis-contrib
#2902.
v2.3.3
v2.3.1
v2.3.0
v2.2.0
API & Project structure changes
-
geotrellis.proj4j
- Change: Extract Proj4J to org.locationtech.proj4j #2846.
Fixes & Updates
- Fix {Backend}LayerCopy exception handling #2860.
- Fix cache level in Ingest objects #2854.
- Catch a possible precision loss on reprojection to the same projection #2849.
- Make histogram.merge methods more specific #2852.
- Fixed elliptical radius check in IDW algorithm #2844.
- Replace all JavaConversions imports by JavaConverters #2843.
- Made implicit conversions to/from Raster and ProjectedRaster deprecated #2834.
- Fix vectorizer bug #2839.
- Added
mapTile
toProjectedRaster
#2830. - Downgrade Avro version #2837.
- Fix error in
ReprojectRasterExtent
#2825. - Dependency updates #2813.
- Bump Spark version up to 2.4 2823.
- Use a local[2] mode inside TestEnvironment trait #2821.
- Make IO code agnostic about effects #2818.
v2.1.0
gerotrellis.spark
geotrellis.spark.testkit
TestEnvironment
now includesSparkSession
(#2808).
geotrellis.spark.etl
- Add
TemporalIngest
main method (#2709).
- Add
geotrellis.raster
RasterRegionReproject
defaults to approximate resampling forMultibandBandTile
(#2803).Stitcher
type class instance is now defined forTileFeature[T, D]
([#2803 (https://github.com//pull/2803)).- Fix
GeoTiffSegment
conversion toUByteCellType
andUShortCellType
(#2794). - Fix
GeoTiff[T]
interpretation ofAutoHigherResolution
OverviewStrategy
(#2802). GeoTiff[T].getClosestOverview
method is now public (#2804).GeoTiffOptions.storageMethod
now defaults toTiled
instead ofStriped
(#2810).- GeoTiff
TiffTags
class can now read inverted extents (#2812).
geotrellis.vector
- Add
bbox
field to all GeoJSON Features (#2811).
- Add