A PyO3 based common native extension lib for alluxio python client
Developer Prerequisites:
- Install Rust: https://www.rust-lang.org/tools/install
- Install maturin: https://www.maturin.rs/installation
To build developer version locally and play:
- create virtualenv, (a tool used to create isolated Python environments):
python3 -m venv .env
source .env/bin/activate
maturin develop
- then can start using:
python3
from alluxiocommon import _DataManager
dm = _DataManager(4)
# do something with dm...
To build wheel package and install with pip:
#in rust/alluxiocommon dir:
$ maturin build --out <alluxiofs_home>/dist -m <alluxiofs_home>/rust/alluxiocommon/Cargo.toml -i python<x.y> (python version such as 3.8)
#then find .whl package in <alluxiofs_home>/dist:
[root@ip-XXX-XX-XX-XX alluxiofs]# ls -l dist/
total 21848
-rw-r--r--. 1 root root 22318133 Apr 28 05:31 alluxiocommon-0.1.0-cp38-cp38-linux_x86_64.whl
#install with pip
$ pip install dist/alluxiocommon-0.1.0-cp38-cp38-linux_x86_64.whl --force-reinstall
To build release package and publish to PyPI
#in rust/alluxiocommon dir, important is to add --manylinux 2014 for PyPI restriction for wheel package to be compatible with many linux platforms. (PEP 513)
$ docker run --rm -v $(pwd):/io ghcr.io/pyo3/maturin build --release --manylinux 2014
#the .whl package will appear in rust/alluxiocommon/target/wheels/
#check and publish with PyPI:
$ twine check target/wheels/*
#test upload to TestPyPI
$ python3 -m twine upload --repository testpypi target/wheels/* --verbose
#upload to PyPI
$ python3 -m twine upload target/wheels/*
Metadata
Release files for alluxiocommon 1.0.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| alluxiocommon-1.0.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.8 | CPython 3.8 | Linux glibc 2.17+ x86-64 | Details |
Release files / alluxiocommon-1.0.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | alluxiocommon-1.0.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 4.1 MB |
| Tags | CPython 3.8 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
ed445f198f8079748fd2d824c4f97b253dd173a7b10c94f2ccb89783b7f4000b
|
|
BLAKE2b-256 checksum How to use checksums |
6a96f2762f3d0734e8052f0324cada7c2ada49a68adbd7d78ff9e9be37747a43
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.0 CPython/3.8.1
|
Security for alluxiocommon 1.0.4
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.