CLI and SDK for interacting with Substra platform.
To install the command line interface and the python sdk, run the following command:
pip install substra
To enable Bash completion, you need to put into your .bashrc:
eval "$(_SUBSTRA_COMPLETE=source substra)"
For zsh users add this to your .zshrc:
eval "$(_SUBSTRA_COMPLETE=source_zsh substra)"
From this point onwards, substra command line interface will have autocompletion enabled.
You can run the Substra platform locally on your machine using one of the two following methods:
Credentials are required for using this tool.
substra --help
import substra
client = substra.Client()
# enjoy...
Interacting with the Substra platform:
Implementing your assets in python:
- Objective base class
- Dataset base class
- Algo base class
- Composite algo base class
- Aggregate algo base class
Learning about the Substra platform:
These sets of versions have been tested for compatilibility:
substra | substra-chaincode | substra-backend | substra-tests | hlf-k8s | substra-frontend | substra-tools |
---|---|---|---|---|---|---|
0.4.0-alpha.3 |
0.0.8-alpha.6 |
0.0.12-alpha.13 |
0.2.0-alpha.1 |
0.0.11-alpha.1 |
0.0.16 |
|
0.4.0-alpha.4 |
0.0.8-alpha.9 |
0.0.12-alpha.20 |
0.2.0-alpha.2 |
0.0.11-alpha.1 |
0.0.16 |
|
0.4.0 |
0.0.8 |
0.0.12 |
0.2.0 |
0.0.11 |
0.0.16 |
|
0.5.0 |
0.0.8 |
0.0.14 |
0.3.0 |
0.0.12 |
0.0.16 |
0.5.0 |
0.6.0 |
0.0.10 |
0.0.19 |
0.4.0 |
0.0.12 |
0.0.17 |
0.5.0 |
Adding entries to the compatibility table
- Please ensure that all the tests from
substra-tests
pass
$ cd substra-tests
$ make test
- To test the front end, please refer to the front end testing checklist
To setup the project in development mode, run:
pip install -e .[test]
To run all tests, use the following command:
python setup.py test
To generate the command line interface documentation, run the following command:
python bin/generate_cli_documentation.py
Use the following command to generate the python sdk documentation (with Python 3.7):
pydocmd simple substra.sdk+ substra.sdk.Client+ > references/sdk.md
Documentation will be available in docs/ directory.
Deployment to pypi.org should be automatic thanks to Travis but if you need to do it manually, here is what you need to do:
rm -rf dist/*
python3 setup.py sdist bdist_wheel
twine upload dist/* --verbose