Marek Fiala and Cursor
20e426ccfe
docs(tools): update mcp-server docs for project_dir and create-project
...
- Server can now start from any directory, not just a valid project dir
- Document project_dir argument available on all tools
- Add create-project tool to the list of available tools
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-06-25 09:13:50 +02:00
Marek Fiala
a0c3c6aeeb
feat(tools): Improved verification of ESP-IDF project
...
Closes https://github.com/espressif/esp-idf/issues/18675
2026-06-25 09:13:49 +02:00
Marek Fiala
66bbd208d3
feat(tools): mcp-server added create-project tool
2026-06-25 09:13:49 +02:00
Marek Fiala
40fe010be4
feat(tools): mcp-server accepts project_dir from chat
...
At the same time, it's possible to start idf.py mcp-server
outside ESP-IDF project directory.
Added ESP-IDF mcp server tests
2026-06-25 09:13:49 +02:00
Marek Fiala
9f4d7721ca
fix(tools): Patch rich-click version < 1.9.5
2026-05-29 10:24:26 +02:00
Marek Fiala
c6a5b4cefc
feat(tools): idf.py --help custom CMake targets rich-click style
2026-05-29 10:24:26 +02:00
Marek Fiala
925afdb7ba
feat(tools): Visibly grouped custom extension actions in idf.py --help
2026-05-29 10:24:26 +02:00
Marek Fiala
82f804cd1d
feat(tools): Replaced click with rich_click
2026-05-29 10:24:21 +02:00
Marek Fiala
488e8fdc1f
Merge branch 'contrib/github_pr_18556' into 'master'
...
fix(tools): idf_tools.py uninstall: initialize archive_version before use (GitHub PR)
Closes IDFGH-17632
See merge request espressif/esp-idf!48213
2026-05-21 02:55:24 +08:00
Marek Fiala
bb2d197129
fix: Try to enclose args and paths in quotes
2026-04-27 12:41:53 +02:00
Marek Fiala
8a5cd0a285
test: fix setuptools auto-discovery failure on Windows vm
2026-04-27 12:41:53 +02:00
Marek Fiala
ca08f28d22
Merge branch 'feat/extenral_components_from_valid_sources' into 'master'
...
feat(tools): Restrict loading extension components to trusted sources
Closes DOC-13994
See merge request espressif/esp-idf!46089
2026-04-16 15:54:38 +08:00
Marek Fiala
4d1612cd3c
feat(tools): Restrict loading extension components to trusted sources
2026-04-15 16:30:57 +08:00
Marek Fiala
d1bbfabb22
docs(tools): Adjusted mcp server documentation
2026-03-16 13:27:54 +08:00
Marek Fiala
c07737ee17
feat(tools): mcp_ext.py commands adjustments
2026-03-16 13:27:54 +08:00
Marek Fiala
45c2190fa7
Merge branch 'feat/add_ar_binaries' into 'master'
...
feat(tools): Added cmake and ninja arm binaries
Closes IDFGH-17282
See merge request espressif/esp-idf!46119
2026-03-12 03:57:46 +08:00
Marek Fiala
91ba929695
feat(tools): Added cmake and ninja arm binaries
...
Closes https://github.com/espressif/esp-idf/issues/18272
2026-03-10 13:49:35 +01:00
Marek Fiala
eb0086ef7f
change: Moved esp-tls hint to component specific hints.yml file
2026-02-13 15:59:31 +08:00
Marek Fiala
c311fb0db3
test(tools): Added test for coponent hints loading
2026-02-13 15:59:31 +08:00
Marek Fiala
75bf3bdb54
feat(tools): Extended hints.yml loading from components
2026-02-13 15:59:31 +08:00
Marek Fiala
93714b9dfd
Merge branch 'fix/update_argument_file_docs' into 'master'
...
docs(tools): Enclosed @argument_file with quotations
See merge request espressif/esp-idf!44803
2026-01-16 16:26:27 +08:00
Marek Fiala
9b0475de34
docs(tools): Made static link for config profile files
...
Made the reference link to v5.5 to reflect the correct example,
as in later version the example was changed.
2026-01-14 23:17:00 +08:00
Marek Fiala
3a23146518
docs(tools): Updated argument via file with quotations
...
Closes https://github.com/espressif/esp-idf/issues/18077
2026-01-14 23:17:00 +08:00
Marek Fiala
1896bea52f
Merge branch 'feat/drop_esp_idf_size_2_0_restriction' into 'master'
...
feat(tools): Clean up esp-idf-size new generation
Closes IDF-14272
See merge request espressif/esp-idf!42822
2025-12-19 17:16:00 +08:00
Marek Fiala
9d6c0ee7ce
feat(tools): Clean up esp-idf-size new generation
2025-12-18 03:43:04 +08:00
Marek Fiala
a279eeac29
feat(tools): Updated ccache 4.11.2 -> 4.12.1
...
Closes https://github.com/espressif/esp-idf/issues/17756
2025-11-19 15:54:26 +01:00
Marek Fiala
0ce86cbb7b
refactor(tools): test_idf_tools.py ruff changes
2025-11-19 15:53:25 +01:00
Marek Fiala
9155e04f06
docs(idf-py.rst): Added cmake preset paragraph
2025-10-29 11:47:40 +08:00
Marek Fiala
1e351a8b67
test(tools): Moved preset parsing into core_ext.py and added tests
2025-10-29 11:47:40 +08:00
Marek Fiala
86ec7c7d6b
Merge branch 'revert/env_locale' into 'master'
...
Revert "fix: Updated locale handling to prevent issues with build tools"
See merge request espressif/esp-idf!42953
2025-10-29 11:39:58 +08:00
Marek Fiala
3c9ad9c091
Revert "fix: Updated locale handling to prevent issues with build tools"
...
This reverts commit 7e09b471ab .
2025-10-28 04:02:21 +01:00
Marek Fiala
c4347a682d
feat: Install mcp with initialization scripts
2025-10-20 16:22:54 +02:00
Marek Fiala
854f6b0a3e
fix(test_idf_py): Added extension API version into test extensions files
2025-10-02 15:37:29 +02:00
Marek Fiala
248c3a996e
change(test_idf_py): ruff formatting idf_ext.py & some_ext.py
2025-10-02 15:34:31 +02:00
Marek Fiala
56fa45c741
revert(tools): Removed --legacy option for esp-idf-size
2025-09-29 01:54:38 +08:00
Marek Fiala
8f4c52a358
change(tools): ruff formatting core_ext.py
2025-09-29 01:54:38 +08:00
Marek Fiala
96ff174dac
feat(tools): idf.py extension - added interface version
2025-09-23 15:26:33 +08:00
Marek Fiala
7ac1c541fd
docs(tools): Updated documentation about extension options
2025-09-23 15:26:33 +08:00
Marek Fiala
74f75feb3a
test(tools): Added idf extensions build system tests
2025-09-23 15:26:33 +08:00
Marek Fiala
4f8fb84caa
feat(tools): Added check for duplicit action names/aliases from external extensions
2025-09-23 15:26:33 +08:00
Marek Fiala
732f68a2a5
feat(tools): Load idf_ext.py from build component directories & python entrypoints
...
Extend search for idf_ext.py beyond the project directory to include
all build components involved in the build. Also discover idf_ext.py
modules via Python entrypoints.
2025-09-23 15:26:33 +08:00
Marek Fiala
2ec170b2fb
change(tools): idf.py & tools.py ruff formatting
2025-09-23 15:26:33 +08:00
Marek Fiala
7e5b0a8bb0
feat(test): Used dockerfile with updated cmake versions
2025-09-22 16:47:50 +02:00
Marek Fiala
efa75a9b60
test(tools): Added minimal supported cmake versions build system tests
2025-09-22 16:47:42 +02:00
Marek Fiala
af168c75b3
docs(migration-guide): Information on how to update CMake
2025-08-19 14:44:32 +02:00
Marek Fiala
9d35d63651
feat(cmake): Update minimum cmake version to 3.22 (whole repository)
2025-08-19 14:44:32 +02:00
Marek Fiala
d7faae9ae4
change(tools): ruff formating test_hints.py
2025-08-19 14:44:31 +02:00
Marek Fiala
9aada24169
feat(tools): Updated cmake versions - tools.json
...
recommended v3.30.2 -> v4.0.3
supported v3.16.3 -> v3.22.1
2025-08-19 14:44:31 +02:00
Marek Fiala
d548d283b9
revert(tools): Revert backup option to use legacy export scrips
...
This reverts commit 7b417fc3f2 .
2025-08-15 09:11:02 +02:00
Marek Fiala
a6a4f8a705
feat(tools): Normalized detected shell names to lowercase on Windows
...
Closes https://github.com/espressif/esp-idf/issues/16868
2025-07-21 11:16:10 +02:00
Marek Fiala
b7efec31d2
change(tools): shell_types.py ruff formatting
2025-07-21 11:16:10 +02:00
Marek Fiala
8ae487d48e
feat(tools): Enforce pip 'user' option to no, when installing python env
...
Closes https://github.com/espressif/esp-idf/issues/16189
2025-07-11 21:35:39 +08:00
Marek Fiala
285e1edbea
feat(tools): Added encoding when special characters used with username
...
Closes https://github.com/espressif/esp-idf/issues/16229
2025-07-11 21:35:11 +08:00
Marek Fiala
bd0873f9ec
fix(tools): idf_tools.py uninstall decide based on preferred tool version
...
idf_tools.py uninstall now doesn't take only recommended version, but
makes the decision based on preferred installed versions.
2025-06-18 19:33:54 +08:00
Marek Fiala
335ba6b3c2
test(tools): Added test for installing supported tool version
...
Added test_export_supported_version_cmake in `test_idf_tools.py`,
that installs and exports supported version of tool - cmake.
2025-06-18 19:33:54 +08:00
Marek Fiala
79ebe0b306
fix(tools): idf_tools.py install tool@version
2025-06-18 19:33:54 +08:00
Marek Fiala
b3f24a9533
fix(tools): idf.py create-project works in read-only ESP-IDF
...
As the native copy function shutil.copyfile preserves directories metadata
such as file permissions, we need to ensure the copied destination
is writable for owner.
Closes https://github.com/espressif/esp-idf/issues/15964
Closes https://github.com/espressif/esp-idf/pull/16021
2025-06-10 14:48:08 +02:00
Marek Fiala
5ec67f5e2c
feat(tools): adjusted create_ext.py by ruff formatter
2025-06-10 14:48:08 +02:00
Marek Fiala
c17baef38d
feat(test): Lower the scope when win tests are automatically executed
...
Introduced new rule "atterns-build_system_win", that coveres scope
for windows test. It currently contains only "tools/test_build_system/**/*".
2025-05-27 11:24:58 +02:00
Marek Fiala
94994f7ad3
fix(test): Temporarily disable test_cli_installer_win
2025-05-27 11:13:04 +02:00
Marek Fiala
a3318d6280
fix(test): Temporarily allow test_cli_installer_win to fail
2025-05-21 16:12:35 +08:00
Marek Fiala
39cbbab859
fix(tools): Enabled removing requirements.* files
2025-05-19 15:51:49 +02:00
Marek Fiala
478eea8992
feat(tools): Update ccache 4.10.2 -> 4.11.2
...
Closes https://github.com/espressif/idf-installer/issues/305
2025-05-13 15:07:51 +08:00
Marek Fiala
995c0777f8
Merge branch 'fix/failing_custom_cmake_host_win' into 'master'
...
fix(Tools): failing test_build_custom_cmake_project (Win, MacOS runners)
Closes IDF-12682
See merge request espressif/esp-idf!37932
2025-04-16 16:01:23 +08:00
Marek Fiala
1507ec7466
fix(test): Proper cleanup after build_custom_cmake pytest
...
The test create build folder in current directory which
in this case is defined by (test_app_copy).
It also creates sdkconfig file in cmake source directory, which
is defined as $IDF_PATH/examples/build_system/cmake/idf_as_lib
The fixtures ensures proper cleanup even when test fails.
2025-04-15 15:09:27 +02:00
Marek Fiala
58b3c60f59
fix(tools): Update ruff-format changes
2025-04-15 15:09:27 +02:00
Marek Fiala
c288935305
ci(tools): Run Win build system tests when patterns-build_system changed
2025-04-15 15:09:27 +02:00
Marek Fiala
87a118361f
test(tools): skip custom cmake project test for host on Win
2025-04-15 15:09:27 +02:00
Marek Fiala
1469ee767f
feat(tools): Remove PATH duplicity from first call of tools/activate.py
2025-03-13 14:44:52 +01:00
Marek Fiala
5e7e9dd667
feat(tools): Deactivate current ESP-IDF environment with every export run
...
Unix systems only
2025-03-13 14:44:52 +01:00
Marek Fiala
a09fdf2f3e
feat(tools): Safer clearing IDF_PYTHON_ENV_PATH if existing
2025-03-13 17:14:01 +08:00
Marek Fiala
2c814ef2fa
feat(tools): Enforce utf-8 encoding with open() function
2024-12-27 17:12:21 +08:00
Marek Fiala
bfaceabefb
fix(tools): Use ESP_PYTHON with activate.py in export.fish
...
Closes https://github.com/espressif/esp-idf/issues/15058
2024-12-19 15:05:45 +01:00
Marek Fiala
dd31a41303
fix(tools): Enable to use IDF_PATH with export.sh
2024-12-18 13:38:47 +01:00
Marek Fiala
5930a422d7
fix(tools): Fixed timeout and path bug for test_cli_installer_win
2024-12-16 14:55:16 +01:00
Marek Fiala
0b78083595
fix(tools): fixed test_create_project_with_idf_readonly on Win
2024-12-16 14:55:15 +01:00
Marek Fiala
d7d1cc7c23
fix(tools): IDF_PATH_OLD not found in PowerShell
2024-11-26 12:40:46 +01:00
Marek Fiala
cad15b50c4
feat(tools): Inform user about IDF_PATH set/change in install/export scripts
2024-11-25 15:56:16 +08:00
Marek Fiala
d7d8828824
docs(tools): Mention idf_version.txt and ESP_IDF_VERSION in documentation
2024-11-11 16:08:47 +01:00
Marek Fiala
26002e13fc
feat(tools): Imporve activate.py debug information
2024-11-05 13:53:00 +01:00
Marek Fiala
7de166e882
fix(tools): Enable multiuser/multiinstance use of activate script
2024-10-21 16:23:55 +02:00
Marek Fiala
6ec1e9107f
feat(tools): Move sample_project from examples to tools
...
Extended example readme.md by further development options.
2024-09-16 09:12:50 +02:00
Marek Fiala
f90b847cb1
Merge branch 'fix/correct_shell_detection' into 'master'
...
fix(tools): Corrected detect_shell
See merge request espressif/esp-idf!33365
2024-09-06 19:22:15 +08:00
Marek Fiala
24ae042bba
fix(tools): Corrected detect_shell
...
When comparing process name with python,
lowercase the process name in condition.
2024-09-06 11:11:50 +02:00
Marek Fiala
7b417fc3f2
feat(tools): Add backup option to use legacy export script
...
This feature serves as an immediate fix in case
the new export approach causes issues.
The user can simply set the environment variable `ESP_IDF_LEGACY_EXPORT`,
and the old export script will be used.
2024-09-05 10:13:05 +02:00
Marek Fiala
88527faff8
feat(tools): Added Windows shells support + refactoring
2024-09-05 10:13:04 +02:00
Marek Fiala
ccf5989505
feat(tools): Exclude modified folders by rebuild
2024-09-04 12:48:15 +02:00
Marek Fiala
f0ca91b103
feat(tools): Update tools: cmake, ninja, ccache
...
cmake v3.24.0 -> v3.30.2
ninja v1.11.1 -> v1.12.1
ccache v4.8 -> v4.10.2
Closes https://github.com/espressif/esp-idf/pull/14376
2024-09-04 12:48:14 +02:00
Marek Fiala
46efcd09c7
Merge branch 'fix/ci_win_kconfig' into 'master'
...
fix(Tools): failing Win CI tests
Closes IDF-10514 and IDF-10764
See merge request espressif/esp-idf!32446
2024-08-22 00:28:48 +08:00
Marek Fiala
364f777f96
feat(tools): Allow test_spaces_bundle4 to fail on Win
2024-08-21 14:37:06 +02:00
Marek Fiala
e95aff7ca9
feat(tools): sanitize all fixtures using test names
...
The parametrization include `[` and `]` in names. This is not
possible to use within path. Expand the sanitization into all
fixtures using request.node.name.
2024-08-21 14:37:06 +02:00
Marek Fiala
ccbb415be8
feat(tools): add pytest mark idf_copy_with_space
2024-08-21 14:37:05 +02:00
Marek Fiala
f0e8966ca5
feat(tools): Use custom directory in failing pytest
2024-08-21 14:37:05 +02:00
Marek Fiala
55112978fd
feat(tools): json schema verifies that no additional properties are used
...
Closes https://github.com/espressif/esp-idf/issues/13853
Closes https://github.com/espressif/esp-idf/pull/13854
2024-05-27 16:24:56 +02:00
Marek Fiala
e351a4407a
fix(tools): fix failing create readonly project build system test
...
Changed the way of removing copied esp-idf folder.
2024-04-30 16:42:05 +02:00
Marek Fiala
f2b75d81b3
fix(system): fix idf.py build ulp examples containing spaces in path on Win
2024-04-09 14:00:34 +02:00
Marek Fiala
c21cdf0a1f
feat(tools): produce correct err code in export/install .bat scripts
...
Plus unify labels to begin with underscore
2024-03-01 13:00:09 +01:00
Marek Fiala
54be450c4a
feat(tools): detect linux platform only on linux systems
...
Closes https://github.com/espressif/esp-idf/issues/13148
2024-02-22 19:30:11 +08:00
Marek Fiala
da43126f02
feat(tools): idf_tools.py unsupported platforms
...
Plus improved error messages about platform detection.
Closes https://github.com/espressif/esp-idf/issues/12959
Closes https://github.com/espressif/esp-idf/issues/12865
2024-02-22 19:30:11 +08:00
Marek Fiala
65db8bf7a9
refactor(tools): Split build pytest into multiple jobs
2024-02-08 13:49:28 +01:00