micropython-stubber 1.20.5__py3-none-any.whl → 1.23.0__py3-none-any.whl
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.
- {micropython_stubber-1.20.5.dist-info → micropython_stubber-1.23.0.dist-info}/LICENSE +30 -30
- {micropython_stubber-1.20.5.dist-info → micropython_stubber-1.23.0.dist-info}/METADATA +1 -1
- micropython_stubber-1.23.0.dist-info/RECORD +159 -0
- mpflash/README.md +184 -184
- mpflash/libusb_flash.ipynb +203 -203
- mpflash/mpflash/add_firmware.py +98 -98
- mpflash/mpflash/ask_input.py +236 -236
- mpflash/mpflash/bootloader/__init__.py +37 -36
- mpflash/mpflash/bootloader/manual.py +102 -102
- mpflash/mpflash/bootloader/micropython.py +10 -10
- mpflash/mpflash/bootloader/touch1200.py +45 -45
- mpflash/mpflash/cli_download.py +129 -129
- mpflash/mpflash/cli_flash.py +219 -219
- mpflash/mpflash/cli_group.py +98 -98
- mpflash/mpflash/cli_list.py +81 -81
- mpflash/mpflash/cli_main.py +41 -41
- mpflash/mpflash/common.py +164 -164
- mpflash/mpflash/config.py +43 -47
- mpflash/mpflash/connected.py +74 -74
- mpflash/mpflash/download.py +360 -360
- mpflash/mpflash/downloaded.py +130 -129
- mpflash/mpflash/errors.py +9 -9
- mpflash/mpflash/flash.py +55 -52
- mpflash/mpflash/flash_esp.py +59 -59
- mpflash/mpflash/flash_stm32.py +18 -24
- mpflash/mpflash/flash_stm32_cube.py +111 -111
- mpflash/mpflash/flash_stm32_dfu.py +104 -101
- mpflash/mpflash/flash_uf2.py +89 -67
- mpflash/mpflash/flash_uf2_boardid.py +15 -15
- mpflash/mpflash/flash_uf2_linux.py +129 -123
- mpflash/mpflash/flash_uf2_macos.py +37 -34
- mpflash/mpflash/flash_uf2_windows.py +38 -34
- mpflash/mpflash/list.py +89 -89
- mpflash/mpflash/logger.py +41 -41
- mpflash/mpflash/mpboard_id/__init__.py +93 -93
- mpflash/mpflash/mpboard_id/add_boards.py +255 -255
- mpflash/mpflash/mpboard_id/board.py +37 -37
- mpflash/mpflash/mpboard_id/board_id.py +86 -86
- mpflash/mpflash/mpboard_id/store.py +43 -43
- mpflash/mpflash/mpremoteboard/__init__.py +226 -221
- mpflash/mpflash/mpremoteboard/mpy_fw_info.py +141 -141
- mpflash/mpflash/mpremoteboard/runner.py +140 -140
- mpflash/mpflash/uf2disk.py +12 -12
- mpflash/mpflash/vendor/basicgit.py +288 -288
- mpflash/mpflash/vendor/click_aliases.py +91 -91
- mpflash/mpflash/vendor/dfu.py +165 -165
- mpflash/mpflash/vendor/pydfu.py +605 -605
- mpflash/mpflash/vendor/readme.md +2 -2
- mpflash/mpflash/vendor/versions.py +119 -117
- mpflash/mpflash/worklist.py +171 -170
- mpflash/poetry.lock +1588 -1588
- mpflash/pyproject.toml +64 -60
- mpflash/stm32_udev_rules.md +62 -62
- stubber/__init__.py +3 -3
- stubber/basicgit.py +294 -288
- stubber/board/board_info.csv +193 -193
- stubber/board/boot.py +34 -34
- stubber/board/createstubs.py +986 -986
- stubber/board/createstubs_db.py +825 -825
- stubber/board/createstubs_db_min.py +331 -331
- stubber/board/createstubs_db_mpy.mpy +0 -0
- stubber/board/createstubs_lvgl.py +741 -741
- stubber/board/createstubs_lvgl_min.py +741 -741
- stubber/board/createstubs_mem.py +766 -766
- stubber/board/createstubs_mem_min.py +306 -306
- stubber/board/createstubs_mem_mpy.mpy +0 -0
- stubber/board/createstubs_min.py +294 -294
- stubber/board/createstubs_mpy.mpy +0 -0
- stubber/board/fw_info.py +141 -141
- stubber/board/info.py +183 -183
- stubber/board/main.py +19 -19
- stubber/board/modulelist.txt +247 -247
- stubber/board/pyrightconfig.json +34 -34
- stubber/bulk/mcu_stubber.py +454 -454
- stubber/codemod/_partials/__init__.py +48 -48
- stubber/codemod/_partials/db_main.py +147 -147
- stubber/codemod/_partials/lvgl_main.py +77 -77
- stubber/codemod/_partials/modules_reader.py +80 -80
- stubber/codemod/add_comment.py +53 -53
- stubber/codemod/add_method.py +65 -65
- stubber/codemod/board.py +317 -317
- stubber/codemod/enrich.py +145 -145
- stubber/codemod/merge_docstub.py +284 -284
- stubber/codemod/modify_list.py +54 -54
- stubber/codemod/utils.py +57 -57
- stubber/commands/build_cmd.py +94 -94
- stubber/commands/cli.py +55 -51
- stubber/commands/clone_cmd.py +77 -66
- stubber/commands/config_cmd.py +29 -29
- stubber/commands/enrich_folder_cmd.py +71 -70
- stubber/commands/get_core_cmd.py +71 -69
- stubber/commands/get_docstubs_cmd.py +89 -87
- stubber/commands/get_frozen_cmd.py +114 -112
- stubber/commands/get_mcu_cmd.py +61 -56
- stubber/commands/merge_cmd.py +67 -66
- stubber/commands/publish_cmd.py +119 -119
- stubber/commands/stub_cmd.py +31 -30
- stubber/commands/switch_cmd.py +62 -54
- stubber/commands/variants_cmd.py +49 -48
- stubber/cst_transformer.py +178 -178
- stubber/data/board_info.csv +193 -193
- stubber/data/board_info.json +1729 -1729
- stubber/data/micropython_tags.csv +15 -15
- stubber/data/requirements-core-micropython.txt +38 -38
- stubber/data/requirements-core-pycopy.txt +39 -39
- stubber/downloader.py +36 -36
- stubber/freeze/common.py +68 -68
- stubber/freeze/freeze_folder.py +69 -69
- stubber/freeze/freeze_manifest_2.py +113 -113
- stubber/freeze/get_frozen.py +127 -127
- stubber/get_cpython.py +101 -101
- stubber/get_lobo.py +59 -59
- stubber/minify.py +418 -418
- stubber/publish/bump.py +86 -86
- stubber/publish/candidates.py +262 -262
- stubber/publish/database.py +18 -18
- stubber/publish/defaults.py +45 -45
- stubber/publish/enums.py +24 -24
- stubber/publish/helpers.py +29 -29
- stubber/publish/merge_docstubs.py +130 -130
- stubber/publish/missing_class_methods.py +49 -49
- stubber/publish/package.py +146 -146
- stubber/publish/pathnames.py +51 -51
- stubber/publish/publish.py +120 -120
- stubber/publish/pypi.py +38 -38
- stubber/publish/stubpackage.py +1029 -1029
- stubber/rst/__init__.py +9 -9
- stubber/rst/classsort.py +77 -77
- stubber/rst/lookup.py +530 -530
- stubber/rst/output_dict.py +401 -401
- stubber/rst/reader.py +822 -822
- stubber/rst/report_return.py +69 -69
- stubber/rst/rst_utils.py +540 -540
- stubber/stubber.py +38 -38
- stubber/stubs_from_docs.py +90 -90
- stubber/tools/manifestfile.py +655 -610
- stubber/tools/readme.md +7 -6
- stubber/update_fallback.py +117 -117
- stubber/update_module_list.py +123 -123
- stubber/utils/__init__.py +5 -5
- stubber/utils/config.py +127 -127
- stubber/utils/makeversionhdr.py +54 -54
- stubber/utils/manifest.py +92 -92
- stubber/utils/post.py +79 -79
- stubber/utils/repos.py +157 -154
- stubber/utils/stubmaker.py +139 -139
- stubber/utils/typed_config_toml.py +77 -77
- stubber/utils/versions.py +128 -120
- stubber/variants.py +106 -106
- micropython_stubber-1.20.5.dist-info/RECORD +0 -159
- {micropython_stubber-1.20.5.dist-info → micropython_stubber-1.23.0.dist-info}/WHEEL +0 -0
- {micropython_stubber-1.20.5.dist-info → micropython_stubber-1.23.0.dist-info}/entry_points.txt +0 -0
stubber/publish/bump.py
CHANGED
@@ -1,86 +1,86 @@
|
|
1
|
-
"""Bump a version number to a next version"""
|
2
|
-
|
3
|
-
from packaging.version import Version, parse
|
4
|
-
|
5
|
-
|
6
|
-
def bump_version(
|
7
|
-
current: Version,
|
8
|
-
*,
|
9
|
-
major_bump: bool = False,
|
10
|
-
minor_bump: bool = False,
|
11
|
-
micro_bump: bool = False,
|
12
|
-
version_bump: bool = False, # Increase the first non-zero of micro , minor , major
|
13
|
-
post_bump: bool = False,
|
14
|
-
rc: int = 0, # to bump post release, or release candidate number
|
15
|
-
) -> Version:
|
16
|
-
"""
|
17
|
-
Increases a version number
|
18
|
-
|
19
|
-
This allows for a new stub-release to be published while still using the Major.Minor.Patch version numbers of Micropython
|
20
|
-
if rc = 0(default) : bump post release
|
21
|
-
format: x.y.z.post1, x.y.z.post2 ...
|
22
|
-
if rec specified:
|
23
|
-
drop the post release and set the release candidate number
|
24
|
-
|
25
|
-
ref: https://peps.python.org/pep-0440/
|
26
|
-
"""
|
27
|
-
release_bump = major_bump or minor_bump or micro_bump or version_bump
|
28
|
-
other_bump = post_bump or rc != 0
|
29
|
-
|
30
|
-
if release_bump and other_bump:
|
31
|
-
raise ValueError("Cannot bump both release and other fragments")
|
32
|
-
|
33
|
-
parts = []
|
34
|
-
|
35
|
-
# ----------------------------------------------------------------------
|
36
|
-
# Epoch
|
37
|
-
if current.epoch != 0:
|
38
|
-
parts.append(f"{current.epoch}!")
|
39
|
-
# ----------------------------------------------------------------------
|
40
|
-
# Release segment: major.minor.micro x.y.z
|
41
|
-
major = current.major
|
42
|
-
minor = current.minor
|
43
|
-
micro = current.micro
|
44
|
-
if version_bump: # Increase the first non-zero of micro , minor , major
|
45
|
-
if micro != 0:
|
46
|
-
micro_bump = True
|
47
|
-
elif minor != 0:
|
48
|
-
minor_bump = True
|
49
|
-
elif major != 0:
|
50
|
-
major_bump = True
|
51
|
-
else:
|
52
|
-
raise ValueError("Cannot bump version, all version numbers are zero")
|
53
|
-
|
54
|
-
# higher level bump clears lowers
|
55
|
-
major = major + 1 if major_bump else major
|
56
|
-
minor = 0 if major_bump else minor + 1 if minor_bump else minor
|
57
|
-
micro = 0 if minor_bump or major_bump else micro + 1 if micro_bump else micro
|
58
|
-
|
59
|
-
release = f"{major}.{minor}.{micro}"
|
60
|
-
parts.append(release)
|
61
|
-
if not release_bump:
|
62
|
-
# ----------------------------------------------------------------------
|
63
|
-
# pre
|
64
|
-
if rc != 0:
|
65
|
-
# Pre-release / alpha / beta / rc segment
|
66
|
-
parts.append(f".a{rc}")
|
67
|
-
# ----------------------------------------------------------------------
|
68
|
-
# post
|
69
|
-
elif post_bump :
|
70
|
-
parts.append(".post1" if current.post is None else f".post{current.post + 1}")
|
71
|
-
# ----------------------------------------------------------------------
|
72
|
-
# Development release
|
73
|
-
if current.dev is not None:
|
74
|
-
parts.append(f".dev{current.dev}")
|
75
|
-
|
76
|
-
# ----------------------------------------------------------------------
|
77
|
-
# Local version segment
|
78
|
-
if current.local is not None:
|
79
|
-
parts.append(f"+{current.local}")
|
80
|
-
try:
|
81
|
-
# Sanity check that the new version is valid
|
82
|
-
new = parse("".join(parts))
|
83
|
-
except ValueError as e:
|
84
|
-
raise ValueError(f"{''.join(parts)} is not a valid version") from e
|
85
|
-
assert isinstance(new, Version), "not a valid Version"
|
86
|
-
return new
|
1
|
+
"""Bump a version number to a next version"""
|
2
|
+
|
3
|
+
from packaging.version import Version, parse
|
4
|
+
|
5
|
+
|
6
|
+
def bump_version(
|
7
|
+
current: Version,
|
8
|
+
*,
|
9
|
+
major_bump: bool = False,
|
10
|
+
minor_bump: bool = False,
|
11
|
+
micro_bump: bool = False,
|
12
|
+
version_bump: bool = False, # Increase the first non-zero of micro , minor , major
|
13
|
+
post_bump: bool = False,
|
14
|
+
rc: int = 0, # to bump post release, or release candidate number
|
15
|
+
) -> Version:
|
16
|
+
"""
|
17
|
+
Increases a version number
|
18
|
+
|
19
|
+
This allows for a new stub-release to be published while still using the Major.Minor.Patch version numbers of Micropython
|
20
|
+
if rc = 0(default) : bump post release
|
21
|
+
format: x.y.z.post1, x.y.z.post2 ...
|
22
|
+
if rec specified:
|
23
|
+
drop the post release and set the release candidate number
|
24
|
+
|
25
|
+
ref: https://peps.python.org/pep-0440/
|
26
|
+
"""
|
27
|
+
release_bump = major_bump or minor_bump or micro_bump or version_bump
|
28
|
+
other_bump = post_bump or rc != 0
|
29
|
+
|
30
|
+
if release_bump and other_bump:
|
31
|
+
raise ValueError("Cannot bump both release and other fragments")
|
32
|
+
|
33
|
+
parts = []
|
34
|
+
|
35
|
+
# ----------------------------------------------------------------------
|
36
|
+
# Epoch
|
37
|
+
if current.epoch != 0:
|
38
|
+
parts.append(f"{current.epoch}!")
|
39
|
+
# ----------------------------------------------------------------------
|
40
|
+
# Release segment: major.minor.micro x.y.z
|
41
|
+
major = current.major
|
42
|
+
minor = current.minor
|
43
|
+
micro = current.micro
|
44
|
+
if version_bump: # Increase the first non-zero of micro , minor , major
|
45
|
+
if micro != 0:
|
46
|
+
micro_bump = True
|
47
|
+
elif minor != 0:
|
48
|
+
minor_bump = True
|
49
|
+
elif major != 0:
|
50
|
+
major_bump = True
|
51
|
+
else:
|
52
|
+
raise ValueError("Cannot bump version, all version numbers are zero")
|
53
|
+
|
54
|
+
# higher level bump clears lowers
|
55
|
+
major = major + 1 if major_bump else major
|
56
|
+
minor = 0 if major_bump else minor + 1 if minor_bump else minor
|
57
|
+
micro = 0 if minor_bump or major_bump else micro + 1 if micro_bump else micro
|
58
|
+
|
59
|
+
release = f"{major}.{minor}.{micro}"
|
60
|
+
parts.append(release)
|
61
|
+
if not release_bump:
|
62
|
+
# ----------------------------------------------------------------------
|
63
|
+
# pre
|
64
|
+
if rc != 0:
|
65
|
+
# Pre-release / alpha / beta / rc segment
|
66
|
+
parts.append(f".a{rc}")
|
67
|
+
# ----------------------------------------------------------------------
|
68
|
+
# post
|
69
|
+
elif post_bump :
|
70
|
+
parts.append(".post1" if current.post is None else f".post{current.post + 1}")
|
71
|
+
# ----------------------------------------------------------------------
|
72
|
+
# Development release
|
73
|
+
if current.dev is not None:
|
74
|
+
parts.append(f".dev{current.dev}")
|
75
|
+
|
76
|
+
# ----------------------------------------------------------------------
|
77
|
+
# Local version segment
|
78
|
+
if current.local is not None:
|
79
|
+
parts.append(f"+{current.local}")
|
80
|
+
try:
|
81
|
+
# Sanity check that the new version is valid
|
82
|
+
new = parse("".join(parts))
|
83
|
+
except ValueError as e:
|
84
|
+
raise ValueError(f"{''.join(parts)} is not a valid version") from e
|
85
|
+
assert isinstance(new, Version), "not a valid Version"
|
86
|
+
return new
|