Skip to main content

Python bindings for libxmtp (XMTP v3)

Project description

xmtp-bindings

Python bindings for libxmtp (XMTP v3) generated via UniFFI.

Install-time build

The Python package now builds the libxmtp native library during install. This requires:

  • Rust toolchain (cargo)
  • git

Environment overrides:

  • XMTP_LIBXMTP_PATH: use an existing libxmtp checkout instead of cloning
  • XMTP_LIBXMTP_REF: git ref (tag/branch/commit) to checkout
  • XMTP_LIBXMTP_REPO: override the libxmtp git URL
  • XMTP_BINDINGS_SKIP_BUILD=1: skip native build (requires a prebuilt libxmtpv3 next to xmtpv3.py)
  • XMTP_BINDINGS_FORCE_BUILD=1: rebuild even if a native library already exists

If XMTP_LIBXMTP_REF is not set, builds default to the pinned ref stored in src/xmtp_bindings/libxmtp.ref.

During builds, the UniFFI Python bindings (xmtpv3.py) are regenerated from the same libxmtp checkout used to build the native library to keep the wrapper and shared library in sync.

Manual build

These bindings are generated from the libxmtp Rust workspace. To regenerate manually:

# Clone libxmtp into .deps if needed
mkdir -p .deps
[ -d .deps/libxmtp ] || git clone --depth 1 https://github.com/xmtp/libxmtp .deps/libxmtp

# Build the native library
cd .deps/libxmtp
cargo build -p xmtpv3 --release

# Generate Python bindings
cd bindings_ffi
cargo run --bin ffi-uniffi-bindgen --release --features uniffi/cli generate \
  --library ../target/release/libxmtpv3.so \
  --out-dir ../../../bindings/python/src/xmtp_bindings \
  --language python

# Copy the shared library next to the generated module
cp ../target/release/libxmtpv3.so ../../../bindings/python/src/xmtp_bindings/

