Releases: mapbox/mapbox-gl-js
v0.17.0
Breaking Changes
- Remove
map.batch
in favor of automatically batching style mutations (i.e. calls toMap#setLayoutProperty
,Map#setPaintProperty
,Map#setFilter
,Map#setClasses
, etc.) and applying them once per frame, significantly improving performance when updating the style frequently #2355 #2380 - Remove
util.throttle
#2345
New Features & Improvements
- Improve performance of all style mutation methods by only recalculating affected properties #2339
- Improve fading of labels and icons #2376
- Improve rendering performance by reducing work done on the main thread #2394
- Validate filters passed to
Map#queryRenderedFeatures
andMap#querySourceFeatures
#2349 - Display a warning if a vector tile's geometry extent is larger than supported #2383
- Implement property functions (i.e. data-driven styling) for
circle-color
andcircle-size
#1932 - Add
Popup#setDOMContent
method #2436
Bugfixes
- Fix a performance regression caused by using 1
WebWorker
instead of# cpus - 1
WebWorker
s, slowing down tile loading times #2408 - Fix a bug in which
Map#queryRenderedFeatures
would sometimes return features that had been removed #2353 - Fix
clusterMaxZoom
option onGeoJSONSource
not working as expected #2374 - Fix anti-aliased rendering for pattern fills #2372
- Fix exception caused by calling
Map#queryRenderedFeatures
orMap#querySourceFeatures
with no arguments - Fix exception caused by calling
Map#setLayoutProperty
fortext-field
oricon-image
#2407
v0.16.0
Breaking Changes
- Replace
Map#featuresAt
andMap#featuresIn
withMap#queryRenderedFeatures
andmap.querySourceFeatures
(#2224)- Replace
featuresAt
andfeaturesIn
withqueryRenderedFeatures
- Make
queryRenderedFeatures
synchronous, remove the callback and use the return value. - Rename
layer
parameter tolayers
and make it an array of layer names. - Remove the
radius
parameter.radius
was used withfeaturesAt
to account for style properties likeline-width
andcircle-radius
.queryRenderedFeatures
accounts for these style properties. If you need to query a larger area, use a bounding box query instead of a point query. - Remove the
includeGeometry
parameter becausequeryRenderedFeatures
always includes geometries.
- Replace
Map#debug
is renamed toMap#showTileBoundaries
(#2284)Map#collisionDebug
is renamed toMap#showCollisionBoxes
(#2284)
New Features & Improvements
- Improve overall rendering performance. (#2221)
- Improve performance of
GeoJSONSource#setData
. (#2222) - Add
Map#setMaxBounds
method (#2234) - Add
isActive
andisEnabled
methods to interaction handlers (#2238) - Add
Map#setZoomBounds
method (#2243) - Add touch events (#2195)
- Add
map.queryRenderedFeatures
to query the styled and rendered representations of features (#2224) - Add
map.querySourceFeatures
to get features directly from vector tiles, independent of the style (#2224) - Add
mapboxgl.Geolocate
control (#1939) - Make background patterns render seamlessly across tile boundaries (#2305)
Bugfixes
- Fix calls to
setFilter
,setLayoutProperty
, andsetLayerZoomRange
on ref children (#2228) - Fix
undefined
bucket errors aftersetFilter
calls (#2244) - Fix bugs causing hidden symbols to be rendered (#2246, #2276)
- Fix raster flickering (#2236)
- Fix
queryRenderedFeatures
precision at high zoom levels (#2292) - Fix holes in GeoJSON data caused by unexpected winding order (#2285)
- Fix bug causing deleted features to be returned by
queryRenderedFeatures
(#2306) - Fix bug causing unexpected fill patterns to be rendered (#2307)
- Fix popup location with preceding sibling elements (#2311)
- Fix polygon anti-aliasing (#2319)
- Fix slivers between non-adjacent polygons (#2319)
- Fix keyboard shortcuts causing page to scroll (#2312)
v0.15.0
v0.14.3
New Features & Improvements
Improve responsiveness of zooming out by using cached parent tiles (#2168)
Improve contextual clues on style API validation (#2170)
Improve performance of setFilter
, setLayoutProperty
and setLayerZoomRange
methods (#2174)
Bugfixes
Fix incorrectly sized line dashes (#2099)
Fix bug in which in
feature filter drops features (#2166)
Fix bug preventing Map#load
from firing when tile "Not Found" errors occured (#2176)
Fix rendering artifacts on mobile GPUs (#2117)
v0.14.2
Bugfixes
Look for loaded parent tiles in cache
Set tile cache size based on viewport size (#2137)
Fix tile render order for layer-by-layer
Remove source update throttling (#2139)
Make panning while zooming more linear (#2070)
Round points created during bucket creation (#2067)
Correct bounds for a rotated or tilted map (#1842)
Fix overscaled featuresAt (#2103)
Allow using tileSize: 512
as a switch to trade retina support for 512px raster tiles
Fix the serialization of paint classes (#2107)
Fixed bug where unsetting style properties could mutate the value of other style properties (#2105)
Less slanted dashed lines near sharp corners (#967)
Fire map#load if no initial style is set (#2042)
v0.14.1
v0.14.0
Breaking Changes
Switch GeoJSONSource
clustering options from being measured in extent-units to pixels (#2026)
New Features & Improvements
Improved error message for invalid colors (#2006)
Added support for tiles with variable extents (#2010)
Improved filter
performance and maximum size (#2024)
Changed circle rendering such that all geometry nodes are drawn, not just the geometry's outer ring (#2027)
Added Map#getStyle
method (#1982)
Bugfixes
Fixed bug causing WebGL contexts to be "used up" by calling mapboxgl.supported()
(#2018)
Fixed non-deterministic symbol z-order sorting (#2023)
Fixed garbled labels while zooming (#2012)
Fixed icon jumping when touching trackpad with two fingers (#1990)
Fixed overzoomed collision debug labels (#2033)
Fixed dashes sliding along their line during zooming (#2039)
Fixed overscaled minzoom
setting for GeoJSON sources (#1651)
Fixed overly-strict function validation for duplicate stops (#2075)
Fixed crash due to performance.now
not being present on some browsers (#2056)
Fixed the unsetting of paint properties (#2037)
Fixed bug causing multiple interaction handler event listeners to be attached (#2069)
Fixed bug causing only a single debug box to be drawn (#2034)
v0.13.1
v0.13.0
Bugfixes
Fixed easeTo pan, zoom, and rotate when initial rotation != 0 (#1950)
Fixed rendering of tiles with an extent != 4096 (#1952)
Fixed missing icon collision boxes (#1978)
Fixed null Tile#buffers
errors (#1987)
New Features & Improvements
Added symbol-avoid-edges
style property (#1951)
Improved symbol-max-angle
check algorithm (#1959)
Added marker clustering! (#1931)
Added zoomstart, zoom, and zoomend events (#1958)
Disabled drag on mousedown when using boxzoom (#1907)