Use Rust implementation instead?
- Dominant language
- Python
- Stars
- 490
- Forks
- 104
- PR merge metrics
- No merged PRs in 30d
Description
Hi there!
I was curious if you'd be open to having the [Rust implementation of snappy](https://github.com/BurntSushi/rust-snappy) instead of the C dependency which can lead to troubles, especially when using `python-snappy` in environments like AWS Lambda?
I've made [cramjam](https://github.com/milesgranger/pyrus-cramjam) which does just this but would be willing to attempt migrating this project in a similar way. It wouldn't require any system dependencies and packing them in a wheel (OSX, Linux & Windows supported), of course, wouldn't require any compiler for the user. As it is right now, `cramjam` which includes snappy results in about ~1.5MB for linux wheels.
Anyway, let me know what you think and I'd be willing to start messing around with it. :+1:
Contributor guide
No contributing guide indexed for this repository
Research direction
No project files or tests are named. Start by reviewing how python-snappy currently declares and builds its C dependency, then compare the linked Rust implementation and cramjam approach. Done would require an agreed migration scope and confirmation that supported macOS, Linux, and Windows wheels need neither system dependencies nor a user compiler.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c, python, rust
- Domain
- backend, build-system
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100