Skip to content

Releases: mapbox/mapbox-gl-js

v3.7.0-beta.1

12 Sep 15:52
Compare
Choose a tag to compare
v3.7.0-beta.1 Pre-release
Pre-release

Features and improvements ✨

  • Add config expression support in layer filter.
  • Add symbol elevation properties: symbol-z-offset and symbol-elevation-reference.
  • Add the fill-z-offset property for fill layers.
  • Improve Map#fitBounds for the alternative projections.
  • Improve terrain hillshade lighting anchored to viewport.
  • Improve shadow casting from 3D models.
  • Improve error messages for invalid expressions.
  • Skip landmarks rendering when the camera is inside them.
  • Improve type checking for the Map#setPaintProperty and Map#setLayoutProperty methods.
  • Allow the string event type in Map event handlers.
  • Expose RequestTransformFunction, ResourceType, and RequestParameters types.

Bug fixes 🐞

  • Fix feature filtering when using 3D lights.
  • Fix pattern rendering issues on some devices at high zoom levels.
  • Fix fill-extrusion-line-width rendering for large polygons
  • Fix symbol placement ordering when symbol-z-order is set to auto.
  • Fix the issue where minzoom and maxzoom properties were ignored by clip layers.
  • Fix handling previously hidden models in clip layers.
  • Fix directional light cast-shadows property type.

v3.6.0

14 Aug 15:51
Compare
Choose a tag to compare

Features and improvements ✨

  • Add wall rendering mode to the fill-extrusion layer by introducing fill-extrusion-line-width and fill-extrusion-line-alignment properties. Set fill-extrusion-line-width to a non-zero value to render walls instead of a solid extrusion.
  • Improve initial load performance.
  • Add inner glow effect for negative circle-blur values.
  • Add raster-particle-elevation property.
  • Add support for inlining TileJSON in style source definitions using data field.
  • Improve 3D models' shadow appearance.
  • Improve performance of updating config values of a style.
  • Add more descriptive expression evaluation error messages.
  • Improve TypeScript typings.
  • Improve performance of symbol occlusion (visibility checks against terrain and 3D objects).
  • Add clip-layer-scope property to limit clip layer to a specific style fragment.
  • Add Map idle method to check whether a map is idle.

Bug fixes 🐞

  • Fix isSourceLoaded flag on sourcedata event for already loaded sources.
  • Fix firing load event when all tiles fail to load.
  • Fix performance issues when GeoJSON in dynamic mode is updated too frequently.
  • Fix GeoJSON line rendering in dynamic mode.
  • Fix rasterarray layer flickering from stale tiles cache.
  • Fix spikes when viewing terrain-enabled maps in certain environments.
  • Fix Map getLayer not working properly with custom layers.
  • Fix custom layer rendering issues on globe with high pitch.
  • Fix an issue with line-trim-offset on very long lines.
  • Fix rendering issues when ground effects overlap with line layers.
  • Fix landmark visibility issues near tile borders.
  • Fix accessibility issues with compact attribution button and logo.

v3.6.0-beta.1

31 Jul 16:01
Compare
Choose a tag to compare
v3.6.0-beta.1 Pre-release
Pre-release

Features and improvements ✨

  • Improve initial load performance.
  • Add inner glow effect for negative circle-blur values.
  • Add support for inlining TileJSON in style source definitions using data field.
  • Improve 3D models' shadow appearance.
  • Improve performance of updating config values of a style.
  • Add more descriptive expression evaluation error messages.
  • Improve TypeScript typings.

Bug fixes 🐞

  • Fix isSourceLoaded flag on sourcedata event for already loaded sources.
  • Fix firing load event when all tiles fail to load.
  • Fix performance issues when GeoJSON in dynamic mode is updated too frequently.
  • Fix rasterarray layer flickering from stale tiles cache.
  • Fix spikes when viewing terrain-enabled maps in certain environments.

