Skip to content

WIP: Reduce the size of update site and add repository reference - #1474

Open
sigmaaa wants to merge 15 commits into
masterfrom
feat_new_update_site
Open

WIP: Reduce the size of update site and add repository reference#1474
sigmaaa wants to merge 15 commits into
masterfrom
feat_new_update_site

Conversation

@sigmaaa

@sigmaaasigmaaa commented Jun 8, 2026

Copy link
Copy Markdown
Collaborator

Description

Split the monolithic p2 update site into separate online and offline repositories:

  • Online update site (com.espressif.idf.update) — publishes only com.espressif.idf.feature. Dependencies are resolved at install time via repository-reference entries (Eclipse SimRel 2026-03, SWTChart, Nebula). Matches the existing update site URL and com.espressif.idf.update-v*.zip archive.
  • Offline update site (com.espressif.idf.update.offline) — new Tycho module with includeAllDependencies=true, bundling the Espressif feature, platform features, CMakeEd, and transitive dependencies for air-gapped installs. Published as Espressif-IDE-Offline-Update-v*.zip.

Other changes:

  • Move dependency declarations from category.xml into feature.xml<requires>.
  • Extend CI/release workflows to build, sign, and publish both update sites.
  • Update English and Chinese update-site installation docs.
  • Polish: HTTPS Nebula URL, remove unused dependency category, restore releng/pom.xml formatting.

Fixes # (IEP-1786)

Type of change

Please delete options that are not relevant.

  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

Note:com.espressif.idf.update-v*.zip is now the online/slim archive and requires network access during install. Users who previously relied on that zip for offline installs should use Espressif-IDE-Offline-Update-v*.zip instead.

