idf_build_apps 2.2.2__tar.gz → 2.3.0__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.2.2 → idf_build_apps-2.3.0}/CHANGELOG.md +14 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/PKG-INFO +1 -1
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/idf_build_apps/__init__.py +1 -1
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/idf_build_apps/main.py +48 -9
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/pyproject.toml +1 -1
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/setup.py +1 -1
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/.editorconfig +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/.git-blame-ignore-revs +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/.gitattributes +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/.github/dependabot.yml +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/.github/workflows/check-pre-commit.yml +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/.github/workflows/issue_comment.yml +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/.github/workflows/new_issues.yml +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/.github/workflows/new_prs.yml +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/.github/workflows/publish-pypi.yml +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/.github/workflows/test-build-docs.yml +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/.github/workflows/test-build-idf-apps.yml +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/.gitignore +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/.pre-commit-config.yaml +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/.readthedocs.yml +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/CONTRIBUTING.md +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/LICENSE +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/README.md +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/docs/CHANGELOG.md +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/docs/CONTRIBUTING.md +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/docs/Makefile +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/docs/_apidoc_templates/module.rst_t +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/docs/_apidoc_templates/package.rst_t +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/docs/_apidoc_templates/toc.rst_t +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/docs/_static/espressif-logo.svg +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/docs/_static/theme_overrides.css +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/docs/_templates/layout.html +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/docs/cli.rst +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/docs/conf.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/docs/config_file.md +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/docs/find_build.md +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/docs/index.rst +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/docs/manifest.md +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/docs/migration/1.x_to_2.x.md +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/idf_build_apps/__main__.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/idf_build_apps/app.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/idf_build_apps/build_apps_args.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/idf_build_apps/config.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/idf_build_apps/constants.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/idf_build_apps/finder.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/idf_build_apps/junit/__init__.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/idf_build_apps/junit/report.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/idf_build_apps/junit/utils.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/idf_build_apps/log.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/idf_build_apps/manifest/__init__.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/idf_build_apps/manifest/if_parser.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/idf_build_apps/manifest/manifest.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/idf_build_apps/manifest/soc_header.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/idf_build_apps/session_args.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/idf_build_apps/utils.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/idf_build_apps/yaml/__init__.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/idf_build_apps/yaml/parser.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/license_header.txt +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/tests/conftest.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/tests/test_app.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/tests/test_build.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/tests/test_finder.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/tests/test_manifest.py +0 -0
- {idf_build_apps-2.2.2 → idf_build_apps-2.3.0}/tests/test_utils.py +0 -0
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
|
|
5
|
+
## v2.3.0 (2024-03-20)
|
|
6
|
+
|
|
7
|
+
### Feat
|
|
8
|
+
|
|
9
|
+
- support ignore app dependencies by components
|
|
10
|
+
|
|
5
11
|
## v2.2.2 (2024-03-13)
|
|
6
12
|
|
|
7
13
|
### Fix
|
|
@@ -101,6 +107,14 @@ Here are the breaking changes:
|
|
|
101
107
|
- remove `LOGGER` from `idf_build_apps`, use `logging.getLogger('idf_build_apps')` instead
|
|
102
108
|
- rename `build_job.py` to `build_apps_args.py`, `BuildAppJob` to `BuildAppsArgs`
|
|
103
109
|
|
|
110
|
+
## v1.1.5 (2024-03-20)
|
|
111
|
+
|
|
112
|
+
### Fix
|
|
113
|
+
|
|
114
|
+
- python 2.7 old class
|
|
115
|
+
- search sdkconfig path
|
|
116
|
+
- improve error message when env var IDF_PATH not set
|
|
117
|
+
|
|
104
118
|
## v1.1.4 (2023-12-29)
|
|
105
119
|
|
|
106
120
|
### Fix
|
|
@@ -66,12 +66,26 @@ def _check_app_dependency(
|
|
|
66
66
|
manifest_rootpath: t.Optional[str] = None,
|
|
67
67
|
modified_components: t.Optional[t.List[str]] = None,
|
|
68
68
|
modified_files: t.Optional[t.List[str]] = None,
|
|
69
|
+
ignore_app_dependencies_components: t.Optional[t.List[str]] = None,
|
|
69
70
|
ignore_app_dependencies_filepatterns: t.Optional[t.List[str]] = None,
|
|
70
71
|
) -> bool:
|
|
71
72
|
# not check since modified_components and modified_files are not passed
|
|
72
73
|
if modified_components is None and modified_files is None:
|
|
73
74
|
return False
|
|
74
75
|
|
|
76
|
+
# not check since ignore_app_dependencies_components is passed and matched
|
|
77
|
+
if (
|
|
78
|
+
ignore_app_dependencies_components
|
|
79
|
+
and modified_components is not None
|
|
80
|
+
and set(modified_components).intersection(ignore_app_dependencies_components)
|
|
81
|
+
):
|
|
82
|
+
LOGGER.info(
|
|
83
|
+
'Build all apps since modified components %s matches ignored components %s',
|
|
84
|
+
', '.join(modified_components),
|
|
85
|
+
', '.join(ignore_app_dependencies_components),
|
|
86
|
+
)
|
|
87
|
+
return False
|
|
88
|
+
|
|
75
89
|
# not check since ignore_app_dependencies_filepatterns is passed and matched
|
|
76
90
|
if (
|
|
77
91
|
ignore_app_dependencies_filepatterns
|
|
@@ -79,7 +93,7 @@ def _check_app_dependency(
|
|
|
79
93
|
and files_matches_patterns(modified_files, ignore_app_dependencies_filepatterns, manifest_rootpath)
|
|
80
94
|
):
|
|
81
95
|
LOGGER.info(
|
|
82
|
-
'Build all apps since
|
|
96
|
+
'Build all apps since modified files %s matches ignored file patterns %s',
|
|
83
97
|
', '.join(modified_files),
|
|
84
98
|
', '.join(ignore_app_dependencies_filepatterns),
|
|
85
99
|
)
|
|
@@ -108,6 +122,7 @@ def find_apps(
|
|
|
108
122
|
default_build_targets: t.Optional[t.Union[t.List[str], str]] = None,
|
|
109
123
|
modified_components: t.Optional[t.Union[t.List[str], str]] = None,
|
|
110
124
|
modified_files: t.Optional[t.Union[t.List[str], str]] = None,
|
|
125
|
+
ignore_app_dependencies_components: t.Optional[t.Union[t.List[str], str]] = None,
|
|
111
126
|
ignore_app_dependencies_filepatterns: t.Optional[t.Union[t.List[str], str]] = None,
|
|
112
127
|
sdkconfig_defaults: t.Optional[str] = None,
|
|
113
128
|
include_skipped_apps: bool = False,
|
|
@@ -137,8 +152,8 @@ def find_apps(
|
|
|
137
152
|
:param default_build_targets: default build targets used in manifest files
|
|
138
153
|
:param modified_components: modified components
|
|
139
154
|
:param modified_files: modified files
|
|
140
|
-
:param
|
|
141
|
-
|
|
155
|
+
:param ignore_app_dependencies_components: components used for ignoring checking the app dependencies
|
|
156
|
+
:param ignore_app_dependencies_filepatterns: file patterns used for ignoring checking the app dependencies
|
|
142
157
|
:param sdkconfig_defaults: semicolon-separated string, pass to idf.py -DSDKCONFIG_DEFAULTS if specified,
|
|
143
158
|
also could be set via environment variables "SDKCONFIG_DEFAULTS"
|
|
144
159
|
:param include_skipped_apps: include skipped apps or not
|
|
@@ -168,6 +183,7 @@ def find_apps(
|
|
|
168
183
|
|
|
169
184
|
modified_components = to_list(modified_components)
|
|
170
185
|
modified_files = to_list(modified_files)
|
|
186
|
+
ignore_app_dependencies_components = to_list(ignore_app_dependencies_components)
|
|
171
187
|
ignore_app_dependencies_filepatterns = to_list(ignore_app_dependencies_filepatterns)
|
|
172
188
|
config_rules_str = to_list(config_rules_str)
|
|
173
189
|
|
|
@@ -199,6 +215,7 @@ def find_apps(
|
|
|
199
215
|
manifest_rootpath=manifest_rootpath,
|
|
200
216
|
modified_components=modified_components,
|
|
201
217
|
modified_files=modified_files,
|
|
218
|
+
ignore_app_dependencies_components=ignore_app_dependencies_components,
|
|
202
219
|
ignore_app_dependencies_filepatterns=ignore_app_dependencies_filepatterns,
|
|
203
220
|
),
|
|
204
221
|
modified_components=modified_components,
|
|
@@ -225,6 +242,7 @@ def build_apps(
|
|
|
225
242
|
manifest_rootpath: t.Optional[str] = None,
|
|
226
243
|
modified_components: t.Optional[t.Union[t.List[str], str]] = None,
|
|
227
244
|
modified_files: t.Optional[t.Union[t.List[str], str]] = None,
|
|
245
|
+
ignore_app_dependencies_components: t.Optional[t.Union[t.List[str], str]] = None,
|
|
228
246
|
ignore_app_dependencies_filepatterns: t.Optional[t.Union[t.List[str], str]] = None,
|
|
229
247
|
check_app_dependencies: t.Optional[bool] = None,
|
|
230
248
|
# BuildAppsArgs
|
|
@@ -249,8 +267,8 @@ def build_apps(
|
|
|
249
267
|
are relative paths. Use the current directory if not specified
|
|
250
268
|
:param modified_components: modified components
|
|
251
269
|
:param modified_files: modified files
|
|
252
|
-
:param
|
|
253
|
-
|
|
270
|
+
:param ignore_app_dependencies_components: components used for ignoring checking the app dependencies
|
|
271
|
+
:param ignore_app_dependencies_filepatterns: file patterns used for ignoring checking the app dependencies
|
|
254
272
|
:param check_app_dependencies: check app dependencies or not. if not set, will be calculated by modified_components,
|
|
255
273
|
modified_files, and ignore_app_dependencies_filepatterns
|
|
256
274
|
:param parallel_count: number of parallel tasks to run
|
|
@@ -263,6 +281,7 @@ def build_apps(
|
|
|
263
281
|
apps = to_list(apps)
|
|
264
282
|
modified_components = to_list(modified_components)
|
|
265
283
|
modified_files = to_list(modified_files)
|
|
284
|
+
ignore_app_dependencies_components = to_list(ignore_app_dependencies_components)
|
|
266
285
|
ignore_app_dependencies_filepatterns = to_list(ignore_app_dependencies_filepatterns)
|
|
267
286
|
|
|
268
287
|
test_suite = TestSuite('build_apps')
|
|
@@ -313,7 +332,11 @@ def build_apps(
|
|
|
313
332
|
modified_components=modified_components,
|
|
314
333
|
modified_files=modified_files,
|
|
315
334
|
check_app_dependencies=_check_app_dependency(
|
|
316
|
-
manifest_rootpath,
|
|
335
|
+
manifest_rootpath=manifest_rootpath,
|
|
336
|
+
modified_components=modified_components,
|
|
337
|
+
modified_files=modified_files,
|
|
338
|
+
ignore_app_dependencies_components=ignore_app_dependencies_components,
|
|
339
|
+
ignore_app_dependencies_filepatterns=ignore_app_dependencies_filepatterns,
|
|
317
340
|
)
|
|
318
341
|
if check_app_dependencies is None
|
|
319
342
|
else check_app_dependencies,
|
|
@@ -563,6 +586,18 @@ def get_parser() -> argparse.ArgumentParser:
|
|
|
563
586
|
'If set to "", the value would be considered as None. '
|
|
564
587
|
'If set to ";", the value would be considered as an empty list',
|
|
565
588
|
)
|
|
589
|
+
common_args.add_argument(
|
|
590
|
+
'-ic',
|
|
591
|
+
'--ignore-app-dependencies-components',
|
|
592
|
+
type=semicolon_separated_str_to_list,
|
|
593
|
+
help='semicolon-separated string which specifies the modified components used for '
|
|
594
|
+
'ignoring checking the app dependencies. '
|
|
595
|
+
'The `depends_components` and `depends_filepatterns` set in the manifest files will be ignored when any of the '
|
|
596
|
+
'specified components matches any of the modified components. '
|
|
597
|
+
'Must be used together with --modified-components. '
|
|
598
|
+
'If set to "", the value would be considered as None. '
|
|
599
|
+
'If set to ";", the value would be considered as an empty list',
|
|
600
|
+
)
|
|
566
601
|
common_args.add_argument(
|
|
567
602
|
'-if',
|
|
568
603
|
'--ignore-app-dependencies-filepatterns',
|
|
@@ -683,11 +718,13 @@ def validate_args(parser: argparse.ArgumentParser, args: argparse.Namespace) ->
|
|
|
683
718
|
default_build_targets.append(target)
|
|
684
719
|
args.default_build_targets = default_build_targets
|
|
685
720
|
|
|
721
|
+
if args.ignore_app_dependencies_components is not None:
|
|
722
|
+
if args.modified_components is None:
|
|
723
|
+
raise InvalidCommand('Must specify "--ignore-app-dependencies-components" with "--modified-components", ')
|
|
724
|
+
|
|
686
725
|
if args.ignore_app_dependencies_filepatterns is not None:
|
|
687
726
|
if args.modified_files is None:
|
|
688
|
-
raise InvalidCommand(
|
|
689
|
-
'Must specify "--ignore-component-dependencies-file-patterns" with "--modified-files", '
|
|
690
|
-
)
|
|
727
|
+
raise InvalidCommand('Must specify "--ignore-app-dependencies-filepatterns" with "--modified-files", ')
|
|
691
728
|
|
|
692
729
|
|
|
693
730
|
def apply_config_args(args: argparse.Namespace) -> None:
|
|
@@ -731,6 +768,7 @@ def main():
|
|
|
731
768
|
default_build_targets=args.default_build_targets,
|
|
732
769
|
modified_components=args.modified_components,
|
|
733
770
|
modified_files=args.modified_files,
|
|
771
|
+
ignore_app_dependencies_components=args.ignore_app_dependencies_components,
|
|
734
772
|
ignore_app_dependencies_filepatterns=args.ignore_app_dependencies_filepatterns,
|
|
735
773
|
sdkconfig_defaults=args.sdkconfig_defaults,
|
|
736
774
|
)
|
|
@@ -766,6 +804,7 @@ def main():
|
|
|
766
804
|
manifest_rootpath=args.manifest_rootpath,
|
|
767
805
|
modified_components=args.modified_components,
|
|
768
806
|
modified_files=args.modified_files,
|
|
807
|
+
ignore_app_dependencies_components=args.ignore_app_dependencies_components,
|
|
769
808
|
ignore_app_dependencies_filepatterns=args.ignore_app_dependencies_filepatterns,
|
|
770
809
|
junitxml=args.junitxml,
|
|
771
810
|
)
|
|
@@ -30,7 +30,7 @@ entry_points = \
|
|
|
30
30
|
{'console_scripts': ['idf-build-apps = idf_build_apps:main.main']}
|
|
31
31
|
|
|
32
32
|
setup(name='idf-build-apps',
|
|
33
|
-
version='2.
|
|
33
|
+
version='2.3.0',
|
|
34
34
|
description='Tools for building ESP-IDF related apps.',
|
|
35
35
|
author=None,
|
|
36
36
|
author_email='Fu Hanxi <fuhanxi@espressif.com>',
|
|
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
|
|
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
|