Changelog
All notable changes to this project will be documented in this file.
v1.1.5 (2024-03-20)
Fix
python 2.7 old class
search sdkconfig path
improve error message when env var IDF_PATH not set
v1.1.4 (2023-12-29)
Fix
stop modifying yaml dict shared by yaml anchors
v1.1.3 (2023-11-13)
Fix
pyyaml dependency for python version older than 3.5
stop recursively copy when work dir in app dir
v1.1.2 (2023-08-16)
Feat
improve logging when manifest file is invalid
skip running “idf.py reconfigure” when modified components is empty
v1.1.1 (2023-08-02)
Fix
ignore idf_size.py error
v1.1.0 (2023-07-21)
Feat
support esp_rom caps as keywords in the manifest file
v1.0.4 (2023-07-20)
Fix
stop overriding supported targets with sdkconfig file defined one for disabled app
v1.0.3 (2023-07-19)
Fix
correct final reports with skipped apps and failed built apps
skip while collecting only when both depend components and files unmatched
v1.0.2 (2023-07-05)
Feat
support placeholder “@v”
Support keyword
IDF_VERSION
in the if statement
Fix
non-ascii character
build failed with warnings even without passing
--check-warnings
v1.0.1 (2023-06-12)
Fixed
glob patterns are matched recursively
v1.0.0 (2023-05-25)
Added
Support keyword
depends_filepatterns
in the manifest fileSupport expanding environment variables in the manifest files
BREAKING CHANGES
Attributes Renamed
App.requires_components
renamed toApp.depends_components
FolderRule.requires_components
renamed toFolderRule.depends_components
Functions Renamed
Manifest.requires_components()
renamed toManifest.depends_components()
Signatures Changed
App.build()
App.is_modified()
find_apps()
build_apps()
CLI Options Renamed
--depends-on-components
renamed to--modified-components
--depends-on-files
renamed to--modified-files
--ignore-components-dependencies-file-patterns
renamed to--ignore-app-dependencies-filepatterns
Removed the deprecated CLI call methods, now these options only support space-separated list
--exclude
--config
--manifest-file
--ignore-warning-str
--default-build-targets
v0.6.1 (2023-05-10)
Fixed
Add missing dependency
pyyaml
. It’s wrongly removed in 0.6.0.
v0.6.0 (2023-05-08) (yanked)
Added
Support configuration file with
tool.idf-build-apps
section underpyproject.toml
file.idf_build_apps.toml
file
Improve help message, include default value, config name, and config type
Improve help message, add DeprecationWarning to change the CLI call method from “specify multiple times” to “space-separated list” for the following CLI options. (will be removed in 1.0.0)
--exclude
--config
--manifest-file
--ignore-warning-str
Support placeholder
@p
for parallel indexSupport expand placeholders for CLI options
--collect-app-info
and--collect-size-info
Support new keywords
CONFIG_NAME
in the manifest file
Fixed
Fix earlier python version pathlib does not support member function
expanduser
issueRemove unused dependency
pyyaml
Refactored
Move
utils.setup_logging()
tolog.setup_logging()
Make CLI option
--default-build-targets
from comma-separated list to space-separated list (comma-separated list support will be removed in 1.0.0)
v0.5.2 (2023-04-07)
Fixed
Remove empty expanded sdkconfig files folder after build
Split up expanded sdkconfig files folder for different build
v0.5.1 (2023-04-06)
Fixed
Build with expanded sdkconfig file would respect the target-specific one under the original path
v0.5.0 (2023-03-29)
Added
Add an executable script
idf-build-apps
. Now this tool could be run viaidf-build-apps build ...
instead ofpython -m idf_build_apps build ...
Support specify
-DSDKCONFIG_DEFAULTS
foridf.py build
via CLI option
--sdkconfig-defaults
via environment variable
SDKCONFIG_DEFAULTS
Fixed
CLI option
-t
,--target
is required, improve the error message
v0.4.1 (2023-03-15)
Fixed
Stop writing
app_info
andsize_info
if the build got skippedIDF_VERSION_MAJOR
,IDF_VERSION_MINOR
,IDF_VERSION_PATCH
now are integersSkip exclude files while removing build directory if files not exist
Use log level
INFO
for ignored warningsCan’t use
and
in if clauses
v0.4.0 (2023-03-09)
This is the last version to support ESP-IDF v4.1 since it’s EOL on Feb. 24th, 2023.
Added
Support new keywords
IDF_VERSION_MAJOR
,IDF_VERSION_MINOR
,IDF_VERSION_PATCH
in the manifest fileSupport colored output by default in UNIX-like systems
Add
--no-color
CLI option
Support ignore check component dependencies based on changed files and specified file patterns
Add
--ignore-component-dependencies-file-patterns
CLI optionAdd
--depends-on-files
CLI option
Fixed
Improve the readability of the generated logs
v0.3.2 (2023-03-08)
Fixed
idf.py reconfigure
without settingIDF_TARGET
wrong log level on “Loading manifest file: …”. Set from
INFO
toDEBUG
wrong log level on “Building app [ID]: …”. Set from
DEBUG
toINFO
v0.3.1 (2023-02-20)
Fixed
Relative path defined in the manifest files depend on the current work path
Added
manifest_rootpath
argument infind_apps()
. Will use this value instead as the root folder for calculating absolute path
v0.3.0 (2023-01-10)
Added
find_apps
,build_apps
support--depends-on-components
, will only find or build apps that require specified componentsmanifest file support
requires_components
Fixed
Wrong
App.verified_targets
whenCONFIG_IDF_TARGET
set in app’ssdkconfig.defaults
file
v0.2.1 (2022-09-02)
Fixed
Fix
--format json
incompatible issue for IDF branches earlier than 5.0Fix type annotations incompatible issue for python versions earlier than 3.7
Fix f-string incompatible issue for python versions earlier than 3.7
Fix unpack dictionary ending comma syntax error for python 3.4
v0.2.0 (2022-08-31)
Added
Use
--format json
instead of--json
withidf_size.py