@rage-against-the-pixel/unity-cli 3.0.1 → 4.0.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 (60) hide show
  1. package/README.md +89 -223
  2. package/dist/android-sdk.js +8 -1
  3. package/dist/android-sdk.js.map +1 -1
  4. package/dist/cli.js +195 -506
  5. package/dist/cli.js.map +1 -1
  6. package/dist/failure-markers.d.ts +17 -0
  7. package/dist/failure-markers.js +46 -0
  8. package/dist/failure-markers.js.map +1 -0
  9. package/dist/github-actions-ci.d.ts +1 -0
  10. package/dist/github-actions-ci.js +17 -3
  11. package/dist/github-actions-ci.js.map +1 -1
  12. package/dist/index.d.ts +2 -2
  13. package/dist/index.js +2 -2
  14. package/dist/index.js.map +1 -1
  15. package/dist/license-client.d.ts +113 -2
  16. package/dist/license-client.js +715 -54
  17. package/dist/license-client.js.map +1 -1
  18. package/dist/logger-provider.d.ts +2 -0
  19. package/dist/logger-provider.js +3 -0
  20. package/dist/logger-provider.js.map +1 -1
  21. package/dist/logging.d.ts +6 -1
  22. package/dist/logging.js +66 -5
  23. package/dist/logging.js.map +1 -1
  24. package/dist/process-tracker.d.ts +71 -0
  25. package/dist/process-tracker.js +213 -0
  26. package/dist/process-tracker.js.map +1 -0
  27. package/dist/unity-cli.d.ts +97 -0
  28. package/dist/unity-cli.js +587 -0
  29. package/dist/unity-cli.js.map +1 -0
  30. package/dist/unity-editor.d.ts +25 -16
  31. package/dist/unity-editor.js +204 -107
  32. package/dist/unity-editor.js.map +1 -1
  33. package/dist/unity-installer.d.ts +134 -0
  34. package/dist/unity-installer.js +963 -0
  35. package/dist/unity-installer.js.map +1 -0
  36. package/dist/unity-logging.d.ts +16 -1
  37. package/dist/unity-logging.js +79 -40
  38. package/dist/unity-logging.js.map +1 -1
  39. package/dist/unity-project.d.ts +15 -0
  40. package/dist/unity-project.js +80 -0
  41. package/dist/unity-project.js.map +1 -1
  42. package/dist/unity-version.d.ts +4 -0
  43. package/dist/unity-version.js +40 -2
  44. package/dist/unity-version.js.map +1 -1
  45. package/dist/upm-cli.d.ts +8 -8
  46. package/dist/upm-cli.js +8 -8
  47. package/dist/upm-cli.js.map +1 -1
  48. package/dist/utilities.d.ts +27 -7
  49. package/dist/utilities.js +119 -63
  50. package/dist/utilities.js.map +1 -1
  51. package/dist/utp-benign.d.ts +13 -0
  52. package/dist/utp-benign.js +41 -0
  53. package/dist/utp-benign.js.map +1 -0
  54. package/dist/utp.d.ts +11 -2
  55. package/dist/utp.js +40 -3
  56. package/dist/utp.js.map +1 -1
  57. package/package.json +14 -15
  58. package/dist/unity-hub.d.ts +0 -127
  59. package/dist/unity-hub.js +0 -1327
  60. package/dist/unity-hub.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"unity-project.js","sourceRoot":"","sources":["../src/unity-project.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,4CAAoB;AACpB,gDAAwB;AACxB,mDAA+C;AAC/C,2CAAgD;AAEhD,MAAa,YAAY;IAsDO;IArD5B,6DAA6D;IACtD,MAAM,CAAU,cAAc,GAAa,CAAC,GAAG,EAAE;QACpD,QAAQ,YAAE,CAAC,IAAI,EAAE,EAAE,CAAC;YAChB,KAAK,OAAO,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;YACtC,KAAK,QAAQ,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YACrC,KAAK,YAAY,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YAC7C,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,GAAG,YAAE,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;QACvD,CAAC;IACL,CAAC,CAAC,EAAE,CAAC;IAEL,4EAA4E;IACrE,MAAM,CAAU,oBAAoB,GAA8B,CAAC,GAAG,EAAE;QAC3E,QAAQ,YAAE,CAAC,IAAI,EAAE,EAAE,CAAC;YAChB,KAAK,OAAO,CAAC,CAAC,OAAO;gBACjB,iBAAiB,EAAE,cAAc;gBACjC,OAAO,EAAE,SAAS;gBAClB,KAAK,EAAE,OAAO;gBACd,GAAG,EAAE,KAAK;aACb,CAAC;YACF,KAAK,QAAQ,CAAC,CAAC,OAAO;gBAClB,aAAa,EAAE,YAAY;gBAC3B,GAAG,EAAE,KAAK;gBACV,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,SAAS;gBACf,iBAAiB,EAAE,cAAc;gBACjC,KAAK,EAAE,OAAO;gBACd,QAAQ,EAAE,UAAU;aACvB,CAAC;YACF,KAAK,YAAY,CAAC,CAAC,OAAO;gBACtB,mBAAmB,EAAE,gBAAgB;gBACrC,SAAS,EAAE,4BAA4B;gBACvC,OAAO,EAAE,SAAS;gBAClB,GAAG,EAAE,KAAK;gBACV,IAAI,EAAE,SAAS;gBACf,iBAAiB,EAAE,cAAc;gBACjC,KAAK,EAAE,OAAO;gBACd,KAAK,EAAE,OAAO;aACjB,CAAC;YACF,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,GAAG,YAAE,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;QACvD,CAAC;IACL,CAAC,CAAC,EAAE,CAAC;IAEL,wEAAwE;IACxD,kBAAkB,CAAS;IAE3C,6CAA6C;IAC7B,OAAO,CAAe;IAEtC;;;;OAIG;IACH,YAA4B,WAAmB;QAAnB,gBAAW,GAAX,WAAW,CAAQ;QAC3C,YAAE,CAAC,UAAU,CAAC,WAAW,EAAE,YAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,CAAC,kBAAkB,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,iBAAiB,EAAE,oBAAoB,CAAC,CAAC;QAC/F,YAAE,CAAC,UAAU,CAAC,IAAI,CAAC,kBAAkB,EAAE,YAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,WAAW,GAAG,YAAE,CAAC,YAAY,CAAC,IAAI,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;QACtE,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,kKAAkK,CAAC,CAAC;QAEpM,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,MAAM,KAAK,CAAC,yDAAyD,WAAW,EAAE,CAAC,CAAC;QACxF,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;YACzB,MAAM,KAAK,CAAC,yDAAyD,WAAW,EAAE,CAAC,CAAC;QACxF,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,4BAAY,CAAC,KAAK,CAAC,MAAO,CAAC,OAAQ,EAAE,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAChG,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,cAAkC,SAAS;QACtE,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;YAC5B,MAAM,eAAe,GAAG,MAAM,IAAA,6BAAiB,EAAC,CAAC,WAAW,EAAE,IAAI,EAAE,oBAAoB,CAAC,CAAC,CAAC;YAC3F,WAAW,GAAG,cAAI,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7D,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC3C,CAAC;QAED,OAAO,IAAI,YAAY,CAAC,WAAW,CAAC,CAAC;IACzC,CAAC;;AA1FL,oCA2FC"}
