Skip to content

v0.64.4

Choose a tag to compare

@giswqs giswqs released this 10 Nov 21:40
aa9838d

Patch release that fixes features broken by upstream service and library changes, plus several MapLibre layer manager display fixes.

Highlights

  • CARTO basemaps need an API key. CARTO now requires a key on every basemaps.cartocdn.com URL; without one, tiles show an "API key required" watermark. Request a free key at https://carto.com/basemaps/apikey and set it as the CARTO_API_KEY environment variable (or Colab secret), or call leafmap.set_api_key(key, "CARTO_API_KEY"). Leafmap adds it to CARTO raster and vector basemaps in the ipyleaflet, folium and MapLibre backends.
  • CartoDB basemaps are available again with xyzservices 2026.9.0+. That release marks CARTO providers as requiring a key, so leafmap's free-provider filter dropped every CartoDB.* basemap.
  • Overture Maps works again. get_overture_latest_release() reads from the Overture STAC catalog, and PMTiles load from tiles.overturemaps.org. The old endpoints were removed upstream. New helper: get_overture_pmtiles_url(theme, release).
  • GeoParquet CRS is preserved. read_parquet() and read_vector() keep the CRS from GeoParquet metadata, so projected data such as NWI wetlands (EPSG:5070) renders in the right place.
  • Other fixes:
    • read_vector() no longer requires fiona.
    • maxar_search(), filter_date() and disjoint() work with current pandas.
    • cog_tile() waits up to 60 s for TiTiler, so cold requests for large COGs no longer produce an empty layer.
    • PMTiles header reads fail with a clear error on hosts that compress range responses.
    • get_bounds() and get_center() apply transforms to GeoJSON collections.
  • MapLibre layer manager:
    • Gear and remove icons are no longer truncated to ...
    • The collapse chevron and checkbox labels are readable in dark mode.
    • Layers are listed top-most first, with the background at the bottom.
    • More room for layer names, less padding, and aligned checkboxes.

Behavior changes

  • read_parquet() assigns the CRS from GeoParquet metadata when src_crs is not given. Files without a recorded CRS get OGC:CRS84, the GeoParquet default. Custom sql queries and multi-file sources still get no CRS unless src_crs is set.
  • MapLibre add_layer_control() has a new floating option, default True: no separate layer switcher is added on the map, since layers are managed in the sidebar layer manager. Pass floating=False for the floating switcher.
  • whiteboxgui>=2.3.1 is now required.

What's Changed

  • Bump github/codeql-action from 4.39.1 to 4.39.3 by @dependabot[bot] in #1406
  • Bump anthropics/claude-code-action from 1.0.265 to 1.0.269 by @dependabot[bot] in #1407
  • Fix PMTiles header reads from hosts that compress range responses by @giswqs in #1408
  • Fix transformed bounds for GeoJSON collections by @anishpentyala in #1405
  • Fix Overture, CARTO, GeoParquet CRS, and other notebook breakages by @giswqs in #1409
  • Fix MapLibre layer manager icons, contrast, and layout by @giswqs in #1410
  • Bump version: 0.64.3 → 0.64.4 by @giswqs in #1411

New Contributors

Full Changelog: v0.64.3...v0.64.4