Skip to main content

Coverage Tests MemCheck Tests Code Style Coverage Status PyPI version Build PyPI wheels Various Build Options Windows Tests

geodiff

Library for handling diffs for geospatial data. Works with GeoPackage files and PostGIS databases (as well as with non-spatial SQLite and PostgreSQL databases).

Geodiff library is used by Mergin Maps - a platform for easy sharing of spatial data.

Join our community and ask questions!

Use cases for geodiff

Compare two datasets to get changesets (diffs) & apply changesets

The first use case for geodiff library is to take two datasets with the same structure of tables and compare them - the comparison will create a "diff" file containing entries that were inserted/updated/deleted between the two datasets. A diff file can be applied to an existing dataset (e.g. a GeoPackage) and the dataset will be updated accordingly by applying the differences one by one. If you are familiar with diff and patch tools from UNIX world, this is meant to be an equivalent for spatial data.

Compare datasets to create a diff file

Merge changes from multiple sources

The next use case is to merge changes from different copies of the same dataset that have been modified independently. Generally such changes cannot be applied cleanly. For example, if multiple users changed the same row of a table, or added a new row with the same ID. The library has functionality to "rebase" a diff file on top of another diff file, resolving any conflicts, so that all the changes can be applied cleanly. There still may be conflicts that can't be resolved fully automatically (e.g. if the same value is modified in different copies), these are written to a separate conflict file that can be addressed later (such changes are typically rare).

Rebase changes in order to merge data from multiple sources

Synchronize data across databases

It is possible to apply diffs across different databases supported by geodiff drivers (nowadays supporting SQLite/GeoPackage and PostgreSQL/PostGIS). That means one can seamlessly find out difference between tables of two schemas in a PostGIS database, and apply the changes to a GeoPackage (or vice versa). Thanks to that, it is possible to keep data in sync even if the backends are completely different.

How to use geodiff

There are multiple ways how geodiff can be used:

  • geodiff command line interface (CLI) tool
  • pygeodiff Python module
  • geodiff library using C API

The library nowadays comes with support for two drivers:

  • SQLite / GeoPackage - always available
  • PostgreSQL / PostGIS - optional, needs to be compiled

Using command line interface

GeoPackage

To get changes between two GeoPackage files and write them to a-to-b.diff (a binary diff file):

geodiff diff data-a.gpkg data-b.gpkg a-to-b.diff

To print changes between two GeoPackage files to the standard output:

geodiff diff --json data-a.gpkg data-b.gpkg

To apply changes from a-to-b.diff to data-a.gpkg:

geodiff apply data-a.gpkg a-to-b.diff

To invert a diff file a-to-b.diff and revert data-a.gpkg to the original content:

geodiff invert a-to-b.diff b-to-a.diff
geodiff apply data-a.gpkg b-to-a.diff

PostGIS

The same commands work with PostGIS databases. Instead of file paths, pass schema names and use --driver postgres with a libpq connection string:

geodiff diff --driver postgres "host=localhost dbname=mydb user=myuser password=mypass" schema_a schema_b a-to-b.diff
geodiff diff --json --driver postgres "host=localhost dbname=mydb user=myuser password=mypass" schema_a schema_b
geodiff apply --driver postgres "host=localhost dbname=mydb user=myuser password=mypass" schema_a a-to-b.diff

Both schemas must be in the same database and have identical table structure. You can check which drivers are available with geodiff drivers.

The geodiff tool supports other various commands, use geodiff help for the full list.

Using Python module

Install the module from pip:

pip3 install pygeodiff

If you get error ModuleNotFoundError: No module named 'skbuild' try to update pip with command python -m pip install --upgrade pip

GeoPackage

Sample usage of the Python module:

import pygeodiff

geodiff = pygeodiff.GeoDiff()

# create a diff between two GeoPackage files
geodiff.create_changeset('data-a.gpkg', 'data-b.gpkg', 'a-to-b.diff')

# apply changes from a-to-b.diff to the GeoPackage file data-a.gpkg
geodiff.apply_changeset('data-a.gpkg', 'a-to-b.diff')