How has this been tested?

Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration.

  • Online install from update site URL (https://dl.espressif.com/dl/idf-eclipse-plugin/updates/latest/) into Eclipse CDT 2026-03 with network enabled
  • Online install from com.espressif.idf.update-v*.zip archive with network enabled
  • Offline install from Espressif-IDE-Offline-Update-v*.zip with network disabled
  • Release workflow: Espressif JARs signed in both online and offline repositories; p2 metadata regenerated

Test Configuration:

  • ESP-IDF Version: 5.4 (CI default)
  • OS (Windows, Linux and macOS): To be verified

Dependent components impacted by this PR:

  • p2 update site publishing (releng/com.espressif.idf.update, releng/com.espressif.idf.update.offline)
  • GitHub Actions CI (ci.yml, ci_release.yml) — artifact upload, signing, S3 release
  • Feature metadata (features/com.espressif.idf.feature/feature.xml)
  • User documentation (docs/en/marketplaceupdate.rst, docs/zh_CN/marketplaceupdate.rst)
  • Release downloads on dl.espressif.com — new offline zip artifact

Checklist

  • PR Self Reviewed
  • Applied Code formatting
  • Added Documentation
  • Added Unit Test
  • Verified on all platforms - Windows, Linux and macOS

Summary by CodeRabbit

  • New Features

    • Added an offline update package so installers can be downloaded and applied without online access.
  • Chores

    • Split online/offline update artifacts in CI and added packaging/upload for the offline update.
    • Broadened Eclipse tooling support (language packs, LSP/editor integrations, charting, terminal) to improve development workflows.
    • Consolidated and simplified update-site/category definitions and project metadata for packaging.

@coderabbitai

coderabbitaiBot commented Jun 8, 2026

Copy link
Copy Markdown

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

Adds Eclipse feature imports to the plugin feature manifest, refactors update-site category/repository definitions, introduces an offline Tycho update-site module, updates the releng aggregator POM, and changes CI to build/package/upload both online and offline update artifacts.

Changes

Eclipse Dependency and Repository Updates

Layer / File(s)Summary
Feature dependency declarations
features/com.espressif.idf.feature/feature.xml
Adds <requires> entries for TM4E (feature and language pack), SWT Chart, LSP4E, CDT-LSP, embedcdt and embedcdt debug GDB/JTAG, launchbar, Nebula XViewer, terminal feature, and related plugins with explicit version attributes.
Category description formatting
releng/com.espressif.idf.update/category.xml
Reformats the com.espressif.idf<description> from a multi-line block to a single-line element while keeping label and text.
Add dependency category and repository references
releng/com.espressif.idf.update/category.xml
Adds com.espressif.idf.dependenciescategory-def and enables <repository-reference> entries including https://download.eclipse.org/releases/2026-03/ plus external repositories for SWTChart and Nebula to provision the new feature imports.
CI packaging and S3 upload changes
.github/workflows/ci_release.yml
CI now uploads two update-site artifacts (online and offline), downloads both in the AWS packaging job, creates Espressif-IDE-Offline-Update-v$VERSION.zip, and uploads the offline ZIP to dl/idf-eclipse-plugin/updates/.
Offline update-site module and metadata
releng/com.espressif.idf.update.offline/* (.gitignore, .project, .settings/*, category.xml, pom.xml)
Adds a new Tycho eclipse-repository module for an offline update site with project metadata, prefs, category.xml, and a pom.xml configured to bundle dependencies and produce a versioned offline update ZIP.
Aggregator POM modules
releng/pom.xml
Adds com.espressif.idf.update.offline to the parent <modules> list and condenses XML formatting.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Suggested reviewers

  • kolipakakondal
  • AndriiFilippov
  • alirana01

"A rabbit nibbles manifest threads at night,
Adds features, zips, and repos just right,
CI hums as offline bundles take flight,
Categories tidy, dependencies tight,
Hooray — the update site hops in light!" 🐰

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check nameStatusExplanation
Docstring Coverage✅ PassedNo functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check✅ PassedCheck skipped because no linked issues were found for this pull request.
Out of Scope Changes check✅ PassedCheck skipped because no linked issues were found for this pull request.
Description Check✅ PassedCheck skipped - CodeRabbit’s high-level summary is enabled.
Title check✅ PassedThe title 'WIP: Reduce the size of update site and add repository reference' clearly describes the main objectives of the changeset: reducing update site size (via offline update site split, category.xml simplification) and adding repository references (via updated category.xml and new imports in feature.xml).

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat_new_update_site

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@features/com.espressif.idf.feature/p2.inf`:
- Around line 1-3: Update the Eclipse repository stream in the p2.inf
instructions.configure entry so it matches the target platform stream: change
both addRepository(location:https${`#58`}//download.eclipse.org/releases/2025-12/)
occurrences to use download.eclipse.org/releases/2026-03/ (preserve the ${`#58`}
encoding and the type:0/type:1 entries); edit the instructions.configure line in
features/com.espressif.idf.feature/p2.inf where the
org.eclipse.equinox.p2.touchpoint.eclipse.addRepository calls are defined to
point to 2026-03.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 06e19b5a-1836-4e9d-bb62-5c3e8efca927

📥 Commits

Reviewing files that changed from the base of the PR and between 34eaf49 and 158ed66.

📒 Files selected for processing (1)
  • features/com.espressif.idf.feature/p2.inf

Comment threadfeatures/com.espressif.idf.feature/p2.inf Outdated

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@releng/com.espressif.idf.update/category.xml`:
- Line 13: category.xml is missing needed <repository-reference> entries for
dependencies declared by features/com.espressif.idf.feature/feature.xml (TM4E,
EmbedCDT, Nebula, CDT-LSP, SWTChart, LSP4E); add repository-reference elements
for the following URLs so provisioning can resolve those imports:
https://download.eclipse.org/tm4e/releases/0.17.2/,
https://download.eclipse.org/embed-cdt/updates/v6/,
http://download.eclipse.org/nebula/releases/latest,
https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/,
https://download.eclipse.org/swtchart/releases/1.0.0/repository/, and
https://download.eclipse.org/lsp4e/releases/0.30.0/ (place them alongside the
existing https://download.eclipse.org/releases/2026-03/ <repository-reference>
entry in releng/com.espressif.idf.update/category.xml).
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 7f86107d-f725-4cc6-aa50-2095acd1e28d

📥 Commits

Reviewing files that changed from the base of the PR and between 158ed66 and fc4fca5.

📒 Files selected for processing (2)
  • features/com.espressif.idf.feature/feature.xml
  • releng/com.espressif.idf.update/category.xml

<category-def name="com.espressif.idf.dependencies" label="ESP-IDF Eclipse Plugin - Dependencies"/>
</site>

<repository-reference location="https://download.eclipse.org/releases/2026-03/" enabled="true" />

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bashset -euo pipefail
CATEGORY_FILE="$(fd -p 'category.xml' releng | grep 'com.espressif.idf.update/category.xml'| head -n1)"
FEATURE_FILE="$(fd -p 'feature.xml' features | grep 'com.espressif.idf.feature/feature.xml'| head -n1)"
TARGET_FILE="$(fd -p 'com.espressif.idf.target.target' releng | head -n1)"echo"== category.xml repository references =="
rg -n '<repository-reference'"$CATEGORY_FILE"echoecho"== new requirements in feature.xml =="
rg -n 'tm4e|embedcdt|xviewer|cdt\.lsp|lsp4e|swtchart|launchbar|terminal'"$FEATURE_FILE"echoecho"== target-platform repos providing those families =="
rg -n -C2 'tm4e|embed-cdt|embedcdt|xviewer|nebula|cdt\.lsp|launchbar|terminal|releases/2026-03'"$TARGET_FILE"

Repository: espressif/idf-eclipse-plugin

Length of output: 3915


🏁 Script executed:

#!/bin/bashset -euo pipefail
TARGET_FILE="$(fd -p 'com.espressif.idf.target.target' releng | head -n1)"
FEATURE_FILE="$(fd -p 'feature.xml' features | grep 'com.espressif.idf.feature/feature.xml'| head -n1)"echo"== target-platform entries for new requirements (repositories/locations) =="
rg -n -C2 'swtchart|lsp4e|launchbar|terminal|nebula|xviewer|embedcdt|tm4e|cdt\.lsp'"$TARGET_FILE"echoecho"== full list of added/required imports in feature.xml =="
rg -n 'org\.eclipse\.tm4e|org\.eclipse\.swtchart|org\.eclipse\.lsp4e|org\.eclipse\.cdt\.lsp|org\.eclipse\.embedcdt|org\.eclipse\.launchbar|org\.eclipse\.nebula\.widgets\.xviewer|org\.eclipse\.terminal\.feature'"$FEATURE_FILE"

Repository: espressif/idf-eclipse-plugin

Length of output: 4131


Add missing p2 repository references for TM4E/EmbedCDT/Nebula CDT-LSP/SWTChart/LSP4E dependencies
releng/com.espressif.idf.update/category.xml only references https://download.eclipse.org/releases/2026-03/, but features/com.espressif.idf.feature/feature.xml now imports TM4E, SWTChart, LSP4E, CDT-LSP, EmbedCDT, and Nebula XViewer. Those are sourced from separate repositories in releng/com.espressif.idf.target/... and will be unresolved when provisioning from this update site unless matching <repository-reference> entries are added:

  • https://download.eclipse.org/tm4e/releases/0.17.2/
  • https://download.eclipse.org/embed-cdt/updates/v6/
  • http://download.eclipse.org/nebula/releases/latest
  • https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/
  • https://download.eclipse.org/swtchart/releases/1.0.0/repository/
  • https://download.eclipse.org/lsp4e/releases/0.30.0/
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@releng/com.espressif.idf.update/category.xml` at line 13, category.xml is
missing needed <repository-reference> entries for dependencies declared by
features/com.espressif.idf.feature/feature.xml (TM4E, EmbedCDT, Nebula, CDT-LSP,
SWTChart, LSP4E); add repository-reference elements for the following URLs so
provisioning can resolve those imports:
https://download.eclipse.org/tm4e/releases/0.17.2/,
https://download.eclipse.org/embed-cdt/updates/v6/,
http://download.eclipse.org/nebula/releases/latest,
https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/,
https://download.eclipse.org/swtchart/releases/1.0.0/repository/, and
https://download.eclipse.org/lsp4e/releases/0.30.0/ (place them alongside the
existing https://download.eclipse.org/releases/2026-03/ <repository-reference>
entry in releng/com.espressif.idf.update/category.xml).

Source: Learnings

@sigmaaasigmaaa changed the title WIP: feat: created p2 inf file for update siteWIP: feat: reducing the size of update site and adding repository referenceJun 9, 2026

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@releng/pom.xml`:
- Around line 16-17: The parent aggregator lists a non-existent Maven module
com.espressif.idf.update.offline1, causing reactor build failures; fix by either
removing the com.espressif.idf.update.offline1 <module> entry from the parent
POM or by creating the missing module directory named
com.espressif.idf.update.offline1 with a valid pom.xml (matching
groupId/artifactId and parent reference) so the module can be built, and ensure
the new module is referenced correctly in the parent modules section.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: e559ff03-cbbd-4d7f-a447-ce571e8ed691

📥 Commits

Reviewing files that changed from the base of the PR and between d269ddd and 39271c5.

📒 Files selected for processing (8)
  • .github/workflows/ci_release.yml
  • releng/com.espressif.idf.update.offline/.gitignore
  • releng/com.espressif.idf.update.offline/.project
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.core.resources.prefs
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.m2e.core.prefs
  • releng/com.espressif.idf.update.offline/category.xml
  • releng/com.espressif.idf.update.offline/pom.xml
  • releng/pom.xml
✅ Files skipped from review due to trivial changes (5)
  • releng/com.espressif.idf.update.offline/.gitignore
  • releng/com.espressif.idf.update.offline/.project
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.core.resources.prefs
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.m2e.core.prefs
  • releng/com.espressif.idf.update.offline/pom.xml

Comment threadreleng/pom.xml Outdated
@sigmaaasigmaaa self-assigned this Jun 15, 2026
@sigmaaasigmaaa changed the title WIP: feat: reducing the size of update site and adding repository referenceIEP-1786 Reduce the size of update site and add repository referenceJun 15, 2026

@Shen7436Shen7436 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @sigmaaa The documentation part LGTM. I only left some minor comments, plz check.

Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
启用 Eclipse Platform 更新站点可确保在安装或升级过程中解析所有必要的依赖项。
启用 Eclipse Platform 更新站点可确保从在线更新站点安装或升级时正确解析所有必要的依赖项。

**离线压缩包(``Espressif-IDE-Offline-Update-vX.Y.Z.zip``)**

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
**离线压缩包``Espressif-IDE-Offline-Update-vX.Y.Z.zip``**
**离线压缩包** (``Espressif-IDE-Offline-Update-vX.Y.Z.zip``)

If you encounter the error ``Cannot complete the install because one or more required items could not be found.`` during installation, try the following:

To resolve this issue:
**Online update site URL or online archive (``com.espressif.idf.update-vX.Y.Z.zip``)**

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
**Online update site URL or online archive (``com.espressif.idf.update-vX.Y.Z.zip``)**
**Online update site URL or online archive** (``com.espressif.idf.update-vX.Y.Z.zip``)

Comment threaddocs/en/marketplaceupdate.rst Outdated

@kolipakakondalkolipakakondal left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

sigmaaaand others added 6 commits June 16, 2026 16:56
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>

@AndriiFilippovAndriiFilippov left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sigmaaa hi

Tested under:
OS: Windows 11

I was able to update 3.x to 4.4 in offline mode, but unfortunately I got error updating the same version online.
Have sent you all info in DM.

@sigmaaasigmaaa changed the title IEP-1786 Reduce the size of update site and add repository referenceWIP: Reduce the size of update site and add repository referenceJun 17, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@sigmaaa@kolipakakondal@AndriiFilippov@Shen7436
, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
WIP: Reduce the size of update site and add repository reference by sigmaaa · Pull Request #1474 · espressif/idf-eclipse-plugin · GitHub
Skip to content

WIP: Reduce the size of update site and add repository reference - #1474

Open
sigmaaa wants to merge 15 commits into
masterfrom
feat_new_update_site
Open

WIP: Reduce the size of update site and add repository reference#1474
sigmaaa wants to merge 15 commits into
masterfrom
feat_new_update_site

Conversation

@sigmaaa

@sigmaaasigmaaa commented Jun 8, 2026

Copy link
Copy Markdown
Collaborator

Description

Split the monolithic p2 update site into separate online and offline repositories:

  • Online update site (com.espressif.idf.update) — publishes only com.espressif.idf.feature. Dependencies are resolved at install time via repository-reference entries (Eclipse SimRel 2026-03, SWTChart, Nebula). Matches the existing update site URL and com.espressif.idf.update-v*.zip archive.
  • Offline update site (com.espressif.idf.update.offline) — new Tycho module with includeAllDependencies=true, bundling the Espressif feature, platform features, CMakeEd, and transitive dependencies for air-gapped installs. Published as Espressif-IDE-Offline-Update-v*.zip.

Other changes:

  • Move dependency declarations from category.xml into feature.xml<requires>.
  • Extend CI/release workflows to build, sign, and publish both update sites.
  • Update English and Chinese update-site installation docs.
  • Polish: HTTPS Nebula URL, remove unused dependency category, restore releng/pom.xml formatting.

Fixes # (IEP-1786)

Type of change

Please delete options that are not relevant.

  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

Note:com.espressif.idf.update-v*.zip is now the online/slim archive and requires network access during install. Users who previously relied on that zip for offline installs should use Espressif-IDE-Offline-Update-v*.zip instead.

How has this been tested?

Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration.

  • Online install from update site URL (https://dl.espressif.com/dl/idf-eclipse-plugin/updates/latest/) into Eclipse CDT 2026-03 with network enabled
  • Online install from com.espressif.idf.update-v*.zip archive with network enabled
  • Offline install from Espressif-IDE-Offline-Update-v*.zip with network disabled
  • Release workflow: Espressif JARs signed in both online and offline repositories; p2 metadata regenerated

Test Configuration:

  • ESP-IDF Version: 5.4 (CI default)
  • OS (Windows, Linux and macOS): To be verified

Dependent components impacted by this PR:

  • p2 update site publishing (releng/com.espressif.idf.update, releng/com.espressif.idf.update.offline)
  • GitHub Actions CI (ci.yml, ci_release.yml) — artifact upload, signing, S3 release
  • Feature metadata (features/com.espressif.idf.feature/feature.xml)
  • User documentation (docs/en/marketplaceupdate.rst, docs/zh_CN/marketplaceupdate.rst)
  • Release downloads on dl.espressif.com — new offline zip artifact

Checklist

  • PR Self Reviewed
  • Applied Code formatting
  • Added Documentation
  • Added Unit Test
  • Verified on all platforms - Windows, Linux and macOS

Summary by CodeRabbit

  • New Features

    • Added an offline update package so installers can be downloaded and applied without online access.
  • Chores

    • Split online/offline update artifacts in CI and added packaging/upload for the offline update.
    • Broadened Eclipse tooling support (language packs, LSP/editor integrations, charting, terminal) to improve development workflows.
    • Consolidated and simplified update-site/category definitions and project metadata for packaging.

@coderabbitai

coderabbitaiBot commented Jun 8, 2026

Copy link
Copy Markdown

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

Adds Eclipse feature imports to the plugin feature manifest, refactors update-site category/repository definitions, introduces an offline Tycho update-site module, updates the releng aggregator POM, and changes CI to build/package/upload both online and offline update artifacts.

Changes

Eclipse Dependency and Repository Updates

Layer / File(s)Summary
Feature dependency declarations
features/com.espressif.idf.feature/feature.xml
Adds <requires> entries for TM4E (feature and language pack), SWT Chart, LSP4E, CDT-LSP, embedcdt and embedcdt debug GDB/JTAG, launchbar, Nebula XViewer, terminal feature, and related plugins with explicit version attributes.
Category description formatting
releng/com.espressif.idf.update/category.xml
Reformats the com.espressif.idf<description> from a multi-line block to a single-line element while keeping label and text.
Add dependency category and repository references
releng/com.espressif.idf.update/category.xml
Adds com.espressif.idf.dependenciescategory-def and enables <repository-reference> entries including https://download.eclipse.org/releases/2026-03/ plus external repositories for SWTChart and Nebula to provision the new feature imports.
CI packaging and S3 upload changes
.github/workflows/ci_release.yml
CI now uploads two update-site artifacts (online and offline), downloads both in the AWS packaging job, creates Espressif-IDE-Offline-Update-v$VERSION.zip, and uploads the offline ZIP to dl/idf-eclipse-plugin/updates/.
Offline update-site module and metadata
releng/com.espressif.idf.update.offline/* (.gitignore, .project, .settings/*, category.xml, pom.xml)
Adds a new Tycho eclipse-repository module for an offline update site with project metadata, prefs, category.xml, and a pom.xml configured to bundle dependencies and produce a versioned offline update ZIP.
Aggregator POM modules
releng/pom.xml
Adds com.espressif.idf.update.offline to the parent <modules> list and condenses XML formatting.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Suggested reviewers

  • kolipakakondal
  • AndriiFilippov
  • alirana01

"A rabbit nibbles manifest threads at night,
Adds features, zips, and repos just right,
CI hums as offline bundles take flight,
Categories tidy, dependencies tight,
Hooray — the update site hops in light!" 🐰

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check nameStatusExplanation
Docstring Coverage✅ PassedNo functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check✅ PassedCheck skipped because no linked issues were found for this pull request.
Out of Scope Changes check✅ PassedCheck skipped because no linked issues were found for this pull request.
Description Check✅ PassedCheck skipped - CodeRabbit’s high-level summary is enabled.
Title check✅ PassedThe title 'WIP: Reduce the size of update site and add repository reference' clearly describes the main objectives of the changeset: reducing update site size (via offline update site split, category.xml simplification) and adding repository references (via updated category.xml and new imports in feature.xml).

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat_new_update_site

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@features/com.espressif.idf.feature/p2.inf`:
- Around line 1-3: Update the Eclipse repository stream in the p2.inf
instructions.configure entry so it matches the target platform stream: change
both addRepository(location:https${`#58`}//download.eclipse.org/releases/2025-12/)
occurrences to use download.eclipse.org/releases/2026-03/ (preserve the ${`#58`}
encoding and the type:0/type:1 entries); edit the instructions.configure line in
features/com.espressif.idf.feature/p2.inf where the
org.eclipse.equinox.p2.touchpoint.eclipse.addRepository calls are defined to
point to 2026-03.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 06e19b5a-1836-4e9d-bb62-5c3e8efca927

📥 Commits

Reviewing files that changed from the base of the PR and between 34eaf49 and 158ed66.

📒 Files selected for processing (1)
  • features/com.espressif.idf.feature/p2.inf

Comment threadfeatures/com.espressif.idf.feature/p2.inf Outdated

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@releng/com.espressif.idf.update/category.xml`:
- Line 13: category.xml is missing needed <repository-reference> entries for
dependencies declared by features/com.espressif.idf.feature/feature.xml (TM4E,
EmbedCDT, Nebula, CDT-LSP, SWTChart, LSP4E); add repository-reference elements
for the following URLs so provisioning can resolve those imports:
https://download.eclipse.org/tm4e/releases/0.17.2/,
https://download.eclipse.org/embed-cdt/updates/v6/,
http://download.eclipse.org/nebula/releases/latest,
https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/,
https://download.eclipse.org/swtchart/releases/1.0.0/repository/, and
https://download.eclipse.org/lsp4e/releases/0.30.0/ (place them alongside the
existing https://download.eclipse.org/releases/2026-03/ <repository-reference>
entry in releng/com.espressif.idf.update/category.xml).
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 7f86107d-f725-4cc6-aa50-2095acd1e28d

📥 Commits

Reviewing files that changed from the base of the PR and between 158ed66 and fc4fca5.

📒 Files selected for processing (2)
  • features/com.espressif.idf.feature/feature.xml
  • releng/com.espressif.idf.update/category.xml

<category-def name="com.espressif.idf.dependencies" label="ESP-IDF Eclipse Plugin - Dependencies"/>
</site>

<repository-reference location="https://download.eclipse.org/releases/2026-03/" enabled="true" />

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bashset -euo pipefail
CATEGORY_FILE="$(fd -p 'category.xml' releng | grep 'com.espressif.idf.update/category.xml'| head -n1)"
FEATURE_FILE="$(fd -p 'feature.xml' features | grep 'com.espressif.idf.feature/feature.xml'| head -n1)"
TARGET_FILE="$(fd -p 'com.espressif.idf.target.target' releng | head -n1)"echo"== category.xml repository references =="
rg -n '<repository-reference'"$CATEGORY_FILE"echoecho"== new requirements in feature.xml =="
rg -n 'tm4e|embedcdt|xviewer|cdt\.lsp|lsp4e|swtchart|launchbar|terminal'"$FEATURE_FILE"echoecho"== target-platform repos providing those families =="
rg -n -C2 'tm4e|embed-cdt|embedcdt|xviewer|nebula|cdt\.lsp|launchbar|terminal|releases/2026-03'"$TARGET_FILE"

Repository: espressif/idf-eclipse-plugin

Length of output: 3915


🏁 Script executed:

#!/bin/bashset -euo pipefail
TARGET_FILE="$(fd -p 'com.espressif.idf.target.target' releng | head -n1)"
FEATURE_FILE="$(fd -p 'feature.xml' features | grep 'com.espressif.idf.feature/feature.xml'| head -n1)"echo"== target-platform entries for new requirements (repositories/locations) =="
rg -n -C2 'swtchart|lsp4e|launchbar|terminal|nebula|xviewer|embedcdt|tm4e|cdt\.lsp'"$TARGET_FILE"echoecho"== full list of added/required imports in feature.xml =="
rg -n 'org\.eclipse\.tm4e|org\.eclipse\.swtchart|org\.eclipse\.lsp4e|org\.eclipse\.cdt\.lsp|org\.eclipse\.embedcdt|org\.eclipse\.launchbar|org\.eclipse\.nebula\.widgets\.xviewer|org\.eclipse\.terminal\.feature'"$FEATURE_FILE"

Repository: espressif/idf-eclipse-plugin

Length of output: 4131


Add missing p2 repository references for TM4E/EmbedCDT/Nebula CDT-LSP/SWTChart/LSP4E dependencies
releng/com.espressif.idf.update/category.xml only references https://download.eclipse.org/releases/2026-03/, but features/com.espressif.idf.feature/feature.xml now imports TM4E, SWTChart, LSP4E, CDT-LSP, EmbedCDT, and Nebula XViewer. Those are sourced from separate repositories in releng/com.espressif.idf.target/... and will be unresolved when provisioning from this update site unless matching <repository-reference> entries are added:

  • https://download.eclipse.org/tm4e/releases/0.17.2/
  • https://download.eclipse.org/embed-cdt/updates/v6/
  • http://download.eclipse.org/nebula/releases/latest
  • https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/
  • https://download.eclipse.org/swtchart/releases/1.0.0/repository/
  • https://download.eclipse.org/lsp4e/releases/0.30.0/
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@releng/com.espressif.idf.update/category.xml` at line 13, category.xml is
missing needed <repository-reference> entries for dependencies declared by
features/com.espressif.idf.feature/feature.xml (TM4E, EmbedCDT, Nebula, CDT-LSP,
SWTChart, LSP4E); add repository-reference elements for the following URLs so
provisioning can resolve those imports:
https://download.eclipse.org/tm4e/releases/0.17.2/,
https://download.eclipse.org/embed-cdt/updates/v6/,
http://download.eclipse.org/nebula/releases/latest,
https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/,
https://download.eclipse.org/swtchart/releases/1.0.0/repository/, and
https://download.eclipse.org/lsp4e/releases/0.30.0/ (place them alongside the
existing https://download.eclipse.org/releases/2026-03/ <repository-reference>
entry in releng/com.espressif.idf.update/category.xml).

Source: Learnings

@sigmaaasigmaaa changed the title WIP: feat: created p2 inf file for update siteWIP: feat: reducing the size of update site and adding repository referenceJun 9, 2026

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@releng/pom.xml`:
- Around line 16-17: The parent aggregator lists a non-existent Maven module
com.espressif.idf.update.offline1, causing reactor build failures; fix by either
removing the com.espressif.idf.update.offline1 <module> entry from the parent
POM or by creating the missing module directory named
com.espressif.idf.update.offline1 with a valid pom.xml (matching
groupId/artifactId and parent reference) so the module can be built, and ensure
the new module is referenced correctly in the parent modules section.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: e559ff03-cbbd-4d7f-a447-ce571e8ed691

📥 Commits

Reviewing files that changed from the base of the PR and between d269ddd and 39271c5.

📒 Files selected for processing (8)
  • .github/workflows/ci_release.yml
  • releng/com.espressif.idf.update.offline/.gitignore
  • releng/com.espressif.idf.update.offline/.project
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.core.resources.prefs
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.m2e.core.prefs
  • releng/com.espressif.idf.update.offline/category.xml
  • releng/com.espressif.idf.update.offline/pom.xml
  • releng/pom.xml
✅ Files skipped from review due to trivial changes (5)
  • releng/com.espressif.idf.update.offline/.gitignore
  • releng/com.espressif.idf.update.offline/.project
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.core.resources.prefs
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.m2e.core.prefs
  • releng/com.espressif.idf.update.offline/pom.xml

Comment threadreleng/pom.xml Outdated
@sigmaaasigmaaa self-assigned this Jun 15, 2026
@sigmaaasigmaaa changed the title WIP: feat: reducing the size of update site and adding repository referenceIEP-1786 Reduce the size of update site and add repository referenceJun 15, 2026

@Shen7436Shen7436 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @sigmaaa The documentation part LGTM. I only left some minor comments, plz check.

Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
启用 Eclipse Platform 更新站点可确保在安装或升级过程中解析所有必要的依赖项。
启用 Eclipse Platform 更新站点可确保从在线更新站点安装或升级时正确解析所有必要的依赖项。

**离线压缩包(``Espressif-IDE-Offline-Update-vX.Y.Z.zip``)**

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
**离线压缩包``Espressif-IDE-Offline-Update-vX.Y.Z.zip``**
**离线压缩包** (``Espressif-IDE-Offline-Update-vX.Y.Z.zip``)

If you encounter the error ``Cannot complete the install because one or more required items could not be found.`` during installation, try the following:

To resolve this issue:
**Online update site URL or online archive (``com.espressif.idf.update-vX.Y.Z.zip``)**

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
**Online update site URL or online archive (``com.espressif.idf.update-vX.Y.Z.zip``)**
**Online update site URL or online archive** (``com.espressif.idf.update-vX.Y.Z.zip``)

Comment threaddocs/en/marketplaceupdate.rst Outdated

@kolipakakondalkolipakakondal left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

sigmaaaand others added 6 commits June 16, 2026 16:56
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>

@AndriiFilippovAndriiFilippov left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sigmaaa hi

Tested under:
OS: Windows 11

I was able to update 3.x to 4.4 in offline mode, but unfortunately I got error updating the same version online.
Have sent you all info in DM.

@sigmaaasigmaaa changed the title IEP-1786 Reduce the size of update site and add repository referenceWIP: Reduce the size of update site and add repository referenceJun 17, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@sigmaaa@kolipakakondal@AndriiFilippov@Shen7436
, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' WIP: Reduce the size of update site and add repository reference by sigmaaa · Pull Request #1474 · espressif/idf-eclipse-plugin · GitHub
Skip to content

WIP: Reduce the size of update site and add repository reference - #1474

Open
sigmaaa wants to merge 15 commits into
masterfrom
feat_new_update_site
Open

WIP: Reduce the size of update site and add repository reference#1474
sigmaaa wants to merge 15 commits into
masterfrom
feat_new_update_site

Conversation

@sigmaaa

@sigmaaasigmaaa commented Jun 8, 2026

Copy link
Copy Markdown
Collaborator

Description

Split the monolithic p2 update site into separate online and offline repositories:

  • Online update site (com.espressif.idf.update) — publishes only com.espressif.idf.feature. Dependencies are resolved at install time via repository-reference entries (Eclipse SimRel 2026-03, SWTChart, Nebula). Matches the existing update site URL and com.espressif.idf.update-v*.zip archive.
  • Offline update site (com.espressif.idf.update.offline) — new Tycho module with includeAllDependencies=true, bundling the Espressif feature, platform features, CMakeEd, and transitive dependencies for air-gapped installs. Published as Espressif-IDE-Offline-Update-v*.zip.

Other changes:

  • Move dependency declarations from category.xml into feature.xml<requires>.
  • Extend CI/release workflows to build, sign, and publish both update sites.
  • Update English and Chinese update-site installation docs.
  • Polish: HTTPS Nebula URL, remove unused dependency category, restore releng/pom.xml formatting.

Fixes # (IEP-1786)

Type of change

Please delete options that are not relevant.

  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

Note:com.espressif.idf.update-v*.zip is now the online/slim archive and requires network access during install. Users who previously relied on that zip for offline installs should use Espressif-IDE-Offline-Update-v*.zip instead.

How has this been tested?

Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration.

  • Online install from update site URL (https://dl.espressif.com/dl/idf-eclipse-plugin/updates/latest/) into Eclipse CDT 2026-03 with network enabled
  • Online install from com.espressif.idf.update-v*.zip archive with network enabled
  • Offline install from Espressif-IDE-Offline-Update-v*.zip with network disabled
  • Release workflow: Espressif JARs signed in both online and offline repositories; p2 metadata regenerated

Test Configuration:

  • ESP-IDF Version: 5.4 (CI default)
  • OS (Windows, Linux and macOS): To be verified

Dependent components impacted by this PR:

  • p2 update site publishing (releng/com.espressif.idf.update, releng/com.espressif.idf.update.offline)
  • GitHub Actions CI (ci.yml, ci_release.yml) — artifact upload, signing, S3 release
  • Feature metadata (features/com.espressif.idf.feature/feature.xml)
  • User documentation (docs/en/marketplaceupdate.rst, docs/zh_CN/marketplaceupdate.rst)
  • Release downloads on dl.espressif.com — new offline zip artifact

Checklist

  • PR Self Reviewed
  • Applied Code formatting
  • Added Documentation
  • Added Unit Test
  • Verified on all platforms - Windows, Linux and macOS

Summary by CodeRabbit

  • New Features

    • Added an offline update package so installers can be downloaded and applied without online access.
  • Chores

    • Split online/offline update artifacts in CI and added packaging/upload for the offline update.
    • Broadened Eclipse tooling support (language packs, LSP/editor integrations, charting, terminal) to improve development workflows.
    • Consolidated and simplified update-site/category definitions and project metadata for packaging.

@coderabbitai

coderabbitaiBot commented Jun 8, 2026

Copy link
Copy Markdown

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

Adds Eclipse feature imports to the plugin feature manifest, refactors update-site category/repository definitions, introduces an offline Tycho update-site module, updates the releng aggregator POM, and changes CI to build/package/upload both online and offline update artifacts.

Changes

Eclipse Dependency and Repository Updates

Layer / File(s)Summary
Feature dependency declarations
features/com.espressif.idf.feature/feature.xml
Adds <requires> entries for TM4E (feature and language pack), SWT Chart, LSP4E, CDT-LSP, embedcdt and embedcdt debug GDB/JTAG, launchbar, Nebula XViewer, terminal feature, and related plugins with explicit version attributes.
Category description formatting
releng/com.espressif.idf.update/category.xml
Reformats the com.espressif.idf<description> from a multi-line block to a single-line element while keeping label and text.
Add dependency category and repository references
releng/com.espressif.idf.update/category.xml
Adds com.espressif.idf.dependenciescategory-def and enables <repository-reference> entries including https://download.eclipse.org/releases/2026-03/ plus external repositories for SWTChart and Nebula to provision the new feature imports.
CI packaging and S3 upload changes
.github/workflows/ci_release.yml
CI now uploads two update-site artifacts (online and offline), downloads both in the AWS packaging job, creates Espressif-IDE-Offline-Update-v$VERSION.zip, and uploads the offline ZIP to dl/idf-eclipse-plugin/updates/.
Offline update-site module and metadata
releng/com.espressif.idf.update.offline/* (.gitignore, .project, .settings/*, category.xml, pom.xml)
Adds a new Tycho eclipse-repository module for an offline update site with project metadata, prefs, category.xml, and a pom.xml configured to bundle dependencies and produce a versioned offline update ZIP.
Aggregator POM modules
releng/pom.xml
Adds com.espressif.idf.update.offline to the parent <modules> list and condenses XML formatting.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Suggested reviewers

  • kolipakakondal
  • AndriiFilippov
  • alirana01

"A rabbit nibbles manifest threads at night,
Adds features, zips, and repos just right,
CI hums as offline bundles take flight,
Categories tidy, dependencies tight,
Hooray — the update site hops in light!" 🐰

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check nameStatusExplanation
Docstring Coverage✅ PassedNo functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check✅ PassedCheck skipped because no linked issues were found for this pull request.
Out of Scope Changes check✅ PassedCheck skipped because no linked issues were found for this pull request.
Description Check✅ PassedCheck skipped - CodeRabbit’s high-level summary is enabled.
Title check✅ PassedThe title 'WIP: Reduce the size of update site and add repository reference' clearly describes the main objectives of the changeset: reducing update site size (via offline update site split, category.xml simplification) and adding repository references (via updated category.xml and new imports in feature.xml).

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat_new_update_site

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@features/com.espressif.idf.feature/p2.inf`:
- Around line 1-3: Update the Eclipse repository stream in the p2.inf
instructions.configure entry so it matches the target platform stream: change
both addRepository(location:https${`#58`}//download.eclipse.org/releases/2025-12/)
occurrences to use download.eclipse.org/releases/2026-03/ (preserve the ${`#58`}
encoding and the type:0/type:1 entries); edit the instructions.configure line in
features/com.espressif.idf.feature/p2.inf where the
org.eclipse.equinox.p2.touchpoint.eclipse.addRepository calls are defined to
point to 2026-03.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 06e19b5a-1836-4e9d-bb62-5c3e8efca927

📥 Commits

Reviewing files that changed from the base of the PR and between 34eaf49 and 158ed66.

📒 Files selected for processing (1)
  • features/com.espressif.idf.feature/p2.inf

Comment threadfeatures/com.espressif.idf.feature/p2.inf Outdated

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@releng/com.espressif.idf.update/category.xml`:
- Line 13: category.xml is missing needed <repository-reference> entries for
dependencies declared by features/com.espressif.idf.feature/feature.xml (TM4E,
EmbedCDT, Nebula, CDT-LSP, SWTChart, LSP4E); add repository-reference elements
for the following URLs so provisioning can resolve those imports:
https://download.eclipse.org/tm4e/releases/0.17.2/,
https://download.eclipse.org/embed-cdt/updates/v6/,
http://download.eclipse.org/nebula/releases/latest,
https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/,
https://download.eclipse.org/swtchart/releases/1.0.0/repository/, and
https://download.eclipse.org/lsp4e/releases/0.30.0/ (place them alongside the
existing https://download.eclipse.org/releases/2026-03/ <repository-reference>
entry in releng/com.espressif.idf.update/category.xml).
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 7f86107d-f725-4cc6-aa50-2095acd1e28d

📥 Commits

Reviewing files that changed from the base of the PR and between 158ed66 and fc4fca5.

📒 Files selected for processing (2)
  • features/com.espressif.idf.feature/feature.xml
  • releng/com.espressif.idf.update/category.xml

<category-def name="com.espressif.idf.dependencies" label="ESP-IDF Eclipse Plugin - Dependencies"/>
</site>

<repository-reference location="https://download.eclipse.org/releases/2026-03/" enabled="true" />

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bashset -euo pipefail
CATEGORY_FILE="$(fd -p 'category.xml' releng | grep 'com.espressif.idf.update/category.xml'| head -n1)"
FEATURE_FILE="$(fd -p 'feature.xml' features | grep 'com.espressif.idf.feature/feature.xml'| head -n1)"
TARGET_FILE="$(fd -p 'com.espressif.idf.target.target' releng | head -n1)"echo"== category.xml repository references =="
rg -n '<repository-reference'"$CATEGORY_FILE"echoecho"== new requirements in feature.xml =="
rg -n 'tm4e|embedcdt|xviewer|cdt\.lsp|lsp4e|swtchart|launchbar|terminal'"$FEATURE_FILE"echoecho"== target-platform repos providing those families =="
rg -n -C2 'tm4e|embed-cdt|embedcdt|xviewer|nebula|cdt\.lsp|launchbar|terminal|releases/2026-03'"$TARGET_FILE"

Repository: espressif/idf-eclipse-plugin

Length of output: 3915


🏁 Script executed:

#!/bin/bashset -euo pipefail
TARGET_FILE="$(fd -p 'com.espressif.idf.target.target' releng | head -n1)"
FEATURE_FILE="$(fd -p 'feature.xml' features | grep 'com.espressif.idf.feature/feature.xml'| head -n1)"echo"== target-platform entries for new requirements (repositories/locations) =="
rg -n -C2 'swtchart|lsp4e|launchbar|terminal|nebula|xviewer|embedcdt|tm4e|cdt\.lsp'"$TARGET_FILE"echoecho"== full list of added/required imports in feature.xml =="
rg -n 'org\.eclipse\.tm4e|org\.eclipse\.swtchart|org\.eclipse\.lsp4e|org\.eclipse\.cdt\.lsp|org\.eclipse\.embedcdt|org\.eclipse\.launchbar|org\.eclipse\.nebula\.widgets\.xviewer|org\.eclipse\.terminal\.feature'"$FEATURE_FILE"

Repository: espressif/idf-eclipse-plugin

Length of output: 4131


Add missing p2 repository references for TM4E/EmbedCDT/Nebula CDT-LSP/SWTChart/LSP4E dependencies
releng/com.espressif.idf.update/category.xml only references https://download.eclipse.org/releases/2026-03/, but features/com.espressif.idf.feature/feature.xml now imports TM4E, SWTChart, LSP4E, CDT-LSP, EmbedCDT, and Nebula XViewer. Those are sourced from separate repositories in releng/com.espressif.idf.target/... and will be unresolved when provisioning from this update site unless matching <repository-reference> entries are added:

  • https://download.eclipse.org/tm4e/releases/0.17.2/
  • https://download.eclipse.org/embed-cdt/updates/v6/
  • http://download.eclipse.org/nebula/releases/latest
  • https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/
  • https://download.eclipse.org/swtchart/releases/1.0.0/repository/
  • https://download.eclipse.org/lsp4e/releases/0.30.0/
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@releng/com.espressif.idf.update/category.xml` at line 13, category.xml is
missing needed <repository-reference> entries for dependencies declared by
features/com.espressif.idf.feature/feature.xml (TM4E, EmbedCDT, Nebula, CDT-LSP,
SWTChart, LSP4E); add repository-reference elements for the following URLs so
provisioning can resolve those imports:
https://download.eclipse.org/tm4e/releases/0.17.2/,
https://download.eclipse.org/embed-cdt/updates/v6/,
http://download.eclipse.org/nebula/releases/latest,
https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/,
https://download.eclipse.org/swtchart/releases/1.0.0/repository/, and
https://download.eclipse.org/lsp4e/releases/0.30.0/ (place them alongside the
existing https://download.eclipse.org/releases/2026-03/ <repository-reference>
entry in releng/com.espressif.idf.update/category.xml).

Source: Learnings

@sigmaaasigmaaa changed the title WIP: feat: created p2 inf file for update siteWIP: feat: reducing the size of update site and adding repository referenceJun 9, 2026

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@releng/pom.xml`:
- Around line 16-17: The parent aggregator lists a non-existent Maven module
com.espressif.idf.update.offline1, causing reactor build failures; fix by either
removing the com.espressif.idf.update.offline1 <module> entry from the parent
POM or by creating the missing module directory named
com.espressif.idf.update.offline1 with a valid pom.xml (matching
groupId/artifactId and parent reference) so the module can be built, and ensure
the new module is referenced correctly in the parent modules section.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: e559ff03-cbbd-4d7f-a447-ce571e8ed691

📥 Commits

Reviewing files that changed from the base of the PR and between d269ddd and 39271c5.

📒 Files selected for processing (8)
  • .github/workflows/ci_release.yml
  • releng/com.espressif.idf.update.offline/.gitignore
  • releng/com.espressif.idf.update.offline/.project
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.core.resources.prefs
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.m2e.core.prefs
  • releng/com.espressif.idf.update.offline/category.xml
  • releng/com.espressif.idf.update.offline/pom.xml
  • releng/pom.xml
✅ Files skipped from review due to trivial changes (5)
  • releng/com.espressif.idf.update.offline/.gitignore
  • releng/com.espressif.idf.update.offline/.project
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.core.resources.prefs
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.m2e.core.prefs
  • releng/com.espressif.idf.update.offline/pom.xml

Comment threadreleng/pom.xml Outdated
@sigmaaasigmaaa self-assigned this Jun 15, 2026
@sigmaaasigmaaa changed the title WIP: feat: reducing the size of update site and adding repository referenceIEP-1786 Reduce the size of update site and add repository referenceJun 15, 2026

@Shen7436Shen7436 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @sigmaaa The documentation part LGTM. I only left some minor comments, plz check.

Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
启用 Eclipse Platform 更新站点可确保在安装或升级过程中解析所有必要的依赖项。
启用 Eclipse Platform 更新站点可确保从在线更新站点安装或升级时正确解析所有必要的依赖项。

**离线压缩包(``Espressif-IDE-Offline-Update-vX.Y.Z.zip``)**

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
**离线压缩包``Espressif-IDE-Offline-Update-vX.Y.Z.zip``**
**离线压缩包** (``Espressif-IDE-Offline-Update-vX.Y.Z.zip``)

If you encounter the error ``Cannot complete the install because one or more required items could not be found.`` during installation, try the following:

To resolve this issue:
**Online update site URL or online archive (``com.espressif.idf.update-vX.Y.Z.zip``)**

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
**Online update site URL or online archive (``com.espressif.idf.update-vX.Y.Z.zip``)**
**Online update site URL or online archive** (``com.espressif.idf.update-vX.Y.Z.zip``)

Comment threaddocs/en/marketplaceupdate.rst Outdated

@kolipakakondalkolipakakondal left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

sigmaaaand others added 6 commits June 16, 2026 16:56
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>

@AndriiFilippovAndriiFilippov left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sigmaaa hi

Tested under:
OS: Windows 11

I was able to update 3.x to 4.4 in offline mode, but unfortunately I got error updating the same version online.
Have sent you all info in DM.

@sigmaaasigmaaa changed the title IEP-1786 Reduce the size of update site and add repository referenceWIP: Reduce the size of update site and add repository referenceJun 17, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@sigmaaa@kolipakakondal@AndriiFilippov@Shen7436
, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' WIP: Reduce the size of update site and add repository reference by sigmaaa · Pull Request #1474 · espressif/idf-eclipse-plugin · GitHub
Skip to content

WIP: Reduce the size of update site and add repository reference - #1474

Open
sigmaaa wants to merge 15 commits into
masterfrom
feat_new_update_site
Open

WIP: Reduce the size of update site and add repository reference#1474
sigmaaa wants to merge 15 commits into
masterfrom
feat_new_update_site

Conversation

@sigmaaa

@sigmaaasigmaaa commented Jun 8, 2026

Copy link
Copy Markdown
Collaborator

Description

Split the monolithic p2 update site into separate online and offline repositories:

  • Online update site (com.espressif.idf.update) — publishes only com.espressif.idf.feature. Dependencies are resolved at install time via repository-reference entries (Eclipse SimRel 2026-03, SWTChart, Nebula). Matches the existing update site URL and com.espressif.idf.update-v*.zip archive.
  • Offline update site (com.espressif.idf.update.offline) — new Tycho module with includeAllDependencies=true, bundling the Espressif feature, platform features, CMakeEd, and transitive dependencies for air-gapped installs. Published as Espressif-IDE-Offline-Update-v*.zip.

Other changes:

  • Move dependency declarations from category.xml into feature.xml<requires>.
  • Extend CI/release workflows to build, sign, and publish both update sites.
  • Update English and Chinese update-site installation docs.
  • Polish: HTTPS Nebula URL, remove unused dependency category, restore releng/pom.xml formatting.

Fixes # (IEP-1786)

Type of change

Please delete options that are not relevant.

  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

Note:com.espressif.idf.update-v*.zip is now the online/slim archive and requires network access during install. Users who previously relied on that zip for offline installs should use Espressif-IDE-Offline-Update-v*.zip instead.

How has this been tested?

Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration.

  • Online install from update site URL (https://dl.espressif.com/dl/idf-eclipse-plugin/updates/latest/) into Eclipse CDT 2026-03 with network enabled
  • Online install from com.espressif.idf.update-v*.zip archive with network enabled
  • Offline install from Espressif-IDE-Offline-Update-v*.zip with network disabled
  • Release workflow: Espressif JARs signed in both online and offline repositories; p2 metadata regenerated

Test Configuration:

  • ESP-IDF Version: 5.4 (CI default)
  • OS (Windows, Linux and macOS): To be verified

Dependent components impacted by this PR:

  • p2 update site publishing (releng/com.espressif.idf.update, releng/com.espressif.idf.update.offline)
  • GitHub Actions CI (ci.yml, ci_release.yml) — artifact upload, signing, S3 release
  • Feature metadata (features/com.espressif.idf.feature/feature.xml)
  • User documentation (docs/en/marketplaceupdate.rst, docs/zh_CN/marketplaceupdate.rst)
  • Release downloads on dl.espressif.com — new offline zip artifact

Checklist

  • PR Self Reviewed
  • Applied Code formatting
  • Added Documentation
  • Added Unit Test
  • Verified on all platforms - Windows, Linux and macOS

Summary by CodeRabbit

  • New Features

    • Added an offline update package so installers can be downloaded and applied without online access.
  • Chores

    • Split online/offline update artifacts in CI and added packaging/upload for the offline update.
    • Broadened Eclipse tooling support (language packs, LSP/editor integrations, charting, terminal) to improve development workflows.
    • Consolidated and simplified update-site/category definitions and project metadata for packaging.

@coderabbitai

coderabbitaiBot commented Jun 8, 2026

Copy link
Copy Markdown

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

Adds Eclipse feature imports to the plugin feature manifest, refactors update-site category/repository definitions, introduces an offline Tycho update-site module, updates the releng aggregator POM, and changes CI to build/package/upload both online and offline update artifacts.

Changes

Eclipse Dependency and Repository Updates

Layer / File(s)Summary
Feature dependency declarations
features/com.espressif.idf.feature/feature.xml
Adds <requires> entries for TM4E (feature and language pack), SWT Chart, LSP4E, CDT-LSP, embedcdt and embedcdt debug GDB/JTAG, launchbar, Nebula XViewer, terminal feature, and related plugins with explicit version attributes.
Category description formatting
releng/com.espressif.idf.update/category.xml
Reformats the com.espressif.idf<description> from a multi-line block to a single-line element while keeping label and text.
Add dependency category and repository references
releng/com.espressif.idf.update/category.xml
Adds com.espressif.idf.dependenciescategory-def and enables <repository-reference> entries including https://download.eclipse.org/releases/2026-03/ plus external repositories for SWTChart and Nebula to provision the new feature imports.
CI packaging and S3 upload changes
.github/workflows/ci_release.yml
CI now uploads two update-site artifacts (online and offline), downloads both in the AWS packaging job, creates Espressif-IDE-Offline-Update-v$VERSION.zip, and uploads the offline ZIP to dl/idf-eclipse-plugin/updates/.
Offline update-site module and metadata
releng/com.espressif.idf.update.offline/* (.gitignore, .project, .settings/*, category.xml, pom.xml)
Adds a new Tycho eclipse-repository module for an offline update site with project metadata, prefs, category.xml, and a pom.xml configured to bundle dependencies and produce a versioned offline update ZIP.
Aggregator POM modules
releng/pom.xml
Adds com.espressif.idf.update.offline to the parent <modules> list and condenses XML formatting.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Suggested reviewers

  • kolipakakondal
  • AndriiFilippov
  • alirana01

"A rabbit nibbles manifest threads at night,
Adds features, zips, and repos just right,
CI hums as offline bundles take flight,
Categories tidy, dependencies tight,
Hooray — the update site hops in light!" 🐰

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check nameStatusExplanation
Docstring Coverage✅ PassedNo functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check✅ PassedCheck skipped because no linked issues were found for this pull request.
Out of Scope Changes check✅ PassedCheck skipped because no linked issues were found for this pull request.
Description Check✅ PassedCheck skipped - CodeRabbit’s high-level summary is enabled.
Title check✅ PassedThe title 'WIP: Reduce the size of update site and add repository reference' clearly describes the main objectives of the changeset: reducing update site size (via offline update site split, category.xml simplification) and adding repository references (via updated category.xml and new imports in feature.xml).

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat_new_update_site

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@features/com.espressif.idf.feature/p2.inf`:
- Around line 1-3: Update the Eclipse repository stream in the p2.inf
instructions.configure entry so it matches the target platform stream: change
both addRepository(location:https${`#58`}//download.eclipse.org/releases/2025-12/)
occurrences to use download.eclipse.org/releases/2026-03/ (preserve the ${`#58`}
encoding and the type:0/type:1 entries); edit the instructions.configure line in
features/com.espressif.idf.feature/p2.inf where the
org.eclipse.equinox.p2.touchpoint.eclipse.addRepository calls are defined to
point to 2026-03.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 06e19b5a-1836-4e9d-bb62-5c3e8efca927

📥 Commits

Reviewing files that changed from the base of the PR and between 34eaf49 and 158ed66.

📒 Files selected for processing (1)
  • features/com.espressif.idf.feature/p2.inf

Comment threadfeatures/com.espressif.idf.feature/p2.inf Outdated

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@releng/com.espressif.idf.update/category.xml`:
- Line 13: category.xml is missing needed <repository-reference> entries for
dependencies declared by features/com.espressif.idf.feature/feature.xml (TM4E,
EmbedCDT, Nebula, CDT-LSP, SWTChart, LSP4E); add repository-reference elements
for the following URLs so provisioning can resolve those imports:
https://download.eclipse.org/tm4e/releases/0.17.2/,
https://download.eclipse.org/embed-cdt/updates/v6/,
http://download.eclipse.org/nebula/releases/latest,
https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/,
https://download.eclipse.org/swtchart/releases/1.0.0/repository/, and
https://download.eclipse.org/lsp4e/releases/0.30.0/ (place them alongside the
existing https://download.eclipse.org/releases/2026-03/ <repository-reference>
entry in releng/com.espressif.idf.update/category.xml).
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 7f86107d-f725-4cc6-aa50-2095acd1e28d

📥 Commits

Reviewing files that changed from the base of the PR and between 158ed66 and fc4fca5.

📒 Files selected for processing (2)
  • features/com.espressif.idf.feature/feature.xml
  • releng/com.espressif.idf.update/category.xml

<category-def name="com.espressif.idf.dependencies" label="ESP-IDF Eclipse Plugin - Dependencies"/>
</site>

<repository-reference location="https://download.eclipse.org/releases/2026-03/" enabled="true" />

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bashset -euo pipefail
CATEGORY_FILE="$(fd -p 'category.xml' releng | grep 'com.espressif.idf.update/category.xml'| head -n1)"
FEATURE_FILE="$(fd -p 'feature.xml' features | grep 'com.espressif.idf.feature/feature.xml'| head -n1)"
TARGET_FILE="$(fd -p 'com.espressif.idf.target.target' releng | head -n1)"echo"== category.xml repository references =="
rg -n '<repository-reference'"$CATEGORY_FILE"echoecho"== new requirements in feature.xml =="
rg -n 'tm4e|embedcdt|xviewer|cdt\.lsp|lsp4e|swtchart|launchbar|terminal'"$FEATURE_FILE"echoecho"== target-platform repos providing those families =="
rg -n -C2 'tm4e|embed-cdt|embedcdt|xviewer|nebula|cdt\.lsp|launchbar|terminal|releases/2026-03'"$TARGET_FILE"

Repository: espressif/idf-eclipse-plugin

Length of output: 3915


🏁 Script executed:

#!/bin/bashset -euo pipefail
TARGET_FILE="$(fd -p 'com.espressif.idf.target.target' releng | head -n1)"
FEATURE_FILE="$(fd -p 'feature.xml' features | grep 'com.espressif.idf.feature/feature.xml'| head -n1)"echo"== target-platform entries for new requirements (repositories/locations) =="
rg -n -C2 'swtchart|lsp4e|launchbar|terminal|nebula|xviewer|embedcdt|tm4e|cdt\.lsp'"$TARGET_FILE"echoecho"== full list of added/required imports in feature.xml =="
rg -n 'org\.eclipse\.tm4e|org\.eclipse\.swtchart|org\.eclipse\.lsp4e|org\.eclipse\.cdt\.lsp|org\.eclipse\.embedcdt|org\.eclipse\.launchbar|org\.eclipse\.nebula\.widgets\.xviewer|org\.eclipse\.terminal\.feature'"$FEATURE_FILE"

Repository: espressif/idf-eclipse-plugin

Length of output: 4131


Add missing p2 repository references for TM4E/EmbedCDT/Nebula CDT-LSP/SWTChart/LSP4E dependencies
releng/com.espressif.idf.update/category.xml only references https://download.eclipse.org/releases/2026-03/, but features/com.espressif.idf.feature/feature.xml now imports TM4E, SWTChart, LSP4E, CDT-LSP, EmbedCDT, and Nebula XViewer. Those are sourced from separate repositories in releng/com.espressif.idf.target/... and will be unresolved when provisioning from this update site unless matching <repository-reference> entries are added:

  • https://download.eclipse.org/tm4e/releases/0.17.2/
  • https://download.eclipse.org/embed-cdt/updates/v6/
  • http://download.eclipse.org/nebula/releases/latest
  • https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/
  • https://download.eclipse.org/swtchart/releases/1.0.0/repository/
  • https://download.eclipse.org/lsp4e/releases/0.30.0/
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@releng/com.espressif.idf.update/category.xml` at line 13, category.xml is
missing needed <repository-reference> entries for dependencies declared by
features/com.espressif.idf.feature/feature.xml (TM4E, EmbedCDT, Nebula, CDT-LSP,
SWTChart, LSP4E); add repository-reference elements for the following URLs so
provisioning can resolve those imports:
https://download.eclipse.org/tm4e/releases/0.17.2/,
https://download.eclipse.org/embed-cdt/updates/v6/,
http://download.eclipse.org/nebula/releases/latest,
https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/,
https://download.eclipse.org/swtchart/releases/1.0.0/repository/, and
https://download.eclipse.org/lsp4e/releases/0.30.0/ (place them alongside the
existing https://download.eclipse.org/releases/2026-03/ <repository-reference>
entry in releng/com.espressif.idf.update/category.xml).

Source: Learnings

@sigmaaasigmaaa changed the title WIP: feat: created p2 inf file for update siteWIP: feat: reducing the size of update site and adding repository referenceJun 9, 2026

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@releng/pom.xml`:
- Around line 16-17: The parent aggregator lists a non-existent Maven module
com.espressif.idf.update.offline1, causing reactor build failures; fix by either
removing the com.espressif.idf.update.offline1 <module> entry from the parent
POM or by creating the missing module directory named
com.espressif.idf.update.offline1 with a valid pom.xml (matching
groupId/artifactId and parent reference) so the module can be built, and ensure
the new module is referenced correctly in the parent modules section.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: e559ff03-cbbd-4d7f-a447-ce571e8ed691

📥 Commits

Reviewing files that changed from the base of the PR and between d269ddd and 39271c5.

📒 Files selected for processing (8)
  • .github/workflows/ci_release.yml
  • releng/com.espressif.idf.update.offline/.gitignore
  • releng/com.espressif.idf.update.offline/.project
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.core.resources.prefs
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.m2e.core.prefs
  • releng/com.espressif.idf.update.offline/category.xml
  • releng/com.espressif.idf.update.offline/pom.xml
  • releng/pom.xml
✅ Files skipped from review due to trivial changes (5)
  • releng/com.espressif.idf.update.offline/.gitignore
  • releng/com.espressif.idf.update.offline/.project
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.core.resources.prefs
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.m2e.core.prefs
  • releng/com.espressif.idf.update.offline/pom.xml

Comment threadreleng/pom.xml Outdated
@sigmaaasigmaaa self-assigned this Jun 15, 2026
@sigmaaasigmaaa changed the title WIP: feat: reducing the size of update site and adding repository referenceIEP-1786 Reduce the size of update site and add repository referenceJun 15, 2026

@Shen7436Shen7436 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @sigmaaa The documentation part LGTM. I only left some minor comments, plz check.

Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
启用 Eclipse Platform 更新站点可确保在安装或升级过程中解析所有必要的依赖项。
启用 Eclipse Platform 更新站点可确保从在线更新站点安装或升级时正确解析所有必要的依赖项。

**离线压缩包(``Espressif-IDE-Offline-Update-vX.Y.Z.zip``)**

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
**离线压缩包``Espressif-IDE-Offline-Update-vX.Y.Z.zip``**
**离线压缩包** (``Espressif-IDE-Offline-Update-vX.Y.Z.zip``)

If you encounter the error ``Cannot complete the install because one or more required items could not be found.`` during installation, try the following:

To resolve this issue:
**Online update site URL or online archive (``com.espressif.idf.update-vX.Y.Z.zip``)**

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
**Online update site URL or online archive (``com.espressif.idf.update-vX.Y.Z.zip``)**
**Online update site URL or online archive** (``com.espressif.idf.update-vX.Y.Z.zip``)

Comment threaddocs/en/marketplaceupdate.rst Outdated

@kolipakakondalkolipakakondal left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

sigmaaaand others added 6 commits June 16, 2026 16:56
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>

@AndriiFilippovAndriiFilippov left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sigmaaa hi

Tested under:
OS: Windows 11

I was able to update 3.x to 4.4 in offline mode, but unfortunately I got error updating the same version online.
Have sent you all info in DM.

@sigmaaasigmaaa changed the title IEP-1786 Reduce the size of update site and add repository referenceWIP: Reduce the size of update site and add repository referenceJun 17, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@sigmaaa@kolipakakondal@AndriiFilippov@Shen7436
, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ' WIP: Reduce the size of update site and add repository reference by sigmaaa · Pull Request #1474 · espressif/idf-eclipse-plugin · GitHub
Skip to content

WIP: Reduce the size of update site and add repository reference - #1474

Open
sigmaaa wants to merge 15 commits into
masterfrom
feat_new_update_site
Open

WIP: Reduce the size of update site and add repository reference#1474
sigmaaa wants to merge 15 commits into
masterfrom
feat_new_update_site

Conversation

@sigmaaa

@sigmaaasigmaaa commented Jun 8, 2026

Copy link
Copy Markdown
Collaborator

Description

Split the monolithic p2 update site into separate online and offline repositories:

  • Online update site (com.espressif.idf.update) — publishes only com.espressif.idf.feature. Dependencies are resolved at install time via repository-reference entries (Eclipse SimRel 2026-03, SWTChart, Nebula). Matches the existing update site URL and com.espressif.idf.update-v*.zip archive.
  • Offline update site (com.espressif.idf.update.offline) — new Tycho module with includeAllDependencies=true, bundling the Espressif feature, platform features, CMakeEd, and transitive dependencies for air-gapped installs. Published as Espressif-IDE-Offline-Update-v*.zip.

Other changes:

  • Move dependency declarations from category.xml into feature.xml<requires>.
  • Extend CI/release workflows to build, sign, and publish both update sites.
  • Update English and Chinese update-site installation docs.
  • Polish: HTTPS Nebula URL, remove unused dependency category, restore releng/pom.xml formatting.

Fixes # (IEP-1786)

Type of change

Please delete options that are not relevant.

  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

Note:com.espressif.idf.update-v*.zip is now the online/slim archive and requires network access during install. Users who previously relied on that zip for offline installs should use Espressif-IDE-Offline-Update-v*.zip instead.

How has this been tested?

Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration.

  • Online install from update site URL (https://dl.espressif.com/dl/idf-eclipse-plugin/updates/latest/) into Eclipse CDT 2026-03 with network enabled
  • Online install from com.espressif.idf.update-v*.zip archive with network enabled
  • Offline install from Espressif-IDE-Offline-Update-v*.zip with network disabled
  • Release workflow: Espressif JARs signed in both online and offline repositories; p2 metadata regenerated

Test Configuration:

  • ESP-IDF Version: 5.4 (CI default)
  • OS (Windows, Linux and macOS): To be verified

Dependent components impacted by this PR:

  • p2 update site publishing (releng/com.espressif.idf.update, releng/com.espressif.idf.update.offline)
  • GitHub Actions CI (ci.yml, ci_release.yml) — artifact upload, signing, S3 release
  • Feature metadata (features/com.espressif.idf.feature/feature.xml)
  • User documentation (docs/en/marketplaceupdate.rst, docs/zh_CN/marketplaceupdate.rst)
  • Release downloads on dl.espressif.com — new offline zip artifact

Checklist

  • PR Self Reviewed
  • Applied Code formatting
  • Added Documentation
  • Added Unit Test
  • Verified on all platforms - Windows, Linux and macOS

Summary by CodeRabbit

  • New Features

    • Added an offline update package so installers can be downloaded and applied without online access.
  • Chores

    • Split online/offline update artifacts in CI and added packaging/upload for the offline update.
    • Broadened Eclipse tooling support (language packs, LSP/editor integrations, charting, terminal) to improve development workflows.
    • Consolidated and simplified update-site/category definitions and project metadata for packaging.

@coderabbitai

coderabbitaiBot commented Jun 8, 2026

Copy link
Copy Markdown

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

Adds Eclipse feature imports to the plugin feature manifest, refactors update-site category/repository definitions, introduces an offline Tycho update-site module, updates the releng aggregator POM, and changes CI to build/package/upload both online and offline update artifacts.

Changes

Eclipse Dependency and Repository Updates

Layer / File(s)Summary
Feature dependency declarations
features/com.espressif.idf.feature/feature.xml
Adds <requires> entries for TM4E (feature and language pack), SWT Chart, LSP4E, CDT-LSP, embedcdt and embedcdt debug GDB/JTAG, launchbar, Nebula XViewer, terminal feature, and related plugins with explicit version attributes.
Category description formatting
releng/com.espressif.idf.update/category.xml
Reformats the com.espressif.idf<description> from a multi-line block to a single-line element while keeping label and text.
Add dependency category and repository references
releng/com.espressif.idf.update/category.xml
Adds com.espressif.idf.dependenciescategory-def and enables <repository-reference> entries including https://download.eclipse.org/releases/2026-03/ plus external repositories for SWTChart and Nebula to provision the new feature imports.
CI packaging and S3 upload changes
.github/workflows/ci_release.yml
CI now uploads two update-site artifacts (online and offline), downloads both in the AWS packaging job, creates Espressif-IDE-Offline-Update-v$VERSION.zip, and uploads the offline ZIP to dl/idf-eclipse-plugin/updates/.
Offline update-site module and metadata
releng/com.espressif.idf.update.offline/* (.gitignore, .project, .settings/*, category.xml, pom.xml)
Adds a new Tycho eclipse-repository module for an offline update site with project metadata, prefs, category.xml, and a pom.xml configured to bundle dependencies and produce a versioned offline update ZIP.
Aggregator POM modules
releng/pom.xml
Adds com.espressif.idf.update.offline to the parent <modules> list and condenses XML formatting.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Suggested reviewers

  • kolipakakondal
  • AndriiFilippov
  • alirana01

"A rabbit nibbles manifest threads at night,
Adds features, zips, and repos just right,
CI hums as offline bundles take flight,
Categories tidy, dependencies tight,
Hooray — the update site hops in light!" 🐰

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check nameStatusExplanation
Docstring Coverage✅ PassedNo functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check✅ PassedCheck skipped because no linked issues were found for this pull request.
Out of Scope Changes check✅ PassedCheck skipped because no linked issues were found for this pull request.
Description Check✅ PassedCheck skipped - CodeRabbit’s high-level summary is enabled.
Title check✅ PassedThe title 'WIP: Reduce the size of update site and add repository reference' clearly describes the main objectives of the changeset: reducing update site size (via offline update site split, category.xml simplification) and adding repository references (via updated category.xml and new imports in feature.xml).

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat_new_update_site

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@features/com.espressif.idf.feature/p2.inf`:
- Around line 1-3: Update the Eclipse repository stream in the p2.inf
instructions.configure entry so it matches the target platform stream: change
both addRepository(location:https${`#58`}//download.eclipse.org/releases/2025-12/)
occurrences to use download.eclipse.org/releases/2026-03/ (preserve the ${`#58`}
encoding and the type:0/type:1 entries); edit the instructions.configure line in
features/com.espressif.idf.feature/p2.inf where the
org.eclipse.equinox.p2.touchpoint.eclipse.addRepository calls are defined to
point to 2026-03.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 06e19b5a-1836-4e9d-bb62-5c3e8efca927

📥 Commits

Reviewing files that changed from the base of the PR and between 34eaf49 and 158ed66.

📒 Files selected for processing (1)
  • features/com.espressif.idf.feature/p2.inf

Comment threadfeatures/com.espressif.idf.feature/p2.inf Outdated

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@releng/com.espressif.idf.update/category.xml`:
- Line 13: category.xml is missing needed <repository-reference> entries for
dependencies declared by features/com.espressif.idf.feature/feature.xml (TM4E,
EmbedCDT, Nebula, CDT-LSP, SWTChart, LSP4E); add repository-reference elements
for the following URLs so provisioning can resolve those imports:
https://download.eclipse.org/tm4e/releases/0.17.2/,
https://download.eclipse.org/embed-cdt/updates/v6/,
http://download.eclipse.org/nebula/releases/latest,
https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/,
https://download.eclipse.org/swtchart/releases/1.0.0/repository/, and
https://download.eclipse.org/lsp4e/releases/0.30.0/ (place them alongside the
existing https://download.eclipse.org/releases/2026-03/ <repository-reference>
entry in releng/com.espressif.idf.update/category.xml).
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 7f86107d-f725-4cc6-aa50-2095acd1e28d

📥 Commits

Reviewing files that changed from the base of the PR and between 158ed66 and fc4fca5.

📒 Files selected for processing (2)
  • features/com.espressif.idf.feature/feature.xml
  • releng/com.espressif.idf.update/category.xml

<category-def name="com.espressif.idf.dependencies" label="ESP-IDF Eclipse Plugin - Dependencies"/>
</site>

<repository-reference location="https://download.eclipse.org/releases/2026-03/" enabled="true" />

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bashset -euo pipefail
CATEGORY_FILE="$(fd -p 'category.xml' releng | grep 'com.espressif.idf.update/category.xml'| head -n1)"
FEATURE_FILE="$(fd -p 'feature.xml' features | grep 'com.espressif.idf.feature/feature.xml'| head -n1)"
TARGET_FILE="$(fd -p 'com.espressif.idf.target.target' releng | head -n1)"echo"== category.xml repository references =="
rg -n '<repository-reference'"$CATEGORY_FILE"echoecho"== new requirements in feature.xml =="
rg -n 'tm4e|embedcdt|xviewer|cdt\.lsp|lsp4e|swtchart|launchbar|terminal'"$FEATURE_FILE"echoecho"== target-platform repos providing those families =="
rg -n -C2 'tm4e|embed-cdt|embedcdt|xviewer|nebula|cdt\.lsp|launchbar|terminal|releases/2026-03'"$TARGET_FILE"

Repository: espressif/idf-eclipse-plugin

Length of output: 3915


🏁 Script executed:

#!/bin/bashset -euo pipefail
TARGET_FILE="$(fd -p 'com.espressif.idf.target.target' releng | head -n1)"
FEATURE_FILE="$(fd -p 'feature.xml' features | grep 'com.espressif.idf.feature/feature.xml'| head -n1)"echo"== target-platform entries for new requirements (repositories/locations) =="
rg -n -C2 'swtchart|lsp4e|launchbar|terminal|nebula|xviewer|embedcdt|tm4e|cdt\.lsp'"$TARGET_FILE"echoecho"== full list of added/required imports in feature.xml =="
rg -n 'org\.eclipse\.tm4e|org\.eclipse\.swtchart|org\.eclipse\.lsp4e|org\.eclipse\.cdt\.lsp|org\.eclipse\.embedcdt|org\.eclipse\.launchbar|org\.eclipse\.nebula\.widgets\.xviewer|org\.eclipse\.terminal\.feature'"$FEATURE_FILE"

Repository: espressif/idf-eclipse-plugin

Length of output: 4131


Add missing p2 repository references for TM4E/EmbedCDT/Nebula CDT-LSP/SWTChart/LSP4E dependencies
releng/com.espressif.idf.update/category.xml only references https://download.eclipse.org/releases/2026-03/, but features/com.espressif.idf.feature/feature.xml now imports TM4E, SWTChart, LSP4E, CDT-LSP, EmbedCDT, and Nebula XViewer. Those are sourced from separate repositories in releng/com.espressif.idf.target/... and will be unresolved when provisioning from this update site unless matching <repository-reference> entries are added:

  • https://download.eclipse.org/tm4e/releases/0.17.2/
  • https://download.eclipse.org/embed-cdt/updates/v6/
  • http://download.eclipse.org/nebula/releases/latest
  • https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/
  • https://download.eclipse.org/swtchart/releases/1.0.0/repository/
  • https://download.eclipse.org/lsp4e/releases/0.30.0/
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@releng/com.espressif.idf.update/category.xml` at line 13, category.xml is
missing needed <repository-reference> entries for dependencies declared by
features/com.espressif.idf.feature/feature.xml (TM4E, EmbedCDT, Nebula, CDT-LSP,
SWTChart, LSP4E); add repository-reference elements for the following URLs so
provisioning can resolve those imports:
https://download.eclipse.org/tm4e/releases/0.17.2/,
https://download.eclipse.org/embed-cdt/updates/v6/,
http://download.eclipse.org/nebula/releases/latest,
https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/,
https://download.eclipse.org/swtchart/releases/1.0.0/repository/, and
https://download.eclipse.org/lsp4e/releases/0.30.0/ (place them alongside the
existing https://download.eclipse.org/releases/2026-03/ <repository-reference>
entry in releng/com.espressif.idf.update/category.xml).

Source: Learnings

@sigmaaasigmaaa changed the title WIP: feat: created p2 inf file for update siteWIP: feat: reducing the size of update site and adding repository referenceJun 9, 2026

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@releng/pom.xml`:
- Around line 16-17: The parent aggregator lists a non-existent Maven module
com.espressif.idf.update.offline1, causing reactor build failures; fix by either
removing the com.espressif.idf.update.offline1 <module> entry from the parent
POM or by creating the missing module directory named
com.espressif.idf.update.offline1 with a valid pom.xml (matching
groupId/artifactId and parent reference) so the module can be built, and ensure
the new module is referenced correctly in the parent modules section.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: e559ff03-cbbd-4d7f-a447-ce571e8ed691

📥 Commits

Reviewing files that changed from the base of the PR and between d269ddd and 39271c5.

📒 Files selected for processing (8)
  • .github/workflows/ci_release.yml
  • releng/com.espressif.idf.update.offline/.gitignore
  • releng/com.espressif.idf.update.offline/.project
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.core.resources.prefs
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.m2e.core.prefs
  • releng/com.espressif.idf.update.offline/category.xml
  • releng/com.espressif.idf.update.offline/pom.xml
  • releng/pom.xml
✅ Files skipped from review due to trivial changes (5)
  • releng/com.espressif.idf.update.offline/.gitignore
  • releng/com.espressif.idf.update.offline/.project
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.core.resources.prefs
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.m2e.core.prefs
  • releng/com.espressif.idf.update.offline/pom.xml

Comment threadreleng/pom.xml Outdated
@sigmaaasigmaaa self-assigned this Jun 15, 2026
@sigmaaasigmaaa changed the title WIP: feat: reducing the size of update site and adding repository referenceIEP-1786 Reduce the size of update site and add repository referenceJun 15, 2026

@Shen7436Shen7436 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @sigmaaa The documentation part LGTM. I only left some minor comments, plz check.

Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
启用 Eclipse Platform 更新站点可确保在安装或升级过程中解析所有必要的依赖项。
启用 Eclipse Platform 更新站点可确保从在线更新站点安装或升级时正确解析所有必要的依赖项。

**离线压缩包(``Espressif-IDE-Offline-Update-vX.Y.Z.zip``)**

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
**离线压缩包``Espressif-IDE-Offline-Update-vX.Y.Z.zip``**
**离线压缩包** (``Espressif-IDE-Offline-Update-vX.Y.Z.zip``)

If you encounter the error ``Cannot complete the install because one or more required items could not be found.`` during installation, try the following:

To resolve this issue:
**Online update site URL or online archive (``com.espressif.idf.update-vX.Y.Z.zip``)**

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
**Online update site URL or online archive (``com.espressif.idf.update-vX.Y.Z.zip``)**
**Online update site URL or online archive** (``com.espressif.idf.update-vX.Y.Z.zip``)

Comment threaddocs/en/marketplaceupdate.rst Outdated

@kolipakakondalkolipakakondal left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

sigmaaaand others added 6 commits June 16, 2026 16:56
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>

@AndriiFilippovAndriiFilippov left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sigmaaa hi

Tested under:
OS: Windows 11

I was able to update 3.x to 4.4 in offline mode, but unfortunately I got error updating the same version online.
Have sent you all info in DM.

@sigmaaasigmaaa changed the title IEP-1786 Reduce the size of update site and add repository referenceWIP: Reduce the size of update site and add repository referenceJun 17, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@sigmaaa@kolipakakondal@AndriiFilippov@Shen7436
, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' WIP: Reduce the size of update site and add repository reference by sigmaaa · Pull Request #1474 · espressif/idf-eclipse-plugin · GitHub
Skip to content

WIP: Reduce the size of update site and add repository reference - #1474

Open
sigmaaa wants to merge 15 commits into
masterfrom
feat_new_update_site
Open

WIP: Reduce the size of update site and add repository reference#1474
sigmaaa wants to merge 15 commits into
masterfrom
feat_new_update_site

Conversation

@sigmaaa

@sigmaaasigmaaa commented Jun 8, 2026

Copy link
Copy Markdown
Collaborator

Description

Split the monolithic p2 update site into separate online and offline repositories:

  • Online update site (com.espressif.idf.update) — publishes only com.espressif.idf.feature. Dependencies are resolved at install time via repository-reference entries (Eclipse SimRel 2026-03, SWTChart, Nebula). Matches the existing update site URL and com.espressif.idf.update-v*.zip archive.
  • Offline update site (com.espressif.idf.update.offline) — new Tycho module with includeAllDependencies=true, bundling the Espressif feature, platform features, CMakeEd, and transitive dependencies for air-gapped installs. Published as Espressif-IDE-Offline-Update-v*.zip.

Other changes:

  • Move dependency declarations from category.xml into feature.xml<requires>.
  • Extend CI/release workflows to build, sign, and publish both update sites.
  • Update English and Chinese update-site installation docs.
  • Polish: HTTPS Nebula URL, remove unused dependency category, restore releng/pom.xml formatting.

Fixes # (IEP-1786)

Type of change

Please delete options that are not relevant.

  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

Note:com.espressif.idf.update-v*.zip is now the online/slim archive and requires network access during install. Users who previously relied on that zip for offline installs should use Espressif-IDE-Offline-Update-v*.zip instead.

How has this been tested?

Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration.

  • Online install from update site URL (https://dl.espressif.com/dl/idf-eclipse-plugin/updates/latest/) into Eclipse CDT 2026-03 with network enabled
  • Online install from com.espressif.idf.update-v*.zip archive with network enabled
  • Offline install from Espressif-IDE-Offline-Update-v*.zip with network disabled
  • Release workflow: Espressif JARs signed in both online and offline repositories; p2 metadata regenerated

Test Configuration:

  • ESP-IDF Version: 5.4 (CI default)
  • OS (Windows, Linux and macOS): To be verified

Dependent components impacted by this PR:

  • p2 update site publishing (releng/com.espressif.idf.update, releng/com.espressif.idf.update.offline)
  • GitHub Actions CI (ci.yml, ci_release.yml) — artifact upload, signing, S3 release
  • Feature metadata (features/com.espressif.idf.feature/feature.xml)
  • User documentation (docs/en/marketplaceupdate.rst, docs/zh_CN/marketplaceupdate.rst)
  • Release downloads on dl.espressif.com — new offline zip artifact

Checklist

  • PR Self Reviewed
  • Applied Code formatting
  • Added Documentation
  • Added Unit Test
  • Verified on all platforms - Windows, Linux and macOS

Summary by CodeRabbit

  • New Features

    • Added an offline update package so installers can be downloaded and applied without online access.
  • Chores

    • Split online/offline update artifacts in CI and added packaging/upload for the offline update.
    • Broadened Eclipse tooling support (language packs, LSP/editor integrations, charting, terminal) to improve development workflows.
    • Consolidated and simplified update-site/category definitions and project metadata for packaging.

@coderabbitai

coderabbitaiBot commented Jun 8, 2026

Copy link
Copy Markdown

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

Adds Eclipse feature imports to the plugin feature manifest, refactors update-site category/repository definitions, introduces an offline Tycho update-site module, updates the releng aggregator POM, and changes CI to build/package/upload both online and offline update artifacts.

Changes

Eclipse Dependency and Repository Updates

Layer / File(s)Summary
Feature dependency declarations
features/com.espressif.idf.feature/feature.xml
Adds <requires> entries for TM4E (feature and language pack), SWT Chart, LSP4E, CDT-LSP, embedcdt and embedcdt debug GDB/JTAG, launchbar, Nebula XViewer, terminal feature, and related plugins with explicit version attributes.
Category description formatting
releng/com.espressif.idf.update/category.xml
Reformats the com.espressif.idf<description> from a multi-line block to a single-line element while keeping label and text.
Add dependency category and repository references
releng/com.espressif.idf.update/category.xml
Adds com.espressif.idf.dependenciescategory-def and enables <repository-reference> entries including https://download.eclipse.org/releases/2026-03/ plus external repositories for SWTChart and Nebula to provision the new feature imports.
CI packaging and S3 upload changes
.github/workflows/ci_release.yml
CI now uploads two update-site artifacts (online and offline), downloads both in the AWS packaging job, creates Espressif-IDE-Offline-Update-v$VERSION.zip, and uploads the offline ZIP to dl/idf-eclipse-plugin/updates/.
Offline update-site module and metadata
releng/com.espressif.idf.update.offline/* (.gitignore, .project, .settings/*, category.xml, pom.xml)
Adds a new Tycho eclipse-repository module for an offline update site with project metadata, prefs, category.xml, and a pom.xml configured to bundle dependencies and produce a versioned offline update ZIP.
Aggregator POM modules
releng/pom.xml
Adds com.espressif.idf.update.offline to the parent <modules> list and condenses XML formatting.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Suggested reviewers

  • kolipakakondal
  • AndriiFilippov
  • alirana01

"A rabbit nibbles manifest threads at night,
Adds features, zips, and repos just right,
CI hums as offline bundles take flight,
Categories tidy, dependencies tight,
Hooray — the update site hops in light!" 🐰

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check nameStatusExplanation
Docstring Coverage✅ PassedNo functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check✅ PassedCheck skipped because no linked issues were found for this pull request.
Out of Scope Changes check✅ PassedCheck skipped because no linked issues were found for this pull request.
Description Check✅ PassedCheck skipped - CodeRabbit’s high-level summary is enabled.
Title check✅ PassedThe title 'WIP: Reduce the size of update site and add repository reference' clearly describes the main objectives of the changeset: reducing update site size (via offline update site split, category.xml simplification) and adding repository references (via updated category.xml and new imports in feature.xml).

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat_new_update_site

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@features/com.espressif.idf.feature/p2.inf`:
- Around line 1-3: Update the Eclipse repository stream in the p2.inf
instructions.configure entry so it matches the target platform stream: change
both addRepository(location:https${`#58`}//download.eclipse.org/releases/2025-12/)
occurrences to use download.eclipse.org/releases/2026-03/ (preserve the ${`#58`}
encoding and the type:0/type:1 entries); edit the instructions.configure line in
features/com.espressif.idf.feature/p2.inf where the
org.eclipse.equinox.p2.touchpoint.eclipse.addRepository calls are defined to
point to 2026-03.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 06e19b5a-1836-4e9d-bb62-5c3e8efca927

📥 Commits

Reviewing files that changed from the base of the PR and between 34eaf49 and 158ed66.

📒 Files selected for processing (1)
  • features/com.espressif.idf.feature/p2.inf

Comment threadfeatures/com.espressif.idf.feature/p2.inf Outdated

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@releng/com.espressif.idf.update/category.xml`:
- Line 13: category.xml is missing needed <repository-reference> entries for
dependencies declared by features/com.espressif.idf.feature/feature.xml (TM4E,
EmbedCDT, Nebula, CDT-LSP, SWTChart, LSP4E); add repository-reference elements
for the following URLs so provisioning can resolve those imports:
https://download.eclipse.org/tm4e/releases/0.17.2/,
https://download.eclipse.org/embed-cdt/updates/v6/,
http://download.eclipse.org/nebula/releases/latest,
https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/,
https://download.eclipse.org/swtchart/releases/1.0.0/repository/, and
https://download.eclipse.org/lsp4e/releases/0.30.0/ (place them alongside the
existing https://download.eclipse.org/releases/2026-03/ <repository-reference>
entry in releng/com.espressif.idf.update/category.xml).
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 7f86107d-f725-4cc6-aa50-2095acd1e28d

📥 Commits

Reviewing files that changed from the base of the PR and between 158ed66 and fc4fca5.

📒 Files selected for processing (2)
  • features/com.espressif.idf.feature/feature.xml
  • releng/com.espressif.idf.update/category.xml

<category-def name="com.espressif.idf.dependencies" label="ESP-IDF Eclipse Plugin - Dependencies"/>
</site>

<repository-reference location="https://download.eclipse.org/releases/2026-03/" enabled="true" />

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bashset -euo pipefail
CATEGORY_FILE="$(fd -p 'category.xml' releng | grep 'com.espressif.idf.update/category.xml'| head -n1)"
FEATURE_FILE="$(fd -p 'feature.xml' features | grep 'com.espressif.idf.feature/feature.xml'| head -n1)"
TARGET_FILE="$(fd -p 'com.espressif.idf.target.target' releng | head -n1)"echo"== category.xml repository references =="
rg -n '<repository-reference'"$CATEGORY_FILE"echoecho"== new requirements in feature.xml =="
rg -n 'tm4e|embedcdt|xviewer|cdt\.lsp|lsp4e|swtchart|launchbar|terminal'"$FEATURE_FILE"echoecho"== target-platform repos providing those families =="
rg -n -C2 'tm4e|embed-cdt|embedcdt|xviewer|nebula|cdt\.lsp|launchbar|terminal|releases/2026-03'"$TARGET_FILE"

Repository: espressif/idf-eclipse-plugin

Length of output: 3915


🏁 Script executed:

#!/bin/bashset -euo pipefail
TARGET_FILE="$(fd -p 'com.espressif.idf.target.target' releng | head -n1)"
FEATURE_FILE="$(fd -p 'feature.xml' features | grep 'com.espressif.idf.feature/feature.xml'| head -n1)"echo"== target-platform entries for new requirements (repositories/locations) =="
rg -n -C2 'swtchart|lsp4e|launchbar|terminal|nebula|xviewer|embedcdt|tm4e|cdt\.lsp'"$TARGET_FILE"echoecho"== full list of added/required imports in feature.xml =="
rg -n 'org\.eclipse\.tm4e|org\.eclipse\.swtchart|org\.eclipse\.lsp4e|org\.eclipse\.cdt\.lsp|org\.eclipse\.embedcdt|org\.eclipse\.launchbar|org\.eclipse\.nebula\.widgets\.xviewer|org\.eclipse\.terminal\.feature'"$FEATURE_FILE"

Repository: espressif/idf-eclipse-plugin

Length of output: 4131


Add missing p2 repository references for TM4E/EmbedCDT/Nebula CDT-LSP/SWTChart/LSP4E dependencies
releng/com.espressif.idf.update/category.xml only references https://download.eclipse.org/releases/2026-03/, but features/com.espressif.idf.feature/feature.xml now imports TM4E, SWTChart, LSP4E, CDT-LSP, EmbedCDT, and Nebula XViewer. Those are sourced from separate repositories in releng/com.espressif.idf.target/... and will be unresolved when provisioning from this update site unless matching <repository-reference> entries are added:

  • https://download.eclipse.org/tm4e/releases/0.17.2/
  • https://download.eclipse.org/embed-cdt/updates/v6/
  • http://download.eclipse.org/nebula/releases/latest
  • https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/
  • https://download.eclipse.org/swtchart/releases/1.0.0/repository/
  • https://download.eclipse.org/lsp4e/releases/0.30.0/
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@releng/com.espressif.idf.update/category.xml` at line 13, category.xml is
missing needed <repository-reference> entries for dependencies declared by
features/com.espressif.idf.feature/feature.xml (TM4E, EmbedCDT, Nebula, CDT-LSP,
SWTChart, LSP4E); add repository-reference elements for the following URLs so
provisioning can resolve those imports:
https://download.eclipse.org/tm4e/releases/0.17.2/,
https://download.eclipse.org/embed-cdt/updates/v6/,
http://download.eclipse.org/nebula/releases/latest,
https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/,
https://download.eclipse.org/swtchart/releases/1.0.0/repository/, and
https://download.eclipse.org/lsp4e/releases/0.30.0/ (place them alongside the
existing https://download.eclipse.org/releases/2026-03/ <repository-reference>
entry in releng/com.espressif.idf.update/category.xml).

Source: Learnings

@sigmaaasigmaaa changed the title WIP: feat: created p2 inf file for update siteWIP: feat: reducing the size of update site and adding repository referenceJun 9, 2026

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@releng/pom.xml`:
- Around line 16-17: The parent aggregator lists a non-existent Maven module
com.espressif.idf.update.offline1, causing reactor build failures; fix by either
removing the com.espressif.idf.update.offline1 <module> entry from the parent
POM or by creating the missing module directory named
com.espressif.idf.update.offline1 with a valid pom.xml (matching
groupId/artifactId and parent reference) so the module can be built, and ensure
the new module is referenced correctly in the parent modules section.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: e559ff03-cbbd-4d7f-a447-ce571e8ed691

📥 Commits

Reviewing files that changed from the base of the PR and between d269ddd and 39271c5.

📒 Files selected for processing (8)
  • .github/workflows/ci_release.yml
  • releng/com.espressif.idf.update.offline/.gitignore
  • releng/com.espressif.idf.update.offline/.project
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.core.resources.prefs
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.m2e.core.prefs
  • releng/com.espressif.idf.update.offline/category.xml
  • releng/com.espressif.idf.update.offline/pom.xml
  • releng/pom.xml
✅ Files skipped from review due to trivial changes (5)
  • releng/com.espressif.idf.update.offline/.gitignore
  • releng/com.espressif.idf.update.offline/.project
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.core.resources.prefs
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.m2e.core.prefs
  • releng/com.espressif.idf.update.offline/pom.xml

Comment threadreleng/pom.xml Outdated
@sigmaaasigmaaa self-assigned this Jun 15, 2026
@sigmaaasigmaaa changed the title WIP: feat: reducing the size of update site and adding repository referenceIEP-1786 Reduce the size of update site and add repository referenceJun 15, 2026

@Shen7436Shen7436 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @sigmaaa The documentation part LGTM. I only left some minor comments, plz check.

Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
启用 Eclipse Platform 更新站点可确保在安装或升级过程中解析所有必要的依赖项。
启用 Eclipse Platform 更新站点可确保从在线更新站点安装或升级时正确解析所有必要的依赖项。

**离线压缩包(``Espressif-IDE-Offline-Update-vX.Y.Z.zip``)**

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
**离线压缩包``Espressif-IDE-Offline-Update-vX.Y.Z.zip``**
**离线压缩包** (``Espressif-IDE-Offline-Update-vX.Y.Z.zip``)

If you encounter the error ``Cannot complete the install because one or more required items could not be found.`` during installation, try the following:

To resolve this issue:
**Online update site URL or online archive (``com.espressif.idf.update-vX.Y.Z.zip``)**

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
**Online update site URL or online archive (``com.espressif.idf.update-vX.Y.Z.zip``)**
**Online update site URL or online archive** (``com.espressif.idf.update-vX.Y.Z.zip``)

Comment threaddocs/en/marketplaceupdate.rst Outdated

@kolipakakondalkolipakakondal left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

sigmaaaand others added 6 commits June 16, 2026 16:56
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>

@AndriiFilippovAndriiFilippov left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sigmaaa hi

Tested under:
OS: Windows 11

I was able to update 3.x to 4.4 in offline mode, but unfortunately I got error updating the same version online.
Have sent you all info in DM.

@sigmaaasigmaaa changed the title IEP-1786 Reduce the size of update site and add repository referenceWIP: Reduce the size of update site and add repository referenceJun 17, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@sigmaaa@kolipakakondal@AndriiFilippov@Shen7436
, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' WIP: Reduce the size of update site and add repository reference by sigmaaa · Pull Request #1474 · espressif/idf-eclipse-plugin · GitHub
Skip to content

WIP: Reduce the size of update site and add repository reference - #1474

Open
sigmaaa wants to merge 15 commits into
masterfrom
feat_new_update_site
Open

WIP: Reduce the size of update site and add repository reference#1474
sigmaaa wants to merge 15 commits into
masterfrom
feat_new_update_site

Conversation

@sigmaaa

@sigmaaasigmaaa commented Jun 8, 2026

Copy link
Copy Markdown
Collaborator

Description

Split the monolithic p2 update site into separate online and offline repositories:

  • Online update site (com.espressif.idf.update) — publishes only com.espressif.idf.feature. Dependencies are resolved at install time via repository-reference entries (Eclipse SimRel 2026-03, SWTChart, Nebula). Matches the existing update site URL and com.espressif.idf.update-v*.zip archive.
  • Offline update site (com.espressif.idf.update.offline) — new Tycho module with includeAllDependencies=true, bundling the Espressif feature, platform features, CMakeEd, and transitive dependencies for air-gapped installs. Published as Espressif-IDE-Offline-Update-v*.zip.

Other changes:

  • Move dependency declarations from category.xml into feature.xml<requires>.
  • Extend CI/release workflows to build, sign, and publish both update sites.
  • Update English and Chinese update-site installation docs.
  • Polish: HTTPS Nebula URL, remove unused dependency category, restore releng/pom.xml formatting.

Fixes # (IEP-1786)

Type of change

Please delete options that are not relevant.

  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

Note:com.espressif.idf.update-v*.zip is now the online/slim archive and requires network access during install. Users who previously relied on that zip for offline installs should use Espressif-IDE-Offline-Update-v*.zip instead.

How has this been tested?

Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration.

  • Online install from update site URL (https://dl.espressif.com/dl/idf-eclipse-plugin/updates/latest/) into Eclipse CDT 2026-03 with network enabled
  • Online install from com.espressif.idf.update-v*.zip archive with network enabled
  • Offline install from Espressif-IDE-Offline-Update-v*.zip with network disabled
  • Release workflow: Espressif JARs signed in both online and offline repositories; p2 metadata regenerated

Test Configuration:

  • ESP-IDF Version: 5.4 (CI default)
  • OS (Windows, Linux and macOS): To be verified

Dependent components impacted by this PR:

  • p2 update site publishing (releng/com.espressif.idf.update, releng/com.espressif.idf.update.offline)
  • GitHub Actions CI (ci.yml, ci_release.yml) — artifact upload, signing, S3 release
  • Feature metadata (features/com.espressif.idf.feature/feature.xml)
  • User documentation (docs/en/marketplaceupdate.rst, docs/zh_CN/marketplaceupdate.rst)
  • Release downloads on dl.espressif.com — new offline zip artifact

Checklist

  • PR Self Reviewed
  • Applied Code formatting
  • Added Documentation
  • Added Unit Test
  • Verified on all platforms - Windows, Linux and macOS

Summary by CodeRabbit

  • New Features

    • Added an offline update package so installers can be downloaded and applied without online access.
  • Chores

    • Split online/offline update artifacts in CI and added packaging/upload for the offline update.
    • Broadened Eclipse tooling support (language packs, LSP/editor integrations, charting, terminal) to improve development workflows.
    • Consolidated and simplified update-site/category definitions and project metadata for packaging.

@coderabbitai

coderabbitaiBot commented Jun 8, 2026

Copy link
Copy Markdown

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

Adds Eclipse feature imports to the plugin feature manifest, refactors update-site category/repository definitions, introduces an offline Tycho update-site module, updates the releng aggregator POM, and changes CI to build/package/upload both online and offline update artifacts.

Changes

Eclipse Dependency and Repository Updates

Layer / File(s)Summary
Feature dependency declarations
features/com.espressif.idf.feature/feature.xml
Adds <requires> entries for TM4E (feature and language pack), SWT Chart, LSP4E, CDT-LSP, embedcdt and embedcdt debug GDB/JTAG, launchbar, Nebula XViewer, terminal feature, and related plugins with explicit version attributes.
Category description formatting
releng/com.espressif.idf.update/category.xml
Reformats the com.espressif.idf<description> from a multi-line block to a single-line element while keeping label and text.
Add dependency category and repository references
releng/com.espressif.idf.update/category.xml
Adds com.espressif.idf.dependenciescategory-def and enables <repository-reference> entries including https://download.eclipse.org/releases/2026-03/ plus external repositories for SWTChart and Nebula to provision the new feature imports.
CI packaging and S3 upload changes
.github/workflows/ci_release.yml
CI now uploads two update-site artifacts (online and offline), downloads both in the AWS packaging job, creates Espressif-IDE-Offline-Update-v$VERSION.zip, and uploads the offline ZIP to dl/idf-eclipse-plugin/updates/.
Offline update-site module and metadata
releng/com.espressif.idf.update.offline/* (.gitignore, .project, .settings/*, category.xml, pom.xml)
Adds a new Tycho eclipse-repository module for an offline update site with project metadata, prefs, category.xml, and a pom.xml configured to bundle dependencies and produce a versioned offline update ZIP.
Aggregator POM modules
releng/pom.xml
Adds com.espressif.idf.update.offline to the parent <modules> list and condenses XML formatting.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Suggested reviewers

  • kolipakakondal
  • AndriiFilippov
  • alirana01

"A rabbit nibbles manifest threads at night,
Adds features, zips, and repos just right,
CI hums as offline bundles take flight,
Categories tidy, dependencies tight,
Hooray — the update site hops in light!" 🐰

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check nameStatusExplanation
Docstring Coverage✅ PassedNo functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check✅ PassedCheck skipped because no linked issues were found for this pull request.
Out of Scope Changes check✅ PassedCheck skipped because no linked issues were found for this pull request.
Description Check✅ PassedCheck skipped - CodeRabbit’s high-level summary is enabled.
Title check✅ PassedThe title 'WIP: Reduce the size of update site and add repository reference' clearly describes the main objectives of the changeset: reducing update site size (via offline update site split, category.xml simplification) and adding repository references (via updated category.xml and new imports in feature.xml).

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat_new_update_site

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@features/com.espressif.idf.feature/p2.inf`:
- Around line 1-3: Update the Eclipse repository stream in the p2.inf
instructions.configure entry so it matches the target platform stream: change
both addRepository(location:https${`#58`}//download.eclipse.org/releases/2025-12/)
occurrences to use download.eclipse.org/releases/2026-03/ (preserve the ${`#58`}
encoding and the type:0/type:1 entries); edit the instructions.configure line in
features/com.espressif.idf.feature/p2.inf where the
org.eclipse.equinox.p2.touchpoint.eclipse.addRepository calls are defined to
point to 2026-03.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 06e19b5a-1836-4e9d-bb62-5c3e8efca927

📥 Commits

Reviewing files that changed from the base of the PR and between 34eaf49 and 158ed66.

📒 Files selected for processing (1)
  • features/com.espressif.idf.feature/p2.inf

Comment threadfeatures/com.espressif.idf.feature/p2.inf Outdated

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@releng/com.espressif.idf.update/category.xml`:
- Line 13: category.xml is missing needed <repository-reference> entries for
dependencies declared by features/com.espressif.idf.feature/feature.xml (TM4E,
EmbedCDT, Nebula, CDT-LSP, SWTChart, LSP4E); add repository-reference elements
for the following URLs so provisioning can resolve those imports:
https://download.eclipse.org/tm4e/releases/0.17.2/,
https://download.eclipse.org/embed-cdt/updates/v6/,
http://download.eclipse.org/nebula/releases/latest,
https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/,
https://download.eclipse.org/swtchart/releases/1.0.0/repository/, and
https://download.eclipse.org/lsp4e/releases/0.30.0/ (place them alongside the
existing https://download.eclipse.org/releases/2026-03/ <repository-reference>
entry in releng/com.espressif.idf.update/category.xml).
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 7f86107d-f725-4cc6-aa50-2095acd1e28d

📥 Commits

Reviewing files that changed from the base of the PR and between 158ed66 and fc4fca5.

📒 Files selected for processing (2)
  • features/com.espressif.idf.feature/feature.xml
  • releng/com.espressif.idf.update/category.xml

<category-def name="com.espressif.idf.dependencies" label="ESP-IDF Eclipse Plugin - Dependencies"/>
</site>

<repository-reference location="https://download.eclipse.org/releases/2026-03/" enabled="true" />

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bashset -euo pipefail
CATEGORY_FILE="$(fd -p 'category.xml' releng | grep 'com.espressif.idf.update/category.xml'| head -n1)"
FEATURE_FILE="$(fd -p 'feature.xml' features | grep 'com.espressif.idf.feature/feature.xml'| head -n1)"
TARGET_FILE="$(fd -p 'com.espressif.idf.target.target' releng | head -n1)"echo"== category.xml repository references =="
rg -n '<repository-reference'"$CATEGORY_FILE"echoecho"== new requirements in feature.xml =="
rg -n 'tm4e|embedcdt|xviewer|cdt\.lsp|lsp4e|swtchart|launchbar|terminal'"$FEATURE_FILE"echoecho"== target-platform repos providing those families =="
rg -n -C2 'tm4e|embed-cdt|embedcdt|xviewer|nebula|cdt\.lsp|launchbar|terminal|releases/2026-03'"$TARGET_FILE"

Repository: espressif/idf-eclipse-plugin

Length of output: 3915


🏁 Script executed:

#!/bin/bashset -euo pipefail
TARGET_FILE="$(fd -p 'com.espressif.idf.target.target' releng | head -n1)"
FEATURE_FILE="$(fd -p 'feature.xml' features | grep 'com.espressif.idf.feature/feature.xml'| head -n1)"echo"== target-platform entries for new requirements (repositories/locations) =="
rg -n -C2 'swtchart|lsp4e|launchbar|terminal|nebula|xviewer|embedcdt|tm4e|cdt\.lsp'"$TARGET_FILE"echoecho"== full list of added/required imports in feature.xml =="
rg -n 'org\.eclipse\.tm4e|org\.eclipse\.swtchart|org\.eclipse\.lsp4e|org\.eclipse\.cdt\.lsp|org\.eclipse\.embedcdt|org\.eclipse\.launchbar|org\.eclipse\.nebula\.widgets\.xviewer|org\.eclipse\.terminal\.feature'"$FEATURE_FILE"

Repository: espressif/idf-eclipse-plugin

Length of output: 4131


Add missing p2 repository references for TM4E/EmbedCDT/Nebula CDT-LSP/SWTChart/LSP4E dependencies
releng/com.espressif.idf.update/category.xml only references https://download.eclipse.org/releases/2026-03/, but features/com.espressif.idf.feature/feature.xml now imports TM4E, SWTChart, LSP4E, CDT-LSP, EmbedCDT, and Nebula XViewer. Those are sourced from separate repositories in releng/com.espressif.idf.target/... and will be unresolved when provisioning from this update site unless matching <repository-reference> entries are added:

  • https://download.eclipse.org/tm4e/releases/0.17.2/
  • https://download.eclipse.org/embed-cdt/updates/v6/
  • http://download.eclipse.org/nebula/releases/latest
  • https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/
  • https://download.eclipse.org/swtchart/releases/1.0.0/repository/
  • https://download.eclipse.org/lsp4e/releases/0.30.0/
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@releng/com.espressif.idf.update/category.xml` at line 13, category.xml is
missing needed <repository-reference> entries for dependencies declared by
features/com.espressif.idf.feature/feature.xml (TM4E, EmbedCDT, Nebula, CDT-LSP,
SWTChart, LSP4E); add repository-reference elements for the following URLs so
provisioning can resolve those imports:
https://download.eclipse.org/tm4e/releases/0.17.2/,
https://download.eclipse.org/embed-cdt/updates/v6/,
http://download.eclipse.org/nebula/releases/latest,
https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/,
https://download.eclipse.org/swtchart/releases/1.0.0/repository/, and
https://download.eclipse.org/lsp4e/releases/0.30.0/ (place them alongside the
existing https://download.eclipse.org/releases/2026-03/ <repository-reference>
entry in releng/com.espressif.idf.update/category.xml).

Source: Learnings

@sigmaaasigmaaa changed the title WIP: feat: created p2 inf file for update siteWIP: feat: reducing the size of update site and adding repository referenceJun 9, 2026

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@releng/pom.xml`:
- Around line 16-17: The parent aggregator lists a non-existent Maven module
com.espressif.idf.update.offline1, causing reactor build failures; fix by either
removing the com.espressif.idf.update.offline1 <module> entry from the parent
POM or by creating the missing module directory named
com.espressif.idf.update.offline1 with a valid pom.xml (matching
groupId/artifactId and parent reference) so the module can be built, and ensure
the new module is referenced correctly in the parent modules section.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: e559ff03-cbbd-4d7f-a447-ce571e8ed691

📥 Commits

Reviewing files that changed from the base of the PR and between d269ddd and 39271c5.

📒 Files selected for processing (8)
  • .github/workflows/ci_release.yml
  • releng/com.espressif.idf.update.offline/.gitignore
  • releng/com.espressif.idf.update.offline/.project
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.core.resources.prefs
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.m2e.core.prefs
  • releng/com.espressif.idf.update.offline/category.xml
  • releng/com.espressif.idf.update.offline/pom.xml
  • releng/pom.xml
✅ Files skipped from review due to trivial changes (5)
  • releng/com.espressif.idf.update.offline/.gitignore
  • releng/com.espressif.idf.update.offline/.project
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.core.resources.prefs
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.m2e.core.prefs
  • releng/com.espressif.idf.update.offline/pom.xml

Comment threadreleng/pom.xml Outdated
@sigmaaasigmaaa self-assigned this Jun 15, 2026
@sigmaaasigmaaa changed the title WIP: feat: reducing the size of update site and adding repository referenceIEP-1786 Reduce the size of update site and add repository referenceJun 15, 2026

@Shen7436Shen7436 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @sigmaaa The documentation part LGTM. I only left some minor comments, plz check.

Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
启用 Eclipse Platform 更新站点可确保在安装或升级过程中解析所有必要的依赖项。
启用 Eclipse Platform 更新站点可确保从在线更新站点安装或升级时正确解析所有必要的依赖项。

**离线压缩包(``Espressif-IDE-Offline-Update-vX.Y.Z.zip``)**

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
**离线压缩包``Espressif-IDE-Offline-Update-vX.Y.Z.zip``**
**离线压缩包** (``Espressif-IDE-Offline-Update-vX.Y.Z.zip``)

If you encounter the error ``Cannot complete the install because one or more required items could not be found.`` during installation, try the following:

To resolve this issue:
**Online update site URL or online archive (``com.espressif.idf.update-vX.Y.Z.zip``)**

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
**Online update site URL or online archive (``com.espressif.idf.update-vX.Y.Z.zip``)**
**Online update site URL or online archive** (``com.espressif.idf.update-vX.Y.Z.zip``)

Comment threaddocs/en/marketplaceupdate.rst Outdated

@kolipakakondalkolipakakondal left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

sigmaaaand others added 6 commits June 16, 2026 16:56
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>

@AndriiFilippovAndriiFilippov left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sigmaaa hi

Tested under:
OS: Windows 11

I was able to update 3.x to 4.4 in offline mode, but unfortunately I got error updating the same version online.
Have sent you all info in DM.

@sigmaaasigmaaa changed the title IEP-1786 Reduce the size of update site and add repository referenceWIP: Reduce the size of update site and add repository referenceJun 17, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@sigmaaa@kolipakakondal@AndriiFilippov@Shen7436
, 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })(); WIP: Reduce the size of update site and add repository reference by sigmaaa · Pull Request #1474 · espressif/idf-eclipse-plugin · GitHub
Skip to content

WIP: Reduce the size of update site and add repository reference - #1474

Open
sigmaaa wants to merge 15 commits into
masterfrom
feat_new_update_site
Open

WIP: Reduce the size of update site and add repository reference#1474
sigmaaa wants to merge 15 commits into
masterfrom
feat_new_update_site

Conversation

@sigmaaa

@sigmaaasigmaaa commented Jun 8, 2026

Copy link
Copy Markdown
Collaborator

Description

Split the monolithic p2 update site into separate online and offline repositories:

  • Online update site (com.espressif.idf.update) — publishes only com.espressif.idf.feature. Dependencies are resolved at install time via repository-reference entries (Eclipse SimRel 2026-03, SWTChart, Nebula). Matches the existing update site URL and com.espressif.idf.update-v*.zip archive.
  • Offline update site (com.espressif.idf.update.offline) — new Tycho module with includeAllDependencies=true, bundling the Espressif feature, platform features, CMakeEd, and transitive dependencies for air-gapped installs. Published as Espressif-IDE-Offline-Update-v*.zip.

Other changes:

  • Move dependency declarations from category.xml into feature.xml<requires>.
  • Extend CI/release workflows to build, sign, and publish both update sites.
  • Update English and Chinese update-site installation docs.
  • Polish: HTTPS Nebula URL, remove unused dependency category, restore releng/pom.xml formatting.

Fixes # (IEP-1786)

Type of change

Please delete options that are not relevant.

  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

Note:com.espressif.idf.update-v*.zip is now the online/slim archive and requires network access during install. Users who previously relied on that zip for offline installs should use Espressif-IDE-Offline-Update-v*.zip instead.

How has this been tested?

Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration.

  • Online install from update site URL (https://dl.espressif.com/dl/idf-eclipse-plugin/updates/latest/) into Eclipse CDT 2026-03 with network enabled
  • Online install from com.espressif.idf.update-v*.zip archive with network enabled
  • Offline install from Espressif-IDE-Offline-Update-v*.zip with network disabled
  • Release workflow: Espressif JARs signed in both online and offline repositories; p2 metadata regenerated

Test Configuration:

  • ESP-IDF Version: 5.4 (CI default)
  • OS (Windows, Linux and macOS): To be verified

Dependent components impacted by this PR:

  • p2 update site publishing (releng/com.espressif.idf.update, releng/com.espressif.idf.update.offline)
  • GitHub Actions CI (ci.yml, ci_release.yml) — artifact upload, signing, S3 release
  • Feature metadata (features/com.espressif.idf.feature/feature.xml)
  • User documentation (docs/en/marketplaceupdate.rst, docs/zh_CN/marketplaceupdate.rst)
  • Release downloads on dl.espressif.com — new offline zip artifact

Checklist

  • PR Self Reviewed
  • Applied Code formatting
  • Added Documentation
  • Added Unit Test
  • Verified on all platforms - Windows, Linux and macOS

Summary by CodeRabbit

  • New Features

    • Added an offline update package so installers can be downloaded and applied without online access.
  • Chores

    • Split online/offline update artifacts in CI and added packaging/upload for the offline update.
    • Broadened Eclipse tooling support (language packs, LSP/editor integrations, charting, terminal) to improve development workflows.
    • Consolidated and simplified update-site/category definitions and project metadata for packaging.

@coderabbitai

coderabbitaiBot commented Jun 8, 2026

Copy link
Copy Markdown

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

Adds Eclipse feature imports to the plugin feature manifest, refactors update-site category/repository definitions, introduces an offline Tycho update-site module, updates the releng aggregator POM, and changes CI to build/package/upload both online and offline update artifacts.

Changes

Eclipse Dependency and Repository Updates

Layer / File(s)Summary
Feature dependency declarations
features/com.espressif.idf.feature/feature.xml
Adds <requires> entries for TM4E (feature and language pack), SWT Chart, LSP4E, CDT-LSP, embedcdt and embedcdt debug GDB/JTAG, launchbar, Nebula XViewer, terminal feature, and related plugins with explicit version attributes.
Category description formatting
releng/com.espressif.idf.update/category.xml
Reformats the com.espressif.idf<description> from a multi-line block to a single-line element while keeping label and text.
Add dependency category and repository references
releng/com.espressif.idf.update/category.xml
Adds com.espressif.idf.dependenciescategory-def and enables <repository-reference> entries including https://download.eclipse.org/releases/2026-03/ plus external repositories for SWTChart and Nebula to provision the new feature imports.
CI packaging and S3 upload changes
.github/workflows/ci_release.yml
CI now uploads two update-site artifacts (online and offline), downloads both in the AWS packaging job, creates Espressif-IDE-Offline-Update-v$VERSION.zip, and uploads the offline ZIP to dl/idf-eclipse-plugin/updates/.
Offline update-site module and metadata
releng/com.espressif.idf.update.offline/* (.gitignore, .project, .settings/*, category.xml, pom.xml)
Adds a new Tycho eclipse-repository module for an offline update site with project metadata, prefs, category.xml, and a pom.xml configured to bundle dependencies and produce a versioned offline update ZIP.
Aggregator POM modules
releng/pom.xml
Adds com.espressif.idf.update.offline to the parent <modules> list and condenses XML formatting.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Suggested reviewers

  • kolipakakondal
  • AndriiFilippov
  • alirana01

"A rabbit nibbles manifest threads at night,
Adds features, zips, and repos just right,
CI hums as offline bundles take flight,
Categories tidy, dependencies tight,
Hooray — the update site hops in light!" 🐰

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check nameStatusExplanation
Docstring Coverage✅ PassedNo functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check✅ PassedCheck skipped because no linked issues were found for this pull request.
Out of Scope Changes check✅ PassedCheck skipped because no linked issues were found for this pull request.
Description Check✅ PassedCheck skipped - CodeRabbit’s high-level summary is enabled.
Title check✅ PassedThe title 'WIP: Reduce the size of update site and add repository reference' clearly describes the main objectives of the changeset: reducing update site size (via offline update site split, category.xml simplification) and adding repository references (via updated category.xml and new imports in feature.xml).

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat_new_update_site

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@features/com.espressif.idf.feature/p2.inf`:
- Around line 1-3: Update the Eclipse repository stream in the p2.inf
instructions.configure entry so it matches the target platform stream: change
both addRepository(location:https${`#58`}//download.eclipse.org/releases/2025-12/)
occurrences to use download.eclipse.org/releases/2026-03/ (preserve the ${`#58`}
encoding and the type:0/type:1 entries); edit the instructions.configure line in
features/com.espressif.idf.feature/p2.inf where the
org.eclipse.equinox.p2.touchpoint.eclipse.addRepository calls are defined to
point to 2026-03.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 06e19b5a-1836-4e9d-bb62-5c3e8efca927

📥 Commits

Reviewing files that changed from the base of the PR and between 34eaf49 and 158ed66.

📒 Files selected for processing (1)
  • features/com.espressif.idf.feature/p2.inf

Comment threadfeatures/com.espressif.idf.feature/p2.inf Outdated

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@releng/com.espressif.idf.update/category.xml`:
- Line 13: category.xml is missing needed <repository-reference> entries for
dependencies declared by features/com.espressif.idf.feature/feature.xml (TM4E,
EmbedCDT, Nebula, CDT-LSP, SWTChart, LSP4E); add repository-reference elements
for the following URLs so provisioning can resolve those imports:
https://download.eclipse.org/tm4e/releases/0.17.2/,
https://download.eclipse.org/embed-cdt/updates/v6/,
http://download.eclipse.org/nebula/releases/latest,
https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/,
https://download.eclipse.org/swtchart/releases/1.0.0/repository/, and
https://download.eclipse.org/lsp4e/releases/0.30.0/ (place them alongside the
existing https://download.eclipse.org/releases/2026-03/ <repository-reference>
entry in releng/com.espressif.idf.update/category.xml).
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 7f86107d-f725-4cc6-aa50-2095acd1e28d

📥 Commits

Reviewing files that changed from the base of the PR and between 158ed66 and fc4fca5.

📒 Files selected for processing (2)
  • features/com.espressif.idf.feature/feature.xml
  • releng/com.espressif.idf.update/category.xml

<category-def name="com.espressif.idf.dependencies" label="ESP-IDF Eclipse Plugin - Dependencies"/>
</site>

<repository-reference location="https://download.eclipse.org/releases/2026-03/" enabled="true" />

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bashset -euo pipefail
CATEGORY_FILE="$(fd -p 'category.xml' releng | grep 'com.espressif.idf.update/category.xml'| head -n1)"
FEATURE_FILE="$(fd -p 'feature.xml' features | grep 'com.espressif.idf.feature/feature.xml'| head -n1)"
TARGET_FILE="$(fd -p 'com.espressif.idf.target.target' releng | head -n1)"echo"== category.xml repository references =="
rg -n '<repository-reference'"$CATEGORY_FILE"echoecho"== new requirements in feature.xml =="
rg -n 'tm4e|embedcdt|xviewer|cdt\.lsp|lsp4e|swtchart|launchbar|terminal'"$FEATURE_FILE"echoecho"== target-platform repos providing those families =="
rg -n -C2 'tm4e|embed-cdt|embedcdt|xviewer|nebula|cdt\.lsp|launchbar|terminal|releases/2026-03'"$TARGET_FILE"

Repository: espressif/idf-eclipse-plugin

Length of output: 3915


🏁 Script executed:

#!/bin/bashset -euo pipefail
TARGET_FILE="$(fd -p 'com.espressif.idf.target.target' releng | head -n1)"
FEATURE_FILE="$(fd -p 'feature.xml' features | grep 'com.espressif.idf.feature/feature.xml'| head -n1)"echo"== target-platform entries for new requirements (repositories/locations) =="
rg -n -C2 'swtchart|lsp4e|launchbar|terminal|nebula|xviewer|embedcdt|tm4e|cdt\.lsp'"$TARGET_FILE"echoecho"== full list of added/required imports in feature.xml =="
rg -n 'org\.eclipse\.tm4e|org\.eclipse\.swtchart|org\.eclipse\.lsp4e|org\.eclipse\.cdt\.lsp|org\.eclipse\.embedcdt|org\.eclipse\.launchbar|org\.eclipse\.nebula\.widgets\.xviewer|org\.eclipse\.terminal\.feature'"$FEATURE_FILE"

Repository: espressif/idf-eclipse-plugin

Length of output: 4131


Add missing p2 repository references for TM4E/EmbedCDT/Nebula CDT-LSP/SWTChart/LSP4E dependencies
releng/com.espressif.idf.update/category.xml only references https://download.eclipse.org/releases/2026-03/, but features/com.espressif.idf.feature/feature.xml now imports TM4E, SWTChart, LSP4E, CDT-LSP, EmbedCDT, and Nebula XViewer. Those are sourced from separate repositories in releng/com.espressif.idf.target/... and will be unresolved when provisioning from this update site unless matching <repository-reference> entries are added:

  • https://download.eclipse.org/tm4e/releases/0.17.2/
  • https://download.eclipse.org/embed-cdt/updates/v6/
  • http://download.eclipse.org/nebula/releases/latest
  • https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/
  • https://download.eclipse.org/swtchart/releases/1.0.0/repository/
  • https://download.eclipse.org/lsp4e/releases/0.30.0/
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@releng/com.espressif.idf.update/category.xml` at line 13, category.xml is
missing needed <repository-reference> entries for dependencies declared by
features/com.espressif.idf.feature/feature.xml (TM4E, EmbedCDT, Nebula, CDT-LSP,
SWTChart, LSP4E); add repository-reference elements for the following URLs so
provisioning can resolve those imports:
https://download.eclipse.org/tm4e/releases/0.17.2/,
https://download.eclipse.org/embed-cdt/updates/v6/,
http://download.eclipse.org/nebula/releases/latest,
https://download.eclipse.org/tools/cdt/releases/cdt-lsp-3.5/cdt-lsp-3.5.0/,
https://download.eclipse.org/swtchart/releases/1.0.0/repository/, and
https://download.eclipse.org/lsp4e/releases/0.30.0/ (place them alongside the
existing https://download.eclipse.org/releases/2026-03/ <repository-reference>
entry in releng/com.espressif.idf.update/category.xml).

Source: Learnings

@sigmaaasigmaaa changed the title WIP: feat: created p2 inf file for update siteWIP: feat: reducing the size of update site and adding repository referenceJun 9, 2026

@coderabbitaicoderabbitaiBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@releng/pom.xml`:
- Around line 16-17: The parent aggregator lists a non-existent Maven module
com.espressif.idf.update.offline1, causing reactor build failures; fix by either
removing the com.espressif.idf.update.offline1 <module> entry from the parent
POM or by creating the missing module directory named
com.espressif.idf.update.offline1 with a valid pom.xml (matching
groupId/artifactId and parent reference) so the module can be built, and ensure
the new module is referenced correctly in the parent modules section.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: e559ff03-cbbd-4d7f-a447-ce571e8ed691

📥 Commits

Reviewing files that changed from the base of the PR and between d269ddd and 39271c5.

📒 Files selected for processing (8)
  • .github/workflows/ci_release.yml
  • releng/com.espressif.idf.update.offline/.gitignore
  • releng/com.espressif.idf.update.offline/.project
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.core.resources.prefs
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.m2e.core.prefs
  • releng/com.espressif.idf.update.offline/category.xml
  • releng/com.espressif.idf.update.offline/pom.xml
  • releng/pom.xml
✅ Files skipped from review due to trivial changes (5)
  • releng/com.espressif.idf.update.offline/.gitignore
  • releng/com.espressif.idf.update.offline/.project
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.core.resources.prefs
  • releng/com.espressif.idf.update.offline/.settings/org.eclipse.m2e.core.prefs
  • releng/com.espressif.idf.update.offline/pom.xml

Comment threadreleng/pom.xml Outdated
@sigmaaasigmaaa self-assigned this Jun 15, 2026
@sigmaaasigmaaa changed the title WIP: feat: reducing the size of update site and adding repository referenceIEP-1786 Reduce the size of update site and add repository referenceJun 15, 2026

@Shen7436Shen7436 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @sigmaaa The documentation part LGTM. I only left some minor comments, plz check.

Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
Comment threaddocs/zh_CN/marketplaceupdate.rst Outdated
启用 Eclipse Platform 更新站点可确保在安装或升级过程中解析所有必要的依赖项。
启用 Eclipse Platform 更新站点可确保从在线更新站点安装或升级时正确解析所有必要的依赖项。

**离线压缩包(``Espressif-IDE-Offline-Update-vX.Y.Z.zip``)**

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
**离线压缩包``Espressif-IDE-Offline-Update-vX.Y.Z.zip``**
**离线压缩包** (``Espressif-IDE-Offline-Update-vX.Y.Z.zip``)

If you encounter the error ``Cannot complete the install because one or more required items could not be found.`` during installation, try the following:

To resolve this issue:
**Online update site URL or online archive (``com.espressif.idf.update-vX.Y.Z.zip``)**

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
**Online update site URL or online archive (``com.espressif.idf.update-vX.Y.Z.zip``)**
**Online update site URL or online archive** (``com.espressif.idf.update-vX.Y.Z.zip``)

Comment threaddocs/en/marketplaceupdate.rst Outdated

@kolipakakondalkolipakakondal left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

sigmaaaand others added 6 commits June 16, 2026 16:56
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>
Co-authored-by: Shen7436 <167753914+Shen7436@users.noreply.github.com>

@AndriiFilippovAndriiFilippov left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sigmaaa hi

Tested under:
OS: Windows 11

I was able to update 3.x to 4.4 in offline mode, but unfortunately I got error updating the same version online.
Have sent you all info in DM.

@sigmaaasigmaaa changed the title IEP-1786 Reduce the size of update site and add repository referenceWIP: Reduce the size of update site and add repository referenceJun 17, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants

@sigmaaa@kolipakakondal@AndriiFilippov@Shen7436