@voxgig/sdkgen 3.0.0 → 3.2.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.
Files changed (45) hide show
  1. package/dist/action/doctor.js +65 -10
  2. package/dist/action/doctor.js.map +1 -1
  3. package/dist/cmp/ExternalTarget.d.ts +2 -0
  4. package/dist/cmp/ExternalTarget.js +104 -0
  5. package/dist/cmp/ExternalTarget.js.map +1 -0
  6. package/dist/helpers/packageMeta.d.ts +9 -1
  7. package/dist/helpers/packageMeta.js +54 -0
  8. package/dist/helpers/packageMeta.js.map +1 -1
  9. package/dist/sdkgen.d.ts +2 -2
  10. package/dist/sdkgen.js +229 -2
  11. package/dist/sdkgen.js.map +1 -1
  12. package/dist/tsconfig.tsbuildinfo +1 -1
  13. package/dist/types.d.ts +12 -0
  14. package/dist/utility.js +10 -1
  15. package/dist/utility.js.map +1 -1
  16. package/model/sdkgen.aontu +130 -0
  17. package/package.json +1 -1
  18. package/project/.sdk/model/target/go-cli.aontu +0 -1
  19. package/project/.sdk/model/target/go-mcp.aontu +0 -1
  20. package/project/.sdk/model/target/java.aontu +0 -1
  21. package/project/.sdk/model/target/kotlin.aontu +0 -1
  22. package/project/.sdk/model/target/lean.aontu +0 -1
  23. package/project/.sdk/model/target/py-data.aontu +0 -1
  24. package/project/.sdk/model/target/scala.aontu +0 -1
  25. package/project/.sdk/model/target/seneca-provider.aontu +118 -0
  26. package/project/.sdk/model/target/zig.aontu +0 -1
  27. package/project/.sdk/src/cmp/js/Package_js.ts +8 -1
  28. package/project/.sdk/src/cmp/ocaml/Package_ocaml.ts +9 -2
  29. package/project/.sdk/src/cmp/php/Package_php.ts +9 -2
  30. package/project/.sdk/src/cmp/rb/Package_rb.ts +9 -2
  31. package/project/.sdk/src/cmp/seneca-provider/Extras_seneca-provider.ts +3915 -0
  32. package/project/.sdk/src/cmp/seneca-provider/Main_seneca-provider.ts +960 -0
  33. package/project/.sdk/src/cmp/ts/Package_ts.ts +8 -1
  34. package/project/.sdk/tm/seneca-provider/CODE_OF_CONDUCT.md +132 -0
  35. package/project/.sdk/tm/seneca-provider/LICENSE +21 -0
  36. package/project/.sdk/tm/seneca-provider/Makefile +15 -0
  37. package/project/.sdk/tm/seneca-provider/src/tsconfig.json +18 -0
  38. package/project/.sdk/tm/seneca-provider/test/tsconfig.json +16 -0
  39. package/project/.sdk/tm/seneca-provider/tsfmt.json +3 -0
  40. package/src/action/doctor.ts +77 -12
  41. package/src/cmp/ExternalTarget.ts +125 -0
  42. package/src/helpers/packageMeta.ts +63 -0
  43. package/src/sdkgen.ts +280 -1
  44. package/src/types.ts +24 -1
  45. package/src/utility.ts +10 -1
package/dist/sdkgen.js CHANGED
@@ -39,7 +39,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
39
39
  Object.defineProperty(exports, "__esModule", { value: true });
40
40
  exports.Jostraca = exports.registerComponent = exports.FeatureHook = exports.ReadmeRef = exports.ReadmeExplanation = exports.ReadmeHowto = exports.ReadmeEntity = exports.ReadmeOptions = exports.ReadmeModel = exports.ReadmeIntro = exports.ReadmeErrors = exports.ReadmeQuick = exports.ReadmeInstall = exports.AgentGuideFeature = exports.AgentGuide = exports.AgentGuideTop = exports.ReadmeTop = exports.Readme = exports.Test = exports.Feature = exports.Entity = exports.Changelog = exports.Security = exports.License = exports.Deploy = exports.Main = exports.List = exports.Slot = exports.Line = exports.Inject = exports.Fragment = exports.Copy = exports.Content = exports.File = exports.Folder = exports.Project = exports.omap = exports.deep = exports.indent = exports.template = exports.getx = exports.get = exports.vmap = exports.cmap = exports.kebabify = exports.camelify = exports.snakify = exports.each = exports.names = exports.cmp = void 0;
