Skip to content

Releases: koordinates/kart

v0.17.0

16 Nov 23:58

Choose a tag to compare

This release focuses on keeping Kart secure and performant, as well as polishing existing features.

New features

  • New kart mv command to rename dataset paths. #1067

Breaking changes

  • No longer building MacOS builds for Intel Macs, only building for Apple Silicon Macs. Please get in touch if this is a concern for you.
  • Patch format (apply command) now uses unambiguous keys for feature changes - ++ for inserts, -- for deletes, and +/- for updates. This matches the delta-filter format used in diffs.

Other changes

  • Patches (apply/create-patch) have been significantly improved:
    • Partial feature updates (updated features don't need to include unchanged fields) #1065
    • Reprojected patches (patch CRS is specified via crs in the patch metadata) #1066
  • merge: --message/-m option no longer implies --no-ff. The message will now be used if the command can't do a fast-forward. #1051
  • diff/show:
    • Fixed garbled json-lines output sometimes when using --add-feature-count-estimate #1040
    • Faster output for some large repositories (varies wildly) #1038
    • Text output now consistently displays a 'Merge: {parentIDs}' line when showing a merge commit #1043
    • show: Added --no-sort-keys option to disable sorting of features by name/PK. Previously added to diff only
    • show: Added --add-feature-count-estimate option to add a feature count estimate to json-lines output. Previously added to diff only
    • Fixed some issues with the built-in visual HTML diff ie kart show -ohtml

v0.17.0rc3

14 Nov 03:50

Choose a tag to compare

v0.17.0rc3 Pre-release
Pre-release

Breaking changes

  • No longer building MacOS builds for Intel Macs, only building for Apple Silicon Macs. Please get in touch if this is a concern for you.
  • Patch format (apply command) now uses unambiguous keys for feature changes - ++ for inserts, -- for deletes, and +/- for updates. This matches the delta-filter format used in diffs.

Other changes

  • New kart mv command to rename dataset paths. #1067
  • Patches (apply/create-patch):
    • Partial feature updates (updated features don't need to include unchanged fields) #1065
    • Reprojected patches (patch CRS is specified via crs in the patch metadata) #1066
  • merge: --message/-m option no longer implies --no-ff. The message will now be used if the command can't do a fast-forward. #1051
  • diff/show:
    • Fixed garbled json-lines output sometimes when using --add-feature-count-estimate #1040
    • Faster output for some large repositories (varies wildly) #1038
    • Text output now consistently displays a 'Merge: {parentIDs}' line when showing a merge commit #1043
    • show: Added --no-sort-keys option to disable sorting of features by name/PK. Previously added to diff only
    • show: Added --add-feature-count-estimate option to add a feature count estimate to json-lines output. Previously added to diff only
    • Fixed some issues with the built-in visual HTML diff ie kart show -ohtml

v0.16.1

24 Jan 02:51

Choose a tag to compare

0.16.1

  • diff: Much faster and much lower memory usage when using --no-sort-keys #1032
  • diff: Fix an error when diffing a commit against the working copy, where a dataset has been deleted since the commit. #1033
  • Custom CRS support in MSSQL server - OGR conventions are used to store custom CRSs in a spatial_ref_sys table. #1036

v0.16.0

08 Jan 03:17

Choose a tag to compare

0.16.0

  • Much faster access to tabular/vector datasets (about 75% more features processed per second) by switching to msgspec - #1025
  • diff: Faster JSON-Lines output (also using msgspec)
  • diff: Added --no-sort-keys option to disable sorting of features by name/PK. This is a minor speed improvement.
  • Linux builds now require glibc 2.28+ #1027 - This means minimum distro versions are:
    • Debian 10+
    • Ubuntu 18.10+
    • Fedora 29+
    • RHEL/Rocky/AlmaLinux 8+
  • Upgrade to PDAL 2.7 #1005
  • Adds a --drop-empty-geometry-features option to kart export. #1007
  • Adds diagnostic output to Kart when KART_DIAGNOSTICS=1 environment variable is set. #1013
  • In kart merge --output-format=json, the message field is now null if the merge is a no-op. #1021

v0.15.3

12 Sep 23:00

Choose a tag to compare

Changes

  • Replaces minimal patches with delta-filters - a more general-purpose way of filtering parts (inserts, updates, deletes) of JSON diffs when not all parts are required. #998
  • Remove automatic resolution of localhost before calling MSSQL driver. Fixes SQL Server instance names issue. #999
  • Upgraded pyodbc for compatibility with the latest MSSQL driver.

v0.15.2

12 Jun 01:41

Choose a tag to compare

Changes

  • Adds a new command kart export which enables export of vector or tabular datasets to any OGR format. #992

v0.15.1

22 Feb 03:08

Choose a tag to compare

Changes

  • Prevented committing local changes to linked datasets. #953
  • Fixes a bug where even datasets marked as --no-checkout are checked out when the working copy is first created. #954
  • Fixes a bug where minor changes to auxiliary metadata (.aux.xml) files that Kart is supposed to ignore were preventing branch changes. #957
  • Improved performance when the user filters a diff request to only show certain features. #962
  • Clean up the empty directory if a clone fails outright. #963
  • Fixes add-dataset to work for PostGIS working copies. #965
  • Fixes kart import --link to not fetch any tiles when importing into a bare Kart repo. #970

v0.15.0

04 Dec 01:14

Choose a tag to compare

Major changes

  • First and foremost: linked datasets! Kart now supports linking a tile-based dataset to tiles that are hosted on S3, so that the tiles don't need to be hosted on a Kart LFS server. For more information, see Linked Datasets. #905

Other changes

  • Native Apple Silicon builds are now available for macOS 12 and newer. #927
  • Adds support for disabling the working-copy checkout of specific datasets using the commands kart import DATASET --no-checkout or kart checkout --not-dataset=DATASET, and re-enabling it using kart checkout --dataset=DATASET. #926
  • Adds information on referencing and citing Kart to CITATION. #914
  • Fixes a bug where Kart would misidentify a non-Kart repo as a Kart V1 repo in some circumstances. #918
  • Improve schema extraction for point cloud datasets. #924
  • Some tweaks to --dry-run output of Kart LFS commands. #932
  • Now using Python 3.11 to build Kart, and vendored dependencies have been updated to newer versions. #933
  • Adds support for importing point-cloud and raster tiles directly from an S3 URL. #940
  • checkout: Smoother progressbar updates
  • Add library support for WEBP & ZSTD compression with GeoTIFF raster datasets. #951

v0.14.2

27 Sep 03:34

Choose a tag to compare

Changes

  • Fixes a bug where the GPKG application ID is not being written in GPKG working copies - other software reading the GPKG may be confused by this. #902
  • Fixes a bug where points could shift by small amounts while importing point-clouds if the tiles were converted to COPC. PDAL#4180

v0.14.1

20 Aug 21:50

Choose a tag to compare

Changes

  • Fixes a bug where Git subprocesses (such as git clone) don't prompt the user for credentials or to resolve SSH issues on Windows. #852
  • Better protection against XSS in the HTML diff viewer. #884
  • Speed-up: greatly reduces the time taken to update the index file after checking out LFS tiles to the working copy. #880
  • Adds --with-dataset-types option to kart data ls command (and deprecates kart data version). #892
  • Use journal_mode = WAL in annotations.db sqlite database. #898
  • Slightly modifies the GPKG working copy format to avoid an incompatiblity with Global Mapper. #899