@velarscript/cli 0.23.4 → 0.25.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/dist/cli.js +20 -3
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +71 -1
- package/dist/config.js.map +1 -1
- package/dist/dev-server.d.ts.map +1 -1
- package/dist/dev-server.js +8 -2
- package/dist/dev-server.js.map +1 -1
- package/dist/extension-metadata.d.ts +12 -0
- package/dist/extension-metadata.d.ts.map +1 -1
- package/dist/extension-metadata.js +38 -2
- package/dist/extension-metadata.js.map +1 -1
- package/dist/host-error.d.ts +7 -0
- package/dist/host-error.d.ts.map +1 -1
- package/dist/host-error.js +9 -0
- package/dist/host-error.js.map +1 -1
- package/dist/language-server-bundle-entry.js +1 -1
- package/dist/language-server-bundle-entry.js.map +1 -1
- package/dist/language-server-tool.d.ts.map +1 -1
- package/dist/language-server-tool.js +34 -0
- package/dist/language-server-tool.js.map +1 -1
- package/dist/npm.d.ts.map +1 -1
- package/dist/npm.js +147 -16
- package/dist/npm.js.map +1 -1
- package/dist/official-language-server-extensions.d.ts +12 -1
- package/dist/official-language-server-extensions.d.ts.map +1 -1
- package/dist/official-language-server-extensions.js +78 -46
- package/dist/official-language-server-extensions.js.map +1 -1
- package/dist/project-format.d.ts +1 -1
- package/dist/project-format.d.ts.map +1 -1
- package/dist/project-format.js +6 -0
- package/dist/project-format.js.map +1 -1
- package/dist/surface-versions.d.ts +42 -0
- package/dist/surface-versions.d.ts.map +1 -0
- package/dist/surface-versions.js +72 -0
- package/dist/surface-versions.js.map +1 -0
- package/dist/test-output.d.ts.map +1 -1
- package/dist/test-output.js +69 -1
- package/dist/test-output.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +25 -9
- package/skill/ai-skill-server.md +1 -1
- package/skill/ai-skill-web.md +24 -4
- package/skill/ai-skill.md +10 -0
package/dist/npm.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { mkdir, realpath, rm, stat, writeFile } from "node:fs/promises";
|
|
2
2
|
import { createRequire } from "node:module";
|
|
3
|
-
import { dirname, isAbsolute, join, relative, resolve, sep } from "node:path";
|
|
3
|
+
import { basename, dirname, isAbsolute, join, relative, resolve, sep } from "node:path";
|
|
4
4
|
import { pathToFileURL } from "node:url";
|
|
5
5
|
import { build } from "esbuild";
|
|
6
6
|
import { readBoundedText } from "./bounded-text.js";
|
|
@@ -24,8 +24,7 @@ const BROWSER_IMPORT_CONDITIONS = new Set(["browser", "import", "module", "defau
|
|
|
24
24
|
const NODE_REQUIRE_CONDITIONS = new Set(["require", "node", "default"]);
|
|
25
25
|
/** Resolve one bare package import exactly as a browser ESM import. */
|
|
26
26
|
export async function resolveBrowserNpmEntry(specifier, baseDirectory) {
|
|
27
|
-
|
|
28
|
-
return (await resolveInstalledBrowserImport(specifier, require)).entry;
|
|
27
|
+
return (await resolveInstalledBrowserImport(specifier, requireAt(baseDirectory), baseDirectory)).entry;
|
|
29
28
|
}
|
|
30
29
|
// Native browser ESM cannot load CommonJS, and many npm packages either
|
|
31
30
|
// publish only CommonJS internals behind a thin ESM wrapper (the dual-package
|
|
@@ -37,24 +36,46 @@ export async function resolveBrowserNpmEntry(specifier, baseDirectory) {
|
|
|
37
36
|
// version so an unchanged dependency bundles once per install.
|
|
38
37
|
export async function resolveBrowserNpm(project, invalidateRoots = new Set()) {
|
|
39
38
|
const base = frameworkBase(project.framework);
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
39
|
+
// Every specifier carries the directories it may be resolved from, in the
|
|
40
|
+
// order they were learned. `velar build` resolves each import from its own
|
|
41
|
+
// importer (production-build.ts passes `dirname(sourceModule.inputPath)`) and
|
|
42
|
+
// `velar test` hands the whole question to Node, so both find a linked
|
|
43
|
+
// package's dependency where that dependency actually lives. This server used
|
|
44
|
+
// to resolve everything from one require anchored at the consumer's source
|
|
45
|
+
// root, so a `file:`-linked package's own dependency -- and then its whole
|
|
46
|
+
// transitive closure -- had to be flattened onto the consumer's node_modules
|
|
47
|
+
// chain before the page would load. A browser has one import map and
|
|
48
|
+
// therefore one URL per specifier, so the resolution is still one per
|
|
49
|
+
// specifier; what changed is that the anchors that can answer it are tried.
|
|
50
|
+
const anchors = new Map();
|
|
51
|
+
const anchor = (specifier, directory) => {
|
|
52
|
+
const known = anchors.get(specifier);
|
|
53
|
+
if (!known)
|
|
54
|
+
anchors.set(specifier, [directory]);
|
|
55
|
+
else if (!known.includes(directory))
|
|
56
|
+
known.push(directory);
|
|
57
|
+
};
|
|
58
|
+
for (const module of project.modules) {
|
|
59
|
+
for (const dependency of module.result.dependencies) {
|
|
60
|
+
if (!dependency.javascript || dependency.source.startsWith(".") || dependency.source.startsWith("/"))
|
|
61
|
+
continue;
|
|
62
|
+
anchor(dependency.source, dirname(module.inputPath));
|
|
63
|
+
}
|
|
64
|
+
}
|
|
43
65
|
for (const package_ of project.velarPackages) {
|
|
44
66
|
if (package_.artifact !== null)
|
|
45
|
-
|
|
67
|
+
anchor(package_.name, project.sourceRoot);
|
|
46
68
|
}
|
|
47
|
-
const require = createRequire(pathToFileURL(join(project.sourceRoot, "package.json")));
|
|
48
69
|
const cacheRoot = resolve(project.projectRoot, ".velar", "dev-deps");
|
|
49
70
|
const states = new Map();
|
|
50
71
|
const targets = new Map();
|
|
51
72
|
const imports = {};
|
|
52
73
|
const failures = [];
|
|
53
|
-
if (
|
|
74
|
+
if (anchors.size > MAX_BROWSER_NPM_PACKAGES) {
|
|
54
75
|
throw new RangeError(`A browser project cannot import more than ${MAX_BROWSER_NPM_PACKAGES} JavaScript packages`);
|
|
55
76
|
}
|
|
56
77
|
const processed = new Set();
|
|
57
|
-
let queue = [...
|
|
78
|
+
let queue = [...anchors.keys()];
|
|
58
79
|
while (queue.length > 0) {
|
|
59
80
|
const wave = queue;
|
|
60
81
|
queue = [];
|
|
@@ -70,7 +91,7 @@ export async function resolveBrowserNpm(project, invalidateRoots = new Set()) {
|
|
|
70
91
|
continue;
|
|
71
92
|
}
|
|
72
93
|
try {
|
|
73
|
-
const resolvedImport = await
|
|
94
|
+
const resolvedImport = await resolveFromAnchors(specifier, anchors.get(specifier) ?? [project.sourceRoot]);
|
|
74
95
|
const { requestedName, subpath, root, manifest, entry } = resolvedImport;
|
|
75
96
|
const name = browserPackageIdentity(manifest, requestedName);
|
|
76
97
|
let state = states.get(name);
|
|
@@ -91,15 +112,23 @@ export async function resolveBrowserNpm(project, invalidateRoots = new Set()) {
|
|
|
91
112
|
};
|
|
92
113
|
states.set(name, state);
|
|
93
114
|
}
|
|
94
|
-
|
|
115
|
+
// Two specifiers can name one file — a `#` alias whose target is a
|
|
116
|
+
// package's own entry, `.` and `./index` in one exports map — and the
|
|
117
|
+
// prebundle reports an output per entry *file*, so registering the file
|
|
118
|
+
// twice loses one of them. The second specifier takes the subpath the
|
|
119
|
+
// first was given instead, and both import-map keys land on that one
|
|
120
|
+
// output.
|
|
121
|
+
const shared = [...state.entries].find(([, existing]) => existing === entry)?.[0];
|
|
122
|
+
const routedSubpath = shared ?? subpath;
|
|
123
|
+
if (!state.entries.has(routedSubpath)) {
|
|
95
124
|
const entryFromRoot = relative(state.root, entry);
|
|
96
125
|
if (!entryFromRoot || entryFromRoot.startsWith("..") || isAbsolute(entryFromRoot)) {
|
|
97
126
|
throw new Error(`the resolved entry '${entryFromRoot}' escapes the package directory`);
|
|
98
127
|
}
|
|
99
|
-
state.entries.set(
|
|
128
|
+
state.entries.set(routedSubpath, entry);
|
|
100
129
|
state.bundled = false;
|
|
101
130
|
}
|
|
102
|
-
targets.set(specifier, { state, subpath });
|
|
131
|
+
targets.set(specifier, { state, subpath: routedSubpath });
|
|
103
132
|
}
|
|
104
133
|
catch (error) {
|
|
105
134
|
failures.push(`Cannot resolve browser npm import '${specifier}': ${hostErrorMessage(error)}`);
|
|
@@ -112,6 +141,10 @@ export async function resolveBrowserNpm(project, invalidateRoots = new Set()) {
|
|
|
112
141
|
state.meta = await ensurePackageBundle(state, invalidateRoots.has(state.root));
|
|
113
142
|
state.bundled = true;
|
|
114
143
|
for (const external of state.meta.externals) {
|
|
144
|
+
// A dependency left external by this package's prebundle is resolved
|
|
145
|
+
// from *this* package, which is where it is installed when the
|
|
146
|
+
// package is linked from outside the consumer's tree.
|
|
147
|
+
anchor(external, state.root);
|
|
115
148
|
if (!processed.has(external))
|
|
116
149
|
queue.push(external);
|
|
117
150
|
}
|
|
@@ -210,7 +243,30 @@ export function prebundleCacheDirectory(cacheRoot, name, version) {
|
|
|
210
243
|
}
|
|
211
244
|
return cacheDir;
|
|
212
245
|
}
|
|
213
|
-
|
|
246
|
+
/**
|
|
247
|
+
* One specifier, resolved from the first directory that can answer it. The
|
|
248
|
+
* anchors are the importers that named it; the error reported when none can is
|
|
249
|
+
* the first one's, because that is the importer the author is most likely
|
|
250
|
+
* looking at.
|
|
251
|
+
*/
|
|
252
|
+
async function resolveFromAnchors(specifier, directories) {
|
|
253
|
+
let first = null;
|
|
254
|
+
for (const directory of directories) {
|
|
255
|
+
try {
|
|
256
|
+
return await resolveInstalledBrowserImport(specifier, requireAt(directory), directory);
|
|
257
|
+
}
|
|
258
|
+
catch (error) {
|
|
259
|
+
first ??= error;
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
throw first ?? new Error("no importer to resolve it from");
|
|
263
|
+
}
|
|
264
|
+
function requireAt(directory) {
|
|
265
|
+
return createRequire(pathToFileURL(join(directory, "__velar_browser_import__.js")));
|
|
266
|
+
}
|
|
267
|
+
async function resolveInstalledBrowserImport(specifier, require, baseDirectory) {
|
|
268
|
+
if (specifier.startsWith("#"))
|
|
269
|
+
return await resolvePackageImportsAlias(specifier, require, baseDirectory);
|
|
214
270
|
const requestedName = packageNameOf(specifier);
|
|
215
271
|
const subpath = specifier === requestedName ? "." : `.${specifier.slice(requestedName.length)}`;
|
|
216
272
|
if (subpath.split("/").includes(".."))
|
|
@@ -220,6 +276,74 @@ async function resolveInstalledBrowserImport(specifier, require) {
|
|
|
220
276
|
const entry = await selectBrowserEntry(specifier, root, manifest, subpath);
|
|
221
277
|
return { requestedName, subpath, root, manifest, entry };
|
|
222
278
|
}
|
|
279
|
+
/**
|
|
280
|
+
* A `#` specifier is not a package. `docs/javascript-bridge.md` lists it as the
|
|
281
|
+
* fourth legal `import js` shape -- "a `#`-mapped import from the importing
|
|
282
|
+
* package's own `imports` map resolves too" -- and says the host owns resolving
|
|
283
|
+
* it. `velar check` resolves it with the importer's own require
|
|
284
|
+
* (project.ts, `judgeJavaScriptSpecifier`) and `velar build` hands it back to
|
|
285
|
+
* esbuild for the same reason (production-build.ts). This server did neither:
|
|
286
|
+
* it sent the specifier down the node_modules walk, which cannot find `#x`
|
|
287
|
+
* under any shape of node_modules, and the failure was unworkaroundable
|
|
288
|
+
* because even a forced resolution wrote the literal `#` into an import-map
|
|
289
|
+
* URL, where a browser reads everything after it as a fragment.
|
|
290
|
+
*
|
|
291
|
+
* So it resolves the way check does, and is then routed as a subpath of the
|
|
292
|
+
* package whose manifest declares it -- which is where it belongs, shares that
|
|
293
|
+
* package's prebundle, and carries no `#` in its URL. The import-map *key*
|
|
294
|
+
* stays `#x`, because that is the specifier the emitted module asks for.
|
|
295
|
+
*/
|
|
296
|
+
async function resolvePackageImportsAlias(specifier, require, baseDirectory) {
|
|
297
|
+
// The alias becomes a prebundle entry name, so it is held to the containment
|
|
298
|
+
// an exports subpath is held to two functions above: a manifest is untrusted
|
|
299
|
+
// input, and `imports` keys are as free-form as `exports` keys.
|
|
300
|
+
if (specifier.split("/").includes(".."))
|
|
301
|
+
throw new Error(`the imports alias '${specifier}' escapes the package directory`);
|
|
302
|
+
const resolved = require.resolve(specifier);
|
|
303
|
+
if (!isAbsolute(resolved)) {
|
|
304
|
+
throw new Error(`the package imports map resolves it to '${resolved}', which is not a file this server can serve`);
|
|
305
|
+
}
|
|
306
|
+
const entry = await realpath(resolved);
|
|
307
|
+
// The declaring package is the one above the *importer*: an `imports` map is
|
|
308
|
+
// read from the package that owns the importing file, never from the target.
|
|
309
|
+
const manifestPath = await nearestPackageManifest(baseDirectory);
|
|
310
|
+
if (manifestPath === null) {
|
|
311
|
+
throw new Error("no package.json above the importing module declares an 'imports' map");
|
|
312
|
+
}
|
|
313
|
+
const root = await realpath(dirname(manifestPath));
|
|
314
|
+
const manifest = JSON.parse(await readBoundedText(manifestPath, MAX_PACKAGE_MANIFEST_BYTES, `Package manifest for '${specifier}'`));
|
|
315
|
+
return { requestedName: importsOwnerIdentity(manifest, root), subpath: specifier, root, manifest, entry };
|
|
316
|
+
}
|
|
317
|
+
/** The manifest Node reads an `imports` map from: the nearest one above the importer. */
|
|
318
|
+
async function nearestPackageManifest(directory) {
|
|
319
|
+
let current = resolve(directory);
|
|
320
|
+
for (let parent = dirname(current);; parent = dirname(current)) {
|
|
321
|
+
const candidate = join(current, "package.json");
|
|
322
|
+
try {
|
|
323
|
+
if ((await stat(candidate)).isFile())
|
|
324
|
+
return candidate;
|
|
325
|
+
}
|
|
326
|
+
catch {
|
|
327
|
+
// Keep walking towards the filesystem root.
|
|
328
|
+
}
|
|
329
|
+
if (parent === current)
|
|
330
|
+
return null;
|
|
331
|
+
current = parent;
|
|
332
|
+
}
|
|
333
|
+
}
|
|
334
|
+
/**
|
|
335
|
+
* The route and cache name for a package that declares an `imports` map. A
|
|
336
|
+
* project's own manifest is not an installed dependency and may carry no name
|
|
337
|
+
* at all, so the directory name stands in, and anything that is not an npm
|
|
338
|
+
* package name is replaced rather than reaching a path.
|
|
339
|
+
*/
|
|
340
|
+
function importsOwnerIdentity(manifest, root) {
|
|
341
|
+
const declared = manifest.name;
|
|
342
|
+
if (typeof declared === "string" && PACKAGE_NAME.test(declared))
|
|
343
|
+
return declared;
|
|
344
|
+
const fromDirectory = basename(root).toLowerCase().replace(/[^a-z0-9._-]+/gu, "-").replace(/^[^a-z0-9]+/u, "");
|
|
345
|
+
return PACKAGE_NAME.test(fromDirectory) ? fromDirectory : "velar-package-imports";
|
|
346
|
+
}
|
|
223
347
|
async function selectBrowserEntry(specifier, root, manifest, subpath) {
|
|
224
348
|
if (manifest.exports !== undefined && manifest.exports !== null) {
|
|
225
349
|
const target = resolveExportsTarget(manifest.exports, subpath, BROWSER_IMPORT_CONDITIONS);
|
|
@@ -380,9 +504,16 @@ function assignEntryOutputNames(subpaths) {
|
|
|
380
504
|
const names = new Map();
|
|
381
505
|
const used = new Set();
|
|
382
506
|
for (const subpath of [...subpaths].sort()) {
|
|
507
|
+
// `.`, an exports subpath `./a/b`, or a package `imports` alias `#a`. The
|
|
508
|
+
// resolvers refuse a `..` segment before a subpath reaches here; the sink
|
|
509
|
+
// is closed a second time because this name is joined onto a cache
|
|
510
|
+
// directory the next build removes recursively.
|
|
383
511
|
const preferred = subpath === "."
|
|
384
512
|
? "index"
|
|
385
|
-
: subpath.
|
|
513
|
+
: (subpath.startsWith("#") ? subpath.slice(1) : subpath.slice(2))
|
|
514
|
+
.split("/")
|
|
515
|
+
.map((segment) => (segment === ".." ? "-" : segment).replace(/[^A-Za-z0-9_.-]+/gu, "-"))
|
|
516
|
+
.join("/") || "index";
|
|
386
517
|
let name = preferred;
|
|
387
518
|
for (let counter = 2; used.has(name); counter += 1)
|
|
388
519
|
name = `${preferred}-${counter}`;
|
package/dist/npm.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"npm.js","sourceRoot":"","sources":["../src/npm.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"npm.js","sourceRoot":"","sources":["../src/npm.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,13 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* D111 rule 3: the language server registers the official targets it can
|
|
3
|
+
* resolve, and skips the ones this project never installed.
|
|
4
|
+
*
|
|
5
|
+
* `@velarscript/node` is a CLI dependency, so it is always present and is
|
|
6
|
+
* imported statically. Web, Server and Desktop are optional peers, so each is
|
|
7
|
+
* loaded on its own: the bundler inlines the ones it resolves and leaves the
|
|
8
|
+
* rest as a runtime import that fails here. An absent target is not an error
|
|
9
|
+
* and produces no warning — a project that never declared Desktop should not be
|
|
10
|
+
* offered Desktop completions, so there is nothing to report.
|
|
11
|
+
*/
|
|
12
|
+
export declare function installOfficialLanguageServerExtensions(): Promise<void>;
|
|
2
13
|
//# sourceMappingURL=official-language-server-extensions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"official-language-server-extensions.d.ts","sourceRoot":"","sources":["../src/official-language-server-extensions.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"official-language-server-extensions.d.ts","sourceRoot":"","sources":["../src/official-language-server-extensions.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;GAUG;AACH,wBAAsB,uCAAuC,IAAI,OAAO,CAAC,IAAI,CAAC,CAyE7E"}
|
|
@@ -1,13 +1,18 @@
|
|
|
1
|
-
import { velarCompilerExtension as webCompiler, velarProjectExtension as webProject, VELAR_WEB_API_VERSION } from "@velarscript/web/compiler";
|
|
2
|
-
import { velarFrameworkHost as webHost } from "@velarscript/web/host";
|
|
3
|
-
import { velarCompilerExtension as desktopCompiler, velarProjectExtension as desktopProject } from "@velarscript/desktop/compiler";
|
|
4
|
-
import { velarFrameworkHost as desktopHost } from "@velarscript/desktop/host";
|
|
5
|
-
import { VELAR_DESKTOP_API_VERSION } from "@velarscript/desktop";
|
|
6
1
|
import { VELAR_NODE_API_VERSION, velarCompilerExtension as nodeCompiler, velarProjectExtension as nodeProject, } from "@velarscript/node/compiler";
|
|
7
|
-
import { VELAR_SERVER_API_VERSION, velarCompilerExtension as serverCompiler, velarProjectExtension as serverProject, } from "@velarscript/server/compiler";
|
|
8
2
|
import { registerBundledExtension } from "./bundled-extension-registry.js";
|
|
9
3
|
import { VELAR_VERSION } from "./version.js";
|
|
10
|
-
|
|
4
|
+
/**
|
|
5
|
+
* D111 rule 3: the language server registers the official targets it can
|
|
6
|
+
* resolve, and skips the ones this project never installed.
|
|
7
|
+
*
|
|
8
|
+
* `@velarscript/node` is a CLI dependency, so it is always present and is
|
|
9
|
+
* imported statically. Web, Server and Desktop are optional peers, so each is
|
|
10
|
+
* loaded on its own: the bundler inlines the ones it resolves and leaves the
|
|
11
|
+
* rest as a runtime import that fails here. An absent target is not an error
|
|
12
|
+
* and produces no warning — a project that never declared Desktop should not be
|
|
13
|
+
* offered Desktop completions, so there is nothing to report.
|
|
14
|
+
*/
|
|
15
|
+
export async function installOfficialLanguageServerExtensions() {
|
|
11
16
|
registerBundledExtension({
|
|
12
17
|
name: "@velarscript/node",
|
|
13
18
|
version: VELAR_VERSION,
|
|
@@ -20,44 +25,71 @@ export function installOfficialLanguageServerExtensions() {
|
|
|
20
25
|
project: nodeProject,
|
|
21
26
|
host: null,
|
|
22
27
|
});
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
28
|
+
const server = await resolvedTarget(() => import("@velarscript/server/compiler"));
|
|
29
|
+
if (server) {
|
|
30
|
+
registerBundledExtension({
|
|
31
|
+
name: "@velarscript/server",
|
|
32
|
+
version: VELAR_VERSION,
|
|
33
|
+
kind: "application",
|
|
34
|
+
apiVersion: server.VELAR_SERVER_API_VERSION,
|
|
35
|
+
manifestKey: "server",
|
|
36
|
+
extends: Object.freeze({}),
|
|
37
|
+
composes: Object.freeze({ "@velarscript/node": VELAR_NODE_API_VERSION }),
|
|
38
|
+
compiler: server.velarCompilerExtension,
|
|
39
|
+
project: server.velarProjectExtension,
|
|
40
|
+
host: null,
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
// A target is registered from its own resolved modules or not at all: half a
|
|
44
|
+
// target — a compiler extension with no framework host — is not something the
|
|
45
|
+
// language server can answer with.
|
|
46
|
+
const web = await resolvedTarget(() => import("@velarscript/web/compiler"));
|
|
47
|
+
const webHost = web === null ? null : await resolvedTarget(() => import("@velarscript/web/host"));
|
|
48
|
+
if (web && webHost) {
|
|
49
|
+
registerBundledExtension({
|
|
50
|
+
name: "@velarscript/web",
|
|
51
|
+
version: VELAR_VERSION,
|
|
52
|
+
kind: "application",
|
|
53
|
+
apiVersion: web.VELAR_WEB_API_VERSION,
|
|
54
|
+
manifestKey: "web",
|
|
55
|
+
extends: Object.freeze({}),
|
|
56
|
+
composes: Object.freeze({}),
|
|
57
|
+
compiler: web.velarCompilerExtension,
|
|
58
|
+
project: web.velarProjectExtension,
|
|
59
|
+
host: webHost.velarFrameworkHost,
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
// Desktop composes Web, and the API version it composes is the installed Web
|
|
63
|
+
// package's own. A Desktop without a resolvable Web therefore has nothing
|
|
64
|
+
// truthful to declare, so it is skipped with it.
|
|
65
|
+
const desktop = web === null ? null : await resolvedTarget(() => import("@velarscript/desktop/compiler"));
|
|
66
|
+
const desktopApi = desktop === null ? null : await resolvedTarget(() => import("@velarscript/desktop"));
|
|
67
|
+
const desktopHost = desktop === null ? null : await resolvedTarget(() => import("@velarscript/desktop/host"));
|
|
68
|
+
if (web && desktop && desktopApi && desktopHost) {
|
|
69
|
+
registerBundledExtension({
|
|
70
|
+
name: "@velarscript/desktop",
|
|
71
|
+
version: VELAR_VERSION,
|
|
72
|
+
kind: "application",
|
|
73
|
+
apiVersion: desktopApi.VELAR_DESKTOP_API_VERSION,
|
|
74
|
+
manifestKey: "desktop",
|
|
75
|
+
extends: Object.freeze({}),
|
|
76
|
+
composes: Object.freeze({
|
|
77
|
+
"@velarscript/web": web.VELAR_WEB_API_VERSION,
|
|
78
|
+
"@velarscript/node": VELAR_NODE_API_VERSION,
|
|
79
|
+
}),
|
|
80
|
+
compiler: desktop.velarCompilerExtension,
|
|
81
|
+
project: desktop.velarProjectExtension,
|
|
82
|
+
host: desktopHost.velarFrameworkHost,
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
/** One optional target module, or null when this project did not install it. */
|
|
87
|
+
async function resolvedTarget(load) {
|
|
88
|
+
try {
|
|
89
|
+
return await load();
|
|
90
|
+
}
|
|
91
|
+
catch {
|
|
92
|
+
return null;
|
|
93
|
+
}
|
|
62
94
|
}
|
|
63
95
|
//# sourceMappingURL=official-language-server-extensions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"official-language-server-extensions.js","sourceRoot":"","sources":["../src/official-language-server-extensions.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"official-language-server-extensions.js","sourceRoot":"","sources":["../src/official-language-server-extensions.ts"],"names":[],"mappings":"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"}
|
package/dist/project-format.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export declare const CURRENT_PROJECT_FORMAT_VERSION = 2;
|
|
2
|
-
export declare const CORE_PROJECT_MANIFEST_FIELDS: readonly ["formatVersion", "kind", "entry", "outDir", "publicDir", "build", "extensions", "workers"];
|
|
2
|
+
export declare const CORE_PROJECT_MANIFEST_FIELDS: readonly ["formatVersion", "kind", "entry", "outDir", "publicDir", "build", "extensions", "workers", "surfaces"];
|
|
3
3
|
/** Internal standard-module config carrying logical worker names to output paths. */
|
|
4
4
|
export { CORE_WORKER_CONFIG_KEY } from "@velarscript/core";
|
|
5
5
|
export declare function isReservedExtensionManifestKey(value: string): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-format.d.ts","sourceRoot":"","sources":["../src/project-format.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAEhD,eAAO,MAAM,4BAA4B,
|
|
1
|
+
{"version":3,"file":"project-format.d.ts","sourceRoot":"","sources":["../src/project-format.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,8BAA8B,IAAI,CAAC;AAEhD,eAAO,MAAM,4BAA4B,kHAe9B,CAAC;AAEZ,qFAAqF;AACrF,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAS3D,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAErE;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAItE"}
|
package/dist/project-format.js
CHANGED
|
@@ -8,6 +8,12 @@ export const CORE_PROJECT_MANIFEST_FIELDS = Object.freeze([
|
|
|
8
8
|
"build",
|
|
9
9
|
"extensions",
|
|
10
10
|
"workers",
|
|
11
|
+
// D110 rule 5. Optional, and deliberately not a `formatVersion` bump: the key
|
|
12
|
+
// is additive, so every manifest written before it keeps loading. Making it
|
|
13
|
+
// mandatory would be formatVersion 2 → 3, and that is a separate ruling the
|
|
14
|
+
// decision explicitly declines to make — in practice every manifest in this
|
|
15
|
+
// repository carries it, and a format break buys nothing on top of that.
|
|
16
|
+
"surfaces",
|
|
11
17
|
]);
|
|
12
18
|
/** Internal standard-module config carrying logical worker names to output paths. */
|
|
13
19
|
export { CORE_WORKER_CONFIG_KEY } from "@velarscript/core";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-format.js","sourceRoot":"","sources":["../src/project-format.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC;AAEhD,MAAM,CAAC,MAAM,4BAA4B,GAAG,MAAM,CAAC,MAAM,CAAC;IACxD,eAAe;IACf,MAAM;IACN,OAAO;IACP,QAAQ;IACR,WAAW;IACX,OAAO;IACP,YAAY;IACZ,SAAS;
|
|
1
|
+
{"version":3,"file":"project-format.js","sourceRoot":"","sources":["../src/project-format.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC;AAEhD,MAAM,CAAC,MAAM,4BAA4B,GAAG,MAAM,CAAC,MAAM,CAAC;IACxD,eAAe;IACf,MAAM;IACN,OAAO;IACP,QAAQ;IACR,WAAW;IACX,OAAO;IACP,YAAY;IACZ,SAAS;IACT,8EAA8E;IAC9E,4EAA4E;IAC5E,4EAA4E;IAC5E,4EAA4E;IAC5E,yEAAyE;IACzE,UAAU;CACF,CAAC,CAAC;AAEZ,qFAAqF;AACrF,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAE3D,MAAM,6BAA6B,GAAG,IAAI,GAAG,CAAS;IACpD,GAAG,4BAA4B;IAC/B,WAAW;IACX,aAAa;IACb,WAAW;CACZ,CAAC,CAAC;AAEH,MAAM,UAAU,8BAA8B,CAAC,KAAa;IAC1D,OAAO,6BAA6B,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,wBAAwB,CAAC,aAAqB;IAC5D,OAAO,aAAa,GAAG,8BAA8B;QACnD,CAAC,CAAC,6BAA6B,aAAa,yCAAyC,8BAA8B,6BAA6B;QAChJ,CAAC,CAAC,6BAA6B,aAAa,4CAA4C,8BAA8B,GAAG,CAAC;AAC9H,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* D110 — one installation number, five surface versions.
|
|
3
|
+
*
|
|
4
|
+
* `VELAR_VERSION` is the number you install. It steps for every package at
|
|
5
|
+
* once, so it cannot say which of the five observable surfaces actually moved:
|
|
6
|
+
* Desktop's surface sat still for several releases while its package climbed
|
|
7
|
+
* with everybody else's. The surface versions answer the question an upgrade
|
|
8
|
+
* really raises — *which code do I have to re-read?*
|
|
9
|
+
*
|
|
10
|
+
* Every number here is read from the package that owns the surface. None of
|
|
11
|
+
* them is written down twice: D110's background is a website that accumulated
|
|
12
|
+
* two dozen hand-typed release numbers and had every one of them go stale in a
|
|
13
|
+
* single release, and a hand-typed number is the failure this whole mechanism
|
|
14
|
+
* exists to remove. `scripts/check-surface-versions.mjs` hashes each surface
|
|
15
|
+
* and refuses a change that leaves its number behind.
|
|
16
|
+
*
|
|
17
|
+
* `0.N`'s `N` counts how many times that surface has changed since counting
|
|
18
|
+
* began, and it is not a maturity grade: a low number beside a high one means
|
|
19
|
+
* that surface started counting later, and nothing else.
|
|
20
|
+
*
|
|
21
|
+
* The four target constants are imported *lazily*, and that is not an
|
|
22
|
+
* optimization detail — it is the difference between this file costing one
|
|
23
|
+
* command and costing all of them. Reading Web's, Server's and Desktop's
|
|
24
|
+
* numbers means loading three compiler extensions the CLI otherwise touches
|
|
25
|
+
* only when a project activates them, and a static import here would put that
|
|
26
|
+
* on the start of `velar check` and every other command for the sake of a
|
|
27
|
+
* banner almost none of them print. Core's constant is already loaded, because
|
|
28
|
+
* the compiler always is.
|
|
29
|
+
*
|
|
30
|
+
* Three of those four are also optional now (D111): a project installs the
|
|
31
|
+
* targets it declares, so a Core project has no Web, Server or Desktop package
|
|
32
|
+
* to read a number out of. The banner answers for the installation it is in —
|
|
33
|
+
* the same reading `velar.json`'s `surfaces` check already takes, where the
|
|
34
|
+
* installed packages, not the CLI's own pins, decide what a project activates.
|
|
35
|
+
* A surface with nothing installed to speak for it is left out rather than
|
|
36
|
+
* printed from a number written down here, which is exactly the second copy
|
|
37
|
+
* this file exists to avoid.
|
|
38
|
+
*/
|
|
39
|
+
export declare function readSurfaceVersions(): Promise<Readonly<Record<string, string>>>;
|
|
40
|
+
/** One line, three spaces between entries: `core@<n> web@<n> …`. */
|
|
41
|
+
export declare function formatSurfaceVersions(): Promise<string>;
|
|
42
|
+
//# sourceMappingURL=surface-versions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"surface-versions.d.ts","sourceRoot":"","sources":["../src/surface-versions.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAcrF;AAWD,wEAAwE;AACxE,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC,CAG7D"}
|