41
41
  exports.srcFeatureExcludes = exports.fullsetExcludes = exports.featureExcludes = exports.findFeatureSources = exports.availableFeatures = exports.featureOf = exports.litFor = exports.dataArg = exports.matchArg = exports.idLiteral = exports.primaryOpCall = exports.liveStrict = exports.hasServerVariables = exports.serverVariables = exports.swiftSafeTypeName = exports.isSwiftSdkType = exports.rbSafeTypeName = exports.isRbCoreConstant = exports.entityCacheField = exports.phpEntityAccessor = exports.exampleVarName = exports.safeVarName = exports.isReservedName = exports.entityCollection = exports.deriveEntityNames = exports.warnEntityTypeCollisions = exports.entityTypeCollisions = exports.entityClassName = exports.pickExampleEntity = exports.entityPrimaryOp = exports.entityOps = exports.entityDataIdField = exports.entityIdField = exports.opRequestShape = exports.entityPath = exports.entityActions = exports.opActions = exports.opParams = exports.opTypeName = exports.OP_SUFFIX = exports.canonKey = exports.canonToDtype = exports.canonToType = exports.collectDeps = exports.getMatchEntries = exports.buildIdNames = exports.SdkGenError = exports.resolveAuthPrefix = exports.isAuthActive = exports.requirePath = void 0;
42
- exports.GENERATOR_URL = exports.SECURITY_EMAIL = exports.PUBLISHER_URL = exports.PUBLISHER = exports.langLabel = exports.apiName = exports.repoInfo = exports.packageVersion = exports.goPackageIdent = exports.goVersion = exports.goModule = exports.envToken = exports.envName = exports.keywords = exports.nonAffiliation = exports.pkgDescription = exports.vendorCommand = exports.registryName = exports.isPublished = exports.registryState = exports.installCommand = exports.packageName = exports.jsKey = exports.jsOptProp = exports.jsProp = void 0;
42
+ exports.GENERATOR_URL = exports.SECURITY_EMAIL = exports.PUBLISHER_URL = exports.PUBLISHER = exports.langLabel = exports.apiName = exports.repoInfo = exports.packageVersion = exports.goPackageIdent = exports.goVersion = exports.goModule = exports.envToken = exports.envName = exports.contributorList = exports.authorInfo = exports.keywords = exports.nonAffiliation = exports.pkgDescription = exports.vendorCommand = exports.registryName = exports.isPublished = exports.registryState = exports.installCommand = exports.packageName = exports.jsKey = exports.jsOptProp = exports.jsProp = void 0;
43
43
  exports.SdkGen = SdkGen;
44
44
  const node_fs_1 = __importDefault(require("node:fs"));
45
45
  const node_path_1 = __importDefault(require("node:path"));
