Conversation
- Updated ConfigurableLayouter to accept a Graphviz instance from services. - Introduced WithWasmGraphviz and WithGraphviz for flexible Graphviz configuration. - Refactored ProjectsManager to improve project handling and logging. - Added support for custom logger configuration in InitOptions. - Improved error handling and logging in Graphviz adapters. - Enhanced QueueGraphvizLayoter with better task management and logging. - Updated GraphvizWasmAdapter and GraphvizBinaryAdapter for improved performance and error reporting. - Cleaned up unused code and improved overall code structure.
… clarity and maintainability
… for icons and log
🦋 Changeset detectedLatest commit: afb8f80 The changes in this PR will be included in the next version bump. This PR includes changesets to release 19 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
Caution Review failedPull request was closed or merged during review 📝 WalkthroughWalkthroughThis PR refactors the language server as a CLI-based command, deprecates the standalone Changes
Sequence DiagramsequenceDiagram
actor User
participant CLI as CLI (likec4 lsp)
participant LSP as LSP Server
participant Services as Language Services
participant GraphViz as GraphViz (wasm/binary)
participant Logger as Logger
User->>CLI: Run likec4 lsp --transport stdio
CLI->>Logger: configureLanguageServerLogger(options)
Logger->>Logger: Setup sinks (stderr/console/telemetry)
CLI->>Services: createLanguageServices(options)
Services->>Services: Include WithGraphviz(adapter)
Services->>GraphViz: Initialize (GraphvizWasmAdapter or GraphvizBinaryAdapter)
CLI->>LSP: startLanguageServer(connection, options)
LSP->>Services: Use initialized services with pluggable GraphViz
LSP->>Logger: Emit trace logs for port name and lifecycle
User->>LSP: Send LSP requests (didOpen, hover, etc.)
LSP->>Services: Delegate to language services
Services->>GraphViz: Layout views with selected adapter
GraphViz->>GraphViz: Perform layout (dot to JSON)
Services->>LSP: Return results
LSP->>User: Send LSP responses
Estimated code review effort🎯 4 (Complex) | ⏱️ ~60 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 1 | ❌ 2❌ Failed checks (1 warning, 1 inconclusive)
✅ Passed checks (1 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches
🧪 Generate unit tests (beta)
Tip Try Coding Plans. Let us write the prompt for your AI agent so you can ship faster (with fewer bugs). 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. Comment |
Language Server & CLI Workflow:
likec4 lspCLI command to start the LikeC4 language server, promoting a unified entry point for LSP usage. (.changeset/add-cli-lsp-command.md)likec4-language-serverbinary from the@likec4/language-serverpackage; users should now use thelikec4 lspcommand. The README was updated to clarify that@likec4/language-serveris for internal use, and the direct entry point (bundled.ts) was removed from both the build and exports. (.changeset/deprecate-likec4-language-server.md,README.md,build.config.ts,package.json,bundled.ts) [1] [2] [3] [4] [5]Dependency and Tooling Updates:
dprintand its plugins to newer versions, and updated the ignore list to includepnpm-workspace.yaml. (.tool-versions,dprint.json,package.json) [1] [2] [3] [4]@likec4/language-server, removing unused or duplicate dev dependencies and ensuring all runtime dependencies are properly declared. (package.json) [1] [2]UI/UX and Bug Fixes in Diagram Package:
.changeset/fix-likec4tag-text-bg.md)DriftsSummarycomponent to avoid React key collisions and unnecessary animation props. (DriftsSummary.tsx) [1] [2] [3] [4] [5] [6]DynamicViewControls.tsx) [1] [2]Miscellaneous Improvements:
Rpc.ts)common-exports.ts)diagram/package.json)Rpc.ts)Summary by CodeRabbit
Release Notes
New Features
likec4 lspto start the LikeC4 language server directly from the CLI.--log-leveland--verboseoptions.Bug Fixes
Deprecations
likec4-language-serverpackage deprecated; uselikec4 lspcommand instead.