Mbtileserver Versions Save

Basic Go server for mbtiles

v0.10.0

6 months ago

General Changes

  • supports GCC11 on Ubuntu 22.04 (#166)
  • switch from Docker Hub to Github Container Registry (#168)

Breaking changes

  • now requires Go 1.18+.
  • replaced Leaflet and Mapbox GL JS maps used in preview endpoint with MapLibre GL. This change drops the interactive map controls present in the Leaflet preview (opacity slider, basemap changer, zoombox) (#176).
  • removed built-in basemaps used in the preview endpoint (#176). You can now specify a basemap style using the --basemap-style-url option or basemap image tiles using the --basemap-tiles-url option.

v0.9.0

1 year ago

Breaking changes

  • now requires Go 1.17+.

General changes

  • upgraded Docker containers to Go 1.19
  • upgraded Go version used for release to Go 1.19

Command-line interface

  • added support for specifying host IP address to listen on using the --host option (#138).
  • switched basemaps to Stamen map tiles (#148)
  • added auto-detection of tile size and return blank tile of same size (if available) for image tilesets when tile is not found (#155).

v0.8.2

2 years ago

Bug fixes

  • fixed handling of X-Forwarded-Host header (#135)
  • fixed incorrect closing of sqlite connections during initial validation of tilesets (#136) in mbtiles-go
  • handle missing center in metadata table in map preview for vector tiles (#137)

v0.8.1

2 years ago

Bug fixes

  • fixed handling of moved / renamed files within watched directories when using the --enable-fs-watch option.

v0.8.0

2 years ago

General changes

  • display attribution in preview maps if present in tileset metadata.
  • upgraded Docker containers to Go 1.17.
  • upgraded Go version used for release to Go 1.17.
  • switched to go:embed for embedding templates and static assets.
  • dropped internal mbtiles package in favor of github.com/brendan-ward/mbtiles-go, which wraps the SQlite-specific go package crawshaw.io/sqlite for better performance.

Command-line interface

  • added support for watching filesystem for changes to tilesets using --enable-fs-watch option.

Breaking changes

  • now requires Go 1.16+.
  • removes ArcGIS API layer info at the service root and layers endpoint (#116); this was not providing useful information for image tilesets.
  • removed handlers.Assets; static assets are intended only for use in template or static file handlers.
  • removed support for UTF Grids.

Bug Fixes

  • fix handlers for ArcGIS API endpoints, resolving tile shift issue (#116).
  • obviated incorrect include of node_modules in compiled asset file; executable is now smaller and faster to build.

v0.7.0

3 years ago

See the CHANGELOG for more details.

General changes

  • substantial changes to internal functionality and HTTP handlers, see details below
  • now requires Go 1.13+
  • upgraded Docker containers to Go 1.16
  • upgraded Go version used for release to Go 1.16
  • removed vendor directory; no longer needed for Go 1.13
  • switched from Travis-CI to Github actions for running tests

Command-line interface

  • added support for automatically generating unique tileset IDs using --generate-ids option

  • added ability to toggle off non-tile endpoints:

    • --disable-preview: disables the map preview, enabled by default.
    • --disable-svc-list: disables the list of map services, enabled by default
    • --disable-tilejson: disables the TileJSON endpoint for each tile service
    • --tiles-only: shortcut that disables preview, service list, and TileJSON endpoints
  • added ability to have multiple tile paths using a comma-delimited list of paths passed to --dir option

  • moved static assets for map preview that were originally served on /static endpoint to /services/<tileset_id>/map/static so that this endpoint is disabled when preview is disabled via --disable-preview.

Go API

  • added ServiceSetConfig for configuration options for ServiceSet instances
  • added ServiceSet.AddTileset(), ServiceSet.UpdateTileset(), ServiceSet.RemoveTileset(), and ServiceSet.HasTileset() functions. WARNING: these functions are not yet thread-safe.

Breaking changes

Command-line interface:

  • ArcGIS endpoints are now opt-in via --enable-arcgis option (disabled by default)
  • --path option has been renamed to --root-url for clarity (env var is now ROOT_URL)
  • --enable-reload has been renamed to --enable-reload-signal

Handlers API

  • ServiceSet.Handler parameters have been replaced with ServiceSetConfig passed to handlers.New() instead.
  • removed handlers.NewFromBaseDir(), replaced with handlers.New() and calling ServiceSet.AddTileset() for each Tileset to register.
  • removed ServiceSet.AddDBOnPath(); this is replaced by calling ServiceSet.AddTileset() for each Tileset to register.

Bug fixes

  • Fixed WebP parsing, now uses simplified check for a RIFF header (WebP is only likely RIFF format to be stored in tiles). #98, #110

v0.6.1

4 years ago
  • upgraded Docker containers to Go 1.14 (solves out of memory issues during builds on small containers)

v0.6.0

4 years ago

Changes:

  • fixed bug in map preview when bounds are not defined for a tileset (#84)
  • updated Leaflet to 1.6.0 and Mapbox GL to 0.32.0 (larger upgrades contingent on #65)
  • fixed issues with --tls option (#89)
  • added example proxy configuration for Caddy and NGINX (#91)
  • fixed issues with map preview page using HTTP basemaps (#90)
  • resolved template loading issues (#85)

Breaking Changes: in handlers.go:

  • Removed TemplatesFromAssets as it was not used internally, and unlikely used externally
  • Removed secretKey from NewFromBaseDir parameters; this is replaced by calling SetRequestAuthKey on a ServiceSet.