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

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.1.tar.gz (66.3 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.1-cp313-cp313-win_amd64.whl (8.3 MB view details)

Uploaded CPython 3.13Windows x86-64

xmtp_bindings-0.1.1-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.1-cp313-cp313-macosx_11_0_arm64.whl (10.2 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.12Windows x86-64

xmtp_bindings-0.1.1-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.1-cp312-cp312-macosx_11_0_arm64.whl (10.2 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

xmtp_bindings-0.1.1-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.1-cp311-cp311-macosx_11_0_arm64.whl (10.2 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

xmtp_bindings-0.1.1-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.1-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.1.tar.gz.

File metadata

  • Download URL: xmtp_bindings-0.1.1.tar.gz
  • Upload date:
  • Size: 66.3 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.1.tar.gz
Algorithm Hash digest
SHA256 0c1a009533c0aae64de6637cd023e1bf42cd930aaf2a0fbf00fa6bb663dcd28f
MD5 3672ef68f4d4db5dad82489925246e37
BLAKE2b-256 f24e5c211f05576219c1f65091d22e51b0c6c68c165ccd4872577cb9beedcb0e

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.1.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.1-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 8405cf63676d82c0fad3765d5214911cdd772499f0e94e1cf288dc7bd165984f
MD5 a67e1b0cb594c7db7ccbb3f2a52a914d
BLAKE2b-256 53979167e6991e8ac67347b2f4697bdff62eaed0417b5823c7863cd425cb9e30

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.1-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.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 f1c9390a9e27e712dfc48d13ea2effc85bf3ba3633f99ba2fb38bc4c7653e671
MD5 94a298ee2683a56a0e7156ad572a2162
BLAKE2b-256 2bfa8f9557413e7e8660ad1e0c60160a9d77fb6d55616eb0d879ee69921fc665

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.1-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.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 1a309a6392b63e934c1e30708c407d7505dfe2f8a737fbc1dd44890e437d956d
MD5 4ea9cc6e24409ff59a75448b516c9035
BLAKE2b-256 f3026e53d9ce15cfeb4a8f3c21ff1e8db6ab7b28fe2bdb79a4f87203b40724a9

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.1-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.1-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 026c623557fd02a46608f5bc32ab1ec02fef3ee4b1124f9b0c7e05a416065c80
MD5 27c08aa5091afef6f4c9326c62ef0588
BLAKE2b-256 654c0669b0fca441d876ddcaef5915a5ea6b25b944f79f83a3c6aaa62d0f83e0

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.1-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.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 24b6792e064712a1f5e4aff6126f71c7f4cc6bc67d57c7cec48eae74afab96d9
MD5 bebb66e59ed5cf61d2fe7693fbe73eec
BLAKE2b-256 a2f3dd174f1dd5493c0708cb91e8f6e7036af8f9730f057d17d8de537e13b793

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.1-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.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 cc040e13e61741ad38a97343355f7904e40c41fa28d81035e7b3aeb9947240b6
MD5 bdaa38ca83f8f91e3a3ee9acd0353824
BLAKE2b-256 f2eafdc1b4de2d9cc572c8b47e5ad5959036dc6af306a26298931a4e65581d94

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.1-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.1-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 75e1c80b02b021b1cfff74dab40278641ca84ca166594df2e4039efdc3c71120
MD5 96ba8c05227f9df3bb990a10e35ecfe9
BLAKE2b-256 de4edd31a671348512f24174dc4e20418c70d20ad19240e51bd557cdc1c5c264

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.1-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.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 32de22632cc4f1bc61f80655f66de5b9eaf5c4ff24bdd8793b713540c1daf543
MD5 cf41fc9a05eb3e2db78c664a6e8ab1f4
BLAKE2b-256 46555d0164bb2e96b374b7b02127bfcd355e999eefd6c81e10748267abcfbd9d

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.1-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.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8c39aca3bc616116667fc00cde24392d37099e24be3a45b5de72fd8eb4eed192
MD5 9971ef98a5cccd655a2c968431a56b63
BLAKE2b-256 bd95bf6f838a86fe81d6432c4cd1406c5d1a0d5eb41b120e37f435b26ea276f1

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.1-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.1-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 dcbb3c706580d5a2e6bb4c0c2d4265c24cb951f5ad38ca55d74163f7da9462b2
MD5 e9dc047820b77e30e7162be605fa5af9
BLAKE2b-256 4104637b5097b3ffb3c35ebb33291750aedb181f81c2ac9a284fcb1326b22964

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.1-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.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ac5838948190a4d4dfd7fc0f1a561e98ec0e19d894afd25a69185d8556451a27
MD5 0fed8bf847332fa0cacd9ca6848e0bc7
BLAKE2b-256 50053b35352431b84c31883571b00e809ef0907aca63ec7364901b82634c7d3c

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.1-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.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for xmtp_bindings-0.1.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6d134f83133c1372f64b73a8f9d7ce5d00a685ca2a12e1e0a7d99c943324f46c
MD5 2aac64b6892f1728a6401de375569ace
BLAKE2b-256 0a384ae4ac87d84b5444dd485225f8fc73754b19b236a471dc10031eca23a855

See more details on using hashes here.

Provenance

The following attestation bundles were made for xmtp_bindings-0.1.1-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