Releases: mapbox/mapbox-gl-js
v3.0.0-beta.2
Mapbox GL JS v3 enables the Mapbox Standard Style, a new realistic 3D lighting system, building shadows and many other visual enhancements, and an ergonomic API for using a new kind of rich, evolving, configurable map styles and seamless integration with custom data. You can get more information about the new features in the Mapbox GL JS v3 migration guide.
Changes since v3.0.0-beta.1
:
✨ Features and improvements
- Improve performance of fill extrusion ground flood light & ambient occlusion effect.
- Improve terrain sampling accuracy.
- Add
style.import.load
event to track loading of imported style fragments and ensurestyle.load
is only called once per style. - Allow adding symbol layers to styles with imports if they don't have a
glyphs
endpoint specified (falling back to a default Mapbox endpoint). - Make sure API methods that return features or layers don't leak internals of imported styles.
- Remove
optimizeForTerrain
map option (layer rendering on terrain is always optimized now).
Bug fixes 🐞
- Fix accuracy of atmosphere gradient when rendering globe.
- Fix a bug where circle & heatmap layers rendered incorrectly in some situations.
- Fix a bug where model colors weren't always re-evaluated when light properties changed.
- Fix a bug where calling
setStyle
when using the Standard style failed. - Fix a bug where
map.removeSource
didn't work properly with the Standard style. - Fix a bug with
map.setLayoutProperty
not working on acustom
layer. - Fix a bug with hillshade rendering on terrain when combined with new light API.
- Fix a bug where fill extrusion flood light effect sometimes caused visible seams between tiles.
- Fix a bug with horizon placement when map
padding
is used.
v3.0.0-beta.1
Mapbox GL JS v3 enables the Mapbox Standard Style, a new realistic 3D lighting system, building shadows, nested, configurable styles, and many other visual enhancements, and an ergonomic API for using a new kind of rich, evolving, configurable map styles and seamless integration with custom data. You can get more information about the new features in the Mapbox GL JS v3 migration guide.
✨ Features and improvements
- Introduced a new 3D Lights API that supports directional and ambient light sources to give you control of lighting and shadows in your map when using 3D objects.
- Added new APIs for
fill-extrusion
and other layers to support 3D lighting styling. - Added support for shadows, casted from fill extrusions.
- Introduced flood lighting for both the walls of the extruded buildings and the ground beneath them.
- Introduced ambient occlusion to affect the ground beneath the extruded buildings.
- Introduced rounding fill extrusion edges for a smoother appearance.
- Introduced the
icon-image-cross-fade
property, which controls the transitioning between the two variants of an icon image. - Introduced raster colorization via
raster-color
paint properties. - Introduced
hsl
andhsla
color expressions: These expressions allow you to define colors using hue, saturation, and lightness format. - Introduced
random
expression: Generate random values using this expression. Use this expression to generate random values, which can be particularly helpful for introducing randomness into your map data. - Introduced
measureLight
expression lights configuration property: Create dynamic styles based on lighting conditions. - Introduced
config
expression: Retrieves the configuration value for the given option. - Introduced
raster-value
expression: Returns the raster value of a pixel computed viaraster-color-mix
. - Introduced
distance
expression: Returns the shortest distance in meters between the evaluated feature and the input geometry. - Introducing support for nested and configurable styles. You can now import other styles into your main style, with updates to imported styles automatically reflected in your main style. Configuration properties can be set for imported styles, making them customizable.
- Introduced concept of
slot
s, pre-specified locations in the style, where your layer can be added (e.g., on top of existing land layers but below all labels). - When no
style
option is provided to the Map constructor, the Mapbox Standard Style is now enabled as a default.
v2.15.0
Features ✨ and improvements 🏁
- Improve performance of symbol layers with identical or no text. Eliminate stuttering when zooming on maps with many identical symbols. (#12669)
- Improve performance of clustered sources: 20% faster loading & 40–60% less memory overhead. Improve performance of symbol collisions. (#12682)
- Add
respectPrefersReducedMotion
map option (#12694) - Add the
isPointOnSurface
map method to determine if the given point is located on a visible map surface. (#12695)
Bug fixes 🐞
- Fix inconsistent spacing in the Scale control (#12644) (h/t kathirgounder)
- Fix tiles preloading when a source is not yet loaded (#12699)
v2.15.0-beta.1
Update package version and the CHANGELOG for the 2.15.0-beta.1 releas… …e (#12717)
v2.14.1
v2.14.0
Features ✨ and improvements 🏁
- Support
referrerPolicy
option for thetransformRequest
function when using fetch (#12590) (h/t robertcepa)
Bug fixes 🐞
- Enable anisotropic filtering on tiles beyond 20 degrees pitch to prevent it from compromising image crispness on flat or low-tilted maps. (#12577)
- Fix LngLatBounds.extend() with literal LngLat object. (#12605)
- Add arrow characters to the map of verticalized character (#12608) (h/t kkokkojeong)
- Disable panning inertia if
prefers-reduced-motion
is enabled (#12631)
2.14.0-beta.1
Update package version and the CHANGELOG for the 2.14.0-beta.1 releas… …e (#12642)
v2.13.0
Features ✨ and improvements 🏁
- Support draping over terrain and globe in CustomLayer API (#12182)
- Improve the rendering performance of terrain slightly by reducing its GPU memory footprint. (#12472)
- Add methods for changing a raster tile source dynamically (e.g.
setTiles
,setUrl
). (#12352)
Bug fixes 🐞
- Fix
line-border-color
when used withline-trim-offset
(#12461) - Fix potential infinite loop when calling
fitBounds
with globe projection (#12488) - Fix
map.getBounds()
returning incorrect bounds with adaptive projections. (#12503) - Introduce skirts for terrain globe mode (#12523)
- Fix blur on draped lines while zoom-in (#12510)
- Fix map pan speed while pinching in (#12543)
- Fix negative-width diacritics handling (#12554)
- Fixes
undefined is not an object
incoalesceChanges
(#12497) (h/t nick-romano)
v2.13.0-beta.1
fix version in package.json (#12561)