Skip to content

Python Wrapper for Rust Persistent Data Structures

License

Notifications You must be signed in to change notification settings

arakhmati/pyrpds

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status Crates.io PyPI

Python Wrapper for Rust Persistent Data Structures

pyrpds is a library which provides CPython bindings to Rust's rpds library.

The project has 2 goals:

  • Allow packages that are built on top of rpds to expose Python bindings easily.
  • Provide faster drop-in replacements for pyrsistent data structures.

Python API will be exactly the same as pyrsistent API.

Installation Instructions

For Users

Python

pip install pyrpds

Rust

Add following lines to Cargo.toml:

[dependencies.pyrpds]
version = "<version>"

For Contributors

Installing Dependencies

Install Rust and Conda.

Installing nightly Rust

rustup install nightly
rustup override set nightly

Installing Conda environment

conda env create -f environment.yaml

Installing pyrpds

conda activate pyrpds
maturin develop

Testing pyrpds

conda activate pyrpds
pytest

About

Python Wrapper for Rust Persistent Data Structures

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published