In what follows python is an alias for python3.7 or pypy3.7
or any later version (python3.8, pypy3.8 and so on).
Install the latest pip & setuptools packages versions
python -m pip install --upgrade pip setuptoolsDownload and install the latest stable version from PyPI repository
python -m pip install --upgrade symbaDownload the latest version from GitHub repository
git clone https://github.com/lycantropos/symba.git
cd symbaInstall dependencies
python -m pip install -r requirements.txtInstall
python setup.py install>>> from symba.base import Expression, sqrt
>>> golden_ratio = (1 + sqrt(5)) / 2
>>> isinstance(golden_ratio, Expression)
True
>>> golden_ratio * golden_ratio == golden_ratio + 1
True
>>> 1 / golden_ratio == golden_ratio - 1
True
>>> def fibonacci(index: int) -> Expression:
... """
... Based on:
... https://en.wikipedia.org/wiki/Golden_ratio#Relationship_to_Fibonacci_sequence
... """
... golden_ratio_power = golden_ratio ** index
... return ((golden_ratio_power - (-1) ** index / golden_ratio_power)
... / sqrt(5))
>>> fibonacci(0) == 0
True
>>> fibonacci(1) == 1
True
>>> fibonacci(100) == 354224848179261915075
TrueInstall bump2version.
Choose which version number category to bump following semver specification.
Test bumping version
bump2version --dry-run --verbose $CATEGORYwhere $CATEGORY is the target version number category name, possible
values are patch/minor/major.
Bump version
bump2version --verbose $CATEGORYThis will set version to major.minor.patch-alpha.
Test bumping version
bump2version --dry-run --verbose releaseBump version
bump2version --verbose releaseThis will set version to major.minor.patch.
Install dependencies
python -m pip install -r requirements-tests.txtPlain
pytestInside Docker container:
- with
CPythondocker-compose --file docker-compose.cpython.yml up
- with
PyPydocker-compose --file docker-compose.pypy.yml up
Bash script (e.g. can be used in Git hooks):
-
with
CPython./run-tests.sh
or
./run-tests.sh cpython
-
with
PyPy./run-tests.sh pypy
PowerShell script (e.g. can be used in Git hooks):
- with
CPythonor.\run-tests.ps1.\run-tests.ps1 cpython - with
PyPy.\run-tests.ps1 pypy