Contribute to source code, documentation, examples and report issues: https://github.com/hardbyte/python-can
Creating a Release¶
- Release from the
- Update the library version in
__init__.pyusing semantic versioning.
- Run all tests and examples against available hardware.
- Update CONTRIBUTORS.txt with any new contributors.
- Sanity check that documentation has stayed inline with code. For large changes update
- Create a temporary virtual environment. Run
python setup.py installand
python setup.py test
- Create and upload the distribution:
python setup.py sdist bdist_wheel
- Sign the packages with gpg
gpg --detach-sign -a dist/python_can-X.Y.Z-py3-none-any.whl
- Upload with twine
twine upload dist/python-can-X.Y.Z*
- In a new virtual env check that the package can be installed with pip:
pip install python-can==X.Y.Z
- Create a new tag in the repository.
- Check the release on PyPi and github.
The modules in
|interfaces||Contains interface dependent code.|
|bus||Contains the interface independent Bus object.|
|CAN||Contains modules to emulate a CAN system, such as a time stamps, read/write streams and listeners.|
|message||Contains the interface independent Message object.|
|notifier||An object which can be used to notify listeners.|
|broadcastmanager||Contains interface independent broadcast manager code.|