Building Rust with Python Bindings
Prerequisites
- Rust and Cargo installed
- Python with pip installed
Build Process
1. Build Rust Project
cargo build
2. Build Python Binding
Option A: Build and Install Wheel
- Build the wheel package:
pip install setuptools-rust wheel build
python -m build
- Install the generated wheel:
pip install <path-to-wheel>
Option B: Development Mode
For development purposes, you can install the package in editable mode:
pip install -e .
Note: When modifying Rust code, you must rebuild the wheel for changes to take effect.
CI/CD Setup
The continuous integration pipeline consists of three main steps:
1. Build Wheels
- Uses
cibuildwheelto create manylinux x86_64 packages - Compatible with major Linux distributions (Ubuntu, CentOS, etc.)
- Additional configurations can be added to support other OS/architectures
- Reference: cibuildwheel documentation
2. Build Source Distribution
- Creates a source distribution containing the raw, unbuilt code
- Enables
pipto build the package from source when prebuilt wheels are unavailable
3. Publish to PyPI
- Uploads both wheels and source distribution to PyPI
The CI configuration is based on the tiktoken workflow.
Metadata
Release files for sglang-rust-test 0.1.12
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| sglang_rust_test-0.1.12.tar.gz | 8.5 kB | Without provenance | Details |
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| sglang_rust_test-0.1.12-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.12 | CPython 3.12 | Linux glibc 2.17+ x86-64 | Details |
| sglang_rust_test-0.1.12-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.11 | CPython 3.11 | Linux glibc 2.17+ x86-64 | Details |
| sglang_rust_test-0.1.12-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.10 | CPython 3.10 | Linux glibc 2.17+ x86-64 | Details |
| sglang_rust_test-0.1.12-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.9 | CPython 3.9 | Linux glibc 2.17+ x86-64 | Details |
| sglang_rust_test-0.1.12-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.8 | CPython 3.8 | Linux glibc 2.17+ x86-64 | Details |
Total release size: 33.5 MB
Release files / sglang_rust_test-0.1.12.tar.gz
| Download URL | sglang_rust_test-0.1.12.tar.gz |
|---|---|
| Size | 8.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6a2310e636758ba939ac0abbd805084106bc589e69297c1737be96a63906a3e3
|
|
BLAKE2b-256 checksum How to use checksums |
2bb963ae0d7bebcb3172bd69d6cc1a33e8aaa1259d284b6a3ae05ac22f92098e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.10.12
|
Release files / sglang_rust_test-0.1.12-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | sglang_rust_test-0.1.12-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 6.7 MB |
| Tags | CPython 3.12 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
eefba0511cece85dad7e678fb3c2d4b872838ee33774941ff1080df6dd73727c
|
|
BLAKE2b-256 checksum How to use checksums |
44765a96582d1525b619f474dcb481e33c9ab6a57d412f33584426edf672c4a3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.10.12
|
Release files / sglang_rust_test-0.1.12-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | sglang_rust_test-0.1.12-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 6.7 MB |
| Tags | CPython 3.11 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
f37f9aaded39bb42470ea1c7a119a42064783714983e86f00c3744259fcc61af
|
|
BLAKE2b-256 checksum How to use checksums |
63c3887ec5e527d90f746364da5beb957ff796430b4fb1db61a98b3261cbd0ad
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.10.12
|
Release files / sglang_rust_test-0.1.12-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | sglang_rust_test-0.1.12-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 6.7 MB |
| Tags | CPython 3.10 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
999409e663c221a9256a7081a13d9b0c756edacf9eb06e09a19ba6b71ed868f6
|
|
BLAKE2b-256 checksum How to use checksums |
2b7ef6821f399bfa3678534cbf1face463a004d0e3acfe7732994754c5dbffb6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.10.12
|
Release files / sglang_rust_test-0.1.12-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | sglang_rust_test-0.1.12-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 6.7 MB |
| Tags | CPython 3.9 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
60c358c7323656f1ade37d74bf98894b242e07061531628e55d52c22a65ff9c2
|
|
BLAKE2b-256 checksum How to use checksums |
242aa9e9d16b13db56ea5723ab875b3479d0ac40d3ec55552e24128de69a6a06
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.10.12
|
Release files / sglang_rust_test-0.1.12-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | sglang_rust_test-0.1.12-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 6.7 MB |
| Tags | CPython 3.8 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
e9cc532fec919c632968997eb9da18072c03a98a0726a8211be9c0461b0583c7
|
|
BLAKE2b-256 checksum How to use checksums |
8532ede80324f1a7e588d336c0e48b39e0e59808c895f8ee8a4fa8a18b92251d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.10.12
|
Security for sglang-rust-test 0.1.12
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.