Releases: mapbox/mapbox-gl-js
Releases · mapbox/mapbox-gl-js
v3.5.2
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
v3.5.0
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 andMap
setColorTheme
method to enable colorization with a lookup table (LUT) images. - Significantly improve performance of
updateData
forGeoJSON
sources indynamic
mode. - Add
icon-occlusion-opacity
andtext-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
andline-trim-fade-range
properties to customize rendering of lines trimmed withline-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 missingstyle
property. - Fix errors when using
queryRenderedFeatures
on areas with missing DEM tiles when terrain is enabled.
v3.5.0-beta.1
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
andtext-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
whenprefers-reduced-motion
is set.
v3.4.0
Features and improvements ✨
- Add
dynamic: true
option for GeoJSON sources that enables partial update API withsource.updateData
method. Further optimizations for this mode are expected in future releases. - Add
Map
setConfig
,getConfig
,setSchema
andgetSchema
methods for batch setting of style configuration options. - Add
config
option for theMap
constructor andsetStyle
methods for conveniently setting style configuration options on map initialization. - Add
icon-color-saturation
,icon-color-contrast
,icon-color-brightness-min
andicon-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
ignoringpadding
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
Features and improvements ✨
- Add
icon-color-saturation
,icon-color-contrast
,icon-color-brightness-min
andicon-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
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 underlyingraster-array
data. - Add
addImport
,moveImport
,updateImport
, andremoveImport
API methods. - Add
getSlot
, andsetSlot
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 theconfig
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
Features and improvements ✨
- Add raster particles layer.
- Add raster-array source.
- Add
addImport
,moveImport
,updateImport
, andremoveImport
API methods. - Add
getSlot
, andsetSlot
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 theconfig
expression. - Fix adding a marker to the map that is not loaded when fog is enabled.
v3.2.0
Features and improvements ✨
- Improve map loading performance.
- Add a debug UI for the development build of GL JS, enabled with
devtools: true
inMap
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
withpadding
option was setting and overriding map's padding. - Issue a warning instead of a validation error if
url
ortiles
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
andformat
expressions not working together. - Improve error reporting when a user environment doesn't support WebGL 2.
v3.2.0-beta.1
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
withpadding
option was setting and overriding map's padding. - Issue a warning instead of a validation error if
url
ortiles
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