@@ -55,6 +55,8 @@ Object.defineProperty(exports, "isAuthActive", { enumerable: true, get: function
55
55
  Object.defineProperty(exports, "resolveAuthPrefix", { enumerable: true, get: function () { return utility_1.resolveAuthPrefix; } });
56
56
  const Main_1 = require("./cmp/Main");
57
57
  Object.defineProperty(exports, "Main", { enumerable: true, get: function () { return Main_1.Main; } });
58
+ const ExternalTarget_1 = require("./cmp/ExternalTarget");
59
+ const apidef_1 = require("@voxgig/apidef");
58
60
  const Deploy_1 = require("./cmp/Deploy");
59
61
  Object.defineProperty(exports, "Deploy", { enumerable: true, get: function () { return Deploy_1.Deploy; } });
60
62
  const Entity_1 = require("./cmp/Entity");
@@ -172,6 +174,8 @@ Object.defineProperty(exports, "vendorCommand", { enumerable: true, get: functio
172
174
  Object.defineProperty(exports, "pkgDescription", { enumerable: true, get: function () { return packageMeta_1.pkgDescription; } });
173
175
  Object.defineProperty(exports, "nonAffiliation", { enumerable: true, get: function () { return packageMeta_1.nonAffiliation; } });
174
176
  Object.defineProperty(exports, "keywords", { enumerable: true, get: function () { return packageMeta_1.keywords; } });
177
+ Object.defineProperty(exports, "authorInfo", { enumerable: true, get: function () { return packageMeta_1.authorInfo; } });
178
+ Object.defineProperty(exports, "contributorList", { enumerable: true, get: function () { return packageMeta_1.contributorList; } });
175
179
  Object.defineProperty(exports, "envName", { enumerable: true, get: function () { return packageMeta_1.envName; } });
176
180
  Object.defineProperty(exports, "envToken", { enumerable: true, get: function () { return packageMeta_1.envToken; } });
177
181
  Object.defineProperty(exports, "goModule", { enumerable: true, get: function () { return packageMeta_1.goModule; } });
@@ -257,8 +261,51 @@ function SdkGen(opts) {
257
261
  dryrun: !!opts.dryrun
258
262
  },
259
263
  };
260
- const jres = await jostraca.generate(jopts, () => Root({ model }));
264
+ // Targets that write OUTSIDE the SDK repo (`output: path`) are generated
265
+ // by their own pass, rooted at that path — see cmp/ExternalTarget for why
266
+ // a folder name cannot do this. The in-tree pass must not see them, or
267
+ // the consumer Root would also emit them into `<sdk-repo>/<target>/`.
268
+ //
269
+ // `folder` may be relative (a consumer's build passes '..' from `.sdk`),
270
+ // so resolve it ONCE: every destination is compared against it, and a
271
+ // comparison between a relative and an absolute path is meaningless.
272
+ const root = node_path_1.default.resolve(folder);
273
+ const external = externalTargets(model, root);
274
+ // Before ANY file is written, in-tree included: a destination that turns
275
+ // out to be wrong must abort the whole generation, not leave half of it
276
+ // done. See checkExternalFolders.
277
+ checkExternalFolders(external, root, fs);
278
+ const jres = await jostraca.generate(jopts, () => Root({ model: 0 === external.length ? model : withoutTargets(model, external) }));
261
279
  (0, util_2.showChanges)(jopts.log, 'generate-result', jres, node_path_1.default.dirname(process.cwd()));
280
+ for (const ext of external) {
281
+ // `active: false` is the project's only lever to stop the generator
282
+ // writing into a repo it does not own, so it has to be honoured HERE —
283
+ // the consumer Root iterates targets raw and does not check it. The
284
+ // target is still removed from the in-tree model above (withoutTargets
285
+ // takes every `output: path` target, active or not), so switching one
286
+ // off generates it nowhere rather than relocating it into
287
+ // `<sdk-repo>/<target>/`.
288
+ if (!ext.active) {
289
+ log.info({
290
+ point: 'generate-external-skip', target: ext.name, folder: ext.folder,
291
+ note: ext.name + ' inactive, not generated'
292
+ });
293
+ continue;
294
+ }
295
+ log.info({
296
+ point: 'generate-external', target: ext.name, folder: ext.folder,
297
+ note: ext.name + ' -> ' + ext.folder
298
+ });
299
+ const eres = await jostraca.generate({ ...jopts, folder: ext.folder }, () => (0, ExternalTarget_1.ExternalTarget)({
300
+ model, target: ext.target, cmpfolder: folder,
301
+ // How to walk BACK to the SDK project from the destination. A
302
+ // target generating out of tree usually sits beside the SDK in a
303
+ // known layout, and its own docs, scripts and live tests need to
304
+ // name that path.
305
+ sdkrelpath: externalSdkRel(ext, root, log),
306
+ }));
307
+ (0, util_2.showChanges)(jopts.log, 'generate-result', eres, node_path_1.default.dirname(process.cwd()));
308
+ }
262
309
  const dlogs = dlog.log();
263
310
  if (0 < dlogs.length) {
264
311
  for (let dlogentry of dlogs) {
@@ -367,6 +414,186 @@ SdkGen.makeBuild = async function (opts) {
367
414
  return await sdkgen.generate({ model, build, config });
368
415
  };
369
416
  };
417
+ // Targets declaring `output: path` — generated into their own repo rather
418
+ // than into `<sdk-repo>/<target>/`.
419
+ //
420
+ // A relative path resolves against the SDK repo root, so a sibling checkout
421
+ // is '../<repo>'. That is deliberately the SAME base the generator writes
422
+ // everything else against: a path in the model should not depend on the
423
+ // directory the command happened to be run from.
424
+ //
425
+ // An INACTIVE target is still listed: it must be taken out of the in-tree
426
+ // model (see withoutTargets) so that switching it off does not silently
427
+ // relocate it into `<sdk-repo>/<target>/`. The generate loop skips it.
428
+ function externalTargets(model, folder) {
429
+ const targets = model?.main?.[apidef_1.KIT]?.target || {};
430
+ return Object.keys(targets).sort()
431
+ .map((name) => ({ name, target: targets[name] }))
432
+ .filter((t) => {
433
+ const path = t.target?.output?.path;
434
+ return null != path && '' !== path;
435
+ })
436
+ .map((t) => ({
437
+ ...t,
438
+ folder: node_path_1.default.resolve(folder, String(t.target.output.path)),
439
+ active: false !== t.target.active,
440
+ }));
441
+ }
442
+ // The `.jostraca` bookkeeping tree (meta log + a duplicate of the last
443
+ // generated output) that jostraca leaves at an output root. It is the only
444
+ // on-disk evidence that this toolchain has generated into a directory
445
+ // before, so it doubles as the OWNERSHIP MARKER: a destination carrying one
446
+ // has been generated into already, whoever set it up.
447
+ const EXTERNAL_MARKER = '.jostraca';
448
+ // Entries that do not count as content when deciding whether a destination
449
+ // is empty. A `git init` (or a clone of an empty repo) leaves only `.git`,
450
+ // and that is exactly the destination a FIRST generation is aimed at.
451
+ const EXTERNAL_EMPTY = ['.git', '.DS_Store'];
452
+ // Refuse a destination the project cannot have meant.
453
+ //
454
+ // The external pass is the one code path that writes outside the repo it was
455
+ // pointed at, at a filesystem path taken verbatim from the model — and
456
+ // generation is overwrite, not merge, while jostraca's ensureDir creates
457
+ // missing parents. So a mistyped `output: path` does not fail: it fabricates
458
+ // a package tree at an arbitrary location, or overwrites an unrelated repo's
459
+ // package.json, README.md, LICENSE and CI workflow in place. The only trace
460
+ // was one INFO line naming the resolved folder.
461
+ //
462
+ // A destination must therefore be:
463
+ // - outside the SDK project, in BOTH directions — inside it is what a
464
+ // typo like '.' or 'ts' produces (and the external pass runs SECOND, so
465
+ // it wins over what the in-tree pass just wrote), while a destination
466
+ // that CONTAINS the project is what '..' produces;
467
+ // - claimed by no other target;
468
+ // - and either absent, empty, or carrying the marker a previous
469
+ // generation left there.
470
+ //
471
+ // Anything else is refused with both paths named. NOT skipped: a project
472
+ // generating somewhere other than it believes must be told. A destination
473
+ // that legitimately holds other content first (a repo seeded with a README
474
+ // and LICENCE) says so once in the model, with `output: adopt: true`.
475
+ function checkExternalFolders(external, root, fs) {
476
+ const claimed = {};
477
+ for (const ext of external) {
478
+ // An inactive target writes nothing, so its destination is not a hazard —
479
+ // and switching a target off must not require keeping its now-unused
480
+ // path valid.
481
+ if (!ext.active)
482
+ continue;
483
+ const where = 'Target "' + ext.name + '" has output path "' +
484
+ ext.target.output.path + '", which resolves to: ' + ext.folder +
485
+ '\n (SDK project: ' + root + ')';
486
+ if (ext.folder === root || folderContains(root, ext.folder)) {
487
+ throw new utility_1.SdkGenError('External target output path is inside the SDK project.\n ' + where +
488
+ '\n A target generating into the SDK project must leave `output: ' +
489
+ 'path` unset — it is then generated in-tree, as <sdk-project>/' +
490
+ ext.name + '/.');
491
+ }
492
+ if (folderContains(ext.folder, root)) {
493
+ throw new utility_1.SdkGenError('External target output path contains the SDK project.\n ' + where +
494
+ '\n Generation would write this package over the directory holding ' +
495
+ 'the SDK project itself.');
496
+ }
497
+ if (null != claimed[ext.folder]) {
498
+ throw new utility_1.SdkGenError('External target output path is already claimed by target "' +
499
+ claimed[ext.folder] + '".\n ' + where +
500
+ '\n Two targets generating into the same folder overwrite each ' +
501
+ 'other, in target-name order.');
502
+ }
503
+ claimed[ext.folder] = ext.name;
504
+ if (!fs.existsSync(ext.folder))
505
+ continue;
506
+ if (!fs.statSync(ext.folder).isDirectory()) {
507
+ throw new utility_1.SdkGenError('External target output path is not a folder.\n ' + where);
508
+ }
509
+ if (true === ext.target.output.adopt)
510
+ continue;
511
+ const entries = fs.readdirSync(ext.folder)
512
+ .map((entry) => String(entry));
513
+ if (entries.includes(EXTERNAL_MARKER))
514
+ continue;
515
+ const content = entries.filter((entry) => !EXTERNAL_EMPTY.includes(entry));
516
+ if (0 < content.length) {
517
+ throw new utility_1.SdkGenError('External target output folder already holds content this generator ' +
518
+ 'did not write.\n ' + where +
519
+ '\n Found: ' + content.slice(0, 8).join(', ') +
520
+ (8 < content.length ? ', ...' : '') +
521
+ '\n Generation OVERWRITES, so this would replace that content. ' +
522
+ 'Check the path;\n if the folder is right, declare it: `main: kit: ' +
523
+ 'target: \'' + ext.name + '\': output: adopt: true`.');
524
+ }
525
+ }
526
+ }
527
+ // Is `path` inside `folder`? Both must already be resolved. Path.relative
528
+ // rather than a string prefix, so that a sibling whose name merely STARTS
529
+ // with the folder's ('/x/sdk' vs '/x/sdk-provider') is not read as nested.
530
+ function folderContains(folder, path) {
531
+ const rel = node_path_1.default.relative(folder, path);
532
+ return '' !== rel && !rel.startsWith('..' + node_path_1.default.sep) && '..' !== rel &&
533
+ !node_path_1.default.isAbsolute(rel);
534
+ }
535
+ // The path from the destination back to the SDK project, which the target's
536
+ // own docs, scripts and live tests name (the companion test server lives in
537
+ // the SDK repo and is not published).
538
+ //
539
+ // It is DERIVED from the two resolved folders by default, which is only
540
+ // honest while the walk back crosses nothing the model does not name. It
541
+ // does not for `output: path: '../<repo>'`; it does for anything ascending
542
+ // further. voxgig-solardemo-sdk declares '../../seneca/solardemo-provider'
543
+ // and the derived inverse came out as '../../voxgig-sdk/voxgig-solardemo-sdk'
544
+ // — where `voxgig-sdk` is the name of the WORKSPACE DIRECTORY holding the SDK
545
+ // checkout on one machine, no part of the model. That string is committed
546
+ // into the destination's README.md and three test files, so a second
547
+ // developer with the same two repos under a differently named parent
548
+ // regenerates a spurious diff in tracked files and an instruction path that
549
+ // is wrong on the first machine.
550
+ //
551
+ // So a project that ascends further declares the walk back explicitly, as
552
+ // `output: sdkrel`, and is warned until it does.
553
+ function externalSdkRel(ext, root, log) {
554
+ const declared = String(ext.target.output?.sdkrel || '');
555
+ if ('' !== declared)
556
+ return declared;
557
+ const derived = node_path_1.default.relative(ext.folder, root).split(node_path_1.default.sep).join('/');
558
+ // Every segment that is not '..' is a real directory name on the way back
559
+ // down to the SDK project. The LAST is the project's own folder; any
560
+ // earlier one is a directory ABOVE it, which nothing in the model declares.
561
+ const named = derived.split('/').filter((seg) => '..' !== seg);
562
+ if (1 < named.length) {
563
+ log.warn({
564
+ point: 'external-sdkrel-derived', target: ext.name, sdkrel: derived,
565
+ note: ext.name + ': path back to the SDK project derived as \'' +
566
+ derived + '\', which names ' + (named.length - 1) +
567
+ ' directory(s) above the SDK project that the model does not ' +
568
+ 'declare — this machine\'s layout will be committed to the ' +
569
+ 'generated files. Declare `output: sdkrel` instead.'
570
+ });
571
+ }
572
+ return derived;
573
+ }
574
+ // The model the IN-TREE pass sees: the same model with the out-of-tree
575
+ // targets taken out.
576
+ //
577
+ // A shallow clone down to `target` only — the model is large, entities and
578
+ // features are shared with the external pass, and a deep copy would both
579
+ // cost and quietly break identity comparisons.
580
+ function withoutTargets(model, external) {
581
+ const drop = new Set(external.map((e) => e.name));
582
+ const targets = model?.main?.[apidef_1.KIT]?.target || {};
583
+ const kept = {};
584
+ for (const name of Object.keys(targets)) {
585
+ if (!drop.has(name)) {
586
+ kept[name] = targets[name];
587
+ }
588
+ }
589
+ return {
590
+ ...model,
591
+ main: {
592
+ ...model.main,
593
+ [apidef_1.KIT]: { ...model.main[apidef_1.KIT], target: kept },
594
+ },
595
+ };
596
+ }
370
597
  // Adapted from https://github.com/sindresorhus/import-fresh - Thanks!
371
598
  function clear(path) {
372
599
  if (null == path) {
@@ -1 +1 @@
1
- {"version":3,"file":"sdkgen.js","sourceRoot":"","sources":["../src/sdkgen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdkgen.js","sourceRoot":"","sources":["../src/sdkgen.ts"],"names":[],"mappings":"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"}