Python package to manage units for physical quantities.
Quick example:
from barril.units import Scalar
s1 = Scalar(10, 'm')
s2 = Scalar(500, 'cm')
assert s1 + s2 == Scalar(15, 'm')
- Pre-defined unit database containing several physical quantities for the Oil & Gas industry.
- Data types with an associated unit:
Scalar
,Array
,Quantity
,FixedArray
. - Automatic conversion during arithmetic operations.
For complete description of what type of contributions are possible, see the full CONTRIBUTING guide.
Here is a quick summary of the steps necessary to setup your environment to contribute to barril
.
Create a virtual environment and activate it:
$ python -m virtualenv .env $ .env\Scripts\activate # windows $ source .env/bin/activate # linux
Note
If you use
conda
, you can installvirtualenv
in the root environment:$ conda install -n root virtualenv
Don't worry as this is safe to do.
Update
pip
:$ python -m pip install -U pip
Install development dependencies:
$ pip install -e .[testing]
Install pre-commit:
$ pre-commit install
Run tests:
$ pytest --pyargs barril
Generate docs locally:
$ tox -e docs
The documentation files will be generated in
docs/_build
.
A reminder for the maintainers on how to make a new release.
Note that the VERSION should folow the semantic versioning as X.Y.Z Ex.: v1.0.5
- Create a
release-VERSION
branch fromupstream/master
. - Update
CHANGELOG.rst
. - Push a branch with the changes.
- Once all builds pass, push a
VERSION
tag toupstream
. - Merge the PR.
This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.