# export changes from the binary diff format to JSON
geodiff.list_changes('a-to-b.diff', 'a-to-b.json')

PostGIS

To perform the same actions against a PostGIS database, use the _ex methods with a driver name and connection string. The base and modified arguments are schema names:

import pygeodiff

geodiff = pygeodiff.GeoDiff()
conninfo = "host=localhost dbname=mydb user=myuser password=mypass"

# create a diff between two PostGIS schemas
geodiff.create_changeset_ex(
    driver="postgres",
    driver_info=conninfo,
    base="schema_a",
    modified="schema_b",
    changeset="a-to-b.diff"
)

# apply changes from a-to-b.diff to a PostGIS schema
geodiff.apply_changeset_ex(
    driver="postgres",
    driver_info=conninfo,
    base="schema_a",
    changeset="a-to-b.diff"
)

# export changes from the binary diff format to JSON
geodiff.list_changes('a-to-b.diff', 'a-to-b.json')

If there are any problems, calls will raise pygeodiff.GeoDiffLibError exception.

If you have Mergin plugin for QGIS installed, you can also use pygeodiff from QGIS' Python Console by starting with

import Mergin.mergin.deps.pygeodiff as pygeodiff

Using the library with C API

See geodiff.h header file for the list of API calls and their documentation.

Output messages can be adjusted by GEODIFF_LOGGER_LEVEL environment variable.

Changesets

Changes between datasets are read from and written to a binary changeset format.

Building geodiff

Deps

Install postgresql client and sqlite3 library, e.g. for Linux

sudo apt-get install libsqlite3-dev libpq-dev

alternatively you can build libraries yourself: for sqlite

  ./configure --enable-dynamic-extensions
  make

Compile geodiff:

cd geodiff
mkdir build
cd build

cmake \
  -DWITH_POSTGRESQL=TRUE \
  -DSQLite3_INCLUDE_DIR=../../sqlite-autoconf-3450000 \
  -DSQLite3_LIBRARY=../../sqlite-autoconf-3450000/.libs/libsqlite3.a \
../geodiff

make

if you get error: use of undeclared identifier 'sqlite3_enable_load_extension' make sure you use sqlite with enabled dynamic extension.

Development of geodiff

Running tests

C++ tests: run make test or ctest to run all tests. Alternatively run just a single test, e.g. ./tests/geodiff_changeset_reader_test

Python tests: you need to setup GEODIFFLIB with path to .so/.dylib from build step

GEODIFFLIB=`pwd`/build/libgeodiff.dylib GEODIFFCLI=`pwd`/build/geodiff pytest

Releasing new version

  • run python3 ./scripts/update_version.py --version x.y.z
  • push to GitHub
  • tag the master & create github release - Python wheels will be automatically published to PyPI!

Code style

We use Astyle (C++), Cppcheck(C++) and Black (Python) for formatting

  • run ./scripts/run_astyle.sh
  • run ./scripts/run_cppcheck.sh
  • run ./scripts/run_black.sh

Dependencies & Licensing

Library uses its own copy of

Metadata

Release files for pygeodiff 2.3.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pygeodiff 2.3.2
File Size Uploaded
pygeodiff-2.3.2.tar.gz 2.5 MB Details

Built distributions (wheels)

