sysml-v2-lsp 0.20.0 → 0.22.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +15 -0
- package/dist/server/browserServerMain.js +28717 -0
- package/dist/server/server.js +49 -49
- package/index.cjs +8 -1
- package/package.json +5 -4
package/CHANGELOG.md
CHANGED
|
@@ -2,15 +2,30 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## [0.22.0]
|
|
6
|
+
|
|
7
|
+
### Fixed
|
|
8
|
+
|
|
9
|
+
- Browser build no longer attempts to spawn a `worker_threads` parse worker (unavailable in the Web Worker runtime); parsing now runs inline, guarded by a new `__SYSML_BROWSER_SERVER__` compile-time flag injected via esbuild's `define`, avoiding a misleading worker-failure log
|
|
10
|
+
- Go-to-Definition into bundled `sysml-stdlib:` documents now resolves regardless of URI spelling: library content is additionally keyed by a canonical form so triple-slash/single-slash authority variants and differing percent-encoding (`vscode.Uri` vs `encodeURIComponent`) all map to the same file
|
|
11
|
+
|
|
12
|
+
## [0.21.0]
|
|
13
|
+
|
|
5
14
|
## [0.20.0]
|
|
6
15
|
|
|
7
16
|
### Added
|
|
8
17
|
|
|
18
|
+
- **Web extension support**: the language server now runs inside a browser Web Worker on vscode.dev / github.dev, where there is no Node.js runtime or filesystem. A dedicated `dist/server/browserServerMain.js` bundle is produced by esbuild (IIFE, `browser` platform) alongside the existing Node build, and exposed as `browserServerPath` from `index.cjs`
|
|
19
|
+
- Platform abstraction layer (`server/src/platform/`) selecting the LSP transport and standard-library loader per runtime: Node variants use IPC/stdio and the filesystem, while `.browser.ts` variants use the Web Worker `postMessage` channel and an in-memory bundled library. esbuild swaps the modules via a resolver plugin and Node built-in shims (`fs`, `path`, `url`, `worker_threads`)
|
|
20
|
+
- Standard library bundling: `scripts/bundle-library.mjs` embeds every `.sysml` / `.kerml` file into a generated `bundledLibrary.generated.ts` so the library is available in the browser build (run automatically during `build` / `build:production`; the generated file is git-ignored)
|
|
21
|
+
- `sysml/libraryContent` LSP request returns the raw text of a bundled standard-library file by URI, enabling Go-to-Definition into `sysml-stdlib:` documents in the browser build where the library lives only in memory
|
|
9
22
|
- Sequence diagram extraction now parses `flow` and `message` statements inside part/item/interface containers, synthesising lifelines from the container's parts/items and arrows from the statement endpoints ([#44](https://github.com/daltskin/sysml-v2-lsp/issues/44))
|
|
10
23
|
- Dotted message endpoints (e.g. `producer.publish_source_event`) are reduced to their root participant name so arrows render correctly between lifelines
|
|
11
24
|
|
|
12
25
|
### Changed
|
|
13
26
|
|
|
27
|
+
- Library indexing refactored to be platform-agnostic: file scanning is split from indexing so the index is built from in-memory `{ uri, content }` files, with raw library content cached for hover and Go-to-Definition instead of re-reading from disk
|
|
28
|
+
- `sysml/serverStats` guards `process.memoryUsage()` so it degrades gracefully in the browser worker where `process` is unavailable
|
|
14
29
|
- Bumped `qs` from 6.15.1 to 6.15.2 ([#45](https://github.com/daltskin/sysml-v2-lsp/pull/45))
|
|
15
30
|
|
|
16
31
|
## [0.19.0]
|