Skip to content

ci: rename release-vscode to release-lsp, remove binary workflow#21

Merged
guibeira merged 1 commit intomainfrom
remove-release-lsp-workflow
Apr 9, 2026
Merged

ci: rename release-vscode to release-lsp, remove binary workflow#21
guibeira merged 1 commit intomainfrom
remove-release-lsp-workflow

Conversation

@guibeira
Copy link
Copy Markdown
Collaborator

@guibeira guibeira commented Apr 9, 2026

Summary

  • Remove the release-lsp.yml binary release workflow (was building Rust binaries)
  • Rename release-vscode.ymlrelease-lsp.yml (VSCode extension publish workflow)
  • Update workflow name from "Release VSCode Extension" to "Release LSP"

Test plan

  • Trigger release-lsp workflow with a dry-run tag

Summary by CodeRabbit

  • Chores
    • Consolidated VS Code extension release workflow automation. Streamlined tag handling and publishing process to improve release efficiency.

@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Apr 9, 2026

📝 Walkthrough

Walkthrough

This pull request consolidates two separate GitHub Actions workflows for releasing the iii-lsp-vscode VS Code extension into a single unified workflow. The dedicated release-vscode.yml workflow is removed, and its VSIX packaging and marketplace publishing functionality is merged into release-lsp.yml with updated tag prefixes and removed binary build components.

Changes

Cohort / File(s) Summary
Workflow Consolidation
.github/workflows/release-lsp.yml
Modified to incorporate VS Code extension packaging and publishing logic. Updated tag prefix matching from iii-lsp/ to iii-lsp-vscode/, replaced the GitHub-release creation job with a combined publish job that builds a VSIX and publishes to VS Code Marketplace and OpenVSX. Removed Rust binary build job and GitHub App token generation.
Workflow Removal
.github/workflows/release-vscode.yml
Entirely deleted. Previously contained tag-based and manual triggers, setup logic for version derivation from iii-lsp-vscode/v* tags, and a publish job for marketplace distribution. Functionality migrated to release-lsp.yml.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

Poem

🐰 A workflow once split in two,
Now unified—one task, one view!
The publish hop brings VSIX cheer,
To marketplaces far and near! ✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately describes the main changes: renaming release-vscode workflow to release-lsp and removing the binary workflow that was previously in release-lsp.yml.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

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

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch remove-release-lsp-workflow

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.

Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

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 the current code and only fix it if needed.

Inline comments:
In @.github/workflows/release-lsp.yml:
- Around line 78-82: The "Publish to VS Code Marketplace" step currently runs
npx `@vscode/vsce` publish which repackages source instead of using the pre-built
VSIX; update that step to pass --packagePath (pointing to the VSIX artifact
produced earlier, i.e., the file created in the build step on line 76) to npx
`@vscode/vsce` publish so the Marketplace upload uses the same pre-built VSIX as
OpenVSX and the GitHub Release, and keep the existing VSCE_PAT env usage.
🪄 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: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 00534758-a252-47ff-b91c-6fe138fc08e8

📥 Commits

Reviewing files that changed from the base of the PR and between ec678bf and ebd67d7.

📒 Files selected for processing (2)
  • .github/workflows/release-lsp.yml
  • .github/workflows/release-vscode.yml
💤 Files with no reviewable changes (1)
  • .github/workflows/release-vscode.yml

Comment on lines +78 to +82
- name: Publish to VS Code Marketplace
if: needs.setup.outputs.dry_run != 'true'
env:
VSCE_PAT: ${{ secrets.VSCE_PAT }}
run: npx @vscode/vsce publish --pat "$VSCE_PAT"
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 | 🟡 Minor

🧩 Analysis chain

🌐 Web query:

vsce publish --packagePath option to publish existing vsix

💡 Result:

To publish an already-built .vsix (instead of repackaging from the current folder), use vsce publish --packagePath:

# publish an existing VSIX
vsce publish --packagePath ./myext-1.2.3.vsix -p "$VSCE_PAT"
  • --packagePath (alias -i) tells vsce publish to upload existing .vsix file(s) (you can pass multiple paths). [1]
  • This is commonly used after creating a platform-specific VSIX with vsce package --target ..., then publishing that VSIX via --packagePath. [2]

Notes

  • You still need Marketplace credentials (PAT via -p/VSCE_PAT, or Entra ID if you’re set up for that). [1]

Sources: [1] [2]


Use the pre-built VSIX for VS Code Marketplace publishing.

Line 82 runs vsce publish without --packagePath, causing it to re-package the extension from source instead of using the VSIX built in line 76. This creates an inconsistency where VS Code Marketplace receives a different package than OpenVSX (line 88) and the GitHub Release.

🔧 Proposed fix to use the pre-built VSIX
       - name: Publish to VS Code Marketplace
         if: needs.setup.outputs.dry_run != 'true'
         env:
           VSCE_PAT: ${{ secrets.VSCE_PAT }}
-        run: npx `@vscode/vsce` publish --pat "$VSCE_PAT"
+        run: npx `@vscode/vsce` publish --packagePath iii-lsp-${{ needs.setup.outputs.version }}.vsix --pat "$VSCE_PAT"
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.github/workflows/release-lsp.yml around lines 78 - 82, The "Publish to VS
Code Marketplace" step currently runs npx `@vscode/vsce` publish which repackages
source instead of using the pre-built VSIX; update that step to pass
--packagePath (pointing to the VSIX artifact produced earlier, i.e., the file
created in the build step on line 76) to npx `@vscode/vsce` publish so the
Marketplace upload uses the same pre-built VSIX as OpenVSX and the GitHub
Release, and keep the existing VSCE_PAT env usage.

@guibeira guibeira merged commit c2fbb17 into main Apr 9, 2026
5 checks passed
Sign up for free to 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.

1 participant