Table of built distributions (wheels) for pygeodiff 2.3.2
File
pygeodiff-2.3.2-cp314-cp314t-win_amd64.whl CPython 3.14 CPython 3.14 free-threading Windows x86-64 Details
pygeodiff-2.3.2-cp314-cp314t-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-64 Details
pygeodiff-2.3.2-cp314-cp314t-manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.28+ x86-64 Details
pygeodiff-2.3.2-cp314-cp314t-macosx_14_0_arm64.whl CPython 3.14 CPython 3.14 free-threading macOS 14.0+ ARM64 Details
pygeodiff-2.3.2-cp314-cp314t-macosx_10_15_x86_64.whl CPython 3.14 CPython 3.14 free-threading macOS 10.15+ x86-64 Details
pygeodiff-2.3.2-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
pygeodiff-2.3.2-cp314-cp314-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 Linux musl 1.2+ x86-64 Details
pygeodiff-2.3.2-cp314-cp314-manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64 Details
pygeodiff-2.3.2-cp314-cp314-macosx_14_0_arm64.whl CPython 3.14 CPython 3.14 macOS 14.0+ ARM64 Details
pygeodiff-2.3.2-cp314-cp314-macosx_10_15_x86_64.whl CPython 3.14 CPython 3.14 macOS 10.15+ x86-64 Details
pygeodiff-2.3.2-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
pygeodiff-2.3.2-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details
pygeodiff-2.3.2-cp313-cp313-manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64 Details
pygeodiff-2.3.2-cp313-cp313-macosx_14_0_arm64.whl CPython 3.13 CPython 3.13 macOS 14.0+ ARM64 Details
pygeodiff-2.3.2-cp313-cp313-macosx_10_13_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.13+ x86-64 Details
pygeodiff-2.3.2-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
pygeodiff-2.3.2-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details
pygeodiff-2.3.2-cp312-cp312-manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64 Details
pygeodiff-2.3.2-cp312-cp312-macosx_14_0_arm64.whl CPython 3.12 CPython 3.12 macOS 14.0+ ARM64 Details
pygeodiff-2.3.2-cp312-cp312-macosx_10_13_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.13+ x86-64 Details
pygeodiff-2.3.2-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
pygeodiff-2.3.2-cp311-cp311-musllinux_1_2_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-64 Details
pygeodiff-2.3.2-cp311-cp311-manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64 Details
pygeodiff-2.3.2-cp311-cp311-macosx_14_0_arm64.whl CPython 3.11 CPython 3.11 macOS 14.0+ ARM64 Details
pygeodiff-2.3.2-cp311-cp311-macosx_10_9_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.9+ x86-64 Details
pygeodiff-2.3.2-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
pygeodiff-2.3.2-cp310-cp310-musllinux_1_2_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ x86-64 Details
pygeodiff-2.3.2-cp310-cp310-manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64 Details
pygeodiff-2.3.2-cp310-cp310-macosx_14_0_arm64.whl CPython 3.10 CPython 3.10 macOS 14.0+ ARM64 Details
pygeodiff-2.3.2-cp310-cp310-macosx_10_9_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.9+ x86-64 Details
pygeodiff-2.3.2-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
pygeodiff-2.3.2-cp39-cp39-musllinux_1_2_x86_64.whl CPython 3.9 CPython 3.9 Linux musl 1.2+ x86-64 Details
pygeodiff-2.3.2-cp39-cp39-manylinux_2_28_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.28+ x86-64 Details
pygeodiff-2.3.2-cp39-cp39-macosx_14_0_arm64.whl CPython 3.9 CPython 3.9 macOS 14.0+ ARM64 Details
pygeodiff-2.3.2-cp39-cp39-macosx_10_9_x86_64.whl CPython 3.9 CPython 3.9 macOS 10.9+ x86-64 Details
pygeodiff-2.3.2-cp38-cp38-win_amd64.whl CPython 3.8 CPython 3.8 Windows x86-64 Details
pygeodiff-2.3.2-cp38-cp38-musllinux_1_2_x86_64.whl CPython 3.8 CPython 3.8 Linux musl 1.2+ x86-64 Details
pygeodiff-2.3.2-cp38-cp38-manylinux_2_28_x86_64.whl CPython 3.8 CPython 3.8 Linux glibc 2.28+ x86-64 Details
pygeodiff-2.3.2-cp38-cp38-macosx_14_0_arm64.whl CPython 3.8 CPython 3.8 macOS 14.0+ ARM64 Details
pygeodiff-2.3.2-cp38-cp38-macosx_10_9_x86_64.whl CPython 3.8 CPython 3.8 macOS 10.9+ x86-64 Details

Total release size: 53.9 MB

Release files / pygeodiff-2.3.2.tar.gz

