idf-build-apps 2.13.1__tar.gz → 2.13.2__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.
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/CHANGELOG.md +8 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/PKG-INFO +1 -1
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/idf_build_apps/__init__.py +1 -1
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/idf_build_apps/app.py +18 -1
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/idf_build_apps/args.py +1 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/idf_build_apps/main.py +3 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/pyproject.toml +1 -1
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/setup.py +1 -1
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/tests/test_build.py +12 -6
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/.editorconfig +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/.git-blame-ignore-revs +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/.gitattributes +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/.github/dependabot.yml +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/.github/workflows/publish-pypi.yml +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/.github/workflows/sync-jira.yml +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/.github/workflows/test-build-docs.yml +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/.github/workflows/test-build-idf-apps.yml +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/.gitignore +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/.pre-commit-config.yaml +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/.readthedocs.yml +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/CONTRIBUTING.md +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/LICENSE +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/README.md +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/_apidoc_templates/module.rst_t +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/_apidoc_templates/package.rst_t +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/_apidoc_templates/toc.rst_t +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/_static/espressif-logo.svg +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/_static/theme_overrides.css +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/_templates/layout.html +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/conf_common.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/en/Makefile +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/en/conf.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/en/explanations/build.rst +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/en/explanations/build_status.rst +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/en/explanations/config_rules.rst +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/en/explanations/dependency_driven_build.rst +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/en/explanations/find.rst +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/en/guides/1.x_to_2.x.md +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/en/guides/custom_app.md +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/en/index.rst +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/en/others/CHANGELOG.md +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/en/others/CONTRIBUTING.md +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/en/references/cli.rst +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/en/references/config_file.rst +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/en/references/manifest.rst +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/idf_build_apps/__main__.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/idf_build_apps/autocompletions.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/idf_build_apps/constants.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/idf_build_apps/finder.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/idf_build_apps/junit/__init__.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/idf_build_apps/junit/report.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/idf_build_apps/junit/utils.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/idf_build_apps/log.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/idf_build_apps/manifest/__init__.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/idf_build_apps/manifest/manifest.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/idf_build_apps/manifest/soc_header.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/idf_build_apps/py.typed +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/idf_build_apps/session_args.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/idf_build_apps/utils.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/idf_build_apps/vendors/__init__.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/idf_build_apps/vendors/pydantic_sources.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/idf_build_apps/yaml/__init__.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/idf_build_apps/yaml/parser.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/license_header.txt +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/tests/conftest.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/tests/test_app.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/tests/test_args.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/tests/test_cmd.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/tests/test_disable_reasons.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/tests/test_finder.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/tests/test_manifest.py +0 -0
- {idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/tests/test_utils.py +0 -0
|
@@ -2,6 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
|
|
5
|
+
## v2.13.2 (2025-10-23)
|
|
6
|
+
|
|
7
|
+
### 🐛 Bug Fixes
|
|
8
|
+
|
|
9
|
+
- update broken tests for `size.json` *(Evgeny Torbin - c603221)*
|
|
10
|
+
- change `idf_size.py --format json` to `--format json2` *(Evgeny Torbin - 49b9f3d)*
|
|
11
|
+
|
|
12
|
+
|
|
5
13
|
## v2.13.1 (2025-09-29)
|
|
6
14
|
|
|
7
15
|
### 🐛 Bug Fixes
|
|
@@ -642,11 +642,28 @@ class App(BaseModel):
|
|
|
642
642
|
return
|
|
643
643
|
|
|
644
644
|
if IDF_VERSION >= Version('4.1'):
|
|
645
|
+
"""
|
|
646
|
+
Starting from version 2.0.0 esp-idf-size uses new generation (NG) implementation.
|
|
647
|
+
In newest version `--format json` was changed to `--format json2`.
|
|
648
|
+
For different versions of IDF there are 4 scenarios:
|
|
649
|
+
|
|
650
|
+
1. 6.0 - NG is enforced until version 2.x will be fully incorporated.
|
|
651
|
+
2. >=5.3 <=5.5 - NG is enabled by default, but could be disabled using `-l/--legacy` argument.
|
|
652
|
+
3. 5.1 and 5.2 - only legacy mode is supported.
|
|
653
|
+
4. <5.1 - esp-idf-size package is not used, only `--json` argument is supported.
|
|
654
|
+
"""
|
|
655
|
+
if IDF_VERSION >= Version('5.3'):
|
|
656
|
+
format_arg = ['--format', 'json2']
|
|
657
|
+
elif IDF_VERSION >= Version('5.1'):
|
|
658
|
+
format_arg = ['--format', 'json']
|
|
659
|
+
else:
|
|
660
|
+
format_arg = ['--json']
|
|
661
|
+
|
|
645
662
|
subprocess_run(
|
|
646
663
|
[
|
|
647
664
|
sys.executable,
|
|
648
665
|
str(IDF_SIZE_PY),
|
|
649
|
-
*(
|
|
666
|
+
*(format_arg),
|
|
650
667
|
'-o',
|
|
651
668
|
self.size_json_path,
|
|
652
669
|
*(self.size_json_extra_args or []),
|
|
@@ -145,6 +145,7 @@ class BaseArguments(BaseSettings):
|
|
|
145
145
|
# these below two are supported in pydantic 2.6
|
|
146
146
|
pyproject_toml_table_header=('tool', 'idf-build-apps'),
|
|
147
147
|
pyproject_toml_depth=sys.maxsize,
|
|
148
|
+
validate_default=True,
|
|
148
149
|
extra='ignore', # we're supporting pydantic <2.6 as well, so we ignore extra fields
|
|
149
150
|
)
|
|
150
151
|
|
|
@@ -396,6 +396,9 @@ def main():
|
|
|
396
396
|
Manifest.from_files(arguments.manifest_files).dump_sha_values(arguments.output)
|
|
397
397
|
sys.exit(0)
|
|
398
398
|
elif action == 'find':
|
|
399
|
+
print('reinstall idf-build-apps')
|
|
400
|
+
print(kwargs['paths'])
|
|
401
|
+
|
|
399
402
|
arguments = FindArguments(**drop_none_kwargs(kwargs))
|
|
400
403
|
else:
|
|
401
404
|
arguments = BuildArguments(**drop_none_kwargs(kwargs))
|
|
@@ -38,7 +38,7 @@ entry_points = \
|
|
|
38
38
|
{'console_scripts': ['idf-build-apps = idf_build_apps:main.main']}
|
|
39
39
|
|
|
40
40
|
setup(name='idf-build-apps',
|
|
41
|
-
version='2.13.
|
|
41
|
+
version='2.13.2',
|
|
42
42
|
description='Tools for building ESP-IDF related apps.',
|
|
43
43
|
author=None,
|
|
44
44
|
author_email='Fu Hanxi <fuhanxi@espressif.com>',
|
|
@@ -223,9 +223,13 @@ class TestBuild:
|
|
|
223
223
|
with open(app.size_json_path) as f:
|
|
224
224
|
size_data = json.load(f)
|
|
225
225
|
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
226
|
+
expected_names = ['Flash Code', 'IRAM', 'Flash Data', 'DRAM', 'RTC SLOW']
|
|
227
|
+
|
|
228
|
+
assert 'layout' in size_data
|
|
229
|
+
size_data_names = [name_info['name'] for name_info in size_data['layout']]
|
|
230
|
+
|
|
231
|
+
for name in expected_names:
|
|
232
|
+
assert name in size_data_names, f"Size JSON layout should contain '{name}' when no extra args"
|
|
229
233
|
|
|
230
234
|
def test_build_with_size_json_with_extra_args(self, tmp_path):
|
|
231
235
|
"""Test idf_size_py with extra args."""
|
|
@@ -247,14 +251,16 @@ class TestBuild:
|
|
|
247
251
|
with open(app.size_json_path) as f:
|
|
248
252
|
size_data = json.load(f)
|
|
249
253
|
|
|
250
|
-
|
|
254
|
+
expected_files = [
|
|
251
255
|
'libesp_timer.a:system_time.c.obj',
|
|
252
256
|
'libc.a:libc_a-vfprintf.o',
|
|
253
257
|
'libfreertos.a:tasks.c.obj',
|
|
254
258
|
'libheap.a:tlsf.c.obj',
|
|
255
259
|
]
|
|
256
|
-
|
|
257
|
-
|
|
260
|
+
|
|
261
|
+
size_data_files = size_data.keys()
|
|
262
|
+
for file in expected_files:
|
|
263
|
+
assert any(file in s for s in size_data_files), f"Size JSON should contain '{file}' with extra args"
|
|
258
264
|
|
|
259
265
|
|
|
260
266
|
class CustomClassApp(App):
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{idf_build_apps-2.13.1 → idf_build_apps-2.13.2}/docs/en/explanations/dependency_driven_build.rst
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|