Common package for communications between devices. Contains Communicator classes which can be used to build controllers to handle communications between different devices in a simple and abstracted way.
To install this package, use the commands pip install git+https://github.com/ECU-ATMAE-ROBOTICS/CommunicatorCommon
This package relies on SMBus2 and pySerial, both of which install upon installing the CommunicatorCommon Package.
Please follow the guidelines below, use the build.sh script in the root directory to confirm all requirements are met.
- We use
Blackfor Python code formatting.
- We use
pylintfor linting, with a score requirement.
- Write tests for your new features or fixes and ensure they pass.
- We use
pytestfor testing, with a coverage requirement.
Use the conventional commit format for all your commits. This helps in automating our release process and maintaining a clear history. A conventional commit message should look like this:
<type>[optional scope]: <description>
[optional body]
[optional footer(s)]Types include:
- feat: Introduces a new feature to the project.
- fix: Fixes a bug in the project.
- docs: Changes to documentation only.
- style: Code changes that do not affect the meaning (white-space, formatting, missing semi-colons, etc).
- refactor: Code changes that neither fix a bug nor add a feature.
- perf: Changes that improve performance.
- test: Adding missing tests or correcting existing tests.
- build: Updates to the build process.
- chore: Changes to auxiliary tools and libraries such as documentation generation.For more details, refer to the Conventional Commits specification.
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details. GPL-3.0 is a free, copyleft license for software and other kinds of works, providing the freedom to run, study, share, and modify the software.
For more details on the GPL-3.0 License, please refer to gnu.org/licenses/gpl-3.0.