Download URL pygeodiff-2.3.2.tar.gz
Size 2.5 MB
Tags Source
SHA-256 checksum
How to use checksums
f559aae33e1677e0e9ea19183b6a3359bc1f051c2302a34ea917e791ed87371b
BLAKE2b-256 checksum
How to use checksums
81963d00ec6f55b95f662c8b683386ac4df6c1b2c8930c7dc416211f30062e92
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp314-cp314t-win_amd64.whl

Download URL pygeodiff-2.3.2-cp314-cp314t-win_amd64.whl
Size 1.1 MB
Tags CPython 3.14 CPython 3.14 free-threading Windows x86-64
SHA-256 checksum
How to use checksums
6a3fb39345b6a52fadf377319a2b1a90942514ca3e710fb1d0621417aa55010d
BLAKE2b-256 checksum
How to use checksums
f2c30b069ef6c456b917cb312ba480681267404c4db400e78d924adf039f5c36
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp314-cp314t-musllinux_1_2_x86_64.whl

Download URL pygeodiff-2.3.2-cp314-cp314t-musllinux_1_2_x86_64.whl
Size 2.2 MB
Tags CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
20ba46f09285590e33ae83938f9dbf35c6dd990263619aa57c4beff962bf9980
BLAKE2b-256 checksum
How to use checksums
020bc3910c780d8287c49ab618c3b9f772dcb0351bc755fbf1663ea8d723db38
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp314-cp314t-manylinux_2_28_x86_64.whl

Download URL pygeodiff-2.3.2-cp314-cp314t-manylinux_2_28_x86_64.whl
Size 901.5 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
7d9503eac7e81c1cfdf7b5a4dfe55a4642622e4cdc2e0ebce8ffd9e56ac66427
BLAKE2b-256 checksum
How to use checksums
6f7c3d54b7eedffb95473fb27e0cda243d437911890a4ea9cac699de481cf1c5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp314-cp314t-macosx_14_0_arm64.whl

Download URL pygeodiff-2.3.2-cp314-cp314t-macosx_14_0_arm64.whl
Size 1.1 MB
Tags CPython 3.14 CPython 3.14 free-threading macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
2d955dbc3cafa551e86ffacd83577628bfed227e5c3f6d09e903de651a3e687d
BLAKE2b-256 checksum
How to use checksums
5de6c6fab5c7366ce0006f8fdf764b6fe56332b4a6f597cc4d262e0fcd9f4372
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp314-cp314t-macosx_10_15_x86_64.whl

Download URL pygeodiff-2.3.2-cp314-cp314t-macosx_10_15_x86_64.whl
Size 1.2 MB
Tags CPython 3.14 CPython 3.14 free-threading macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
6b98d0c9f3230046a0c1244c0e27cd0c79e654d7008cab2e1159856075c64b7b
BLAKE2b-256 checksum
How to use checksums
e8d122dc54e79033438b8d559cad1eef01d2c845de3d488c87663065e38dcc39
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp314-cp314-win_amd64.whl

Download URL pygeodiff-2.3.2-cp314-cp314-win_amd64.whl
Size 1.1 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
f870cc2b84990a9f0c06440670b9bfb2e7d53950d9ce3d1a7e1a06a827bc94a0
BLAKE2b-256 checksum
How to use checksums
4af63f5dfdb52c21f71d4b561c1e1a8d460581c92e18d6611271f306e9833e37
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp314-cp314-musllinux_1_2_x86_64.whl

Download URL pygeodiff-2.3.2-cp314-cp314-musllinux_1_2_x86_64.whl
Size 2.2 MB
Tags CPython 3.14 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
15ed060c316f64cb4e418c6f19795827700b1a6ddfb5d3fff11b57317734399a
BLAKE2b-256 checksum
How to use checksums
dfd6777618b05314376585bbcfce292ad65b110452363baf43168e8dfb1e0e6a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp314-cp314-manylinux_2_28_x86_64.whl

Download URL pygeodiff-2.3.2-cp314-cp314-manylinux_2_28_x86_64.whl
Size 901.5 kB
Tags CPython 3.14 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
739d17a0f926b7a51c67432bd00b087423d4a477f741a397dd7ad3b68877b37f
BLAKE2b-256 checksum
How to use checksums
fc3e6b7390a699e5798d44f76f3ed2c4ccc4c4dd778f1015b19daf84053fd5ab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp314-cp314-macosx_14_0_arm64.whl

