micropython-stubber 1.23.1__tar.gz → 1.23.1.post1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (158) hide show
  1. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/PKG-INFO +30 -13
  2. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/pyproject.toml +11 -12
  3. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/readme.md +28 -11
  4. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/README.md +26 -0
  5. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/cli_download.py +1 -1
  6. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/cli_flash.py +11 -14
  7. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/cli_list.py +8 -2
  8. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/common.py +2 -1
  9. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/connected.py +2 -3
  10. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/list.py +20 -13
  11. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/mpremoteboard/__init__.py +50 -6
  12. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/pyproject.toml +1 -1
  13. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/bulk/mcu_stubber.py +28 -45
  14. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/codemod/enrich.py +1 -1
  15. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/codemod/merge_docstub.py +1 -1
  16. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/commands/build_cmd.py +1 -1
  17. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/commands/cli.py +5 -11
  18. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/commands/clone_cmd.py +1 -1
  19. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/commands/config_cmd.py +1 -1
  20. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/commands/enrich_folder_cmd.py +1 -1
  21. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/commands/get_core_cmd.py +1 -1
  22. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/commands/get_docstubs_cmd.py +5 -2
  23. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/commands/get_frozen_cmd.py +5 -2
  24. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/commands/get_mcu_cmd.py +52 -11
  25. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/commands/merge_cmd.py +1 -1
  26. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/commands/publish_cmd.py +1 -1
  27. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/commands/stub_cmd.py +1 -1
  28. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/commands/variants_cmd.py +1 -1
  29. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/downloader.py +2 -1
  30. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/freeze/common.py +7 -3
  31. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/freeze/freeze_folder.py +2 -2
  32. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/freeze/freeze_manifest_2.py +19 -6
  33. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/freeze/get_frozen.py +7 -3
  34. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/get_cpython.py +15 -4
  35. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/minify.py +7 -3
  36. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/publish/candidates.py +26 -7
  37. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/publish/merge_docstubs.py +4 -2
  38. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/publish/missing_class_methods.py +4 -2
  39. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/publish/package.py +7 -3
  40. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/publish/pathnames.py +1 -1
  41. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/publish/publish.py +1 -1
  42. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/publish/pypi.py +6 -2
  43. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/publish/stubpackage.py +40 -16
  44. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/rst/classsort.py +2 -1
  45. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/rst/lookup.py +1 -0
  46. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/rst/reader.py +7 -7
  47. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/rst/report_return.py +12 -4
  48. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/rst/rst_utils.py +2 -1
  49. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/stubs_from_docs.py +1 -1
  50. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/tools/manifestfile.py +1 -1
  51. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/update_fallback.py +1 -1
  52. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/update_module_list.py +1 -1
  53. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/utils/config.py +19 -7
  54. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/utils/post.py +2 -1
  55. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/utils/repos.py +9 -3
  56. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/utils/stubmaker.py +1 -1
  57. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/utils/typed_config_toml.py +5 -2
  58. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/variants.py +1 -1
  59. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/LICENSE +0 -0
  60. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/basicgit.py +0 -0
  61. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/libusb_flash.ipynb +0 -0
  62. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/__init__.py +0 -0
  63. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/add_firmware.py +0 -0
  64. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/ask_input.py +0 -0
  65. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/basicgit.py +0 -0
  66. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/bootloader/__init__.py +0 -0
  67. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/bootloader/activate.py +0 -0
  68. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/bootloader/detect.py +0 -0
  69. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/bootloader/manual.py +0 -0
  70. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/bootloader/micropython.py +0 -0
  71. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/bootloader/touch1200.py +0 -0
  72. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/cli_group.py +0 -0
  73. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/cli_main.py +0 -0
  74. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/config.py +0 -0
  75. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/download.py +0 -0
  76. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/downloaded.py +0 -0
  77. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/errors.py +0 -0
  78. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/flash/__init__.py +0 -0
  79. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/flash/esp.py +0 -0
  80. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/flash/stm32.py +0 -0
  81. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/flash/stm32_dfu.py +0 -0
  82. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/flash/uf2/__init__.py +0 -0
  83. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/flash/uf2/boardid.py +0 -0
  84. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/flash/uf2/linux.py +0 -0
  85. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/flash/uf2/macos.py +0 -0
  86. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/flash/uf2/uf2disk.py +0 -0
  87. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/flash/uf2/windows.py +0 -0
  88. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/flash/worklist.py +0 -0
  89. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/logger.py +0 -0
  90. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/mpboard_id/__init__.py +0 -0
  91. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/mpboard_id/add_boards.py +0 -0
  92. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/mpboard_id/board.py +0 -0
  93. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/mpboard_id/board_id.py +0 -0
  94. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/mpboard_id/board_info.zip +0 -0
  95. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/mpboard_id/store.py +0 -0
  96. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/mpremoteboard/mpy_fw_info.py +0 -0
  97. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/mpremoteboard/runner.py +0 -0
  98. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/vendor/click_aliases.py +0 -0
  99. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/vendor/dfu.py +0 -0
  100. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/vendor/pydfu.py +0 -0
  101. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/vendor/readme.md +0 -0
  102. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/mpflash/versions.py +0 -0
  103. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/poetry.lock +0 -0
  104. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/mpflash/stm32_udev_rules.md +0 -0
  105. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/__init__.py +0 -0
  106. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/board/board_info.csv +0 -0
  107. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/board/boot.py +0 -0
  108. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/board/createstubs.py +0 -0
  109. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/board/createstubs_db.py +0 -0
  110. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/board/createstubs_db_min.py +0 -0
  111. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/board/createstubs_db_mpy.mpy +0 -0
  112. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/board/createstubs_lvgl.py +0 -0
  113. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/board/createstubs_lvgl_min.py +0 -0
  114. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/board/createstubs_lvgl_mpy.mpy +0 -0
  115. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/board/createstubs_mem.py +0 -0
  116. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/board/createstubs_mem_min.py +0 -0
  117. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/board/createstubs_mem_mpy.mpy +0 -0
  118. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/board/createstubs_min.py +0 -0
  119. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/board/createstubs_mpy.mpy +0 -0
  120. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/board/fw_info.py +0 -0
  121. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/board/info.py +0 -0
  122. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/board/main.py +0 -0
  123. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/board/modulelist.txt +0 -0
  124. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/board/pyrightconfig.json +0 -0
  125. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/codemod/__init__.py +0 -0
  126. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/codemod/_partials/__init__.py +0 -0
  127. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/codemod/_partials/db_main.py +0 -0
  128. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/codemod/_partials/lvgl_main.py +0 -0
  129. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/codemod/_partials/modules_reader.py +0 -0
  130. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/codemod/add_comment.py +0 -0
  131. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/codemod/add_method.py +0 -0
  132. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/codemod/board.py +0 -0
  133. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/codemod/modify_list.py +0 -0
  134. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/codemod/utils.py +0 -0
  135. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/commands/__init__.py +0 -0
  136. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/commands/switch_cmd.py +0 -0
  137. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/cst_transformer.py +0 -0
  138. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/data/board_info.csv +0 -0
  139. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/data/board_info.json +0 -0
  140. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/data/micropython_tags.csv +0 -0
  141. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/data/requirements-core-micropython.txt +0 -0
  142. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/data/requirements-core-pycopy.txt +0 -0
  143. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/freeze/__init__.py +0 -0
  144. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/get_lobo.py +0 -0
  145. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/publish/__init__.py +0 -0
  146. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/publish/bump.py +0 -0
  147. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/publish/database.py +0 -0
  148. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/publish/defaults.py +0 -0
  149. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/publish/enums.py +0 -0
  150. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/publish/helpers.py +0 -0
  151. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/rst/__init__.py +0 -0
  152. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/rst/output_dict.py +0 -0
  153. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/stubber.py +0 -0
  154. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/tools/__init__.py +0 -0
  155. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/tools/readme.md +0 -0
  156. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/utils/__init__.py +0 -0
  157. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/utils/makeversionhdr.py +0 -0
  158. {micropython_stubber-1.23.1 → micropython_stubber-1.23.1.post1}/src/stubber/utils/manifest.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: micropython-stubber
