embedded-unit-converter/README.md

33 lines
1.1 KiB
Markdown
Raw Permalink Normal View History

2019-02-06 08:17:16 -05:00
# Embedded Unit Converter
2019-10-30 10:37:01 -04:00
Embed a small bit of code that converts between units of measure, e.g.
2019-10-29 10:25:27 -04:00
Fahrenheit to Celsius.
2019-10-29 10:25:27 -04:00
An example of a Rust library that is embeddable in Python.
2019-10-29 10:25:27 -04:00
## Getting setup
Insure the following dependencies are in place:
2019-10-29 10:25:27 -04:00
* Rust v1.34+ (nightly)
* Install using `rustup toolchain install nightly`
* Python dependencies
2019-10-29 10:25:27 -04:00
* Python 3 Development headers `apt install python3-dev`
* pipenv `pip install --user pipenv`
## Running the Python example
1. Build the rust crate first: `cargo build`
1. Install dependencies and run in a virtualenv: `pipenv install && pipenv shell`
2019-10-29 10:41:01 -04:00
1. Create the Python package with: `maturin build`
2019-11-15 11:45:57 -05:00
1. Run the Python tests: `pytest test.py batch_test.py`
1. Run the Rust test: `cargo test --no-default-features`
## Documentation
* [PyO3 Python - Rust bindings](https://pyo3.rs/master/get_started.html)
2019-11-06 17:42:41 -05:00
* Windchill calculations:
* [PDF from US Gov](https://www.weather.gov/media/epz/wxcalc/windChill.pdf)
* [Calculation in Celsius and kph](https://www.calcunation.com/calculator/wind-chill-celsius.php)
* [Windchill Calculator](https://www.weather.gov/epz/wxcalc_windchill)