Download URL pygeodiff-2.3.2-cp314-cp314-macosx_14_0_arm64.whl
Size 1.1 MB
Tags CPython 3.14 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
c5c3efc81534acf5c4b3ae11f4bd0924b6e33465eefd53c39b11f712e157c43b
BLAKE2b-256 checksum
How to use checksums
55d0343c4132423c29af517e15f4b7d00cf8f4dd9b2501baddfdb6583c902072
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp314-cp314-macosx_10_15_x86_64.whl

Download URL pygeodiff-2.3.2-cp314-cp314-macosx_10_15_x86_64.whl
Size 1.2 MB
Tags CPython 3.14 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
22ae33bf99c4c89d31358618b0bed0908fc070fd37cc88e59133f048a0fb7593
BLAKE2b-256 checksum
How to use checksums
a37a1e7755fd69f6463ed85e03b8d195070c7402ebd0edede3a1eb26e304421d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp313-cp313-win_amd64.whl

Download URL pygeodiff-2.3.2-cp313-cp313-win_amd64.whl
Size 1.1 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
865873c0e82a6fe624b07d6f3491085f5eace4930abc0b89476be5981db664d1
BLAKE2b-256 checksum
How to use checksums
fa3ed31428d60c8f1483dbd68945aa6fcc842fde09019d20161687427b2f8cd5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL pygeodiff-2.3.2-cp313-cp313-musllinux_1_2_x86_64.whl
Size 2.2 MB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
7d2f8a36846e941b16ee900d77c6e2d7fe02c2b53691a355af04f48a2734492a
BLAKE2b-256 checksum
How to use checksums
3928a9acddbbc6a77bc3f7e26c9d385452e36bbf3e29050e287982a80946730f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp313-cp313-manylinux_2_28_x86_64.whl

Download URL pygeodiff-2.3.2-cp313-cp313-manylinux_2_28_x86_64.whl
Size 901.4 kB
Tags CPython 3.13 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
eb96641f9d0bb28f99d1198d5f7e39e5a515ded210f7045fd64667e2a9f8b43b
BLAKE2b-256 checksum
How to use checksums
785f39e5878cd169f3515ade826e5b8d9c8665294fb87661a1ba522738483a79
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp313-cp313-macosx_14_0_arm64.whl

Download URL pygeodiff-2.3.2-cp313-cp313-macosx_14_0_arm64.whl
Size 1.1 MB
Tags CPython 3.13 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
4a367427bbc39cb20a6904477d69ec02c586af37aa6a1e78df4ce1096e104c96
BLAKE2b-256 checksum
How to use checksums
a8518032c790f05ae03715b9ff8341715d0d5378bad40de2663d6fed99f85e50
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp313-cp313-macosx_10_13_x86_64.whl

Download URL pygeodiff-2.3.2-cp313-cp313-macosx_10_13_x86_64.whl
Size 1.2 MB
Tags CPython 3.13 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
2e7d38c9a4b7bb00ba818df6c0efcbb0c02ba529b04da98c9ee1be70b7d5399f
BLAKE2b-256 checksum
How to use checksums
2da2445d23dc69fe66f2a5806c4425478ba72b0afdb12f5861dcbc9ac0dd6737
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp312-cp312-win_amd64.whl

Download URL pygeodiff-2.3.2-cp312-cp312-win_amd64.whl
Size 1.1 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
cb7663f935d90d6bbd9178bf0e57b29c7a8fc31a9f44d08b9758d83a714039df
BLAKE2b-256 checksum
How to use checksums
0c5219d9e099dac3f94b0d01bca568a84f3589acb68b59ea822faa5807460530
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL pygeodiff-2.3.2-cp312-cp312-musllinux_1_2_x86_64.whl
Size 2.2 MB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
71c5ec3401bbd6342218b213306c5bfc65b0530902f00f3c1e415d23c6b46c73
BLAKE2b-256 checksum
How to use checksums
7a9cca1830ce9917d6e4b55370bc6b356c7b8c1556dbe3e317404d9a33cd6351
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp312-cp312-manylinux_2_28_x86_64.whl