Notes

  • The generated xmtpv3.py expects libxmtpv3 to sit next to it.
  • This package is intended to be consumed by the higher-level python-sdk.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xmtp_bindings-0.1.3.tar.gz (66.6 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

xmtp_bindings-0.1.3-cp313-cp313-win_amd64.whl (8.3 MB view details)

Uploaded CPython 3.13Windows x86-64

xmtp_bindings-0.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

xmtp_bindings-0.1.3-cp313-cp313-macosx_11_0_arm64.whl (10.2 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

xmtp_bindings-0.1.3-cp312-cp312-win_amd64.whl (8.3 MB view details)

Uploaded CPython 3.12Windows x86-64

xmtp_bindings-0.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

xmtp_bindings-0.1.3-cp312-cp312-macosx_11_0_arm64.whl (10.2 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

xmtp_bindings-0.1.3-cp311-cp311-win_amd64.whl (8.3 MB view details)

Uploaded CPython 3.11Windows x86-64

xmtp_bindings-0.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

xmtp_bindings-0.1.3-cp311-cp311-macosx_11_0_arm64.whl (10.2 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

xmtp_bindings-0.1.3-cp310-cp310-win_amd64.whl (8.3 MB view details)

Uploaded CPython 3.10Windows x86-64

xmtp_bindings-0.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (11.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

xmtp_bindings-0.1.3-cp310-cp310-macosx_11_0_arm64.whl (10.2 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file xmtp_bindings-0.1.3.tar.gz.

File metadata

  • Download URL: xmtp_bindings-0.1.3.tar.gz
  • Upload date:
  • Size: 66.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for xmtp_bindings-0.1.3.tar.gz
Algorithm Hash digest
SHA256 abcdac8ee942430296994f73a9ae072e17c23901d3cb0591e1e78508d39c2a0a
MD5 ccf714e6529b153be28098fe6911a53e
BLAKE2b-256 f33f7209e83705a673e09aecd051318738064ec1e6387ea4d8e95250437c6031

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.3.tar.gz:

Publisher: publish.yml on pierce403/xmtp-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xmtp_bindings-0.1.3-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.3-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 40481db177033edc68335f0a307c4394c7644881cdf20acbe7117da444746502
MD5 66d0c7434cb1d892ba5bbe758d1368c8
BLAKE2b-256 ef126f4ba6e98bb5699f5a55d21bb06c454b7acfabb8e3591d6bed4d1755c49e

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.3-cp313-cp313-win_amd64.whl:

Publisher: publish.yml on pierce403/xmtp-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xmtp_bindings-0.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f64d0220584910006ed310c0866a5a8a124ca519bc9f662f45d62f04508b5792
MD5 b11e848d954509e235024533bb41c0cd
BLAKE2b-256 f19b59e86b14a50e95799efce19b1fc7cb29b79ed2e92cdb7382e84695701405

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on pierce403/xmtp-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xmtp_bindings-0.1.3-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.3-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a35b0637590f85a16d9dbbc3927640ebc1ba5753d16bfacb55a6ade456ffc163
MD5 e0dff0d6c835595b709a69f2c4312dc2
BLAKE2b-256 af010e64d005a7cc7e240f8c2c23da31c4aa7644ab83272af6366fb61ce6323c

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.3-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: publish.yml on pierce403/xmtp-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xmtp_bindings-0.1.3-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.3-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 b8335a3af992089be5b3944b4a13e66d341c74c2392c5143de153a26a3dfe1dd
MD5 a8fcb160f033e744389649fa62dabc60
BLAKE2b-256 a897af74d13b17bbc8b10b21dc90a67828e5088911420b9eac27cb0d3fef5e32

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.3-cp312-cp312-win_amd64.whl:

Publisher: publish.yml on pierce403/xmtp-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xmtp_bindings-0.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 88951e4f0ac4636eca99b6fd4160b65d456da968bfd04fb3adb16b768e2d7027
MD5 ddebbd7bc4327051a59cbc238924faca
BLAKE2b-256 d1b97efa1dd3be2995e2c83e3858393e9a8b63c75315c082177bb7c6e9b1196c

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on pierce403/xmtp-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xmtp_bindings-0.1.3-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.3-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e561ffc08729cfa28b201628195983c611bd0dc57f019980877a656de79ef6be
MD5 f92ff6911d14afabf5d916005055cc95
BLAKE2b-256 9ed457db999393d2717801b1d835a84fbb65d00816f98b77b6e44778fb7a188d

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.3-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: publish.yml on pierce403/xmtp-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xmtp_bindings-0.1.3-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.3-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 6a05e94154970aed68d487288f60a22405b71827a17ce37fa586cc5e3bf4682f
MD5 cd0d39e654fef11d2784da5ad9f56f13
BLAKE2b-256 158389b697f115a51a6d62c0670d2af607c29f6fcad7d408ac31046a5ed92add

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.3-cp311-cp311-win_amd64.whl:

Publisher: publish.yml on pierce403/xmtp-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xmtp_bindings-0.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2caff1e51941a7704ea2ce5904ab0c8083bbdf88edd20343c0387ca1c7ec3b33
MD5 78755fa1247024bf140ad7c3c0f74ebc
BLAKE2b-256 b4eed69c657da63ca1594b8f72f4264e7e16a10cd950bd4e708d1699235aec47

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on pierce403/xmtp-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xmtp_bindings-0.1.3-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.3-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 57ff34473ceaa38fab1c99f2e7c60b9231662c4c50af4ac35a8dd5d1bbf06002
MD5 938ed5cb8aa575ef28abbcb170615f54
BLAKE2b-256 5e65061202a0e8734d2f305e1e5e6b67427c526f96bac5f646c7fec898155891

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.3-cp311-cp311-macosx_11_0_arm64.whl:

Publisher: publish.yml on pierce403/xmtp-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xmtp_bindings-0.1.3-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 f1b3df1ad6b0f473bcb115984b3d3d9f2d9cf7821194bf141e17636d27c9570a
MD5 851f2c97720aa2333f0d44eec0b449ad
BLAKE2b-256 2b4f28f06e0be006391c86ca4a3a9e7b0afac172639cebfa447e7cf2b9c97a33

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.3-cp310-cp310-win_amd64.whl:

Publisher: publish.yml on pierce403/xmtp-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xmtp_bindings-0.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6458409af3e49027758f89b4877e4f951d9fc9f1ce866c3e13905c297d28c39e
MD5 d85eaa1142f064ffa00bca3305240af3
BLAKE2b-256 cfca8832ef2240d86a0ab3892b82ceba4da5f95a41f00e942f9857189f2c38c6

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: publish.yml on pierce403/xmtp-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xmtp_bindings-0.1.3-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.3-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 201ae800547b8e80e4337e4a452ef965b05f3587ff37f70c5e450b16f9358855
MD5 c7d2b86eac5d03d12ee0e65558503c3a
BLAKE2b-256 e04f74187101bc89bf1ebfb10fa34130ddd89cd6d499172ad7344765c0393b62

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.3-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: publish.yml on pierce403/xmtp-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page