@eclipse-glsp/cli 2.8.0 → 2.9.0-next.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cli.js CHANGED
@@ -7118,15 +7118,15 @@ var require_pattern = __commonJS({
7118
7118
  exports2.removeDuplicateSlashes = removeDuplicateSlashes;
7119
7119
  function partitionAbsoluteAndRelative(patterns) {
7120
7120
  const absolute = [];
7121
- const relative4 = [];
7121
+ const relative5 = [];
7122
7122
  for (const pattern of patterns) {
7123
7123
  if (isAbsolute(pattern)) {
7124
7124
  absolute.push(pattern);
7125
7125
  } else {
7126
- relative4.push(pattern);
7126
+ relative5.push(pattern);
7127
7127
  }
7128
7128
  }
7129
- return [absolute, relative4];
7129
+ return [absolute, relative5];
7130
7130
  }
7131
7131
  exports2.partitionAbsoluteAndRelative = partitionAbsoluteAndRelative;
7132
7132
  function isAbsolute(pattern) {
@@ -11258,9 +11258,9 @@ var init_globby = __esm({
11258
11258
  }
11259
11259
  });
11260
11260
 
11261
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/internal/constants.js
11261
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/constants.js
11262
11262
  var require_constants4 = __commonJS({
11263
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/internal/constants.js"(exports2, module2) {
11263
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/constants.js"(exports2, module2) {
11264
11264
  "use strict";
11265
11265
  var SEMVER_SPEC_VERSION = "2.0.0";
11266
11266
  var MAX_LENGTH = 256;
@@ -11290,9 +11290,9 @@ var require_constants4 = __commonJS({
11290
11290
  }
11291
11291
  });
11292
11292
 
11293
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/internal/debug.js
11293
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/debug.js
11294
11294
  var require_debug = __commonJS({
11295
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/internal/debug.js"(exports2, module2) {
11295
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/debug.js"(exports2, module2) {
11296
11296
  "use strict";
11297
11297
  var debug = typeof process === "object" && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ? (...args) => console.error("SEMVER", ...args) : () => {
11298
11298
  };
@@ -11300,9 +11300,9 @@ var require_debug = __commonJS({
11300
11300
  }
11301
11301
  });
11302
11302
 
11303
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/internal/re.js
11303
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/re.js
11304
11304
  var require_re = __commonJS({
11305
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/internal/re.js"(exports2, module2) {
11305
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/re.js"(exports2, module2) {
11306
11306
  "use strict";
11307
11307
  var {
11308
11308
  MAX_SAFE_COMPONENT_LENGTH,
@@ -11388,9 +11388,9 @@ var require_re = __commonJS({
11388
11388
  }
11389
11389
  });
11390
11390
 
11391
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/internal/parse-options.js
11391
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/parse-options.js
11392
11392
  var require_parse_options = __commonJS({
11393
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/internal/parse-options.js"(exports2, module2) {
11393
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/parse-options.js"(exports2, module2) {
11394
11394
  "use strict";
11395
11395
  var looseOption = Object.freeze({ loose: true });
11396
11396
  var emptyOpts = Object.freeze({});
@@ -11407,9 +11407,9 @@ var require_parse_options = __commonJS({
11407
11407
  }
11408
11408
  });
11409
11409
 
11410
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/internal/identifiers.js
11410
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/identifiers.js
11411
11411
  var require_identifiers = __commonJS({
11412
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/internal/identifiers.js"(exports2, module2) {
11412
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/identifiers.js"(exports2, module2) {
11413
11413
  "use strict";
11414
11414
  var numeric2 = /^[0-9]+$/;
11415
11415
  var compareIdentifiers = (a, b) => {
@@ -11432,9 +11432,9 @@ var require_identifiers = __commonJS({
11432
11432
  }
11433
11433
  });
11434
11434
 
11435
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/classes/semver.js
11435
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/classes/semver.js
11436
11436
  var require_semver = __commonJS({
11437
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/classes/semver.js"(exports2, module2) {
11437
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/classes/semver.js"(exports2, module2) {
11438
11438
  "use strict";
11439
11439
  var debug = require_debug();
11440
11440
  var { MAX_LENGTH, MAX_SAFE_INTEGER } = require_constants4();
@@ -11724,9 +11724,9 @@ var require_semver = __commonJS({
11724
11724
  }
11725
11725
  });
11726
11726
 
11727
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/parse.js
11727
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/parse.js
11728
11728
  var require_parse3 = __commonJS({
11729
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/parse.js"(exports2, module2) {
11729
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/parse.js"(exports2, module2) {
11730
11730
  "use strict";
11731
11731
  var SemVer = require_semver();
11732
11732
  var parse3 = (version2, options, throwErrors = false) => {
@@ -11746,9 +11746,9 @@ var require_parse3 = __commonJS({
11746
11746
  }
11747
11747
  });
11748
11748
 
11749
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/valid.js
11749
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/valid.js
11750
11750
  var require_valid = __commonJS({
11751
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/valid.js"(exports2, module2) {
11751
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/valid.js"(exports2, module2) {
11752
11752
  "use strict";
11753
11753
  var parse3 = require_parse3();
11754
11754
  var valid2 = (version2, options) => {
@@ -11759,9 +11759,9 @@ var require_valid = __commonJS({
11759
11759
  }
11760
11760
  });
11761
11761
 
11762
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/clean.js
11762
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/clean.js
11763
11763
  var require_clean = __commonJS({
11764
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/clean.js"(exports2, module2) {
11764
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/clean.js"(exports2, module2) {
11765
11765
  "use strict";
11766
11766
  var parse3 = require_parse3();
11767
11767
  var clean = (version2, options) => {
@@ -11772,9 +11772,9 @@ var require_clean = __commonJS({
11772
11772
  }
11773
11773
  });
11774
11774
 
11775
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/inc.js
11775
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/inc.js
11776
11776
  var require_inc = __commonJS({
11777
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/inc.js"(exports2, module2) {
11777
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/inc.js"(exports2, module2) {
11778
11778
  "use strict";
11779
11779
  var SemVer = require_semver();
11780
11780
  var inc2 = (version2, release, options, identifier, identifierBase) => {
@@ -11796,9 +11796,9 @@ var require_inc = __commonJS({
11796
11796
  }
11797
11797
  });
11798
11798
 
11799
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/diff.js
11799
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/diff.js
11800
11800
  var require_diff = __commonJS({
11801
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/diff.js"(exports2, module2) {
11801
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/diff.js"(exports2, module2) {
11802
11802
  "use strict";
11803
11803
  var parse3 = require_parse3();
11804
11804
  var diff = (version1, version2) => {
@@ -11840,9 +11840,9 @@ var require_diff = __commonJS({
11840
11840
  }
11841
11841
  });
11842
11842
 
11843
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/major.js
11843
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/major.js
11844
11844
  var require_major = __commonJS({
11845
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/major.js"(exports2, module2) {
11845
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/major.js"(exports2, module2) {
11846
11846
  "use strict";
11847
11847
  var SemVer = require_semver();
11848
11848
  var major2 = (a, loose) => new SemVer(a, loose).major;
@@ -11850,9 +11850,9 @@ var require_major = __commonJS({
11850
11850
  }
11851
11851
  });
11852
11852
 
11853
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/minor.js
11853
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/minor.js
11854
11854
  var require_minor = __commonJS({
11855
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/minor.js"(exports2, module2) {
11855
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/minor.js"(exports2, module2) {
11856
11856
  "use strict";
11857
11857
  var SemVer = require_semver();
11858
11858
  var minor2 = (a, loose) => new SemVer(a, loose).minor;
@@ -11860,9 +11860,9 @@ var require_minor = __commonJS({
11860
11860
  }
11861
11861
  });
11862
11862
 
11863
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/patch.js
11863
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/patch.js
11864
11864
  var require_patch = __commonJS({
11865
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/patch.js"(exports2, module2) {
11865
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/patch.js"(exports2, module2) {
11866
11866
  "use strict";
11867
11867
  var SemVer = require_semver();
11868
11868
  var patch = (a, loose) => new SemVer(a, loose).patch;
@@ -11870,9 +11870,9 @@ var require_patch = __commonJS({
11870
11870
  }
11871
11871
  });
11872
11872
 
11873
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/prerelease.js
11873
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/prerelease.js
11874
11874
  var require_prerelease = __commonJS({
11875
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/prerelease.js"(exports2, module2) {
11875
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/prerelease.js"(exports2, module2) {
11876
11876
  "use strict";
11877
11877
  var parse3 = require_parse3();
11878
11878
  var prerelease2 = (version2, options) => {
@@ -11883,9 +11883,9 @@ var require_prerelease = __commonJS({
11883
11883
  }
11884
11884
  });
11885
11885
 
11886
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/compare.js
11886
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/compare.js
11887
11887
  var require_compare = __commonJS({
11888
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/compare.js"(exports2, module2) {
11888
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/compare.js"(exports2, module2) {
11889
11889
  "use strict";
11890
11890
  var SemVer = require_semver();
11891
11891
  var compare = (a, b, loose) => new SemVer(a, loose).compare(new SemVer(b, loose));
@@ -11893,9 +11893,9 @@ var require_compare = __commonJS({
11893
11893
  }
11894
11894
  });
11895
11895
 
11896
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/rcompare.js
11896
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/rcompare.js
11897
11897
  var require_rcompare = __commonJS({
11898
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/rcompare.js"(exports2, module2) {
11898
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/rcompare.js"(exports2, module2) {
11899
11899
  "use strict";
11900
11900
  var compare = require_compare();
11901
11901
  var rcompare = (a, b, loose) => compare(b, a, loose);
@@ -11903,9 +11903,9 @@ var require_rcompare = __commonJS({
11903
11903
  }
11904
11904
  });
11905
11905
 
11906
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/compare-loose.js
11906
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/compare-loose.js
11907
11907
  var require_compare_loose = __commonJS({
11908
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/compare-loose.js"(exports2, module2) {
11908
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/compare-loose.js"(exports2, module2) {
11909
11909
  "use strict";
11910
11910
  var compare = require_compare();
11911
11911
  var compareLoose = (a, b) => compare(a, b, true);
@@ -11913,9 +11913,9 @@ var require_compare_loose = __commonJS({
11913
11913
  }
11914
11914
  });
11915
11915
 
11916
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/compare-build.js
11916
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/compare-build.js
11917
11917
  var require_compare_build = __commonJS({
11918
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/compare-build.js"(exports2, module2) {
11918
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/compare-build.js"(exports2, module2) {
11919
11919
  "use strict";
11920
11920
  var SemVer = require_semver();
11921
11921
  var compareBuild = (a, b, loose) => {
@@ -11927,9 +11927,9 @@ var require_compare_build = __commonJS({
11927
11927
  }
11928
11928
  });
11929
11929
 
11930
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/sort.js
11930
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/sort.js
11931
11931
  var require_sort = __commonJS({
11932
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/sort.js"(exports2, module2) {
11932
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/sort.js"(exports2, module2) {
11933
11933
  "use strict";
11934
11934
  var compareBuild = require_compare_build();
11935
11935
  var sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose));
@@ -11937,9 +11937,9 @@ var require_sort = __commonJS({
11937
11937
  }
11938
11938
  });
11939
11939
 
11940
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/rsort.js
11940
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/rsort.js
11941
11941
  var require_rsort = __commonJS({
11942
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/rsort.js"(exports2, module2) {
11942
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/rsort.js"(exports2, module2) {
11943
11943
  "use strict";
11944
11944
  var compareBuild = require_compare_build();
11945
11945
  var rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose));
@@ -11947,9 +11947,9 @@ var require_rsort = __commonJS({
11947
11947
  }
11948
11948
  });
11949
11949
 
11950
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/gt.js
11950
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/gt.js
11951
11951
  var require_gt = __commonJS({
11952
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/gt.js"(exports2, module2) {
11952
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/gt.js"(exports2, module2) {
11953
11953
  "use strict";
11954
11954
  var compare = require_compare();
11955
11955
  var gt = (a, b, loose) => compare(a, b, loose) > 0;
@@ -11957,9 +11957,9 @@ var require_gt = __commonJS({
11957
11957
  }
11958
11958
  });
11959
11959
 
11960
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/lt.js
11960
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/lt.js
11961
11961
  var require_lt = __commonJS({
11962
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/lt.js"(exports2, module2) {
11962
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/lt.js"(exports2, module2) {
11963
11963
  "use strict";
11964
11964
  var compare = require_compare();
11965
11965
  var lt = (a, b, loose) => compare(a, b, loose) < 0;
@@ -11967,9 +11967,9 @@ var require_lt = __commonJS({
11967
11967
  }
11968
11968
  });
11969
11969
 
11970
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/eq.js
11970
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/eq.js
11971
11971
  var require_eq = __commonJS({
11972
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/eq.js"(exports2, module2) {
11972
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/eq.js"(exports2, module2) {
11973
11973
  "use strict";
11974
11974
  var compare = require_compare();
11975
11975
  var eq = (a, b, loose) => compare(a, b, loose) === 0;
@@ -11977,9 +11977,9 @@ var require_eq = __commonJS({
11977
11977
  }
11978
11978
  });
11979
11979
 
11980
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/neq.js
11980
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/neq.js
11981
11981
  var require_neq = __commonJS({
11982
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/neq.js"(exports2, module2) {
11982
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/neq.js"(exports2, module2) {
11983
11983
  "use strict";
11984
11984
  var compare = require_compare();
11985
11985
  var neq = (a, b, loose) => compare(a, b, loose) !== 0;
@@ -11987,9 +11987,9 @@ var require_neq = __commonJS({
11987
11987
  }
11988
11988
  });
11989
11989
 
11990
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/gte.js
11990
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/gte.js
11991
11991
  var require_gte = __commonJS({
11992
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/gte.js"(exports2, module2) {
11992
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/gte.js"(exports2, module2) {
11993
11993
  "use strict";
11994
11994
  var compare = require_compare();
11995
11995
  var gte2 = (a, b, loose) => compare(a, b, loose) >= 0;
@@ -11997,9 +11997,9 @@ var require_gte = __commonJS({
11997
11997
  }
11998
11998
  });
11999
11999
 
12000
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/lte.js
12000
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/lte.js
12001
12001
  var require_lte = __commonJS({
12002
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/lte.js"(exports2, module2) {
12002
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/lte.js"(exports2, module2) {
12003
12003
  "use strict";
12004
12004
  var compare = require_compare();
12005
12005
  var lte2 = (a, b, loose) => compare(a, b, loose) <= 0;
@@ -12007,9 +12007,9 @@ var require_lte = __commonJS({
12007
12007
  }
12008
12008
  });
12009
12009
 
12010
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/cmp.js
12010
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/cmp.js
12011
12011
  var require_cmp = __commonJS({
12012
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/cmp.js"(exports2, module2) {
12012
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/cmp.js"(exports2, module2) {
12013
12013
  "use strict";
12014
12014
  var eq = require_eq();
12015
12015
  var neq = require_neq();
@@ -12057,9 +12057,9 @@ var require_cmp = __commonJS({
12057
12057
  }
12058
12058
  });
12059
12059
 
12060
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/coerce.js
12060
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/coerce.js
12061
12061
  var require_coerce = __commonJS({
12062
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/coerce.js"(exports2, module2) {
12062
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/coerce.js"(exports2, module2) {
12063
12063
  "use strict";
12064
12064
  var SemVer = require_semver();
12065
12065
  var parse3 = require_parse3();
@@ -12103,9 +12103,9 @@ var require_coerce = __commonJS({
12103
12103
  }
12104
12104
  });
12105
12105
 
12106
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/truncate.js
12106
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/truncate.js
12107
12107
  var require_truncate = __commonJS({
12108
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/truncate.js"(exports2, module2) {
12108
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/truncate.js"(exports2, module2) {
12109
12109
  "use strict";
12110
12110
  var parse3 = require_parse3();
12111
12111
  var constants = require_constants4();
@@ -12144,9 +12144,9 @@ var require_truncate = __commonJS({
12144
12144
  }
12145
12145
  });
12146
12146
 
12147
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/internal/lrucache.js
12147
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/lrucache.js
12148
12148
  var require_lrucache = __commonJS({
12149
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/internal/lrucache.js"(exports2, module2) {
12149
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/internal/lrucache.js"(exports2, module2) {
12150
12150
  "use strict";
12151
12151
  var LRUCache = class {
12152
12152
  constructor() {
@@ -12182,9 +12182,9 @@ var require_lrucache = __commonJS({
12182
12182
  }
12183
12183
  });
12184
12184
 
12185
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/classes/range.js
12185
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/classes/range.js
12186
12186
  var require_range = __commonJS({
12187
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/classes/range.js"(exports2, module2) {
12187
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/classes/range.js"(exports2, module2) {
12188
12188
  "use strict";
12189
12189
  var SPACE_CHARACTERS = /\s+/g;
12190
12190
  var Range = class _Range {
@@ -12377,15 +12377,16 @@ var require_range = __commonJS({
12377
12377
  };
12378
12378
  var replaceTilde = (comp, options) => {
12379
12379
  const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE];
12380
+ const z = options.includePrerelease ? "-0" : "";
12380
12381
  return comp.replace(r, (_, M, m, p, pr) => {
12381
12382
  debug("tilde", comp, _, M, m, p, pr);
12382
12383
  let ret;
12383
12384
  if (isX(M)) {
12384
12385
  ret = "";
12385
12386
  } else if (isX(m)) {
12386
- ret = `>=${M}.0.0 <${+M + 1}.0.0-0`;
12387
+ ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`;
12387
12388
  } else if (isX(p)) {
12388
- ret = `>=${M}.${m}.0 <${M}.${+m + 1}.0-0`;
12389
+ ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`;
12389
12390
  } else if (pr) {
12390
12391
  debug("replaceTilde pr", pr);
12391
12392
  ret = `>=${M}.${m}.${p}-${pr} <${M}.${+m + 1}.0-0`;
@@ -12566,9 +12567,9 @@ var require_range = __commonJS({
12566
12567
  }
12567
12568
  });
12568
12569
 
12569
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/classes/comparator.js
12570
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/classes/comparator.js
12570
12571
  var require_comparator = __commonJS({
12571
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/classes/comparator.js"(exports2, module2) {
12572
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/classes/comparator.js"(exports2, module2) {
12572
12573
  "use strict";
12573
12574
  var ANY = /* @__PURE__ */ Symbol("SemVer ANY");
12574
12575
  var Comparator = class _Comparator {
@@ -12679,9 +12680,9 @@ var require_comparator = __commonJS({
12679
12680
  }
12680
12681
  });
12681
12682
 
12682
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/satisfies.js
12683
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/satisfies.js
12683
12684
  var require_satisfies = __commonJS({
12684
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/functions/satisfies.js"(exports2, module2) {
12685
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/functions/satisfies.js"(exports2, module2) {
12685
12686
  "use strict";
12686
12687
  var Range = require_range();
12687
12688
  var satisfies = (version2, range2, options) => {
@@ -12696,9 +12697,9 @@ var require_satisfies = __commonJS({
12696
12697
  }
12697
12698
  });
12698
12699
 
12699
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/ranges/to-comparators.js
12700
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/to-comparators.js
12700
12701
  var require_to_comparators = __commonJS({
12701
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/ranges/to-comparators.js"(exports2, module2) {
12702
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/to-comparators.js"(exports2, module2) {
12702
12703
  "use strict";
12703
12704
  var Range = require_range();
12704
12705
  var toComparators = (range2, options) => new Range(range2, options).set.map((comp) => comp.map((c) => c.value).join(" ").trim().split(" "));
@@ -12706,9 +12707,9 @@ var require_to_comparators = __commonJS({
12706
12707
  }
12707
12708
  });
12708
12709
 
12709
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/ranges/max-satisfying.js
12710
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/max-satisfying.js
12710
12711
  var require_max_satisfying = __commonJS({
12711
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/ranges/max-satisfying.js"(exports2, module2) {
12712
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/max-satisfying.js"(exports2, module2) {
12712
12713
  "use strict";
12713
12714
  var SemVer = require_semver();
12714
12715
  var Range = require_range();
@@ -12735,9 +12736,9 @@ var require_max_satisfying = __commonJS({
12735
12736
  }
12736
12737
  });
12737
12738
 
12738
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/ranges/min-satisfying.js
12739
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/min-satisfying.js
12739
12740
  var require_min_satisfying = __commonJS({
12740
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/ranges/min-satisfying.js"(exports2, module2) {
12741
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/min-satisfying.js"(exports2, module2) {
12741
12742
  "use strict";
12742
12743
  var SemVer = require_semver();
12743
12744
  var Range = require_range();
@@ -12764,9 +12765,9 @@ var require_min_satisfying = __commonJS({
12764
12765
  }
12765
12766
  });
12766
12767
 
12767
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/ranges/min-version.js
12768
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/min-version.js
12768
12769
  var require_min_version = __commonJS({
12769
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/ranges/min-version.js"(exports2, module2) {
12770
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/min-version.js"(exports2, module2) {
12770
12771
  "use strict";
12771
12772
  var SemVer = require_semver();
12772
12773
  var Range = require_range();
@@ -12823,9 +12824,9 @@ var require_min_version = __commonJS({
12823
12824
  }
12824
12825
  });
12825
12826
 
12826
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/ranges/valid.js
12827
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/valid.js
12827
12828
  var require_valid2 = __commonJS({
12828
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/ranges/valid.js"(exports2, module2) {
12829
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/valid.js"(exports2, module2) {
12829
12830
  "use strict";
12830
12831
  var Range = require_range();
12831
12832
  var validRange = (range2, options) => {
@@ -12839,9 +12840,9 @@ var require_valid2 = __commonJS({
12839
12840
  }
12840
12841
  });
12841
12842
 
12842
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/ranges/outside.js
12843
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/outside.js
12843
12844
  var require_outside = __commonJS({
12844
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/ranges/outside.js"(exports2, module2) {
12845
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/outside.js"(exports2, module2) {
12845
12846
  "use strict";
12846
12847
  var SemVer = require_semver();
12847
12848
  var Comparator = require_comparator();
@@ -12908,9 +12909,9 @@ var require_outside = __commonJS({
12908
12909
  }
12909
12910
  });
12910
12911
 
12911
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/ranges/gtr.js
12912
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/gtr.js
12912
12913
  var require_gtr = __commonJS({
12913
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/ranges/gtr.js"(exports2, module2) {
12914
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/gtr.js"(exports2, module2) {
12914
12915
  "use strict";
12915
12916
  var outside = require_outside();
12916
12917
  var gtr = (version2, range2, options) => outside(version2, range2, ">", options);
@@ -12918,9 +12919,9 @@ var require_gtr = __commonJS({
12918
12919
  }
12919
12920
  });
12920
12921
 
12921
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/ranges/ltr.js
12922
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/ltr.js
12922
12923
  var require_ltr = __commonJS({
12923
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/ranges/ltr.js"(exports2, module2) {
12924
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/ltr.js"(exports2, module2) {
12924
12925
  "use strict";
12925
12926
  var outside = require_outside();
12926
12927
  var ltr = (version2, range2, options) => outside(version2, range2, "<", options);
@@ -12928,9 +12929,9 @@ var require_ltr = __commonJS({
12928
12929
  }
12929
12930
  });
12930
12931
 
12931
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/ranges/intersects.js
12932
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/intersects.js
12932
12933
  var require_intersects = __commonJS({
12933
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/ranges/intersects.js"(exports2, module2) {
12934
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/intersects.js"(exports2, module2) {
12934
12935
  "use strict";
12935
12936
  var Range = require_range();
12936
12937
  var intersects = (r1, r2, options) => {
@@ -12942,9 +12943,9 @@ var require_intersects = __commonJS({
12942
12943
  }
12943
12944
  });
12944
12945
 
12945
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/ranges/simplify.js
12946
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/simplify.js
12946
12947
  var require_simplify = __commonJS({
12947
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/ranges/simplify.js"(exports2, module2) {
12948
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/simplify.js"(exports2, module2) {
12948
12949
  "use strict";
12949
12950
  var satisfies = require_satisfies();
12950
12951
  var compare = require_compare();
@@ -12992,9 +12993,9 @@ var require_simplify = __commonJS({
12992
12993
  }
12993
12994
  });
12994
12995
 
12995
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/ranges/subset.js
12996
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/subset.js
12996
12997
  var require_subset = __commonJS({
12997
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/ranges/subset.js"(exports2, module2) {
12998
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/ranges/subset.js"(exports2, module2) {
12998
12999
  "use strict";
12999
13000
  var Range = require_range();
13000
13001
  var Comparator = require_comparator();
@@ -13154,9 +13155,9 @@ var require_subset = __commonJS({
13154
13155
  }
13155
13156
  });
13156
13157
 
13157
- // ../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/index.js
13158
+ // ../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/index.js
13158
13159
  var require_semver2 = __commonJS({
13159
- "../../node_modules/.pnpm/semver@7.8.4/node_modules/semver/index.js"(exports2, module2) {
13160
+ "../../node_modules/.pnpm/semver@7.8.5/node_modules/semver/index.js"(exports2, module2) {
13160
13161
  "use strict";
13161
13162
  var internalRe = require_re();
13162
13163
  var constants = require_constants4();
@@ -23145,7 +23146,7 @@ function deleteFile(filePath) {
23145
23146
  try {
23146
23147
  const stats = fs4.statSync(file);
23147
23148
  if (stats.isDirectory()) {
23148
- fs4.rmdirSync(file, { recursive: true });
23149
+ fs4.rmSync(file, { recursive: true, force: true });
23149
23150
  } else {
23150
23151
  fs4.unlinkSync(file);
23151
23152
  }
@@ -23251,7 +23252,7 @@ var child = __toESM(require("child_process"));
23251
23252
  var path6 = __toESM(require("path"));
23252
23253
 
23253
23254
  // package.json
23254
- var version = "2.8.0";
23255
+ var version = "2.9.0-next.2";
23255
23256
 
23256
23257
  // src/util/logger.ts
23257
23258
  var levels = {
@@ -23478,6 +23479,24 @@ function refExists(ref, path29) {
23478
23479
  return false;
23479
23480
  }
23480
23481
  }
23482
+ var SAFE_REF_PATTERN = /^[A-Za-z0-9_./^~-]+$/;
23483
+ function isAncestorCommit(ref, path29) {
23484
+ if (!SAFE_REF_PATTERN.test(ref)) {
23485
+ return false;
23486
+ }
23487
+ try {
23488
+ exec(`git merge-base --is-ancestor ${ref} HEAD`, { cwd: path29, silent: true, fatal: false });
23489
+ return true;
23490
+ } catch {
23491
+ return false;
23492
+ }
23493
+ }
23494
+ function getChangedFilesSince(since, path29) {
23495
+ if (!SAFE_REF_PATTERN.test(since)) {
23496
+ throw new Error(`Not a valid git ref: ${since}`);
23497
+ }
23498
+ return exec(`git diff --name-only ${since}..HEAD`, { cwd: path29, silent: true }).split("\n").map((file) => file.trim()).filter((file) => file.length !== 0);
23499
+ }
23481
23500
  function getLastModificationDate(filePath, repoRoot, excludeMessage) {
23482
23501
  const additionalArgs = excludeMessage ? `--grep="${excludeMessage}" --invert-grep` : "";
23483
23502
  try {
@@ -23503,14 +23522,11 @@ function getDefaultBranch(path29) {
23503
23522
  var GLSPRepo;
23504
23523
  ((GLSPRepo10) => {
23505
23524
  GLSPRepo10.choices = [
23506
- "glsp",
23507
- "glsp-server-node",
23508
- "glsp-client",
23525
+ "glsp-core",
23509
23526
  "glsp-theia-integration",
23510
23527
  "glsp-vscode-integration",
23511
23528
  "glsp-eclipse-integration",
23512
- "glsp-server",
23513
- "glsp-playwright"
23529
+ "glsp-server"
23514
23530
  ];
23515
23531
  function is(object) {
23516
23532
  return typeof object === "string" && GLSPRepo10.choices.includes(object);
@@ -23573,11 +23589,13 @@ function getGLSPDependencies(pkg) {
23573
23589
  return [...deps, ...devDeps].filter((dep) => dep.startsWith("@eclipse-glsp"));
23574
23590
  }
23575
23591
  var PRESETS = {
23576
- core: ["glsp-client", "glsp-server-node"],
23577
- theia: ["glsp-client", "glsp-server-node", "glsp-theia-integration"],
23578
- vscode: ["glsp-client", "glsp-server-node", "glsp-vscode-integration"],
23579
- eclipse: ["glsp-client", "glsp-server-node", "glsp-server", "glsp-eclipse-integration"],
23580
- playwright: ["glsp-client", "glsp-server-node", "glsp-theia-integration", "glsp-vscode-integration", "glsp-playwright"],
23592
+ core: ["glsp-core"],
23593
+ theia: ["glsp-core", "glsp-theia-integration"],
23594
+ vscode: ["glsp-core", "glsp-vscode-integration"],
23595
+ eclipse: ["glsp-core", "glsp-server", "glsp-eclipse-integration"],
23596
+ // The Playwright framework and the reusable Workflow suites live in glsp-core (`e2e/`); the
23597
+ // integration repositories bring their own Theia/VS Code e2e packages on top.
23598
+ playwright: ["glsp-core", "glsp-theia-integration", "glsp-vscode-integration"],
23581
23599
  all: [...GLSPRepo.choices]
23582
23600
  };
23583
23601
  var PRESET_NAMES = Object.keys(PRESETS);
@@ -24017,6 +24035,15 @@ function npmVersionExists(packageName, version2) {
24017
24035
  return false;
24018
24036
  }
24019
24037
  }
24038
+ function npmDistTagVersion(packageName, distTag, registry) {
24039
+ const registryArg = registry ? ` --registry ${registry}` : "";
24040
+ try {
24041
+ const result = exec(`npm view ${packageName} dist-tags.${distTag}${registryArg}`, { silent: true }).trim();
24042
+ return result.length > 0 ? result : void 0;
24043
+ } catch {
24044
+ return void 0;
24045
+ }
24046
+ }
24020
24047
  function asMvnVersion(version2) {
24021
24048
  LOGGER.debug(`Convert to maven conform version: ${version2}`);
24022
24049
  const mavenVersion = isNextVersion(version2) ? version2.replace("-next", "-SNAPSHOT") : version2;
@@ -24073,17 +24100,21 @@ function isNextVersion(version2) {
24073
24100
  }
24074
24101
  function deriveCanaryVersion(repoDir) {
24075
24102
  const base = getVersionFromPackage(repoDir);
24076
- let lastTag;
24077
- try {
24078
- lastTag = exec("git describe --tags --abbrev=0", { cwd: repoDir, silent: true }).trim();
24079
- } catch (error) {
24103
+ if (exec("git rev-parse --is-shallow-repository", { cwd: repoDir, silent: true }).trim() === "true") {
24080
24104
  throw new Error(
24081
- `Could not determine the last git tag in '${repoDir}'. Deriving a canary version requires at least one tag and the full git history (fetch-depth: 0 in CI).`
24105
+ `Cannot derive a canary version in the shallow clone '${repoDir}'. Counting commits requires the full git history (fetch-depth: 0 in CI).`
24082
24106
  );
24083
24107
  }
24084
- const commitCount = Number.parseInt(exec(`git rev-list --count ${lastTag}..HEAD`, { cwd: repoDir, silent: true }).trim(), 10);
24108
+ let lastTag;
24109
+ try {
24110
+ lastTag = exec("git describe --tags --abbrev=0 --match 'v[0-9]*'", { cwd: repoDir, silent: true }).trim();
24111
+ } catch {
24112
+ lastTag = void 0;
24113
+ }
24114
+ const countRange = lastTag ? `${lastTag}..HEAD` : "HEAD";
24115
+ const commitCount = Number.parseInt(exec(`git rev-list --count ${countRange}`, { cwd: repoDir, silent: true }).trim(), 10);
24085
24116
  if (Number.isNaN(commitCount)) {
24086
- throw new Error(`Could not determine the number of commits since tag '${lastTag}' in '${repoDir}'.`);
24117
+ throw new Error(`Could not determine the number of commits for '${countRange}' in '${repoDir}'.`);
24087
24118
  }
24088
24119
  return { base, lastTag, commitCount, version: `${base}.${commitCount}` };
24089
24120
  }
@@ -24419,15 +24450,25 @@ function updateChangelog(options) {
24419
24450
  const linkUrl = `https://github.com/eclipse-glsp/${options.repo}/releases/tag/v${options.version}`;
24420
24451
  replaceInFile("CHANGELOG.md", `## v${options.version} - active`, `## [v${options.version} - ${date}](${linkUrl})`);
24421
24452
  } else {
24422
- LOGGER.debug("Add a new 'next' version after the header");
24423
- const nextSection = `
24424
- ## v${options.version.replace("-next", "")} - active
24453
+ LOGGER.debug("Add a new 'next' version section");
24454
+ const changelog = readFile("CHANGELOG.md");
24455
+ const skeleton = changelog.includes("### Client") ? ["Protocol", "Client", "Server", "Dev Packages", "E2E"].map((component) => `### ${component}
24456
+
24457
+ #### Changes
24425
24458
 
24426
- ### Changes
24459
+ #### Potentially Breaking Changes`).join("\n\n") : "### Changes\n\n### Potentially Breaking Changes";
24460
+ const nextSection = `## v${options.version.replace("-next", "")} - active
24461
+
24462
+ ${skeleton}
24463
+ `;
24464
+ if (/^## /m.test(changelog)) {
24465
+ replaceInFile("CHANGELOG.md", /^## /m, `${nextSection}
24466
+ ## `);
24467
+ } else {
24468
+ replaceInFile("CHANGELOG.md", /^# .+$/m, `$&
24427
24469
 
24428
- ### Potentially Breaking Changes`;
24429
- replaceInFile("CHANGELOG.md", /^# .+$/m, `$&
24430
24470
  ${nextSection}`);
24471
+ }
24431
24472
  }
24432
24473
  LOGGER.debug("Changelog updated");
24433
24474
  }
@@ -24476,11 +24517,13 @@ Note: This pull request was created automatically. After merging, the automated
24476
24517
  // src/commands/releng/publish.ts
24477
24518
  var fs9 = __toESM(require("fs"));
24478
24519
  var path13 = __toESM(require("path"));
24479
- var PublishCommand = baseCommand().name("publish").description("Publish all workspace packages of a GLSP repository via `pnpm publish`").addArgument(new Argument("<distTag>", "The npm dist-tag to publish under").choices(["next", "latest"])).option("-v, --verbose", "Enable verbose (debug) log output", false).option("-r, --repoDir <repoDir>", "Path to the component repository", validateGitDirectory, process.cwd()).option("--dry-run", "Derive versions and run `pnpm publish` in dry-run mode without applying changes", false).option("--registry <url>", "Publish to a custom npm registry (e.g. a local verdaccio for testing)").option(
24520
+ var DEFAULT_BASELINE = "HEAD^";
24521
+ var FULL_PUBLISH_PATHS = ["tsconfig.json"];
24522
+ var PublishCommand = baseCommand().name("publish").description("Publish the affected workspace packages of a GLSP repository via `pnpm publish`").addArgument(new Argument("<distTag>", "The npm dist-tag to publish under").choices(["next", "latest"])).option("-v, --verbose", "Enable verbose (debug) log output", false).option("-r, --repoDir <repoDir>", "Path to the component repository", validateGitDirectory, process.cwd()).option("--dry-run", "Derive versions and run `pnpm publish` in dry-run mode without applying changes", false).option("--registry <url>", "Publish to a custom npm registry (e.g. a local verdaccio for testing)").option(
24480
24523
  "--interactive",
24481
24524
  "Bump versions but do not publish; print the `pnpm publish` command to run manually in an interactive shell (e.g. for npm 2FA/OTP prompts)",
24482
24525
  false
24483
- ).action((distTag, cmdOptions) => {
24526
+ ).option("--since <ref>", "Baseline for affected-only 'next' publishing (default: HEAD^, i.e. the changes of the last commit)").option("--full", "Publish all packages, ignoring the affected-only baseline ('next' only)", false).action((distTag, cmdOptions) => {
24484
24527
  configureEnv(cmdOptions);
24485
24528
  return publish(distTag, cmdOptions);
24486
24529
  });
@@ -24489,6 +24532,9 @@ async function publish(distTag, options) {
24489
24532
  if (distTag === "next") {
24490
24533
  return publishNext(options);
24491
24534
  }
24535
+ if (options.since || options.full) {
24536
+ throw new Error("The --since and --full options are only supported for 'next' publishing.");
24537
+ }
24492
24538
  return publishLatest(options);
24493
24539
  }
24494
24540
  async function publishNext(options) {
@@ -24496,18 +24542,94 @@ async function publishNext(options) {
24496
24542
  if (!isNextVersion(canary.base)) {
24497
24543
  throw new Error(`The root package version '${canary.base}' is not a next version. Cannot publish a 'next' canary release.`);
24498
24544
  }
24499
- LOGGER.info(`Applying canary version ${canary.version} (base: ${canary.base}, ${canary.commitCount} commits since ${canary.lastTag})`);
24545
+ const countedFrom = canary.lastTag ?? "the root commit";
24546
+ LOGGER.info(`Applying canary version ${canary.version} (base: ${canary.base}, ${canary.commitCount} commits since ${countedFrom})`);
24500
24547
  const packages = getWorkspacePackages(options.repoDir);
24548
+ const publishSet = computePublishSet(packages, options);
24549
+ let publishNames;
24550
+ let pinnedVersions;
24551
+ if (publishSet) {
24552
+ publishNames = packages.filter((pkg) => !pkg.content.private && publishSet.has(pkg.name)).map((pkg) => pkg.name);
24553
+ if (publishNames.length === 0) {
24554
+ LOGGER.info("No public packages are affected by the changes since the publish baseline. Nothing to publish.");
24555
+ return;
24556
+ }
24557
+ pinnedVersions = resolvePinnedVersions(packages, publishSet, options);
24558
+ if (!pinnedVersions) {
24559
+ publishNames = void 0;
24560
+ }
24561
+ }
24562
+ applyVersions(packages, canary, pinnedVersions, options);
24563
+ await pnpmPublish("next", options, publishNames);
24564
+ }
24565
+ function resolvePinnedVersions(packages, publishSet, options) {
24566
+ const pinnedVersions = /* @__PURE__ */ new Map();
24567
+ const unaffected = packages.filter((pkg) => !pkg.content.private && !publishSet.has(pkg.name));
24568
+ for (const pkg of unaffected) {
24569
+ const published = npmDistTagVersion(pkg.name, "next", options.registry);
24570
+ if (!published) {
24571
+ LOGGER.warn(`No published 'next' version found for unaffected package ${pkg.name}. Publishing all packages.`);
24572
+ return void 0;
24573
+ }
24574
+ pinnedVersions.set(pkg.name, published);
24575
+ }
24576
+ return pinnedVersions;
24577
+ }
24578
+ function applyVersions(packages, canary, pinnedVersions, options) {
24501
24579
  packages.forEach((pkg) => {
24580
+ const pinned = pinnedVersions?.get(pkg.name);
24581
+ const version2 = pinned ?? canary.version;
24582
+ const detail = pinned ? " (unaffected, pinned to the published next version)" : "";
24502
24583
  if (options.dryRun) {
24503
- LOGGER.info(`[dry-run] Would set version of ${pkg.name} to ${canary.version}`);
24584
+ LOGGER.info(`[dry-run] Would set version of ${pkg.name} to ${version2}${detail}`);
24504
24585
  return;
24505
24586
  }
24506
- LOGGER.debug(`Set version of ${pkg.name} to ${canary.version}`);
24507
- pkg.content.version = canary.version;
24587
+ LOGGER.debug(`Set version of ${pkg.name} to ${version2}${detail}`);
24588
+ pkg.content.version = version2;
24508
24589
  pkg.write();
24509
24590
  });
24510
- await pnpmPublish("next", options);
24591
+ }
24592
+ function workspaceDependencies(pkg) {
24593
+ return [pkg.content.dependencies, pkg.content.devDependencies, pkg.content.peerDependencies].flatMap(
24594
+ (deps) => Object.entries(deps ?? {}).filter(([, range2]) => range2.startsWith("workspace:")).map(([name]) => name)
24595
+ );
24596
+ }
24597
+ function computePublishSet(packages, options) {
24598
+ if (options.full) {
24599
+ LOGGER.info("Publishing all packages (--full)");
24600
+ return void 0;
24601
+ }
24602
+ const baseline = options.since ?? DEFAULT_BASELINE;
24603
+ if (!isAncestorCommit(baseline, options.repoDir)) {
24604
+ LOGGER.warn(`Cannot resolve the baseline '${baseline}'. Publishing all packages.`);
24605
+ return void 0;
24606
+ }
24607
+ const changedFiles = getChangedFilesSince(baseline, options.repoDir);
24608
+ const globalChange = changedFiles.find((file) => FULL_PUBLISH_PATHS.includes(file));
24609
+ if (globalChange) {
24610
+ LOGGER.info(`'${globalChange}' changed since '${baseline}' and affects the build output of all packages. Publishing all packages.`);
24611
+ return void 0;
24612
+ }
24613
+ const affected = new Set(
24614
+ packages.filter((pkg) => {
24615
+ const location = `${path13.relative(options.repoDir, pkg.location).replace(/\\/g, "/")}/`;
24616
+ return changedFiles.some((file) => file.startsWith(location));
24617
+ }).map((pkg) => pkg.name)
24618
+ );
24619
+ let changed = true;
24620
+ while (changed) {
24621
+ changed = false;
24622
+ for (const pkg of packages) {
24623
+ if (!affected.has(pkg.name) && workspaceDependencies(pkg).some((dep) => affected.has(dep))) {
24624
+ affected.add(pkg.name);
24625
+ changed = true;
24626
+ }
24627
+ }
24628
+ }
24629
+ if (affected.size > 0) {
24630
+ LOGGER.info(`${affected.size} of ${packages.length} packages affected since '${baseline}': ${[...affected].join(", ")}`);
24631
+ }
24632
+ return affected;
24511
24633
  }
24512
24634
  async function publishLatest(options) {
24513
24635
  const version2 = getVersionFromPackage(options.repoDir);
@@ -24529,8 +24651,11 @@ async function publishLatest(options) {
24529
24651
  LOGGER.info(`Publishing ${unpublished.length} of ${publicPackages.length} public packages`);
24530
24652
  await pnpmPublish("latest", options);
24531
24653
  }
24532
- async function pnpmPublish(distTag, options) {
24654
+ async function pnpmPublish(distTag, options, publishNames) {
24533
24655
  let cmd = `pnpm publish -r --tag ${distTag} --no-git-checks`;
24656
+ if (publishNames) {
24657
+ cmd += publishNames.map((name) => ` --filter ${name}`).join("");
24658
+ }
24534
24659
  if (options.dryRun) {
24535
24660
  cmd += " --dry-run";
24536
24661
  }
@@ -24635,11 +24760,9 @@ function resolveTargetRepos(options) {
24635
24760
  return { dir, repos };
24636
24761
  }
24637
24762
  var DEPENDENCY_MAP = {
24638
- "glsp-client": ["glsp"],
24639
- "glsp-server-node": ["glsp-client"],
24640
- "glsp-theia-integration": ["glsp-server-node"],
24641
- "glsp-vscode-integration": ["glsp-server-node"],
24642
- "glsp-eclipse-integration": ["glsp-client", "glsp-server"]
24763
+ "glsp-theia-integration": ["glsp-core"],
24764
+ "glsp-vscode-integration": ["glsp-core"],
24765
+ "glsp-eclipse-integration": ["glsp-core", "glsp-server"]
24643
24766
  };
24644
24767
  function getBuildOrder(repos) {
24645
24768
  const repoSet = new Set(repos);
@@ -25097,14 +25220,8 @@ var SINGLETON_DEPS = ["sprotty", "sprotty-protocol", "vscode-jsonrpc", "inversif
25097
25220
  var PNPM_EXEC_OPTS = { silent: false, env: { FORCE_COLOR: "1" } };
25098
25221
  var PNPM_INSTALL = "pnpm install --no-frozen-lockfile";
25099
25222
  var WORKSPACE_YAML = "pnpm-workspace.yaml";
25100
- var LINKABLE_REPOS = [
25101
- "glsp",
25102
- "glsp-client",
25103
- "glsp-server-node",
25104
- "glsp-theia-integration",
25105
- "glsp-vscode-integration",
25106
- "glsp-eclipse-integration"
25107
- ];
25223
+ var LINKABLE_REPOS = ["glsp-core", "glsp-theia-integration", "glsp-vscode-integration", "glsp-eclipse-integration"];
25224
+ var PROVIDER_REPO = "glsp-core";
25108
25225
  var WORKSPACE_SUBDIR = {
25109
25226
  "glsp-eclipse-integration": "client"
25110
25227
  };
@@ -25162,15 +25279,15 @@ function resolveSingletonDir(fromDirs, dep) {
25162
25279
  }
25163
25280
  return void 0;
25164
25281
  }
25165
- function collectSingletonLinks(clientDir) {
25166
- const fromDirs = [...getGLSPWorkspacePackages(clientDir).map((pkg) => pkg.location), clientDir];
25282
+ function collectSingletonLinks(providerDir) {
25283
+ const fromDirs = [...getGLSPWorkspacePackages(providerDir).map((pkg) => pkg.location), providerDir];
25167
25284
  const links = {};
25168
25285
  for (const dep of SINGLETON_DEPS) {
25169
25286
  const dir = resolveSingletonDir(fromDirs, dep);
25170
25287
  if (dir) {
25171
25288
  links[dep] = dir;
25172
25289
  } else {
25173
- LOGGER.debug(`Singleton ${dep} not found in ${path18.basename(clientDir)}, skipping`);
25290
+ LOGGER.debug(`Singleton ${dep} not found in ${path18.basename(providerDir)}, skipping`);
25174
25291
  }
25175
25292
  }
25176
25293
  return links;
@@ -25193,9 +25310,9 @@ function applyLinkOverrides(repoDir, links) {
25193
25310
  const source = fs13.existsSync(yamlPath) ? readFile(yamlPath) : "";
25194
25311
  const doc = source ? YAML.parseDocument(source) : new YAML.Document({});
25195
25312
  for (const [name, target] of Object.entries(links)) {
25196
- const relative4 = path18.relative(repoDir, target) || ".";
25197
- doc.setIn(["overrides", name], `link:${relative4}`);
25198
- LOGGER.debug(`Link ${name} -> link:${relative4}`);
25313
+ const relative5 = path18.relative(repoDir, target) || ".";
25314
+ doc.setIn(["overrides", name], `link:${relative5}`);
25315
+ LOGGER.debug(`Link ${name} -> link:${relative5}`);
25199
25316
  }
25200
25317
  writeFile(yamlPath, doc.toString({ indent: detectIndent(source) }));
25201
25318
  }
@@ -25228,8 +25345,8 @@ async function runLink(repos, options) {
25228
25345
  LOGGER.warn("No linkable repositories found.");
25229
25346
  return;
25230
25347
  }
25231
- if (!linkable.includes("glsp-client")) {
25232
- LOGGER.warn("glsp-client is not in the configured repos. Linking without glsp-client may not produce useful results.");
25348
+ if (!linkable.includes(PROVIDER_REPO)) {
25349
+ LOGGER.warn(`${PROVIDER_REPO} is not in the configured repos. Linking without ${PROVIDER_REPO} may not produce useful results.`);
25233
25350
  }
25234
25351
  validateReposExist(linkable, options.dir);
25235
25352
  const ordered = getBuildOrder(linkable);
@@ -25247,7 +25364,7 @@ async function runLink(repos, options) {
25247
25364
  const workspaceDir = resolveLinkWorkspaceDir(repoDir, repo);
25248
25365
  LOGGER.info(`Linking ${repo}...`);
25249
25366
  const links = { ...providedPackages };
25250
- if (repo !== "glsp-client" && linkable.includes("glsp-client")) {
25367
+ if (repo !== PROVIDER_REPO && linkable.includes(PROVIDER_REPO)) {
25251
25368
  Object.assign(links, singletonLinks);
25252
25369
  }
25253
25370
  applyLinkOverrides(workspaceDir, links);
@@ -25265,7 +25382,7 @@ async function runLink(repos, options) {
25265
25382
  if (!isLeafRepo(repo)) {
25266
25383
  Object.assign(providedPackages, collectProvidedPackages(workspaceDir));
25267
25384
  }
25268
- if (repo === "glsp-client") {
25385
+ if (repo === PROVIDER_REPO) {
25269
25386
  singletonLinks = collectSingletonLinks(workspaceDir);
25270
25387
  }
25271
25388
  LOGGER.info(`Successfully linked ${repo}`);
@@ -25407,65 +25524,16 @@ var PwdCommand = baseCommand().name("pwd").description("Print resolved paths for
25407
25524
  }
25408
25525
  });
25409
25526
 
25410
- // src/commands/repo/open.ts
25411
- async function openTarget(target) {
25412
- LOGGER.info(`Opening ${target}...`);
25413
- const { default: open2 } = await Promise.resolve().then(() => (init_open(), open_exports));
25414
- await open2(target);
25415
- }
25416
- var TheiaOpenCommand = baseCommand().name("open").description("Open the Theia application in the browser for glsp-theia-integration").option("-v, --verbose", "Verbose output", false).action(async (_cmdOptions, thisCmd) => {
25417
- const cli = thisCmd.opts();
25418
- configureRepoEnv(cli);
25419
- await openTarget(THEIA_URL);
25420
- });
25421
-
25422
- // src/commands/repo/run.ts
25527
+ // src/commands/repo/core.ts
25528
+ var fs14 = __toESM(require("fs"));
25423
25529
  var path22 = __toESM(require("path"));
25424
- function createScopedRunCommand(repo) {
25425
- return baseCommand().name("run").allowUnknownOption(true).allowExcessArguments(true).description(`Run an arbitrary package.json script in ${repo}`).argument("<script>", "The script to run").option("-d, --dir <path>", "Target directory where repos are cloned").option("-v, --verbose", "Verbose output", false).action(async (script, _cmdOptions, thisCmd) => {
25426
- const cli = thisCmd.opts();
25427
- configureRepoEnv(cli);
25428
- const dir = resolveWorkspaceDir(cli.dir);
25429
- const repoDir = path22.resolve(dir, repo);
25430
- const passthrough = thisCmd.args.slice(1).join(" ");
25431
- const cmd = `pnpm run ${passthrough ? `${script} ${passthrough}` : script}`;
25432
- await execForeground(cmd, { cwd: repoDir, verbose: cli.verbose });
25433
- });
25434
- }
25435
-
25436
- // src/commands/repo/server-node.ts
25437
- var fs19 = __toESM(require("fs"));
25438
- var path23 = __toESM(require("path"));
25439
- var BROWSER_BUNDLE_PATH = "examples/workflow-server-bundled-web/wf-glsp-server-webworker.js";
25440
- var NODE_BUNDLE_PATH = "examples/workflow-server-bundled/wf-glsp-server-node.js";
25441
- function resolveBundlePath(repoDir, relativePath, label) {
25442
- const bundlePath = path23.resolve(repoDir, relativePath);
25443
- if (!fs19.existsSync(bundlePath)) {
25444
- throw new Error(`${label} not found at ${bundlePath}. Run 'glsp repo server-node build' first.`);
25445
- }
25446
- return bundlePath;
25447
- }
25448
- var BrowserBundleCommand = baseCommand().name("browser-bundle").description("Print the absolute path to the browser (Web Worker) server bundle").option("-d, --dir <path>", "Target directory where repos are cloned").option("-v, --verbose", "Verbose output", false).action(async (_cmdOptions, thisCmd) => {
25449
- const cli = thisCmd.opts();
25450
- configureRepoEnv(cli);
25451
- const repoDir = resolveRepoDir("glsp-server-node", cli.dir);
25452
- const bundlePath = resolveBundlePath(repoDir, BROWSER_BUNDLE_PATH, "Browser bundle");
25453
- process.stdout.write(bundlePath);
25454
- });
25455
- var NodeBundleCommand = baseCommand().name("node-bundle").description("Print the absolute path to the Node.js server bundle").option("-d, --dir <path>", "Target directory where repos are cloned").option("-v, --verbose", "Verbose output", false).action(async (_cmdOptions, thisCmd) => {
25456
- const cli = thisCmd.opts();
25457
- configureRepoEnv(cli);
25458
- const repoDir = resolveRepoDir("glsp-server-node", cli.dir);
25459
- const bundlePath = resolveBundlePath(repoDir, NODE_BUNDLE_PATH, "Node server bundle");
25460
- process.stdout.write(bundlePath);
25461
- });
25462
25530
 
25463
25531
  // src/commands/repo/start.ts
25464
- var path24 = __toESM(require("path"));
25532
+ var path21 = __toESM(require("path"));
25465
25533
  var JAR_TARGET_DIR = "examples/org.eclipse.glsp.example.workflow/target";
25466
25534
  var JAR_PATTERN = "*-glsp.jar";
25467
25535
  function discoverJar(repoDir) {
25468
- const targetDir = path24.resolve(repoDir, JAR_TARGET_DIR);
25536
+ const targetDir = path21.resolve(repoDir, JAR_TARGET_DIR);
25469
25537
  return discoverNewestFile(JAR_PATTERN, targetDir, `No *-glsp.jar found in ${targetDir}. Run \`glsp repo server build\` first.`);
25470
25538
  }
25471
25539
  function collectPassthroughArgs(cmd) {
@@ -25484,7 +25552,7 @@ var TheiaStartCommand = baseCommand().name("start").allowUnknownOption(true).all
25484
25552
  const cli = thisCmd.opts();
25485
25553
  configureRepoEnv(cli);
25486
25554
  const dir = resolveWorkspaceDir(cli.dir);
25487
- const repoDir = path24.resolve(dir, "glsp-theia-integration");
25555
+ const repoDir = path21.resolve(dir, "glsp-theia-integration");
25488
25556
  const target = cli.electron ? "electron" : "browser";
25489
25557
  const script = cli.debug ? "start:debug" : "start";
25490
25558
  const passthrough = collectPassthroughArgs(thisCmd);
@@ -25493,23 +25561,11 @@ var TheiaStartCommand = baseCommand().name("start").allowUnknownOption(true).all
25493
25561
  await execForeground(resolved, { verbose: cli.verbose });
25494
25562
  }
25495
25563
  });
25496
- var ClientStartCommand = baseCommand().name("start").allowUnknownOption(true).allowExcessArguments(true).description("Start the standalone example for glsp-client").option("-d, --dir <path>", "Target directory where repos are cloned").option("--browser", "Run in browser-only mode with WebWorker server", false).option("--dry-run", "Print the resolved command instead of executing it", false).option("-v, --verbose", "Verbose output", false).action(async (_cmdOptions, thisCmd) => {
25497
- const cli = thisCmd.opts();
25498
- configureRepoEnv(cli);
25499
- const dir = resolveWorkspaceDir(cli.dir);
25500
- const repoDir = path24.resolve(dir, "glsp-client");
25501
- const script = cli.browser ? "start:browser" : "start";
25502
- const passthrough = collectPassthroughArgs(thisCmd);
25503
- const resolved = resolveCommand(`${script}${passthrough}`, repoDir, cli.dryRun);
25504
- if (resolved) {
25505
- await execForeground(resolved, { verbose: cli.verbose });
25506
- }
25507
- });
25508
25564
  var ServerStartCommand = baseCommand().name("start").allowUnknownOption(true).allowExcessArguments(true).description("Start the glsp-server Java GLSP server").option("-d, --dir <path>", "Target directory where repos are cloned").option("-p, --port <port>", "Port to start the server on").option("--socket", "Use socket connection instead of websocket", false).option("--dry-run", "Print the resolved command instead of executing it", false).option("-v, --verbose", "Verbose output", false).action(async (_cmdOptions, thisCmd) => {
25509
25565
  const cli = thisCmd.opts();
25510
25566
  configureRepoEnv(cli);
25511
25567
  const dir = resolveWorkspaceDir(cli.dir);
25512
- const repoDir = path24.resolve(dir, "glsp-server");
25568
+ const repoDir = path21.resolve(dir, "glsp-server");
25513
25569
  const jarPath = discoverJar(repoDir);
25514
25570
  if (!cli.dryRun) {
25515
25571
  LOGGER.info(`Found JAR: ${jarPath}`);
@@ -25525,19 +25581,94 @@ var ServerStartCommand = baseCommand().name("start").allowUnknownOption(true).al
25525
25581
  await execForeground(`${javaCmd}${passthrough}`, { cwd: repoDir, verbose: cli.verbose });
25526
25582
  }
25527
25583
  });
25528
- var ServerNodeStartCommand = baseCommand().name("start").allowUnknownOption(true).allowExcessArguments(true).description("Start the glsp-server-node GLSP server").option("-d, --dir <path>", "Target directory where repos are cloned").option("-p, --port <port>", "Port to start the server on").option("--socket", "Use socket connection instead of websocket", false).option("--dry-run", "Print the resolved command instead of executing it", false).option("-v, --verbose", "Verbose output", false).action(async (_cmdOptions, thisCmd) => {
25584
+
25585
+ // src/commands/repo/core.ts
25586
+ var STANDALONE_EXAMPLE_DIR = "examples/workflow-standalone";
25587
+ var WORKFLOW_SERVER_EXAMPLE_DIR = "examples/workflow-server";
25588
+ var NODE_BUNDLE_PATH = "examples/workflow-server-bundled/wf-glsp-server-node.js";
25589
+ var BROWSER_BUNDLE_PATH = "examples/workflow-server-bundled-web/wf-glsp-server-webworker.js";
25590
+ function resolveBundlePath(repoDir, relativePath, label) {
25591
+ const bundlePath = path22.resolve(repoDir, relativePath);
25592
+ if (!fs14.existsSync(bundlePath)) {
25593
+ throw new Error(`${label} not found at ${bundlePath}. Run 'glsp repo core build' first.`);
25594
+ }
25595
+ return bundlePath;
25596
+ }
25597
+ function resolveExampleDir(exampleDir, cliDir) {
25598
+ return path22.join(resolveRepoDir("glsp-core", cliDir), exampleDir);
25599
+ }
25600
+ var CoreClientStartCommand = baseCommand().name("start").allowUnknownOption(true).allowExcessArguments(true).description("Start the standalone workflow example client").option("-d, --dir <path>", "Target directory where repos are cloned").option("--browser", "Run in browser-only mode with a WebWorker server", false).option("--dry-run", "Print the resolved command instead of executing it", false).option("-v, --verbose", "Verbose output", false).action(async (_cmdOptions, thisCmd) => {
25529
25601
  const cli = thisCmd.opts();
25530
25602
  configureRepoEnv(cli);
25531
- const dir = resolveWorkspaceDir(cli.dir);
25532
- const repoDir = path24.resolve(dir, "glsp-server-node");
25533
- const script = cli.socket ? "start" : "start:websocket";
25603
+ const exampleDir = resolveExampleDir(STANDALONE_EXAMPLE_DIR, cli.dir);
25604
+ const script = cli.browser ? "start:browser" : "start";
25605
+ const passthrough = collectPassthroughArgs(thisCmd);
25606
+ const resolved = resolveCommand(`${script}${passthrough}`, exampleDir, cli.dryRun);
25607
+ if (resolved) {
25608
+ await execForeground(resolved, { verbose: cli.verbose });
25609
+ }
25610
+ });
25611
+ var CoreClientCommand = baseCommand().name("client").description("Operations on the GLSP client and its standalone example").option("-d, --dir <path>", "Target directory where repos are cloned (inherited by subcommands)").addCommand(CoreClientStartCommand);
25612
+ var CoreServerStartCommand = baseCommand().name("start").allowUnknownOption(true).allowExcessArguments(true).description("Start the workflow example node GLSP server").option("-d, --dir <path>", "Target directory where repos are cloned").option("-p, --port <port>", "Port to start the server on").option("--socket", "Use a socket connection instead of websocket", false).option("--dry-run", "Print the resolved command instead of executing it", false).option("-v, --verbose", "Verbose output", false).action(async (_cmdOptions, thisCmd) => {
25613
+ const cli = thisCmd.opts();
25614
+ configureRepoEnv(cli);
25615
+ const exampleDir = resolveExampleDir(WORKFLOW_SERVER_EXAMPLE_DIR, cli.dir);
25616
+ const script = cli.socket ? "start:socket" : "start";
25534
25617
  const portArg = cli.port ? ` --port ${cli.port}` : "";
25535
25618
  const passthrough = collectPassthroughArgs(thisCmd);
25536
- const resolved = resolveCommand(`${script}${portArg}${passthrough}`, repoDir, cli.dryRun);
25619
+ const resolved = resolveCommand(`${script}${portArg}${passthrough}`, exampleDir, cli.dryRun);
25537
25620
  if (resolved) {
25538
25621
  await execForeground(resolved, { verbose: cli.verbose });
25539
25622
  }
25540
25623
  });
25624
+ var CoreServerNodeBundleCommand = baseCommand().name("node-bundle").description("Print the absolute path to the Node.js server bundle").option("-d, --dir <path>", "Target directory where repos are cloned").option("-v, --verbose", "Verbose output", false).action(async (_cmdOptions, thisCmd) => {
25625
+ const cli = thisCmd.opts();
25626
+ configureRepoEnv(cli);
25627
+ const repoDir = resolveRepoDir("glsp-core", cli.dir);
25628
+ process.stdout.write(resolveBundlePath(repoDir, NODE_BUNDLE_PATH, "Node server bundle"));
25629
+ });
25630
+ var CoreServerBrowserBundleCommand = baseCommand().name("browser-bundle").description("Print the absolute path to the browser (Web Worker) server bundle").option("-d, --dir <path>", "Target directory where repos are cloned").option("-v, --verbose", "Verbose output", false).action(async (_cmdOptions, thisCmd) => {
25631
+ const cli = thisCmd.opts();
25632
+ configureRepoEnv(cli);
25633
+ const repoDir = resolveRepoDir("glsp-core", cli.dir);
25634
+ process.stdout.write(resolveBundlePath(repoDir, BROWSER_BUNDLE_PATH, "Browser bundle"));
25635
+ });
25636
+ var CoreServerCommand = baseCommand().name("server").description("Operations on the node GLSP server and its workflow example").option("-d, --dir <path>", "Target directory where repos are cloned (inherited by subcommands)").addCommand(CoreServerStartCommand).addCommand(CoreServerNodeBundleCommand).addCommand(CoreServerBrowserBundleCommand);
25637
+ var CORE_COMPONENT_COMMANDS = [CoreClientCommand, CoreServerCommand];
25638
+ for (const componentCmd of CORE_COMPONENT_COMMANDS) {
25639
+ componentCmd.hook("preSubcommand", (_, subcommand) => {
25640
+ const parentDir = componentCmd.getOptionValue("dir");
25641
+ if (parentDir && !subcommand.getOptionValue("dir")) {
25642
+ subcommand.setOptionValue("dir", parentDir);
25643
+ }
25644
+ });
25645
+ }
25646
+
25647
+ // src/commands/repo/open.ts
25648
+ async function openTarget(target) {
25649
+ LOGGER.info(`Opening ${target}...`);
25650
+ const { default: open2 } = await Promise.resolve().then(() => (init_open(), open_exports));
25651
+ await open2(target);
25652
+ }
25653
+ var TheiaOpenCommand = baseCommand().name("open").description("Open the Theia application in the browser for glsp-theia-integration").option("-v, --verbose", "Verbose output", false).action(async (_cmdOptions, thisCmd) => {
25654
+ const cli = thisCmd.opts();
25655
+ configureRepoEnv(cli);
25656
+ await openTarget(THEIA_URL);
25657
+ });
25658
+
25659
+ // src/commands/repo/run.ts
25660
+ var path24 = __toESM(require("path"));
25661
+ function createScopedRunCommand(repo) {
25662
+ return baseCommand().name("run").allowUnknownOption(true).allowExcessArguments(true).description(`Run an arbitrary package.json script in ${repo}`).argument("<script>", "The script to run").option("-d, --dir <path>", "Target directory where repos are cloned").option("-v, --verbose", "Verbose output", false).action(async (script, _cmdOptions, thisCmd) => {
25663
+ const cli = thisCmd.opts();
25664
+ configureRepoEnv(cli);
25665
+ const dir = resolveWorkspaceDir(cli.dir);
25666
+ const repoDir = path24.resolve(dir, repo);
25667
+ const passthrough = thisCmd.args.slice(1).join(" ");
25668
+ const cmd = `pnpm run ${passthrough ? `${script} ${passthrough}` : script}`;
25669
+ await execForeground(cmd, { cwd: repoDir, verbose: cli.verbose });
25670
+ });
25671
+ }
25541
25672
 
25542
25673
  // src/commands/repo/switch.ts
25543
25674
  var path25 = __toESM(require("path"));
@@ -25662,17 +25793,13 @@ function discoverWebVsix(repoDir) {
25662
25793
 
25663
25794
  // src/commands/repo/subrepos.ts
25664
25795
  var SHORT_ALIASES = {
25665
- "glsp-client": "client",
25666
- "glsp-server-node": "server-node",
25796
+ "glsp-core": "core",
25667
25797
  "glsp-theia-integration": "theia",
25668
25798
  "glsp-vscode-integration": "vscode",
25669
25799
  "glsp-eclipse-integration": "eclipse",
25670
- "glsp-server": "server-java",
25671
- "glsp-playwright": "playwright"
25800
+ "glsp-server": "server-java"
25672
25801
  };
25673
25802
  var START_COMMANDS = {
25674
- "glsp-client": ClientStartCommand,
25675
- "glsp-server-node": ServerNodeStartCommand,
25676
25803
  "glsp-server": ServerStartCommand,
25677
25804
  "glsp-theia-integration": TheiaStartCommand
25678
25805
  };
@@ -25680,7 +25807,7 @@ var OPEN_COMMANDS = {
25680
25807
  "glsp-theia-integration": TheiaOpenCommand
25681
25808
  };
25682
25809
  var EXTRA_COMMANDS = {
25683
- "glsp-server-node": [BrowserBundleCommand, NodeBundleCommand],
25810
+ "glsp-core": CORE_COMPONENT_COMMANDS,
25684
25811
  "glsp-vscode-integration": [
25685
25812
  VsixIdCommand,
25686
25813
  VsixPathCommand,
@@ -25786,7 +25913,7 @@ function generateWorkspaceContent(repos, dir, options) {
25786
25913
  tasks
25787
25914
  },
25788
25915
  extensions: {
25789
- recommendations: ["dbaeumer.vscode-eslint", "esbenp.prettier-vscode", "DavidAnson.vscode-markdownlint"]
25916
+ recommendations: ["oxc.oxc-vscode", "DavidAnson.vscode-markdownlint"]
25790
25917
  }
25791
25918
  };
25792
25919
  }