Automate managing of STM32CubeMX + PlatformIO projects
patch()
method: it can intelligently parses platformio.ini
and substitutes necessary options. Patch can now be a general .INI-format configtest_get_state()
-d
as an optional argument to be able to execute a short form of the appConfigParser
to add save()
method (remove Stm32pio.save_config()
)setup.py
traceback.print
to logging
functionalityinspect.cleandoc
to place long multi-line strings in code_load_config_file()
, ProjectState.PATCHED
interpolation=None
for ConfigParser
platformio.ini
file and warn in this case on PlatformIO initialization stageconfigparser
to test project patching__main__.py
file (to run the app as module (python -m stm32pio
))Stm32pio
class representing a single project (project path as a main identifier)stm32pio.ini
where the user can set the variety of parametersstate
property calculating the estimated project state on every request to itself (beta). It is the concept for future releasesrun_editor
test is now preliminary automatically check whether an editor is installed on the machinepython app.py
(modify sys.path
to fix)main
function is now fully modular: can be run from anywhere with given CLI arguments (will be piped forward to be parsed via argparse
)stm32pio.py
-> app.py
(stm32pio is the name of the package as a whole)util.py
-> lib.py
(means main library)basicConfig
and specify separated loggers for each module insteadprint
calls leaving only logging messages (easy to turn on/off the console output in the outer code)pio_init
method and so onunittest
API.ioc
file for the latest STM32CubeMX version (5.4.0 at the moment)stm32pio
from any location.gitignore
__version__
reference--start-editor
and --with-build
can now be used both for new
and generate
commandsos.path
to pathlib
as much as possible for paths management (as a more high-level module)platformio
command (to settings
).ioc
file and clean-up the code according to the latest STM32CubeMX version (5.3.0 at the moment)util
module