Naming convention
- use {family}-v{version}-{port} notation across all scripts and tools
- updated documentation accordingly
- single function to handle version names in various formats (clean_version)
- requirements: pin dependencies to avoid differences when running acriss multiple machines.
- get_mpy_frozen:
- refactor module
- checkout the matching commit of micropython-lib
withouth this it is not possible to build stubs older versions due to a restructure of micropython-lib
- bulk_stubber:
- make more robust by including depedencies in the project.
- detect pyboard based on USB VID & PID
- prep autostubber for pybv11
- manifest.json generation
- improve core manifest.json information
- improve support for grouping and sorting
stubber cli:
- add init test & refector imports
- fix tests
- merge docstubs into stubber
- reduce tests
- merge get-all-stubs into stubber
- merge get_all_stubs into stubber
- add init
- add stub and some tests
- refactor minify and add -all option
config
- change to use module tomlli(b)
common:
- update pyright config to reduce noise
firmware stubber
fw-stubber: clean up excepts
Documentation
docs: fix tomllib
docs: document the CLI for stubber using sphinx-click
readme: add badges for pypi and codecov
doc updates
fix docbuild for poetry
update totdos in source
docstubs: fix json import
fix: black formatting across platforms
add settings and script for coverage reporting
update snippets
(origin/dev/snippets) snippets:add checks
Develop:
fix: codespace poetry setup
test
test: fix fewer arguments
tests: add firmware stubber version tests
test: add missing toml
test: add package == version == firmware stubber version tests
test: basicgit - add mocktest git
test: fix minify test remove unused imports
Github Actions:
wf: use poetry run and poetry install
pkg: updates to support poetry
wf: poetry install verbose
pkg: update actions to work with poetry
pkg: Move all stubber files into module folder
pkg: get version from poetry package
pkg: move csv into package
config: remove pylance config from vscode settings
pkg: add data files
Use Poetry
Dependencies
- bump distro from 1.6.0 to 1.7.0
- bump pytest from 6.2.5 to 7.0.1
- bump myst-parser from 0.16.1 to 0.17.0
- bump coverage from 6.3 to 6.3.1
- bump black from 21.12b0 to 22.1.0
- bump libcst from 0.3.23 to 0.4.1
- bump pytest-mock from 3.6.1 to 3.7.0
- bump mpy-cross from 1.17 to 1.18
documentation
- Add notes to docstrings/descriptions
- (bluetooth_constants) doc: configure submodules
- docs: add open in VSCode banner
- textual and updates to version notation
- Update 40_firmware_stubs.md
docstubs:
- fix optional - Optional Parameters are not treated as optional https://github.com/Josverl/micropython-stubber/issues/183
- add docstubs validation
- skip 3 stubs.
- create umodules https://github.com/Josverl/micropython-stubber/issues/176
- allign to micropython PR and update tests
- workaround for re.Match and smarter tests
- fix module & Class constant handling & tests
- Add `= ...` to module and class level constants to avoid errors when they are used as a default value in function of nethod
scripts:
- script update_modulelist, - write updates to: - board/modulelist.txt - board/createstubs.py
- bulk_stubber: Copy generated/firmwarestubs to all-stubs/* use firmware-stubs path for temp storage
- Update BulkStubber & getserial for esp32, esp8266 and stm32
- minify.ps1: posix paths
- bulkstubber: more versions
Common
- improve black formatting for subfolders
- utils: do not use BaseException
- config: pycache
- data: add firmware modules
- Multi-root with mpy-stdlib based on pico-go
- utils.stubgen: re-apply refactor to avoid use of os.cmd or subprocess.run
- utils.stubgen: refactor to avoid use of os.cmd or subprocess.run
Validation
- add snippets to test mpy stdlib
- validation: Add more snippets
- update validation snippets
- WS with pyright snippets
Github Actions:
- wf: do not run minified tests twice, minify all
Developing:
devcontainer: also init git submodules
devcontainer: change python setup
Tests
test: fix test_socket _class
test: fix return type and test deepsleep
test: skip test_createstubs on windows + python 3.7
test: native test on windows, include db test on linux
test: add createstubs_db on all platforms
test: lower theshold to 25 stubs
test: add native integration test for micropython_mem
test: linux rest on ubuntu and debian, seperate branch / fail logic in docstubs test
test: add additional firmwares
test: waste less time in by reducing test size
test: remove path test
debug: fix debug config for tests
debug: add missing debug property
test: fix pessimistic test and make more robust