Download URL pygeodiff-2.3.2-cp312-cp312-manylinux_2_28_x86_64.whl
Size 901.4 kB
Tags CPython 3.12 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
9495c4f6081210435cca299456ff33fb872ae8f59a26dd1b6d0be4da2c2561d1
BLAKE2b-256 checksum
How to use checksums
7941a72e5843800c1894ecf61bd6723b836eef8cf71ceb4718d1ee2e8b1db0ce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp312-cp312-macosx_14_0_arm64.whl

Download URL pygeodiff-2.3.2-cp312-cp312-macosx_14_0_arm64.whl
Size 1.1 MB
Tags CPython 3.12 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
b2f89b760f0ca698e81a7f24487bc39f66f07ea9c2081eb5e9d5a267962f0e75
BLAKE2b-256 checksum
How to use checksums
e23107b4214f06ad88bb5a480c9ed4fa5f280f72efc486549abd4be0981a49df
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp312-cp312-macosx_10_13_x86_64.whl

Download URL pygeodiff-2.3.2-cp312-cp312-macosx_10_13_x86_64.whl
Size 1.2 MB
Tags CPython 3.12 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
e5c94654470c5a91bab0db3f4529d6c6717c38ee3f5ebc7f40e97283f7898d6d
BLAKE2b-256 checksum
How to use checksums
a54e7800faeba8555973be9742d6676ee9d90b0be30589aac75f21952858fb35
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp311-cp311-win_amd64.whl

Download URL pygeodiff-2.3.2-cp311-cp311-win_amd64.whl
Size 1.1 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
3c1bc934e23e9a208afcd41556df5e2f75348ff1542c59a2d0be6e6c89f13cce
BLAKE2b-256 checksum
How to use checksums
79b15acc17fd7bf69fb431266183cacdeab1b581814fd7cc2eef5364020bcc91
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp311-cp311-musllinux_1_2_x86_64.whl

Download URL pygeodiff-2.3.2-cp311-cp311-musllinux_1_2_x86_64.whl
Size 2.2 MB
Tags CPython 3.11 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
a0a0f13590ddca9e033ff711eaffed69a272866b6c5c859ebac1561e0b45b535
BLAKE2b-256 checksum
How to use checksums
4fa22d16346a82c946ca7c490038cdf983bb1532df5401900df94868231f5a2c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp311-cp311-manylinux_2_28_x86_64.whl

Download URL pygeodiff-2.3.2-cp311-cp311-manylinux_2_28_x86_64.whl
Size 901.5 kB
Tags CPython 3.11 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
603fa5cb60d2856dba956dc119e3d00bd7be7e0a3d2a30c0629259df2a057593
BLAKE2b-256 checksum
How to use checksums
524f98a3da55b3e2199953a43bf0791a2b878b8e058d2563e731e0d4ac2467be
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp311-cp311-macosx_14_0_arm64.whl

Download URL pygeodiff-2.3.2-cp311-cp311-macosx_14_0_arm64.whl
Size 1.1 MB
Tags CPython 3.11 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
3d4d6a16c41e041d1d6295e2b953fd0f622287ee6d88cfb5a1d70c8f7579e51b
BLAKE2b-256 checksum
How to use checksums
d2cbe0695a4f8125a26e726386bce63a211273fd2f0065c1e62ec52abcf25f1d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp311-cp311-macosx_10_9_x86_64.whl

Download URL pygeodiff-2.3.2-cp311-cp311-macosx_10_9_x86_64.whl
Size 1.2 MB
Tags CPython 3.11 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
a824fcf70928f654031ed0567bea68b968e9cf32d598dd7ce788c3df3000ed9e
BLAKE2b-256 checksum
How to use checksums
043db1cb67b143b8d0520bbe5fb66629bbcea9962cbf4545af41bda610796940
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp310-cp310-win_amd64.whl

