@ttsc/unplugin 0.31.4 → 0.32.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.
- package/lib/core/bridge/TtscProjectRecord.d.cts +8 -0
- package/lib/core/bridge/TtscProjectRecord.d.mts +8 -0
- package/lib/core/bridge/TtscProjectRecord.d.ts +8 -0
- package/lib/core/bridge/readProjectRecordFile.js +5 -1
- package/lib/core/bridge/readProjectRecordFile.js.map +1 -1
- package/lib/core/bridge/readProjectRecordFile.mjs +5 -1
- package/lib/core/bridge/readProjectRecordFile.mjs.map +1 -1
- package/lib/core/observer/WatchScope.d.cts +3 -3
- package/lib/core/observer/WatchScope.d.mts +3 -3
- package/lib/core/observer/WatchScope.d.ts +3 -3
- package/lib/core/observer/createInputObserver.d.cts +7 -8
- package/lib/core/observer/createInputObserver.d.mts +7 -8
- package/lib/core/observer/createInputObserver.d.ts +7 -8
- package/lib/core/observer/createInputObserver.js +7 -8
- package/lib/core/observer/createInputObserver.js.map +1 -1
- package/lib/core/observer/createInputObserver.mjs +7 -8
- package/lib/core/observer/createInputObserver.mjs.map +1 -1
- package/lib/core/transform/envelope/generationCaseSensitivity.d.cts +32 -0
- package/lib/core/transform/envelope/generationCaseSensitivity.d.mts +32 -0
- package/lib/core/transform/envelope/generationCaseSensitivity.d.ts +32 -0
- package/lib/core/transform/envelope/generationCaseSensitivity.js +39 -0
- package/lib/core/transform/envelope/generationCaseSensitivity.js.map +1 -0
- package/lib/core/transform/envelope/generationCaseSensitivity.mjs +37 -0
- package/lib/core/transform/envelope/generationCaseSensitivity.mjs.map +1 -0
- package/lib/core/transform/envelope/selectExternalInputPaths.js +2 -1
- package/lib/core/transform/envelope/selectExternalInputPaths.js.map +1 -1
- package/lib/core/transform/envelope/selectExternalInputPaths.mjs +2 -1
- package/lib/core/transform/envelope/selectExternalInputPaths.mjs.map +1 -1
- package/lib/core/transform/envelope/selectNotifiableAbsentInputs.js +2 -1
- package/lib/core/transform/envelope/selectNotifiableAbsentInputs.js.map +1 -1
- package/lib/core/transform/envelope/selectNotifiableAbsentInputs.mjs +2 -1
- package/lib/core/transform/envelope/selectNotifiableAbsentInputs.mjs.map +1 -1
- package/lib/core/transform/filesystem/createHostPathIdentityContext.d.cts +9 -1
- package/lib/core/transform/filesystem/createHostPathIdentityContext.d.mts +9 -1
- package/lib/core/transform/filesystem/createHostPathIdentityContext.d.ts +9 -1
- package/lib/core/transform/filesystem/createHostPathIdentityContext.js +10 -2
- package/lib/core/transform/filesystem/createHostPathIdentityContext.js.map +1 -1
- package/lib/core/transform/filesystem/createHostPathIdentityContext.mjs +10 -2
- package/lib/core/transform/filesystem/createHostPathIdentityContext.mjs.map +1 -1
- package/lib/core/transform/generation/captureTransformGeneration.js +10 -2
- package/lib/core/transform/generation/captureTransformGeneration.js.map +1 -1
- package/lib/core/transform/generation/captureTransformGeneration.mjs +10 -2
- package/lib/core/transform/generation/captureTransformGeneration.mjs.map +1 -1
- package/lib/core/transform/generation/selectPersistentHostInputs.js +2 -1
- package/lib/core/transform/generation/selectPersistentHostInputs.js.map +1 -1
- package/lib/core/transform/generation/selectPersistentHostInputs.mjs +2 -1
- package/lib/core/transform/generation/selectPersistentHostInputs.mjs.map +1 -1
- package/lib/core/transform/inputs/nativeInputPredicateState.js.map +1 -1
- package/lib/core/transform/inputs/nativeInputPredicateState.mjs.map +1 -1
- package/lib/core/transform/tracker/broker/watchBrokerSource.js +14 -0
- package/lib/core/transform/tracker/broker/watchBrokerSource.js.map +1 -1
- package/lib/core/transform/tracker/broker/watchBrokerSource.mjs +14 -0
- package/lib/core/transform/tracker/broker/watchBrokerSource.mjs.map +1 -1
- package/lib/core/transform/tracker/createHostInputMutationTracker.d.cts +7 -1
- package/lib/core/transform/tracker/createHostInputMutationTracker.d.mts +7 -1
- package/lib/core/transform/tracker/createHostInputMutationTracker.d.ts +7 -1
- package/lib/core/transform/tracker/createHostInputMutationTracker.js +28 -2
- package/lib/core/transform/tracker/createHostInputMutationTracker.js.map +1 -1
- package/lib/core/transform/tracker/createHostInputMutationTracker.mjs +28 -2
- package/lib/core/transform/tracker/createHostInputMutationTracker.mjs.map +1 -1
- package/lib/core/transform/tracker/createProjectMutationTracker.d.cts +10 -7
- package/lib/core/transform/tracker/createProjectMutationTracker.d.mts +10 -7
- package/lib/core/transform/tracker/createProjectMutationTracker.d.ts +10 -7
- package/lib/core/transform/tracker/createProjectMutationTracker.js +82 -38
- package/lib/core/transform/tracker/createProjectMutationTracker.js.map +1 -1
- package/lib/core/transform/tracker/createProjectMutationTracker.mjs +82 -38
- package/lib/core/transform/tracker/createProjectMutationTracker.mjs.map +1 -1
- package/lib/core/transform/transformTtsc.js +5 -1
- package/lib/core/transform/transformTtsc.js.map +1 -1
- package/lib/core/transform/transformTtsc.mjs +5 -1
- package/lib/core/transform/transformTtsc.mjs.map +1 -1
- package/lib/core/transform/watch/TtscWatchInputBaseline.d.cts +2 -1
- package/lib/core/transform/watch/TtscWatchInputBaseline.d.mts +2 -1
- package/lib/core/transform/watch/TtscWatchInputBaseline.d.ts +2 -1
- package/lib/core/transform/watch/isWatchInputKeyBaseline.js.map +1 -1
- package/lib/core/transform/watch/isWatchInputKeyBaseline.mjs.map +1 -1
- package/lib/core/transform/watch/notifyProjectRecord.d.cts +3 -4
- package/lib/core/transform/watch/notifyProjectRecord.d.mts +3 -4
- package/lib/core/transform/watch/notifyProjectRecord.d.ts +3 -4
- package/lib/core/transform/watch/notifyProjectRecord.js +5 -4
- package/lib/core/transform/watch/notifyProjectRecord.js.map +1 -1
- package/lib/core/transform/watch/notifyProjectRecord.mjs +5 -4
- package/lib/core/transform/watch/notifyProjectRecord.mjs.map +1 -1
- package/lib/core/transform/watch/recordedDependencyWitnesses.d.cts +30 -0
- package/lib/core/transform/watch/recordedDependencyWitnesses.d.mts +30 -0
- package/lib/core/transform/watch/recordedDependencyWitnesses.d.ts +30 -0
- package/lib/core/transform/watch/recordedDependencyWitnesses.js +51 -0
- package/lib/core/transform/watch/recordedDependencyWitnesses.js.map +1 -0
- package/lib/core/transform/watch/recordedDependencyWitnesses.mjs +49 -0
- package/lib/core/transform/watch/recordedDependencyWitnesses.mjs.map +1 -0
- package/lib/core/transform/watch/watchInputEvidenceMatchesBaseline.d.cts +1 -2
- package/lib/core/transform/watch/watchInputEvidenceMatchesBaseline.d.mts +1 -2
- package/lib/core/transform/watch/watchInputEvidenceMatchesBaseline.d.ts +1 -2
- package/lib/core/transform/watch/watchInputEvidenceMatchesBaseline.js +1 -2
- package/lib/core/transform/watch/watchInputEvidenceMatchesBaseline.js.map +1 -1
- package/lib/core/transform/watch/watchInputEvidenceMatchesBaseline.mjs +1 -2
- package/lib/core/transform/watch/watchInputEvidenceMatchesBaseline.mjs.map +1 -1
- package/lib/core/tsconfig/TsconfigReadTransaction.d.cts +11 -8
- package/lib/core/tsconfig/TsconfigReadTransaction.d.mts +11 -8
- package/lib/core/tsconfig/TsconfigReadTransaction.d.ts +11 -8
- package/lib/core/tsconfig/TsconfigReadTransaction.js +11 -8
- package/lib/core/tsconfig/TsconfigReadTransaction.js.map +1 -1
- package/lib/core/tsconfig/TsconfigReadTransaction.mjs +11 -8
- package/lib/core/tsconfig/TsconfigReadTransaction.mjs.map +1 -1
- package/lib/core/tsconfig/findDeclaredCompilerOption.d.cts +3 -2
- package/lib/core/tsconfig/findDeclaredCompilerOption.d.mts +3 -2
- package/lib/core/tsconfig/findDeclaredCompilerOption.d.ts +3 -2
- package/lib/core/tsconfig/findDeclaredCompilerOption.js +3 -2
- package/lib/core/tsconfig/findDeclaredCompilerOption.js.map +1 -1
- package/lib/core/tsconfig/findDeclaredCompilerOption.mjs +3 -2
- package/lib/core/tsconfig/findDeclaredCompilerOption.mjs.map +1 -1
- package/lib/core/tsconfig/findDeclaredFileSpecs.d.cts +3 -2
- package/lib/core/tsconfig/findDeclaredFileSpecs.d.mts +3 -2
- package/lib/core/tsconfig/findDeclaredFileSpecs.d.ts +3 -2
- package/lib/core/tsconfig/findDeclaredFileSpecs.js +3 -2
- package/lib/core/tsconfig/findDeclaredFileSpecs.js.map +1 -1
- package/lib/core/tsconfig/findDeclaredFileSpecs.mjs +3 -2
- package/lib/core/tsconfig/findDeclaredFileSpecs.mjs.map +1 -1
- package/lib/core/tsconfig/findDeclaredPaths.d.cts +3 -3
- package/lib/core/tsconfig/findDeclaredPaths.d.mts +3 -3
- package/lib/core/tsconfig/findDeclaredPaths.d.ts +3 -3
- package/lib/core/tsconfig/findDeclaredPaths.js +2 -2
- package/lib/core/tsconfig/findDeclaredPaths.mjs +2 -2
- package/lib/core/tsconfig/findDeclaredValue.d.cts +2 -1
- package/lib/core/tsconfig/findDeclaredValue.d.mts +2 -1
- package/lib/core/tsconfig/findDeclaredValue.d.ts +2 -1
- package/lib/core/tsconfig/findDeclaredValue.js +2 -1
- package/lib/core/tsconfig/findDeclaredValue.js.map +1 -1
- package/lib/core/tsconfig/findDeclaredValue.mjs +2 -1
- package/lib/core/tsconfig/findDeclaredValue.mjs.map +1 -1
- package/lib/core/tsconfig/readEffectiveTsconfigTemplateCompilerOptions.js +1 -1
- package/lib/core/tsconfig/readEffectiveTsconfigTemplateCompilerOptions.mjs +1 -1
- package/lib/core/tsconfig/readEffectiveTsconfigTemplateFileSpecs.d.cts +2 -2
- package/lib/core/tsconfig/readEffectiveTsconfigTemplateFileSpecs.d.mts +2 -2
- package/lib/core/tsconfig/readEffectiveTsconfigTemplateFileSpecs.d.ts +2 -2
- package/lib/core/tsconfig/readEffectiveTsconfigTemplateFileSpecs.js +2 -2
- package/lib/core/tsconfig/readEffectiveTsconfigTemplateFileSpecs.mjs +2 -2
- package/lib/core/tsconfig/readProjectMembershipPolicy.d.cts +3 -3
- package/lib/core/tsconfig/readProjectMembershipPolicy.d.mts +3 -3
- package/lib/core/tsconfig/readProjectMembershipPolicy.d.ts +3 -3
- package/lib/core/tsconfig/readProjectMembershipPolicy.js +4 -4
- package/lib/core/tsconfig/readProjectMembershipPolicy.mjs +4 -4
- package/package.json +4 -4
- package/src/core/bridge/TtscProjectRecord.ts +9 -0
- package/src/core/bridge/readProjectRecordFile.ts +5 -1
- package/src/core/observer/WatchScope.ts +3 -3
- package/src/core/observer/createInputObserver.ts +7 -8
- package/src/core/transform/envelope/generationCaseSensitivity.ts +46 -0
- package/src/core/transform/envelope/selectExternalInputPaths.ts +5 -1
- package/src/core/transform/envelope/selectNotifiableAbsentInputs.ts +5 -1
- package/src/core/transform/filesystem/createHostPathIdentityContext.ts +9 -1
- package/src/core/transform/generation/captureTransformGeneration.ts +10 -0
- package/src/core/transform/generation/selectPersistentHostInputs.ts +5 -1
- package/src/core/transform/inputs/nativeInputPredicateState.ts +1 -3
- package/src/core/transform/tracker/broker/watchBrokerSource.ts +14 -0
- package/src/core/transform/tracker/createHostInputMutationTracker.ts +28 -1
- package/src/core/transform/tracker/createProjectMutationTracker.ts +91 -42
- package/src/core/transform/transformTtsc.ts +5 -1
- package/src/core/transform/watch/TtscWatchInputBaseline.ts +2 -1
- package/src/core/transform/watch/isWatchInputKeyBaseline.ts +4 -2
- package/src/core/transform/watch/notifyProjectRecord.ts +5 -4
- package/src/core/transform/watch/recordedDependencyWitnesses.ts +50 -0
- package/src/core/transform/watch/watchInputEvidenceMatchesBaseline.ts +1 -2
- package/src/core/tsconfig/TsconfigReadTransaction.ts +11 -8
- package/src/core/tsconfig/findDeclaredCompilerOption.ts +3 -2
- package/src/core/tsconfig/findDeclaredFileSpecs.ts +3 -2
- package/src/core/tsconfig/findDeclaredPaths.ts +3 -3
- package/src/core/tsconfig/findDeclaredValue.ts +2 -1
- package/src/core/tsconfig/readEffectiveTsconfigTemplateCompilerOptions.ts +1 -1
- package/src/core/tsconfig/readEffectiveTsconfigTemplateFileSpecs.ts +2 -2
- package/src/core/tsconfig/readProjectMembershipPolicy.ts +4 -4
|
@@ -10,8 +10,9 @@ import { TsconfigReadTransaction } from "./TsconfigReadTransaction.mjs";
|
|
|
10
10
|
* anchored at the named declaring config, including independent link aliases.
|
|
11
11
|
*
|
|
12
12
|
* @returns The list and its directory, undefined when no array is selected, or
|
|
13
|
-
* null when the root config cannot be read as an object. A supplied
|
|
14
|
-
* belongs to this freshness observation; later reads require a
|
|
13
|
+
* null when the root config cannot be read as an object. A supplied
|
|
14
|
+
* transaction belongs to this freshness observation; later reads require a
|
|
15
|
+
* fresh owner.
|
|
15
16
|
* @evidence contracts/common.md#principled-implementation
|
|
16
17
|
* Own invalid values stop inheritance at that node. Forward inherited
|
|
17
18
|
* traversal keeps the last array and ignores empty selections, preserving
|
|
@@ -10,8 +10,9 @@ import { TsconfigReadTransaction } from "./TsconfigReadTransaction";
|
|
|
10
10
|
* anchored at the named declaring config, including independent link aliases.
|
|
11
11
|
*
|
|
12
12
|
* @returns The list and its directory, undefined when no array is selected, or
|
|
13
|
-
* null when the root config cannot be read as an object. A supplied
|
|
14
|
-
* belongs to this freshness observation; later reads require a
|
|
13
|
+
* null when the root config cannot be read as an object. A supplied
|
|
14
|
+
* transaction belongs to this freshness observation; later reads require a
|
|
15
|
+
* fresh owner.
|
|
15
16
|
* @evidence contracts/common.md#principled-implementation
|
|
16
17
|
* Own invalid values stop inheritance at that node. Forward inherited
|
|
17
18
|
* traversal keeps the last array and ignores empty selections, preserving
|
|
@@ -14,8 +14,9 @@ var TsconfigReadTransaction = require('./TsconfigReadTransaction.js');
|
|
|
14
14
|
* anchored at the named declaring config, including independent link aliases.
|
|
15
15
|
*
|
|
16
16
|
* @returns The list and its directory, undefined when no array is selected, or
|
|
17
|
-
* null when the root config cannot be read as an object. A supplied
|
|
18
|
-
* belongs to this freshness observation; later reads require a
|
|
17
|
+
* null when the root config cannot be read as an object. A supplied
|
|
18
|
+
* transaction belongs to this freshness observation; later reads require a
|
|
19
|
+
* fresh owner.
|
|
19
20
|
* @evidence contracts/common.md#principled-implementation
|
|
20
21
|
* Own invalid values stop inheritance at that node. Forward inherited
|
|
21
22
|
* traversal keeps the last array and ignores empty selections, preserving
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findDeclaredFileSpecs.js","sources":["../../../src/core/tsconfig/findDeclaredFileSpecs.ts"],"sourcesContent":[null],"names":["TsconfigReadTransaction"],"mappings":";;;;;AAIA
|
|
1
|
+
{"version":3,"file":"findDeclaredFileSpecs.js","sources":["../../../src/core/tsconfig/findDeclaredFileSpecs.ts"],"sourcesContent":[null],"names":["TsconfigReadTransaction"],"mappings":";;;;;AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0CG;AACG,SAAU,qBAAqB,CACnC,QAAgB,EAChB,GAAoC,EACpC,OAAqB,EACrB,OAAwD,EAAA;IAKxD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;AACvC,IAAA,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC;AACtB,IAAA,MAAM,WAAW,GACf,OAAO,YAAYA;AACjB,UAAE;AACF,UAAE,IAAIA,+CAAuB,CAAC,OAAO,CAAC;IAC1C,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC;IACvC,IAAI,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;AAAE,QAAA,OAAO,IAAI;IACrD,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAC/B,QAAQ,EACR,CAAC,MAAM,KAAI;AACT,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;AAAE,YAAA,OAAO,IAAI;AACtC,QAAA,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC;AAAE,YAAA,OAAO,SAAS;AACxE,QAAA,MAAM,KAAK,GAAI,MAAkC,CAAC,GAAG,CAAC;AACtD,QAAA,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK;AACxB,cAAE;AACE,gBAAA,QAAQ,EAAE,KAAK,CAAC,KAAK,EAAE;AACvB,gBAAA,KAAK,EAAE,KAAK,CAAC,MAAM,CACjB,CAAC,KAAK,KAAsB,OAAO,KAAK,KAAK,QAAQ,CACtD;AACF;cACD,IAAI;IACV,CAAC,EACD,IAAI,GAAG,EAAE,EACT,OAAO,EACP,MAAM,CACP;IACD,OAAO,QAAQ,KAAK;AAClB,UAAE;AACF,UAAE,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,KAAK,EAAE;AACtD;;;;"}
|
|
@@ -12,8 +12,9 @@ import { TsconfigReadTransaction } from './TsconfigReadTransaction.mjs';
|
|
|
12
12
|
* anchored at the named declaring config, including independent link aliases.
|
|
13
13
|
*
|
|
14
14
|
* @returns The list and its directory, undefined when no array is selected, or
|
|
15
|
-
* null when the root config cannot be read as an object. A supplied
|
|
16
|
-
* belongs to this freshness observation; later reads require a
|
|
15
|
+
* null when the root config cannot be read as an object. A supplied
|
|
16
|
+
* transaction belongs to this freshness observation; later reads require a
|
|
17
|
+
* fresh owner.
|
|
17
18
|
* @evidence contracts/common.md#principled-implementation
|
|
18
19
|
* Own invalid values stop inheritance at that node. Forward inherited
|
|
19
20
|
* traversal keeps the last array and ignores empty selections, preserving
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findDeclaredFileSpecs.mjs","sources":["../../../src/core/tsconfig/findDeclaredFileSpecs.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAIA
|
|
1
|
+
{"version":3,"file":"findDeclaredFileSpecs.mjs","sources":["../../../src/core/tsconfig/findDeclaredFileSpecs.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0CG;AACG,SAAU,qBAAqB,CACnC,QAAgB,EAChB,GAAoC,EACpC,OAAqB,EACrB,OAAwD,EAAA;IAKxD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;AACvC,IAAA,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC;AACtB,IAAA,MAAM,WAAW,GACf,OAAO,YAAY;AACjB,UAAE;AACF,UAAE,IAAI,uBAAuB,CAAC,OAAO,CAAC;IAC1C,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC;IACvC,IAAI,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;AAAE,QAAA,OAAO,IAAI;IACrD,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAC/B,QAAQ,EACR,CAAC,MAAM,KAAI;AACT,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;AAAE,YAAA,OAAO,IAAI;AACtC,QAAA,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC;AAAE,YAAA,OAAO,SAAS;AACxE,QAAA,MAAM,KAAK,GAAI,MAAkC,CAAC,GAAG,CAAC;AACtD,QAAA,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK;AACxB,cAAE;AACE,gBAAA,QAAQ,EAAE,KAAK,CAAC,KAAK,EAAE;AACvB,gBAAA,KAAK,EAAE,KAAK,CAAC,MAAM,CACjB,CAAC,KAAK,KAAsB,OAAO,KAAK,KAAK,QAAQ,CACtD;AACF;cACD,IAAI;IACV,CAAC,EACD,IAAI,GAAG,EAAE,EACT,OAAO,EACP,MAAM,CACP;IACD,OAAO,QAAQ,KAAK;AAClB,UAAE;AACF,UAAE,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,KAAK,EAAE;AACtD;;;;"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { TsconfigReadTransaction } from "./TsconfigReadTransaction.cjs";
|
|
2
1
|
import type { IDeclaredPaths } from "./IDeclaredPaths.cjs";
|
|
2
|
+
import { TsconfigReadTransaction } from "./TsconfigReadTransaction.cjs";
|
|
3
3
|
/**
|
|
4
4
|
* Locate the nearest `compilerOptions.paths` declaration in the `extends` chain
|
|
5
5
|
* rooted at `tsconfig`. The own config wins over its bases; within an `extends`
|
|
6
6
|
* array, later entries win over earlier ones. `seen` breaks circular chains;
|
|
7
7
|
* the compiler reports the actual config error. Optional decoded sources or
|
|
8
|
-
* graph observations share only within the caller's current read; physical
|
|
9
|
-
* guards remain branch-local.
|
|
8
|
+
* graph observations share only within the caller's current read; physical
|
|
9
|
+
* cycle guards remain branch-local.
|
|
10
10
|
*
|
|
11
11
|
* @evidence contracts/common.md#principled-implementation
|
|
12
12
|
* The selector accepts a non-array paths record and the shared value reader
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { TsconfigReadTransaction } from "./TsconfigReadTransaction.mjs";
|
|
2
1
|
import type { IDeclaredPaths } from "./IDeclaredPaths.mjs";
|
|
2
|
+
import { TsconfigReadTransaction } from "./TsconfigReadTransaction.mjs";
|
|
3
3
|
/**
|
|
4
4
|
* Locate the nearest `compilerOptions.paths` declaration in the `extends` chain
|
|
5
5
|
* rooted at `tsconfig`. The own config wins over its bases; within an `extends`
|
|
6
6
|
* array, later entries win over earlier ones. `seen` breaks circular chains;
|
|
7
7
|
* the compiler reports the actual config error. Optional decoded sources or
|
|
8
|
-
* graph observations share only within the caller's current read; physical
|
|
9
|
-
* guards remain branch-local.
|
|
8
|
+
* graph observations share only within the caller's current read; physical
|
|
9
|
+
* cycle guards remain branch-local.
|
|
10
10
|
*
|
|
11
11
|
* @evidence contracts/common.md#principled-implementation
|
|
12
12
|
* The selector accepts a non-array paths record and the shared value reader
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { TsconfigReadTransaction } from "./TsconfigReadTransaction";
|
|
2
1
|
import type { IDeclaredPaths } from "./IDeclaredPaths";
|
|
2
|
+
import { TsconfigReadTransaction } from "./TsconfigReadTransaction";
|
|
3
3
|
/**
|
|
4
4
|
* Locate the nearest `compilerOptions.paths` declaration in the `extends` chain
|
|
5
5
|
* rooted at `tsconfig`. The own config wins over its bases; within an `extends`
|
|
6
6
|
* array, later entries win over earlier ones. `seen` breaks circular chains;
|
|
7
7
|
* the compiler reports the actual config error. Optional decoded sources or
|
|
8
|
-
* graph observations share only within the caller's current read; physical
|
|
9
|
-
* guards remain branch-local.
|
|
8
|
+
* graph observations share only within the caller's current read; physical
|
|
9
|
+
* cycle guards remain branch-local.
|
|
10
10
|
*
|
|
11
11
|
* @evidence contracts/common.md#principled-implementation
|
|
12
12
|
* The selector accepts a non-array paths record and the shared value reader
|
|
@@ -7,8 +7,8 @@ var findDeclaredValue = require('./findDeclaredValue.js');
|
|
|
7
7
|
* rooted at `tsconfig`. The own config wins over its bases; within an `extends`
|
|
8
8
|
* array, later entries win over earlier ones. `seen` breaks circular chains;
|
|
9
9
|
* the compiler reports the actual config error. Optional decoded sources or
|
|
10
|
-
* graph observations share only within the caller's current read; physical
|
|
11
|
-
* guards remain branch-local.
|
|
10
|
+
* graph observations share only within the caller's current read; physical
|
|
11
|
+
* cycle guards remain branch-local.
|
|
12
12
|
*
|
|
13
13
|
* @evidence contracts/common.md#principled-implementation
|
|
14
14
|
* The selector accepts a non-array paths record and the shared value reader
|
|
@@ -5,8 +5,8 @@ import { findDeclaredValue } from './findDeclaredValue.mjs';
|
|
|
5
5
|
* rooted at `tsconfig`. The own config wins over its bases; within an `extends`
|
|
6
6
|
* array, later entries win over earlier ones. `seen` breaks circular chains;
|
|
7
7
|
* the compiler reports the actual config error. Optional decoded sources or
|
|
8
|
-
* graph observations share only within the caller's current read; physical
|
|
9
|
-
* guards remain branch-local.
|
|
8
|
+
* graph observations share only within the caller's current read; physical
|
|
9
|
+
* cycle guards remain branch-local.
|
|
10
10
|
*
|
|
11
11
|
* @evidence contracts/common.md#principled-implementation
|
|
12
12
|
* The selector accepts a non-array paths record and the shared value reader
|
|
@@ -6,7 +6,8 @@ import { TsconfigReadTransaction } from "./TsconfigReadTransaction.cjs";
|
|
|
6
6
|
* remain anchored at the named config; physical identity only cuts branch
|
|
7
7
|
* cycles. Independent aliases can therefore resolve different relative bases.
|
|
8
8
|
* Missing or malformed configs remain best-effort absence; the compiler owns
|
|
9
|
-
* configuration diagnostics. Unresolved file candidates remain observed
|
|
9
|
+
* configuration diagnostics. Unresolved file candidates remain observed
|
|
10
|
+
* inputs.
|
|
10
11
|
*
|
|
11
12
|
* A supplied transaction shares source, identity and edge observations across
|
|
12
13
|
* keys. A decoded-source map remains supported for callers that own that map;
|
|
@@ -6,7 +6,8 @@ import { TsconfigReadTransaction } from "./TsconfigReadTransaction.mjs";
|
|
|
6
6
|
* remain anchored at the named config; physical identity only cuts branch
|
|
7
7
|
* cycles. Independent aliases can therefore resolve different relative bases.
|
|
8
8
|
* Missing or malformed configs remain best-effort absence; the compiler owns
|
|
9
|
-
* configuration diagnostics. Unresolved file candidates remain observed
|
|
9
|
+
* configuration diagnostics. Unresolved file candidates remain observed
|
|
10
|
+
* inputs.
|
|
10
11
|
*
|
|
11
12
|
* A supplied transaction shares source, identity and edge observations across
|
|
12
13
|
* keys. A decoded-source map remains supported for callers that own that map;
|
|
@@ -6,7 +6,8 @@ import { TsconfigReadTransaction } from "./TsconfigReadTransaction";
|
|
|
6
6
|
* remain anchored at the named config; physical identity only cuts branch
|
|
7
7
|
* cycles. Independent aliases can therefore resolve different relative bases.
|
|
8
8
|
* Missing or malformed configs remain best-effort absence; the compiler owns
|
|
9
|
-
* configuration diagnostics. Unresolved file candidates remain observed
|
|
9
|
+
* configuration diagnostics. Unresolved file candidates remain observed
|
|
10
|
+
* inputs.
|
|
10
11
|
*
|
|
11
12
|
* A supplied transaction shares source, identity and edge observations across
|
|
12
13
|
* keys. A decoded-source map remains supported for callers that own that map;
|
|
@@ -9,7 +9,8 @@ var TsconfigReadTransaction = require('./TsconfigReadTransaction.js');
|
|
|
9
9
|
* remain anchored at the named config; physical identity only cuts branch
|
|
10
10
|
* cycles. Independent aliases can therefore resolve different relative bases.
|
|
11
11
|
* Missing or malformed configs remain best-effort absence; the compiler owns
|
|
12
|
-
* configuration diagnostics. Unresolved file candidates remain observed
|
|
12
|
+
* configuration diagnostics. Unresolved file candidates remain observed
|
|
13
|
+
* inputs.
|
|
13
14
|
*
|
|
14
15
|
* A supplied transaction shares source, identity and edge observations across
|
|
15
16
|
* keys. A decoded-source map remains supported for callers that own that map;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findDeclaredValue.js","sources":["../../../src/core/tsconfig/findDeclaredValue.ts"],"sourcesContent":[null],"names":["TsconfigReadTransaction"],"mappings":";;;;AAEA
|
|
1
|
+
{"version":3,"file":"findDeclaredValue.js","sources":["../../../src/core/tsconfig/findDeclaredValue.ts"],"sourcesContent":[null],"names":["TsconfigReadTransaction"],"mappings":";;;;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2CG;SACa,iBAAiB,CAC/B,QAAgB,EAChB,MAAyC,EACzC,IAAiB;AACjB;AACA,OAAqB,EACrB,OAAwD,EAAA;AAExD,IAAA,MAAM,WAAW,GACf,OAAO,YAAYA;AACjB,UAAE;AACF,UAAE,IAAIA,+CAAuB,CAAC,OAAO,CAAC;IAC1C,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAC/B,QAAQ,EACR,CAAC,MAAM,KAAI;AACT,QAAA,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;AAC5B,QAAA,OAAO,KAAK,KAAK,SAAS,GAAG,SAAS,GAAG,EAAE,KAAK,EAAE;AACpD,IAAA,CAAC,EACD,IAAI,EACJ,OAAO,CACR;IACD,OAAO,QAAQ,KAAK;AAClB,UAAE;AACF,UAAE,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE;AAChE;;;;"}
|
|
@@ -7,7 +7,8 @@ import { TsconfigReadTransaction } from './TsconfigReadTransaction.mjs';
|
|
|
7
7
|
* remain anchored at the named config; physical identity only cuts branch
|
|
8
8
|
* cycles. Independent aliases can therefore resolve different relative bases.
|
|
9
9
|
* Missing or malformed configs remain best-effort absence; the compiler owns
|
|
10
|
-
* configuration diagnostics. Unresolved file candidates remain observed
|
|
10
|
+
* configuration diagnostics. Unresolved file candidates remain observed
|
|
11
|
+
* inputs.
|
|
11
12
|
*
|
|
12
13
|
* A supplied transaction shares source, identity and edge observations across
|
|
13
14
|
* keys. A decoded-source map remains supported for callers that own that map;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findDeclaredValue.mjs","sources":["../../../src/core/tsconfig/findDeclaredValue.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAEA
|
|
1
|
+
{"version":3,"file":"findDeclaredValue.mjs","sources":["../../../src/core/tsconfig/findDeclaredValue.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2CG;SACa,iBAAiB,CAC/B,QAAgB,EAChB,MAAyC,EACzC,IAAiB;AACjB;AACA,OAAqB,EACrB,OAAwD,EAAA;AAExD,IAAA,MAAM,WAAW,GACf,OAAO,YAAY;AACjB,UAAE;AACF,UAAE,IAAI,uBAAuB,CAAC,OAAO,CAAC;IAC1C,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAC/B,QAAQ,EACR,CAAC,MAAM,KAAI;AACT,QAAA,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;AAC5B,QAAA,OAAO,KAAK,KAAK,SAAS,GAAG,SAAS,GAAG,EAAE,KAAK,EAAE;AACpD,IAAA,CAAC,EACD,IAAI,EACJ,OAAO,CACR;IACD,OAAO,QAAQ,KAAK;AAClB,UAAE;AACF,UAAE,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE;AAChE;;;;"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var path = require('node:path');
|
|
4
|
-
var TsconfigReadTransaction = require('./TsconfigReadTransaction.js');
|
|
5
4
|
var CONFIG_DIR_TEMPLATE_LIST_OPTIONS = require('./CONFIG_DIR_TEMPLATE_LIST_OPTIONS.js');
|
|
6
5
|
var CONFIG_DIR_TEMPLATE_SCALAR_OPTIONS = require('./CONFIG_DIR_TEMPLATE_SCALAR_OPTIONS.js');
|
|
6
|
+
var TsconfigReadTransaction = require('./TsconfigReadTransaction.js');
|
|
7
7
|
var absolutizePathsTarget = require('./absolutizePathsTarget.js');
|
|
8
8
|
var findDeclaredCompilerOption = require('./findDeclaredCompilerOption.js');
|
|
9
9
|
var findDeclaredPaths = require('./findDeclaredPaths.js');
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import path from 'node:path';
|
|
2
|
-
import { TsconfigReadTransaction } from './TsconfigReadTransaction.mjs';
|
|
3
2
|
import { CONFIG_DIR_TEMPLATE_LIST_OPTIONS } from './CONFIG_DIR_TEMPLATE_LIST_OPTIONS.mjs';
|
|
4
3
|
import { CONFIG_DIR_TEMPLATE_SCALAR_OPTIONS } from './CONFIG_DIR_TEMPLATE_SCALAR_OPTIONS.mjs';
|
|
4
|
+
import { TsconfigReadTransaction } from './TsconfigReadTransaction.mjs';
|
|
5
5
|
import { absolutizePathsTarget } from './absolutizePathsTarget.mjs';
|
|
6
6
|
import { findDeclaredCompilerOption } from './findDeclaredCompilerOption.mjs';
|
|
7
7
|
import { findDeclaredPaths } from './findDeclaredPaths.mjs';
|
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
* Lists use the compiler's last-inherited-array rule: a later base declaring
|
|
6
6
|
* null cannot erase an earlier array. Invalid elements are preserved so this
|
|
7
7
|
* overlay does not hide the compiler's configuration diagnostics. The three
|
|
8
|
-
* list searches share graph observations only within this call; a later call
|
|
9
|
-
* current bytes in a fresh transaction.
|
|
8
|
+
* list searches share graph observations only within this call; a later call
|
|
9
|
+
* reads current bytes in a fresh transaction.
|
|
10
10
|
*
|
|
11
11
|
* @param configDir The directory `${configDir}` stands for, as
|
|
12
12
|
* `readEffectiveTsconfigTemplateCompilerOptions` takes it.
|
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
* Lists use the compiler's last-inherited-array rule: a later base declaring
|
|
6
6
|
* null cannot erase an earlier array. Invalid elements are preserved so this
|
|
7
7
|
* overlay does not hide the compiler's configuration diagnostics. The three
|
|
8
|
-
* list searches share graph observations only within this call; a later call
|
|
9
|
-
* current bytes in a fresh transaction.
|
|
8
|
+
* list searches share graph observations only within this call; a later call
|
|
9
|
+
* reads current bytes in a fresh transaction.
|
|
10
10
|
*
|
|
11
11
|
* @param configDir The directory `${configDir}` stands for, as
|
|
12
12
|
* `readEffectiveTsconfigTemplateCompilerOptions` takes it.
|
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
* Lists use the compiler's last-inherited-array rule: a later base declaring
|
|
6
6
|
* null cannot erase an earlier array. Invalid elements are preserved so this
|
|
7
7
|
* overlay does not hide the compiler's configuration diagnostics. The three
|
|
8
|
-
* list searches share graph observations only within this call; a later call
|
|
9
|
-
* current bytes in a fresh transaction.
|
|
8
|
+
* list searches share graph observations only within this call; a later call
|
|
9
|
+
* reads current bytes in a fresh transaction.
|
|
10
10
|
*
|
|
11
11
|
* @param configDir The directory `${configDir}` stands for, as
|
|
12
12
|
* `readEffectiveTsconfigTemplateCompilerOptions` takes it.
|
|
@@ -15,8 +15,8 @@ const CONFIG_DIR_TEMPLATE_FILE_SPECS = ["exclude", "files", "include"];
|
|
|
15
15
|
* Lists use the compiler's last-inherited-array rule: a later base declaring
|
|
16
16
|
* null cannot erase an earlier array. Invalid elements are preserved so this
|
|
17
17
|
* overlay does not hide the compiler's configuration diagnostics. The three
|
|
18
|
-
* list searches share graph observations only within this call; a later call
|
|
19
|
-
* current bytes in a fresh transaction.
|
|
18
|
+
* list searches share graph observations only within this call; a later call
|
|
19
|
+
* reads current bytes in a fresh transaction.
|
|
20
20
|
*
|
|
21
21
|
* @param configDir The directory `${configDir}` stands for, as
|
|
22
22
|
* `readEffectiveTsconfigTemplateCompilerOptions` takes it.
|
|
@@ -13,8 +13,8 @@ const CONFIG_DIR_TEMPLATE_FILE_SPECS = ["exclude", "files", "include"];
|
|
|
13
13
|
* Lists use the compiler's last-inherited-array rule: a later base declaring
|
|
14
14
|
* null cannot erase an earlier array. Invalid elements are preserved so this
|
|
15
15
|
* overlay does not hide the compiler's configuration diagnostics. The three
|
|
16
|
-
* list searches share graph observations only within this call; a later call
|
|
17
|
-
* current bytes in a fresh transaction.
|
|
16
|
+
* list searches share graph observations only within this call; a later call
|
|
17
|
+
* reads current bytes in a fresh transaction.
|
|
18
18
|
*
|
|
19
19
|
* @param configDir The directory `${configDir}` stands for, as
|
|
20
20
|
* `readEffectiveTsconfigTemplateCompilerOptions` takes it.
|
|
@@ -22,9 +22,9 @@ import type { ITtscProjectMembershipPolicy } from "./ITtscProjectMembershipPolic
|
|
|
22
22
|
* refuses to guess in the direction that loses correctness.
|
|
23
23
|
*
|
|
24
24
|
* Source, identity and extends observations share this transaction. Completed
|
|
25
|
-
* selections, including absence, require matching physical ancestry
|
|
26
|
-
* Later calls start fresh, so unchanged metadata cannot conceal
|
|
27
|
-
* text or resolution.
|
|
25
|
+
* selections, including absence, require matching physical ancestry
|
|
26
|
+
* intersections. Later calls start fresh, so unchanged metadata cannot conceal
|
|
27
|
+
* changed source text or resolution.
|
|
28
28
|
*
|
|
29
29
|
* @evidence contracts/common.md#principled-implementation
|
|
30
30
|
* Config-derived root specs, allowed extensions and exclusion provenance
|
|
@@ -22,9 +22,9 @@ import type { ITtscProjectMembershipPolicy } from "./ITtscProjectMembershipPolic
|
|
|
22
22
|
* refuses to guess in the direction that loses correctness.
|
|
23
23
|
*
|
|
24
24
|
* Source, identity and extends observations share this transaction. Completed
|
|
25
|
-
* selections, including absence, require matching physical ancestry
|
|
26
|
-
* Later calls start fresh, so unchanged metadata cannot conceal
|
|
27
|
-
* text or resolution.
|
|
25
|
+
* selections, including absence, require matching physical ancestry
|
|
26
|
+
* intersections. Later calls start fresh, so unchanged metadata cannot conceal
|
|
27
|
+
* changed source text or resolution.
|
|
28
28
|
*
|
|
29
29
|
* @evidence contracts/common.md#principled-implementation
|
|
30
30
|
* Config-derived root specs, allowed extensions and exclusion provenance
|
|
@@ -22,9 +22,9 @@ import type { ITtscProjectMembershipPolicy } from "./ITtscProjectMembershipPolic
|
|
|
22
22
|
* refuses to guess in the direction that loses correctness.
|
|
23
23
|
*
|
|
24
24
|
* Source, identity and extends observations share this transaction. Completed
|
|
25
|
-
* selections, including absence, require matching physical ancestry
|
|
26
|
-
* Later calls start fresh, so unchanged metadata cannot conceal
|
|
27
|
-
* text or resolution.
|
|
25
|
+
* selections, including absence, require matching physical ancestry
|
|
26
|
+
* intersections. Later calls start fresh, so unchanged metadata cannot conceal
|
|
27
|
+
* changed source text or resolution.
|
|
28
28
|
*
|
|
29
29
|
* @evidence contracts/common.md#principled-implementation
|
|
30
30
|
* Config-derived root specs, allowed extensions and exclusion provenance
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
var path = require('node:path');
|
|
4
4
|
var TYPESCRIPT_TRANSFORM_EXTENSIONS = require('../source/TYPESCRIPT_TRANSFORM_EXTENSIONS.js');
|
|
5
|
-
var TsconfigReadTransaction = require('./TsconfigReadTransaction.js');
|
|
6
5
|
var JAVASCRIPT_INPUT_EXTENSIONS = require('./JAVASCRIPT_INPUT_EXTENSIONS.js');
|
|
7
6
|
var OUTPUT_DIRECTORY_OPTIONS = require('./OUTPUT_DIRECTORY_OPTIONS.js');
|
|
7
|
+
var TsconfigReadTransaction = require('./TsconfigReadTransaction.js');
|
|
8
8
|
var absolutizePathsTarget = require('./absolutizePathsTarget.js');
|
|
9
9
|
var findDeclaredFileSpecs = require('./findDeclaredFileSpecs.js');
|
|
10
10
|
var findDeclaredValue = require('./findDeclaredValue.js');
|
|
@@ -39,9 +39,9 @@ const DEFAULT_INCLUDE_SPEC = "**/*";
|
|
|
39
39
|
* refuses to guess in the direction that loses correctness.
|
|
40
40
|
*
|
|
41
41
|
* Source, identity and extends observations share this transaction. Completed
|
|
42
|
-
* selections, including absence, require matching physical ancestry
|
|
43
|
-
* Later calls start fresh, so unchanged metadata cannot conceal
|
|
44
|
-
* text or resolution.
|
|
42
|
+
* selections, including absence, require matching physical ancestry
|
|
43
|
+
* intersections. Later calls start fresh, so unchanged metadata cannot conceal
|
|
44
|
+
* changed source text or resolution.
|
|
45
45
|
*
|
|
46
46
|
* @evidence contracts/common.md#principled-implementation
|
|
47
47
|
* Config-derived root specs, allowed extensions and exclusion provenance
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import path from 'node:path';
|
|
2
2
|
import { TYPESCRIPT_TRANSFORM_EXTENSIONS } from '../source/TYPESCRIPT_TRANSFORM_EXTENSIONS.mjs';
|
|
3
|
-
import { TsconfigReadTransaction } from './TsconfigReadTransaction.mjs';
|
|
4
3
|
import { JAVASCRIPT_INPUT_EXTENSIONS } from './JAVASCRIPT_INPUT_EXTENSIONS.mjs';
|
|
5
4
|
import { OUTPUT_DIRECTORY_OPTIONS } from './OUTPUT_DIRECTORY_OPTIONS.mjs';
|
|
5
|
+
import { TsconfigReadTransaction } from './TsconfigReadTransaction.mjs';
|
|
6
6
|
import { absolutizePathsTarget } from './absolutizePathsTarget.mjs';
|
|
7
7
|
import { findDeclaredFileSpecs } from './findDeclaredFileSpecs.mjs';
|
|
8
8
|
import { findDeclaredValue } from './findDeclaredValue.mjs';
|
|
@@ -37,9 +37,9 @@ const DEFAULT_INCLUDE_SPEC = "**/*";
|
|
|
37
37
|
* refuses to guess in the direction that loses correctness.
|
|
38
38
|
*
|
|
39
39
|
* Source, identity and extends observations share this transaction. Completed
|
|
40
|
-
* selections, including absence, require matching physical ancestry
|
|
41
|
-
* Later calls start fresh, so unchanged metadata cannot conceal
|
|
42
|
-
* text or resolution.
|
|
40
|
+
* selections, including absence, require matching physical ancestry
|
|
41
|
+
* intersections. Later calls start fresh, so unchanged metadata cannot conceal
|
|
42
|
+
* changed source text or resolution.
|
|
43
43
|
*
|
|
44
44
|
* @evidence contracts/common.md#principled-implementation
|
|
45
45
|
* Config-derived root specs, allowed extensions and exclusion provenance
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ttsc/unplugin",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.32.0",
|
|
4
4
|
"description": "Bundler adapters for ttsc plugins.",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"module": "lib/index.mjs",
|
|
@@ -202,10 +202,10 @@
|
|
|
202
202
|
"fsevents": "^2.3.3"
|
|
203
203
|
},
|
|
204
204
|
"peerDependencies": {
|
|
205
|
-
"ttsc": "^0.
|
|
205
|
+
"ttsc": "^0.32.0"
|
|
206
206
|
},
|
|
207
207
|
"devDependencies": {
|
|
208
|
-
"@wrtnlabs/evidence": "^0.
|
|
208
|
+
"@wrtnlabs/evidence": "^0.5.0",
|
|
209
209
|
"@rollup/plugin-commonjs": "^29.0.2",
|
|
210
210
|
"@rollup/plugin-node-resolve": "^16.0.3",
|
|
211
211
|
"@types/node": "^25.3.0",
|
|
@@ -217,7 +217,7 @@
|
|
|
217
217
|
"tslib": "^2.8.1",
|
|
218
218
|
"typescript": "^7.0.2",
|
|
219
219
|
"vite": "^7.3.5",
|
|
220
|
-
"ttsc": "0.
|
|
220
|
+
"ttsc": "0.32.0"
|
|
221
221
|
},
|
|
222
222
|
"repository": {
|
|
223
223
|
"type": "git",
|
|
@@ -49,6 +49,15 @@ import type { ITtscProjectMembershipPolicy } from "../tsconfig/ITtscProjectMembe
|
|
|
49
49
|
* and independently imposes no population or byte bound.
|
|
50
50
|
*/
|
|
51
51
|
export interface TtscProjectRecord {
|
|
52
|
+
/**
|
|
53
|
+
* The paths the generation's plugins reported as dependencies outside the
|
|
54
|
+
* project walk (`TtscCachedProjectTransform.externalDependencyInputs`),
|
|
55
|
+
* absent when there were none. A later process witnesses them before its
|
|
56
|
+
* first compile, which otherwise learns them only from its own envelope and
|
|
57
|
+
* compiles again (samchon/ttsc#1743). They only say what to read.
|
|
58
|
+
*/
|
|
59
|
+
dependencies?: readonly string[];
|
|
60
|
+
|
|
52
61
|
/**
|
|
53
62
|
* Evidenced delivery inputs, keyed by absolute path, with the state the
|
|
54
63
|
* generation recorded for them. An input whose generation recorded no state,
|
|
@@ -47,11 +47,15 @@ export function readProjectRecordFile(
|
|
|
47
47
|
typeof candidate.signal !== "number" ||
|
|
48
48
|
!Number.isFinite(candidate.signal) ||
|
|
49
49
|
!isInputEvidenceMap(candidate.inputs) ||
|
|
50
|
-
!isMembership(candidate.membership)
|
|
50
|
+
!isMembership(candidate.membership) ||
|
|
51
|
+
(candidate.dependencies !== undefined && !isStrings(candidate.dependencies))
|
|
51
52
|
) {
|
|
52
53
|
return undefined;
|
|
53
54
|
}
|
|
54
55
|
return {
|
|
56
|
+
...(candidate.dependencies === undefined
|
|
57
|
+
? {}
|
|
58
|
+
: { dependencies: candidate.dependencies }),
|
|
55
59
|
inputs: candidate.inputs,
|
|
56
60
|
membership: candidate.membership,
|
|
57
61
|
root: candidate.root,
|
|
@@ -47,9 +47,9 @@ export interface WatchScope {
|
|
|
47
47
|
/**
|
|
48
48
|
* The device and file id `root` resolved to when this observer opened,
|
|
49
49
|
* including the pinned project root. Absence cannot authorize coverage.
|
|
50
|
-
* Registration, native callbacks and the bounded poll verify this location:
|
|
51
|
-
*
|
|
52
|
-
*
|
|
50
|
+
* Registration, native callbacks and the bounded poll verify this location: a
|
|
51
|
+
* moved watch can keep following the old directory while its spelling names a
|
|
52
|
+
* replacement. A mismatch fails the scope and hands its entries to the poll
|
|
53
53
|
* (samchon/ttsc#1384).
|
|
54
54
|
*/
|
|
55
55
|
identity?: string;
|
|
@@ -47,14 +47,13 @@ import { someSet } from "./someSet";
|
|
|
47
47
|
* One recursive scope observes the project root, pinned once the observer
|
|
48
48
|
* opens, and at most 16 external scopes the inputs outside it, each closed when
|
|
49
49
|
* its last input leaves. Every native scope retains authority only while its
|
|
50
|
-
* physical root still matches its configured spelling. A healthy external
|
|
51
|
-
*
|
|
52
|
-
*
|
|
53
|
-
*
|
|
54
|
-
*
|
|
55
|
-
*
|
|
56
|
-
*
|
|
57
|
-
* their nearest available scope. Inputs a native scope cannot safely cover
|
|
50
|
+
* physical root still matches its configured spelling. A healthy external scope
|
|
51
|
+
* admits newly registered descendants while its root identity and physical
|
|
52
|
+
* containment still hold; the scope cap is checked only when no existing scope
|
|
53
|
+
* covers them. Ordinary files use events after their initial subscription is
|
|
54
|
+
* observed; one shared poll verifies each occupied scope's location, not each
|
|
55
|
+
* file. Missing spellings and directory predicates use the recursive observer
|
|
56
|
+
* for their nearest available scope. Inputs a native scope cannot safely cover
|
|
58
57
|
* share one bounded fallback poll; linked files also share topology checks
|
|
59
58
|
* because retargeting a junction need not emit events on its old descendants.
|
|
60
59
|
* Every event is re-checked against the input's recorded condition before an
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { ITtscCompilerTransformation } from "ttsc";
|
|
2
|
+
|
|
3
|
+
import { resultFilesystem } from "../cache/resultFilesystem";
|
|
4
|
+
import type { TtscTransformFilesystemOperations } from "../filesystem/TtscTransformFilesystemOperations";
|
|
5
|
+
import { envelopeDerivation } from "./envelopeDerivation";
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* The directory case answers of one generation's identity context
|
|
9
|
+
* (`envelopeDerivation`), for another identity context built while that
|
|
10
|
+
* generation is captured over the same filesystem view.
|
|
11
|
+
*
|
|
12
|
+
* Capturing a generation builds several identity contexts: the input selections
|
|
13
|
+
* and the trackers' baselines. Each asked every directory's case policy again,
|
|
14
|
+
* which on Windows costs an `fsutil` process for a directory whose names cannot
|
|
15
|
+
* settle it (samchon/ttsc#1742). They now ask the generation's own context,
|
|
16
|
+
* which memoizes each directory once for the generation. A view other than the
|
|
17
|
+
* one registered for the result observes for itself, and a tracker's re-check
|
|
18
|
+
* after an event still builds a context of its own.
|
|
19
|
+
*
|
|
20
|
+
* @evidence contracts/common.md#principled-implementation Sharing is admitted only for the filesystem view registered for the result, the view the generation context observes; any other view keeps its own observations.
|
|
21
|
+
* @evidence contracts/common.md#clear-and-simple-design One selector returns the generation's case operation, or the view's own for another view, and callers pass it to the existing context factory.
|
|
22
|
+
* @evidence contracts/common.md#prohibited-implementation-shortcuts No answer is cached beyond the generation context that observed it, and a tracker's event re-check is not routed through it.
|
|
23
|
+
* @evidence contracts/common.md#meaningful-documentation Native paragraphs explain the repeated probes, the view condition and the re-check exception.
|
|
24
|
+
* @evidence contracts/portability.md#os-neutral-implementation The generation context observes case policy through the registered view's own probes; no platform assumption is introduced.
|
|
25
|
+
* @evidence contracts/performance.md#efficient-algorithms One registry lookup and one derivation lookup; the returned operation delegates to the generation context's memo.
|
|
26
|
+
* @evidence contracts/performance.md#reuse-equivalent-work Every context capturing one generation shares the generation's answer for each directory.
|
|
27
|
+
* @evidenceExclude contracts/performance.md#bound-retention-and-release-resources The answers belong to the generation context, which the generation already owns; this selector retains nothing.
|
|
28
|
+
*/
|
|
29
|
+
export function generationCaseSensitivity(props: {
|
|
30
|
+
/** The view the caller's context observes through. */
|
|
31
|
+
filesystem: TtscTransformFilesystemOperations;
|
|
32
|
+
|
|
33
|
+
/** Native project directory of the generation. */
|
|
34
|
+
projectRoot: string;
|
|
35
|
+
|
|
36
|
+
/** The generation's compiler result. */
|
|
37
|
+
result: ITtscCompilerTransformation;
|
|
38
|
+
}): TtscTransformFilesystemOperations["caseSensitive"] {
|
|
39
|
+
if (resultFilesystem(props.result) !== props.filesystem)
|
|
40
|
+
return props.filesystem.caseSensitive;
|
|
41
|
+
const context = envelopeDerivation({
|
|
42
|
+
projectRoot: props.projectRoot,
|
|
43
|
+
result: props.result,
|
|
44
|
+
}).identityContext;
|
|
45
|
+
return (directory) => context.caseSensitive(directory);
|
|
46
|
+
}
|
|
@@ -10,6 +10,7 @@ import { isProjectWalkPath } from "../project/isProjectWalkPath";
|
|
|
10
10
|
import { isTransformScratchInput } from "../tsconfig/isTransformScratchInput";
|
|
11
11
|
import { envelopeDerivation } from "./envelopeDerivation";
|
|
12
12
|
import { envelopeGraphIndexes } from "./envelopeGraphIndexes";
|
|
13
|
+
import { generationCaseSensitivity } from "./generationCaseSensitivity";
|
|
13
14
|
|
|
14
15
|
/**
|
|
15
16
|
* Derive the absolute out-of-walk input set of a whole project transform: the
|
|
@@ -63,7 +64,10 @@ export function selectExternalInputPaths(props: {
|
|
|
63
64
|
}
|
|
64
65
|
const members: string[] = [];
|
|
65
66
|
const filesystem = props.filesystem ?? DEFAULT_FILESYSTEM_OPERATIONS;
|
|
66
|
-
const identities = createHostPathIdentityContext(
|
|
67
|
+
const identities = createHostPathIdentityContext(
|
|
68
|
+
filesystem,
|
|
69
|
+
generationCaseSensitivity({ ...props, filesystem }),
|
|
70
|
+
);
|
|
67
71
|
const resolutionCandidates = new Set<string>();
|
|
68
72
|
const graph = props.result.graph;
|
|
69
73
|
const graphState = envelopeDerivation({
|
|
@@ -8,6 +8,7 @@ import { relativeToProject } from "../filesystem/relativeToProject";
|
|
|
8
8
|
import { isTransformScratchInput } from "../tsconfig/isTransformScratchInput";
|
|
9
9
|
import { envelopeDerivation } from "./envelopeDerivation";
|
|
10
10
|
import { envelopeGraphIndexes } from "./envelopeGraphIndexes";
|
|
11
|
+
import { generationCaseSensitivity } from "./generationCaseSensitivity";
|
|
11
12
|
|
|
12
13
|
/**
|
|
13
14
|
* The generation's resolution candidates recorded as not files, so its
|
|
@@ -72,7 +73,10 @@ export function selectNotifiableAbsentInputs(props: {
|
|
|
72
73
|
if (graph === undefined) {
|
|
73
74
|
return empty;
|
|
74
75
|
}
|
|
75
|
-
const identities = createHostPathIdentityContext(
|
|
76
|
+
const identities = createHostPathIdentityContext(
|
|
77
|
+
props.filesystem,
|
|
78
|
+
generationCaseSensitivity(props),
|
|
79
|
+
);
|
|
76
80
|
const graphState = envelopeDerivation({
|
|
77
81
|
projectRoot: props.projectRoot,
|
|
78
82
|
result: props.result,
|
|
@@ -29,6 +29,8 @@ import type { TtscTransformFilesystemOperations } from "./TtscTransformFilesyste
|
|
|
29
29
|
* The returned context memoizes path, realpath and case observations for
|
|
30
30
|
* repeated questions within one filesystem transaction. Callers must create
|
|
31
31
|
* a new context when later filesystem changes can invalidate those observations.
|
|
32
|
+
* A caller capturing one generation can hand in that generation's case answers,
|
|
33
|
+
* so its contexts do not each ask the filesystem again (samchon/ttsc#1742).
|
|
32
34
|
* @evidence contracts/performance.md#bound-retention-and-release-resources
|
|
33
35
|
* Ownership of the context and its maps transfers to the caller. Retained
|
|
34
36
|
* entries grow with queried paths and ancestors and have no internal eviction;
|
|
@@ -36,9 +38,15 @@ import type { TtscTransformFilesystemOperations } from "./TtscTransformFilesyste
|
|
|
36
38
|
*/
|
|
37
39
|
export function createHostPathIdentityContext(
|
|
38
40
|
filesystem: TtscTransformFilesystemOperations = DEFAULT_FILESYSTEM_OPERATIONS,
|
|
41
|
+
/**
|
|
42
|
+
* Case answers this context shares with the others of its unit of work,
|
|
43
|
+
* observed through the same `filesystem`; omitted, the context asks for
|
|
44
|
+
* itself.
|
|
45
|
+
*/
|
|
46
|
+
caseSensitive: TtscTransformFilesystemOperations["caseSensitive"] = filesystem.caseSensitive,
|
|
39
47
|
): FilesystemPathIdentityContext {
|
|
40
48
|
return createFilesystemPathIdentityContext({
|
|
41
|
-
caseSensitive
|
|
49
|
+
caseSensitive,
|
|
42
50
|
lstat: filesystem.lstat,
|
|
43
51
|
platform: filesystem.platform,
|
|
44
52
|
readdir: (directory) =>
|