Releases: openlayers/openlayers
v6.15.0
Overview
The 6.15 release brings several fixes and improvements:
- Faster vector tile rendering for soures with non-standard tile grids
- Reduced canvas memory footprint for increased stability on iOS devices and better rendering performance
- Fixed a bug that prevented tiles from expiring from the tile cache in the correct order
- Better type safety with an increasing number of
null
checks and union types - New
setFill
andsetStroke
methods forRegularShape
symbols - Vector symbol and text decluttering on the style level
- Fixed pointer event handling on touch devices when layer visibility changes
- New
justify
option for text styles - New
Link
interation for adding center, zoom, rotation and active layers to the URL - Easier css styling of the scale bar, and in addition to
minWidth
, the scale line can now also be configured with amaxWidth
Details
Deprecated tilePixelRatio
option for data tile sources.
If you were previously trying to scale data tiles using the tilePixelRatio
property for data tile sources (this is rare), you should now use the explicit tileSize
and tileGrid
properties. The source's tileSize
represents the source tile dimensions and the tile grid's tileSize
represents the desired rendered dimensions.
const source = new DataTileSource({
tileSize: [512, 512], // source tile size
tileGrid: createXYZ({tileSize: [256, 256]}), // rendered tile size
});
Fixed coordinate dimension handling in ol/proj
's addCoordinateTransforms
The forward
and inverse
functions passed to addCooordinateTransforms
now receive a coordinate with all dimensions of the original coordinate, not just two. If you previosly had coordinates with more than two dimensions and added a transform like
addCoordinateTransforms(
'EPSG:4326',
new Projection({code: 'latlong', units: 'degrees'}),
function(coordinate) { return coordinate.reverse(); },
function(coordinate) { return coordinate.reverse(); }
);
you have to change that to
addCoordinateTransforms(
'EPSG:4326',
new Projection({code: 'latlong', units: 'degrees'}),
function(coordinate) { return coordinate.slice(0, 2).reverse() },
function(coordinate) { return coordinate.slice(0, 2).reverse() }
);
Replacement of string enums with union types
This change only affects users that were using the non-API string enums
- ol/OverlayPositioning
- ol/extent/Corner
- ol/format/FormatType
- ol/geom/GeometryType
- ol/source/State
- ol/source/WMSServerType
- ol/source/WMTSRequestEncoding
Instead of these, use the respective string
s, which are now typesafe by means of union types.
List of all changes
See below for a complete list of features and fixes.
- Base vector tile render tile grid on the source grid (by @mike-000 in #13832)
- ability to change the color of the scalebar (by @jipexu in #13834)
- Reduce canvas memory footprint for better iOS stability (by @ahocevar in #13823)
- Use union types instead of enums (by @ahocevar in #12696)
- remove XYZ-ESRI -4326-512 example (by @jipexu in #13817)
- Remove HERE Maps example (by @mike-000 in #13819)
- Checkcontenteditable (by @jipexu in #13787)
- Add null return type for TileGrid functions (by @EvertEt in #13674)
- Add setFill and setStroke to Shapes (by @theduckylittle in #13747)
- Include displacement and declutterMode in Icon style clone (by @mike-000 in #13803)
- Do not refresh use time for tiles when collecting used source tiles (by @M393 in #13799)
- Change WKB readFeature(s) return type to Feature (by @mike-000 in #13800)
- d3 version update (by @jipexu in #13784)
- Better fix for changing pointer ids on event target change (by @ahocevar in #13771)
- Fix source band calculation when configured with multiple sources (by @ahocevar in #13762)
- Clean up tracked pointers when the event target has changed (by @ahocevar in #13770)
- Fix modifying polygons with overlapping vertices (by @hargasinski in #13745)
- Support GML polygons with ring curves instead of linear rings (by @ahocevar in #13749)
- Fix typo in method names (by @MoonE in #13750)
- Load GeoTiff from Blob #13189 #13703 (by @m-mohr in #13724)
- improve text width calculation (by @IQGeo in #12106)
- Fix tile pyramid getData() (by @mike-000 in #13712)
- Improve icon-sprite-webgl example (by @MoonE in #13709)
- Fix hitdetection for icon with offset and pixelratio != 1 (by @MoonE in #13627)
- Wait for icons to be loaded before firing rendercomplete event (by @MoonE in #13626)
- Change typedef to boolean (by @mike-000 in #13702)
- #13690 VectorSource#getFeaturesInExtent add projection parameter (by @burleight in #13691)
- Update ESLint config and plugins (by @tschaub in #13701)
- Flip extent coordinates for projections with ne* axis order (by @ahocevar in #13688)
- Link interaction (by @tschaub in #13689)
- Test improvements (by @MoonE in #13676)
- Add null return type (by @ahocevar in #13673)
- fix currentClip == null (by @CNS-Solutions in #13672)
- Handle NaN nodata (by @tschaub in #13669)
- Fix for parcel error while building examples (by @arekgotfryd in #13656)
- Explicit data tile size (by @tschaub in #13648)
- Decluttering mode by style (by @CNS-Solutions in #13566)
- Output GeoTIFF tile load errors to console (by @mike-000 in #13645)
- Fix typos in upgrade notes (by @openlayers in #13641)
- Let transform function transform all dimensions it is capable of (by @ahocevar in #13637)
- Fix dependabot config (by @tschaub in #13614)
- Include GitHub actions in the dependabot config (by @turrisxyz in #13611)
- Do not reload data tiles if already loaded or loading (by @mike-000 in #13594)
- Limit permissions for GitHub actions (by @turrisxyz in #13607)
- Handle rotation with non-square tiles (by @tschaub in #13603)
- Properly document loadstart and loadend events (by @ahocevar in #13595)
- Update OSM Vector Tiles attribution (by @mike-000 in #13568)
- WebGLPointsLayer wrapX support - partially addressing #11131 (by @burleight in #13528)
- Add
justify
option for text style (by @rycgar in #13571) - Do not assert null projection (by @mike-000 in #13565)
- Improve Projection and Scale example calculations (by @mike-000 in #13496)
- Add geometryLayout property to Draw interaction (by @drnextgis in #13546)
- Updates for ol-mapbox-style v8 (by @ahocevar in #13552)
- NM symbol unit (by @jipexu in #13554)
- Update backgrounds when function returns a different color (by @ahocevar in #13550)
- Handle gutter in WebGL tile renderer (by @mike-000 in #13547)
- Do not add second interaction in Pinch Zoom example (by @mike-000 in #13551)
- Bugfix for GML parsing with multiple property elements with XML attributes (by @ejn in #12936)
- Fix small typo in docs (by @bartvde in #13536)
- Update type annotations for GMLBase (by @ahocevar in #13533)
- Add optional maxWidth for ScaleLine control (by @bartvde in #13531)
- Include tile gutter in offsets for getData() methods (by @mike-000 in #13521)
- Updates for the 6.14.1 release (by @openlayers in h...
6.14.1
The 6.14.1 release is a patch to correct a version discrepancy in the package-lock.json
file. See the changelog for 6.14.0 for new features and fixes since 6.13.
6.14.0
The 6.14 release includes a few new features and fixes. The new loadstart
and loadend
events make it easy to add loading indicators to your maps. Enhancements to the snap interaction add support for snapping to points coincident with lines and improve performance. A change to WebGL rendering works around an issue in Safari 15.4. Find detail on these improvements and more in the full list of changes below.
List of all changes
See below for a complete list of features and fixes.
- Store rendered source on the layer instead of the layer state (by @tschaub in #13509)
- Change imageSmoothing to interpolate in tests (by @mike-000 in #13506)
- Fallback if
OES_texture_float_linear
is not supported (by @mike-000 in #13505) - Workaround for Safari WebGL issue (by @tschaub in #13492)
- Separate geometry and extent parsing (by @ahocevar in #13490)
- Add loadstart and loadend map events (by @ahocevar in #13491)
- Add documentation for precompose and postcopose to ol/layer/WebGLTile (by @ahocevar in #13482)
- Fix legacy build (by @ahocevar in #13469)
- Fix Text#setText jsDoc (by @rycgar in #13466)
- Do not warn about coordinates when view projection is configured (by @ahocevar in #13464)
- Reset image when empty (by @ahocevar in #13463)
- Revert image transition regression (by @ahocevar in #13460)
- Improve Snap interaction performance (by @MoonE in #13455)
- Snap Interaction can snap to Point on line segment (by @T-MAPY in #13446)
- Initialize variable before use in FullScreen control (by @MoonE in #13447)
- Ensure FullScreen button has classname set on render. (by @themoffster in #13444)
- Guard PluggableMap against null renderer (by @EvertEt in #13437)
- Fix rendercomplete with invisible WebGLPoints layer (by @M393 in #13434)
- Handle layers without renderer properly (by @ahocevar in #13424)
Dependency Updates
- Bump minimist from 1.2.5 to 1.2.6 (by @openlayers in #13501)
- Bump node-forge from 1.2.1 to 1.3.0 (by @openlayers in #13498)
- Bump yargs from 17.3.1 to 17.4.0 (by @openlayers in #13493)
- Bump @babel/core from 7.17.5 to 7.17.8 (by @openlayers in #13494)
- Bump puppeteer from 13.4.1 to 13.5.1 (by @openlayers in #13472)
- Bump karma-chrome-launcher from 3.1.0 to 3.1.1 (by @openlayers in #13474)
- Bump mocha from 9.2.1 to 9.2.2 (by @openlayers in #13475)
- Bump proj4 from 2.7.5 to 2.8.0 (by @openlayers in #13476)
- Bump rollup from 2.70.0 to 2.70.1 (by @openlayers in #13477)
- Bump ol-mapbox-style from 7.0.0 to 7.1.0 (by @openlayers in #13473)
- Bump rollup from 2.69.0 to 2.70.0 (by @openlayers in #13449)
- Bump webpack from 5.69.1 to 5.70.0 (by @openlayers in #13450)
- Bump puppeteer from 13.4.0 to 13.4.1 (by @openlayers in #13451)
- Bump karma from 6.3.16 to 6.3.17 (by @openlayers in #13452)
- Bump typescript from 4.6.0-beta to 4.6.2 (by @openlayers in #13453)
- Bump puppeteer from 13.3.2 to 13.4.0 (by @openlayers in #13427)
- Bump fs-extra from 10.0.0 to 10.0.1 (by @openlayers in #13429)
- Bump @rollup/plugin-commonjs from 21.0.1 to 21.0.2 (by @openlayers in #13430)
- Bump rollup from 2.67.3 to 2.69.0 (by @openlayers in #13442)
- Bump @rollup/plugin-babel from 5.3.0 to 5.3.1 (by @openlayers in #13426)
New Contributors
- @themoffster made their first contribution in #13444
- @langpavel made their first contribution in #13446
- @rycgar made their first contribution in #13466
Full Changelog: v6.13.0...v6.14.0
v6.13.0
Overview
The 6.13 release brings several exciting new features and improvements:
- A new
layer.getData()
method to get pixel data for a single layer (see details below). - Support for rich text labels in
ol/style/Text
, to use different font styles and fonts in a single label. - The
useGeograpic()
andsetUserProjection()
functions in theol/proj
module are now part of the official API. These functions make it easier to work with geographic coordinates or local projections. - Improvements for WebGL Tile and Points layers.
- Performance improvements on
ol/Feature
, to avoid event creation when there are no listeners. - Update of geotiff.js to v2, to fix some build issues that users reported.
- Improvements to the auto-generated TypeScript types.
Details
New layer.getData()
method
Raster layers (static images, image tiles, data tiles) have a new layer.getData(pixel)
method that returns the pixel data at the provided location. The return value depends on the underlying source data type. For example, a GeoTIFF may return a Float32Array
with one value per band, while a PNG rendered from a tile layer will return a Uint8ClampedArray
of RGBA values.
If you were previously using the map.forEachLayerAtPixel()
method, you should use the new layer.getData()
method instead. The old method returns composite pixel values from multiple layers and is limited to RGBA values. The new method doesn't suffer from these shortcomings and is more performant.
Deprecated map.forEachLayerAtPixel()
method
The map.forEachLayerAtPixel()
method has been deprecated. It will be removed (or its behavior may change) in the next major release. Please use the layer.getData()
method instead.
List of all changes
See below for a complete list of features and fixes.
- Update ol-mapbox-style for rich text labels support (by @ahocevar in #13418)
- Increase GeoTIFF resolutions tolerance (by @ahocevar in #13417)
- Check for graticule resolution change and fix unrotated size (by @mike-000 in #13415)
- Rich text labels (by @ahocevar in #13410)
- Clear image when source's image is not ready (by @yonda-yonda in #13398)
- Fix setting View resolution or center to undefined (by @MoonE in #13393)
- Fix clone of icon loses imgSize when cache is full (by @MoonE in #13390)
- Use same clipping method for vector and image tiles (by @ahocevar in #13392)
- Less clipping of target resolution tiles (by @ahocevar in #13391)
- Change remaining links to point to class page instead of module (by @MoonE in #13385)
- User projection API (by @ahocevar in #13383)
- Fix wrong types when using
"skipLibCheck": false
(by @seravifer in #13382) - Fix JsDoc references (by @MoonE in #13374)
- Fix VectorSource isEmpty without spatial index (by @MoonE in #13373)
- Document difference between Vector and VectorImage layers (by @ahocevar in #13371)
- Fix
ol/source/Cluster#setSource
type annotation (by @MoonE in #12998) - Preload tiles for WebGL tile layers (by @tschaub in #13357)
- Avoid event creation when there are no listeners (by @MoonE in #13358)
- Add floor, round and ceil to style expressions (by @mike-000 in #13363)
- Support WebGL layers in ol/source/Raster (by @mike-000 in #13361)
- Improve some null types to prepare for strictNullChecks (by @EvertEt in #13301)
- Reset globalAlpha back to its initial after mutating it for drawing layers (by @Amirh0sseinHZ in #13351)
- Removing an unnecessary word from DEVELOPING.md (by @Amirh0sseinHZ in #13352)
- Get pixel data (by @tschaub in #13338)
- Remove warning for
@type
annotation by jsdoc (by @MoonE in #13350) - Improve some null types for strictNullChecks (by @EvertEt in #13334)
- Dispose of webgl contexts (by @MoonE in #13336)
- Fix error when accessing ready property of renderer (by @MoonE in #13337)
- Pass tilePixelRatio and gutter to TileTexture (by @mike-000 in #13269)
- Improve some nullable map types (by @EvertEt in #13328)
- Avoid rendering outside WebGL layer and source extent (by @tschaub in #13333)
- Avoid duplicate imports (by @tschaub in #13332)
- Add updateStyleVariables method to WebGLPoints layer (by @ahocevar in #13294)
- Fix rendercomplete for WebGLPoints layer and subclasses (by @ahocevar in #13323)
- fix: fix casing for z-index (by @OSHistory in #13319)
- Fix typo CSS class name for the expanded attributions button (by @fredj in #13315)
- Improve types for tile layers (by @ahocevar in #13299)
- Document geometry type (by @ahocevar in #13298)
- Add function to convert RenderFeature to Feature (by @MoonE in #13297)
- Update to geotiff@2 (by @ahocevar in #13292)
- Re-assign style variables on setStyle() (by @ahocevar in #13293)
- add @api comment on getAllLayers method (by @XiaofengZeng in #13261)
- Allowing to pass additional options to the geotiff.js source (by @constantinius in #13290)
- Defaults for generic types (by @ahocevar in #13291)
- Load api navigation dynamically to reduce needed disk space (by @MoonE in #13229)
- Remove unneeded
src=""
(by @mike-000 in #13271) - Support multiple sources for WebGL tile layers (by @ahocevar in #13212)
- Add crossOrigin option to LiteralSymbolStyle (by @mike-000 in #13259)
- Avoid the redirect from unpkg.com (by @tschaub in #13242)
- Updates for the 6.12.0 release (by @openlayers in #13241)
Dependency Updates
- Bump express from 4.17.2 to 4.17.3 (by @openlayers in #13402)
- Bump puppeteer from 13.3.1 to 13.3.2 (by @openlayers in #13401)
- Bump mocha from 9.2.0 to 9.2.1 (by @openlayers in #13403)
- Bump webpack from 5.68.0 to 5.69.1 (by @openlayers in #13404)
- Bump ol-mapbox-style from 6.8.3 to 6.9.0 (by @openlayers in #13406)
- Bump rollup from 2.67.1 to 2.67.3 (by @openlayers in #13405)
- Bump @babel/core from 7.17.2 to 7.17.5 (by @openlayers in #13407)
- Bump @babel/core from 7.17.0 to 7.17.2 (by @openlayers in #13381)
- Bump karma from 6.3.15 to 6.3.16 (by @openlayers in #13379)
- Bump eslint from 8.8.0 to 8.9.0 (by @openlayers in #13377)
- Bump puppeteer from 13.1.3 to 13.3.1 (by @openlayers in #13376)
- Bump follow-redirects from 1.14.7 to 1.14.8 (by @openlayers in #13372)
- Bump geotiff from 2.0.3 to 2.0.4 (by @openlayers in #13339)
- Bump globby from 13.1.0 to 13.1.1 (by @openlayers in #13340)
- Bump rollup from 2.66.1 to 2.67.1 (by @openlayers in #13342)
- Bump @babel/core from 7.16.12 to 7.17.0 (by @openlayers in #13343)
- Bump karma from 6.3.12 to 6.3.15 (by @openlayers in #13344)
- Bump webpack from 5.67.0 to 5.68.0 (by @openlayers in #13345)
- Bump webpack-dev-server from 4.7.3 to 4.7.4 (by @openlayers in #13346)
- Bump sinon from 13.0.0 to 13.0.1 (by @openlayers in #13348)
- Bump rollup from 2.66.0 to 2....
6.12.0
The 6.12 release brings a few small fixes and enhancements. See below for a complete list.
List of all changes
- Transitive dependency update (by @openlayers in #13240)
- Re-enable image smoothing after rendering (by @mike-000 in #13236)
- Describe use of className with declutter (by @mike-000 in #13237)
- added run to npm command (by @lklepner in #13231)
- Document how to link package during development (by @lklepner in #13228)
- Default CORS mode for WebGL rendered sources (by @tschaub in #13227)
- Support the wrapX option for WebGL rendered tile sources (by @tschaub in #13226)
- Update ol-mapbox-style (by @tschaub in #13224)
- Do not fire modifyend event when nothing was modified (by @ahocevar in #13219)
- Draw VectorTiles with interpolate in hybrid mode again (by @M393 in #13221)
- Fix some typos in ModifyInteraction documentation (by @EvertEt in #13216)
- Fix MVT incorrect feature data handling (by @EvertEt in #13217)
- Format the changelog so contributors can be highlighted (by @tschaub in #13205)
Dependency Updates
- Bump karma from 6.3.9 to 6.3.10 (by @openlayers in #13209)
- Bump shx from 0.3.3 to 0.3.4 (by @openlayers in #13211)
- Bump @rollup/plugin-node-resolve from 13.1.2 to 13.1.3 (by @openlayers in #13210)
- Bump rollup from 2.62.0 to 2.63.0 (by @openlayers in #13208)
- Bump marked from 4.0.8 to 4.0.9 (by @openlayers in #13207)
New Contributors
Full Changelog: v6.11.0...v6.12.0
6.11.0
This release follows up on the 6.10 release with a fix for Mapbox vector layers rendered over other layers. A handful of other fixes and features are included. See below for more detail.
List of all changes
- Use getFeaturesInExtent (by @ahocevar in #13195)
- Use interpolate option in Sea Level example (by @mike-000 in #13200)
- Fix typo in example description (by @mike-000 in #13201)
- Use ecoregions data (by @tschaub in #13177)
- Avoid failure if existing target has no background color (by @tschaub in #13198)
- Add getDataAtPixel() method for WebGL (by @mike-000 in #13186)
- typo fix for cog-stretch example (by @bradh in #13196)
- Fix base vector layer template generics (by @ahocevar in #13190)
- Always use ES modules from geotiff.js (by @ahocevar in #13180)
- Use Buffer and data uri when Blob is not available (by @ahocevar in #13179)
- Use background property for vector layers (by @tschaub in #13178)
- Allow nodejs 12 to build the examples again (by @MoonE in #13175)
- Add
attributions
andattributionsCollapsible
options tool/source/DataTile
(by @mike-000 in #13176) - Correct scale bar in EPSG:4326 (by @mike-000 in #13171)
Dependency Updates
- Bump eslint from 8.5.0 to 8.6.0 (by @openlayers in #13182)
- Bump @rollup/plugin-node-resolve from 13.1.1 to 13.1.2 (by @openlayers in #13184)
- Bump @babel/core from 7.16.5 to 7.16.7 (by @openlayers in #13183)
- Bump webpack-dev-server from 4.7.1 to 4.7.2 (by @openlayers in #13185)
- Bump @babel/preset-env from 7.16.5 to 7.16.7 (by @openlayers in #13181)
New Contributors
Full Changelog: v6.10.0...v6.11.0
6.10.0
Just in time for the new year, the 6.10 release brings another great batch of features and fixes for your OpenLayers applications.
WebGL rendering
You can now update the style for your WebGL tile layers with layer.setStyle()
. Keep in mind that it is more efficient to use style variables if you want to adjust styling on every render frame. However, in cases where you want to completely reconfigure the style, you can use the new layer.setStyle()
method.
Additional WebGL tile layer rendering enhancements:
- A new
palette
operator was added that allows styling raster data based on a colormap. - The
band
operator accepts expressions for the band number (in addition to numeric literals) – allowing for bands to be set by user provided style variables, for example. - Tile layers now dispatch
prerender
,postrender
,precompose
andpostcompose
events with access to the WebGL rendering context. - Layers that are adjacent to one another now share a single canvas element and rendering context – allowing for more layers in your maps before exhausting the browser's context limit.
Vector tiles
The Mapbox vector layer now works more easily with other vector tile providers. In addition, vector tile layers can now be configured with a background color.
New interpolate
option for sources
Sources now have an interpolate
option. This option controls whether data from the source is interpolated when resampling.
For ol/source/DataTile
sources, the default is interpolate: false
. This means that when a data tile source is used with a WebGL tile layer renderer, your style expression will have access to pixel values in the data tiles without interpolation. If this option is set to true, linear interpolation will be used when over- or under-sampling the data.
Deprecation of the imageSmoothing
option for sources
The imageSmoothing
option for sources has been deprecated and will be removed in the next major release. Use the interpolate
option instead.
// if you were using `imageSmoothing`
const before = new TileSource({
imageSmoothing: false
});
// use the `interpolate` option instead
const after = new TileSource({
interpolate: false
});
List of all changes
See below for more features and fixes.
- #13155 - Allow interpolation to be configured for data tile sources (@tschaub)
- #13165 - Do not exceed maximum call stack when parsing TopoJSON (@ahocevar)
- #13158 - Add example for dynamic clusters (@ahocevar)
- #13156 - Ensure that tile range covers all pixels (@tschaub)
- #13154 - Update Export Map example to handle WebGL (@mike-000)
- #13147 - Support rendering with a palette in WebGL (@tschaub)
- #13142 - Include transpacific flights in Flight Animation example (@mike-000)
- #13150 - Include layer opacity in Heatmap shader (@mike-000)
- #13149 - Add layer also for programmatically selected features (@ahocevar)
- #13151 - Avoid error accessing attributes when context is lost (@mike-000)
- #13144 - Replace deprecated syntax in example (@mike-000)
- #13131 - Unset canvas css in stylesheet (@ahocevar)
- #13130 - Allow WebGL tile layers to be constructed without a source (@tschaub)
- #13126 - Preserve the drawing buffer by default for WebGL layers (@tschaub)
- #13127 - Fix for range slider on IE (@mike-000)
- #13095 - Render is only complete when no tiles are queued (@ahocevar)
- #13120 - Populate view's object properties (@ahocevar)
- #13102 - update line-arrows example (@jipexu)
- #13119 - Dispatch precompose and postcompose events for WebGL layers (@tschaub)
- #13118 - Add a layer opacity example (@tschaub)
- #13115 - Lazily create resources for worker (@tschaub)
- #13103 - Assume limited precision when rounding (@tschaub)
- #13097 - Use correct terrain-rgb tile size and update max zoom (@mike-000)
- #13101 - Fix View set center to undefined (@M393)
- #13085 - Add layer background (@ahocevar)
- #13083 - Support expressions for band arguments (@tschaub)
- #13084 - Normalize relative sprite and glyph urls for style url (@ahocevar)
- #13020 - Allow WebGL tile layer style to be updated (@tschaub)
- #13073 - Fall back to standard load handling when decode fails (@ahocevar)
- #13077 - update draw and modify features example (@jipexu)
- #13069 - Normalize based on GDAL stats metadata (@tschaub)
- #13070 - Use source minzoom if not configured otherwise (@ahocevar)
- #13065 - Fix typo in example (@jipexu)
- #13060 - Avoid fetching data outside the grid extent (@tschaub)
- #13054 - Updates for newer version of the OGC API spec draft (@ahocevar)
- #13045 - Fix tiles and background handling (@ahocevar)
- #13030 - Correctly set popover position in geographic example (@MoonE)
- #13031 - Allow data tile source loader to return a value or a promise (@tschaub)
- #13026 - Fix strokeStyle documentation (@ahocevar)
- #13027 - Restore the security scan workflow (@openlayers)
- #13025 - Add background to MapboxVector layer (@ahocevar)
- #13013 - Use appropriate UNPACK_ALIGNMENT for data textures (@mike-000)
- #13021 - Add the renderer type to generic layer template variables (@tschaub)
- #13022 - Update the security scan task (@tschaub)
- #13015 - Additional types for WebGL renderer, sources, and tiles (@tschaub)
- #13012 - Remove unused dependencies (@tschaub)
- #12976 - Handle ReprojTile in ol/layer/WebGLTile (@mike-000)
- #13011 - Use registry URL when publishing (@tschaub)
- #13009 - Use workflow_run event to deploy pull request previews (@tschaub)
- #12965 - Allow canvas reuse for WebGL layers (@tschaub)
- [#12999](https://github.com/open...
v6.9.0
The 6.9 release brings a few new features and a number of fixes. GeoTIFF sources now have a normalize
option. Set normalize: false
if you want your style expressions to work with raw floating point values instead of normalized values from 0 to 1. The GeoTIFF source also now uses nodata values from the source imagery – so in most cases you don't need to specify this yourself. For people configuring vector layers with styles that use custom rendering, you can now get hit detection on the rendered result. See details on these features and other included fixes below.
- #12813 - Do not replace icon color if image not loaded (@mike-000)
- #12870 - Fix publicPath problem in legacy build (@ahocevar)
- #12889 - Simplified ESLint config (@tschaub)
- #12875 - Only trigger change event if animating a tile transition (@tschaub)
- #12885 - Fix typeDefs for several Control modules (@MatthijsBon)
- #12861 - Update geotiff to 1.0.8; allow version range (@ahocevar)
- #12865 - Add a note about installing git before using create-ol-app (@tschaub)
- #12847 - Add more definitions for GeoTIFF types (@tschaub)
- #12850 - Fix issues with animate on View without center or resolution (@MoonE)
- #12846 - Use nodata values in the GeoTIFF headers for fill value (@tschaub)
- #12837 - forEachLayerAtPixel return null for unsupported layer types (@mike-000)
- #12836 - Support a normalize option on the GeoTIFF source (@tschaub)
- #12646 - Support for hit detection in styles with custom rendering (@ashchurova)
- #12831 - Fix rendering VectorImage with no features in view extent (@MoonE)
- #12830 - bugfix: Fix type of
layers
option inOverviewMap
(@ejn) - #12815 - Spelling correction (@tschaub)
- #12812 - Release v6.8.1 (@openlayers)
Dependency Updates
- #12881 - Bump webpack from 5.56.1 to 5.58.1 (@openlayers)
- #12882 - Bump marked from 3.0.4 to 3.0.7 (@openlayers)
- #12878 - Bump webpack-dev-server from 4.3.0 to 4.3.1 (@openlayers)
- #12879 - Bump @babel/preset-env from 7.15.6 to 7.15.8 (@openlayers)
- #12880 - Bump @babel/eslint-parser from 7.15.7 to 7.15.8 (@openlayers)
- #12884 - Bump @babel/core from 7.15.5 to 7.15.8 (@openlayers)
- #12877 - Bump webpack-cli from 4.8.0 to 4.9.0 (@openlayers)
- #12854 - Bump webpack from 5.54.0 to 5.56.1 (@openlayers)
- #12857 - Bump webpack-dev-server from 4.2.1 to 4.3.0 (@openlayers)
- #12856 - Bump @rollup/plugin-commonjs from 20.0.0 to 21.0.0 (@openlayers)
- #12855 - Bump rollup from 2.57.0 to 2.58.0 (@openlayers)
- #12853 - Bump clean-css-cli from 5.3.3 to 5.4.1 (@openlayers)
- #12822 - Bump glob from 7.1.7 to 7.2.0 (@openlayers)
- #12824 - Bump rollup from 2.56.3 to 2.57.0 (@openlayers)
- #12818 - Bump threads from 1.6.5 to 1.7.0 (@openlayers)
- #12821 - Bump @rollup/plugin-node-resolve from 13.0.4 to 13.0.5 (@openlayers)
- #12823 - Bump walk from 2.3.14 to 2.3.15 (@openlayers)
- #12819 - Bump webpack-dev-middleware from 5.1.0 to 5.2.1 (@openlayers)
- #12820 - Bump mocha from 9.1.1 to 9.1.2 (@openlayers)
- #12817 - Bump yargs from 17.1.1 to 17.2.1 (@openlayers)
- #12825 - Bump webpack from 5.53.0 to 5.54.0 (@openlayers)
- #12826 - Bump puppeteer from 10.2.0 to 10.4.0 (@openlayers)
v6.8.1
v6.8.0
The 6.8 release builds on the momentum of 6.7 with some great new enhancements. Data tiles now handle 32-bit data in addition to 8-bit. Views properties can now be provided that sources that fetch view-related data. Vector tile rendering got some performance enhancements. Find detail on these features and a number of fixes in the list of changes below.
List of all changes
- #12785 - Promise.allSettled polyfill and other browser compatibilty (@mike-000)
- #12807 - Updated styles (@tschaub)
- #12806 - Update to the WebGL sea level example (@tschaub)
- #12808 - Update expectations for vector tile icon label rendering (@tschaub)
- #12804 - Make vector tiles rendering simpler and a bit faster (@ahocevar)
- #12802 - Enqueue tiles at the next step in the animation (@tschaub)
- #12801 - Update ol-mapbox-style to latest version without ol peer dependency (@ahocevar)
- #12792 - Do not do any canvas work when there are no features to render (@ahocevar)
- #12797 - Update geotiff (@ahocevar)
- #12799 - All layers now call dispose on the renderer (@tschaub)
- #12798 - More cleanup in the WebGL tile layer's dispose method (@tschaub)
- #12795 - New tile source for the WMTS example (@mike-000)
- #12793 - Add a method to set the map layers (@tschaub)
- #12789 - Handle TileJSON urls in Mapbox Style document (@ahocevar)
- #12790 - Allow maps to be configured with a promise for view props (@tschaub)
- #12777 - Fix offscreen-canvas example (@ahocevar)
- #12778 - Do not render vector tiles unless they are being used (@ahocevar)
- #12773 - Enable WebGL extensions when required (@tschaub)
- #12774 - Fix text decluttering when segment length is zero (@MoonE)
- #12770 - Use Uint8Array instead of Uint8ClampedArray for increased browser compatibility (@tschaub)
- #12759 - #12758: Allow undefined to be passed to control setMap(). Also fix type of getMap() (@jumpinjackie)
- #12760 - Fix opacity handling for tile and vector layers (@ahocevar)
- #12764 - Fix ImageInformationResponse typedef (@webwitcher)
- #12769 - Remove extra closing anchor tag (@tschaub)
- #12761 - Add Float Textures for GL Rendering / DataTiles (@theduckylittle)
- #12740 - Various fixes for browser compatibility issues (mike-000)
- #12741 - Minimal documentation for GMLBase (@mike-000)
- #12743 - Remove docs reference to unmanaged layer and Select (@mike-000)
- #12734 - Continue supporting IE11 in examples and legacy build (@ahocevar)
- #12739 - Change canvas style from initial to unset (@mike-000)
- #12731 - Handle resolution and tile loadingstrategy with user projection (@ahocevar)
- #12736 - OnSignatures return more specific type (@simonseyock)
- #12732 - Add to Quick Start (@mike-000)
- #12728 - Release v6.7.0 (@openlayers)
Dependency Updates
- #12784 - Bump webpack-dev-server from 4.2.0 to 4.2.1 (@openlayers)
- #12783 - Bump marked from 3.0.3 to 3.0.4 (@openlayers)
- #12782 - Bump webpack-sources from 3.2.0 to 3.2.1 (@openlayers)
- #12781 - Bump webpack from 5.52.1 to 5.53.0 (@openlayers)
- #12780 - Bump @babel/eslint-parser from 7.15.4 to 7.15.7 (@openlayers)
- #12750 - Bump webpack-dev-server from 4.1.0 to 4.2.0 (@openlayers)
- #12749 - Bump marked from 3.0.2 to 3.0.3 (@openlayers)
- #12748 - Bump ol-mapbox-style from 6.4.1 to 6.4.2 (@openlayers)
- #12747 - Bump terser-webpack-plugin from 5.2.3 to 5.2.4 (@openlayers)
- #12746 - Bump @babel/preset-env from 7.15.4 to 7.15.6 (@openlayers)
- #12745 - Bump webpack from 5.52.0 to 5.52.1 (@openlayers)
- #12744 - Bump webpack-dev-middleware from 5.0.0 to 5.1.0 (@openlayers)