3
- Version: 1.23.1
3
+ Version: 1.23.1.post1
4
4
  Summary: Tooling to create and maintain stubs for MicroPython
5
5
  Home-page: https://github.com/Josverl/micropython-stubber#readme
6
6
  License: MIT
@@ -26,7 +26,7 @@ Requires-Dist: executing (>=2.0.1,<3.0.0)
26
26
  Requires-Dist: importlib-metadata (>=1.0,<2.0) ; python_version < "3.8"
27
27
  Requires-Dist: libcst (>=1.1.0,<2.0.0)
28
28
  Requires-Dist: loguru (>=0.6,<0.8)
29
- Requires-Dist: mpflash (==0.9.1.post2)
29
+ Requires-Dist: mpflash (>=1.0.0,<2.0.0)
30
30
  Requires-Dist: mpremote (>=1.23.0,<2.0.0)
31
31
  Requires-Dist: mypy (==1.9.0)
32
32
  Requires-Dist: mypy-gitlab-code-quality (>=1.1.0,<2.0.0)
@@ -172,7 +172,7 @@ for more info see [**Renaming a branch**](https://docs.github.com/en/repositorie
172
172
 
173
173
  ## Licensing
174
174
 
175
- MicroPython-Stubber is licensed under the MIT license, and all contributions should follow this [LICENSE](LICENSE).
175
+ Both `MicroPython-Stubber` and `mpflash` are licensed under the MIT license, and all contributions should follow this [LICENSE](LICENSE).
176
176
 
177
177
 
178
178
  # Contributions
@@ -184,35 +184,52 @@ MicroPython-Stubber is licensed under the MIT license, and all contributions sho
184
184
  <table>
185
185
  <tbody>
186
186
  <tr>
187
- <td align="center" valign="top" width="14.28%"><a href="https://github.com/Josverl"><img src="https://avatars2.githubusercontent.com/u/981654?v=4?s=100" width="100px;" alt="Jos Verlinde"/><br /><sub><b>Jos Verlinde</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/commits?author=josverl" title="Code">💻</a> <a href="#research-josverl" title="Research">🔬</a> <a href="#ideas-josverl" title="Ideas, Planning, & Feedback">🤔</a> <a href="#content-josverl" title="Content">🖋</a> <a href="#stubs-josverl" title="MicroPython stubs">📚</a> <a href="#test-josverl" title="Test">✔</a></td>
187
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/Josverl"><img src="https://avatars2.githubusercontent.com/u/981654?v=4?s=100" width="100px;" alt="Jos Verlinde"/><br /><sub><b>Jos Verlinde</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/commits?author=josverl" title="Code">💻</a> <a href="#research-josverl" title="Research">🔬</a> <a href="#ideas-josverl" title="Ideas, Planning, & Feedback">🤔</a> <a href="#content-josverl" title="Content">🖋</a> <a href="#stubs-josverl" title="MicroPython stubs">🖍️</a> <a href="#test-josverl" title="Test">✅</a> <a href="#mpflash-josverl" title="mpflash">💥</a></td>
188
188
  <td align="center" valign="top" width="14.28%"><a href="https://thonny.org/"><img src="https://avatars1.githubusercontent.com/u/46202078?v=4?s=100" width="100px;" alt="Thonny, Python IDE for beginners"/><br /><sub><b>Thonny, Python IDE for beginners</b></sub></a><br /><a href="#ideas-thonny" title="Ideas, Planning, & Feedback">🤔</a> <a href="#research-thonny" title="Research">🔬</a></td>
189
- <td align="center" valign="top" width="14.28%"><a href="https://micropython.org/"><img src="https://avatars1.githubusercontent.com/u/6298560?v=4?s=100" width="100px;" alt="MicroPython"/><br /><sub><b>MicroPython</b></sub></a><br /><a href="#data-micropython" title="Data">🔣</a> <a href="#stubs-micropython" title="MicroPython stubs">📚</a></td>
189
+ <td align="center" valign="top" width="14.28%"><a href="https://micropython.org/"><img src="https://avatars1.githubusercontent.com/u/6298560?v=4?s=100" width="100px;" alt="MicroPython"/><br /><sub><b>MicroPython</b></sub></a><br /><a href="#data-micropython" title="Data">🔣</a> <a href="#stubs-micropython" title="MicroPython stubs">🖍️</a></td>
190
190
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/microsoft/pyright"><img src="https://avatars.githubusercontent.com/u/6154722?v=4?s=100" width="100px;" alt="pyright"/><br /><sub><b>pyright</b></sub></a><br /><a href="#tool-pyright" title="Tools">🔧</a></td>
191
- <td align="center" valign="top" width="14.28%"><a href="https://github.com/loboris"><img src="https://avatars3.githubusercontent.com/u/6280349?v=4?s=100" width="100px;" alt="Boris Lovosevic"/><br /><sub><b>Boris Lovosevic</b></sub></a><br /><a href="#data-loboris" title="Data">🔣</a> <a href="#stubs-loboris" title="MicroPython stubs">📚</a></td>
192
- <td align="center" valign="top" width="14.28%"><a href="https://github.com/pfalcon"><img src="https://avatars3.githubusercontent.com/u/500451?v=4?s=100" width="100px;" alt="Paul Sokolovsky"/><br /><sub><b>Paul Sokolovsky</b></sub></a><br /><a href="#data-pfalcon" title="Data">🔣</a> <a href="#stubs-pfalcon" title="MicroPython stubs">📚</a></td>
193
- <td align="center" valign="top" width="14.28%"><a href="https://github.com/pycopy"><img src="https://avatars0.githubusercontent.com/u/67273174?v=4?s=100" width="100px;" alt="pycopy"/><br /><sub><b>pycopy</b></sub></a><br /><a href="#data-pycopy" title="Data">🔣</a> <a href="#stubs-pycopy" title="MicroPython stubs">📚</a></td>
191
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/loboris"><img src="https://avatars3.githubusercontent.com/u/6280349?v=4?s=100" width="100px;" alt="Boris Lovosevic"/><br /><sub><b>Boris Lovosevic</b></sub></a><br /><a href="#data-loboris" title="Data">🔣</a> <a href="#stubs-loboris" title="MicroPython stubs">🖍️</a></td>
192
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/pfalcon"><img src="https://avatars3.githubusercontent.com/u/500451?v=4?s=100" width="100px;" alt="Paul Sokolovsky"/><br /><sub><b>Paul Sokolovsky</b></sub></a><br /><a href="#data-pfalcon" title="Data">🔣</a> <a href="#stubs-pfalcon" title="MicroPython stubs">🖍️</a></td>
193
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/pycopy"><img src="https://avatars0.githubusercontent.com/u/67273174?v=4?s=100" width="100px;" alt="pycopy"/><br /><sub><b>pycopy</b></sub></a><br /><a href="#data-pycopy" title="Data">🔣</a> <a href="#stubs-pycopy" title="MicroPython stubs">🖍️</a></td>
194
194
  </tr>
195
195
  <tr>
196
196
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/pycom"><img src="https://avatars2.githubusercontent.com/u/16415153?v=4?s=100" width="100px;" alt="Pycom"/><br /><sub><b>Pycom</b></sub></a><br /><a href="#infra-pycom" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a></td>
197
- <td align="center" valign="top" width="14.28%"><a href="https://github.com/BradenM"><img src="https://avatars1.githubusercontent.com/u/5913808?v=4?s=100" width="100px;" alt="Braden Mars"/><br /><sub><b>Braden Mars</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3ABradenM" title="Bug reports">🐛</a> <a href="https://github.com/Josverl/micropython-stubber/commits?author=BradenM" title="Code">💻</a> <a href="#stubs-BradenM" title="MicroPython stubs">📚</a> <a href="#platform-BradenM" title="Packaging/porting to new platform">📦</a></td>
197
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/BradenM"><img src="https://avatars1.githubusercontent.com/u/5913808?v=4?s=100" width="100px;" alt="Braden Mars"/><br /><sub><b>Braden Mars</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3ABradenM" title="Bug reports">🐛</a> <a href="https://github.com/Josverl/micropython-stubber/commits?author=BradenM" title="Code">💻</a> <a href="#stubs-BradenM" title="MicroPython stubs">🖍️</a> <a href="#platform-BradenM" title="Packaging/porting to new platform">📦</a></td>
198
198
  <td align="center" valign="top" width="14.28%"><a href="https://binary.com.au/"><img src="https://avatars2.githubusercontent.com/u/175909?v=4?s=100" width="100px;" alt="James Manners"/><br /><sub><b>James Manners</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/commits?author=jmannau" title="Code">💻</a> <a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3Ajmannau" title="Bug reports">🐛</a></td>
199
- <td align="center" valign="top" width="14.28%"><a href="http://patrickwalters.us/"><img src="https://avatars0.githubusercontent.com/u/4002194?v=4?s=100" width="100px;" alt="Patrick"/><br /><sub><b>Patrick</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3Aaskpatrickw" title="Bug reports">🐛</a> <a href="https://github.com/Josverl/micropython-stubber/commits?author=askpatrickw" title="Code">💻</a> <a href="#stubs-askpatrickw" title="MicroPython stubs">📚</a></td>
199
+ <td align="center" valign="top" width="14.28%"><a href="http://patrickwalters.us/"><img src="https://avatars0.githubusercontent.com/u/4002194?v=4?s=100" width="100px;" alt="Patrick"/><br /><sub><b>Patrick</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3Aaskpatrickw" title="Bug reports">🐛</a> <a href="https://github.com/Josverl/micropython-stubber/commits?author=askpatrickw" title="Code">💻</a> <a href="#stubs-askpatrickw" title="MicroPython stubs">🖍️</a></td>
200
200
  <td align="center" valign="top" width="14.28%"><a href="https://opencollective.com/pythonseverywhere"><img src="https://avatars3.githubusercontent.com/u/16009100?v=4?s=100" width="100px;" alt="Paul m. p. P."/><br /><sub><b>Paul m. p. P.</b></sub></a><br /><a href="#ideas-pmp-p" title="Ideas, Planning, & Feedback">🤔</a> <a href="#research-pmp-p" title="Research">🔬</a></td>
201
201
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/edreamleo"><img src="https://avatars0.githubusercontent.com/u/592928?v=4?s=100" width="100px;" alt="Edward K. Ream"/><br /><sub><b>Edward K. Ream</b></sub></a><br /><a href="#plugin-edreamleo" title="Plugin/utility libraries">🔌</a></td>
202
- <td align="center" valign="top" width="14.28%"><a href="https://github.com/dastultz"><img src="https://avatars3.githubusercontent.com/u/4334042?v=4?s=100" width="100px;" alt="Daryl Stultz"/><br /><sub><b>Daryl Stultz</b></sub></a><br /><a href="#stubs-dastultz" title="MicroPython stubs">📚</a></td>
202
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/dastultz"><img src="https://avatars3.githubusercontent.com/u/4334042?v=4?s=100" width="100px;" alt="Daryl Stultz"/><br /><sub><b>Daryl Stultz</b></sub></a><br /><a href="#stubs-dastultz" title="MicroPython stubs">🖍️</a></td>
203
203
  </tr>
204
204
  <tr>
205
205
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/cabletie"><img src="https://avatars1.githubusercontent.com/u/2356734?v=4?s=100" width="100px;" alt="Keeping things together"/><br /><sub><b>Keeping things together</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3Acabletie" title="Bug reports">🐛</a></td>
206
- <td align="center" valign="top" width="14.28%"><a href="https://github.com/vbolshakov"><img src="https://avatars2.githubusercontent.com/u/2453324?v=4?s=100" width="100px;" alt="vbolshakov"/><br /><sub><b>vbolshakov</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3Avbolshakov" title="Bug reports">🐛</a> <a href="#stubs-vbolshakov" title="MicroPython stubs">📚</a></td>
206
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/vbolshakov"><img src="https://avatars2.githubusercontent.com/u/2453324?v=4?s=100" width="100px;" alt="vbolshakov"/><br /><sub><b>vbolshakov</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3Avbolshakov" title="Bug reports">🐛</a> <a href="#stubs-vbolshakov" title="MicroPython stubs">🖍️</a></td>
207
207
  <td align="center" valign="top" width="14.28%"><a href="https://lemariva.com/"><img src="https://avatars2.githubusercontent.com/u/15173329?v=4?s=100" width="100px;" alt="Mauro Riva"/><br /><sub><b>Mauro Riva</b></sub></a><br /><a href="#blog-lemariva" title="Blogposts">📝</a> <a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3Alemariva" title="Bug reports">🐛</a></td>
208
208
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/MathijsNL"><img src="https://avatars0.githubusercontent.com/u/1612886?v=4?s=100" width="100px;" alt="MathijsNL"/><br /><sub><b>MathijsNL</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3AMathijsNL" title="Bug reports">🐛</a></td>
209
- <td align="center" valign="top" width="14.28%"><a href="http://comingsoon.tm/"><img src="https://avatars0.githubusercontent.com/u/13251689?v=4?s=100" width="100px;" alt="Callum Jacob Hays"/><br /><sub><b>Callum Jacob Hays</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3ACallumJHays" title="Bug reports">🐛</a> <a href="#test-CallumJHays" title="Test">✔</a></td>
209
+ <td align="center" valign="top" width="14.28%"><a href="http://comingsoon.tm/"><img src="https://avatars0.githubusercontent.com/u/13251689?v=4?s=100" width="100px;" alt="Callum Jacob Hays"/><br /><sub><b>Callum Jacob Hays</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3ACallumJHays" title="Bug reports">🐛</a> <a href="#test-CallumJHays" title="Test">✅</a></td>
210
210
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/v923z"><img src="https://avatars0.githubusercontent.com/u/1310472?v=4?s=100" width="100px;" alt="Zoltán Vörös"/><br /><sub><b>Zoltán Vörös</b></sub></a><br /><a href="#data-v923z" title="Data">🔣</a></td>
211
211
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/vincent-l-j"><img src="https://avatars.githubusercontent.com/u/20021376?v=4?s=100" width="100px;" alt="vincent-l-j"/><br /><sub><b>vincent-l-j</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/commits?author=vincent-l-j" title="Documentation">📖</a></td>
212
212
  </tr>
213
213
  <tr>
214
214
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/yegorLitvinov"><img src="https://avatars.githubusercontent.com/u/20367310?v=4?s=100" width="100px;" alt="Egor Litvinov"/><br /><sub><b>Egor Litvinov</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3AyegorLitvinov" title="Bug reports">🐛</a></td>
215
215
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/samskiter"><img src="https://avatars.githubusercontent.com/u/1271643?v=4?s=100" width="100px;" alt="Sam Duke"/><br /><sub><b>Sam Duke</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/commits?author=samskiter" title="Code">💻</a></td>
216
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/shariltumin"><img src="https://avatars.githubusercontent.com/u/186120?v=4?s=100" width="100px;" alt="shariltumin"/><br /><sub><b>shariltumin</b></sub></a><br /><a href="#mpflash-shariltumin" title="mpflash">💥</a> <a href="#test-shariltumin" title="Test">✅</a></td>
217
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/mattytrentini"><img src="https://avatars.githubusercontent.com/u/194201?v=4?s=100" width="100px;" alt="Matt Trentini"/><br /><sub><b>Matt Trentini</b></sub></a><br /><a href="#mpflash-mattytrentini" title="mpflash">💥</a> <a href="#test-mattytrentini" title="Test">✅</a></td>
218
+ <td align="center" valign="top" width="14.28%"><a href="http://scruss.com/blog/"><img src="https://avatars.githubusercontent.com/u/425706?v=4?s=100" width="100px;" alt="Stewart Russell"/><br /><sub><b>Stewart Russell</b></sub></a><br /><a href="#mpflash-scruss" title="mpflash">💥</a> <a href="#test-scruss" title="Test">✅</a></td>
219
+ <td align="center" valign="top" width="14.28%"><a href="https://www.gitlab.com/alelec"><img src="https://avatars.githubusercontent.com/u/3318786?v=4?s=100" width="100px;" alt="Andrew Leech"/><br /><sub><b>Andrew Leech</b></sub></a><br /><a href="#mpflash-andrewleech" title="mpflash">💥</a> <a href="#test-andrewleech" title="Test">✅</a></td>
220
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/wovo"><img src="https://avatars.githubusercontent.com/u/9039468?v=4?s=100" width="100px;" alt="Wouter van Ooijen"/><br /><sub><b>Wouter van Ooijen</b></sub></a><br /><a href="#mpflash-wovo" title="mpflash">💥</a> <a href="#test-wovo" title="Test">✅</a></td>
221
+ </tr>
222
+ <tr>
223
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/shaneapowell"><img src="https://avatars.githubusercontent.com/u/12113620?v=4?s=100" width="100px;" alt="Shane Powell"/><br /><sub><b>Shane Powell</b></sub></a><br /><a href="#mpflash-shaneapowell" title="mpflash">💥</a> <a href="#test-shaneapowell" title="Test">✅</a></td>
224
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/robert-hh"><img src="https://avatars.githubusercontent.com/u/12476868?v=4?s=100" width="100px;" alt="Robert Hammelrath"/><br /><sub><b>Robert Hammelrath</b></sub></a><br /><a href="#mpflash-robert-hh" title="mpflash">💥</a> <a href="#test-robert-hh" title="Test">✅</a></td>
225
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/beetlegigg"><img src="https://avatars.githubusercontent.com/u/34552737?v=4?s=100" width="100px;" alt="Bg"/><br /><sub><b>Bg</b></sub></a><br /><a href="#mpflash-beetlegigg" title="mpflash">💥</a> <a href="#test-beetlegigg" title="Test">✅</a></td>
226
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/rkompass"><img src="https://avatars.githubusercontent.com/u/90282516?v=4?s=100" width="100px;" alt="Raul Kompaß"/><br /><sub><b>Raul Kompaß</b></sub></a><br /><a href="#mpflash-rkompass" title="mpflash">💥</a> <a href="#test-rkompass" title="Test">✅</a></td>
227
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/garryp4"><img src="https://avatars.githubusercontent.com/u/96994876?v=4?s=100" width="100px;" alt="garryp4"/><br /><sub><b>garryp4</b></sub></a><br /><a href="#mpflash-garryp4" title="mpflash">💥</a> <a href="#test-garryp4" title="Test">✅</a></td>
228
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/shanepowell-ast"><img src="https://avatars.githubusercontent.com/u/102747617?v=4?s=100" width="100px;" alt="Shane Powell"/><br /><sub><b>Shane Powell</b></sub></a><br /><a href="#mpflash-shanepowell-ast" title="mpflash">💥</a> <a href="#test-shanepowell-ast" title="Test">✅</a></td>
229
+ <td align="center" valign="top" width="14.28%"><a href="https://andypiper.org/"><img src="https://avatars.githubusercontent.com/u/552452?v=4?s=100" width="100px;" alt="Andy Piper"/><br /><sub><b>Andy Piper</b></sub></a><br /><a href="#mpflash-andypiper" title="mpflash">💥</a> <a href="#test-andypiper" title="Test">✅</a></td>
230
+ </tr>
231
+ <tr>
232
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/DavesCodeMusings"><img src="https://avatars.githubusercontent.com/u/61114342?v=4?s=100" width="100px;" alt="David Horton"/><br /><sub><b>David Horton</b></sub></a><br /><a href="#mpflash-DavesCodeMusings" title="mpflash">💥</a> <a href="#test-DavesCodeMusings" title="Test">✅</a></td>
216
233
  </tr>
217
234
  </tbody>
218
235
  </table>
@@ -8,7 +8,7 @@ repo-path = "./repos"
8
8
 
9
9
  [tool.poetry]
10
10
  name = "micropython-stubber"
11
- version = "1.23.1"
11
+ version = "1.23.1post1"
12
12
  description = "Tooling to create and maintain stubs for MicroPython"
13
13
  authors = ["Jos Verlinde <jos_verlinde@hotmail.com>"]
14
14
  license = "MIT"
@@ -43,13 +43,15 @@ exclude = [
43
43
 
44
44
  [tool.poetry.scripts]
45
45
  stubber = "stubber.stubber:stubber_cli"
46
+ mpflash = "mpflash.cli_main:mpflash"
47
+ mpremote = "mpremote.main:main"
46
48
 
47
49
  [tool.poetry.dependencies]
48
50
  python = ">=3.9,<4.0"
49
51
  python-minifier = { version = "^2.7.0", python = "<3.12" } # no support for 3.12 yet
50
52
  requests = "^2.32.3"
51
53
  mypy = "1.9.0"
52
- mpflash = "0.9.1.post2"
54
+ mpflash = "^1.0.0"
53
55
  mpremote = "^1.23.0"
54
56
  # others
55
57
  autoflake = ">=1.7,<3.0"
@@ -143,7 +145,7 @@ exclude = [
143
145
 
144
146
  "**/all-stubs",
145
147
  "src/stubber/board/stubs",
146
- "**/.venv"
148
+ "**/.venv",
147
149
  ]
148
150
  ignore = [
149
151
  "tests/mocks",
@@ -221,12 +223,12 @@ minversion = "7.0"
221
223
  python_functions = ["test_", "*_test"]
222
224
  python_files = ["test_*.py", "*_test.py"]
223
225
  testpaths = [
224
- "tests",
225
- "src/stubber",
226
- "src/mpflash",
227
- "repos/micropython-stubs/tests",
226
+ "tests",
227
+ "src/stubber",
228
+ "src/mpflash",
229
+ "repos/micropython-stubs/tests",
228
230
  "modules/**/tests",
229
- ]
231
+ ]
230
232
  norecursedirs = [
231
233
  ".*",
232
234
  ".*/*",
@@ -278,10 +280,7 @@ markers = [
278
280
  [tool.coverage.run]
279
281
  parallel = false
280
282
  branch = true
281
- source = [
282
- "src/stubber",
283
- "src/mpflash",
284
- ]
283
+ source = ["src/stubber", "src/mpflash"]
285
284
  omit = [
286
285
  # helper files in board
287
286
  "*/boot.py",
@@ -120,7 +120,7 @@ for more info see [**Renaming a branch**](https://docs.github.com/en/repositorie
120
120
 
121
121
  ## Licensing
122
122
 
123
- MicroPython-Stubber is licensed under the MIT license, and all contributions should follow this [LICENSE](LICENSE).
123
+ Both `MicroPython-Stubber` and `mpflash` are licensed under the MIT license, and all contributions should follow this [LICENSE](LICENSE).
124
124
 
125
125
 
126
126
  # Contributions
@@ -132,35 +132,52 @@ MicroPython-Stubber is licensed under the MIT license, and all contributions sho
132
132
  <table>
133
133
  <tbody>
134
134
  <tr>
135
- <td align="center" valign="top" width="14.28%"><a href="https://github.com/Josverl"><img src="https://avatars2.githubusercontent.com/u/981654?v=4?s=100" width="100px;" alt="Jos Verlinde"/><br /><sub><b>Jos Verlinde</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/commits?author=josverl" title="Code">💻</a> <a href="#research-josverl" title="Research">🔬</a> <a href="#ideas-josverl" title="Ideas, Planning, & Feedback">🤔</a> <a href="#content-josverl" title="Content">🖋</a> <a href="#stubs-josverl" title="MicroPython stubs">📚</a> <a href="#test-josverl" title="Test">✔</a></td>
135
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/Josverl"><img src="https://avatars2.githubusercontent.com/u/981654?v=4?s=100" width="100px;" alt="Jos Verlinde"/><br /><sub><b>Jos Verlinde</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/commits?author=josverl" title="Code">💻</a> <a href="#research-josverl" title="Research">🔬</a> <a href="#ideas-josverl" title="Ideas, Planning, & Feedback">🤔</a> <a href="#content-josverl" title="Content">🖋</a> <a href="#stubs-josverl" title="MicroPython stubs">🖍️</a> <a href="#test-josverl" title="Test">✅</a> <a href="#mpflash-josverl" title="mpflash">💥</a></td>
136
136
  <td align="center" valign="top" width="14.28%"><a href="https://thonny.org/"><img src="https://avatars1.githubusercontent.com/u/46202078?v=4?s=100" width="100px;" alt="Thonny, Python IDE for beginners"/><br /><sub><b>Thonny, Python IDE for beginners</b></sub></a><br /><a href="#ideas-thonny" title="Ideas, Planning, & Feedback">🤔</a> <a href="#research-thonny" title="Research">🔬</a></td>
137
- <td align="center" valign="top" width="14.28%"><a href="https://micropython.org/"><img src="https://avatars1.githubusercontent.com/u/6298560?v=4?s=100" width="100px;" alt="MicroPython"/><br /><sub><b>MicroPython</b></sub></a><br /><a href="#data-micropython" title="Data">🔣</a> <a href="#stubs-micropython" title="MicroPython stubs">📚</a></td>
137
+ <td align="center" valign="top" width="14.28%"><a href="https://micropython.org/"><img src="https://avatars1.githubusercontent.com/u/6298560?v=4?s=100" width="100px;" alt="MicroPython"/><br /><sub><b>MicroPython</b></sub></a><br /><a href="#data-micropython" title="Data">🔣</a> <a href="#stubs-micropython" title="MicroPython stubs">🖍️</a></td>
138
138
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/microsoft/pyright"><img src="https://avatars.githubusercontent.com/u/6154722?v=4?s=100" width="100px;" alt="pyright"/><br /><sub><b>pyright</b></sub></a><br /><a href="#tool-pyright" title="Tools">🔧</a></td>
139
- <td align="center" valign="top" width="14.28%"><a href="https://github.com/loboris"><img src="https://avatars3.githubusercontent.com/u/6280349?v=4?s=100" width="100px;" alt="Boris Lovosevic"/><br /><sub><b>Boris Lovosevic</b></sub></a><br /><a href="#data-loboris" title="Data">🔣</a> <a href="#stubs-loboris" title="MicroPython stubs">📚</a></td>
140
- <td align="center" valign="top" width="14.28%"><a href="https://github.com/pfalcon"><img src="https://avatars3.githubusercontent.com/u/500451?v=4?s=100" width="100px;" alt="Paul Sokolovsky"/><br /><sub><b>Paul Sokolovsky</b></sub></a><br /><a href="#data-pfalcon" title="Data">🔣</a> <a href="#stubs-pfalcon" title="MicroPython stubs">📚</a></td>
141
- <td align="center" valign="top" width="14.28%"><a href="https://github.com/pycopy"><img src="https://avatars0.githubusercontent.com/u/67273174?v=4?s=100" width="100px;" alt="pycopy"/><br /><sub><b>pycopy</b></sub></a><br /><a href="#data-pycopy" title="Data">🔣</a> <a href="#stubs-pycopy" title="MicroPython stubs">📚</a></td>
139
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/loboris"><img src="https://avatars3.githubusercontent.com/u/6280349?v=4?s=100" width="100px;" alt="Boris Lovosevic"/><br /><sub><b>Boris Lovosevic</b></sub></a><br /><a href="#data-loboris" title="Data">🔣</a> <a href="#stubs-loboris" title="MicroPython stubs">🖍️</a></td>
140
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/pfalcon"><img src="https://avatars3.githubusercontent.com/u/500451?v=4?s=100" width="100px;" alt="Paul Sokolovsky"/><br /><sub><b>Paul Sokolovsky</b></sub></a><br /><a href="#data-pfalcon" title="Data">🔣</a> <a href="#stubs-pfalcon" title="MicroPython stubs">🖍️</a></td>
141
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/pycopy"><img src="https://avatars0.githubusercontent.com/u/67273174?v=4?s=100" width="100px;" alt="pycopy"/><br /><sub><b>pycopy</b></sub></a><br /><a href="#data-pycopy" title="Data">🔣</a> <a href="#stubs-pycopy" title="MicroPython stubs">🖍️</a></td>
142
142
  </tr>
143
143
  <tr>
144
144
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/pycom"><img src="https://avatars2.githubusercontent.com/u/16415153?v=4?s=100" width="100px;" alt="Pycom"/><br /><sub><b>Pycom</b></sub></a><br /><a href="#infra-pycom" title="Infrastructure (Hosting, Build-Tools, etc)">🚇</a></td>
145
- <td align="center" valign="top" width="14.28%"><a href="https://github.com/BradenM"><img src="https://avatars1.githubusercontent.com/u/5913808?v=4?s=100" width="100px;" alt="Braden Mars"/><br /><sub><b>Braden Mars</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3ABradenM" title="Bug reports">🐛</a> <a href="https://github.com/Josverl/micropython-stubber/commits?author=BradenM" title="Code">💻</a> <a href="#stubs-BradenM" title="MicroPython stubs">📚</a> <a href="#platform-BradenM" title="Packaging/porting to new platform">📦</a></td>
145
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/BradenM"><img src="https://avatars1.githubusercontent.com/u/5913808?v=4?s=100" width="100px;" alt="Braden Mars"/><br /><sub><b>Braden Mars</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3ABradenM" title="Bug reports">🐛</a> <a href="https://github.com/Josverl/micropython-stubber/commits?author=BradenM" title="Code">💻</a> <a href="#stubs-BradenM" title="MicroPython stubs">🖍️</a> <a href="#platform-BradenM" title="Packaging/porting to new platform">📦</a></td>
146
146
  <td align="center" valign="top" width="14.28%"><a href="https://binary.com.au/"><img src="https://avatars2.githubusercontent.com/u/175909?v=4?s=100" width="100px;" alt="James Manners"/><br /><sub><b>James Manners</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/commits?author=jmannau" title="Code">💻</a> <a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3Ajmannau" title="Bug reports">🐛</a></td>
147
- <td align="center" valign="top" width="14.28%"><a href="http://patrickwalters.us/"><img src="https://avatars0.githubusercontent.com/u/4002194?v=4?s=100" width="100px;" alt="Patrick"/><br /><sub><b>Patrick</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3Aaskpatrickw" title="Bug reports">🐛</a> <a href="https://github.com/Josverl/micropython-stubber/commits?author=askpatrickw" title="Code">💻</a> <a href="#stubs-askpatrickw" title="MicroPython stubs">📚</a></td>
147
+ <td align="center" valign="top" width="14.28%"><a href="http://patrickwalters.us/"><img src="https://avatars0.githubusercontent.com/u/4002194?v=4?s=100" width="100px;" alt="Patrick"/><br /><sub><b>Patrick</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3Aaskpatrickw" title="Bug reports">🐛</a> <a href="https://github.com/Josverl/micropython-stubber/commits?author=askpatrickw" title="Code">💻</a> <a href="#stubs-askpatrickw" title="MicroPython stubs">🖍️</a></td>
148
148
  <td align="center" valign="top" width="14.28%"><a href="https://opencollective.com/pythonseverywhere"><img src="https://avatars3.githubusercontent.com/u/16009100?v=4?s=100" width="100px;" alt="Paul m. p. P."/><br /><sub><b>Paul m. p. P.</b></sub></a><br /><a href="#ideas-pmp-p" title="Ideas, Planning, & Feedback">🤔</a> <a href="#research-pmp-p" title="Research">🔬</a></td>
149
149
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/edreamleo"><img src="https://avatars0.githubusercontent.com/u/592928?v=4?s=100" width="100px;" alt="Edward K. Ream"/><br /><sub><b>Edward K. Ream</b></sub></a><br /><a href="#plugin-edreamleo" title="Plugin/utility libraries">🔌</a></td>
150
- <td align="center" valign="top" width="14.28%"><a href="https://github.com/dastultz"><img src="https://avatars3.githubusercontent.com/u/4334042?v=4?s=100" width="100px;" alt="Daryl Stultz"/><br /><sub><b>Daryl Stultz</b></sub></a><br /><a href="#stubs-dastultz" title="MicroPython stubs">📚</a></td>
150
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/dastultz"><img src="https://avatars3.githubusercontent.com/u/4334042?v=4?s=100" width="100px;" alt="Daryl Stultz"/><br /><sub><b>Daryl Stultz</b></sub></a><br /><a href="#stubs-dastultz" title="MicroPython stubs">🖍️</a></td>
151
151
  </tr>
152
152
  <tr>
153
153
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/cabletie"><img src="https://avatars1.githubusercontent.com/u/2356734?v=4?s=100" width="100px;" alt="Keeping things together"/><br /><sub><b>Keeping things together</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3Acabletie" title="Bug reports">🐛</a></td>
154
- <td align="center" valign="top" width="14.28%"><a href="https://github.com/vbolshakov"><img src="https://avatars2.githubusercontent.com/u/2453324?v=4?s=100" width="100px;" alt="vbolshakov"/><br /><sub><b>vbolshakov</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3Avbolshakov" title="Bug reports">🐛</a> <a href="#stubs-vbolshakov" title="MicroPython stubs">📚</a></td>
154
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/vbolshakov"><img src="https://avatars2.githubusercontent.com/u/2453324?v=4?s=100" width="100px;" alt="vbolshakov"/><br /><sub><b>vbolshakov</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3Avbolshakov" title="Bug reports">🐛</a> <a href="#stubs-vbolshakov" title="MicroPython stubs">🖍️</a></td>
155
155
  <td align="center" valign="top" width="14.28%"><a href="https://lemariva.com/"><img src="https://avatars2.githubusercontent.com/u/15173329?v=4?s=100" width="100px;" alt="Mauro Riva"/><br /><sub><b>Mauro Riva</b></sub></a><br /><a href="#blog-lemariva" title="Blogposts">📝</a> <a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3Alemariva" title="Bug reports">🐛</a></td>
156
156
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/MathijsNL"><img src="https://avatars0.githubusercontent.com/u/1612886?v=4?s=100" width="100px;" alt="MathijsNL"/><br /><sub><b>MathijsNL</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3AMathijsNL" title="Bug reports">🐛</a></td>
157
- <td align="center" valign="top" width="14.28%"><a href="http://comingsoon.tm/"><img src="https://avatars0.githubusercontent.com/u/13251689?v=4?s=100" width="100px;" alt="Callum Jacob Hays"/><br /><sub><b>Callum Jacob Hays</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3ACallumJHays" title="Bug reports">🐛</a> <a href="#test-CallumJHays" title="Test">✔</a></td>
157
+ <td align="center" valign="top" width="14.28%"><a href="http://comingsoon.tm/"><img src="https://avatars0.githubusercontent.com/u/13251689?v=4?s=100" width="100px;" alt="Callum Jacob Hays"/><br /><sub><b>Callum Jacob Hays</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3ACallumJHays" title="Bug reports">🐛</a> <a href="#test-CallumJHays" title="Test">✅</a></td>
158
158
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/v923z"><img src="https://avatars0.githubusercontent.com/u/1310472?v=4?s=100" width="100px;" alt="Zoltán Vörös"/><br /><sub><b>Zoltán Vörös</b></sub></a><br /><a href="#data-v923z" title="Data">🔣</a></td>
159
159
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/vincent-l-j"><img src="https://avatars.githubusercontent.com/u/20021376?v=4?s=100" width="100px;" alt="vincent-l-j"/><br /><sub><b>vincent-l-j</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/commits?author=vincent-l-j" title="Documentation">📖</a></td>
160
160
  </tr>
161
161
  <tr>
162
162
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/yegorLitvinov"><img src="https://avatars.githubusercontent.com/u/20367310?v=4?s=100" width="100px;" alt="Egor Litvinov"/><br /><sub><b>Egor Litvinov</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/issues?q=author%3AyegorLitvinov" title="Bug reports">🐛</a></td>
163
163
  <td align="center" valign="top" width="14.28%"><a href="https://github.com/samskiter"><img src="https://avatars.githubusercontent.com/u/1271643?v=4?s=100" width="100px;" alt="Sam Duke"/><br /><sub><b>Sam Duke</b></sub></a><br /><a href="https://github.com/Josverl/micropython-stubber/commits?author=samskiter" title="Code">💻</a></td>
164
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/shariltumin"><img src="https://avatars.githubusercontent.com/u/186120?v=4?s=100" width="100px;" alt="shariltumin"/><br /><sub><b>shariltumin</b></sub></a><br /><a href="#mpflash-shariltumin" title="mpflash">💥</a> <a href="#test-shariltumin" title="Test">✅</a></td>
165
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/mattytrentini"><img src="https://avatars.githubusercontent.com/u/194201?v=4?s=100" width="100px;" alt="Matt Trentini"/><br /><sub><b>Matt Trentini</b></sub></a><br /><a href="#mpflash-mattytrentini" title="mpflash">💥</a> <a href="#test-mattytrentini" title="Test">✅</a></td>
166
+ <td align="center" valign="top" width="14.28%"><a href="http://scruss.com/blog/"><img src="https://avatars.githubusercontent.com/u/425706?v=4?s=100" width="100px;" alt="Stewart Russell"/><br /><sub><b>Stewart Russell</b></sub></a><br /><a href="#mpflash-scruss" title="mpflash">💥</a> <a href="#test-scruss" title="Test">✅</a></td>
167
+ <td align="center" valign="top" width="14.28%"><a href="https://www.gitlab.com/alelec"><img src="https://avatars.githubusercontent.com/u/3318786?v=4?s=100" width="100px;" alt="Andrew Leech"/><br /><sub><b>Andrew Leech</b></sub></a><br /><a href="#mpflash-andrewleech" title="mpflash">💥</a> <a href="#test-andrewleech" title="Test">✅</a></td>
168
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/wovo"><img src="https://avatars.githubusercontent.com/u/9039468?v=4?s=100" width="100px;" alt="Wouter van Ooijen"/><br /><sub><b>Wouter van Ooijen</b></sub></a><br /><a href="#mpflash-wovo" title="mpflash">💥</a> <a href="#test-wovo" title="Test">✅</a></td>
169
+ </tr>
170
+ <tr>
171
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/shaneapowell"><img src="https://avatars.githubusercontent.com/u/12113620?v=4?s=100" width="100px;" alt="Shane Powell"/><br /><sub><b>Shane Powell</b></sub></a><br /><a href="#mpflash-shaneapowell" title="mpflash">💥</a> <a href="#test-shaneapowell" title="Test">✅</a></td>
172
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/robert-hh"><img src="https://avatars.githubusercontent.com/u/12476868?v=4?s=100" width="100px;" alt="Robert Hammelrath"/><br /><sub><b>Robert Hammelrath</b></sub></a><br /><a href="#mpflash-robert-hh" title="mpflash">💥</a> <a href="#test-robert-hh" title="Test">✅</a></td>
173
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/beetlegigg"><img src="https://avatars.githubusercontent.com/u/34552737?v=4?s=100" width="100px;" alt="Bg"/><br /><sub><b>Bg</b></sub></a><br /><a href="#mpflash-beetlegigg" title="mpflash">💥</a> <a href="#test-beetlegigg" title="Test">✅</a></td>
174
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/rkompass"><img src="https://avatars.githubusercontent.com/u/90282516?v=4?s=100" width="100px;" alt="Raul Kompaß"/><br /><sub><b>Raul Kompaß</b></sub></a><br /><a href="#mpflash-rkompass" title="mpflash">💥</a> <a href="#test-rkompass" title="Test">✅</a></td>
175
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/garryp4"><img src="https://avatars.githubusercontent.com/u/96994876?v=4?s=100" width="100px;" alt="garryp4"/><br /><sub><b>garryp4</b></sub></a><br /><a href="#mpflash-garryp4" title="mpflash">💥</a> <a href="#test-garryp4" title="Test">✅</a></td>
176
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/shanepowell-ast"><img src="https://avatars.githubusercontent.com/u/102747617?v=4?s=100" width="100px;" alt="Shane Powell"/><br /><sub><b>Shane Powell</b></sub></a><br /><a href="#mpflash-shanepowell-ast" title="mpflash">💥</a> <a href="#test-shanepowell-ast" title="Test">✅</a></td>
177
+ <td align="center" valign="top" width="14.28%"><a href="https://andypiper.org/"><img src="https://avatars.githubusercontent.com/u/552452?v=4?s=100" width="100px;" alt="Andy Piper"/><br /><sub><b>Andy Piper</b></sub></a><br /><a href="#mpflash-andypiper" title="mpflash">💥</a> <a href="#test-andypiper" title="Test">✅</a></td>
178
+ </tr>
179
+ <tr>
180
+ <td align="center" valign="top" width="14.28%"><a href="https://github.com/DavesCodeMusings"><img src="https://avatars.githubusercontent.com/u/61114342?v=4?s=100" width="100px;" alt="David Horton"/><br /><sub><b>David Horton</b></sub></a><br /><a href="#mpflash-DavesCodeMusings" title="mpflash">💥</a> <a href="#test-DavesCodeMusings" title="Test">✅</a></td>
164
181
  </tr>
165
182
  </tbody>
166
183
  </table>
@@ -36,6 +36,32 @@ You can use mpflash to perform various operations on your MicroPython boards. He
36
36
  | `mpflash download` | Download the MicroPython firmware(s) for the connected board(s) |
37
37
  | `mpflash flash` | Flash the latest stable firmware to the connected board(s) |
38
38
 
39
+ ## selecting or ignoring specific serial ports
40
+
41
+ You can use the `--serial` option to select a specific serial port to flash, or the `--ignore` option to ignore a specific serial port.
42
+ both options can be specified multiple times
43
+ Both can be globs (e.g. COM*) or exact port names (e.g. COM1)
44
+ in addition there is a --bluetooth option to simplify ignoring bluetooth ports
45
+
46
+ ```
47
+ --serial,--serial-port -s SERIALPORT Serial port(s) (or globs) to list. [default: *] > > --ignore -i SERIALPORT Serial port(s) (or globs) to ignore. Defaults to MPFLASH_IGNORE. │
48
+ --bluetooth/--no-bluetooth -b/-nb Include bluetooth ports in the list [default: no-bluetooth]
49
+ ```
50
+
51
+ ## Distinguishing similar boards
52
+ The `mpflash list` command will list all connected boards, but sometimes you have multiple boards of the same type connected.
53
+ To help you identify the boards, you can add a board_info.toml file to the top/default folder for the board.
54
+ This file can contain a description of the board, which will be shown in the list and json output.
55
+ ```toml
56
+ description = "Blue Norwegian actuator"
57
+ ```
58
+
59
+ If you want the board to be ignored by mpflash, you can add the following to the board_info.toml file:
60
+ ```toml
61
+ [mpflash]
62
+ ignore = true
63
+ ```
64
+
39
65
 
40
66
  ## Linux permissions to access usb devices
41
67
  In order to flash the firmware to the board, you need to have the correct permissions to access the USB devices.
@@ -58,7 +58,7 @@ from .download import download
58
58
  default=["*"],
59
59
  show_default=True,
60
60
  multiple=True,
61
- help="Which serial port(s) to flash",
61
+ help="Which serial port(s) (or globs) to flash",
62
62
  metavar="SERIALPORT",
63
63
  )
64
64
  @click.option(
@@ -4,22 +4,19 @@ from typing import List
4
4
  import rich_click as click
5
5
  from loguru import logger as log
6
6
 
7
- from mpflash.common import BootloaderMethod
7
+ from mpflash.ask_input import ask_missing_params
8
+ from mpflash.cli_download import connected_ports_boards
9
+ from mpflash.cli_group import cli
10
+ from mpflash.cli_list import show_mcus
11
+ from mpflash.common import BootloaderMethod, FlashParams, Params
12
+ from mpflash.config import config
8
13
  from mpflash.errors import MPFlashError
14
+ from mpflash.flash import flash_list
15
+ from mpflash.flash.worklist import WorkList, full_auto_worklist, manual_worklist, single_auto_worklist
9
16
  from mpflash.mpboard_id import find_known_board
10
17
  from mpflash.mpremoteboard import MPRemoteBoard
11
18
  from mpflash.versions import clean_version
12
19
 
13
- from .ask_input import ask_missing_params
14
- from .cli_download import connected_ports_boards
15
- from .cli_group import cli
16
- from .cli_list import show_mcus
17
- from .common import FlashParams
18
- from .config import config
19
- from .flash import flash_list
20
- from .flash.worklist import (WorkList, full_auto_worklist, manual_worklist,
21
- single_auto_worklist)
22
-
23
20
  # #########################################################################################################
24
21
  # CLI
25
22
  # #########################################################################################################
@@ -56,7 +53,7 @@ from .flash.worklist import (WorkList, full_auto_worklist, manual_worklist,
56
53
  default=["*"],
57
54
  multiple=True,
58
55
  show_default=True,
59
- help="Which serial port(s) to flash",
56
+ help="Which serial port(s) (or globs) to flash",
60
57
  metavar="SERIALPORT",
61
58
  )
62
59
  @click.option(
@@ -122,7 +119,7 @@ def cli_flash_board(**kwargs) -> int:
122
119
  params = FlashParams(**kwargs)
123
120
  params.versions = list(params.versions)
124
121
  params.ports = list(params.ports)
125
- params.boards = list(params.boards)
122
+ params.boards = list(params.boards)
126
123
  params.serial = list(params.serial)
127
124
  params.ignore = list(params.ignore)
128
125
  params.bootloader = BootloaderMethod(params.bootloader)
@@ -203,7 +200,7 @@ def cli_flash_board(**kwargs) -> int:
203
200
  return 1
204
201
 
205
202
 
206
- def resolve_board_ids(params):
203
+ def resolve_board_ids(params: Params):
207
204
  """Resolve board descriptions to board_id, and remove empty strings from list of boards"""
208
205
  for board_id in params.boards:
209
206
  if board_id == "":
@@ -32,14 +32,14 @@ from .logger import make_quiet
32
32
  default=["*"],
33
33
  multiple=True,
34
34
  show_default=True,
35
- help="Which serial port(s) to list. ",
35
+ help="Serial port(s) (or globs) to list. ",
36
36
  metavar="SERIALPORT",
37
37
  )
38
38
  @click.option(
39
39
  "--ignore",
40
40
  "-i",
41
41
  is_eager=True,
42
- help="Serial port(s) to ignore. Defaults to MPFLASH_IGNORE.",
42
+ help="Serial port(s) (or globs) to ignore. Defaults to MPFLASH_IGNORE.",
43
43
  multiple=True,
44
44
  default=[],
45
45
  envvar="MPFLASH_IGNORE",
@@ -73,7 +73,13 @@ def cli_list_mcus(serial: List[str], ignore: List[str], bluetooth: bool, as_json
73
73
  # TODO? Ask user to select a serialport if [?] is given ?
74
74
 
75
75
  conn_mcus = list_mcus(ignore=ignore, include=serial, bluetooth=bluetooth)
76
+ # ignore boards that have the [micropython-stubber] ignore flag set
77
+ conn_mcus = [item for item in conn_mcus if not (item.toml.get("mpflash", {}).get("ignore", False))]
76
78
  if as_json:
79
+ # remove the path and firmware attibutes from the json output as they are always empty
80
+ for mcu in conn_mcus:
81
+ del mcu.path
82
+ del mcu.firmware
77
83
  print(json.dumps([mcu.__dict__ for mcu in conn_mcus], indent=4))
78
84
  progress = False
79
85
  if progress:
@@ -122,7 +122,8 @@ def filtered_comports(
122
122
  bluetooth: bool = False,
123
123
  ) -> List[ListPortInfo]: # sourcery skip: assign-if-exp
124
124
  """
125
- Get a list of filtered comports.
125
+ Get a list of filtered comports using the include and ignore lists.
126
+ both can be globs (e.g. COM*) or exact port names (e.g. COM1)
126
127
  """
127
128
  if not ignore:
128
129
  ignore = []
@@ -4,10 +4,9 @@ from rich import print
4
4
  from rich.progress import BarColumn, Progress, SpinnerColumn, TextColumn, TimeElapsedColumn
5
5
  from rich.table import Column
6
6
 
7
+ from mpflash.common import filtered_comports
7
8
  from mpflash.mpremoteboard import MPRemoteBoard
8
9
 
9
- from .common import filtered_comports
10
-
11
10
 
12
11
  def connected_ports_boards(*, include: List[str], ignore: List[str]) -> Tuple[List[str], List[str], List[MPRemoteBoard]]:
13
12
  """
@@ -32,7 +31,7 @@ rp_text = TextColumn("{task.description} {task.fields[device]}", table_column=Co
32
31
  rp_bar = BarColumn(bar_width=None, table_column=Column())
33
32
 
34
33
 
35
- def list_mcus(*, ignore: List[str], include: List[str], bluetooth: bool = False):
34
+ def list_mcus(*, ignore: List[str], include: List[str], bluetooth: bool = False) -> List[MPRemoteBoard]:
36
35
  """
37
36
  Retrieves information about connected microcontroller boards.
38
37
 
@@ -38,11 +38,25 @@ def mcu_table(
38
38
  - Serial Yes Yes
39
39
  - Family abbrv. Yes
40
40
  - Port - yes
41
- - Board Yes Yes BOARD_ID and Description
41
+ - Board Yes Yes BOARD_ID and Description, and the description from board_info.toml
42
42
  - CPU - Yes
43
43
  - Version Yes Yes
44
44
  - Build * * only if any of the mcus have a build
45
+ - Location - - only if --usb is given
45
46
  """
47
+ # refresh if requested
48
+ if refresh:
49
+ for mcu in track(
50
+ conn_mcus,
51
+ description="Updating board info",
52
+ transient=True,
53
+ show_speed=False,
54
+ refresh_per_second=1,
55
+ ):
56
+ try:
57
+ mcu.get_mcu_info()
58
+ except ConnectionError:
59
+ continue
46
60
  table = Table(
47
61
  title=title,
48
62
  title_style="magenta",
@@ -50,6 +64,7 @@ def mcu_table(
50
64
  collapse_padding=True,
51
65
  padding=(0, 0),
52
66
  )
67
+ # Build the table
53
68
  # check if the terminal is wide enough to show all columns or if we need to collapse some
54
69
  is_wide = console.width > 99
55
70
  needs_build = any(mcu.build for mcu in conn_mcus)
@@ -67,19 +82,11 @@ def mcu_table(
67
82
  table.add_column("Build" if is_wide else "Bld", justify="right")
68
83
  if config.usb:
69
84
  table.add_column("Location", overflow="fold", max_width=40)
70
- for mcu in track(
71
- conn_mcus,
72
- description="Updating board info",
73
- transient=True,
74
- show_speed=False,
75
- refresh_per_second=1,
76
- ):
77
- if refresh:
78
- try:
79
- mcu.get_mcu_info()
80
- except ConnectionError:
81
- continue
85
+ # fill the table with the data
86
+ for mcu in conn_mcus:
82
87
  description = f"[italic bright_cyan]{mcu.description}" if mcu.description else ""
88
+ if "description" in mcu.toml:
89
+ description += f"\n[italic bright_green]{mcu.toml['description']}"
83
90
  row = [
84
91
  mcu.serialport.replace("/dev/", ""),
85
92
  abbrv_family(mcu.family, is_wide),