Releases: mapbox/mapbox-gl-js
Releases · mapbox/mapbox-gl-js
v3.8.0-beta.1
Features and improvements ✨
- Minor optimizations to reduce load time.
Bug fixes 🐞
- Fix raster array rendering on some Android devices.
- Fix an issue where fill-extrusion buildings would disappear when zooming out.
- Fix line joins for thick semi-transparent or blurred lines.
- Improve appearance of line corners with densely placed vertices.
- Fix anti-alising aftifacts on blurred lines.
- Fix call stack overflow caused by repeated
addImport
calls. - Fix failures when handling non-renderable characters.
- Fix the Osage script rendering.
v3.7.0
Features and improvements ✨
- Add
background-pitch-alignment
property of thebackground
layer, which is set tomap
by default but can now be set toviewport
. Useful for highlighting individual features by dimming the rest of the map with a semitransparent background. - Add new control positions (
top
,right
,bottom
, andleft
) (h/t @Ethan-Guttman). - Add
retainPadding
option for camera movement methods, which can be set tofalse
for pre-v3.4 padding behavior. - Add
config
expression support in layer filter. - Add symbol elevation properties:
symbol-z-offset
andsymbol-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
andMap#setLayoutProperty
methods. - Allow the
string
event type in Map event handlers. - Expose
RequestTransformFunction
,ResourceType
, andRequestParameters
types. - Improve texture memory footprint on some platforms.
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 toauto
. - Fix the issue where
minzoom
andmaxzoom
properties were ignored byclip
layers. - Fix handling previously hidden models in
clip
layers. - Fix directional light
cast-shadows
property type. - Fix an edge case that could produce
setStencilMode
-related error in the console with the dev build. - Fix an issue where some fill extrusions could temporarily disappear when zooming quickly in certain areas.
- Fix an edge case that could cause flickering on a far plane on high zooms.
v3.7.0-beta.1
Features and improvements ✨
- Add
config
expression support in layer filter. - Add symbol elevation properties:
symbol-z-offset
andsymbol-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
andMap#setLayoutProperty
methods. - Allow the
string
event type in Map event handlers. - Expose
RequestTransformFunction
,ResourceType
, andRequestParameters
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 toauto
. - Fix the issue where
minzoom
andmaxzoom
properties were ignored byclip
layers. - Fix handling previously hidden models in
clip
layers. - Fix directional light
cast-shadows
property type.
v3.6.0
Features and improvements ✨
- Add wall rendering mode to the
fill-extrusion
layer by introducingfill-extrusion-line-width
andfill-extrusion-line-alignment
properties. Setfill-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 limitclip
layer to a specific style fragment. - Add
Map
idle
method to check whether a map is idle.
Bug fixes 🐞
- Fix
isSourceLoaded
flag onsourcedata
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
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 onsourcedata
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
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.