Skip to content

v0.39.0

Compare
Choose a tag to compare
@mollymerp mollymerp released this 21 Jul 22:55

0.39.0 (July 21, 2017)

⚠️ Breaking changes

  • GeolocateControl breaking changes #4479
    • The option watchPosition has been replaced with trackUserLocation
    • The camera operation has changed from jumpTo (not animated) to fitBounds (animated). An effect of this is the map pitch is no longer reset, although the bearing is still reset to 0.
    • The accuracy of the geolocation provided by the device is used to set the view (previously it was fixed at zoom level 17). The maxZoom can be controlled via the new fitBoundsOptions option (defaults to 15).
  • Anchor Markers at their center by default #4751 @andrewharvey
  • Increase significantRotateThreshold for the TouchZoomRotateHandler #4971, @dagjomar

✨ Features and improvements

  • Improve performance of updating GeoJSON sources #4069, @ezheidtmann
  • Improve rendering speed of extrusion layers #4818
  • Improve line label legibility in pitched views #4781
  • Improve line label legibility on curved lines #4853
  • Add user location tracking capability to GeolocateControl #4479, @andrewharvey
    • New option showUserLocation to draw a "dot" as a Marker on the map at the user's location
    • An active lock and background state are introduced with trackUserLocation. When in active lock the camera will update to follow the user location, however if the camera is changed by the API or UI then the control will enter the background state where it won't update the camera to follow the user location.
    • New option fitBoundsOptions to control the camera operation
    • New trackuserlocationstart and trackuserlocationend events
    • New LngLat.toBounds method to extend a point location by a given radius to a LngLatBounds object
  • Include main CSS file in package.json #4809, @tomscholz
  • Add property function (data-driven styling) support for line-width #4773
  • Add property function (data-driven styling) support for text-anchor #4997
  • Add property function (data-driven styling) support for text-justify #5000
  • Add maxTileCacheSize option #4778, @jczaplew
  • Add new icon-pitch-alignment and circle-pitch-alignment properties #4869 #4871
  • Add Map#getMaxBounds method #4890, @andrewharvey @lamuertepeluda
  • Add option (localIdeographFontFamily) to use TinySDF to avoid loading expensive CJK glyphs #4895
  • If config.API_URL includes a path prepend it to the request URL #4995
  • Bump supercluster version to expose cluster_id property on clustered sources #5002

🐛 Bug fixes

  • Do not display FullscreenControl on unsupported devices #4838, @stepankuzmin
  • Fix yarn build on Windows machines #4887
  • Prevent potential memory leaks by dispatching loadData to the same worker every time #4877
  • Fix bug preventing the rtlTextPlugin from loading before the initial style load #4870
  • Fix bug causing runtime-stying to not take effect in some situations #4893
  • Prevent requests of vertical glyphs for labels that can't be verticalized #4720
  • Fix character detection for Zanabazar Square #4940
  • Fix LogoControl logic to update correctly, and hide the <div> instead of removing it from the DOM when it is not needed #4842
  • Fix GeoJSONSource#serialize to include all options
  • Fix error handling in GlyphSource#getSimpleGlyphs#4992
  • Fix bug causing setStyle to reload raster tiles #4852
  • Fix bug causing symbol layers not to render on devices with non-integer device pixel ratios #4989
  • Fix bug where Map#queryRenderedFeatures would error when returning no results #4993
  • Fix bug where Map#areTilesLoaded would always be false on sourcedata events for reloading tiles #4987
  • Fix bug causing categorical property functions to error on non-ascending order stops #4996

⚒ Development workflow changes