Releases: maplibre/maplibre-gl-js
Releases · maplibre/maplibre-gl-js
v3.2.2
https://github.com/maplibre/maplibre-gl-js
Changes since MapLibre GL JS v3.2.1:
✨ Features and improvements
- Add
cacheparameter toRequestParameters(#2910) - Removed some classed from the docs to better define the public API (#2945)
🐞 Bug fixes
v3.2.1
https://github.com/maplibre/maplibre-gl-js
Changes since MapLibre GL JS v3.2.0:
✨ Features and improvements
- Remove cooperative gesture screen from the accessibility tree since screenreaders cannot interact with the map using gestures
- Add
cooperated gesturesexample to the doc.(#2860)
🐞 Bug fixes
- Incorrect distance field of view calculation for negative elevation, fixed by storing min elevation for the tile in view (#1655, #2858)
- Fix reloadCallback not firing on VectorTileWorkerSource.reloadTile (#1874)
- Fix RasterDEMTileSource not serializing its options correctly (#2895)
- Remove node and jest from dist type checking, fix map event and other typing problems (#2898)
v3.2.0
https://github.com/maplibre/maplibre-gl-js
Changes since MapLibre GL JS v3.1.0:
✨ Features and improvements
- Change all internal exports to named exports(#2711)
- Docs generation is now part of this repo(#2733)
- Add
classNameoption to Marker constructor (#2729) - Immediately redraw the map after setting pixel ratio (#2674)
- Add maxCanvasSize option to limit canvas size. It can prevent reaching the GL limits and reduce the load on the devices. Default value is [4096, 4096].
- Reduce maxCanvasSize when hitting GL limits to avoid distortions (#2674)
- Rewrite all the code comments in TSDocs, introduced a new documentaiton system and moved examples into this repository for better debug options (#2756)
⚠️ Removed non documentedMarkerconstructor parameter (#2756)
🐞 Bug fixes
- Return undefined instead of throwing from
Style.serialize()when the style hasn't loaded yet (#2712) - Don't throw an exception from
checkMaxAnglewhen a label with length 0 is on the last segment of a line (#2710) - Fix the
tap then dragzoom gesture detection to abort when the two taps are far away (#2673) - Fix regression - update pixel ratio when devicePixelRatio changes, restoring the v1.x behaviour (#2706)
- Fix incorrect elevation calculation [#2772]
v3.2.0-pre.3
Bump version to 3.2.0-pre.3 (#2831)
v3.2.0-pre.2
Bump version to 3.2.0-pre.2 (#2825) * Bump version to 3.2.0-pre.2 * Fix docs links to examples folder (#2826) * Fix docs links to examples folder * update more links * Fix lowercase Issue --------- Co-authored-by: Birk Skyum <74932975+birkskyum@users.noreply.github.com>
v3.2.0-pre.1
Move examples to examples folder (#2818)
v3.1.0
https://github.com/maplibre/maplibre-gl-js
Changes since MapLibre GL JS v3.0.1:
✨ Features and improvements
- Expose map options.maxTileCacheZoomLevels to allow better control of tile cache (#2581)
🐞 Bug fixes
- Fix regression - Add webgl1 fallback to accomondate users without webgl2 support (#2653)
v3.0.1
https://github.com/maplibre/maplibre-gl-js
Changes since MapLibre GL JS v3.0.0:
✨ Features and improvements
- Update shaders to GLSL ES 3.0 (#2599)
🐞 Bug fixes
v3.0.0
https://github.com/maplibre/maplibre-gl-js
Changes since MapLibre GL JS v3.0.0-pre.9:
New features and improvements
- Add
transformCameraUpdatecallback toMapoptions (#2535) - Bump KDBush and supercluster for better memory efficiency (#2522)
- Improve performance by using HTMLImageElement to download raster source images when refreshExpiredTiles tiles is false (#2126)
- Set fetchPriority for HTMLImageElement to help improve raster-heavy scenarios (#2459)
- Reduce rendering calls on initial load. No reason to try rendering before the style is loaded. (#2464)
- Lazy load default style properties on demand to improve loading performance and reduce memory usage. (#2476)
- Add queryTerrainElevation allows getting terrain elevation in meters at a specific point (#2264)
- Improve performance by sending style layers to the worker thread before processing it on the main thread to allow parallel processing (#2131)
- Add Map.getImage() to retrieve previously-loaded images. (#2168)
- Add a method to enable/disable cooperative gestures
- Update CONTRIBUTING.md with details on setting up on M1 mac (#2196)
- Update default type of originalEvent in MapLibreEvent to be
unknown(#2243) - Improve performance when forcing full symbol placement by short-circuiting pause checks (#2241)
- Adding a
warnoncewhen terrain and hillshade source are the same (#2298) - Remove a deprecation warning by removing an empty texture that is no longer being used in the codebase (#2299)
- Improve initial loading performance by lazy serializing layers only when needed. (#2306)
- Add validateStyle MapOption to allow disabling style validation for faster performance in production environment. (#2390)
- Add
setiClusterOptionsto update cluster properties of the added sources: fixing these issues (#429) and (#1384) - Add types for
workerOptionsand_optionsingeojson_source.ts - Add fullscreenstart, fullscreenend events to FullscreenControl (#2128
- Throttle the image request queue while the map is moving to improve performance (#2097
- Add support for multiple
spritedeclarations in one style file (#1805) - Extract sprite image on demand to reduce memory usage and improve performance by reducing the number of getImageData calls (#1809)
QueryRenderedFeaturesOptionstype added to both of the params in queryRenderedFeatures in map.ts (#1900)- NavigationControlOptions is now optional when creating an instance of NavigationControl (#1754)
- Listen to webglcontextcreationerror event and give detailed debug info when it fails (#1715)
- Make sure
cooperativeGesturesoverlay is always "on top" (z-index) of map features (#1753) - Use
willReadFrequentlyhint to optimize 2D canvas usage and remove warnings (#1808) - Speed up the cross tile symbol index in certain circumstances (#1755)
- Improve rendering speed in scenes with many colliding symbolic icons and labels (#1757)
- Make request for ImageSource cancelable (#1802)
- Throttle the image request queue while the map is moving to improve performance (#2097)
- Return a promise from
oncemethod to allow easier usage of async/await in this case (#1690) - Add pseudo (CSS) fullscreen as a fallback for iPhones (#1678)
- Add
updateDatatoGeoJSONSourcewhich allows for partial data updates (#1605) - Add a RenderPool to render tiles onto textures for 3D (#1671)
- Add map.getCameraTargetElevation() (#1558)
- Add
freezeElevationtoAnimationOptionsto allow smooth camera movement in 3D (#1514, #1492) - Add map.setStyle's transformStyle option (#1632)
Potentially breaking changes
Most of these changes will not affect your code but read carefully through the list to asses if a migration is needed.
⚠️ Cancel unloaded tile request on zooming in across multiple zooms. Previously these requests were not cancelled. (#2377)⚠️ Resize map when container element is resized. The "resize"-related events now has different data associated with it (#2157, #2551). Previously the originalEvent field was the reason of this change, for example it could be aresizeevent from the browser. Now it isResizeObserverEntry, see more here.⚠️ Improve rendering of areas below sea level, and remove elevationOffset workaround (#1578)⚠️ Remove support forhslcss color in a format that does not comply with the CSS Color specification. Colors defined inhsl(110, 0.7, 0.055)format will no longer work, instead it is recommended to use the format with percentageshsl(110, 70%, 5.5%). (#2376)⚠️ Move terrain object from style.terrain to map.terrain (#1628)⚠️ Remove deprecatedmapboxgl-css classes (usemaplibregl-instead) (#1575)⚠️ Full transition from WebGL1 to WebGL2 (browser support) (#2512, #1891)⚠️ LngLat.toBounds()is replaced by a static methodLngLatBounds.fromLngLat()(#2188)⚠️ Make geojson data source a required field to align with the docs (#1396)⚠️ Improve control initial loading performance by forcing fadeDuration to 0 till first idle event (#2447)⚠️ Remove "mapbox-gl-supported" package from API. If needed, please reference it directly instead of going through MapLibre. (#2451)⚠️ Improve control performance by restricting worker count to a max of 1 except for Safari browser. (#2354)
Bug fixes
- Fix of incorrect dash in diagonal lines with a vector source at some zoom levels. (#2479)
- Fix event.isSourceLoaded to reflect the state of source loading for sourcedata event (#2543)
- Fix overlapping of 3D building parts when 3D Terrain is activated (#2513)
- Show 3D buildings located below sea level when 3D Terrain is activated (#2544)
- Fix
LngLatBounds.extend()to correctly handle{ lng: number, lat: number }coordinates. (#2425) - Fix the accuracy-circle in the geolocate control from randomly resizing. (#2450)
- Fix the type of the
featuresproperty onMapLayerMouseEventandMapLayerTouchEventto beMapGeoJSONFeature[]in lieu ofGeoJSON.Feature[](#2244) - Fix GeolocateControl error if removed quickly (#2391)
- Fix issue unloading sprite sheet when using
setStyle(style, {diff:true})(#2146) - Fix wrap coords in
getTerrainwhenfitBoundsacross the AM (#2155) - Fix LngLat
toArraymethod return type...
v3.0.0-pre.9
Release 3.0.0-pre.9 (#2553)