Update dependency mapbox-gl to v3
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| mapbox-gl | 2.15.0 -> 3.3.0 |
||||
| @types/mapbox-gl (source) | 2.7.21 -> 3.1.0 |
Release Notes
mapbox/mapbox-gl-js (mapbox-gl)
v3.3.0
Features and improvements ✨
- Add a new
raster-arraysource 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-particlelayer which animates particles of different speed and color based on underlyingraster-arraydata. - Add
addImport,moveImport,updateImport, andremoveImportAPI methods. - Add
getSlot, andsetSlotAPI methods to control layers' slots. - Add landmarks and models support in
queryRenderedFeatures. - Add
raster-elevationsupport for tiled raster sources. - Add
configexpression 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
zoffset when the opacity is evaluated at 0 on the zoom change. - Fix the
formatexpression in theconfigexpression. - 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-keyproperty.
v3.2.0
Features and improvements ✨
- Improve map loading performance.
- Add a debug UI for the development build of GL JS, enabled with
devtools: trueinMapoptions. - 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-radiusproperty. - Improve visual cutoff behavior of buildings when using
fill-extrusion-cutoff-fade-rangeproperty.
Bug fixes 🐞
- Fix an issue where
map.flyTowithpaddingoption was setting and overriding map's padding. - Issue a warning instead of a validation error if
urlortilesis missing from source, i.e. in MapTiler source. - Fix the moiré effects on patterns in tilted map views.
- 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
configexpression chaining through nested styles and other issues related to config scope. - Fix a small callback-related memory leak. (h/t @temas) #13074
- Fix
configandformatexpressions not working together.
v3.1.2
Bug fixes 🐞
- Fix attribution not being displayed for imported fragments (reintroducing the fix from v3.0.1 that was accidentally missing in v3.1.0).
v3.1.1
Bug fixes 🐞
- Fix
fill-extrusionsnot being displayed in alternative projections. - Fix an issue when WebGL might randomly crash to an unrecoverable state on some mobile devices, specifically Safari on iOS.
v3.1.0
Features and improvements ✨
- Improve performance for maps with many textures (such as styles with satellite imagery), fixing excessive memory usage. (h/t @tristan-morris) #12924
- Add
raster-elevationproperty for elevating raster layers to a constant height (e.g. clouds over globe). - Add
raster-emissive-strengthandfill-extrusion-emissive-strengthproperties for controlling 3D lighting on buildings and raster layers. - Add
MapgetConfigPropertymethod for getting current style config values. - Add
configsupport in terrain options. - Improve performance for pitched views with many fill extrusions on higher zoom levels.
- Allow turning off the terrain that is defined in the imports on the root-level Style by setting it to
null. - Allow the partial terrain exaggeration update without specifying the source.
- Respect style schema restrictions (
minValue,maxValue,stepValue,values,type) when evaluating config options.
Bug fixes 🐞
- Fix an issue where
center: [0, 0]andzoom: 0map options were ignored in favor of style settings. - Fix an issue with the camera not taking the short route when animating between locations across the anti-meridian.
- Fix an issue where a style with imports sometimes loaded in incomplete state.
- Fix an issue with rendering styles with nested imports.
- Fix an issue with sources not reloading when changing language and worldview.
- Fix an issue where updating a style fragment URL didn't work correctly.
- Fix an issue when adding a layer with explicit
slotnot taking precedence over thebeforeparameter for layer order. - Fix an issue where updating an image before initial image is loaded produced an error. (h/t @maciejmatu) #12928
- Fix an issue with incorrect collisions for elevated symbols.
- Fix an issue with
"camera-projection": "orthographic"not working in styles with imports. - Fix an issue with tiles sometimes missing in terrain mode on views from a hill down on a valley.
- Fix compact attribution style when using global CSS that sets
box-sizing: border-box. (h/t @simondriesen) #12982 - Remove redundant
aria-labelattribute in attribution control that fails accessibility conformance. (h/t @maggiewachs) #12981 - Disable terrain and hillshade when browser fingerprinting protection (e.g. in private browsing mode) prevents it from rendering correctly.
- Fix layer rendering when import requests are failing.
- Fix map
loadevent not firing for the sources whose tiles are 404s. - Require either
urlortilesfor tiled sources during validation. - Validate for empty layer and source IDs in runtime.
v3.0.1
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.
v3.0.1
Bug fixes 🐞
- Fix attribution not being displayed for imported fragments.
v3.0.0
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.
Breaking changes ⚠️
- Discontinue WebGL 1 support. WebGL 2 is now mandatory for GL JS v3 usage, aligned with universal browser support.
- Remove the
optimizeForTerrainmap option (layer rendering on globe and terrain is always optimized now).
✨ 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.
- Add new
*-emissive-strengthproperties for styling layers with the new lighting API. - Introduced flood lighting for the extruded buildings' walls and the ground beneath them.
- Introduced ambient occlusion to affect the ground beneath the extruded buildings.
- Introduced
measureLightexpression lights configuration property: Create dynamic styles based on lighting conditions. - Added support for shadows cast from fill extrusions.
- Introduced
hslandhslacolor expressions: These expressions allow you to define colors using hue, saturation, and lightness format. - Add support for fading out 3D layers in the distance with
fill-extrusion-cutoff-fade-rangeandmodel-cutoff-fade-rangestyle properties. - 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
slots, pre-specified locations in the style, where your layer can be added (e.g., on top of existing land layers but below all labels). - Introduced
configexpression: Retrieves the configuration value for the given option. - When no
styleoption is provided to the Map constructor, the Mapbox Standard Style is now enabled as a default. - Add a
style.import.loadevent to track the loading of imported style fragments. - Improve terrain sampling accuracy.
- Improve zooming and panning over dynamic terrain so that it feels smooth.
- Improve performance for styles that use both hillshade layers and terrain.
- Introduced raster colorization via
raster-colorpaint properties. - Introduced
raster-valueexpression: Returns the raster value of a pixel computed viaraster-color-mix. - Add support for controlling the vertical fog range with
vertical-rangestyle property. - Introduced rounding fill extrusion edges for a smoother appearance.
- Introduced the
icon-image-cross-fadeproperty, which controls the transitioning between the two variants of an icon image. - Introduced
randomexpression: 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
distanceexpression: Returns the shortest distance in meters between the evaluated feature and the input geometry. - Add support for elevating symbols over buildings & other 3D layers with
symbol-z-elevatestyle property. - Improve rendering of stars on globe view.
- Add the
renderstartevent, which, combined with therenderevent, can be used to measure rendering frame duration. - Enable zoom-based expressions for model rotation, scale, and translation.
- Optimize shader compilation to reduce stuttering on complex 3D styles.
- Reduce flickering of symbols along lines due to rounding errors.
Bug fixes 🐞
- Fix the accuracy of the atmosphere gradient when rendering the globe.
- Fix a bug with horizon placement when map
paddingis used. - Fix a bug with horizon rendering on Windows/NVidia.
- Accessibility fixes: remove
tabindexwhen the map is not interactive; removerole="list"from the attribution control; addrole="img"to markers (h/t @kumiko-haraguchi and @aviroopjana). - Fix the order of layers in
queryRenderedFeaturesresults on maps with globe and terrain. - Fix an error when zooming out on certain globe views using the GL JS development bundle.
- Fix an error on
maphasImageandupdateImageafter the map was removed. - Fix rendering of line layers with data-driven
line-border. - Fix an issue with symbols sometimes not rendering correctly over the terrain on a top-down view.
- Remove duplicate frag precision qualifiers
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
- [ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.