-
Notifications
You must be signed in to change notification settings - Fork 133
Release/v4.0.0 (Review for rebase) #1308
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Changes from 38 commits
0b29ef2
afc239b
0f5621f
81bb9bb
538a66b
332994c
9da1c46
6ad37c2
ca54118
7815f53
4102d87
d43873b
23fc2cc
25e7396
3c9942b
2f1daa5
e0dbae4
041f5c6
feaf021
1aeffb9
ffa51f2
94261e5
0da63e9
6f24401
1c9dd6e
df056df
c3356ed
ec302ba
d359c54
dd38dcd
53dc8f3
a8da9bb
dcf7e43
95b54e7
715e958
f565735
56834a6
d264866
7f3e49f
4b1b87e
222cf77
9f0cd90
3ae9b40
1c88697
8c628ac
3178087
5dade7f
5c3a995
e24f01d
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -5,33 +5,31 @@ name: Java CI with Maven | |||||||||||||||||
|
|
||||||||||||||||||
| on: | ||||||||||||||||||
| push: | ||||||||||||||||||
| branches: [ master ] | ||||||||||||||||||
| branches: | ||||||||||||||||||
| - master | ||||||||||||||||||
| - release/** | ||||||||||||||||||
| pull_request: | ||||||||||||||||||
| branches: [ master ] | ||||||||||||||||||
| branches: | ||||||||||||||||||
| - master | ||||||||||||||||||
| - release/** | ||||||||||||||||||
|
|
||||||||||||||||||
| jobs: | ||||||||||||||||||
| build: | ||||||||||||||||||
| build_linux: | ||||||||||||||||||
|
|
||||||||||||||||||
| runs-on: | ||||||||||||||||||
| - self-hosted | ||||||||||||||||||
| - eclipse | ||||||||||||||||||
| - BrnoUBU0004 | ||||||||||||||||||
| runs-on: [self-hosted, eclipse, BrnoUBU0004] | ||||||||||||||||||
|
|
||||||||||||||||||
| steps: | ||||||||||||||||||
| - uses: actions/checkout@v2 | ||||||||||||||||||
|
|
||||||||||||||||||
| - name: Clone IDF Release From Github | ||||||||||||||||||
| uses: actions/checkout@v2 | ||||||||||||||||||
| with: | ||||||||||||||||||
| repository: espressif/esp-idf | ||||||||||||||||||
| path: dependencies/idf-tools | ||||||||||||||||||
| submodules: 'true' | ||||||||||||||||||
| ref: release/v5.4 | ||||||||||||||||||
| - uses: actions/checkout@v4 | ||||||||||||||||||
|
|
||||||||||||||||||
| - name: Set up Python | ||||||||||||||||||
| uses: actions/setup-python@v2 | ||||||||||||||||||
| with: | ||||||||||||||||||
| python-version: '3.10' | ||||||||||||||||||
| python-version: '3.10' | ||||||||||||||||||
|
|
||||||||||||||||||
| - name: Install ESP-IDF via eim | ||||||||||||||||||
| uses: espressif/install-esp-idf-action@v1 | ||||||||||||||||||
| with: | ||||||||||||||||||
| version: 'v5.4' | ||||||||||||||||||
|
Comment on lines
+29
to
+32
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Fix YAML syntax error: remove tab character from step name. Line 29 contains a tab character ( - - name: Install ESP-IDF via eim
+ - name: Install ESP-IDF via eim
uses: espressif/install-esp-idf-action@v1
with:
version: 'v5.4'The functional change (EIM-driven ESP-IDF v5.4 installation) is good and aligns with the v4.0 release objectives. After fixing the syntax error, this step will replace the legacy manual cloning approach. 📝 Committable suggestion
Suggested change
🧰 Tools🪛 YAMLlint (1.37.1)[error] 29-29: syntax error: found character '\t' that cannot start any token (syntax) 🤖 Prompt for AI Agents |
||||||||||||||||||
|
|
||||||||||||||||||
| - name: Set up Maven | ||||||||||||||||||
| uses: stCarolas/setup-maven@v5 | ||||||||||||||||||
|
|
@@ -42,8 +40,9 @@ jobs: | |||||||||||||||||
| uses: actions/setup-java@v4 | ||||||||||||||||||
| with: | ||||||||||||||||||
| java-version: '21' | ||||||||||||||||||
| distribution: 'temurin' | ||||||||||||||||||
|
|
||||||||||||||||||
| distribution: 'temurin' | ||||||||||||||||||
| cache: 'maven' | ||||||||||||||||||
|
|
||||||||||||||||||
| - name: Build with Maven | ||||||||||||||||||
| run: export NO_AT_BRIDGE=1 && mvn clean verify -Djarsigner.skip=true -DskipTests=false -DtestWorkspace=/opt/actions-runner/_work/workspace | ||||||||||||||||||
|
|
||||||||||||||||||
|
|
||||||||||||||||||
| Original file line number | Diff line number | Diff line change | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -4,7 +4,7 @@ on: | |||||||||||
| push: | ||||||||||||
| tags: | ||||||||||||
| - "v[0-9]+.[0-9]+.[0-9]+" | ||||||||||||
| - "v[0-9]+\\.[0-9]+\\.[0-9]+-beta" | ||||||||||||
| - "v[0-9]+.[0-9]+.[0-9]+-beta.*" | ||||||||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Tag pattern is regex-like but GHA uses glob — will not match. Use glob patterns; “+” and “.” aren’t regex here. This won’t trigger on beta tags. Apply: push:
tags:
- - "v[0-9]+.[0-9]+.[0-9]+"
- - "v[0-9]+.[0-9]+.[0-9]+-beta.*"
+ - "v*.*.*"
+ - "v*.*.*-beta*"📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents |
||||||||||||
|
|
||||||||||||
| env: | ||||||||||||
| ARCHIVE_PREFIX: com.espressif.idf.update- | ||||||||||||
|
|
||||||||||||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -38,7 +38,7 @@ jobs: | |
| # Update the path to include them and run. | ||
| cd ./docs | ||
| PATH=/home/runner/.local/bin:$PATH pip3 install -r requirements.txt --prefer-binary | ||
| PATH=/home/runner/.local/bin:$PATH SPHINXOPTS="-W" build-docs -l en | ||
| PATH=/home/runner/.local/bin:$PATH SPHINXOPTS="-W" build-docs | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chainInconsistent language flag handling across build steps. Line 41 removes the Also applies to: 65-65 🏁 Script executed: #!/bin/bash
# Examine the workflow file to verify the language flag inconsistency
cat .github/workflows/docs_build.yml | head -80 | tail -45Length of output: 1800 🏁 Script executed: #!/bin/bash
# Get specific lines around 41 and 65 with context
echo "=== Context around line 41 ==="
sed -n '35,50p' .github/workflows/docs_build.yml
echo -e "\n=== Context around line 65 ==="
sed -n '60,70p' .github/workflows/docs_build.ymlLength of output: 1160 🏁 Script executed: #!/bin/bash
# Search for all build-docs invocations in the file
echo "=== All build-docs invocations ==="
grep -n "build-docs" .github/workflows/docs_build.ymlLength of output: 165 Inconsistent language flag handling is confirmed; clarify intent or standardize both invocations. The Also applies to: 65-65 🤖 Prompt for AI Agents |
||
| - name: Archive Docs | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
|
|
||
| Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -18,7 +18,6 @@ | |||||||||||||||||||||||||||||||||||||||||||||
| import org.eclipse.cdt.managedbuilder.envvar.IBuildEnvironmentVariable; | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| import com.espressif.idf.core.logging.Logger; | ||||||||||||||||||||||||||||||||||||||||||||||
| import com.espressif.idf.core.util.IDFUtil; | ||||||||||||||||||||||||||||||||||||||||||||||
| import com.espressif.idf.core.util.StringUtil; | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| /** | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
@@ -52,6 +51,12 @@ public class IDFEnvironmentVariables | |||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| public static final String IDF_CCACHE_ENABLE = "IDF_CCACHE_ENABLE"; //$NON-NLS-1$ | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| public static final String ESP_IDF_EIM_ID = "ESP_IDF_EIM_ID"; //$NON-NLS-1$ | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| public static final String EIM_PATH = "EIM_PATH"; //$NON-NLS-1$ | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| public static final String SYSTEM_PATH = "SYSTEM_PATH"; //$NON-NLS-1$ | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| /** | ||||||||||||||||||||||||||||||||||||||||||||||
| * @param variableName Environment variable Name | ||||||||||||||||||||||||||||||||||||||||||||||
| * @return IEnvironmentVariable | ||||||||||||||||||||||||||||||||||||||||||||||
|
|
@@ -129,16 +134,12 @@ public Map<String, String> getSystemEnvMap() | |||||||||||||||||||||||||||||||||||||||||||||
| IEnvironmentVariableManager buildEnvironmentManager = CCorePlugin.getDefault().getBuildEnvironmentManager(); | ||||||||||||||||||||||||||||||||||||||||||||||
| IEnvironmentVariable[] variables = buildEnvironmentManager.getVariables((ICConfigurationDescription) null, | ||||||||||||||||||||||||||||||||||||||||||||||
| true); | ||||||||||||||||||||||||||||||||||||||||||||||
| Map<String, String> envMap = IDFUtil.getSystemEnv(); | ||||||||||||||||||||||||||||||||||||||||||||||
| Map<String, String> envMap = new HashMap<String, String>(System.getenv()); | ||||||||||||||||||||||||||||||||||||||||||||||
| if (variables != null) | ||||||||||||||||||||||||||||||||||||||||||||||
| { | ||||||||||||||||||||||||||||||||||||||||||||||
| for (IEnvironmentVariable iEnvironmentVariable : variables) | ||||||||||||||||||||||||||||||||||||||||||||||
| { | ||||||||||||||||||||||||||||||||||||||||||||||
| String key = iEnvironmentVariable.getName(); | ||||||||||||||||||||||||||||||||||||||||||||||
| if (key.equals(IDFCorePreferenceConstants.IDF_TOOLS_PATH)) | ||||||||||||||||||||||||||||||||||||||||||||||
| { | ||||||||||||||||||||||||||||||||||||||||||||||
| continue; | ||||||||||||||||||||||||||||||||||||||||||||||
| } | ||||||||||||||||||||||||||||||||||||||||||||||
| String value = iEnvironmentVariable.getValue(); | ||||||||||||||||||||||||||||||||||||||||||||||
| envMap.put(key, value); | ||||||||||||||||||||||||||||||||||||||||||||||
| } | ||||||||||||||||||||||||||||||||||||||||||||||
|
Comment on lines
+137
to
145
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Restore IDF-specific environment enrichments. Replacing the old base map with - Map<String, String> envMap = new HashMap<String, String>(System.getenv());
+ Map<String, String> envMap = new HashMap<>(IDFUtil.getSystemEnv());📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents |
||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,19 @@ | ||
| /******************************************************************************* | ||
| * Copyright 2025 Espressif Systems (Shanghai) PTE LTD. All rights reserved. | ||
| * Use is subject to license terms. | ||
| *******************************************************************************/ | ||
| package com.espressif.idf.core.tools; | ||
|
|
||
| /** | ||
| * Interface to use for the download listening this can be used in your own classes. | ||
| * Added specifically for {@link EimLoader} | ||
| * @author Ali Azam Rana <[email protected]> | ||
| * | ||
| */ | ||
| public interface DownloadListener | ||
| { | ||
| public void onProgress(int percent); | ||
| public void onCompleted(String filePath); | ||
| public void onError(String message, Exception e); | ||
|
|
||
| } |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,31 @@ | ||
| package com.espressif.idf.core.tools; | ||
|
|
||
| import java.io.File; | ||
| import java.nio.file.Paths; | ||
|
|
||
| public interface EimConstants | ||
| { | ||
| String EIM_JSON = "eim_idf.json"; //$NON-NLS-1$ | ||
|
|
||
| String EIM_POSIX_DIR = System.getProperty("user.home").concat(File.separator + ".espressif" + File.separator + "tools" + File.separator); //$NON-NLS-1$//$NON-NLS-2$ //$NON-NLS-3$ | ||
|
|
||
| String EIM_WIN_ESPRESSIF_DIR = "C:" + File.separator + "Espressif"; //$NON-NLS-1$ //$NON-NLS-2$ | ||
|
|
||
| String EIM_WIN_DIR = EIM_WIN_ESPRESSIF_DIR + File.separator + "tools" + File.separator; //$NON-NLS-1$ | ||
|
|
||
| String EIM_WIN_PATH = EIM_WIN_DIR + EIM_JSON; | ||
|
|
||
| String EIM_URL = "https://dl.espressif.com/dl/eim/"; //$NON-NLS-1$ | ||
|
|
||
| String EIM_POSIX_PATH = EIM_POSIX_DIR + EIM_JSON; | ||
|
|
||
| String INSTALL_TOOLS_FLAG = "INSTALL_TOOLS_FLAG"; //$NON-NLS-1$ | ||
|
|
||
| String TOOL_SET_CONFIG_LEGACY_CONFIG_FILE = "tool_set_config.json"; //$NON-NLS-1$ | ||
|
|
||
| String OLD_CONFIG_EXPORTED_FLAG = "OLD_CONFIG_EXPORTED_FLAG"; //$NON-NLS-1$ | ||
|
|
||
| String USER_EIM_DIR = Paths.get(System.getProperty("user.home"), ".espressif", "eim_gui").toString(); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ | ||
|
|
||
| String EIM_JSON_VALID_VERSION = "1.0"; //$NON-NLS-1$ | ||
| } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
setup-python@v2 is deprecated on GH runners.
Upgrade to v5 to avoid Node runtime breakage.
📝 Committable suggestion
🧰 Tools
🪛 actionlint (1.7.7)
25-25: the runner of "actions/setup-python@v2" action is too old to run on GitHub Actions. update the action's version to fix this issue
(action)
🤖 Prompt for AI Agents