gedcomkit (Python)
Python bindings for gedcomkit, an archival-grade GEDCOM library written in Rust: byte-preserving round-trip, encoding detection and reporting, GEDCOM 5.5 through 7.x. A node no caller touched is written back byte for byte; nothing is dropped for being unrecognized; hostile input is bounded.
import gedcomkit
doc = gedcomkit.Gedcom.parse(open("family.ged", "rb").read())
print(doc.encoding) # "Read as ANSEL, declared ANSEL"
print(len(doc), doc.version)
for person in doc.individuals():
print(person["names"], person["events"])
for finding in doc.validate():
print(finding["severity"], finding["message"])
# The family graph reads both directions of the link, so a one-sided
# file (FAMC only, no CHIL) still answers.
print(doc.parents_of("@I3@"))
# Edit one structure by the path its view carries; every untouched
# line still writes back byte for byte.
doc.set_logical_value("@I1@", [0], "Ada /Lovelace/")
open("family.ged", "wb").write(doc.to_bytes())
Build from this directory with maturin:
maturin develop # into the active virtualenv
maturin build --release # a wheel
The Rust core lives at the root of the same repository; this crate is a thin PyO3 layer over its public API.
License: AGPL-3.0-or-later, the same as the core (see LICENSE).
Metadata
Release files for gedcomkit 0.1.16
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| gedcomkit-0.1.16.tar.gz | 294.4 kB | Details |
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| gedcomkit-0.1.16-cp39-abi3-win_amd64.whl | CPython 3.9 | abi3 | Windows x86-64 | Details |
| gedcomkit-0.1.16-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.9 | abi3 | Linux glibc 2.17+ x86-64 | Details |
| gedcomkit-0.1.16-cp39-abi3-macosx_11_0_arm64.whl | CPython 3.9 | abi3 | macOS 11.0+ ARM64 | Details |
| gedcomkit-0.1.16-cp39-abi3-macosx_10_12_x86_64.whl | CPython 3.9 | abi3 | macOS 10.12+ x86-64 | Details |
Total release size: 3.6 MB
Release files / gedcomkit-0.1.16.tar.gz
| Download URL | gedcomkit-0.1.16.tar.gz |
|---|---|
| Size | 294.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b5ef9d75720c14f26980b3beebf1eaa97b9eb3933dcf2218faf935c9cf2f4bb1
|
|
BLAKE2b-256 checksum How to use checksums |
7e57c1bf8a5f3003672f201c9244ec9c0a78cd40e2f6377097c0f50e0c8c3e3a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Release files / gedcomkit-0.1.16-cp39-abi3-win_amd64.whl
| Download URL | gedcomkit-0.1.16-cp39-abi3-win_amd64.whl |
|---|---|
| Size | 462.0 kB |
| Tags | CPython 3.9 Windows x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
bcf9c5f32e4681c2adb35d22c49457df2d00d0431868b53230f060519e7924e7
|
|
BLAKE2b-256 checksum How to use checksums |
89b8f1b19e940799a8fba0216592dd53f75b7c85e7817edd6fcc4e3eb8c2a8b5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Release files / gedcomkit-0.1.16-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | gedcomkit-0.1.16-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 626.8 kB |
| Tags | CPython 3.9 Linux glibc 2.17+ x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
d27edbc4768d9f8d64498c1d3e17eccd86a1e787e57edb706450f7fa2d21cb02
|
|
BLAKE2b-256 checksum How to use checksums |
05ab5ce23cb60efadfb99cdd93b888146de6d1412d74e3be662a4801ae4750f2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Release files / gedcomkit-0.1.16-cp39-abi3-macosx_11_0_arm64.whl
| Download URL | gedcomkit-0.1.16-cp39-abi3-macosx_11_0_arm64.whl |
|---|---|
| Size | 1.1 MB |
| Tags | CPython 3.9 abi3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
5b534ece77916480e388a34705a9749b9a6a88b72d07e40ae15a6d1a8f0c63a8
|
|
BLAKE2b-256 checksum How to use checksums |
57b1721db141fcb9433dfa12cc076342c278a0d980fee31d3d3a0948e9325419
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Release files / gedcomkit-0.1.16-cp39-abi3-macosx_10_12_x86_64.whl
| Download URL | gedcomkit-0.1.16-cp39-abi3-macosx_10_12_x86_64.whl |
|---|---|
| Size | 1.1 MB |
| Tags | CPython 3.9 abi3 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
40456e486f3461e39117c06fb99077935b1140f802dac25d462b4cb103e17bc3
|
|
BLAKE2b-256 checksum How to use checksums |
79286a0e684efaf24c24bb32e04b91ae2973a629a79e4ea87fef4449758a98f6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|