Developer’s Overview


Contribute to source code, documentation, examples and report issues on bitbucket:

Creating a Release

  • Release from the default branch.
  • Update the library version in and in doc/ using

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 doc/history.rst - Create a temporary virtual environment. Run python install and python test - Create and upload the distribution: python sdist bdist_wheel upload --sign - In a new virtual env check that the package can be installed with pip: pip install python-can

Code Structure

The modules in python-can are:

Module Description
interfaces Contains interface dependent code.
protocols Currently just the J1939 protocol exists here
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.