Skip to content

Releases: mapbox/mapbox-gl-js

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.

v3.3.0-beta.1

02 Apr 09:14
Compare
Choose a tag to compare
v3.3.0-beta.1 Pre-release
Pre-release

Features and improvements ✨

  • Add raster particles layer.
  • Add raster-array source.
  • 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.

v3.2.0

01 Mar 13:09
Compare
Choose a tag to compare

Features and improvements ✨

  • Improve map loading performance.
  • Add a debug UI for the development build of GL JS, enabled with devtools: true in Map options.
  • Add imports support in map.areTilesLoaded.
  • Add support of rotation of elevated raster layers.
  • Add support of negative values for fill-extrusion-flood-light-ground-radius property.
  • Improve visual cutoff behavior of buildings when using fill-extrusion-cutoff-fade-range property.

Bug fixes 🐞

  • Fix the moiré effects on patterns in tilted map views.
  • Fix occasional rendering issues with semitransparent raster tiles on globe view.
  • Fix config expression chaining through nested styles and other issues related to config scope.
  • Fix an issue where map.flyTo with padding option was setting and overriding map's padding.
  • Issue a warning instead of a validation error if url or tiles is missing from source, i.e. in MapTiler source.
  • Remove role attribute for non-visible alerts. (h/t @jakubmakielkowski) #13051
  • Fix an elevation of symbols above multiple fill extrusions, when some of them hidden or lowered.
  • Fix a small callback-related memory leak. (h/t @temas) #13074
  • Fix config and format expressions not working together.
  • Improve error reporting when a user environment doesn't support WebGL 2.

v3.2.0-beta.1

16 Feb 11:40
Compare
Choose a tag to compare
v3.2.0-beta.1 Pre-release
Pre-release

Features and improvements ✨

  • Added imports support in map.areTilesLoaded.
  • Added support of rotation of elevated raster layers.
  • Added support of negative values for fill-extrusion-flood-light-ground-radius property.
  • Config options of one imported fragment can be used in another fragments.
  • Improved cutoff behavior of buildings.

Bug fixes 🐞

  • Fix an issue where map.flyTo with padding option was setting and overriding map's padding.
  • Issue a warning instead of a validation error if url or tiles is missing from source, i.e. in MapTiler source.
  • Fix the moiré effects on patterns in tilted map views.
  • Removing role attribute for non-visible alerts. (h/t @jakubmakielkowski) #13051
  • Fix an elevation of symbols above multiple fill extrusions, when some of them hidden or lowered.
  • Fix config expression chaining through nested styles.
  • Proper clean up of actor cancel callbacks. (h/t @temas) #13074