Skip to content

Releases: maplibre/maplibre-gl-js

v4.3.0

15 May 11:42
aaeaf58
Compare
Choose a tag to compare

https://github.com/maplibre/maplibre-gl-js
Changes since MapLibre GL JS v4.2.0:

✨ Features and improvements

  • Add getData method for GeoJSON Sources to provide the possibility to obtain all the source's features (#4082)
  • Allow cross-fading between raster tile source updates at the same zoom level (#4072)

🐞 Bug fixes

  • Fix normalizeSpriteURL before transformRequest throwing an Error with relative URLs (#3897)
  • Fix return type of map.cameraForBounds (#3760)
  • Fix to run benchmark with MAPLIBRE_STYLES environment variable (#2122)
  • Fix symbol collisions using inaccurate and sometimes entirely wrong collision boxes when the map is pitched or rotated (#210)
  • Fix text-translate and icon-translate behaving weirdly and inconsistently with other -translate properties (#3456)
  • Fix symbol collision debug view (showCollisionBoxes) not showing the actual bounding boxes used for collision and click areas. The displayed boxes now match actual collision boxes exactly (#4071)
  • Fix symbol collision boxes not being accurate for variable-anchor symbols (#4071)
  • Fix icon collision boxes using text-translate property for translation instead of the correct icon-translate (#4071)

v4.2.0

05 May 06:16
5086ec2
Compare
Choose a tag to compare

https://github.com/maplibre/maplibre-gl-js
Changes since MapLibre GL JS v4.1.3:

✨ Features and improvements

  • Update Popup's methods addClass and removeClass to return an instance of Popup (#3975)
  • New map option to decide whether to cancel previous pending tiles while zooming in (#4051)
  • Sprites include optional textFitHeight and textFitWidth values (#4019)
  • Add support for distance expression (#4076)

v4.1.3

17 Apr 07:15
0502606
Compare
Choose a tag to compare

https://github.com/maplibre/maplibre-gl-js
Changes since MapLibre GL JS v4.1.2:

✨ Features and improvements

  • Added const enum for actor messages to improve readability and maintainability. In tsconfig.json, isolatedModules flag is set to false in favor of generated JS size. (#3879)

🐞 Bug fixes

  • Fix different unwanted panning changes at the end of a panning motion, that happen on a large screen (#3935)
  • Fix image sources not being marked as loaded on error (#3981)
  • Fix ScaleControl options should be optional. (#4002)
  • Fix race condition in SourceCache that makes unit tests unstable. Eliminate a redundant 'visibility' event fired from Style class. (#3992)
  • Fix paint property not being updated by setPaintProperty (#2651)

v4.1.2

26 Mar 22:50
27d9c86
Compare
Choose a tag to compare

https://github.com/maplibre/maplibre-gl-js
Changes since MapLibre GL JS v4.1.1:

✨ Features and improvements

  • Hide Popup when its parent Marker is behind terrain (#3865)

🐞 Bug fixes

  • Fix type definition on localIdeographFontFamily (#3896)
  • Fix unwanted panning changes at the end of a panning motion (#3872)
  • Fix close events being fired for popups that aren't open

v4.1.1

16 Mar 05:55
44b582e
Compare
Choose a tag to compare

https://github.com/maplibre/maplibre-gl-js
Changes since MapLibre GL JS v4.1.0:

✨ Features and improvements

  • Improve animation curve when easeTo and flyTo with constraints (#3793)

🐞 Bug fixes

  • Fix unwanted zoom changes at the end of a panning motion (#2094)

v4.1.0

01 Mar 09:41
adc7f17
Compare
Choose a tag to compare

https://github.com/maplibre/maplibre-gl-js
Changes since MapLibre GL JS v4.0.2:

✨ Features and improvements

  • Add option to position popup at subpixel coordinates to allow for smooth animations (#3710)
  • Constrain horizontal panning when renderWorldCopies is set to false (3738)

🐞 Bug fixes

  • Fix popup appearing far from marker that was moved to a side globe (3712)
  • Set text color to ensure contrast in the attribution pill (3737)
  • Fix memory leak in Worker when map is removed (3734)
  • Fix issue with FullscreenControl when MapLibre is within a ShadowRoot (#3573)

v4.0.2

19 Feb 10:08
780eb7f
Compare
Choose a tag to compare

https://github.com/maplibre/maplibre-gl-js
Changes since MapLibre GL JS v4.0.1:

🐞 Bug fixes

  • Fix Style.setState ignoring validate flag (#3709)
  • Fix marker flying off near horizon (3704)

v4.0.1

15 Feb 07:29
3bea9a1
Compare
Choose a tag to compare

https://github.com/maplibre/maplibre-gl-js
Changes since MapLibre GL JS v4.0.0:

✨ Features and improvements

  • Add setUrl method to RasterTileSource to dynamically update existing TileJSON resource. (3700)

🐞 Bug fixes

  • Fix Marker losing opacity after window resize (#3656)
  • Fix vector tiles not loading when html is opened via "file://" (#3681)

v4.0.0

01 Feb 10:30
6eeb428
Compare
Choose a tag to compare

https://github.com/maplibre/maplibre-gl-js
Changes since MapLibre GL JS v3.6.2:

✨ Features and improvements

  • ⚠️ Remove all global getters and setters from maplibregl, this means the the following methods have changed:

    • maplibregl.version => getVersion()
    • maplibregl.workerCount => getWorkerCount(), setWorkerCount(...)
    • maplibregl.maxParallelImageRequests => getMaxParallelImageRequests(), setMaxParallelImageRequests(...)
    • maplibregl.workerUrl => getWorkerUrl(), setWorkerUrl(...)

    This is to avoid the need to use a global object and allow named exports/imports (#3601)

  • ⚠️ Change attribution to be on by default, change MapOptions.attributionControl to be the type that the control handles, removed MapOptions.customAttribution (#3618)
    Note: showing the logo of MapLibre is not required for using MapLibre.

  • ⚠️ Changed cooperative gesture config and removed the strings from it in favor of the locale variable (#3621)

  • ⚠️ Changed the terrain enable disable locale key to match the other keys' styles, updated the typings to allow using locale with more ease (#3621)

  • ⚠️ Add the ability to import a script in the worker thread and call addProtocol and removeProtocol there (#3459) - this also changed how addSourceType works since now you'll need to load the script with maplibregl.importScriptInWorkers.

  • ⚠️ Changes addProtocol to be promise-based without the usage of callbacks and cancelable (#3433)

  • ⚠️ Moved the addSourceType to be a part of the global maplibregl object instead of being per map object (#3420)

  • ⚠️ Removed callback usage from map.loadImage in continue to below change (#3422)

  • ⚠️ Changed the GeoJSONSource's getClusterExpansionZoom, getClusterChildren, getClusterLeaves methods to return a Promise instead of a callback usage (#3421)

  • ⚠️ Changed the setRTLTextPlugin function to return a promise instead of using callback (#3418) this also changed how the RTL pluing code is handled internally by splitting the main thread and worker thread code.

  • ⚠️ Remove setCooperativeGestures and getCooperativeGestures functions in favor of cooperativeGestures handler which now has an enabled() or disabled() methods (#3430)

  • ⚠️ Changed the undeling worker communication from callbacks to promises. This has a breaking effect on the implementation of custom WorkerSource and how it behaves (#3233)

  • ⚠️ Changed the Source interface to return promises instead of callbacks (#3233)

  • ⚠️ Changed all the sources to be promises based. (#3233)

  • ⚠️ Changed the map.loadImage method to return a Promise instead of a callback usage (#3233)

  • Add "opacity" option and setOpacity method to Marker (#3620)

  • Created a new example showing how to place a threejs scene as a CustomLayer over maplibre 3d-terrain (#3429)

  • Changed ImageRequest to be Promise based (#3233)

  • Improved precision and added a subtle fade transition to marker opacity changes (#3431)

  • Adds support for terrain in setStyle with diff method (#3515, #3463)

  • Upgraded to use Node JS 20 and removed the dependency of gl package from the tests to allow easier develpment setup. (#3452)

🐞 Bug fixes

  • Fix wheel zoom to be into the same direction above or under the horizon (#3398)
  • Fix _cameraForBoxAndBearing not fitting bounds properly when using asymettrical camera viewport and bearing.(#3591)
  • Fix missing export Map type in the d.ts file (#3564)
  • Fix the shifted mouse events after a css transform scale on the map container (#3437)
  • Fix markers remaining transparent when disabling terrain (#3431)
  • Fix labels disappearing when enabling terrain at high zoom (#3545)
  • Fix zooming outside the central globe when terrain 3D is enabled (#3425)
  • Fix cursor being shown indefinitely as a pointer when removing a popup with its trackPointer method active (#3434)
  • Fix a bug in showing cooperative gestures when scroll zoom is disabled (#2498)
  • Handle loading of empty raster tiles (204 No Content) (#3428)
  • Fixes a security issue in Actor against XSS attacks in postMessage / onmessage (#3239)

v4.0.0-pre.6

28 Jan 19:14
fe7835b
Compare
Choose a tag to compare
v4.0.0-pre.6 Pre-release
Pre-release
Bump version to 4.0.0-pre.6 (#3633)

* Bump version to 4.0.0-pre.6

* remove bugs entry

---------

Co-authored-by: HarelM <[email protected]>
Co-authored-by: HarelM <[email protected]>