Releases: mipastgt/kts
Releases · mipastgt/kts
Release list
v1.20.0.0 — Kotlin Multiplatform port of JTS 1.20.0
1.20.0.0 — 2026-07-17
First public release: a faithful Kotlin Multiplatform port of
JTS 1.20.0, published to Maven Central under group
de.mpmediasoft.kts. Source package names are unchanged (org.locationtech.jts.*).
Added
- Multiplatform artifacts for JVM (Java 8+), JS (Node/browser), Wasm/JS, and
Kotlin/Native (macOS, iOS, Linux, Windows). - Modular, à-la-carte packaging:
kts-core— geometry model, spatial predicates, overlay, buffer, algorithms, and the WKT/WKB writers.kts-io-wkt—WKTReader,WKBReader,WKBWriter.kts-io-gml—GMLReader,GMLWriter.kts-io-kml—KMLReader,KMLWriter.kts-io-geojson—GeoJsonReader,GeoJsonWriter(kotlinx-serialization).kts-io-files—WKTFileReader,WKBHexFileReader(kotlinx-io).
- An extension-property layer restoring the Kotlin
.propertyidiom on top of JTS's Java getters.
Changed (deviations from upstream JTS)
- IO readers and the GML/KML/file IO are split out of
kts-coreinto the à-la-cartekts-io-*
modules; the WKT/WKB writers remain inkts-core. - GeoJSON is built on
kotlinx-serialization-jsoninstead of the JVM-onlyorg.json.simple. - Stream-based (
java.io) IO is provided as JVM-only extension functions; the common API works on
String/ByteArray. - GML:
GMLHandleris no longer a SAXDefaultHandler, andGMLReader.readthrowsParseException
instead ofSAXException/ParserConfigurationException.
Removed
java.io.Serializable/serialVersionUID(use WKT/WKB for persistence).Cloneable/clone()from the multiplatform surface (use the runtime-type-preservingcopy()).- The JVM-desktop-only
org.locationtech.jts.awtpackage and internal dev/debug helpers. - The
jts.overlay/jts.relatesystem-property switches.
See doc/kotlin/KOTLIN-MP-COMPATIBILITY.md for the complete,
itemised list of API deviations and the rationale for each.