@optique/core 1.3.0-dev.2388 → 1.3.0-dev.2390

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.
@@ -663,12 +663,17 @@ async function completeEffectfulSourcesAsync(nodes, state, runtime, exec, option
663
663
  const demandNodes = options?.demandNodes ?? nodes;
664
664
  const demanded = collectDemandedDependencyIds(demandNodes, state, exec.trace);
665
665
  for (const id of demanded) session.demanded.add(id);
666
- for (const node of nodes) {
667
- if (node.requiresSourceId == null || node.providesSourceIds == null) continue;
668
- if (session.demanded.has(node.requiresSourceId)) continue;
669
- for (const provided of node.providesSourceIds) if (session.demanded.has(provided)) {
670
- session.demanded.add(node.requiresSourceId);
671
- break;
666
+ let demandAdded = true;
667
+ while (demandAdded) {
668
+ demandAdded = false;
669
+ for (const node of nodes) {
670
+ if (node.requiresSourceId == null || node.providesSourceIds == null) continue;
671
+ if (session.demanded.has(node.requiresSourceId)) continue;
672
+ for (const provided of node.providesSourceIds) if (session.demanded.has(provided)) {
673
+ session.demanded.add(node.requiresSourceId);
674
+ demandAdded = true;
675
+ break;
676
+ }
672
677
  }
673
678
  }
674
679
  }
@@ -663,12 +663,17 @@ async function completeEffectfulSourcesAsync(nodes, state, runtime, exec, option
663
663
  const demandNodes = options?.demandNodes ?? nodes;
664
664
  const demanded = collectDemandedDependencyIds(demandNodes, state, exec.trace);
665
665
  for (const id of demanded) session.demanded.add(id);
666
- for (const node of nodes) {
667
- if (node.requiresSourceId == null || node.providesSourceIds == null) continue;
668
- if (session.demanded.has(node.requiresSourceId)) continue;
669
- for (const provided of node.providesSourceIds) if (session.demanded.has(provided)) {
670
- session.demanded.add(node.requiresSourceId);
671
- break;
666
+ let demandAdded = true;
667
+ while (demandAdded) {
668
+ demandAdded = false;
669
+ for (const node of nodes) {
670
+ if (node.requiresSourceId == null || node.providesSourceIds == null) continue;
671
+ if (session.demanded.has(node.requiresSourceId)) continue;
672
+ for (const provided of node.providesSourceIds) if (session.demanded.has(provided)) {
673
+ session.demanded.add(node.requiresSourceId);
674
+ demandAdded = true;
675
+ break;
676
+ }
672
677
  }
673
678
  }
674
679
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@optique/core",
3
- "version": "1.3.0-dev.2388",
3
+ "version": "1.3.0-dev.2390",
4
4
  "description": "Type-safe combinatorial command-line interface parser",
5
5
  "keywords": [
6
6
  "CLI",
@@ -221,7 +221,7 @@
221
221
  },
222
222
  "sideEffects": false,
223
223
  "devDependencies": {
224
- "@optique/env": "1.3.0-dev.2388+055f7a0d",
224
+ "@optique/env": "1.3.0-dev.2390+5be77b93",
225
225
  "@types/node": "^24.0.0",
226
226
  "fast-check": "^4.7.0",
227
227
  "tsdown": "^0.13.0",