v3.5.2

18 Jul 14:46
Compare
Choose a tag to compare

Features and improvements ✨

  • Improve 3D models rendering performance.
  • Slightly improve terrain rendering performance.
  • Improve TypeScript API, including strongly typed Map event listeners, improved type narrowing, and more.

Bug fixes 🐞

  • Fix raster particle data decoding and improve rendering quality.
  • Fix 3D lighting rendering when lookup tables (LUT) image is applied.
  • Fix shadows rendering artifacts on fill-extrusion-cutoff-fade-range.

v3.5.1

05 Jul 14:19
Compare
Choose a tag to compare

Revert default behavior of symbol occlusion behind terrain to maintain compatibility. Set icon-occlusion-opacity/text-occlusion-opacity properties to opt-in to new occlusion behavior.

v3.5.0

04 Jul 17:11
Compare
Choose a tag to compare

Breaking changes ⚠️

  • This release marks a significant transition for GL JS, moving from Flow to TypeScript. While we have maintained backward compatibility where possible, the community typings @types/mapbox-gl are not fully compatible with the new first-class typings. Users relying on the community typings may experience breaking changes. Please remove the @types/mapbox-gl dependency and refer to the v3.5.0 migration guide for instructions on upgrading, resolving common issues, and asking questions regarding the migration to the first-class typings. We welcome your feedback and contributions to make Mapbox GL JS better.

Features and improvements ✨

  • Add color-theme property and Map setColorTheme method to enable colorization with a lookup table (LUT) images.
  • Significantly improve performance of updateData for GeoJSON sources in dynamic mode.
  • Add icon-occlusion-opacity and text-occlusion-opacity properties to fade symbols behind models and landmarks.
  • Add line-occlusion-opacity property to fade lines behind 3D objects.
  • Add experimental clip layer to filter out rendering data.
  • Add experimental line-z-offset property for a non-globe view.
  • Add model-cutoff-fade-range property to control fade out of faraway 3D buildings.
  • Improve precision of line-pattern on long lines and higher zooms.
  • Add experimental line-trim-color and line-trim-fade-range properties to customize rendering of lines trimmed with line-trim-offset.
  • Add Map getSlots method for listing available slots of a style.

Bug fixes 🐞

  • Fix a performance regression in Standard style introduced in v3.4.0.
  • Fix icon rotation during globe transition.
  • Fix GeoJSON data loss due to frequent updateData calls.
  • Improve raster-particle layer animation.
  • Fix model-front-cutoff property for Meshopt-encoded models.
  • Fix errors in the console on empty 3D tiles.
  • Fix not properly detecting fingerprinting protection when adding terrain through setTerrain.
  • Fix style.load event missing style property.
  • Fix errors when using queryRenderedFeatures on areas with missing DEM tiles when terrain is enabled.

v3.5.0-beta.1

19 Jun 15:27
Compare
Choose a tag to compare
v3.5.0-beta.1 Pre-release
Pre-release

Breaking changes ⚠️

  • This release marks a significant transition for GL JS, moving from Flow to TypeScript. While we have maintained backward compatibility where possible, the community typings @types/mapbox-gl are not fully compatible with the new first-class typings. Users relying on the community typings may experience breaking changes. Please remove the @types/mapbox-gl dependency and refer to the v3.5.0 migration guide for instructions on upgrading, resolving common issues, and asking questions regarding the migration to the first-class typings. We welcome your feedback and contributions to make Mapbox GL JS better.

Features and improvements ✨

  • Add a color-theme property to enable colorization with a lookup table (LUT) images.
  • Add icon-occlusion-opacity and text-occlusion-opacity properties to fade symbols behind models and landmarks.
  • Add line-occlusion-opacity property to fade lines behind 3D objects.
  • Add experimental clip layer to filter out rendering data.
  • Add experimental line-z-offset property for a non-globe view.
  • Add model-cutoff-fade-range property support to control fade out of faraway 3D buildings.

