@tsonic/cli 0.0.63 → 0.0.64

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.
Files changed (82) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/aikya/bindings.d.ts +44 -0
  3. package/dist/aikya/bindings.d.ts.map +1 -0
  4. package/dist/aikya/bindings.js +777 -0
  5. package/dist/aikya/bindings.js.map +1 -0
  6. package/dist/aikya/bindings.test.d.ts +2 -0
  7. package/dist/aikya/bindings.test.d.ts.map +1 -0
  8. package/dist/aikya/bindings.test.js +554 -0
  9. package/dist/aikya/bindings.test.js.map +1 -0
  10. package/dist/cli/dispatcher.d.ts.map +1 -1
  11. package/dist/cli/dispatcher.js +15 -0
  12. package/dist/cli/dispatcher.js.map +1 -1
  13. package/dist/cli/help.d.ts.map +1 -1
  14. package/dist/cli/help.js +4 -1
  15. package/dist/cli/help.js.map +1 -1
  16. package/dist/cli/parser.d.ts.map +1 -1
  17. package/dist/cli/parser.js +6 -0
  18. package/dist/cli/parser.js.map +1 -1
  19. package/dist/cli/parser.test.js +10 -0
  20. package/dist/cli/parser.test.js.map +1 -1
  21. package/dist/commands/add-npm.d.ts +3 -2
  22. package/dist/commands/add-npm.d.ts.map +1 -1
  23. package/dist/commands/add-npm.js +69 -177
  24. package/dist/commands/add-npm.js.map +1 -1
  25. package/dist/commands/add-npm.test.js +276 -2
  26. package/dist/commands/add-npm.test.js.map +1 -1
  27. package/dist/commands/build-library-bindings-aliases.test.js +349 -4
  28. package/dist/commands/build-library-bindings-aliases.test.js.map +1 -1
  29. package/dist/commands/build.d.ts.map +1 -1
  30. package/dist/commands/build.js +168 -148
  31. package/dist/commands/build.js.map +1 -1
  32. package/dist/commands/build.test.js +22 -3
  33. package/dist/commands/build.test.js.map +1 -1
  34. package/dist/commands/generate.d.ts.map +1 -1
  35. package/dist/commands/generate.js +5 -0
  36. package/dist/commands/generate.js.map +1 -1
  37. package/dist/commands/init.d.ts +5 -2
  38. package/dist/commands/init.d.ts.map +1 -1
  39. package/dist/commands/init.js +42 -7
  40. package/dist/commands/init.js.map +1 -1
  41. package/dist/commands/init.test.js +82 -2
  42. package/dist/commands/init.test.js.map +1 -1
  43. package/dist/commands/library-bindings-augment.d.ts.map +1 -1
  44. package/dist/commands/library-bindings-augment.js +376 -53
  45. package/dist/commands/library-bindings-augment.js.map +1 -1
  46. package/dist/commands/library-bindings-augment.test.js +460 -2
  47. package/dist/commands/library-bindings-augment.test.js.map +1 -1
  48. package/dist/commands/library-bindings-firstparty-regressions.test.d.ts +2 -0
  49. package/dist/commands/library-bindings-firstparty-regressions.test.d.ts.map +1 -0
  50. package/dist/commands/library-bindings-firstparty-regressions.test.js +217 -0
  51. package/dist/commands/library-bindings-firstparty-regressions.test.js.map +1 -0
  52. package/dist/commands/library-bindings-firstparty.d.ts +3 -0
  53. package/dist/commands/library-bindings-firstparty.d.ts.map +1 -0
  54. package/dist/commands/library-bindings-firstparty.js +2250 -0
  55. package/dist/commands/library-bindings-firstparty.js.map +1 -0
  56. package/dist/commands/restore.d.ts.map +1 -1
  57. package/dist/commands/restore.js +3 -1
  58. package/dist/commands/restore.js.map +1 -1
  59. package/dist/commands/restore.test.js +29 -0
  60. package/dist/commands/restore.test.js.map +1 -1
  61. package/dist/commands/run-build-regressions.test.js +72 -0
  62. package/dist/commands/run-build-regressions.test.js.map +1 -1
  63. package/dist/config.d.ts.map +1 -1
  64. package/dist/config.js +16 -2
  65. package/dist/config.js.map +1 -1
  66. package/dist/config.test.js +57 -0
  67. package/dist/config.test.js.map +1 -1
  68. package/dist/dotnet/runtime-dlls.d.ts +1 -0
  69. package/dist/dotnet/runtime-dlls.d.ts.map +1 -1
  70. package/dist/dotnet/runtime-dlls.js +1 -0
  71. package/dist/dotnet/runtime-dlls.js.map +1 -1
  72. package/dist/surface/profiles.d.ts +10 -0
  73. package/dist/surface/profiles.d.ts.map +1 -0
  74. package/dist/surface/profiles.js +61 -0
  75. package/dist/surface/profiles.js.map +1 -0
  76. package/dist/surface/profiles.test.d.ts +2 -0
  77. package/dist/surface/profiles.test.d.ts.map +1 -0
  78. package/dist/surface/profiles.test.js +49 -0
  79. package/dist/surface/profiles.test.js.map +1 -0
  80. package/dist/types.d.ts +10 -0
  81. package/dist/types.d.ts.map +1 -1
  82. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/commands/build.ts"],"names":[],"mappings":"AAAA;;GAEG;AAcH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAsqB1D;;GAEG;AACH,eAAO,MAAM,YAAY,GACvB,QAAQ,cAAc,KACrB,MAAM,CAAC;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,EAAE,MAAM,CAsDvC,CAAC"}
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/commands/build.ts"],"names":[],"mappings":"AAAA;;GAEG;AAgBH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AA4rB1D;;GAEG;AACH,eAAO,MAAM,YAAY,GACvB,QAAQ,cAAc,KACrB,MAAM,CAAC;IAAE,UAAU,EAAE,MAAM,CAAA;CAAE,EAAE,MAAM,CAsDvC,CAAC"}
@@ -2,12 +2,13 @@
2
2
  * tsonic build command - Build executable or library
