Skip to content

Releases: Xenoglyphiq/pmtiles-swift

Release list

0.2.0

Choose a tag to compare

@immanuelqrw immanuelqrw released this 06 Oct 23:34
3cca5df

Implements pmtiles spec v0.2.0. Conformance: core ✓ io ✓ full ✓ (81/81)

  • Changed error codes:
    • A corrupt, cut-short or CRC-mismatched internal stream is now pmtiles.decompression_failed. It was invalid_directory for directories and truncated for metadata.
    • Metadata that isn't well-formed UTF-8 is now pmtiles.invalid_metadata. Before, it was silently repaired with U+FFFD.
  • No other behavior change. Decompressed-size limits were already enforced.
.package(url: "https://github.com/Xenoglyphiq/pmtiles-swift", from: "0.2.0")

0.1.0

Choose a tag to compare

@immanuelqrw immanuelqrw released this 06 Oct 22:58
378748b

First release of PMTiles for Swift: read PMTiles v3 tile archives (header, directories, tile lookup and tile bytes) from memory, a file, or HTTP range requests.

  • Implements pmtiles spec v0.1.1. Conformance: core ✓ io ✓ full ✓ (68/68)
  • Swift tools 6.0; iOS 16 / macOS 13 / Linux. Standard library only, with its own small inflate for gzip
  • Two products: PMTiles (core) and PMTilesIO (sources, getTile, readMetadata, PMTilesReader)
  • Benchmark against the Rust pmtiles crate: 2.09× with PMTilesReader. That misses the spec's 2× target after one optimization pass; the details are in the README
  • Fuzzed for 11 min (35.5 M inputs), clean
.package(url: "https://github.com/Xenoglyphiq/pmtiles-swift", from: "0.1.0")