Changelog History
Page 7
-
v1.1.0 Changes
โจ Minor features and improvements
- ๐ Improve line rendering performance by using a more compact line attributes layout (#8306)
- ๐ Improve data-driven symbol layers rendering performance (#8295)
- โ Add the ability to disable validation during
queryRenderedFeatures
andquerySourceFeatures
calls, as a performance optimization (#8211) (h/t gorshkov-leonid) - ๐ Improve
setFilter
performance by caching keys ingroupByLayout
routine (#8122) (h/t vallendm) - ๐ Improve rendering of symbol layers with
symbol-z-order: viewport-y
, when icons are allowed to overlap but not text (#8180) - ๐ Prefer breaking lines at a zero width space to allow better break point suggestions for Japanese labels (#8255)
- โ Add a
WebGLRenderingContext
argument toonRemove
function ofCustomLayerInterface
, to allow direct cleanup of related context (#8156) (h/t ogiermaitre) - ๐ Allow zoom speed customization by adding
setZoomRate
andsetWheelZoomRate
methods toScrollZoomHandler
(#7863) (h/t sf31) - โ Add
trackPointer
method toPopup
API that continuously repositions the popup to the mouse cursor when the cursor is within the map (#7786) - โ Add
getElement
method toPopup
to retrieve the popup's HTML element (#8123) (h/t @bravecow) - โ Add
fill-pattern
example to the documentation (#8022) (h/t @flawyte) - โก๏ธ Update script detection for Unicode 12.1 (#8158)
- โ Add
nofollow
to Mapbox logo & "Improve this map" links (#8106) (h/t viniciuskneves) - Include source name in invalid GeoJSON error (#8113) (h/t Zirak)
๐ ๐ Bug fixes
- ๐ Fix
updateImage
not working as expected in Chrome (#8199) - ๐ Fix issues with double-tap zoom on touch devices (#8086)
- ๐ Fix duplication of
movestart
events when zooming (#8259) (h/t @bambielli-flex) - ๐ Fix validation of
"format"
expression failing when options are provided (#8339) - ๐ Fix
setPaintProperty
not working online-pattern
property (#8289) - ๐ Fix the GL context being left in unpredictable states when using custom layers (#8132)
- ๐ Fix unnecessary updates to attribution control string (#8082) (h/t poletani)
- ๐ Fix bugs in
findStopLessThanOrEqualTo
algorithm (#8134) (h/t Mike96Angelo) - ๐ Fix map not displaying properly when inside an element with
text-align: center
(#8227) (h/t mc100s) - ๐ Clarify in documentation that
Popup#maxWidth
accepts allmax-width
CSS values (#8312) (h/t viniciuskneves) - ๐ Fix location dot shadow not displaying (#8119) (h/t @bravecow)
- ๐ Fix docs dev dependencies being mistakenly installed as package dependencies (#8121) (h/t @bravecow)
- ๐ Various typo fixes (#8230, h/t @erictheise) (#8236, h/t @fredj)
- ๐ Fix geolocate button CSS (#8367, h/t GuillaumeGomez)
- ๐ Fix caching for Mapbox tiles (#8389)
-
v1.0.0 Changes
โ ๏ธ Breaking changes
๐ This release replaces the existing โmap viewsโ pricing model in favor of a โmap loadโ model. Learn more in a recent blog post about these changes.
๐ By upgrading to this release, you are opting in to the new map loads pricing.
Why is this change being made?
๐ This change allows us to implement a more standardized and predictable method of billing GL JS map usage. Youโll be charged whenever your website or web application loads, not by when users pan and zoom around the map, incentivizing developers to create highly interactive map experiences. The new pricing structure also creates a significantly larger free tier to help developers get started building their applications with Mapbox tools while pay-as-you-go pricing and automatic volume discounts help your application scale with Mapbox. Session billing also aligns invoices with metrics web developers already track and makes it easier to compare usage with other mapping providers.
What is changing?
- โ Add SKU token to Mapbox API requests #8276
When (and only when) loading tiles from a Mapbox API with a Mapbox access token set (
mapboxgl.accessToken
), a query parameter namedsku
will be added to all requests for vector, raster and raster-dem tiles. Every map instance uses a uniquesku
value, which is refreshed every 12 hours. The token itself is comprised of a token version (always โ1โ), a sku ID (always โ01โ) and a random 10-digit base-62 number. The purpose of the token is to allow for metering of map sessions on the server-side. A session lasts from a new map instantiation until the map is destroyed or 12 hours passes, whichever comes first.๐ For further information on the pricing changes, you can read our blog post and check out our new pricing page, which has a price calculator. As always, you can also contact our team at https://support.mapbox.com.
-
v0.54.1 Changes
๐ Bug fixes
- ๐ Fix unbounded memory growth caused by failure to cancel requests in IE (#8481)
-
v0.54.0 Changes
๐ฅ Breaking changes
- ๐ Turned
localIdeographFontFamily
map option on by default. This may change how CJK labels are rendered, but dramatically improves performance of CJK maps (because the browser no longer needs to download heavy amounts of font data from the server). AddlocalIdeographFontFamily: false
to turn this off. #8008 - โ Added
Popup
maxWidth
option, set to"240px"
by default. #7906
Major features
- โ Added support for updating and animating style images. #7999
- โ Added support for generating style images dynamically (e.g. for drawing icons based on feature properties). #7987
- โ Added antialiasing support for custom layers. #7821
- โ Added a new
mapbox-gl-csp.js
bundle for strict CSP environments whereworker-src: blob
is disallowed. #8044
Minor features and improvements
- ๐ Improved performance of fill extrusions. #7821
- ๐ Improved performance of symbol layers. #7967
- ๐ Slightly improved rendering performance in general. #7969
- ๐ Slightly improved performance of HTML markers. #8018
- ๐ Improved diffing of styles with
"visibility": "visible"
. #8005 - ๐ Improved zoom buttons to grey out when reaching min/max zoom. #8023
- โ Added a title to fullscreen control button. #8012
- โ Added
rel="noopener"
attributes to links that lead to external websites (such as Mapbox logo and OpenStreetMap edit link) for improved security. #7914 - โ Added tile size info when
map.showTileBoundaries
is turned on. #7963 - Significantly improved load times of the benchmark suite. #8066
- ๐ Improved behavior of
canvasSource.pause
to be more reliable and able to render a single frame. #8130
๐ Bug fixes
- ๐ Fixed a bug in Mac Safari 12+ where controls would disappear until you interact with the map. #8193
- ๐ Fixed a memory leak when calling
source.setData(url)
many times. #8035 - ๐ Fixed a bug where marker lost focus when dragging. #7799
- ๐ Fixed a bug where
map.getCenter()
returned a reference to an internalLngLat
object instead of cloning it, leading to potential mutability bugs. #7922 - ๐ Fixed a bug where default HTML marker positioning was slightly off. #8074
- ๐ Fixed a bug where adding a fill extrusion layer for non-polygon layers would lead to visual artifacts. #7685
- ๐ Fixed intermittent Flow failures on CI. #8061
- ๐ Fixed a bug where calling
Map#removeFeatureState
does not remove the state from some tile zooms #8087 - ๐ Fixed a bug where
removeFeatureState
didn't work on features withid
equal to0
. #8150 (h/t jutaz)
- ๐ Turned
-
v0.53.0 Changes
๐ Features and improvements
- Enable
fill-extrusion
querying with ray picking (#7499) - โ Add
clusterProperties
option for aggregated cluster properties (#2412, fixed by #7584) - ๐ Allow initial map bounds to be adjusted with
fitBounds
options. (#7681) (h/t @elyobo) - โ Remove popups on
Map#remove
(#7749) (h/t @andycalder) - โ Add
Map#removeFeatureState
(#7761) - โ Add
number-format
expression (#7626) - โ Add
symbol-sort-key
style property (#7678)
๐ Bug fixes
- โฌ๏ธ Upgrades Earcut to fix a rare bug in rendering polygons that contain a coincident chain of holes (#7806, fixed by #7878)
- ๐ Allow
file://
protocol in XHR requests for Cordova/Ionic/etc (#7818) - Correctly handle WebP images in Edge 18 (#7687)
- ๐ Fix bug which mistakenly requested WebP images in browsers that do not support WebP (#7817) (#7819)
- ๐ Fix images not being aborted when dequeued (#7655)
- ๐ Fix DEM layer memory leak (#7690, fixed by #7691)
- Set correct color state before rendering custom layer (#7711)
- 0๏ธโฃ Set
LngLat.toBounds()
default radius to 0 (#7722, fixed by #7723) (h/t @cherniavskii) - ๐ Fix race condition in
feature-state
dependent layers (#7523, fixed by #7790) - Prevent
map.repaint
from mistakenly enabling continuous repaints (#7667) - Prevent map shaking while zooming in on raster tiles (#7426)
- ๐ Fix query point translation for multi-point geometry (#6833, fixed by #7581)
- Enable
-
v0.52.0 Changes
๐ฅ Breaking changes
- Canonicalize tile urls to
mapbox://
urls so they can be transformed withconfig.API_URL
(#7594)
๐ Features and improvements
- โ Add getter and setter for
config.API_URL
(#7594) - ๐ Allow user to define element other than map container for full screen control (#7548)
- โ Add validation option to style setters (#7604)
- โ Add 'idle' event: fires when no further rendering is expected without further interaction. (#7625)
๐ Bug fixes
- ๐ Fire error when map.getLayoutProperty references missing layer (#7537, fixed by #7539)
- ๐ Fix shaky sprites when zooming with scrolling (#7558)
- ๐ Fix layout problems in attribution control (#7608) (h/t lucaswoj)
- ๐ Fixes resetting map's pitch to 0 if initial bounds is set (#7617) (h/t stepankuzmin)
- ๐ Fix occasional failure to load images after multiple image request abortions #7641
- โก๏ธ Update repo url to correct one (#7486) (h/t nicholas-l)
- ๐ Fix bug where symbols where sometimes not rendered immediately (#7610)
- ๐ Fix bug where cameraForBounds returns incorrect CameraOptions with asymmetrical padding/offset (#7517, fixed by #7518) (h/t mike-marcacci)
- ๐ Use diff+patch approach to map.setStyle when the parameter is a URL (#4025, fixed by #7562)
- Begin touch zoom immediately when rotation disabled (#7582) (h/t msbarry)
- ๐ Fix symbol rendering under opaque fill layers (#7612)
- ๐ Fix shaking by aligning raster sources to pixel grid only when map is idle (#7426)
- ๐ Fix raster layers in Edge 18 by disabling it's incomplete WebP support (#7687)
- ๐ Fix memory leak in hillshade layer (#7691)
- ๐ Fix disappearing custom layers (#7711)
- Canonicalize tile urls to
-
v0.51.0 Changes
November 7, 2018
โจ Features and improvements
- โ Add initial bounds as map constructor option (#5518) (h/t stepankuzmin)
- ๐ Improve performance on machines with > 8 cores (#7407, fixed by #7430)
- โ Add
MercatorCoordinate
type (#7488) - ๐ Allow browser-native
contextmenu
to be enabled (#2301, fixed by #7369) - โ Add an unminified production build to the NPM package (#7403)
- โ Add support for
LngLat
conversion from{lat, lon}
(#7507) (h/t @bfrengley) - โ Add tooltips for navigation controls (#7373)
- ๐ Show attribution only for used sources (#7384)
- โ Add telemetry event to log map loads (#7431)
- ๐ Tighten style validation
๐ ๐ Bug fixes
- ๐ Fix for GeoJSON geometries not working when coincident with tile boundaries(#7436, fixed by #7448)
- ๐ Fix depth buffer-related rendering issues on some Android devices. (#7471)
- ๐ Fix positioning of compact attribution strings (#7444, #7445, and #7391)
- ๐ Fix an issue with removing markers in mouse event callbacks (#7442) (h/t vbud)
- โ Remove controls before destroying a map (#7479)
- ๐ Fix display of Scale control values < 1 (#7469) (h/t MichaelHedman)
- ๐ Fix an error when using location
hash
within iframes in IE11 (#7411) - ๐ Fix depth mode usage in custom layers (#7432) (h/t markusjohnsson)
- ๐ Fix an issue with shaky sprite images during scroll zooms (#7558)
-
v0.50.0 Changes
October 10, 2018
โจ Features and improvements
- ๐ Add Custom Layers that can be rendered into with user-provided WebGL code (#7039)
- โ Add WebGL face culling for increased performance (#7178)
- ๐ Improve speed of expression evaluation (#7334)
- ๐ Automatically coerce to string for
concat
expression andtext-field
property (#6190, fixed by #7280) - โ Add
fill-extrusion-vertical-gradient
property for controlling shading of fill extrusions (#5768, fixed by #6841) - โ Add update functionality for images provided via
ImageSource
(#4050, fixed by #7342) (h/t @dcervelli)
๐ ๐ Bug fixes
- Expressions
- Fix expressions that use
log2
andlog10
in IE11 (#7318, fixed by #7320) - Fix
let
expression stripping expected type during parsing (#7300, fixed by #7301) - Fix superfluous wrapping of literals in
literal
expression (#7336, fixed by #7337) - Allow calling
to-color
on values that are already of typeColor
(#7260) - Fix
to-array
for empty arrays ((#7261)) - Fix identity functions for
text-field
when using formatted text (#7351) - Fix coercion of
null
to0
into-number
expression (#7083, fixed by #7274)
- Fix expressions that use
- Canvas source
- Rendering
- Fix rendering of fill extrusions with really high heights (#7292)
- Fix an error where the map state wouldn't return to
loaded
after certain runtime styling changes when there were errored tiles in the viewport (#7355) - Fix errors when rendering symbol layers without symbols (#7241, fixed by #7253)
- Don't fade in symbols with
*-allow-overlap: true
when panning into the viewport (#7172, fixed by#7244)
- Library
- Fix disambiguation for
mouseover
event (#7295, fixed by #7299) - Fix silent failure of
getImage
if an SVG is requested (#7312, fixed by #7313) - Fix empty control group box shadow (#7303, fixed by #7304) (h/t Duder-onomy)
- Fixed an issue where a wrong timestamp was sent for Mapbox turnstile events (#7381)
- Fixed a bug that lead to attribution not showing up correctly in Internet Explorer (#3945, fixed by #7391)
- Fix disambiguation for