@platformos/codemirror-language-client 0.0.11 → 0.0.15
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 +50 -0
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,55 @@
|
|
|
1
1
|
# @platformos/codemirror-language-client
|
|
2
2
|
|
|
3
|
+
## 0.0.15
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Improved Liquid Linting
|
|
8
|
+
- Better metadata params validation — Reworked detection of undefined variables in page/partial metadata parameters, reducing false positives
|
|
9
|
+
- Improved undefined object detection — More accurate identification of undefined objects in Liquid templates
|
|
10
|
+
- Fixed invalid property detection — The unknown-property check now correctly catches more cases of invalid property access on objects
|
|
11
|
+
|
|
12
|
+
## 0.0.14
|
|
13
|
+
|
|
14
|
+
### Patch Changes
|
|
15
|
+
|
|
16
|
+
- ctrl+click fix
|
|
17
|
+
|
|
18
|
+
## 0.0.13
|
|
19
|
+
|
|
20
|
+
### Patch Changes
|
|
21
|
+
|
|
22
|
+
- better ctrl click, more checks
|
|
23
|
+
|
|
24
|
+
## 0.0.12
|
|
25
|
+
|
|
26
|
+
### Patch Changes
|
|
27
|
+
|
|
28
|
+
- **MissingRenderPartialArguments**: Reports an error when required `@param` arguments declared in a partial's LiquidDoc are not provided at the `{% render %}` call site.
|
|
29
|
+
- **NestedGraphQLQuery**: Detects N+1 query patterns — `{% graphql %}` tags inside `{% for %}`/`{% tablerow %}` loops. Also follows `{% function %}` and `{% render %}` calls transitively to detect indirect GraphQL queries. Skips loops wrapped in `{% cache %}` or `{% background %}`.
|
|
30
|
+
- Added **GraphQLFieldCompletionProvider**: Provides completions for GraphQL field names.
|
|
31
|
+
- Added **GraphQLFieldHoverProvider**: Shows hover documentation for GraphQL fields.
|
|
32
|
+
- Added `theme_render_rc` as a new document type, enabling the `{% theme_render_rc %}` tag to resolve partials through configurable `theme_search_paths` defined in `app/config.yml`.
|
|
33
|
+
- **DocumentsLocator**: New `locateWithSearchPaths()` method resolves partials using prioritized search paths, including dynamic paths with `{{ }}` Liquid expressions that expand by enumerating subdirectories.
|
|
34
|
+
- **loadSearchPaths()**: New utility to read and parse `theme_search_paths` from `app/config.yml`.
|
|
35
|
+
- **TranslationKeyExists**: Refactored to load all defined keys (app-level and module-level) in a single pass. Now suggests nearest matching keys using Levenshtein distance when a translation key is not found.
|
|
36
|
+
- Extracted shared translation utilities into `translation-utils.ts` for module discovery and key loading.
|
|
37
|
+
- Added `levenshtein.ts` utility for fuzzy key matching.
|
|
38
|
+
- Added support for `{% try %}...{% catch error %}` — the error variable in catch branches is now correctly registered as defined, preventing false-positive "undefined object" warnings.
|
|
39
|
+
- `null`/`nil` literals are now treated as compatible with any `@param` type, preventing false type-mismatch errors when passing null values to partials.
|
|
40
|
+
- `recursiveReadDirectory` now gracefully handles `ENOENT` errors instead of crashing when a directory doesn't exist.
|
|
41
|
+
- **MissingPartial** check updated to support `theme_render_rc` tag resolution through search paths.
|
|
42
|
+
- Extracted `tryExtractAssignUrl()` helper to deduplicate assign-to-URL resolution logic shared between `MissingPage` check and `buildVariableMap`.
|
|
43
|
+
- Fixed `buildVariableMap` to correctly recurse into block tags (`{% if %}`, `{% for %}`) whose position spans beyond the cursor offset — previously assigns inside such blocks could be missed.
|
|
44
|
+
- **SearchPathsLoader**: Now caches `theme_search_paths` per root URI to avoid re-reading `app/config.yml` on every request. Invalidated when file watchers detect config changes.
|
|
45
|
+
- Immediate cache invalidation on `app/config.yml` save (via `onDidSaveTextDocument`) so go-to-definition doesn't see stale data.
|
|
46
|
+
- Bulk file-watcher threshold extracted to `BULK_PAGE_CHANGE_THRESHOLD` constant.
|
|
47
|
+
- **RouteTable**: Added `routeCount()` method returning total number of route entries.
|
|
48
|
+
- Route table build errors are now properly handled — a failed build resets the cached promise so subsequent attempts can retry.
|
|
49
|
+
- `MissingPartial` check simplified with a shared `reportIfMissing()` helper, reducing code duplication across `RenderMarkup`, `FunctionMarkup`, and `GraphQLMarkup` visitors.
|
|
50
|
+
- AST traversal helpers (`getTraversableChildren`, `getTraversableMarkup`) extracted in `url-helpers.ts`.
|
|
51
|
+
- `MissingPage` check front-loads route table building in `onCodePathStart` instead of lazy-loading per element visit.
|
|
52
|
+
|
|
3
53
|
## 0.0.11
|
|
4
54
|
|
|
5
55
|
### Patch Changes
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@platformos/codemirror-language-client",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.15",
|
|
4
4
|
"description": "A Language Client for CodeMirror",
|
|
5
5
|
"author": "platformOS",
|
|
6
6
|
"homepage": "https://github.com/Platform-OS/platformos-tools/tree/master/packages/codemirror-language-client#readme",
|
|
@@ -51,9 +51,9 @@
|
|
|
51
51
|
"@codemirror/theme-one-dark": "^6.1.3",
|
|
52
52
|
"@codemirror/view": "^6.39.15",
|
|
53
53
|
"@replit/codemirror-vim": "^6.3.0",
|
|
54
|
-
"@platformos/platformos-check-docs-updater": "0.0.
|
|
55
|
-
"@platformos/platformos-language-server-browser": "0.0.
|
|
56
|
-
"@platformos/lang-jsonc": "^0.0.
|
|
54
|
+
"@platformos/platformos-check-docs-updater": "0.0.16",
|
|
55
|
+
"@platformos/platformos-language-server-browser": "0.0.16",
|
|
56
|
+
"@platformos/lang-jsonc": "^0.0.15",
|
|
57
57
|
"@types/markdown-it": "^14.1.2",
|
|
58
58
|
"codemirror": "^6.0.2",
|
|
59
59
|
"markdown-it": "^14.1.1"
|