1
+ {"version":3,"file":"unity-project.js","sourceRoot":"","sources":["../src/unity-project.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,4CAAoB;AACpB,gDAAwB;AACxB,mDAA+C;AAC/C,2CAAgD;AAEhD,MAAa,YAAY;IAsDO;IArD5B,6DAA6D;IACtD,MAAM,CAAU,cAAc,GAAa,CAAC,GAAG,EAAE;QACpD,QAAQ,YAAE,CAAC,IAAI,EAAE,EAAE,CAAC;YAChB,KAAK,OAAO,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;YACtC,KAAK,QAAQ,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YACrC,KAAK,YAAY,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YAC7C,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,GAAG,YAAE,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;QACvD,CAAC;IACL,CAAC,CAAC,EAAE,CAAC;IAEL,4EAA4E;IACrE,MAAM,CAAU,oBAAoB,GAA8B,CAAC,GAAG,EAAE;QAC3E,QAAQ,YAAE,CAAC,IAAI,EAAE,EAAE,CAAC;YAChB,KAAK,OAAO,CAAC,CAAC,OAAO;gBACjB,iBAAiB,EAAE,cAAc;gBACjC,OAAO,EAAE,SAAS;gBAClB,KAAK,EAAE,OAAO;gBACd,GAAG,EAAE,KAAK;aACb,CAAC;YACF,KAAK,QAAQ,CAAC,CAAC,OAAO;gBAClB,aAAa,EAAE,YAAY;gBAC3B,GAAG,EAAE,KAAK;gBACV,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,SAAS;gBACf,iBAAiB,EAAE,cAAc;gBACjC,KAAK,EAAE,OAAO;gBACd,QAAQ,EAAE,UAAU;aACvB,CAAC;YACF,KAAK,YAAY,CAAC,CAAC,OAAO;gBACtB,mBAAmB,EAAE,gBAAgB;gBACrC,SAAS,EAAE,4BAA4B;gBACvC,OAAO,EAAE,SAAS;gBAClB,GAAG,EAAE,KAAK;gBACV,IAAI,EAAE,SAAS;gBACf,iBAAiB,EAAE,cAAc;gBACjC,KAAK,EAAE,OAAO;gBACd,KAAK,EAAE,OAAO;aACjB,CAAC;YACF,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,GAAG,YAAE,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;QACvD,CAAC;IACL,CAAC,CAAC,EAAE,CAAC;IAEL,wEAAwE;IACxD,kBAAkB,CAAS;IAE3C,6CAA6C;IAC7B,OAAO,CAAe;IAEtC;;;;OAIG;IACH,YAA4B,WAAmB;QAAnB,gBAAW,GAAX,WAAW,CAAQ;QAC3C,YAAE,CAAC,UAAU,CAAC,WAAW,EAAE,YAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,CAAC,kBAAkB,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,iBAAiB,EAAE,oBAAoB,CAAC,CAAC;QAC/F,YAAE,CAAC,UAAU,CAAC,IAAI,CAAC,kBAAkB,EAAE,YAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,WAAW,GAAG,YAAE,CAAC,YAAY,CAAC,IAAI,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;QACtE,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,kKAAkK,CAAC,CAAC;QAEpM,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,MAAM,KAAK,CAAC,yDAAyD,WAAW,EAAE,CAAC,CAAC;QACxF,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;YACzB,MAAM,KAAK,CAAC,yDAAyD,WAAW,EAAE,CAAC,CAAC;QACxF,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,IAAI,4BAAY,CAAC,KAAK,CAAC,MAAO,CAAC,OAAQ,EAAE,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IAChG,CAAC;IAED;;;OAGG;IACI,sBAAsB;QACzB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,MAAM,OAAO,GAAG,CAAC,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC;QAExD,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAG,CAAC;YAC3B,IAAI,OAAoB,CAAC;YAEzB,IAAI,CAAC;gBACD,OAAO,GAAG,YAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3D,CAAC;YAAC,MAAM,CAAC;gBACL,SAAS;YACb,CAAC;YAED,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC1B,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;gBAE7C,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;oBACtB,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACxB,SAAS;gBACb,CAAC;gBAED,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACpD,SAAS;gBACb,CAAC;gBAED,MAAM,MAAM,GAAG,YAAY,CAAC,sBAAsB,CAAC,YAAY,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,CAAC;gBAElG,IAAI,MAAM,EAAE,CAAC;oBACT,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACxB,CAAC;YACL,CAAC;QACL,CAAC;QAED,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC;IACxB,CAAC;IAED;;;;OAIG;IACK,MAAM,CAAC,qBAAqB,CAAC,QAAgB;QACjD,IAAI,EAAsB,CAAC;QAE3B,IAAI,CAAC;YACD,EAAE,GAAG,YAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YAChC,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAChC,MAAM,UAAU,GAAG,YAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAE5D,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,YAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,EAAE,CAAC;gBACpH,OAAO,EAAE,CAAC;YACd,CAAC;YAED,OAAO,YAAE,CAAC,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QACxC,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,EAAE,CAAC;QACd,CAAC;gBAAS,CAAC;YACP,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;gBACnB,YAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;YACrB,CAAC;QACL,CAAC;IACL,CAAC;IAED,+DAA+D;IACvD,MAAM,CAAU,gBAAgB,GAAgC;QACpE,CAAC,EAAE,eAAe;QAClB,CAAC,EAAE,mBAAmB;QACtB,CAAC,EAAE,KAAK;QACR,EAAE,EAAE,SAAS;QACb,EAAE,EAAE,qBAAqB;QACzB,EAAE,EAAE,OAAO;QACX,EAAE,EAAE,WAAW;QACf,EAAE,EAAE,mBAAmB;QACvB,EAAE,EAAE,MAAM;QACV,EAAE,EAAE,UAAU;KACjB,CAAC;IAEF,kFAAkF;IAC1E,MAAM,CAAC,sBAAsB,CAAC,KAAa;QAC/C,8FAA8F;QAC9F,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,uDAAuD,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,yBAAyB,CAAC,EAAE,CAAC;YACzH,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,MAAM,KAAK,GAAG,gCAAgC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3D,OAAO,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,eAAe,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7G,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,cAAkC,SAAS;QACtE,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;YAC5B,MAAM,eAAe,GAAG,MAAM,IAAA,6BAAiB,EAAC,CAAC,WAAW,EAAE,IAAI,EAAE,oBAAoB,CAAC,CAAC,CAAC;YAC3F,WAAW,GAAG,cAAI,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACzD,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7D,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC3C,CAAC;QAED,OAAO,IAAI,YAAY,CAAC,WAAW,CAAC,CAAC;IACzC,CAAC;;AAvLL,oCAwLC"}
@@ -22,6 +22,10 @@ export declare class UnityVersion {
22
22
  equals(other: UnityVersion): boolean;
23
23
  private static readonly UNITY_RELEASE_PATTERN;
24
24
  private static readonly VERSION_TOKEN_PATTERN;
25
+ /**
26
+ * Parses trailing " (hexchangeset)" without regex to avoid ReDoS on hostile input.
27
+ */
28
+ private static tryParseEmbeddedChangeset;
25
29
  private static readonly UNITY_CHANNEL_ORDER;
26
30
  private static createSemVer;
27
31
  private static extractReleaseVersions;
@@ -44,6 +44,12 @@ class UnityVersion {
44
44
  semVer;
45
45
  logger = logging_1.Logger.instance;
46
46
  constructor(version, changeset = undefined, architecture = undefined) {
47
+ // Accept ProjectVersion / matrix style: "5.6.7f1 (e80cc3114ac1)" (no regex: avoid ReDoS).
48
+ const embedded = UnityVersion.tryParseEmbeddedChangeset(version);
49
+ if (embedded) {
50
+ version = embedded.version;
51
+ changeset = changeset ?? embedded.changeset;
52
+ }
47
53
  this.version = version;
48
54
  this.changeset = changeset;
49
55
  this.semVer = UnityVersion.createSemVer(version);
@@ -102,9 +108,12 @@ class UnityVersion {
102
108
  this.logger.debug(`Found Unity ${latest.version}`);
103
109
  return new UnityVersion(latest.version, null, this.architecture);
104
110
  }
111
+ throw new Error(`No Unity release matching ${this.version} for channel(s) [${channels.join(', ')}]. ` +
112
+ (channels.length === 1 && channels[0] === 'f'
113
+ ? `No stable (f) release for ${this.version}; use --channel b/a or a fully-qualified version (e.g. 6000.6.0b7).`
114
+ : `Try a different --channel or a fully-qualified version.`));
105
115
  }
106
- this.logger.debug(`No matching Unity version found for ${this.version}`);
107
- return this;
116
+ throw new Error(`No matching Unity version found for ${this.version}`);
108
117
  }
109
118
  satisfies(version) {
110
119
  return (0, semver_1.satisfies)(version.semVer, `^${this.semVer.version}`);
@@ -133,6 +142,35 @@ class UnityVersion {
133
142
  }
134
143
  static UNITY_RELEASE_PATTERN = /^(\d{1,4})\.(\d+)\.(\d+)([abcfpx])(\d+)$/;
135
144
  static VERSION_TOKEN_PATTERN = /^(\d{1,4})(?:\.(\d+|x|\*))?(?:\.(\d+|x|\*))?/;
145
+ /**
146
+ * Parses trailing " (hexchangeset)" without regex to avoid ReDoS on hostile input.
147
+ */
148
+ static tryParseEmbeddedChangeset(raw) {
149
+ if (!raw.endsWith(')')) {
150
+ return null;
151
+ }
152
+ const open = raw.lastIndexOf('(');
153
+ if (open <= 0 || raw[open - 1] !== ' ') {
154
+ return null;
155
+ }
156
+ const hex = raw.slice(open + 1, -1);
157
+ if (hex.length === 0) {
158
+ return null;
159
+ }
160
+ for (let i = 0; i < hex.length; i++) {
161
+ const c = hex.charCodeAt(i);
162
+ const isHex = (c >= 48 && c <= 57) || // 0-9
163
+ (c >= 97 && c <= 102) || // a-f
164
+ (c >= 65 && c <= 70); // A-F
165
+ if (!isHex) {
166
+ return null;
167
+ }
168
+ }
169
+ return {
170
+ version: raw.slice(0, open - 1).trimEnd(),
171
+ changeset: hex,
172
+ };
173
+ }
136
174
  static UNITY_CHANNEL_ORDER = {
137
175
  a: 0,
138
176
  b: 1,
@@ -1 +1 @@
1
- {"version":3,"file":"unity-version.js","sourceRoot":"","sources":["../src/unity-version.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unity-version.js","sourceRoot":"","sources":["../src/unity-version.ts"],"names":[],"mappings":"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"}
package/dist/upm-cli.d.ts CHANGED
@@ -14,11 +14,11 @@ export interface UpmPackOptions {
14
14
  packageDirectory?: string;
15
15
  }
16
16
  /**
17
- * Managed Unity Package Manager CLI (unity-cli–installed `UnityPackageManager`), modeled after {@link UnityHub}:
17
+ * Managed Unity Package Manager CLI (unity-cli–installed `UnityPackageManager`):
18
18
  * parameterless constructor resolves roots and executable preference, {@link Install} manages downloads, {@link Exec} runs the binary.
19
19
  */
20
20
  export declare class UpmCli {
21
- /** Root directory for managed installs (~/.unity-cli/upm), analogous to {@link UnityHub.rootDirectory}. */
21
+ /** Root directory for managed installs (~/.unity-cli/upm). */
22
22
  readonly managedRoot: string;
23
23
  private readonly logger;
24
24
  constructor();
@@ -37,7 +37,7 @@ export declare class UpmCli {
37
37
  private getPlatformId;
38
38
  private validateVersionFormat;
39
39
  private findPrimaryExecutable;
40
- /** Optional executable override (mirrors `UNITY_HUB_PATH` for {@link UnityHub}). */
40
+ /** Optional executable override (mirrors `UNITY_CLI_PATH` for the official Unity CLI). */
41
41
  private getExecutablePathOverride;
42
42
  private executableOverrideIsUsable;
43
43
  /**
@@ -50,16 +50,16 @@ export declare class UpmCli {
50
50
  ResolveManagedPrimaryPath(version?: string): string | undefined;
51
51
  /**
52
52
  * Resolved path used to spawn the UPM CLI: `UPM_CLI_PATH` override when set, otherwise the managed primary binary.
53
- * @throws If nothing usable is installed (mirrors Hub/Editor behavior when the executable cannot be used).
53
+ * @throws If nothing usable is installed.
54
54
  */
55
55
  GetExecutablePath(): string;
56
- /** Same role as {@link UnityHub.executable}: path used to spawn the UPM CLI (may reflect `UPM_CLI_PATH` or the managed install). */
56
+ /** Path used to spawn the UPM CLI (may reflect `UPM_CLI_PATH` or the managed install). */
57
57
  get executable(): string;
58
58
  GetLatestReleaseTag(): Promise<string>;
59
59
  /** True if `latestTag` is newer than the installed managed release, or nothing is installed yet. */
60
60
  IsUpdateAvailable(latestTag: string): boolean;
61
61
  /**
62
- * Installs or updates the managed UPM CLI (mirrors {@link UnityHub.Install} for the Hub itself).
62
+ * Installs or updates the managed UPM CLI.
63
63
  * @returns Installed release tag (e.g. v9.27.0).
64
64
  */
65
65
  Install(options?: EnsureUpmInstalledOptions): Promise<string>;
@@ -67,11 +67,11 @@ export declare class UpmCli {
67
67
  * When running in an interactive terminal, may prompt to install a missing UPM CLI or update to the latest CDN release.
68
68
  * When not interactive, logs a warning if the running binary is older than the CDN latest (no install).
69
69
  * Compares the running binary ({@link Version}) to {@link GetLatestReleaseTag} (including when {@code UPM_CLI_PATH} overrides the managed install).
70
- * Call before {@link GetExecutablePath} / {@link Exec} for Hub-style optional install/update (e.g. pack).
70
+ * Call before {@link GetExecutablePath} / {@link Exec} for an optional install/update (e.g. pack).
71
71
  */
72
72
  PromptInstallOrUpdateWhenInteractive(): Promise<void>;
73
73
  /**
74
- * Executes the UPM CLI with the given arguments (mirrors {@link UnityHub.Exec}).
74
+ * Executes the UPM CLI with the given arguments.
75
75
  */
76
76
  Exec(args: string[], options?: ExecOptions): Promise<string>;
77
77
  /**
package/dist/upm-cli.js CHANGED
@@ -41,11 +41,11 @@ const semver_1 = require("semver");
41
41
  const logging_1 = require("./logging");
42
42
  const utilities_1 = require("./utilities");
43
43
  /**
44
- * Managed Unity Package Manager CLI (unity-cli–installed `UnityPackageManager`), modeled after {@link UnityHub}:
44
+ * Managed Unity Package Manager CLI (unity-cli–installed `UnityPackageManager`):
45
45
  * parameterless constructor resolves roots and executable preference, {@link Install} manages downloads, {@link Exec} runs the binary.
46
46
  */
47
47
  class UpmCli {
48
- /** Root directory for managed installs (~/.unity-cli/upm), analogous to {@link UnityHub.rootDirectory}. */
48
+ /** Root directory for managed installs (~/.unity-cli/upm). */
49
49
  managedRoot;
50
50
  logger = logging_1.Logger.instance;
51
51
  constructor() {
@@ -175,7 +175,7 @@ class UpmCli {
175
175
  }
176
176
  throw new Error(`Could not find UnityPackageManager binary under ${installDir}`);
177
177
  }
178
- /** Optional executable override (mirrors `UNITY_HUB_PATH` for {@link UnityHub}). */
178
+ /** Optional executable override (mirrors `UNITY_CLI_PATH` for the official Unity CLI). */
179
179
  getExecutablePathOverride() {
180
180
  const p = process.env.UPM_CLI_PATH?.trim();
181
181
  return p && p.length > 0 ? path.normalize(p) : undefined;
@@ -231,7 +231,7 @@ class UpmCli {
231
231
  }
232
232
  /**
233
233
  * Resolved path used to spawn the UPM CLI: `UPM_CLI_PATH` override when set, otherwise the managed primary binary.
234
- * @throws If nothing usable is installed (mirrors Hub/Editor behavior when the executable cannot be used).
234
+ * @throws If nothing usable is installed.
235
235
  */
236
236
  GetExecutablePath() {
237
237
  const overridePath = this.getExecutablePathOverride();
@@ -246,7 +246,7 @@ class UpmCli {
246
246
  fs.accessSync(managed, fs.constants.R_OK | fs.constants.X_OK);
247
247
  return managed;
248
248
  }
249
- /** Same role as {@link UnityHub.executable}: path used to spawn the UPM CLI (may reflect `UPM_CLI_PATH` or the managed install). */
249
+ /** Path used to spawn the UPM CLI (may reflect `UPM_CLI_PATH` or the managed install). */
250
250
  get executable() {
251
251
  return this.GetExecutablePath();
252
252
  }
@@ -271,7 +271,7 @@ class UpmCli {
271
271
  return latestTag.trim() !== current.trim();
272
272
  }
273
273
  /**
274
- * Installs or updates the managed UPM CLI (mirrors {@link UnityHub.Install} for the Hub itself).
274
+ * Installs or updates the managed UPM CLI.
275
275
  * @returns Installed release tag (e.g. v9.27.0).
276
276
  */
277
277
  async Install(options) {
@@ -355,7 +355,7 @@ class UpmCli {
355
355
  * When running in an interactive terminal, may prompt to install a missing UPM CLI or update to the latest CDN release.
356
356
  * When not interactive, logs a warning if the running binary is older than the CDN latest (no install).
357
357
  * Compares the running binary ({@link Version}) to {@link GetLatestReleaseTag} (including when {@code UPM_CLI_PATH} overrides the managed install).
358
- * Call before {@link GetExecutablePath} / {@link Exec} for Hub-style optional install/update (e.g. pack).
358
+ * Call before {@link GetExecutablePath} / {@link Exec} for an optional install/update (e.g. pack).
359
359
  */
360
360
  async PromptInstallOrUpdateWhenInteractive() {
361
361
  const overrideUsable = this.executableOverrideIsUsable();
@@ -410,7 +410,7 @@ class UpmCli {
410
410
  }
411
411
  }
412
412
  /**
413
- * Executes the UPM CLI with the given arguments (mirrors {@link UnityHub.Exec}).
413
+ * Executes the UPM CLI with the given arguments.
414
414
  */
415
415
  async Exec(args, options = { silent: this.logger.logLevel > logging_1.LogLevel.CI, showCommand: this.logger.logLevel <= logging_1.LogLevel.CI }) {
416
416
  const exe = this.GetExecutablePath();
@@ -1 +1 @@
1
- {"version":3,"file":"upm-cli.js","sourceRoot":"","sources":["../src/upm-cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"upm-cli.js","sourceRoot":"","sources":["../src/upm-cli.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,uCAAyB;AACzB,2CAA6B;AAC7B,mCAMgB;AAChB,uCAGmB;AACnB,2CAWqB;AAiBrB;;;GAGG;AACH,MAAa,MAAM;IACf,8DAA8D;IAC9C,WAAW,CAAS;IAEnB,MAAM,GAAW,gBAAM,CAAC,QAAQ,CAAC;IAElD;QACI,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;IACpE,CAAC;IAEO,MAAM,CAAC,aAAa;QACxB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,EAAE,CAAC;QACtD,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC;QACpD,CAAC;QACD,OAAO,wCAAwC,CAAC;IACpD,CAAC;IAED;;;OAGG;IACK,MAAM,CAAC,uBAAuB,CAAC,OAAe,EAAE,GAAW,EAAE,QAAgB;QACjF,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;QACvD,OAAO,IAAI,GAAG,CAAC,YAAY,kBAAkB,CAAC,GAAG,CAAC,IAAI,kBAAkB,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC;IACrG,CAAC;IAEO,MAAM,CAAC,oBAAoB,CAAC,OAAe;QAC/C,OAAO,IAAI,GAAG,CAAC,YAAY,EAAE,IAAI,GAAG,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IACjF,CAAC;IAEO,MAAM,CAAC,eAAe,CAAC,OAAe;QAC1C,MAAM,UAAU,GAAG,IAAA,cAAK,EAAC,OAAO,CAAC,CAAC;QAClC,IAAI,UAAU,EAAE,CAAC;YACb,OAAO,UAAU,CAAC;QACtB,CAAC;QACD,MAAM,OAAO,GAAG,IAAA,eAAM,EAAC,OAAO,CAAC,CAAC;QAChC,OAAO,OAAO,EAAE,OAAO,CAAC;IAC5B,CAAC;IAEO,MAAM,CAAC,2BAA2B,CAAC,IAAY;QACnD,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QACtB,IAAI,CAAC,CAAC,EAAE,CAAC;YACL,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,MAAM,MAAM,GAAG,IAAA,cAAK,EAAC,CAAC,CAAC,CAAC;QACxB,IAAI,MAAM,EAAE,CAAC;YACT,MAAM,MAAM,GAAG,IAAA,cAAK,EAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACpC,IAAI,MAAM,IAAI,IAAA,cAAK,EAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;gBAClC,OAAO,MAAM,CAAC;YAClB,CAAC;QACL,CAAC;QACD,MAAM,OAAO,GAAG,IAAA,eAAM,EAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,OAAO,IAAI,IAAA,cAAK,EAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,OAAO,OAAO,CAAC;QACnB,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,MAAM,CAAC,qBAAqB,CAAC,MAAc;QAC/C,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;QAC9B,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QAChE,CAAC;QACD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACtF,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,MAAM,OAAO,GAAG,MAAM,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC;YAC9D,IAAI,OAAO,EAAE,CAAC;gBACV,OAAO,OAAO,CAAC;YACnB,CAAC;QACL,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,CAAC,2BAA2B,CAAC,OAAO,CAAC,CAAC;QAC7D,IAAI,QAAQ,EAAE,CAAC;YACX,OAAO,QAAQ,CAAC;QACpB,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,oCAAoC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACnF,CAAC;IAEO,oBAAoB,CAAC,OAAe;QACxC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QACzB,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9C,MAAM,IAAI,KAAK,CAAC,6CAA6C,OAAO,EAAE,CAAC,CAAC;QAC5E,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACtC,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACpD,MAAM,UAAU,GAAG,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACjG,IAAI,WAAW,KAAK,YAAY,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACtE,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACzE,CAAC;QACD,OAAO,GAAG,CAAC;IACf,CAAC;IAEO,yBAAyB;QAC7B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;IAC9D,CAAC;IAEO,aAAa;QACjB,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC;QAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QAE1B,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACnB,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;gBACnB,OAAO,eAAe,CAAC;YAC3B,CAAC;YACD,OAAO,aAAa,CAAC;QACzB,CAAC;QAED,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACpB,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;gBACnB,OAAO,aAAa,CAAC;YACzB,CAAC;YACD,OAAO,WAAW,CAAC;QACvB,CAAC;QAED,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;YACnB,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;gBACnB,OAAO,aAAa,CAAC;YACzB,CAAC;YACD,OAAO,WAAW,CAAC;QACvB,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,qCAAqC,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;IACzE,CAAC;IAEO,qBAAqB,CAAC,OAAe;QACzC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QACzB,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAA,cAAK,EAAC,CAAC,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,mCAAmC,OAAO,gEAAgE,CAAC,CAAC;QAChI,CAAC;IACL,CAAC;IAEO,qBAAqB,CAAC,UAAkB;QAC5C,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,yBAAyB,CAAC,CAAC;YAC7D,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACrB,OAAO,GAAG,CAAC;YACf,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,qBAAqB,CAAC,CAAC;YACzD,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACrB,OAAO,GAAG,CAAC;YACf,CAAC;QACL,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,mDAAmD,UAAU,EAAE,CAAC,CAAC;IACrF,CAAC;IAED,0FAA0F;IAClF,yBAAyB;QAC7B,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC;QAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7D,CAAC;IAEO,0BAA0B;QAC9B,MAAM,CAAC,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAC3C,IAAI,CAAC,CAAC,EAAE,CAAC;YACL,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,IAAI,CAAC;YACD,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACxD,OAAO,IAAI,CAAC;QAChB,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAED;;OAEG;IACI,sBAAsB;QACzB,MAAM,WAAW,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACrD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAC9B,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;YAC5D,IAAI,CAAC,OAAO,EAAE,CAAC;gBACX,OAAO,SAAS,CAAC;YACrB,CAAC;YACD,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;YACpC,OAAO,OAAO,CAAC;QACnB,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,SAAS,CAAC;QACrB,CAAC;IACL,CAAC;IAED;;OAEG;IACI,yBAAyB,CAAC,OAAgB;QAC7C,IAAI,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAEzD,IAAI,CAAC,CAAC,EAAE,CAAC;YACL,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;QAChD,IAAI,CAAC;YACD,OAAO,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;QAClD,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,SAAS,CAAC;QACrB,CAAC;IACL,CAAC;IAED;;;OAGG;IACI,iBAAiB;QACpB,MAAM,YAAY,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACtD,IAAI,YAAY,EAAE,CAAC;YACf,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACnE,OAAO,YAAY,CAAC;QACxB,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACjD,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;QACpF,CAAC;QACD,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC9D,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,0FAA0F;IAC1F,IAAW,UAAU;QACjB,OAAO,IAAI,CAAC,iBAAiB,EAAE,CAAC;IACpC,CAAC;IAEM,KAAK,CAAC,mBAAmB;QAC5B,MAAM,GAAG,GAAG,MAAM,CAAC,aAAa,EAAE,CAAC;QACnC,MAAM,SAAS,GAAG,MAAM,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,CAAC,MAAM,IAAA,wBAAY,EAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACvD,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QACpC,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,oGAAoG;IAC7F,iBAAiB,CAAC,SAAiB;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC9C,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,MAAM,iBAAiB,GAAG,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAC1D,MAAM,gBAAgB,GAAG,MAAM,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QAC3D,IAAI,iBAAiB,IAAI,gBAAgB,EAAE,CAAC;YACxC,OAAO,IAAA,gBAAO,EAAC,gBAAgB,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAC5D,CAAC;QACD,OAAO,SAAS,CAAC,IAAI,EAAE,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC;IAC/C,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,OAAO,CAAC,OAAmC;QACpD,MAAM,GAAG,GAAG,MAAM,CAAC,aAAa,EAAE,CAAC;QACnC,IAAI,OAAO,GAAG,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAEvC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnC,OAAO,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC/C,CAAC;QAED,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QAEzB,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QACtD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,0BAA0B,CAAC,CAAC;QAErE,IAAI,OAAO,EAAE,eAAe,KAAK,KAAK,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAClE,IAAI,CAAC;gBACD,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;gBACvC,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;gBAC9C,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAE,GAAG,WAAW,IAAI,EAAE,MAAM,CAAC,CAAC;gBAC1F,OAAO,OAAO,CAAC;YACnB,CAAC;YAAC,MAAM,CAAC;gBACL,YAAY;YAChB,CAAC;QACL,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACtC,MAAM,OAAO,GAAG,OAAO,QAAQ,MAAM,CAAC;QACtC,MAAM,MAAM,GAAG,MAAM,CAAC,uBAAuB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACrE,MAAM,WAAW,GAAG,MAAM,CAAC,uBAAuB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,OAAO,SAAS,CAAC,CAAC;QAEtF,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAA,sBAAU,GAAE,EAAE,iBAAiB,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACxE,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAChD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;QACrD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,GAAG,OAAO,SAAS,CAAC,CAAC;QAEtE,IAAI,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sBAAsB,OAAO,KAAK,QAAQ,MAAM,CAAC,CAAC;YACnE,MAAM,IAAA,wBAAY,EAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACpC,MAAM,IAAA,wBAAY,EAAC,WAAW,EAAE,YAAY,CAAC,CAAC;YAE9C,MAAM,eAAe,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAClF,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC;YACpE,IAAI,CAAC,YAAY,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAC,+BAA+B,YAAY,EAAE,CAAC,CAAC;YACnE,CAAC;YAED,MAAM,UAAU,GAAG,CAAC,MAAM,IAAA,yBAAa,EAAC,OAAO,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;YAChE,IAAI,UAAU,KAAK,YAAY,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,8CAA8C,YAAY,SAAS,UAAU,EAAE,CAAC,CAAC;YACrG,CAAC;YAED,MAAM,IAAA,2BAAe,EAAC,UAAU,CAAC,CAAC;YAClC,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACzD,MAAM,IAAA,4BAAgB,EAAC,OAAO,EAAE,UAAU,EAAE;gBACxC,QAAQ,EAAE,gBAAgB;gBAC1B,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC;aAC5C,EAAE;gBACC,MAAM,EAAE,KAAK;gBACb,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,kBAAQ,CAAC,KAAK;aACvD,CAAC,CAAC;YAEH,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;YACvD,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;gBAC/B,IAAI,CAAC;oBACD,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;gBACjC,CAAC;gBAAC,MAAM,CAAC;oBACL,SAAS;gBACb,CAAC;YACL,CAAC;YAED,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;YACjD,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC7D,IAAI,CAAC;oBACD,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;gBACrC,CAAC;gBAAC,MAAM,CAAC;oBACL,SAAS;gBACb,CAAC;YACL,CAAC;YAED,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YACjF,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAC9C,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAE,GAAG,WAAW,IAAI,EAAE,MAAM,CAAC,CAAC;YAE1F,OAAO,OAAO,CAAC;QACnB,CAAC;gBAAS,CAAC;YACP,MAAM,IAAA,2BAAe,EAAC,QAAQ,CAAC,CAAC;QACpC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,oCAAoC;QAC7C,MAAM,cAAc,GAAG,IAAI,CAAC,0BAA0B,EAAE,CAAC;QACzD,MAAM,UAAU,GAAG,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACpD,MAAM,aAAa,GAAG,cAAc,IAAI,UAAU,KAAK,SAAS,CAAC;QAEjE,IAAI,CAAC,aAAa,EAAE,CAAC;YACjB,IAAI,IAAA,wCAA4B,GAAE,EAAE,CAAC;gBACjC,MAAM,OAAO,GAAG,MAAM,IAAA,uBAAW,EAC7B,4DAA4D,EAC5D,IAAI,CACP,CAAC;gBACF,IAAI,OAAO,EAAE,CAAC;oBACV,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,CAAC;gBACnD,CAAC;YACL,CAAC;YACD,OAAO;QACX,CAAC;QAED,IAAI,CAAC;YACD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACnD,MAAM,SAAS,GAAG,MAAM,CAAC,2BAA2B,CAAC,SAAS,CAAC,CAAC;YAChE,IAAI,CAAC,SAAS,EAAE,CAAC;gBACb,OAAO;YACX,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;YAC1C,IAAI,IAAA,gBAAO,EAAC,SAAS,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxC,OAAO;YACX,CAAC;YAED,MAAM,aAAa,GAAG,cAAc,CAAC;YAErC,IAAI,CAAC,IAAA,wCAA4B,GAAE,EAAE,CAAC;gBAClC,IAAI,aAAa,EAAE,CAAC;oBAChB,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,sCAAsC,YAAY,CAAC,OAAO,SAAS,SAAS,sJAAsJ,CACrO,CAAC;gBACN,CAAC;qBAAM,CAAC;oBACJ,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,gBAAgB,YAAY,CAAC,OAAO,uCAAuC,SAAS,gFAAgF,CACvK,CAAC;gBACN,CAAC;gBACD,OAAO;YACX,CAAC;YAED,MAAM,MAAM,GAAG,aAAa;gBACxB,CAAC,CAAC,uCAAuC,YAAY,CAAC,OAAO,SAAS,SAAS,wJAAwJ;gBACvO,CAAC,CAAC,yCAAyC,YAAY,CAAC,OAAO,OAAO,SAAS,oBAAoB,CAAC;YAExG,MAAM,YAAY,GAAG,MAAM,IAAA,uBAAW,EAAC,MAAM,EAAE,CAAC,aAAa,CAAC,CAAC;YAC/D,IAAI,CAAC,YAAY,EAAE,CAAC;gBAChB,OAAO;YACX,CAAC;YAED,MAAM,IAAI,CAAC,OAAO,CAAC;gBACf,OAAO,EAAE,SAAS;gBAClB,eAAe,EAAE,KAAK;aACzB,CAAC,CAAC;YAEH,IAAI,aAAa,EAAE,CAAC;gBAChB,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,qBAAqB,SAAS,UAAU,IAAI,CAAC,WAAW,iFAAiF,CAC5I,CAAC;YACN,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wCAAwC,KAAK,EAAE,CAAC,CAAC;QACvE,CAAC;IACL,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,IAAI,CAAC,IAAc,EAAE,UAAuB,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,GAAG,kBAAQ,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,kBAAQ,CAAC,EAAE,EAAE;QACrJ,MAAM,GAAG,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACrC,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC9D,CAAC;QACD,OAAO,IAAA,gBAAI,EAAC,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACpC,CAAC;IAED;;;OAGG;IACI,KAAK,CAAC,OAAO,CAAC,kBAA2B;QAC5C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,EAAE;YACvC,MAAM,EAAE,IAAI;YACZ,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,kBAAQ,CAAC,KAAK;SACvD,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;QAClD,IAAI,kBAAkB,KAAK,SAAS,IAAI,kBAAkB,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3E,MAAM,GAAG,GAAG,kBAAkB,CAAC,IAAI,EAAE,CAAC;YACtC,MAAM,QAAQ,GAAG,MAAM,CAAC,2BAA2B,CAAC,GAAG,CAAC,CAAC;YACzD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CAAC,0CAA0C,kBAAkB,EAAE,CAAC,CAAC;YACpF,CAAC;YACD,IAAI,IAAA,gBAAO,EAAC,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBACnC,MAAM,IAAI,KAAK,CACX,oDAAoD,OAAO,CAAC,OAAO,0BAA0B,QAAQ,CAAC,OAAO,KAAK,kBAAkB,IAAI,CAC3I,CAAC;YACN,CAAC;QACL,CAAC;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,IAAI,CAAC,OAAuB,EAAE,WAAyB;QAChE,MAAM,KAAK,GAAG,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;QAE5C,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACxE,CAAC;QAED,MAAM,IAAI,GAAa,EAAE,CAAC;QAE1B,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,kBAAQ,CAAC,KAAK,EAAE,CAAC;YAC1C,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,EAAE,qBAAqB,EAAE,GAAG,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,mBAAmB,EAAE,KAAK,CAAC,CAAC;QAC9C,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;QAEzC,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;QACrC,CAAC;QAED,MAAM,GAAG,GAAG,OAAO,CAAC,gBAAgB,EAAE,IAAI,EAAE,CAAC;QAE7C,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IACxC,CAAC;CACJ;AApeD,wBAoeC"}
@@ -76,6 +76,17 @@ export declare function extractZipNative(zipPath: string, destDir: string, pathT
76
76
  * @throws If the response status is not 200 or the request fails.
77
77
  */
78
78
  export declare function HttpsGetText(url: string): Promise<string>;
79
+ export interface DownloadOptions {
80
+ /** The expected SHA-256 (hex) of the file; the download fails and is deleted when it does not match. */
81
+ sha256?: string;
82
+ /**
83
+ * An integrity value from the Unity Releases API, such as `md5-<base64>` or `sha256-<base64>`, checked the same way.
84
+ * Unity base64-encodes either the hex digest or the raw digest bytes; both are accepted.
85
+ */
86
+ integrity?: string;
87
+ /** Creates the file executable (0o755) instead of 0o644. */
88
+ executable?: boolean;
89
+ }
79
90
  /**
80
91
  * Computes the SHA-256 digest of a file as a lowercase hex string.
81
92
  */
@@ -85,9 +96,23 @@ export declare function Sha256FileHex(filePath: string): Promise<string>;
85
96
  * Requires HTTP status 200 before writing. Verifies the file is readable after download.
86
97
  * @param url The URL to download from.
87
98
  * @param downloadPath The path to save the downloaded file.
88
- * @throws An error if the download fails or the file is not accessible after download.
99
+ * @param options Integrity and mode options.
100
+ * @throws An error if the download fails, its SHA-256 does not match, or the file is not accessible after download.
101
+ */
102
+ export declare function DownloadFile(url: string, downloadPath: string, options?: DownloadOptions): Promise<void>;
103
+ /**
104
+ * Computes a file digest as a lowercase hex string.
105
+ * @param filePath The file to hash.
106
+ * @param algorithm A Node crypto hash name, such as sha256 or md5.
89
107
  */
90
- export declare function DownloadFile(url: string, downloadPath: string): Promise<void>;
108
+ export declare function HashFileHex(filePath: string, algorithm: string): Promise<string>;
109
+ /**
110
+ * Redacts known secrets, email addresses and long token-like strings (JWTs, access and refresh tokens) from log text.
111
+ * Each line is split on separator characters and every piece is checked on its own, which stays linear on any input.
112
+ * @param text The text to sanitize.
113
+ * @param secrets Literal values to redact.
114
+ */
115
+ export declare function SanitizeLogText(text: string, secrets?: readonly string[]): string;
91
116
  /**
92
117
  * Deletes a directory and its contents if it exists.
93
118
  * @param targetPath The path of the directory to delete.
@@ -156,11 +181,6 @@ export declare function TestFileAccess(filePath: string, flags: number): Promise
156
181
  * @param signal The signal to use for killing the process. Defaults to 'SIGTERM'.
157
182
  */
158
183
  export declare function KillProcess(procInfo: ProcInfo, signal?: NodeJS.Signals): Promise<void>;
159
- /**
160
- * Kills all child processes of the given process.
161
- * @param procInfo The process information of the parent process.
162
- */
163
- export declare function KillChildProcesses(procInfo: ProcInfo): Promise<void>;
164
184
  /**
165
185
  * Checks if the current process is running with elevated (administrator) privileges.
166
186
  * @returns True if the process is elevated, false otherwise.
package/dist/utilities.js CHANGED
@@ -46,6 +46,8 @@ exports.extractZipNative = extractZipNative;
46
46
  exports.HttpsGetText = HttpsGetText;
47
47
  exports.Sha256FileHex = Sha256FileHex;
48
48
  exports.DownloadFile = DownloadFile;
49
+ exports.HashFileHex = HashFileHex;
50
+ exports.SanitizeLogText = SanitizeLogText;
49
51
  exports.DeleteDirectory = DeleteDirectory;
50
52
  exports.ReadFileContents = ReadFileContents;
51
53
  exports.GetTempDir = GetTempDir;
@@ -55,7 +57,6 @@ exports.Delay = Delay;
55
57
  exports.WaitForFileToBeUnlocked = WaitForFileToBeUnlocked;
56
58
  exports.TestFileAccess = TestFileAccess;
57
59
  exports.KillProcess = KillProcess;
58
- exports.KillChildProcesses = KillChildProcesses;
59
60
  exports.isProcessElevated = isProcessElevated;
60
61
  exports.tryParseJson = tryParseJson;
61
62
  const crypto = __importStar(require("crypto"));
@@ -371,18 +372,33 @@ async function extractZipNative(zipPath, destDir, pathTrust, execOptions) {
371
372
  */
372
373
  async function HttpsGetText(url) {
373
374
  return new Promise((resolve, reject) => {
374
- https.get(url, (response) => {
375
+ const request = https.get(url, { timeout: DOWNLOAD_IDLE_TIMEOUT_MS }, (response) => {
375
376
  if (response.statusCode !== 200) {
376
377
  reject(new Error(`GET ${url} failed: HTTP ${response.statusCode}`));
377
378
  response.resume();
378
379
  return;
379
380
  }
380
381
  const chunks = [];
381
- response.on('data', (c) => chunks.push(c));
382
+ let size = 0;
383
+ response.on('data', (c) => {
384
+ size += c.length;
385
+ // text responses here are small manifests; anything larger is not what was asked for
386
+ if (size > MAX_TEXT_RESPONSE_BYTES) {
387
+ request.destroy(new Error(`GET ${url} returned more than ${MAX_TEXT_RESPONSE_BYTES} bytes`));
388
+ return;
389
+ }
390
+ chunks.push(c);
391
+ });
382
392
  response.on('end', () => resolve(Buffer.concat(chunks).toString('utf8').trim()));
383
- }).on('error', reject);
393
+ });
394
+ request.on('timeout', () => request.destroy(new Error(`GET ${url} timed out`)));
395
+ request.on('error', reject);
384
396
  });
385
397
  }
398
+ /** A download fails when no data arrives for this long. */
399
+ const DOWNLOAD_IDLE_TIMEOUT_MS = 2 * 60 * 1000;
400
+ /** The largest response HttpsGetText accepts. */
401
+ const MAX_TEXT_RESPONSE_BYTES = 10 * 1024 * 1024;
386
402
  /**
387
403
  * Computes the SHA-256 digest of a file as a lowercase hex string.
388
404
  */
@@ -402,37 +418,114 @@ async function Sha256FileHex(filePath) {
402
418
  * Requires HTTP status 200 before writing. Verifies the file is readable after download.
403
419
  * @param url The URL to download from.
404
420
  * @param downloadPath The path to save the downloaded file.
405
- * @throws An error if the download fails or the file is not accessible after download.
421
+ * @param options Integrity and mode options.
422
+ * @throws An error if the download fails, its SHA-256 does not match, or the file is not accessible after download.
406
423
  */
407
- async function DownloadFile(url, downloadPath) {
424
+ async function DownloadFile(url, downloadPath, options = {}) {
408
425
  logger.ci(`Downloading from ${url} to ${downloadPath}...`);
409
426
  await fs.promises.mkdir(path.dirname(downloadPath), { recursive: true });
427
+ // installers move between hosts, so HTTPS redirects are followed; every download is checked against a pinned
428
+ // SHA-256 or Releases API integrity value afterwards, so where it was served from does not change what is accepted
429
+ let currentUrl = url;
430
+ let redirects = 0;
410
431
  await new Promise((resolve, reject) => {
411
- https.get(url, (response) => {
412
- if (response.statusCode !== 200) {
413
- response.resume();
414
- reject(new Error(`GET ${url} failed: HTTP ${response.statusCode}`));
415
- return;
416
- }
417
- const file = fs.createWriteStream(downloadPath, { mode: 0o755 });
418
- const fail = (err) => {
419
- file.destroy();
432
+ const get = () => {
433
+ const request = https.get(currentUrl, { timeout: DOWNLOAD_IDLE_TIMEOUT_MS }, (response) => {
434
+ const location = response.headers.location;
435
+ if (response.statusCode && [301, 302, 303, 307, 308].includes(response.statusCode) && location) {
436
+ response.resume();
437
+ const next = new URL(location, currentUrl);
438
+ if (next.protocol !== 'https:' || ++redirects > 5) {
439
+ reject(new Error(`GET ${url} failed: ${next.protocol !== 'https:' ? `redirected to ${next.protocol}` : 'too many redirects'}`));
440
+ return;
441
+ }
442
+ currentUrl = next.href;
443
+ get();
444
+ return;
445
+ }
446
+ if (response.statusCode !== 200) {
447
+ response.resume();
448
+ reject(new Error(`GET ${url} failed: HTTP ${response.statusCode}`));
449
+ return;
450
+ }
451
+ const file = fs.createWriteStream(downloadPath, { mode: options.executable ? 0o755 : 0o644 });
452
+ const fail = (err) => {
453
+ file.destroy();
454
+ void fs.promises.unlink(downloadPath).catch(() => undefined);
455
+ reject(err);
456
+ };
457
+ response.once('error', fail);
458
+ file.once('error', fail);
459
+ response.pipe(file);
460
+ file.on('finish', () => {
461
+ file.close(() => resolve());
462
+ });
463
+ });
464
+ request.on('timeout', () => request.destroy(new Error(`GET ${url} timed out`)));
465
+ request.on('error', (error) => {
420
466
  void fs.promises.unlink(downloadPath).catch(() => undefined);
421
- reject(err);
422
- };
423
- response.once('error', fail);
424
- file.once('error', fail);
425
- response.pipe(file);
426
- file.on('finish', () => {
427
- file.close(() => resolve());
467
+ reject(error);
428
468
  });
429
- }).on('error', (error) => {
430
- void fs.promises.unlink(downloadPath).catch(() => undefined);
431
- reject(error);
432
- });
469
+ };
470
+ get();
433
471
  });
434
472
  await new Promise((r) => setTimeout(r, 100));
435
473
  await fs.promises.access(downloadPath, fs.constants.R_OK);
474
+ if (options.sha256) {
475
+ const actual = await Sha256FileHex(downloadPath);
476
+ if (actual.toLowerCase() !== options.sha256.toLowerCase()) {
477
+ await fs.promises.rm(downloadPath, { force: true });
478
+ throw new Error(`SHA-256 mismatch for ${url}: expected ${options.sha256}, got ${actual}`);
479
+ }
480
+ }
481
+ if (options.integrity) {
482
+ const separator = options.integrity.indexOf('-');
483
+ const algorithm = options.integrity.slice(0, separator).toLowerCase();
484
+ const encoded = options.integrity.slice(separator + 1);
485
+ if (separator <= 0 || !['md5', 'sha1', 'sha256', 'sha384', 'sha512'].includes(algorithm)) {
486
+ await fs.promises.rm(downloadPath, { force: true });
487
+ throw new Error(`Unsupported integrity value for ${url}: ${options.integrity}`);
488
+ }
489
+ const decoded = Buffer.from(encoded, 'base64');
490
+ const asText = decoded.toString('utf8');
491
+ const expected = /^[0-9a-f]+$/i.test(asText) ? asText.toLowerCase() : decoded.toString('hex');
492
+ const actual = await HashFileHex(downloadPath, algorithm);
493
+ if (actual !== expected) {
494
+ await fs.promises.rm(downloadPath, { force: true });
495
+ throw new Error(`${algorithm.toUpperCase()} mismatch for ${url}: expected ${expected}, got ${actual}`);
496
+ }
497
+ }
498
+ }
499
+ /**
500
+ * Computes a file digest as a lowercase hex string.
501
+ * @param filePath The file to hash.
502
+ * @param algorithm A Node crypto hash name, such as sha256 or md5.
503
+ */
504
+ async function HashFileHex(filePath, algorithm) {
505
+ const hash = crypto.createHash(algorithm);
506
+ const stream = fs.createReadStream(filePath);
507
+ return new Promise((resolve, reject) => {
508
+ stream.on('data', (chunk) => hash.update(chunk));
509
+ stream.on('end', () => resolve(hash.digest('hex')));
510
+ stream.on('error', reject);
511
+ });
512
+ }
513
+ /**
514
+ * Redacts known secrets, email addresses and long token-like strings (JWTs, access and refresh tokens) from log text.
515
+ * Each line is split on separator characters and every piece is checked on its own, which stays linear on any input.
516
+ * @param text The text to sanitize.
517
+ * @param secrets Literal values to redact.
518
+ */
519
+ function SanitizeLogText(text, secrets = []) {
520
+ return redactSensitiveLiterals(text, secrets)
521
+ .split(/([\s"'<>=,;()[\]]+)/)
522
+ .map(part => {
523
+ const at = part.indexOf('@');
524
+ const isEmail = at > 0 && part.lastIndexOf('.') > at + 1;
525
+ const isToken = part.length >= 32 && /^[A-Za-z0-9+_.-]+$/.test(part);
526
+ return isEmail || isToken ? '*****' : part;
527
+ })
528
+ .join('');
436
529
  }
437
530
  /**
438
531
  * Deletes a directory and its contents if it exists.
@@ -648,43 +741,6 @@ async function KillProcess(procInfo, signal = 'SIGTERM') {
648
741
  }
649
742
  }
650
743
  }
651
- /**
652
- * Kills all child processes of the given process.
653
- * @param procInfo The process information of the parent process.
654
- */
655
- async function KillChildProcesses(procInfo) {
656
- logger.debug(`Killing child processes of [${procInfo.pid}] ${procInfo.name}...`);
657
- try {
658
- if (process.platform === 'win32') {
659
- const command = `Get-CimInstance Win32_Process -Filter "ParentProcessId=${procInfo.pid}" | ForEach-Object { Stop-Process -Id $_.ProcessId -Force }`;
660
- await Exec('powershell', [
661
- '-NoProfile',
662
- '-Command',
663
- command
664
- ], { silent: true, showCommand: false });
665
- }
666
- else { // linux and macos
667
- const psOutput = await Exec('ps', ['-eo', 'pid,ppid,comm'], { silent: true, showCommand: false });
668
- const lines = psOutput.split('\n').slice(1); // Skip header line
669
- const killPromises = [];
670
- for (const line of lines) {
671
- const match = line.trim().match(/^(\d+)\s+(\d+)\s+(.*)$/);
672
- if (match) {
673
- const pid = parseInt(match[1], 10);
674
- const ppid = parseInt(match[2], 10);
675
- const name = match[3].trim();
676
- if (ppid === procInfo.pid) {
677
- killPromises.push(KillProcess({ pid, ppid, name }));
678
- }
679
- }
680
- }
681
- await Promise.all(killPromises);
682
- }
683
- }
684
- catch (error) {
685
- logger.error(`Failed to kill child processes of pid ${procInfo.pid}:\n${JSON.stringify(error)}`);
686
- }
687
- }
688
744
  /**
689
745
  * Checks if the current process is running with elevated (administrator) privileges.
690
746
  * @returns True if the process is elevated, false otherwise.