8.5.17. pymodaq_utils.plugin_rules module

Static rules to guide the development of a PyMoDAQ instrument plugin (pymodaq_plugins_*).

The rules read the source files of a plugin package (pyproject.toml, python modules): nothing is imported, so they also work when the instrument SDK or other dependencies are not installed. Each rule produces Finding objects with a stable code, a severity, a location and a hint about how to fix it.

Severities:

  • error: the plugin will not work or will not be seen by PyMoDAQ

  • warning: deprecated or suspicious, should be fixed

  • todo: the plugin is not finished (leftover of the template: TODO comments, placeholders, NotImplementedError)

They are used by pymodaq_utils.plugin_tools.checks but can be called directly:

from pymodaq_utils.plugin_tools.rules import check_package_sources
for finding in check_package_sources('pymodaq_plugins_xxxx'):
    print(finding)

Added in version 5.3.1.