Releases: mapbox/mapbox-gl-js
Releases · mapbox/mapbox-gl-js
v0.34.0
New features 🚀
- Add
Map#addImageandMap#removeImageAPI to allow adding icon images at runtime #4404 - Simplify non-browserify bundler usage by making the distribution build the main entrypoint #4423
Bug fixes 🐛
- Fix issue where coincident start/end points of LineStrings were incorrectly rendered as joined #4413
- Fix bug causing
queryRenderedFeaturesto fail in cases where both multiple sources and data-driven paint properties were present #4417 - Fix bug where tile request errors caused
map.loaded()to incorrectly returnfalse#4425
Testing improvements ✅
v0.33.1
Bug fixes 🐛
- Prevent Mapbox logo from being added to the map more than once #4386
- Add
type='button'toFullscreenControlto prevent button from acting as a form submit #4397 - Fix issue where map would continue to rotate if
Ctrlkey is released before the click during aDragRotateevent #4389 - Remove double
options.easingdescription from theMap#fitBoundsdocumentation #4402
v0.33.0
⚠️ Breaking changes
- Automatically add Mapbox wordmark when required by Mapbox TOS #3933
- Increase default
maxZoomfrom 20 to 22 #4333 - Deprecate
tiledataandtiledataloadingevents in favor ofsourcedataandsourcedataloading. #4347 mapboxgl.utilis no longer exported. #4241
✅ New features
- Add property functions support for most symbol paint properties #4074, #4186, #4226
- Add ability to specify default property value for undefined or invalid property values used in property functions. #4175
- Improve
Map#fitBoundsto accept different values for top, bottom, left, and rightpadding#3890 - Add a
FullscreenControlfor displaying a fullscreen map #3977
🐞 Bug fixes
- Fix validation error on categorical zoom-and-property functions #4220
- Fix bug causing expired resources to be re-requested causing an infinite loop #4255
- Fix problem where
MapDataEvent#isSourceLoadedalways returned false #4254 - Fix an issue where tiles in the source cache were prematurely deleted, resulting in tiles flickering when zooming in and out #4311
- Make sure
MapEventDatais passed through on callsMap#flyTo#4342 - Fix incorrect returned values for
Map#isMoving#4350 - Fix categorical functions not allowing boolean stop domain values #4195
- Fix piecewise-constant functions to allow non-integer zoom levels. #4196
- Fix issues with
$idin filters #4236 #4237 - Fix a race condition with polygon centroid algorithm causing tiles not to load in some cases. #4273
- Throw a meaningful error when giving non-array
layersparameter toqueryRenderedFeatures#4331 - Throw a meaningful error when supplying invalid
minZoomandmaxZoomvalues #4324 - Fix a memory leak when using the RTL Text plugin #4248
🔧 Dev workflow changes
- Merged the Mapbox GL style specification repo to this one (now under
src/style-specandtest/unit/style-spec).
v0.32.1
v0.32.0
Deprecation Notices
- Style classes are deprecated and will be removed in an upcoming release of Mapbox GL JS.
New Features
- Add
Map#isSourceLoadedmethod #4033 - Automatically reload tiles based on their
ExpiresandCache-ControlHTTP headers #3944 - Add
around=centeroption toscrollZoomandtouchZoomRotateinteraction handlers #3876 - Add support for
mapbox-gl-rtl-textplugin to support right-to-left scripts #3758 - Add
canvassource type #3765 - Add
Map#isMovingmethod #2792
Bug Fixes
- Fix bug causing garbled text on zoom #3962
- Fix bug causing crash in Firefox and Mobile Safari when rendering a large map #4037
- Fix bug causing raster tiles to flicker during zoom #2467
- Fix bug causing exception when unsetting and resetting fill-outline-color #3657
- Fix memory leak when removing raster sources #3951
- Fix bug causing exception when when zooming in / out on empty GeoJSON tile #3985
- Fix line join artifacts at very sharp angles #4008
v0.31.0
0.31.0 (Jan 10 2017)
New Features
- Add
renderWorldCopiesoption to theMapconstructor to give users control over whether multiple worlds are rendered in a map #3885
Bug Fixes
- Fix performance regression triggered when
Mappitch or bearing is changed #3938 - Fix null pointer exception caused by trying to clear an
undefinedsource #3903
Miscellaneous
- Incorporate integration tests formerly at
mapbox-gl-test-suiteinto this repository #3834
v0.30.0
New Features
- Fire an error when map canvas is larger than allowed by
gl.MAX_RENDERBUFFER_SIZE#2893 - Improve error messages when referencing a nonexistent layer id #2597
- Fire an error when layer uses a
geojsonsource and specifies asource-layer#3896 - Add inline source declaration syntax #3857
- Improve line breaking behavior #3887
Performance Improvements
- Improve
Map#setStyleperformance in some cases #3853
Bug Fixes
- Fix unexpected popup positioning when some offsets are unspecified #3367
- Fix incorrect interpolation in functions #3838
- Fix incorrect opacity when multiple backgrounds are rendered #3819
- Fix exception thrown when instantiating geolocation control in Safari #3844
- Fix exception thrown when setting
showTileBoundarieswith no sources #3849 - Fix incorrect rendering of transparent parts of raster layers in some cases #3723
- Fix non-terminating render loop when zooming in in some cases #3399
v0.29.0
New Features
- Add support for property functions for many style properties on line layers #3033
- Make
Map#setStylesmoothly transition to the new style #3621 - Add
styledata,sourcedata,styledataloading, andsourcedataloadingevents - Add
isSourceLoadedandsourceproperties toMapDataEvent#3590 - Remove "max zoom" cap of 20 #3683
- Add
circle-stroke-*style properties #3672 - Add a more helpful error message when the specified
containerelement doesn't exist #3719 - Add
watchPositionoption toGeolocateControl#3739 - Add
positionOptionsoption toGeolocateControl#3739 - Add
aria-labelto map canvas #3782 - Adjust multipoint symbol rendering behavior #3763
- Add support for property functions for
icon-offset#3791 - Improved antialiasing on pitched lines #3790
- Allow attribution control to collapse to an ⓘ button on smaller screens #3783
- Improve line breaking algorithm #3743
Performance Improvements
- Fix memory leak when calling
Map#removeSource#3602 - Reduce bundle size by adding custom build of
gl-matrix#3734 - Improve performance of projection code #3721
- Improve performance of style function evaluation #3816
Bug fixes
- Fix exception thrown when using
line-colorproperty functions #3639 - Fix exception thrown when removing a layer and then adding another layer with the same id but different type #3655
- Fix exception thrown when passing a single point to
Map#fitBounds#3655 - Fix exception thrown occasionally during rapid map mutations #3681
- Fix rendering defects on pitch=0 on some systems #3740
- Fix unnecessary CPU usage when displaying a raster layer #3764
- Fix bug causing sprite after
Map#setStyle#3829 - Fix bug preventing
Mapfrom emitting acontextmenuevent on Windows browsers #3822
v0.28.0
0.28.0 (November 17 2016)
New features and improvements
- Performance improvements for
Map#addLayerandMap#removeLayer#3584 - Add method for changing layer order at runtime -
Map#moveLayer#3584 - Update vertical punctuation logic to Unicode 9.0 standard #3608
Bug fixes
- Fix data-driven
fill-opacityrendering when using afill-pattern#3598 - Fix line rendering artifacts #3627
- Fix incorrect rendering of opaque fills on top of transparent fills #2628
- Prevent
AssertionErrorsfrom pitching raster layers by only callingWorker#redoPlacementon vector and GeoJSON sources #3624 - Restore IE11 compatability #3635
- Fix symbol placement for cached tiles #3637
v0.27.0
⚠️ Breaking changes ⚠️
- Replace
fill-extrude-heightandfill-extrude-baseproperties offillrender type with a separatefill-extrusiontype (with correspondingfill-extrusion-heightandfill-extrusion-baseproperties), solving problems with render parity and runtime switching between flat and extruded fills. mapbox/mapbox-gl-style-spec#554 - Change the units for extrusion height properties (
fill-extrusion-height,fill-extrusion-base) from "magic numbers" to meters. #3509 - Remove
mapboxgl.Controlclass and change the way custom controls should be implemented. #3497 - Remove
mapboxgl.utilfunctions:inherit,extendAll,debounce,coalesce,startsWith,supportsGeolocation. #3441 #3571 mapboxgl.utilis deprecated and will be removed in the next release. #1408
New features and improvements
- Tons of performance improvements that combined make rendering up to 3 times faster, especially for complex styles. #3485 #3489 #3490 #3491 #3498 #3499 #3501 #3510 #3514 #3515 #3486 #3527 #3574 ⚡️⚡️⚡️
- 🈯 Added vertical text writing mode for languages that support it. #3438
- 🈯 Improved line breaking of Chinese and Japanese text in point-placed labels. #3420
- Reduce the default number of worker threads (
mapboxgl.workerCount) for better performance. #3565 - Automatically use
categoricalstyle function type when input values are strings. #3384 - Improve control buttons accessibility. #3492
- Remove geolocation button if geolocation is disabled (e.g. the page is not served through
https). #3571 - Added
Map#getMaxZoomandMap#getMinZoommethods #3592
Bugfixes
- Fix several line dash rendering bugs. #3451
- Fix intermittent map flicker when using image sources. #3522
- Fix incorrect rendering of semitransparent
backgroundlayers. #3521 - Fix broken
raster-fade-durationproperty. #3532 - Fix handling of extrusion heights with negative values (by clamping to
0). #3463 - Fix GeoJSON sources not placing labels/icons correctly after map rotation. #3366
- Fix icon/label placement not respecting order for layers with numeric names. #3404
- Fix
queryRenderedFeaturesworking incorrectly on colliding labels. #3459 - Fix a bug where changing extrusion properties at runtime sometimes threw an error. #3487 #3468
- Fix a bug where
map.loaded()always returnedtruewhen using raster tile sources. #3302 - Fix a bug where moving the map out of bounds sometimes threw
failed to invert matrixerror. #3518 - Fixed
queryRenderedFeaturesthrowing an error if no parameters provided. #3542 - Fixed a bug where using multiple
\nin a text field resulted in an error. #3570