Download URL pygeodiff-2.3.2-cp310-cp310-win_amd64.whl
Size 1.1 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
a4f93db89be77db2cb19a9b0fcf87cf460196c5762f90682b0cf5cfcf724a81c
BLAKE2b-256 checksum
How to use checksums
753e802fbd83f68cb815582fada9035f2fb31ed201e05e6d45bb86e44b39b83f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp310-cp310-musllinux_1_2_x86_64.whl

Download URL pygeodiff-2.3.2-cp310-cp310-musllinux_1_2_x86_64.whl
Size 2.2 MB
Tags CPython 3.10 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
f1666369597abfc0e28f719dd87d48a9821d3364f237b14dea28dfe20eca0c27
BLAKE2b-256 checksum
How to use checksums
c8c523ce3e1c112c9219240e2b5b1c2d8c2c037e122fb1d61e28cb325bce2492
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp310-cp310-manylinux_2_28_x86_64.whl

Download URL pygeodiff-2.3.2-cp310-cp310-manylinux_2_28_x86_64.whl
Size 901.4 kB
Tags CPython 3.10 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
8fffd9848224f672568836dee42ac599d36bf73fba957e87d910476c84a14b33
BLAKE2b-256 checksum
How to use checksums
4b66d88cfbb070df63ae6b9ada8037af493c6f86fb1062f02efffb6180893f5e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp310-cp310-macosx_14_0_arm64.whl

Download URL pygeodiff-2.3.2-cp310-cp310-macosx_14_0_arm64.whl
Size 1.1 MB
Tags CPython 3.10 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
d3149da8337ba0cf52d52151adde1e09f85fe68d5de38d77c4e400078a3bfce4
BLAKE2b-256 checksum
How to use checksums
f63fd28f0c9870a3f2a7ef0fdc1b0994db67bd9eb28c1bfbe7e1ccb1860825ed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp310-cp310-macosx_10_9_x86_64.whl

Download URL pygeodiff-2.3.2-cp310-cp310-macosx_10_9_x86_64.whl
Size 1.2 MB
Tags CPython 3.10 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
36a2865592dd398b7fcd068f4d5ad5acad9cc2524f781cd2dec92ff115640db7
BLAKE2b-256 checksum
How to use checksums
f2dbe8c3e7251c064d863d99e19e3011668fde27e5537b9041a4d7ad7bb1bea5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp39-cp39-win_amd64.whl

Download URL pygeodiff-2.3.2-cp39-cp39-win_amd64.whl
Size 1.1 MB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
1e4e7768db1c64836bbb50943f893480ac3c32c1f5386c5426ed575752a90bb8
BLAKE2b-256 checksum
How to use checksums
ccbb30023fbb72ebad6d5817f53b412ef50168942efa37afcd8c4addd2cffe1c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp39-cp39-musllinux_1_2_x86_64.whl

Download URL pygeodiff-2.3.2-cp39-cp39-musllinux_1_2_x86_64.whl
Size 2.2 MB
Tags CPython 3.9 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
85776826ee073d28c6d2feb810c8d96abab32e957976415cb7e51add572214fb
BLAKE2b-256 checksum
How to use checksums
56453fb18899d0a106555bb2083f6be6f0e931481075748dc86307f6d25d3f61
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp39-cp39-manylinux_2_28_x86_64.whl

Download URL pygeodiff-2.3.2-cp39-cp39-manylinux_2_28_x86_64.whl
Size 901.4 kB
Tags CPython 3.9 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
91f561ad98bf7f2cacbe3a648533ec09fd3ef2a820196ed97efa382ea76b24bf
BLAKE2b-256 checksum
How to use checksums
518ecabbffb6b103a3828f9b764b2ec6ce478195415bcf1c13ef91847ff7f074
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp39-cp39-macosx_14_0_arm64.whl

Download URL pygeodiff-2.3.2-cp39-cp39-macosx_14_0_arm64.whl
Size 1.1 MB
Tags CPython 3.9 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
32a307d5dcb3823a98a356937abf093b13fcdff3e09c76313fb3aa32ec24f4ab
BLAKE2b-256 checksum
How to use checksums
faaa20be13538d42b55e8a363e65d719e47fae76e8540ddbdfbb238e3a2cbf5a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp39-cp39-macosx_10_9_x86_64.whl

