Skip to content

refactor: request dependency resolution from language server#96

Merged
9romise merged 3 commits intomainfrom
decorators
Apr 1, 2026
Merged

refactor: request dependency resolution from language server#96
9romise merged 3 commits intomainfrom
decorators

Conversation

@9romise
Copy link
Copy Markdown
Member

@9romise 9romise commented Apr 1, 2026

Remove client-side workspace logic, request dependency resolution from the existing language server.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Apr 1, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 4b94d433-100c-45d1-a7ff-26f7bd04840e

📥 Commits

Reviewing files that changed from the base of the PR and between 86e49b7 and 049ec21.

📒 Files selected for processing (1)
  • extensions/vscode/src/utils/request.ts
🚧 Files skipped from review as they are similar to previous changes (1)
  • extensions/vscode/src/utils/request.ts

📝 Walkthrough

Walkthrough

Refactors the VS Code extension to delegate workspace and dependency-resolution logic to the language server. Removes client-side workspace composables and core workspace adapters, centralises request registration by adding new request modules on both client and server, introduces a typed resolved-dependencies request and package-manager request wiring, updates imports and TypeScript path aliases, and removes two devDependencies from the extension package configuration.

Possibly related PRs

  • PR 88: Moves GET_PACKAGE_MANAGER request registration and related request wiring between the VS Code client and the language server, matching this PR’s extraction of request handlers.
  • PR 87: Adds LSP request handling on the server and related protocol types used for resolving dependencies, aligning server-side request registration introduced here.
  • PR 86: Refactors WorkspaceContext and dependency-resolution implementation, replacing local core/workspace modules—closely related to the deletions of client workspace adapters in this PR.
🚥 Pre-merge checks | ✅ 1
✅ Passed checks (1 passed)
Check name Status Explanation
Description check ✅ Passed The pull request description clearly relates to the changeset, accurately summarizing the refactoring of client-side workspace logic and server-side dependency resolution delegation.

✏️ 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 decorators

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
Contributor

@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: 2

🧹 Nitpick comments (1)
extensions/vscode/src/utils/request.ts (1)

7-15: Consider adding an explicit return type for the exported function.

The return type is correctly inferred, but for exported API functions, an explicit return type improves discoverability and guards against accidental signature changes.

♻️ Suggested improvement
-export async function getResolvedDependencies(client: BaseLanguageClient, uri: Uri) {
+export async function getResolvedDependencies(client: BaseLanguageClient, uri: Uri): Promise<GetResolvedDependenciesRequest.ResponseType> {
   return client.sendRequest(getResolvedDependenciesRequestType, { uri: uri.toString() })
 }

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: fdd025f3-5df4-4f47-97da-3b2933f60260

📥 Commits

Reviewing files that changed from the base of the PR and between 9edd184 and 86e49b7.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (13)
  • extensions/vscode/package.json
  • extensions/vscode/src/client.ts
  • extensions/vscode/src/composables/workspace-context.ts
  • extensions/vscode/src/core/workspace.ts
  • extensions/vscode/src/index.ts
  • extensions/vscode/src/providers/decorators.ts
  • extensions/vscode/src/request.ts
  • extensions/vscode/src/utils/request.ts
  • extensions/vscode/tsconfig.json
  • extensions/vscode/tsdown.config.ts
  • packages/language-server/src/request.ts
  • packages/language-server/src/server.ts
  • packages/shared/src/protocol.ts
💤 Files with no reviewable changes (4)
  • extensions/vscode/tsdown.config.ts
  • extensions/vscode/package.json
  • extensions/vscode/src/composables/workspace-context.ts
  • extensions/vscode/src/core/workspace.ts

@9romise 9romise added this pull request to the merge queue Apr 1, 2026
Merged via the queue into main with commit e19d1c7 Apr 1, 2026
11 checks passed
@9romise 9romise deleted the decorators branch April 1, 2026 03:37
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