3
3
  */
4
4
  import { spawnSync } from "node:child_process";
5
- import { dirname, isAbsolute, join, relative, resolve } from "node:path";
6
- import { chmodSync, copyFileSync, cpSync, existsSync, mkdirSync, readFileSync, readdirSync, rmSync, } from "node:fs";
5
+ import { isAbsolute, join, relative, resolve } from "node:path";
6
+ import { chmodSync, copyFileSync, cpSync, existsSync, mkdirSync, readFileSync, readdirSync, rmSync, writeFileSync, } from "node:fs";
7
+ import * as ts from "typescript";
7
8
  import { generateCommand } from "./generate.js";
8
9
  import { resolveNugetConfigFile } from "../dotnet/nuget-config.js";
9
- import { augmentLibraryBindingsFromSource, overlayDependencyBindings, } from "./library-bindings-augment.js";
10
- import { listDotnetRuntimes, resolvePackageRoot, resolveTsonicRuntimeDllDir, resolveTsbindgenDllPath, tsbindgenGenerate, } from "./add-common.js";
10
+ import { VERSION } from "../cli/constants.js";
11
+ import { generateFirstPartyLibraryBindings } from "./library-bindings-firstparty.js";
11
12
  const readProjectAssets = (assetsPath) => {
12
13
  if (!existsSync(assetsPath)) {
13
14
  return { ok: false, error: `Restore assets not found at ${assetsPath}` };
@@ -110,171 +111,182 @@ const assertNoOutputAssemblyNameConflicts = (generatedDir, outputName, libraries
110
111
  : "Fix: rename `outputName` in your project's tsonic.json to a unique name and rebuild.");
111
112
  return { ok: false, error: lines.join("\n") };
112
113
  };
113
- const pickPackageFolder = (assets) => {
114
- const folders = assets.packageFolders
115
- ? Object.keys(assets.packageFolders)
116
- : [];
117
- if (folders.length === 0)
118
- return undefined;
119
- return folders[0];
120
- };
121
- const findTargetKey = (assets, tfm) => {
122
- const targets = assets.targets ? Object.keys(assets.targets) : [];
123
- if (targets.includes(tfm))
124
- return tfm;
125
- return targets.find((k) => k.startsWith(`${tfm}/`));
114
+ const readProjectPackageMetadata = (projectRoot, outputName) => {
115
+ const packageJsonPath = join(projectRoot, "package.json");
116
+ if (!existsSync(packageJsonPath)) {
117
+ return { name: outputName, version: "0.0.0" };
118
+ }
119
+ try {
120
+ const parsed = JSON.parse(readFileSync(packageJsonPath, "utf-8"));
121
+ const name = typeof parsed.name === "string" && parsed.name.trim().length > 0
122
+ ? parsed.name.trim()
123
+ : outputName;
124
+ const version = typeof parsed.version === "string" && parsed.version.trim().length > 0
125
+ ? parsed.version.trim()
126
+ : "0.0.0";
127
+ return { name, version };
128
+ }
129
+ catch {
130
+ return { name: outputName, version: "0.0.0" };
131
+ }
126
132
  };
127
- const collectNugetCompileDirs = (workspaceRoot, tfm) => {
128
- const assetsPath = join(workspaceRoot, ".tsonic", "nuget", "obj", "project.assets.json");
129
- if (!existsSync(assetsPath))
130
- return { ok: true, value: [] };
131
- let assets;
133
+ const writeAikyaPackageManifest = (config) => {
134
+ const distRoot = join(config.projectRoot, "dist");
135
+ const bindingsRoot = join(distRoot, "tsonic", "bindings");
136
+ if (!existsSync(bindingsRoot)) {
137
+ return {
138
+ ok: false,
139
+ error: `Aikya manifest write failed: bindings root is missing at ${bindingsRoot}.\n` +
140
+ `Build did not produce library bindings.`,
141
+ };
142
+ }
143
+ const packageMeta = readProjectPackageMetadata(config.projectRoot, config.outputName);
144
+ const runtimePackageId = config.outputConfig.package?.id ?? config.outputName;
145
+ const runtimePackageVersion = config.outputConfig.package?.version ?? packageMeta.version;
146
+ const manifestDir = join(distRoot, "tsonic");
147
+ const manifestPath = join(manifestDir, "package-manifest.json");
148
+ const facades = existsSync(join(bindingsRoot, "index.d.ts"))
149
+ ? ["index.d.ts"]
150
+ : [];
151
+ const runtimeNugetPackagesRaw = [
152
+ { id: runtimePackageId, version: runtimePackageVersion },
153
+ ...config.packageReferences.map((pkg) => ({
154
+ id: pkg.id,
155
+ version: pkg.version,
156
+ })),
157
+ ];
158
+ const seenRuntimeNuget = new Set();
159
+ const runtimeNugetPackages = runtimeNugetPackagesRaw
160
+ .filter((pkg) => {
161
+ const key = `${pkg.id.toLowerCase()}::${pkg.version}`;
162
+ if (seenRuntimeNuget.has(key))
163
+ return false;
164
+ seenRuntimeNuget.add(key);
165
+ return true;
166
+ })
167
+ .sort((a, b) => a.id.localeCompare(b.id) || a.version.localeCompare(b.version));
168
+ const manifest = {
169
+ schemaVersion: 1,
170
+ kind: "tsonic-library",
171
+ npmPackage: packageMeta.name,
172
+ npmVersion: packageMeta.version,
173
+ producer: {
174
+ tool: "tsonic",
175
+ version: VERSION,
176
+ mode: "aikya-firstparty",
177
+ },
178
+ runtime: {
179
+ nugetPackages: runtimeNugetPackages,
180
+ frameworkReferences: config.frameworkReferences,
181
+ assemblies: [config.outputName],
182
+ runtimePackages: [packageMeta.name],
183
+ },
184
+ typing: {
185
+ bindingsRoot: "tsonic/bindings",
186
+ facades,
187
+ },
188
+ dotnet: {
189
+ frameworkReferences: config.frameworkReferences,
190
+ packageReferences: config.packageReferences,
191
+ },
192
+ };
132
193
  try {
133
- assets = JSON.parse(readFileSync(assetsPath, "utf-8"));
194
+ mkdirSync(manifestDir, { recursive: true });
195
+ writeFileSync(manifestPath, JSON.stringify(manifest, null, 2) + "\n", "utf-8");
196
+ return { ok: true, value: undefined };
134
197
  }
135
198
  catch (error) {
136
199
  return {
137
200
  ok: false,
138
- error: `Failed to parse ${assetsPath}: ${error instanceof Error ? error.message : String(error)}`,
201
+ error: `Failed to write Aikya package manifest: ${error instanceof Error ? error.message : String(error)}`,
139
202
  };
140
203
  }
141
- const packageFolder = pickPackageFolder(assets);
142
- if (!packageFolder)
143
- return { ok: true, value: [] };
144
- const targetKey = findTargetKey(assets, tfm);
145
- if (!targetKey)
146
- return { ok: true, value: [] };
147
- const targets = assets.targets?.[targetKey];
148
- const libraries = assets.libraries ?? {};
149
- if (!targets || typeof targets !== "object")
150
- return { ok: true, value: [] };
151
- const compileDirs = new Set();
152
- for (const [libKey, libValue] of Object.entries(targets)) {
153
- if (!libKey || !libValue || typeof libValue !== "object")
154
- continue;
155
- const libInfo = libraries[libKey];
156
- if (!libInfo || libInfo.type !== "package" || !libInfo.path)
157
- continue;
158
- const compile = libValue.compile;
159
- if (!compile || typeof compile !== "object")
160
- continue;
161
- for (const p of Object.keys(compile)) {
162
- if (!p.toLowerCase().endsWith(".dll"))
163
- continue;
164
- const dllPath = join(packageFolder, libInfo.path, p);
165
- compileDirs.add(dirname(dllPath));
166
- }
167
- }
168
- return {
169
- ok: true,
170
- value: Array.from(compileDirs).sort((a, b) => a.localeCompare(b)),
171
- };
172
204
  };
173
- const listGeneratedBindingsLibDirs = (workspaceRoot) => {
174
- const base = join(workspaceRoot, ".tsonic", "bindings");
175
- if (!existsSync(base))
176
- return [];
177
- const libs = [];
178
- const kinds = readdirSync(base, { withFileTypes: true })
179
- .filter((e) => e.isDirectory())
180
- .map((e) => e.name);
181
- for (const kind of kinds) {
182
- const kindDir = join(base, kind);
183
- for (const entry of readdirSync(kindDir, { withFileTypes: true })) {
184
- if (!entry.isDirectory())
185
- continue;
186
- const dir = join(kindDir, entry.name);
187
- const pkgJsonPath = join(dir, "package.json");
188
- if (!existsSync(pkgJsonPath))
205
+ const listTypeScriptSourceInputs = (sourceRoot) => {
206
+ const out = [];
207
+ const visit = (dir) => {
208
+ const entries = readdirSync(dir, { withFileTypes: true }).sort((a, b) => a.name.localeCompare(b.name));
209
+ for (const entry of entries) {
210
+ const absolute = join(dir, entry.name);
211
+ if (entry.isDirectory()) {
212
+ visit(absolute);
189
213
  continue;
190
- try {
191
- const parsed = JSON.parse(readFileSync(pkgJsonPath, "utf-8"));
192
- const tsonic = (parsed.tsonic ?? {});
193
- if (tsonic.generated === true)
194
- libs.push(dir);
195
214
  }
196
- catch {
197
- // Ignore malformed generated packages; restore will report these separately.
215
+ if (entry.isFile() &&
216
+ (absolute.endsWith(".ts") ||
217
+ absolute.endsWith(".mts") ||
218
+ absolute.endsWith(".cts")) &&
219
+ !absolute.endsWith(".d.ts")) {
220
+ out.push(absolute);
198
221
  }
199
222
  }
223
+ };
224
+ if (existsSync(sourceRoot)) {
225
+ visit(sourceRoot);
200
226
  }
201
- libs.sort((a, b) => a.localeCompare(b));
202
- return libs;
227
+ return out;
203
228
  };
204
- const generateLibraryBindings = (config) => {
205
- const { workspaceRoot, projectRoot, outputName, dotnetVersion, verbose, quiet, packageReferences, } = config;
206
- const dllPath = join(projectRoot, "dist", dotnetVersion, `${outputName}.dll`);
207
- if (!existsSync(dllPath)) {
208
- return { ok: false, error: `Built library DLL not found at ${dllPath}` };
209
- }
210
- const tsbindgenDllResult = resolveTsbindgenDllPath(workspaceRoot);
211
- if (!tsbindgenDllResult.ok)
212
- return tsbindgenDllResult;
213
- const runtimesResult = listDotnetRuntimes(workspaceRoot);
214
- if (!runtimesResult.ok)
215
- return runtimesResult;
216
- const runtimes = runtimesResult.value;
217
- const dotnetRoot = resolvePackageRoot(workspaceRoot, "@tsonic/dotnet");
218
- if (!dotnetRoot.ok)
219
- return dotnetRoot;
220
- const outDir = join(projectRoot, "dist", "tsonic", "bindings");
221
- rmSync(outDir, { recursive: true, force: true });
222
- mkdirSync(outDir, { recursive: true });
223
- const compileDirsResult = collectNugetCompileDirs(workspaceRoot, dotnetVersion);
224
- if (!compileDirsResult.ok)
225
- return compileDirsResult;
226
- if (packageReferences.length > 0 && compileDirsResult.value.length === 0) {
229
+ const formatTsDiagnostics = (diagnostics, cwd) => {
230
+ const host = {
231
+ getCanonicalFileName: (fileName) => fileName,
232
+ getCurrentDirectory: () => cwd,
233
+ getNewLine: () => "\n",
234
+ };
235
+ return ts.formatDiagnosticsWithColorAndContext(diagnostics, host).trim();
236
+ };
237
+ const emitLibraryTypeDeclarations = (config) => {
238
+ const sourceRoot = resolve(config.projectRoot, config.sourceRoot);
239
+ const sourceFiles = listTypeScriptSourceInputs(sourceRoot);
240
+ if (sourceFiles.length === 0) {
227
241
  return {
228
242
  ok: false,
229
- error: "NuGet PackageReferences are configured, but no restore assets were found.\n" +
230
- "Run `tsonic restore` at the workspace root and retry.",
243
+ error: `No TypeScript source files found under sourceRoot: ${sourceRoot}`,
244
+ };
245
+ }
246
+ const distDir = join(config.projectRoot, "dist");
247
+ mkdirSync(distDir, { recursive: true });
248
+ const compilerOptions = {
249
+ target: ts.ScriptTarget.ES2022,
250
+ module: ts.ModuleKind.NodeNext,
251
+ moduleResolution: ts.ModuleResolutionKind.NodeNext,
252
+ declaration: true,
253
+ emitDeclarationOnly: true,
254
+ noEmitOnError: true,
255
+ allowImportingTsExtensions: true,
256
+ noCheck: true,
257
+ skipLibCheck: true,
258
+ outDir: distDir,
259
+ rootDir: sourceRoot,
260
+ typeRoots: config.typeRoots.map((p) => resolve(config.workspaceRoot, p)),
261
+ };
262
+ const host = ts.createCompilerHost(compilerOptions, true);
263
+ const program = ts.createProgram({
264
+ rootNames: sourceFiles,
265
+ options: compilerOptions,
266
+ host,
267
+ });
268
+ const preEmitDiagnostics = ts.getPreEmitDiagnostics(program);
269
+ if (preEmitDiagnostics.length > 0) {
270
+ return {
271
+ ok: false,
272
+ error: `Type declaration emit failed before emit.\n` +
273
+ formatTsDiagnostics(preEmitDiagnostics, config.projectRoot),
274
+ };
275
+ }
276
+ const emitResult = program.emit(undefined, undefined, undefined, true);
277
+ if (emitResult.emitSkipped || emitResult.diagnostics.length > 0) {
278
+ return {
279
+ ok: false,
280
+ error: `Type declaration emit failed.\n` +
281
+ formatTsDiagnostics(emitResult.diagnostics, config.projectRoot),
231
282
  };
232
283
  }
233
- const generatedLibs = listGeneratedBindingsLibDirs(workspaceRoot);
234
- const args = [
235
- "-a",
236
- dllPath,
237
- "-o",
238
- outDir,
239
- "--lib",
240
- dotnetRoot.value,
241
- ];
242
- for (const lib of generatedLibs)
243
- args.push("--lib", lib);
244
- const refDirs = new Set();
245
- refDirs.add(join(projectRoot, "dist", dotnetVersion));
246
- refDirs.add(join(workspaceRoot, "libs"));
247
- // Add directories for any explicit assembly references so tsbindgen can
248
- // resolve referenced assemblies when generating bindings for this output DLL.
249
- for (const lib of config.libraries) {
250
- if (!lib.toLowerCase().endsWith(".dll"))
251
- continue;
252
- refDirs.add(dirname(lib));
253
- }
254
- const runtimeDirResult = resolveTsonicRuntimeDllDir(workspaceRoot);
255
- if (!runtimeDirResult.ok)
256
- return runtimeDirResult;
257
- refDirs.add(runtimeDirResult.value);
258
- for (const rt of runtimes)
259
- refDirs.add(rt.dir);
260
- for (const d of compileDirsResult.value)
261
- refDirs.add(d);
262
- for (const dir of Array.from(refDirs).sort((a, b) => a.localeCompare(b))) {
263
- if (existsSync(dir))
264
- args.push("--ref-dir", dir);
265
- }
266
- const options = { verbose, quiet };
267
- const genResult = tsbindgenGenerate(workspaceRoot, tsbindgenDllResult.value, args, options);
268
- if (!genResult.ok)
269
- return genResult;
270
- const overlayResult = overlayDependencyBindings(config, outDir);
271
- if (!overlayResult.ok)
272
- return overlayResult;
273
- const augmentResult = augmentLibraryBindingsFromSource(config, outDir);
274
- if (!augmentResult.ok)
275
- return augmentResult;
276
284
  return { ok: true, value: undefined };
277
285
  };
286
+ const generateLibraryBindings = (config) => {
287
+ const outDir = join(config.projectRoot, "dist", "tsonic", "bindings");
288
+ return generateFirstPartyLibraryBindings(config, outDir);
289
+ };
278
290
  /**
279
291
  * Build native executable
280
292
  */
@@ -519,6 +531,14 @@ const buildLibrary = (config, generatedDir) => {
519
531
  if (!bindingsResult.ok) {
520
532
  return { ok: false, error: bindingsResult.error };
521
533
  }
534
+ const declarationEmitResult = emitLibraryTypeDeclarations(config);
535
+ if (!declarationEmitResult.ok) {
536
+ return { ok: false, error: declarationEmitResult.error };
537
+ }
538
+ const manifestResult = writeAikyaPackageManifest(config);
539
+ if (!manifestResult.ok) {
540
+ return { ok: false, error: manifestResult.error };
541
+ }
522
542
  return {
523
543
  ok: true,
524
544
  value: { outputPath: outputDir },
@@ -1 +1 @@
1
- {"version":3,"file":"build.js","sourceRoot":"","sources":["../../src/commands/build.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../src/commands/build.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { describe, it } from "mocha";
2
2
  import { expect } from "chai";
3
- import { existsSync, mkdirSync, mkdtempSync, rmSync, symlinkSync, writeFileSync, } from "node:fs";
3
+ import { existsSync, mkdirSync, mkdtempSync, readFileSync, rmSync, symlinkSync, writeFileSync, } from "node:fs";
4
4
  import { tmpdir } from "node:os";
5
5
  import { dirname, join, resolve } from "node:path";
6
6
  import { fileURLToPath } from "node:url";
@@ -29,11 +29,10 @@ describe("build command (library bindings ref dirs)", function () {
29
29
  mkdirSync(join(dir, "libs"), { recursive: true });
30
30
  // Workspace root package.json is required for createRequire-based resolution.
31
31
  writeFileSync(join(dir, "package.json"), JSON.stringify({ name: "test-workspace", private: true, type: "module" }, null, 2) + "\n", "utf-8");
32
- // Provide required standard bindings packages and tsbindgen (no network).
32
+ // Provide required standard bindings packages (no network).
33
33
  linkDir(join(repoRoot, "node_modules/@tsonic/globals"), join(dir, "node_modules/@tsonic/globals"));
34
34
  linkDir(join(repoRoot, "node_modules/@tsonic/core"), join(dir, "node_modules/@tsonic/core"));
35
35
  linkDir(join(repoRoot, "node_modules/@tsonic/dotnet"), join(dir, "node_modules/@tsonic/dotnet"));
36
- linkDir(join(repoRoot, "node_modules/@tsonic/tsbindgen"), join(dir, "node_modules/@tsonic/tsbindgen"));
37
36
  // Build a tiny external dependency DLL (Dep.dll) OUTSIDE the library output folder.
38
37
  const depDir = join(dir, "deps", "dep");
39
38
  mkdirSync(depDir, { recursive: true });
@@ -72,6 +71,12 @@ describe("build command (library bindings ref dirs)", function () {
72
71
  };
73
72
  const projectRoot = join(dir, "packages", "app");
74
73
  mkdirSync(join(projectRoot, "src"), { recursive: true });
74
+ writeFileSync(join(projectRoot, "package.json"), JSON.stringify({
75
+ name: "@acme/app-lib",
76
+ version: "1.2.3",
77
+ private: true,
78
+ type: "module",
79
+ }, null, 2) + "\n", "utf-8");
75
80
  writeFileSync(join(projectRoot, "src", "index.ts"), `export function main(): void { }\n`, "utf-8");
76
81
  const projectConfig = {
77
82
  $schema: "https://tsonic.org/schema/v1.json",
@@ -97,6 +102,20 @@ describe("build command (library bindings ref dirs)", function () {
97
102
  expect(build.ok).to.equal(true);
98
103
  // Sanity: bindings were emitted for the library.
99
104
  expect(existsSync(join(projectRoot, "dist", "tsonic", "bindings"))).to.equal(true);
105
+ const declarationPath = join(projectRoot, "dist", "index.d.ts");
106
+ expect(existsSync(declarationPath)).to.equal(true);
107
+ const declarationText = readFileSync(declarationPath, "utf-8");
108
+ expect(declarationText).to.include("export declare function main(): void;");
109
+ const aikyaManifestPath = join(projectRoot, "dist", "tsonic", "package-manifest.json");
110
+ expect(existsSync(aikyaManifestPath)).to.equal(true);
111
+ const aikyaManifest = JSON.parse(readFileSync(aikyaManifestPath, "utf-8"));
112
+ expect(aikyaManifest["schemaVersion"]).to.equal(1);
113
+ expect(aikyaManifest["kind"]).to.equal("tsonic-library");
114
+ expect(aikyaManifest["npmPackage"]).to.equal("@acme/app-lib");
115
+ expect(aikyaManifest["npmVersion"]).to.equal("1.2.3");
116
+ const runtime = aikyaManifest["runtime"];
117
+ expect(runtime?.nugetPackages?.some((x) => x.id === "App")).to.equal(true);
118
+ expect(runtime?.assemblies).to.deep.equal(["App"]);
100
119
  }
101
120
  finally {
102
121
  rmSync(dir, { recursive: true, force: true });
@@ -1 +1 @@
1
- {"version":3,"file":"build.test.js","sourceRoot":"","sources":["../../src/commands/build.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build.test.js","sourceRoot":"","sources":["../../src/commands/build.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AAAA;;GAEG;AA6BH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAmJ1D;;GAEG;AACH,eAAO,MAAM,eAAe,GAC1B,QAAQ,cAAc,KACrB,MAAM,CAAC;IAAE,cAAc,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,EAAE,MAAM,CAuU9D,CAAC"}
1
+ {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/commands/generate.ts"],"names":[],"mappings":"AAAA;;GAEG;AA6BH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAoJ1D;;GAEG;AACH,eAAO,MAAM,eAAe,GAC1B,QAAQ,cAAc,KACrB,MAAM,CAAC;IAAE,cAAc,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,EAAE,MAAM,CA2U9D,CAAC"}
@@ -6,6 +6,7 @@ import { join, dirname, relative, resolve, isAbsolute } from "node:path";
6
6
  import { buildModuleDependencyGraph, isExecutableStatement, } from "@tsonic/frontend";
7
7
  import { emitCSharpFiles } from "@tsonic/emitter";
8
8
  import { generateCsproj, generateProgramCs, } from "@tsonic/backend";
9
+ import { resolveSurfaceCapabilities } from "../surface/profiles.js";
9
10
  /**
10
11
  * Find project .csproj file in current directory
11
12
  */
@@ -135,6 +136,7 @@ const extractEntryInfo = (entryModule) => {
135
136
  */
136
137
  export const generateCommand = (config) => {
137
138
  const { entryPoint, outputDirectory, rootNamespace, workspaceRoot, projectRoot, sourceRoot, typeRoots, frameworkReferences, packageReferences, } = config;
139
+ const surfaceCapabilities = resolveSurfaceCapabilities(config.surface);
138
140
  // For libraries, entry point is optional
139
141
  if (!entryPoint && config.outputConfig.type !== "library") {
140
142
  return {
@@ -179,6 +181,8 @@ export const generateCommand = (config) => {
179
181
  sourceRoot: absoluteSourceRoot,
180
182
  rootNamespace,
181
183
  typeRoots: allTypeRoots,
184
+ surface: config.surface,
185
+ useStandardLib: surfaceCapabilities.useStandardLib,
182
186
  verbose: config.verbose,
183
187
  };
184
188
  const graphResult = buildModuleDependencyGraph(absoluteEntryPoint, compilerOptions);
@@ -201,6 +205,7 @@ export const generateCommand = (config) => {
201
205
  const irResult = { ok: true, value: modules };
202
206
  // Emit C# code
203
207
  const emitResult = emitCSharpFiles(irResult.value, {
208
+ surface: config.surface,
204
209
  rootNamespace,
205
210
  entryPointPath: absoluteEntryPoint,
206
211
  libraries: typeLibraries, // Only non-DLL libraries (type roots)