Here is what I learned about the current state of the Python API while writing an ActionPlugin for generating all of our required documents for a PCB revision:
Gerber, drill, DRC
- Works fine with Python API besides some known issues like 11562
Component placement .pos
- No Python API for having the KiCad report created, no command line interface (CLI).
- The format of the pos file can be reverse engineered and created with the raw information in Python but updates/fixes will be missed.
- No Python API for eeschema, also no CLI
- No Python API, no CLI
- A BOM.xml can be created manually with e.g. kicad_netlist_reader and then converted into the preferred format in Python.
- KiKit reads directly eeschema_v6 for the BOM, but that approach will miss changes in file format.
- I edited the code in Documents\KiCad\6.0\scripting\plugins\MyPlugin\ . When KiCad could not load the plugin due to code errors, I could not find the log/information for the cause even though it seems to exists?
A manager like 2475 would be nice but I definitely prefer a clean Python interface.