Download URL pygeodiff-2.3.2-cp39-cp39-macosx_10_9_x86_64.whl
Size 1.2 MB
Tags CPython 3.9 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
434ecc7b5131e81638ac774f721fc0991a937d316e80b6f54a4123ed5efef602
BLAKE2b-256 checksum
How to use checksums
e783d71e42b9c1ee5c5f0d2e300a113f8e55db3e68fb078a2b3d82018e82c92f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp38-cp38-win_amd64.whl

Download URL pygeodiff-2.3.2-cp38-cp38-win_amd64.whl
Size 1.2 MB
Tags CPython 3.8 Windows x86-64
SHA-256 checksum
How to use checksums
58feeb6b838764be79380f3d9e0609445e65e54ced2042e14bff5c1295920638
BLAKE2b-256 checksum
How to use checksums
f2d03fce8543ab29cbd1e386d5eefad4c48a0f60b26b56428dc7cd42a17d6b88
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp38-cp38-musllinux_1_2_x86_64.whl

Download URL pygeodiff-2.3.2-cp38-cp38-musllinux_1_2_x86_64.whl
Size 2.2 MB
Tags CPython 3.8 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
d62365cd30c7b2af063c0a429112674a459b20f7e9fefe751ff0c3a353441bc1
BLAKE2b-256 checksum
How to use checksums
29576721ede5e53f53ae67585c606b6e98496bca12061115a94b8e43a5376348
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp38-cp38-manylinux_2_28_x86_64.whl

Download URL pygeodiff-2.3.2-cp38-cp38-manylinux_2_28_x86_64.whl
Size 901.4 kB
Tags CPython 3.8 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
2e8f1915aeb2f6274a9a519bb3f67e680c43f8be6f93b4646103c17e18e71f7e
BLAKE2b-256 checksum
How to use checksums
a934214561822c46e8da67fa5fe3e9045d2e83ed30f142583bf343e6d304e953
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp38-cp38-macosx_14_0_arm64.whl

Download URL pygeodiff-2.3.2-cp38-cp38-macosx_14_0_arm64.whl
Size 1.1 MB
Tags CPython 3.8 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
0e2841d67d4828fe55ac9677c7161255d4da8165aabe535f89015e26cc817094
BLAKE2b-256 checksum
How to use checksums
8a50c5e750756d2c32be25877fe3a7e4ea00859a964d13bbac6bc4f1638f48a3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pygeodiff-2.3.2-cp38-cp38-macosx_10_9_x86_64.whl

Download URL pygeodiff-2.3.2-cp38-cp38-macosx_10_9_x86_64.whl
Size 1.2 MB
Tags CPython 3.8 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
33fd940c97b8f3e54d66b016993701feb3f9abacc99dad651a3b0a436e82dd9e
BLAKE2b-256 checksum
How to use checksums
f2ef0955db6004af5cd76b9aee6496efd32e12f035c56c56cf4e79cdfd5c8b82
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

2.3.2 This release

41 release files

2.3.1

41 release files

2.1.2

49 release files

2.1.1

49 release files

2.1.0

49 release files

2.0.4

74 release files

2.0.3

12 release files

2.0.0

41 release files

1.0.5

29 release files

1.0.4

29 release files

1.0.3

31 release files

1.0.2

31 release files

0.8.8

11 release files

0.8.7

11 release files

0.8.6

11 release files

0.8.5

11 release files

0.8.4

11 release files

0.8.3

9 release files

0.8.0

10 release files

0.7.7

10 release files

0.7.6

10 release files

0.7.5

10 release files

0.7.4

10 release files

0.7.3

10 release files

0.7.2

10 release files

0.7.1

10 release files

0.7.0

10 release files

0.6.4

12 release files

0.6.1

8 release files

0.6.0

1 release file

0.5.1

1 release file

0.5.0

1 release file

0.4.0

1 release file

0.3.0

1 release file

0.2.7

1 release file

0.2.6

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page