Bug fixes 🐞

  • Fix icon rotation during globe transition.
  • Fix GeoJSON data loss due to frequent updateData calls.
  • Improve raster-particle layer animation.
  • Fix padding not being applied on flyTo when prefers-reduced-motion is set.

v3.4.0

24 May 07:46
Compare
Choose a tag to compare

Features and improvements ✨

  • Add dynamic: true option for GeoJSON sources that enables partial update API with source.updateData method. Further optimizations for this mode are expected in future releases.
  • Add Map setConfig, getConfig, setSchema and getSchema methods for batch setting of style configuration options.
  • Add config option for the Map constructor and setStyle methods for conveniently setting style configuration options on map initialization.
  • Add icon-color-saturation, icon-color-contrast, icon-color-brightness-min and icon-color-brightness-max to control symbol layer appearance.
  • Introduce a new line-join mode: none to improve line pattern distortions around joins.
  • Extend model-id property to support URIs (in addition to style-defined model references).
  • Expose more parameters in map devtools UI.

Bug fixes 🐞

  • Fix an issue with flyTo ignoring padding in its options.
  • Respect padding in cameraForBounds on globe view. (h/t @jonasnoki) #13126
  • Fix preloadOnly not preloading tiles from style imports.
  • Fix queryRenderedFeatures for non-integer ID in non-tiled model sources
  • Fix model-scale property for large number of 3D models.
  • Fix flickering of raster-particle layer on globe view.
  • Improve rendering of low-resolution raster-array data.
  • Fix an issue with GL JS bundle not building locally on Windows.
  • Fix multiple edge cases when using symbol-z-elevate.
  • Fix rendering issues with raster-particle layer on certain Android devices.
  • Fix shadow and lighting rendering issues in certain areas when using Mapbox Standard.

v3.4.0-beta.1

10 May 10:03
Compare
Choose a tag to compare
v3.4.0-beta.1 Pre-release
Pre-release

Features and improvements ✨

  • Add icon-color-saturation, icon-color-contrast, icon-color-brightness-min and icon-color-brightness-max to control symbol layer appearance.
  • Introduce a new line-join mode: none to improve line pattern distortions around joins.
  • Extend model-id property to support URIs (in addition to style-defined model references).

Bug fixes 🐞

  • Respect padding in cameraForBounds on globe view. (h/t @jonasnoki) #13126
  • Fix preloadOnly not preloading tiles from style imports.
  • Fix queryRenderedFeatures for non-integer ID in non-tiled model sources
  • Fix model-scale property for large number of 3D models.
  • Fix flickering of raster-particle layer on globe view.
  • Improve rendering of low-resolution raster-array data.

v3.3.0

10 Apr 11:26
Compare
Choose a tag to compare

Features and improvements ✨

  • Add a new raster-array source type, representing a new experimental Mapbox Raster Tile format which encodes series of tiled raster data (such as weather time series).
  • Add a new raster-particle layer which animates particles of different speed and color based on underlying raster-array data.
  • Add addImport, moveImport, updateImport, and removeImport API methods.
  • Add getSlot, and setSlot API methods to control layers' slots.
  • Add landmarks and models support in queryRenderedFeatures.
  • Add raster-elevation support for tiled raster sources.
  • Add config expression support in fog.
  • Improve map loading performance.

Bug fixes 🐞

  • Fix zooming with the pitched camera and maxZoom.
  • Fix memory leak after removing the map. (h/t @kamil-sienkiewicz-asi) #13110, #13116
  • Fix broken horizon line for some camera values.
  • Fix broken globe draping after updating style with setStyle.
  • Fix the z offset when the opacity is evaluated at 0 on the zoom change.
  • Fix the format expression in the config expression.
  • Fix adding a marker to the map that is not loaded when fog is enabled.
  • Fix symbol and icon rendering order when using symbol-sort-key property.