gemstone-py-native
Optional PyO3 extension for gemstone-py.
The extension exports gemstone_py_native._gci, which matches the Python
gemstone_py._gci shim surface. The reusable GCI loader and raw ABI calls live
in ../crates/gemstone-gci; this package is the thin PyO3 wrapper around that
shared Rust core. It exposes a NativeGciLibrary object with Rust-backed GCI
methods, releases the GIL around blocking GCI calls, and replaces hot OOP tag
helpers with native implementations. Wheels are built with the Python 3.11
stable ABI.
The same extension also exposes the first additive gemstone-rs shared-core
surface through RustCoreSession and rust_core_*_json() helpers. That path is
backed by gemstone_rs::py_native and is intentionally separate from the
existing _gci compatibility API, so existing gemstone-py backend selection
keeps working while the Rust-core migration is proven in tests.
Direct Rust applications should use the separate gemstone-rs workspace. When
checked out beside gemstone-py, it lives at ../../gemstone-rs from this
directory. It provides the safe Rust Config and Session API over the same
low-level GCI layer. Rust code imports it as gemstone_rs.
Build locally:
python -m pip install maturin
cd gemstone-py-native
maturin develop
Check the Rust-core handoff surface:
python - <<'PY'
from gemstone_py_native import _gci
print(_gci.rust_core_implementation())
print(_gci.rust_core_capabilities_json())
print(hasattr(_gci, "RustCoreSession"))
PY
Run the native Rust-core smoke:
python scripts/run_native_rust_core_live_smoke.py --dry-run
GS_RUN_LIVE=1 python scripts/run_native_rust_core_live_smoke.py --require-live
The dry run verifies the installed extension exposes RustCoreSession and the
rust_core_*_json() reports. The live run logs in through
gemstone_rs::py_native, checks 3 + 4 == 7, performs printString, resolves
Object, round-trips a string, writes and aborts a temporary global, and logs
out.
Package wheels:
cd gemstone-py-native
maturin build --release
Run the direct Rust example:
cd ../../gemstone-rs
cargo run -p gemstone-rs --example eval
The repository workflow Native Wheels builds platform wheels for Linux x86_64,
Linux aarch64, Linux ARMv7, macOS x86_64, macOS aarch64, Windows x86_64, and Windows ARM64.
Manual workflow runs can publish the merged wheel set to TestPyPI or PyPI using trusted
publishing. The workflow also builds the generated native sdist back into a
wheel before uploading it, so missing source files fail before publish.
Metadata
Release files for gemstone-py-native 0.1.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| gemstone_py_native-0.1.3.tar.gz | 92.4 kB | Details |
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| gemstone_py_native-0.1.3-cp311-abi3-win_arm64.whl | CPython 3.11 | abi3 | Windows ARM64 | Details |
| gemstone_py_native-0.1.3-cp311-abi3-win_amd64.whl | CPython 3.11 | abi3 | Windows x86-64 | Details |
| gemstone_py_native-0.1.3-cp311-abi3-manylinux_2_34_armv7l.whl | CPython 3.11 | abi3 | Linux glibc 2.34+ ARMv7l | Details |
| gemstone_py_native-0.1.3-cp311-abi3-manylinux_2_31_x86_64.whl | CPython 3.11 | abi3 | Linux glibc 2.31+ x86-64 | Details |
| gemstone_py_native-0.1.3-cp311-abi3-manylinux_2_31_aarch64.whl | CPython 3.11 | abi3 | Linux glibc 2.31+ ARM64 | Details |
| gemstone_py_native-0.1.3-cp311-abi3-macosx_11_0_arm64.whl | CPython 3.11 | abi3 | macOS 11.0+ ARM64 | Details |
| gemstone_py_native-0.1.3-cp311-abi3-macosx_10_12_x86_64.whl | CPython 3.11 | abi3 | macOS 10.12+ x86-64 | Details |
Total release size: 2.2 MB
Release files / gemstone_py_native-0.1.3.tar.gz
| Download URL | gemstone_py_native-0.1.3.tar.gz |
|---|---|
| Size | 92.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
20a0e3e58193a32a5b10ed1478a770948bcd5f7ff31061712b44c6066033d5c0
|
|
BLAKE2b-256 checksum How to use checksums |
64858a14ccb0dfd93663dea394f4da9c8dad4bf3331b064cf84eb855970e9d70
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 19, 2026.
Transparency logRelease files / gemstone_py_native-0.1.3-cp311-abi3-win_arm64.whl
| Download URL | gemstone_py_native-0.1.3-cp311-abi3-win_arm64.whl |
|---|---|
| Size | 231.2 kB |
| Tags | CPython 3.11 Windows ARM64 abi3 |
|
SHA-256 checksum How to use checksums |
dff313497cb49c2ab33a893f015f82a51e3d2f8d7d1a4013b039aff72eceeecd
|
|
BLAKE2b-256 checksum How to use checksums |
4a73b49fa02d0d94482f4907b6b0c5095170d2756d230d1853ee8245fbd933f4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 19, 2026.
Transparency logRelease files / gemstone_py_native-0.1.3-cp311-abi3-win_amd64.whl
| Download URL | gemstone_py_native-0.1.3-cp311-abi3-win_amd64.whl |
|---|---|
| Size | 240.8 kB |
| Tags | CPython 3.11 Windows x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
893649e61b8c34b838857043e43cff43d6a0cdac7fa4d489f9fe0c9c1f7141f4
|
|
BLAKE2b-256 checksum How to use checksums |
c7d99650a91e5111ce12f71af66776626fedd7c3b5be16b38fc3dd0ef5fb7c97
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 19, 2026.
Transparency logRelease files / gemstone_py_native-0.1.3-cp311-abi3-manylinux_2_34_armv7l.whl
| Download URL | gemstone_py_native-0.1.3-cp311-abi3-manylinux_2_34_armv7l.whl |
|---|---|
| Size | 312.6 kB |
| Tags | CPython 3.11 Linux glibc 2.34+ ARMv7l abi3 |
|
SHA-256 checksum How to use checksums |
d9768482c25311a98dd02f1b3c4e6662ae03c8d812e6454184e236cfab86b18d
|
|
BLAKE2b-256 checksum How to use checksums |
be48392f82f5e1acde9e1951154630c9d919a6835e05da32bd9b75616415e80d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 19, 2026.
Transparency logRelease files / gemstone_py_native-0.1.3-cp311-abi3-manylinux_2_31_x86_64.whl
| Download URL | gemstone_py_native-0.1.3-cp311-abi3-manylinux_2_31_x86_64.whl |
|---|---|
| Size | 349.6 kB |
| Tags | CPython 3.11 Linux glibc 2.31+ x86-64 abi3 |
|
SHA-256 checksum How to use checksums |
0baffc5f3ec82db904be998d4c5b3ca3a665dc8e3fb174ba8239539f27c6acb2
|
|
BLAKE2b-256 checksum How to use checksums |
18d79beb4217fc0c2265a7370baf99d5b2ab59ec0ada5b2246aa60da4c5fc4de
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 19, 2026.
Transparency logRelease files / gemstone_py_native-0.1.3-cp311-abi3-manylinux_2_31_aarch64.whl
| Download URL | gemstone_py_native-0.1.3-cp311-abi3-manylinux_2_31_aarch64.whl |
|---|---|
| Size | 337.4 kB |
| Tags | CPython 3.11 Linux glibc 2.31+ ARM64 abi3 |
|
SHA-256 checksum How to use checksums |
e76d8e26bea39911ad09c1a30f62253864bfe4625e79494e4d7c4e1be9d8d978
|
|
BLAKE2b-256 checksum How to use checksums |
e6a021a5a1ea0ce262ff1fdf0cc01a00bfaab2b9ca5ff115069b5f95cf42a7b0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 19, 2026.
Transparency logRelease files / gemstone_py_native-0.1.3-cp311-abi3-macosx_11_0_arm64.whl
| Download URL | gemstone_py_native-0.1.3-cp311-abi3-macosx_11_0_arm64.whl |
|---|---|
| Size | 294.3 kB |
| Tags | CPython 3.11 abi3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
7afa5e86a873e0625005418c9facaada407f7c908f6b4c8a87f596e4a11749b2
|
|
BLAKE2b-256 checksum How to use checksums |
ffada402bc58880a3ece4555e2f0d8e3456f2439a7cfb6d92bcf40d58ae81b7b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 19, 2026.
Transparency logRelease files / gemstone_py_native-0.1.3-cp311-abi3-macosx_10_12_x86_64.whl
| Download URL | gemstone_py_native-0.1.3-cp311-abi3-macosx_10_12_x86_64.whl |
|---|---|
| Size | 299.8 kB |
| Tags | CPython 3.11 abi3 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
c4310c111080746e02cee5ec4efc88df6b78659ed207f0a6626ba7f7b8d6e2bf
|
|
BLAKE2b-256 checksum How to use checksums |
c3b70b7bc3394a146da9dfd5e92d344c5b85f0b0f135225ca924733037f71c33
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.13
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 19, 2026.
Transparency log