Commit Graph
30 Commits
Author SHA1 Message Date
Roland Dobai a9df167bf4 ci(gitlab): Use internal Esptool releases in the pipeline 2026-05-25 15:31:52 +02:00
Roland Dobai 8ea6271b77 ci(gitlab): Force the update of esptool to the latest dev release 2026-05-18 10:10:46 +02:00
Roland Dobai 29dcff2cdc fix(tools): seed IDF_VERSION before idf.py parses dependencies.lock
Any idf.py invocation could hang indefinitely with no output while
spawning an unbounded chain of "idf.py --version" subprocesses,
eventually exhausting system memory.

During init_cli(), idf.py parses the project's dependencies.lock to
vet trusted component-provided idf_ext.py extensions. If the lock
contains a component whose manifest has an "if: idf_version" clause,
evaluating it calls idf-component-manager's _get_idf_version(). Outside
a CMake build the IDF_VERSION environment variable is not set, so that
function falls back to running "idf.py --version" as a subprocess,
which re-enters init_cli() and recurses without bound.

During a normal CMake build the component manager runs as a subprocess
that already has IDF_VERSION in its environment (see build/config.env),
so the fallback is never reached. The recursion happens only because
idf.py runs component-manager code in-process during its own CLI
startup, outside that context.

Seed IDF_VERSION into os.environ early in init_cli(), before any
dependencies.lock parsing, using the subprocess-free
idf_version_from_cmake() helper. This gives in-process component-manager
code the same IDF_VERSION a CMake build would provide.
2026-05-15 16:30:46 +02:00
Roland Dobai 7aef45a869 fix(cmake): quote variable references in conditional expressions
Closes https://github.com/espressif/esp-idf/issues/18445
2026-04-20 17:22:54 +08:00
Roland Dobai 7341f0564b feat(cmake): Create a merged hints database in the build directory 2026-03-24 19:23:22 +01:00
Roland Dobai 0c592432ef change(cmake): add temporary hotfix to skip warnings for specific components
Temporary workaround for avoiding to produce warnings for esp_wifi (
https://github.com/espressif/esp-idf/issues/18036,
https://github.com/espressif/esp-idf/issues/17840).
2026-01-10 00:39:39 +08:00
Roland Dobai 2e1a2f9244 change(readme): Add auto-generated chip support table into the README 2026-01-05 16:37:09 +01:00
Roland Dobai 5791519a4a ci(gitlab): Upgrade the full dependency tree of CI-related Python packages
The eager upgreade policy should upgrade the full dependency tree and
not just the packages listed in the requirements file. The disadvantage
is some extra time for package resolution.

This upgrade policy is applied to CI-related packages only because we
don't want this to be used for customer-facing packages and/or provide
the customers with a different environment to that tested in the CI.
2025-11-26 09:31:20 +01:00
Roland Dobai 07a213edfa change(gitlab): simplify approvals for backports (v6.0) 2025-10-24 14:04:05 +02:00
Roland Dobai 52f7cebcd3 ci: Support known failure cases in pytests on Windows runners 2025-09-29 15:38:43 +02:00
Roland Dobai bc01141098 fix(cmake): correct component targets property name in validation
The component validation script was using an incorrect property name
'__COMPONENT_TARGETS' when retrieving component targets. This should be
'__BUILD_COMPONENT_TARGETS' to match the actual property name used
throughout the build system.

This fix ensures the component validation can properly access the list
of component targets and perform validation checks correctly.
2025-09-29 15:37:54 +02:00
Roland Dobai cb84b6860a ci: Support known failure cases in pytests of test_tools 2025-09-26 08:29:55 +02:00
Roland Dobai 5dad2a4884 ci(test): Improve test failures on Windows
Tests are made cancellable and to print STDOUT and STDERR upon failures.
2025-09-24 13:43:23 +02:00
Roland Dobai 36fb960e5f change(tools): Fix pre-commit checks for tools.py 2025-09-24 13:43:23 +02:00
Roland Dobai ef878f4d25 ci(test): Test requiring pexpect.spawn cannot be run on Windows 2025-09-24 13:43:23 +02:00
Roland Dobai 9e8962c6cc change(tools): Fix pre-commit checks for test_idf_qemu.py 2025-09-24 13:43:23 +02:00
Roland Dobai 26ae9e8589 ci(gitlab): Split up Windows tests into (more) parallel jobs 2025-09-24 13:43:23 +02:00
Roland Dobai adb2d5deee feat(cmake): Produce warnings when component dependencies are not defined
There are idf.py hints for helping the user to set component
dependencies properly instead of building sources out-of-component or
including headers from outside the component directory. These are
produced with
tools/idf_py_actions/hint_modules/component_requirements.py.

However, idf.py hints are printed only when the build fails. If the user
starts with a buildable solution then the suggestions to add component
dependencies are not printed.

This commit introduces cmake-level warnings for building source files
from outside the component and including header files without setting up
proper component dependencies.
2025-09-24 13:43:23 +02:00
Roland Dobai c3729929a8 change(tools): Fix pre-commit checks for test_components.py 2025-09-24 13:43:23 +02:00
Roland Dobai 9e5304a77f change(tools): Fix ruff linting issues in idf_tools.py 2025-09-16 10:44:55 +02:00
Roland Dobai 791a70e6f3 fix(tools): Fix warning message from idf_tools.py 2025-09-16 16:35:03 +08:00
Roland Dobai 032b070cf8 feat(tools): Add ESP32-H4 into the chip support matrix 2025-09-10 10:55:24 +02:00
Roland Dobai 47d11179f1 fix(components/tcp_transport): Fix missing file extension in the test_app 2025-08-19 14:44:32 +02:00
Roland Dobai 3efb46e480 remove(tools): Drop official support for gdbgui 2025-06-06 14:32:05 +08:00
Roland Dobai 532ea1ad6d change(tools): fix the style of debug_ext.py 2025-06-06 14:32:05 +08:00
Roland Dobai ac4f9a5215 ci: Update the copyright checker version to fix an issue 2025-03-26 08:56:46 +01:00
Roland Dobai fc6272e9b0 ci(tools): Check copyright for BSASM files 2025-01-09 15:16:56 +01:00
Roland Dobai 0a354e09ef Tools: Add new ROM binary release including for ESP32-C5 2024-10-14 14:32:35 +08:00
Roland Dobai 86b7960c3b fix(tools/idf_tools.py): Improve the warning message about the environment 2024-06-13 12:38:14 +02:00
Roland Dobai ffbcbccf61 docs(readme): Update the chip support matrix in the README 2024-04-03 17:31:20 +02:00