Lazy calculation of expensive file explaining diagnsotics and some caching to be used to share the diagnostic data (#58398)
This commit is contained in:
Родитель
2070713f4b
Коммит
fd81d04080
|
@ -87,6 +87,7 @@ import {
|
|||
fileIncludeReasonToDiagnostics,
|
||||
FilePreprocessingDiagnostics,
|
||||
FilePreprocessingDiagnosticsKind,
|
||||
FilePreprocessingLibReferenceDiagnostic,
|
||||
FileReference,
|
||||
filter,
|
||||
find,
|
||||
|
@ -1191,10 +1192,13 @@ export function getLibraryNameFromLibFileName(libFileName: string) {
|
|||
return "@typescript/lib-" + path;
|
||||
}
|
||||
|
||||
function getLibNameFromLibReference(libReference: FileReference) {
|
||||
return toFileNameLowerCase(libReference.fileName);
|
||||
}
|
||||
|
||||
function getLibFileNameFromLibReference(libReference: FileReference) {
|
||||
const libName = toFileNameLowerCase(libReference.fileName);
|
||||
const libFileName = libMap.get(libName);
|
||||
return { libName, libFileName };
|
||||
const libName = getLibNameFromLibReference(libReference);
|
||||
return libMap.get(libName);
|
||||
}
|
||||
|
||||
interface DiagnosticCache<T extends Diagnostic> {
|
||||
|
@ -1500,6 +1504,16 @@ export const plainJSErrors = new Set<number>([
|
|||
Diagnostics.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value.code,
|
||||
]);
|
||||
|
||||
interface LazyProgramDiagnosticExplainingFile {
|
||||
file: SourceFile;
|
||||
diagnostic: DiagnosticMessage;
|
||||
args: DiagnosticArguments;
|
||||
}
|
||||
interface FileReasonToChainCache {
|
||||
fileIncludeReasonDetails: DiagnosticMessageChain | undefined;
|
||||
redirectInfo: DiagnosticMessageChain[] | undefined;
|
||||
details?: DiagnosticMessageChain[];
|
||||
}
|
||||
/**
|
||||
* Determine if source file needs to be re-created even if its text hasn't changed
|
||||
*/
|
||||
|
@ -1570,6 +1584,9 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg
|
|||
let classifiableNames: Set<__String>;
|
||||
const ambientModuleNameToUnmodifiedFileName = new Map<string, string>();
|
||||
let fileReasons = createMultiMap<Path, FileIncludeReason>();
|
||||
let filesWithReferencesProcessed: Set<Path> | undefined;
|
||||
let fileReasonsToChain: Map<Path, FileReasonToChainCache> | undefined;
|
||||
let reasonToRelatedInfo: Map<FileIncludeReason, DiagnosticWithLocation | false> | undefined;
|
||||
const cachedBindAndCheckDiagnosticsForFile: DiagnosticCache<Diagnostic> = {};
|
||||
const cachedDeclarationDiagnosticsForFile: DiagnosticCache<DiagnosticWithLocation> = {};
|
||||
|
||||
|
@ -1620,6 +1637,7 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg
|
|||
* Otherwise fileProcessingDiagnostics is correct locations so that the diagnostics can be reported in all structure use scenarios
|
||||
*/
|
||||
const programDiagnostics = createDiagnosticCollection();
|
||||
let lazyProgramDiagnosticExplainingFile: LazyProgramDiagnosticExplainingFile[] | undefined = [];
|
||||
const currentDirectory = host.getCurrentDirectory();
|
||||
const supportedExtensions = getSupportedExtensions(options);
|
||||
const supportedExtensionsWithJsonIfResolveJsonModule = getSupportedExtensionsWithJsonIfResolveJsonModule(options, supportedExtensions);
|
||||
|
@ -1866,6 +1884,7 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg
|
|||
files = stableSort(processingDefaultLibFiles, compareDefaultLibFiles).concat(processingOtherFiles);
|
||||
processingDefaultLibFiles = undefined;
|
||||
processingOtherFiles = undefined;
|
||||
filesWithReferencesProcessed = undefined;
|
||||
}
|
||||
|
||||
// Release any files we have acquired in the old program but are
|
||||
|
@ -1996,21 +2015,6 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg
|
|||
|
||||
onProgramCreateComplete();
|
||||
|
||||
// Add file processingDiagnostics
|
||||
fileProcessingDiagnostics?.forEach(diagnostic => {
|
||||
switch (diagnostic.kind) {
|
||||
case FilePreprocessingDiagnosticsKind.FilePreprocessingFileExplainingDiagnostic:
|
||||
return programDiagnostics.add(createDiagnosticExplainingFile(diagnostic.file && getSourceFileByPath(diagnostic.file), diagnostic.fileProcessingReason, diagnostic.diagnostic, diagnostic.args || emptyArray));
|
||||
case FilePreprocessingDiagnosticsKind.FilePreprocessingReferencedDiagnostic:
|
||||
const { file, pos, end } = getReferencedFileLocation(program, diagnostic.reason) as ReferenceFileLocation;
|
||||
return programDiagnostics.add(createFileDiagnostic(file, Debug.checkDefined(pos), Debug.checkDefined(end) - pos, diagnostic.diagnostic, ...diagnostic.args || emptyArray));
|
||||
case FilePreprocessingDiagnosticsKind.ResolutionDiagnostics:
|
||||
return diagnostic.diagnostics.forEach(d => programDiagnostics.add(d));
|
||||
default:
|
||||
Debug.assertNever(diagnostic);
|
||||
}
|
||||
});
|
||||
|
||||
verifyCompilerOptions();
|
||||
performance.mark("afterProgram");
|
||||
performance.measure("Program", "beforeProgram", "afterProgram");
|
||||
|
@ -2018,6 +2022,56 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg
|
|||
|
||||
return program;
|
||||
|
||||
function updateAndGetProgramDiagnostics() {
|
||||
if (lazyProgramDiagnosticExplainingFile) {
|
||||
// Add file processingDiagnostics
|
||||
fileProcessingDiagnostics?.forEach(diagnostic => {
|
||||
switch (diagnostic.kind) {
|
||||
case FilePreprocessingDiagnosticsKind.FilePreprocessingFileExplainingDiagnostic:
|
||||
return programDiagnostics.add(
|
||||
createDiagnosticExplainingFile(
|
||||
diagnostic.file && getSourceFileByPath(diagnostic.file),
|
||||
diagnostic.fileProcessingReason,
|
||||
diagnostic.diagnostic,
|
||||
diagnostic.args || emptyArray,
|
||||
),
|
||||
);
|
||||
case FilePreprocessingDiagnosticsKind.FilePreprocessingLibReferenceDiagnostic:
|
||||
return programDiagnostics.add(filePreprocessingLibreferenceDiagnostic(diagnostic));
|
||||
case FilePreprocessingDiagnosticsKind.ResolutionDiagnostics:
|
||||
return diagnostic.diagnostics.forEach(d => programDiagnostics.add(d));
|
||||
default:
|
||||
Debug.assertNever(diagnostic);
|
||||
}
|
||||
});
|
||||
lazyProgramDiagnosticExplainingFile.forEach(({ file, diagnostic, args }) =>
|
||||
programDiagnostics.add(
|
||||
createDiagnosticExplainingFile(file, /*fileProcessingReason*/ undefined, diagnostic, args),
|
||||
)
|
||||
);
|
||||
lazyProgramDiagnosticExplainingFile = undefined;
|
||||
fileReasonsToChain = undefined;
|
||||
reasonToRelatedInfo = undefined;
|
||||
}
|
||||
return programDiagnostics;
|
||||
}
|
||||
|
||||
function filePreprocessingLibreferenceDiagnostic({ reason }: FilePreprocessingLibReferenceDiagnostic) {
|
||||
const { file, pos, end } = getReferencedFileLocation(program, reason) as ReferenceFileLocation;
|
||||
const libReference = file.libReferenceDirectives[reason.index];
|
||||
const libName = getLibNameFromLibReference(libReference);
|
||||
const unqualifiedLibName = removeSuffix(removePrefix(libName, "lib."), ".d.ts");
|
||||
const suggestion = getSpellingSuggestion(unqualifiedLibName, libs, identity);
|
||||
return createFileDiagnostic(
|
||||
file,
|
||||
Debug.checkDefined(pos),
|
||||
Debug.checkDefined(end) - pos,
|
||||
suggestion ? Diagnostics.Cannot_find_lib_definition_for_0_Did_you_mean_1 : Diagnostics.Cannot_find_lib_definition_for_0,
|
||||
libName,
|
||||
suggestion!,
|
||||
);
|
||||
}
|
||||
|
||||
function getResolvedModule(file: SourceFile, moduleName: string, mode: ResolutionMode) {
|
||||
return resolvedModules?.get(file.path)?.get(moduleName, mode);
|
||||
}
|
||||
|
@ -2881,7 +2935,7 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg
|
|||
return emptyArray;
|
||||
}
|
||||
|
||||
const programDiagnosticsInFile = programDiagnostics.getDiagnostics(sourceFile.fileName);
|
||||
const programDiagnosticsInFile = updateAndGetProgramDiagnostics().getDiagnostics(sourceFile.fileName);
|
||||
if (!sourceFile.commentDirectives?.length) {
|
||||
return programDiagnosticsInFile;
|
||||
}
|
||||
|
@ -3327,16 +3381,16 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg
|
|||
|
||||
function getOptionsDiagnostics(): SortedReadonlyArray<Diagnostic> {
|
||||
return sortAndDeduplicateDiagnostics(concatenate(
|
||||
programDiagnostics.getGlobalDiagnostics(),
|
||||
updateAndGetProgramDiagnostics().getGlobalDiagnostics(),
|
||||
getOptionsDiagnosticsOfConfigFile(),
|
||||
));
|
||||
}
|
||||
|
||||
function getOptionsDiagnosticsOfConfigFile() {
|
||||
if (!options.configFile) return emptyArray;
|
||||
let diagnostics = programDiagnostics.getDiagnostics(options.configFile.fileName);
|
||||
let diagnostics = updateAndGetProgramDiagnostics().getDiagnostics(options.configFile.fileName);
|
||||
forEachResolvedProjectReference(resolvedRef => {
|
||||
diagnostics = concatenate(diagnostics, programDiagnostics.getDiagnostics(resolvedRef.sourceFile.fileName));
|
||||
diagnostics = concatenate(diagnostics, updateAndGetProgramDiagnostics().getDiagnostics(resolvedRef.sourceFile.fileName));
|
||||
});
|
||||
return diagnostics;
|
||||
}
|
||||
|
@ -3514,7 +3568,7 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg
|
|||
}
|
||||
|
||||
function getLibFileFromReference(ref: FileReference) {
|
||||
const { libFileName } = getLibFileNameFromLibReference(ref);
|
||||
const libFileName = getLibFileNameFromLibReference(ref);
|
||||
const actualFileName = libFileName && resolvedLibReferences?.get(libFileName)?.actual;
|
||||
return actualFileName !== undefined ? getSourceFile(actualFileName) : undefined;
|
||||
}
|
||||
|
@ -3666,10 +3720,10 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg
|
|||
const originalFileName = fileName;
|
||||
if (filesByName.has(path)) {
|
||||
const file = filesByName.get(path);
|
||||
addFileIncludeReason(file || undefined, reason);
|
||||
const addedReason = addFileIncludeReason(file || undefined, reason, /*checkExisting*/ true);
|
||||
// try to check if we've already seen this file but with a different casing in path
|
||||
// NOTE: this only makes sense for case-insensitive file systems, and only on files which are not redirected
|
||||
if (file && !(options.forceConsistentCasingInFileNames === false)) {
|
||||
if (file && addedReason && !(options.forceConsistentCasingInFileNames === false)) {
|
||||
const checkedName = file.fileName;
|
||||
const isRedirect = toPath(checkedName) !== toPath(fileName);
|
||||
if (isRedirect) {
|
||||
|
@ -3746,7 +3800,7 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg
|
|||
const dupFile = createRedirectedSourceFile(fileFromPackageId, file!, fileName, path, toPath(fileName), originalFileName, sourceFileOptions);
|
||||
redirectTargetsMap.add(fileFromPackageId.path, fileName);
|
||||
addFileToFilesByName(dupFile, path, fileName, redirectedPath);
|
||||
addFileIncludeReason(dupFile, reason);
|
||||
addFileIncludeReason(dupFile, reason, /*checkExisting*/ false);
|
||||
sourceFileToPackageName.set(path, packageIdToPackageName(packageId));
|
||||
processingOtherFiles!.push(dupFile);
|
||||
return dupFile;
|
||||
|
@ -3767,7 +3821,7 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg
|
|||
file.originalFileName = originalFileName;
|
||||
file.packageJsonLocations = sourceFileOptions.packageJsonLocations?.length ? sourceFileOptions.packageJsonLocations : undefined;
|
||||
file.packageJsonScope = sourceFileOptions.packageJsonScope;
|
||||
addFileIncludeReason(file, reason);
|
||||
addFileIncludeReason(file, reason, /*checkExisting*/ false);
|
||||
|
||||
if (host.useCaseSensitiveFileNames()) {
|
||||
const pathLowerCase = toFileNameLowerCase(path);
|
||||
|
@ -3800,12 +3854,17 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg
|
|||
else {
|
||||
processingOtherFiles!.push(file);
|
||||
}
|
||||
(filesWithReferencesProcessed ??= new Set()).add(file.path);
|
||||
}
|
||||
return file;
|
||||
}
|
||||
|
||||
function addFileIncludeReason(file: SourceFile | undefined, reason: FileIncludeReason) {
|
||||
if (file) fileReasons.add(file.path, reason);
|
||||
function addFileIncludeReason(file: SourceFile | undefined, reason: FileIncludeReason, checkExisting: boolean) {
|
||||
if (file && (!checkExisting || !isReferencedFile(reason) || !filesWithReferencesProcessed?.has(reason.file))) {
|
||||
fileReasons.add(file.path, reason);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
function addFileToFilesByName(file: SourceFile | undefined, path: Path, fileName: string, redirectedPath: Path | undefined) {
|
||||
|
@ -4067,21 +4126,15 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg
|
|||
|
||||
function processLibReferenceDirectives(file: SourceFile) {
|
||||
forEach(file.libReferenceDirectives, (libReference, index) => {
|
||||
const { libName, libFileName } = getLibFileNameFromLibReference(libReference);
|
||||
const libFileName = getLibFileNameFromLibReference(libReference);
|
||||
if (libFileName) {
|
||||
// we ignore any 'no-default-lib' reference set on this file.
|
||||
processRootFile(pathForLibFile(libFileName), /*isDefaultLib*/ true, /*ignoreNoDefaultLib*/ true, { kind: FileIncludeKind.LibReferenceDirective, file: file.path, index });
|
||||
}
|
||||
else {
|
||||
const unqualifiedLibName = removeSuffix(removePrefix(libName, "lib."), ".d.ts");
|
||||
const suggestion = getSpellingSuggestion(unqualifiedLibName, libs, identity);
|
||||
const diagnostic = suggestion ? Diagnostics.Cannot_find_lib_definition_for_0_Did_you_mean_1 : Diagnostics.Cannot_find_lib_definition_for_0;
|
||||
const args = suggestion ? [libName, suggestion] : [libName];
|
||||
(fileProcessingDiagnostics ||= []).push({
|
||||
kind: FilePreprocessingDiagnosticsKind.FilePreprocessingReferencedDiagnostic,
|
||||
kind: FilePreprocessingDiagnosticsKind.FilePreprocessingLibReferenceDiagnostic,
|
||||
reason: { kind: FileIncludeKind.LibReferenceDirective, file: file.path, index },
|
||||
diagnostic,
|
||||
args,
|
||||
});
|
||||
}
|
||||
});
|
||||
|
@ -4166,7 +4219,7 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg
|
|||
if (!sourceFile.isDeclarationFile) {
|
||||
const absoluteSourceFilePath = host.getCanonicalFileName(getNormalizedAbsolutePath(sourceFile.fileName, currentDirectory));
|
||||
if (absoluteSourceFilePath.indexOf(absoluteRootDirectoryPath) !== 0) {
|
||||
addProgramDiagnosticExplainingFile(
|
||||
addLazyProgramDiagnosticExplainingFile(
|
||||
sourceFile,
|
||||
Diagnostics.File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files,
|
||||
[sourceFile.fileName, rootDirectory],
|
||||
|
@ -4289,7 +4342,7 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg
|
|||
for (const file of files) {
|
||||
// Ignore file that is not emitted
|
||||
if (sourceFileMayBeEmitted(file, program) && !rootPaths.has(file.path)) {
|
||||
addProgramDiagnosticExplainingFile(
|
||||
addLazyProgramDiagnosticExplainingFile(
|
||||
file,
|
||||
Diagnostics.File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern,
|
||||
[file.fileName, options.configFilePath || ""],
|
||||
|
@ -4679,38 +4732,122 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg
|
|||
});
|
||||
}
|
||||
|
||||
function createDiagnosticExplainingFile(file: SourceFile | undefined, fileProcessingReason: FileIncludeReason | undefined, diagnostic: DiagnosticMessage, args: DiagnosticArguments | undefined): Diagnostic {
|
||||
function createDiagnosticExplainingFile(file: SourceFile | undefined, fileProcessingReason: FileIncludeReason | undefined, diagnostic: DiagnosticMessage, args: DiagnosticArguments): Diagnostic {
|
||||
let seenReasons: Set<FileIncludeReason> | undefined;
|
||||
const reasons = file && fileReasons.get(file.path);
|
||||
let fileIncludeReasons: DiagnosticMessageChain[] | undefined;
|
||||
let relatedInfo: Diagnostic[] | undefined;
|
||||
let relatedInfo: DiagnosticWithLocation[] | undefined;
|
||||
let locationReason = isReferencedFile(fileProcessingReason) ? fileProcessingReason : undefined;
|
||||
if (file) fileReasons.get(file.path)?.forEach(processReason);
|
||||
let fileIncludeReasonDetails: DiagnosticMessageChain | undefined;
|
||||
let redirectInfo: DiagnosticMessageChain[] | undefined;
|
||||
let cachedChain = file && fileReasonsToChain?.get(file.path);
|
||||
let chain: DiagnosticMessageChain | undefined;
|
||||
if (cachedChain) {
|
||||
if (cachedChain.fileIncludeReasonDetails) {
|
||||
seenReasons = new Set(reasons);
|
||||
reasons?.forEach(populateRelatedInfo);
|
||||
}
|
||||
else {
|
||||
reasons?.forEach(processReason);
|
||||
}
|
||||
redirectInfo = cachedChain.redirectInfo;
|
||||
}
|
||||
else {
|
||||
reasons?.forEach(processReason);
|
||||
redirectInfo = file && explainIfFileIsRedirectAndImpliedFormat(file, getCompilerOptionsForFile(file));
|
||||
}
|
||||
|
||||
if (fileProcessingReason) processReason(fileProcessingReason);
|
||||
const processedExtraReason = seenReasons?.size !== reasons?.length;
|
||||
|
||||
// If we have location and there is only one reason file is in which is the location, dont add details for file include
|
||||
if (locationReason && fileIncludeReasons?.length === 1) fileIncludeReasons = undefined;
|
||||
if (locationReason && seenReasons?.size === 1) seenReasons = undefined;
|
||||
|
||||
if (seenReasons && cachedChain) {
|
||||
if (cachedChain.details && !processedExtraReason) {
|
||||
chain = chainDiagnosticMessages(cachedChain.details, diagnostic, ...args || emptyArray);
|
||||
}
|
||||
else if (cachedChain.fileIncludeReasonDetails) {
|
||||
if (!processedExtraReason) {
|
||||
if (!cachedFileIncludeDetailsHasProcessedExtraReason()) {
|
||||
fileIncludeReasonDetails = cachedChain.fileIncludeReasonDetails;
|
||||
}
|
||||
else {
|
||||
fileIncludeReasons = cachedChain.fileIncludeReasonDetails.next!.slice(0, reasons!.length);
|
||||
}
|
||||
}
|
||||
else {
|
||||
if (!cachedFileIncludeDetailsHasProcessedExtraReason()) {
|
||||
fileIncludeReasons = [...cachedChain.fileIncludeReasonDetails.next!, fileIncludeReasons![0]];
|
||||
}
|
||||
else {
|
||||
fileIncludeReasons = append(cachedChain.fileIncludeReasonDetails.next!.slice(0, reasons!.length), fileIncludeReasons![0]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!chain) {
|
||||
if (!fileIncludeReasonDetails) fileIncludeReasonDetails = seenReasons && chainDiagnosticMessages(fileIncludeReasons, Diagnostics.The_file_is_in_the_program_because_Colon);
|
||||
chain = chainDiagnosticMessages(
|
||||
redirectInfo ?
|
||||
fileIncludeReasonDetails ? [fileIncludeReasonDetails, ...redirectInfo] : redirectInfo :
|
||||
fileIncludeReasonDetails,
|
||||
diagnostic,
|
||||
...args || emptyArray,
|
||||
);
|
||||
}
|
||||
|
||||
// This is chain's next contains:
|
||||
// - File is in program because:
|
||||
// - Files reasons listed
|
||||
// - extra reason if its not already processed - this happens in case sensitive file system where files differ in casing and we are giving reasons for two files so reason is not in file's reason
|
||||
// fyi above whole secton is ommited if we have single reason and we are reporting at that reason's location
|
||||
// - redirect and additional information about file
|
||||
// So cache result if we havent ommited file include reasons
|
||||
if (file) {
|
||||
if (cachedChain) {
|
||||
// Cache new fileIncludeDetails if we have update
|
||||
// Or if we had cached with more details than the reasons
|
||||
if (!cachedChain.fileIncludeReasonDetails || (!processedExtraReason && fileIncludeReasonDetails)) {
|
||||
cachedChain.fileIncludeReasonDetails = fileIncludeReasonDetails;
|
||||
}
|
||||
}
|
||||
else {
|
||||
(fileReasonsToChain ??= new Map()).set(file.path, cachedChain = { fileIncludeReasonDetails, redirectInfo });
|
||||
}
|
||||
// If we didnt compute extra file include reason , cache the details to use directly
|
||||
if (!cachedChain.details && !processedExtraReason) cachedChain.details = chain.next;
|
||||
}
|
||||
|
||||
const location = locationReason && getReferencedFileLocation(program, locationReason);
|
||||
const fileIncludeReasonDetails = fileIncludeReasons && chainDiagnosticMessages(fileIncludeReasons, Diagnostics.The_file_is_in_the_program_because_Colon);
|
||||
const optionsForFile = file && getCompilerOptionsForFile(file) || options;
|
||||
const redirectInfo = file && explainIfFileIsRedirectAndImpliedFormat(file, optionsForFile);
|
||||
const chain = chainDiagnosticMessages(redirectInfo ? fileIncludeReasonDetails ? [fileIncludeReasonDetails, ...redirectInfo] : redirectInfo : fileIncludeReasonDetails, diagnostic, ...args || emptyArray);
|
||||
return location && isReferenceFileLocation(location) ?
|
||||
createFileDiagnosticFromMessageChain(location.file, location.pos, location.end - location.pos, chain, relatedInfo) :
|
||||
createCompilerDiagnosticFromMessageChain(chain, relatedInfo);
|
||||
|
||||
function processReason(reason: FileIncludeReason) {
|
||||
(fileIncludeReasons ||= []).push(fileIncludeReasonToDiagnostics(program, reason));
|
||||
if (seenReasons?.has(reason)) return;
|
||||
(seenReasons ??= new Set()).add(reason);
|
||||
(fileIncludeReasons ??= []).push(fileIncludeReasonToDiagnostics(program, reason));
|
||||
populateRelatedInfo(reason);
|
||||
}
|
||||
|
||||
function populateRelatedInfo(reason: FileIncludeReason) {
|
||||
if (!locationReason && isReferencedFile(reason)) {
|
||||
// Report error at first reference file or file currently in processing and dont report in related information
|
||||
locationReason = reason;
|
||||
}
|
||||
else if (locationReason !== reason) {
|
||||
relatedInfo = append(relatedInfo, fileIncludeReasonToRelatedInformation(reason));
|
||||
relatedInfo = append(relatedInfo, getFileIncludeReasonToRelatedInformation(reason));
|
||||
}
|
||||
// Remove fileProcessingReason if its already included in fileReasons of the program
|
||||
if (reason === fileProcessingReason) fileProcessingReason = undefined;
|
||||
}
|
||||
|
||||
function cachedFileIncludeDetailsHasProcessedExtraReason() {
|
||||
return cachedChain!.fileIncludeReasonDetails!.next?.length !== reasons?.length;
|
||||
}
|
||||
}
|
||||
|
||||
function addFilePreprocessingFileExplainingDiagnostic(file: SourceFile | undefined, fileProcessingReason: FileIncludeReason, diagnostic: DiagnosticMessage, args?: DiagnosticArguments) {
|
||||
function addFilePreprocessingFileExplainingDiagnostic(file: SourceFile | undefined, fileProcessingReason: FileIncludeReason, diagnostic: DiagnosticMessage, args: DiagnosticArguments) {
|
||||
(fileProcessingDiagnostics ||= []).push({
|
||||
kind: FilePreprocessingDiagnosticsKind.FilePreprocessingFileExplainingDiagnostic,
|
||||
file: file && file.path,
|
||||
|
@ -4720,8 +4857,14 @@ export function createProgram(rootNamesOrOptions: readonly string[] | CreateProg
|
|||
});
|
||||
}
|
||||
|
||||
function addProgramDiagnosticExplainingFile(file: SourceFile, diagnostic: DiagnosticMessage, args?: DiagnosticArguments) {
|
||||
programDiagnostics.add(createDiagnosticExplainingFile(file, /*fileProcessingReason*/ undefined, diagnostic, args));
|
||||
function addLazyProgramDiagnosticExplainingFile(file: SourceFile, diagnostic: DiagnosticMessage, args: DiagnosticArguments) {
|
||||
lazyProgramDiagnosticExplainingFile!.push({ file, diagnostic, args });
|
||||
}
|
||||
|
||||
function getFileIncludeReasonToRelatedInformation(reason: FileIncludeReason) {
|
||||
let relatedInfo = reasonToRelatedInfo?.get(reason);
|
||||
if (relatedInfo === undefined) (reasonToRelatedInfo ??= new Map()).set(reason, relatedInfo = fileIncludeReasonToRelatedInformation(reason) ?? false);
|
||||
return relatedInfo || undefined;
|
||||
}
|
||||
|
||||
function fileIncludeReasonToRelatedInformation(reason: FileIncludeReason): DiagnosticWithLocation | undefined {
|
||||
|
|
|
@ -4608,26 +4608,24 @@ export type FileIncludeReason =
|
|||
|
||||
/** @internal */
|
||||
export const enum FilePreprocessingDiagnosticsKind {
|
||||
FilePreprocessingReferencedDiagnostic,
|
||||
FilePreprocessingLibReferenceDiagnostic,
|
||||
FilePreprocessingFileExplainingDiagnostic,
|
||||
ResolutionDiagnostics,
|
||||
}
|
||||
|
||||
/** @internal */
|
||||
export interface FilePreprocessingReferencedDiagnostic {
|
||||
kind: FilePreprocessingDiagnosticsKind.FilePreprocessingReferencedDiagnostic;
|
||||
reason: ReferencedFile;
|
||||
diagnostic: DiagnosticMessage;
|
||||
args?: DiagnosticArguments;
|
||||
export interface FilePreprocessingLibReferenceDiagnostic {
|
||||
kind: FilePreprocessingDiagnosticsKind.FilePreprocessingLibReferenceDiagnostic;
|
||||
reason: ReferencedFile & { kind: FileIncludeKind.LibReferenceDirective; };
|
||||
}
|
||||
|
||||
/** @internal */
|
||||
export interface FilePreprocessingFileExplainingDiagnostic {
|
||||
kind: FilePreprocessingDiagnosticsKind.FilePreprocessingFileExplainingDiagnostic;
|
||||
file?: Path;
|
||||
file: Path | undefined;
|
||||
fileProcessingReason: FileIncludeReason;
|
||||
diagnostic: DiagnosticMessage;
|
||||
args?: DiagnosticArguments;
|
||||
args: DiagnosticArguments;
|
||||
}
|
||||
|
||||
/** @internal */
|
||||
|
@ -4637,7 +4635,7 @@ export interface ResolutionDiagnostics {
|
|||
}
|
||||
|
||||
/** @internal */
|
||||
export type FilePreprocessingDiagnostics = FilePreprocessingReferencedDiagnostic | FilePreprocessingFileExplainingDiagnostic | ResolutionDiagnostics;
|
||||
export type FilePreprocessingDiagnostics = FilePreprocessingLibReferenceDiagnostic | FilePreprocessingFileExplainingDiagnostic | ResolutionDiagnostics;
|
||||
|
||||
/** @internal */
|
||||
export const enum EmitOnly {
|
||||
|
|
|
@ -594,6 +594,7 @@ export function createWatchProgram<T extends BuilderProgram>(host: WatchCompiler
|
|||
});
|
||||
parsedConfigs = undefined;
|
||||
}
|
||||
builderProgram = undefined!;
|
||||
}
|
||||
|
||||
function getResolutionCache() {
|
||||
|
|
|
@ -21,6 +21,7 @@ export interface NamedSourceText {
|
|||
export interface ProgramWithSourceTexts extends ts.Program {
|
||||
sourceTexts?: readonly NamedSourceText[];
|
||||
host: TestCompilerHost;
|
||||
version: number;
|
||||
}
|
||||
|
||||
export interface TestCompilerHost extends ts.CompilerHost {
|
||||
|
@ -102,7 +103,7 @@ function createSourceFileWithText(fileName: string, sourceText: SourceText, targ
|
|||
return file;
|
||||
}
|
||||
|
||||
export function createTestCompilerHost(texts: readonly NamedSourceText[], target: ts.ScriptTarget, oldProgram?: ProgramWithSourceTexts, useGetSourceFileByPath?: boolean) {
|
||||
export function createTestCompilerHost(texts: readonly NamedSourceText[], target: ts.ScriptTarget, oldProgram?: ProgramWithSourceTexts, useGetSourceFileByPath?: boolean, useCaseSensitiveFileNames?: boolean) {
|
||||
const files = ts.arrayToMap(texts, t => t.name, t => {
|
||||
if (oldProgram) {
|
||||
let oldFile = oldProgram.getSourceFile(t.name) as SourceFileWithText;
|
||||
|
@ -115,14 +116,15 @@ export function createTestCompilerHost(texts: readonly NamedSourceText[], target
|
|||
}
|
||||
return createSourceFileWithText(t.name, t.text, target);
|
||||
});
|
||||
const useCaseSensitiveFileNames = ts.sys && ts.sys.useCaseSensitiveFileNames;
|
||||
if (useCaseSensitiveFileNames === undefined) useCaseSensitiveFileNames = ts.sys && ts.sys.useCaseSensitiveFileNames;
|
||||
const getCanonicalFileName = ts.createGetCanonicalFileName(useCaseSensitiveFileNames);
|
||||
const filesByPath = ts.mapEntries(files, (fileName, file) => [ts.toPath(fileName, "", getCanonicalFileName), file]);
|
||||
const trace: string[] = [];
|
||||
const result: TestCompilerHost = {
|
||||
trace: s => trace.push(s),
|
||||
getTrace: () => trace,
|
||||
clearTrace: () => trace.length = 0,
|
||||
getSourceFile: fileName => files.get(fileName),
|
||||
getSourceFile: fileName => filesByPath.get(ts.toPath(fileName, "", getCanonicalFileName)),
|
||||
getDefaultLibFileName: () => "lib.d.ts",
|
||||
writeFile: ts.notImplemented,
|
||||
getCurrentDirectory: () => "",
|
||||
|
@ -130,37 +132,48 @@ export function createTestCompilerHost(texts: readonly NamedSourceText[], target
|
|||
getCanonicalFileName,
|
||||
useCaseSensitiveFileNames: () => useCaseSensitiveFileNames,
|
||||
getNewLine: () => ts.sys ? ts.sys.newLine : newLine,
|
||||
fileExists: fileName => files.has(fileName),
|
||||
fileExists: fileName => filesByPath.has(ts.toPath(fileName, "", getCanonicalFileName)),
|
||||
readFile: fileName => {
|
||||
const file = files.get(fileName);
|
||||
const file = filesByPath.get(ts.toPath(fileName, "", getCanonicalFileName));
|
||||
return file && file.text;
|
||||
},
|
||||
};
|
||||
if (useGetSourceFileByPath) {
|
||||
const filesByPath = ts.mapEntries(files, (fileName, file) => [ts.toPath(fileName, "", getCanonicalFileName), file]);
|
||||
result.getSourceFileByPath = (_fileName, path) => filesByPath.get(path);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
export function newProgram(texts: NamedSourceText[], rootNames: string[], options: ts.CompilerOptions, useGetSourceFileByPath?: boolean): ProgramWithSourceTexts {
|
||||
const host = createTestCompilerHost(texts, options.target!, /*oldProgram*/ undefined, useGetSourceFileByPath);
|
||||
const program = ts.createProgram(rootNames, options, host) as ProgramWithSourceTexts;
|
||||
program.sourceTexts = texts;
|
||||
program.host = host;
|
||||
return program;
|
||||
export function newProgram(texts: NamedSourceText[], rootNames: string[], options: ts.CompilerOptions, useGetSourceFileByPath?: boolean, useCaseSensitiveFileNames?: boolean): ProgramWithSourceTexts {
|
||||
const host = createTestCompilerHost(texts, options.target!, /*oldProgram*/ undefined, useGetSourceFileByPath, useCaseSensitiveFileNames);
|
||||
return programToProgramWithSourceTexts(
|
||||
ts.createProgram(rootNames, options, host),
|
||||
texts,
|
||||
host,
|
||||
1,
|
||||
);
|
||||
}
|
||||
|
||||
export function updateProgram(oldProgram: ProgramWithSourceTexts, rootNames: readonly string[], options: ts.CompilerOptions, updater: (files: NamedSourceText[]) => void, newTexts?: NamedSourceText[], useGetSourceFileByPath?: boolean) {
|
||||
function programToProgramWithSourceTexts(program: ts.Program, texts: NamedSourceText[], host: TestCompilerHost, version: number): ProgramWithSourceTexts {
|
||||
const result = program as ProgramWithSourceTexts;
|
||||
result.sourceTexts = texts;
|
||||
result.host = host;
|
||||
result.version = version;
|
||||
return result;
|
||||
}
|
||||
|
||||
export function updateProgram(oldProgram: ProgramWithSourceTexts, rootNames: readonly string[], options: ts.CompilerOptions, updater: (files: NamedSourceText[]) => void, newTexts?: NamedSourceText[], useGetSourceFileByPath?: boolean, useCaseSensitiveFileNames?: boolean) {
|
||||
if (!newTexts) {
|
||||
newTexts = oldProgram.sourceTexts!.slice(0);
|
||||
}
|
||||
updater(newTexts);
|
||||
const host = createTestCompilerHost(newTexts, options.target!, oldProgram, useGetSourceFileByPath);
|
||||
const program = ts.createProgram(rootNames, options, host, oldProgram) as ProgramWithSourceTexts;
|
||||
program.sourceTexts = newTexts;
|
||||
program.host = host;
|
||||
return program;
|
||||
const host = createTestCompilerHost(newTexts, options.target!, oldProgram, useGetSourceFileByPath, useCaseSensitiveFileNames);
|
||||
return programToProgramWithSourceTexts(
|
||||
ts.createProgram(rootNames, options, host, oldProgram),
|
||||
newTexts,
|
||||
host,
|
||||
oldProgram.version + 1,
|
||||
);
|
||||
}
|
||||
|
||||
export function updateProgramText(files: readonly NamedSourceText[], fileName: string, newProgramText: string) {
|
||||
|
|
|
@ -0,0 +1,33 @@
|
|||
import { dedent } from "../../_namespaces/Utils";
|
||||
import { jsonToReadableText } from "../helpers";
|
||||
import {
|
||||
FsContents,
|
||||
libContent,
|
||||
} from "./contents";
|
||||
import { libFile } from "./virtualFileSystemWithWatch";
|
||||
|
||||
export function getFsContentsForMultipleErrorsForceConsistentCasingInFileNames(): FsContents {
|
||||
return {
|
||||
"/home/src/projects/project/src/struct.d.ts": dedent`
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
`,
|
||||
"/home/src/projects/project/src/anotherFile.ts": dedent`
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
`,
|
||||
"/home/src/projects/project/src/oneMore.ts": dedent`
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
`,
|
||||
"/home/src/projects/project/tsconfig.json": jsonToReadableText({}),
|
||||
"/home/src/projects/project/node_modules/fp-ts/lib/struct.d.ts": `export function foo(): void`,
|
||||
[libFile.path]: libContent,
|
||||
};
|
||||
}
|
|
@ -91,3 +91,46 @@ export function getCommandLineArgsForLibResolution(withoutConfig: true | undefin
|
|||
["project1/core.d.ts", "project1/utils.d.ts", "project1/file.ts", "project1/index.ts", "project1/file2.ts", "--lib", "es5,dom", "--traceResolution", "--explainFiles"] :
|
||||
["-p", "project1", "--explainFiles"];
|
||||
}
|
||||
|
||||
function getFsContentsForLibResolutionUnknown(): FsContents {
|
||||
return {
|
||||
"/home/src/projects/project1/utils.d.ts": `export const y = 10;`,
|
||||
"/home/src/projects/project1/file.ts": `export const file = 10;`,
|
||||
"/home/src/projects/project1/core.d.ts": `export const core = 10;`,
|
||||
"/home/src/projects/project1/index.ts": `export const x = "type1";`,
|
||||
"/home/src/projects/project1/file2.ts": dedent`
|
||||
/// <reference lib="webworker2"/>
|
||||
/// <reference lib="unknownlib"/>
|
||||
/// <reference lib="scripthost"/>
|
||||
`,
|
||||
"/home/src/projects/project1/tsconfig.json": jsonToReadableText({
|
||||
compilerOptions: {
|
||||
composite: true,
|
||||
traceResolution: true,
|
||||
},
|
||||
}),
|
||||
"/home/src/lib/lib.d.ts": libContent,
|
||||
"/home/src/lib/lib.webworker.d.ts": "interface WebWorkerInterface { }",
|
||||
"/home/src/lib/lib.scripthost.d.ts": "interface ScriptHostInterface { }",
|
||||
};
|
||||
}
|
||||
|
||||
export function getFsForLibResolutionUnknown() {
|
||||
return loadProjectFromFiles(
|
||||
getFsContentsForLibResolutionUnknown(),
|
||||
{
|
||||
cwd: "/home/src/projects",
|
||||
executingFilePath: "/home/src/lib/tsc.js",
|
||||
},
|
||||
);
|
||||
}
|
||||
|
||||
export function getSysForLibResolutionUnknown() {
|
||||
return createWatchedSystem(
|
||||
getFsContentsForLibResolutionUnknown(),
|
||||
{
|
||||
currentDirectory: "/home/src/projects",
|
||||
executingFilePath: "/home/src/lib/tsc.js",
|
||||
},
|
||||
);
|
||||
}
|
||||
|
|
|
@ -19,7 +19,8 @@ import {
|
|||
libFile,
|
||||
} from "./helpers/virtualFileSystemWithWatch";
|
||||
|
||||
describe("unittests:: Reuse program structure:: General", () => {
|
||||
describe("unittests:: reuseProgramStructure:: General", () => {
|
||||
type ProgramToBaseline = ts.Program & Pick<ProgramWithSourceTexts, "version">;
|
||||
function baselineCache<File, T>(
|
||||
baselines: string[],
|
||||
cacheType: string,
|
||||
|
@ -40,8 +41,21 @@ describe("unittests:: Reuse program structure:: General", () => {
|
|||
baselines.push(`${key}: ${mode ? ts.getNameOfCompilerOptionValue(mode, ts.moduleOptionDeclaration.type) + ": " : ""}${jsonToReadableText(resolved)}`);
|
||||
}
|
||||
}
|
||||
function baselineProgram(baselines: string[], program: ts.Program, host?: TestCompilerHost) {
|
||||
baselines.push(`Program Reused:: ${(ts as any).StructureIsReused[program.structureIsReused]}`);
|
||||
|
||||
function baselineDiagnostics(baselines: string[], program: ProgramToBaseline, skipHeader?: boolean) {
|
||||
if (!skipHeader) {
|
||||
baselines.push(`Program ${program.version} Reused:: ${(ts as any).StructureIsReused[program.structureIsReused]}`);
|
||||
baselines.push(`Diagnostics:`);
|
||||
}
|
||||
baselines.push(ts.formatDiagnostics(program.getSemanticDiagnostics(), {
|
||||
getCurrentDirectory: () => program.getCurrentDirectory(),
|
||||
getNewLine: () => "\n",
|
||||
getCanonicalFileName: ts.createGetCanonicalFileName(program.useCaseSensitiveFileNames()),
|
||||
}));
|
||||
baselines.push("", "");
|
||||
}
|
||||
function baselineProgram(baselines: string[], program: ProgramToBaseline, host?: TestCompilerHost, skipDiagnostics?: boolean) {
|
||||
baselines.push(`Program ${program.version} Reused:: ${(ts as any).StructureIsReused[program.structureIsReused]}`);
|
||||
program.getSourceFiles().forEach(f => {
|
||||
baselines.push(`File: ${f.fileName}`, f.text);
|
||||
baselineCache(baselines, "resolvedModules", f, program.forEachResolvedModule);
|
||||
|
@ -55,12 +69,12 @@ describe("unittests:: Reuse program structure:: General", () => {
|
|||
baselines.push("");
|
||||
baselines.push(`MissingPaths:: ${jsonToReadableText(ts.arrayFrom(program.getMissingFilePaths().values()))}`);
|
||||
baselines.push("");
|
||||
baselines.push(ts.formatDiagnostics(program.getSemanticDiagnostics(), {
|
||||
getCurrentDirectory: () => program.getCurrentDirectory(),
|
||||
getNewLine: () => "\n",
|
||||
getCanonicalFileName: ts.createGetCanonicalFileName(program.useCaseSensitiveFileNames()),
|
||||
}));
|
||||
baselines.push("", "");
|
||||
if (!skipDiagnostics) {
|
||||
baselineDiagnostics(baselines, program, /*skipHeader*/ true);
|
||||
}
|
||||
else {
|
||||
baselines.push("Skipped diagnostics", "", "");
|
||||
}
|
||||
}
|
||||
|
||||
function runBaseline(scenario: string, baselines: readonly string[]) {
|
||||
|
@ -281,7 +295,8 @@ describe("unittests:: Reuse program structure:: General", () => {
|
|||
];
|
||||
const host = createTestCompilerHost(files, target);
|
||||
const options: ts.CompilerOptions = { target, typeRoots: ["/types"] };
|
||||
const program1 = ts.createProgram(["/a.ts"], options, host);
|
||||
const program1 = ts.createProgram(["/a.ts"], options, host) as ProgramToBaseline;
|
||||
program1.version = 1;
|
||||
let sourceFile = program1.getSourceFile("/a.ts")!;
|
||||
const baselines: string[] = [];
|
||||
baselineProgram(baselines, program1, host);
|
||||
|
@ -293,7 +308,8 @@ describe("unittests:: Reuse program structure:: General", () => {
|
|||
return fileName === sourceFile.fileName ? sourceFile : program1.getSourceFile(fileName);
|
||||
},
|
||||
};
|
||||
const program2 = ts.createProgram(["/a.ts"], options, updateHost, program1);
|
||||
const program2 = ts.createProgram(["/a.ts"], options, updateHost, program1) as ProgramToBaseline;
|
||||
program2.version = 2;
|
||||
baselineProgram(baselines, program2, updateHost);
|
||||
baselines.push(`parent pointers are not altered: ${sourceFile.statements[2].getSourceFile() === sourceFile}`);
|
||||
runBaseline("works with updated SourceFiles", baselines);
|
||||
|
@ -554,15 +570,217 @@ describe("unittests:: Reuse program structure:: General", () => {
|
|||
verifyRedirects(/*useGetSourceFileByPath*/ true);
|
||||
});
|
||||
});
|
||||
|
||||
it("forceConsistentCasingInFileNames:: handles file preprocessing dignostics", () => {
|
||||
const files = [
|
||||
{
|
||||
name: "/src/project/src/struct.d.ts",
|
||||
text: SourceText.New(
|
||||
"",
|
||||
"",
|
||||
Utils.dedent`
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
`,
|
||||
),
|
||||
},
|
||||
{
|
||||
name: "/src/project/src/anotherFile.ts",
|
||||
text: SourceText.New(
|
||||
"",
|
||||
"",
|
||||
Utils.dedent`
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
`,
|
||||
),
|
||||
},
|
||||
{
|
||||
name: "/src/project/src/oneMore.ts",
|
||||
text: SourceText.New(
|
||||
"",
|
||||
"",
|
||||
Utils.dedent`
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
`,
|
||||
),
|
||||
},
|
||||
{
|
||||
name: "/src/project/node_modules/fp-ts/lib/struct.d.ts",
|
||||
text: SourceText.New("", "", `export function foo(): void`),
|
||||
},
|
||||
];
|
||||
|
||||
const options: ts.CompilerOptions = { target, moduleResolution: ts.ModuleResolutionKind.Node10 };
|
||||
const rootNames = files.map(f => f.name);
|
||||
const program1 = newProgram(files, rootNames, options, /*useGetSourceFileByPath*/ undefined, /*useCaseSensitiveFileNames*/ false);
|
||||
const baselines: string[] = [];
|
||||
baselineProgram(baselines, program1);
|
||||
|
||||
const program2 = updateProgram(
|
||||
program1,
|
||||
rootNames,
|
||||
options,
|
||||
files => {
|
||||
files[0].text = files[0].text.updateProgram(files[0].text.getFullText() + "export const y = 10;");
|
||||
},
|
||||
/*newTexts*/ undefined,
|
||||
/*useGetSourceFileByPath*/ undefined,
|
||||
/*useCaseSensitiveFileNames*/ false,
|
||||
);
|
||||
baselineProgram(baselines, program2);
|
||||
|
||||
const program3 = updateProgram(
|
||||
program2,
|
||||
rootNames,
|
||||
options,
|
||||
files => {
|
||||
files[0].text = files[0].text.updateProgram(Utils.dedent`
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
`);
|
||||
},
|
||||
/*newTexts*/ undefined,
|
||||
/*useGetSourceFileByPath*/ undefined,
|
||||
/*useCaseSensitiveFileNames*/ false,
|
||||
);
|
||||
baselineProgram(baselines, program3);
|
||||
runBaseline("handles file preprocessing dignostics", baselines);
|
||||
});
|
||||
|
||||
it("forceConsistentCasingInFileNames:: handles file preprocessing dignostics when diagnostics are not queried", () => {
|
||||
const files = [
|
||||
{
|
||||
name: "/src/project/src/struct.d.ts",
|
||||
text: SourceText.New(
|
||||
"",
|
||||
"",
|
||||
Utils.dedent`
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
`,
|
||||
),
|
||||
},
|
||||
{
|
||||
name: "/src/project/src/anotherFile.ts",
|
||||
text: SourceText.New(
|
||||
"",
|
||||
"",
|
||||
Utils.dedent`
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
`,
|
||||
),
|
||||
},
|
||||
{
|
||||
name: "/src/project/src/oneMore.ts",
|
||||
text: SourceText.New(
|
||||
"",
|
||||
"",
|
||||
Utils.dedent`
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
`,
|
||||
),
|
||||
},
|
||||
{
|
||||
name: "/src/project/node_modules/fp-ts/lib/struct.d.ts",
|
||||
text: SourceText.New("", "", `export function foo(): void`),
|
||||
},
|
||||
];
|
||||
|
||||
const options: ts.CompilerOptions = { target, moduleResolution: ts.ModuleResolutionKind.Node10 };
|
||||
const rootNames = files.map(f => f.name);
|
||||
const program1 = newProgram(files, rootNames, options, /*useGetSourceFileByPath*/ undefined, /*useCaseSensitiveFileNames*/ false);
|
||||
const baselines: string[] = [];
|
||||
baselineProgram(baselines, program1, /*host*/ undefined, /*skipDiagnostics*/ true);
|
||||
|
||||
const program2 = updateProgram(
|
||||
program1,
|
||||
rootNames,
|
||||
options,
|
||||
files => {
|
||||
files[0].text = files[0].text.updateProgram(files[0].text.getFullText() + "export const y = 10;");
|
||||
},
|
||||
/*newTexts*/ undefined,
|
||||
/*useGetSourceFileByPath*/ undefined,
|
||||
/*useCaseSensitiveFileNames*/ false,
|
||||
);
|
||||
baselineProgram(baselines, program2, /*host*/ undefined, /*skipDiagnostics*/ true);
|
||||
baselineDiagnostics(baselines, program1);
|
||||
|
||||
const program3 = updateProgram(
|
||||
program2,
|
||||
rootNames,
|
||||
options,
|
||||
files => {
|
||||
files[0].text = files[0].text.updateProgram(files[0].text.getFullText() + "export const z = 10;");
|
||||
},
|
||||
/*newTexts*/ undefined,
|
||||
/*useGetSourceFileByPath*/ undefined,
|
||||
/*useCaseSensitiveFileNames*/ false,
|
||||
);
|
||||
baselineProgram(baselines, program3);
|
||||
baselineDiagnostics(baselines, program2);
|
||||
|
||||
const program4 = updateProgram(
|
||||
program3,
|
||||
rootNames,
|
||||
options,
|
||||
files => {
|
||||
files[0].text = files[0].text.updateProgram(Utils.dedent`
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
`);
|
||||
},
|
||||
/*newTexts*/ undefined,
|
||||
/*useGetSourceFileByPath*/ undefined,
|
||||
/*useCaseSensitiveFileNames*/ false,
|
||||
);
|
||||
baselineProgram(baselines, program4, /*host*/ undefined, /*skipDiagnostics*/ true);
|
||||
|
||||
const program5 = updateProgram(
|
||||
program4,
|
||||
rootNames,
|
||||
options,
|
||||
files => {
|
||||
files[0].text = files[0].text.updateProgram(Utils.dedent`
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs3 from "./Struct";
|
||||
`);
|
||||
},
|
||||
/*newTexts*/ undefined,
|
||||
/*useGetSourceFileByPath*/ undefined,
|
||||
/*useCaseSensitiveFileNames*/ false,
|
||||
);
|
||||
baselineProgram(baselines, program5);
|
||||
baselineDiagnostics(baselines, program4);
|
||||
runBaseline("handles file preprocessing dignostics when diagnostics are not queried", baselines);
|
||||
});
|
||||
});
|
||||
|
||||
describe("unittests:: Reuse program structure:: host is optional", () => {
|
||||
describe("unittests:: reuseProgramStructure:: host is optional", () => {
|
||||
it("should work if host is not provided", () => {
|
||||
ts.createProgram([], {});
|
||||
});
|
||||
});
|
||||
|
||||
describe("unittests:: Reuse program structure:: isProgramUptoDate", () => {
|
||||
describe("unittests:: reuseProgramStructure:: isProgramUptoDate::", () => {
|
||||
function getWhetherProgramIsUptoDate(
|
||||
program: ts.Program,
|
||||
newRootFileNames: string[],
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
import * as Utils from "../../_namespaces/Utils";
|
||||
import { dedent } from "../../_namespaces/Utils";
|
||||
import { getFsContentsForMultipleErrorsForceConsistentCasingInFileNames } from "../helpers/forceConsistentCasingInFileNames";
|
||||
import { verifyTsc } from "../helpers/tsc";
|
||||
import { loadProjectFromFiles } from "../helpers/vfs";
|
||||
|
||||
|
@ -9,7 +10,7 @@ describe("unittests:: tsc:: forceConsistentCasingInFileNames::", () => {
|
|||
commandLineArgs: ["/src/project/src/struct.d.ts", "--forceConsistentCasingInFileNames", "--explainFiles"],
|
||||
fs: () =>
|
||||
loadProjectFromFiles({
|
||||
"/src/project/src/struct.d.ts": Utils.dedent`
|
||||
"/src/project/src/struct.d.ts": dedent`
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
|
@ -18,4 +19,11 @@ describe("unittests:: tsc:: forceConsistentCasingInFileNames::", () => {
|
|||
"/src/project/node_modules/fp-ts/lib/struct.d.ts": `export function foo(): void`,
|
||||
}),
|
||||
});
|
||||
|
||||
verifyTsc({
|
||||
scenario: "forceConsistentCasingInFileNames",
|
||||
subScenario: "when file is included from multiple places with different casing",
|
||||
commandLineArgs: ["-p", "/home/src/projects/project/tsconfig.json", "--explainFiles"],
|
||||
fs: () => loadProjectFromFiles(getFsContentsForMultipleErrorsForceConsistentCasingInFileNames()),
|
||||
});
|
||||
});
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
import {
|
||||
getCommandLineArgsForLibResolution,
|
||||
getFsForLibResolution,
|
||||
getFsForLibResolutionUnknown,
|
||||
} from "../helpers/libraryResolution";
|
||||
import { verifyTsc } from "../helpers/tsc";
|
||||
|
||||
|
@ -18,4 +19,12 @@ describe("unittests:: tsc:: libraryResolution:: library file resolution", () =>
|
|||
verify(/*libRedirection*/ true);
|
||||
verify(/*libRedirection*/ undefined, /*withoutConfig*/ true);
|
||||
verify(/*libRedirection*/ true, /*withoutConfig*/ true);
|
||||
|
||||
verifyTsc({
|
||||
scenario: "libraryResolution",
|
||||
subScenario: "unknown lib",
|
||||
fs: () => getFsForLibResolutionUnknown(),
|
||||
commandLineArgs: getCommandLineArgsForLibResolution(/*withoutConfig*/ undefined),
|
||||
baselinePrograms: true,
|
||||
});
|
||||
});
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
import * as Utils from "../../_namespaces/Utils";
|
||||
import { dedent } from "../../_namespaces/Utils";
|
||||
import { jsonToReadableText } from "../helpers";
|
||||
import { getFsContentsForMultipleErrorsForceConsistentCasingInFileNames } from "../helpers/forceConsistentCasingInFileNames";
|
||||
import {
|
||||
TscWatchCompileChange,
|
||||
verifyTscWatch,
|
||||
|
@ -11,7 +12,7 @@ import {
|
|||
SymLink,
|
||||
} from "../helpers/virtualFileSystemWithWatch";
|
||||
|
||||
describe("unittests:: tsc-watch:: forceConsistentCasingInFileNames", () => {
|
||||
describe("unittests:: tsc-watch:: forceConsistentCasingInFileNames::", () => {
|
||||
const loggerFile: File = {
|
||||
path: `/user/username/projects/myproject/logger.ts`,
|
||||
content: `export class logger { }`,
|
||||
|
@ -334,7 +335,7 @@ a;b;
|
|||
".": "./dist/index.js",
|
||||
},
|
||||
}),
|
||||
"/Users/name/projects/web/index.ts": Utils.dedent`
|
||||
"/Users/name/projects/web/index.ts": dedent`
|
||||
import * as me from "@this/package";
|
||||
me.thing();
|
||||
export function thing(): void {}
|
||||
|
@ -365,10 +366,10 @@ a;b;
|
|||
type: "module",
|
||||
exports: "./src/index.ts",
|
||||
}),
|
||||
"/Users/name/projects/lib-boilerplate/src/index.ts": Utils.dedent`
|
||||
"/Users/name/projects/lib-boilerplate/src/index.ts": dedent`
|
||||
export function thing(): void {}
|
||||
`,
|
||||
"/Users/name/projects/lib-boilerplate/test/basic.spec.ts": Utils.dedent`
|
||||
"/Users/name/projects/lib-boilerplate/test/basic.spec.ts": dedent`
|
||||
import { thing } from 'lib-boilerplate'
|
||||
`,
|
||||
"/Users/name/projects/lib-boilerplate/tsconfig.json": jsonToReadableText({
|
||||
|
@ -382,4 +383,35 @@ a;b;
|
|||
"/a/lib/lib.es2021.full.d.ts": libFile.content,
|
||||
}, { currentDirectory: "/Users/name/projects/lib-boilerplate" }),
|
||||
});
|
||||
|
||||
verifyTscWatch({
|
||||
scenario: "forceConsistentCasingInFileNames",
|
||||
subScenario: "when file is included from multiple places with different casing",
|
||||
commandLineArgs: ["-w", "--explainFiles"],
|
||||
sys: () =>
|
||||
createWatchedSystem(
|
||||
getFsContentsForMultipleErrorsForceConsistentCasingInFileNames(),
|
||||
{ currentDirectory: "/home/src/projects/project" },
|
||||
),
|
||||
edits: [
|
||||
{
|
||||
caption: "change to reuse imports",
|
||||
edit: sys => sys.appendFile("/home/src/projects/project/src/struct.d.ts", "export const y = 10;"),
|
||||
timeouts: sys => sys.runQueuedTimeoutCallbacks(),
|
||||
},
|
||||
{
|
||||
caption: "change to update imports",
|
||||
edit: sys =>
|
||||
sys.writeFile(
|
||||
"/home/src/projects/project/src/struct.d.ts",
|
||||
dedent`
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
`,
|
||||
),
|
||||
timeouts: sys => sys.runQueuedTimeoutCallbacks(),
|
||||
},
|
||||
],
|
||||
});
|
||||
});
|
||||
|
|
|
@ -1,7 +1,9 @@
|
|||
import { dedent } from "../../_namespaces/Utils";
|
||||
import { jsonToReadableText } from "../helpers";
|
||||
import {
|
||||
getCommandLineArgsForLibResolution,
|
||||
getSysForLibResolution,
|
||||
getSysForLibResolutionUnknown,
|
||||
} from "../helpers/libraryResolution";
|
||||
import {
|
||||
TscWatchCompileChange,
|
||||
|
@ -9,7 +11,7 @@ import {
|
|||
verifyTscWatch,
|
||||
} from "../helpers/tscWatch";
|
||||
|
||||
describe("unittests:: tsc-watch:: libraryResolution", () => {
|
||||
describe("unittests:: tsc-watch:: libraryResolution::", () => {
|
||||
function commandLineArgs(withoutConfig: true | undefined) {
|
||||
return ["-w", ...getCommandLineArgsForLibResolution(withoutConfig), "--extendedDiagnostics"];
|
||||
}
|
||||
|
@ -147,4 +149,47 @@ describe("unittests:: tsc-watch:: libraryResolution", () => {
|
|||
}
|
||||
verify();
|
||||
verify(/*withoutConfig*/ true);
|
||||
|
||||
verifyTscWatch({
|
||||
scenario: "libraryResolution",
|
||||
subScenario: "unknwon lib",
|
||||
sys: () => getSysForLibResolutionUnknown(),
|
||||
commandLineArgs: commandLineArgs(/*withoutConfig*/ undefined),
|
||||
edits: [
|
||||
{
|
||||
caption: "edit index",
|
||||
edit: sys => sys.appendFile("/home/src/projects/project1/index.ts", "export const xyz = 10;"),
|
||||
timeouts: sys => sys.runQueuedTimeoutCallbacks(),
|
||||
},
|
||||
{
|
||||
caption: "delete core",
|
||||
edit: sys => sys.deleteFile("/home/src/projects/project1/core.d.ts"),
|
||||
timeouts: sys => sys.runQueuedTimeoutCallbacks(),
|
||||
},
|
||||
{
|
||||
caption: "remove unknown lib",
|
||||
edit: sys =>
|
||||
sys.writeFile(
|
||||
"/home/src/projects/project1/file2.ts",
|
||||
dedent`
|
||||
/// <reference lib="webworker2"/>
|
||||
/// <reference lib="scripthost"/>
|
||||
`,
|
||||
),
|
||||
timeouts: sys => sys.runQueuedTimeoutCallbacks(),
|
||||
},
|
||||
{
|
||||
caption: "correct webworker lib",
|
||||
edit: sys =>
|
||||
sys.writeFile(
|
||||
"/home/src/projects/project1/file2.ts",
|
||||
dedent`
|
||||
/// <reference lib="webworker"/>
|
||||
/// <reference lib="scripthost"/>
|
||||
`,
|
||||
),
|
||||
timeouts: sys => sys.runQueuedTimeoutCallbacks(),
|
||||
},
|
||||
],
|
||||
});
|
||||
});
|
||||
|
|
|
@ -1,10 +1,12 @@
|
|||
import * as ts from "../../_namespaces/ts";
|
||||
import { dedent } from "../../_namespaces/Utils";
|
||||
import { jsonToReadableText } from "../helpers";
|
||||
import { getFsContentsForMultipleErrorsForceConsistentCasingInFileNames } from "../helpers/forceConsistentCasingInFileNames";
|
||||
import {
|
||||
baselineTsserverLogs,
|
||||
closeFilesForSession,
|
||||
openFilesForSession,
|
||||
protocolFileLocationFromSubstring,
|
||||
protocolTextSpanFromSubstring,
|
||||
TestSession,
|
||||
verifyGetErrRequest,
|
||||
|
@ -16,7 +18,7 @@ import {
|
|||
SymLink,
|
||||
} from "../helpers/virtualFileSystemWithWatch";
|
||||
|
||||
describe("unittests:: tsserver:: forceConsistentCasingInFileNames", () => {
|
||||
describe("unittests:: tsserver:: forceConsistentCasingInFileNames::", () => {
|
||||
it("works when extends is specified with a case insensitive file system", () => {
|
||||
const rootPath = "/Users/username/dev/project";
|
||||
const file1: File = {
|
||||
|
@ -328,4 +330,63 @@ describe("unittests:: tsserver:: forceConsistentCasingInFileNames", () => {
|
|||
verifyDirSymlink("when import and directory symlink target agree but do not match disk", `/user/username/projects/myproject/XY`, `/user/username/projects/myproject/Xy`, `./Xy`);
|
||||
verifyDirSymlink("when import, directory symlink target, and disk are all different", `/user/username/projects/myproject/XY`, `/user/username/projects/myproject/Xy`, `./xY`);
|
||||
});
|
||||
|
||||
it("when file is included from multiple places with different casing", () => {
|
||||
const host = createServerHost(getFsContentsForMultipleErrorsForceConsistentCasingInFileNames());
|
||||
const session = new TestSession(host);
|
||||
const file = "/home/src/projects/project/src/struct.d.ts";
|
||||
let fileText = host.readFile(file)!;
|
||||
openFilesForSession([{ file, projectRootPath: "/home/src/projects/project" }], session);
|
||||
verifyGetErrRequest({ session, files: [file] });
|
||||
|
||||
// Update file without import but dont get errors:
|
||||
updateFile(fileText + "\nexport const y = 10;");
|
||||
goToDef();
|
||||
|
||||
// Update file without import and get errors:
|
||||
updateFile(fileText + "\nexport const yy = 10;");
|
||||
verifyGetErrRequest({ session, files: [file] });
|
||||
|
||||
// Remove one import, dont get errors
|
||||
updateFile(dedent`
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
`);
|
||||
goToDef();
|
||||
|
||||
// Remove import, get errors
|
||||
updateFile(dedent`
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs3 from "./struct";
|
||||
`);
|
||||
verifyGetErrRequest({ session, files: [file] });
|
||||
baselineTsserverLogs("forceConsistentCasingInFileNames", "when file is included from multiple places with different casing", session);
|
||||
|
||||
function updateFile(newText: string) {
|
||||
session.executeCommandSeq<ts.server.protocol.UpdateOpenRequest>({
|
||||
command: ts.server.protocol.CommandTypes.UpdateOpen,
|
||||
arguments: {
|
||||
changedFiles: [{
|
||||
fileName: file,
|
||||
textChanges: [{
|
||||
newText,
|
||||
...protocolTextSpanFromSubstring(
|
||||
fileText,
|
||||
fileText,
|
||||
),
|
||||
}],
|
||||
}],
|
||||
},
|
||||
});
|
||||
fileText = newText;
|
||||
}
|
||||
|
||||
function goToDef() {
|
||||
session.executeCommandSeq<ts.server.protocol.DefinitionRequest>({
|
||||
command: ts.server.protocol.CommandTypes.Definition,
|
||||
arguments: protocolFileLocationFromSubstring({ path: file, content: fileText }, `"fp-ts/lib/Struct"`),
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: /a/b/app.ts
|
||||
|
||||
import * as fs from 'fs'
|
||||
|
@ -81,7 +81,7 @@ MissingPaths:: [
|
|||
|
||||
|
||||
|
||||
Program Reused:: Completely
|
||||
Program 2 Reused:: Completely
|
||||
File: /a/b/app.ts
|
||||
|
||||
import * as fs from 'fs'
|
||||
|
@ -136,7 +136,7 @@ MissingPaths:: [
|
|||
|
||||
|
||||
|
||||
Program Reused:: Completely
|
||||
Program 3 Reused:: Completely
|
||||
File: /a/b/app.ts
|
||||
|
||||
import * as fs from 'fs'
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: a1.ts
|
||||
|
||||
|
||||
|
@ -138,7 +138,7 @@ node_modules/@types/typerefs2/index.d.ts(3,13): error TS2451: Cannot redeclare b
|
|||
|
||||
|
||||
|
||||
Program Reused:: SafeModules
|
||||
Program 2 Reused:: SafeModules
|
||||
File: a1.ts
|
||||
|
||||
|
||||
|
@ -284,7 +284,7 @@ node_modules/@types/typerefs2/index.d.ts(3,13): error TS2451: Cannot redeclare b
|
|||
|
||||
|
||||
|
||||
Program Reused:: SafeModules
|
||||
Program 3 Reused:: SafeModules
|
||||
File: a1.ts
|
||||
|
||||
|
||||
|
@ -413,7 +413,7 @@ node_modules/@types/typerefs2/index.d.ts(3,13): error TS2451: Cannot redeclare b
|
|||
|
||||
|
||||
|
||||
Program Reused:: SafeModules
|
||||
Program 4 Reused:: SafeModules
|
||||
File: a1.ts
|
||||
|
||||
|
||||
|
@ -542,7 +542,7 @@ node_modules/@types/typerefs2/index.d.ts(3,13): error TS2451: Cannot redeclare b
|
|||
|
||||
|
||||
|
||||
Program Reused:: Completely
|
||||
Program 5 Reused:: Completely
|
||||
File: a1.ts
|
||||
|
||||
|
||||
|
@ -653,7 +653,7 @@ node_modules/@types/typerefs2/index.d.ts(3,13): error TS2451: Cannot redeclare b
|
|||
|
||||
|
||||
|
||||
Program Reused:: SafeModules
|
||||
Program 6 Reused:: SafeModules
|
||||
File: a1.ts
|
||||
|
||||
|
||||
|
@ -782,7 +782,7 @@ node_modules/@types/typerefs2/index.d.ts(3,13): error TS2451: Cannot redeclare b
|
|||
|
||||
|
||||
|
||||
Program Reused:: SafeModules
|
||||
Program 7 Reused:: SafeModules
|
||||
File: a1.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: /node_modules/b/internal.d.ts
|
||||
|
||||
|
||||
|
@ -67,7 +67,7 @@ MissingPaths:: [
|
|||
|
||||
|
||||
|
||||
Program Reused:: Completely
|
||||
Program 2 Reused:: Completely
|
||||
File: /node_modules/b/internal.d.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: c.ts
|
||||
|
||||
|
||||
|
@ -42,7 +42,7 @@ a.ts(4,23): error TS2688: Cannot find type definition file for 'typerefs'.
|
|||
|
||||
|
||||
|
||||
Program Reused:: SafeModules
|
||||
Program 2 Reused:: SafeModules
|
||||
File: c.ts
|
||||
|
||||
import x from 'b'
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: c.ts
|
||||
|
||||
|
||||
|
@ -42,7 +42,7 @@ a.ts(4,23): error TS2688: Cannot find type definition file for 'typerefs'.
|
|||
|
||||
|
||||
|
||||
Program Reused:: SafeModules
|
||||
Program 2 Reused:: SafeModules
|
||||
File: c.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: c.ts
|
||||
|
||||
|
||||
|
@ -42,7 +42,7 @@ a.ts(4,23): error TS2688: Cannot find type definition file for 'typerefs'.
|
|||
|
||||
|
||||
|
||||
Program Reused:: SafeModules
|
||||
Program 2 Reused:: SafeModules
|
||||
File: c.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: c.ts
|
||||
|
||||
|
||||
|
@ -55,7 +55,7 @@ a.ts(4,23): error TS2688: Cannot find type definition file for 'typerefs'.
|
|||
|
||||
|
||||
|
||||
Program Reused:: SafeModules
|
||||
Program 2 Reused:: SafeModules
|
||||
File: c.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: c.ts
|
||||
|
||||
|
||||
|
@ -42,7 +42,7 @@ a.ts(4,23): error TS2688: Cannot find type definition file for 'typerefs'.
|
|||
|
||||
|
||||
|
||||
Program Reused:: Completely
|
||||
Program 2 Reused:: Completely
|
||||
File: c.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: c.ts
|
||||
|
||||
|
||||
|
@ -55,7 +55,7 @@ a.ts(4,23): error TS2688: Cannot find type definition file for 'typerefs'.
|
|||
|
||||
|
||||
|
||||
Program Reused:: Completely
|
||||
Program 2 Reused:: Completely
|
||||
File: c.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: c.ts
|
||||
|
||||
|
||||
|
@ -46,7 +46,7 @@ a.ts(4,23): error TS2688: Cannot find type definition file for 'typerefs'.
|
|||
|
||||
|
||||
|
||||
Program Reused:: Not
|
||||
Program 2 Reused:: Not
|
||||
File: c.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: file1.ts
|
||||
|
||||
import * as a from "a";
|
||||
|
@ -63,7 +63,7 @@ file1.ts(2,20): error TS2307: Cannot find module 'a' or its corresponding type d
|
|||
|
||||
|
||||
|
||||
Program Reused:: SafeModules
|
||||
Program 2 Reused:: SafeModules
|
||||
File: node_modules/a/index.d.ts
|
||||
|
||||
export declare let x: number;
|
||||
|
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -0,0 +1,990 @@
|
|||
Program 1 Reused:: Not
|
||||
File: /src/project/node_modules/fp-ts/lib/Struct.d.ts
|
||||
|
||||
|
||||
export function foo(): void
|
||||
|
||||
File: /src/project/src/struct.d.ts
|
||||
|
||||
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
|
||||
resolvedModules:
|
||||
fp-ts/lib/Struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/node_modules/fp-ts/lib/Struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": true,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.d.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct/index.d.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/node_modules/fp-ts/package.json",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct.tsx"
|
||||
]
|
||||
}
|
||||
fp-ts/lib/struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/node_modules/fp-ts/lib/struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": true,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.d.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct/index.d.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/struct/package.json",
|
||||
"/src/project/node_modules/fp-ts/package.json",
|
||||
"/src/project/node_modules/fp-ts/lib/struct.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/struct.tsx"
|
||||
]
|
||||
}
|
||||
./Struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/src/Struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": false,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/Struct.ts",
|
||||
"/src/project/src/Struct.tsx"
|
||||
]
|
||||
}
|
||||
./struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/src/struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": false,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/struct.ts",
|
||||
"/src/project/src/struct.tsx"
|
||||
]
|
||||
}
|
||||
|
||||
File: /src/project/src/anotherFile.ts
|
||||
|
||||
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
|
||||
resolvedModules:
|
||||
fp-ts/lib/Struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/node_modules/fp-ts/lib/Struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": true,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.d.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct/index.d.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/node_modules/fp-ts/package.json",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct.tsx"
|
||||
]
|
||||
}
|
||||
fp-ts/lib/struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/node_modules/fp-ts/lib/struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": true,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.d.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct/index.d.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/struct/package.json",
|
||||
"/src/project/node_modules/fp-ts/package.json",
|
||||
"/src/project/node_modules/fp-ts/lib/struct.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/struct.tsx"
|
||||
]
|
||||
}
|
||||
./Struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/src/Struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": false,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/Struct.ts",
|
||||
"/src/project/src/Struct.tsx"
|
||||
]
|
||||
}
|
||||
./struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/src/struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": false,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/struct.ts",
|
||||
"/src/project/src/struct.tsx"
|
||||
]
|
||||
}
|
||||
|
||||
File: /src/project/src/oneMore.ts
|
||||
|
||||
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
|
||||
resolvedModules:
|
||||
fp-ts/lib/Struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/node_modules/fp-ts/lib/Struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": true,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.d.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct/index.d.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/node_modules/fp-ts/package.json",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct.tsx"
|
||||
]
|
||||
}
|
||||
fp-ts/lib/struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/node_modules/fp-ts/lib/struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": true,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.d.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct/index.d.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/struct/package.json",
|
||||
"/src/project/node_modules/fp-ts/package.json",
|
||||
"/src/project/node_modules/fp-ts/lib/struct.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/struct.tsx"
|
||||
]
|
||||
}
|
||||
./Struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/src/Struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": false,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/Struct.ts",
|
||||
"/src/project/src/Struct.tsx"
|
||||
]
|
||||
}
|
||||
./struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/src/struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": false,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/struct.ts",
|
||||
"/src/project/src/struct.tsx"
|
||||
]
|
||||
}
|
||||
|
||||
|
||||
MissingPaths:: [
|
||||
"lib.d.ts"
|
||||
]
|
||||
|
||||
/src/project/src/anotherFile.ts(4,22): error TS1149: File name '/src/project/node_modules/fp-ts/lib/struct.d.ts' differs from already included file name '/src/project/node_modules/fp-ts/lib/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/oneMore.ts'
|
||||
Root file specified for compilation
|
||||
/src/project/src/anotherFile.ts(5,22): error TS1149: File name '/src/project/src/Struct.d.ts' differs from already included file name '/src/project/src/struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Root file specified for compilation
|
||||
Imported via "./Struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "./struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "./Struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "./struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/src/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/src/project/src/oneMore.ts'
|
||||
/src/project/src/oneMore.ts(4,22): error TS1149: File name '/src/project/node_modules/fp-ts/lib/struct.d.ts' differs from already included file name '/src/project/node_modules/fp-ts/lib/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/oneMore.ts'
|
||||
Root file specified for compilation
|
||||
/src/project/src/oneMore.ts(5,22): error TS1149: File name '/src/project/src/Struct.d.ts' differs from already included file name '/src/project/src/struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Root file specified for compilation
|
||||
Imported via "./Struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "./struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "./Struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "./struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/src/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/src/project/src/oneMore.ts'
|
||||
/src/project/src/struct.d.ts(3,22): error TS1261: Already included file name '/src/project/node_modules/fp-ts/lib/Struct.d.ts' differs from file name '/src/project/node_modules/fp-ts/lib/struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/oneMore.ts'
|
||||
Root file specified for compilation
|
||||
/src/project/src/struct.d.ts(4,22): error TS1149: File name '/src/project/node_modules/fp-ts/lib/struct.d.ts' differs from already included file name '/src/project/node_modules/fp-ts/lib/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/oneMore.ts'
|
||||
Root file specified for compilation
|
||||
/src/project/src/struct.d.ts(5,22): error TS1149: File name '/src/project/src/Struct.d.ts' differs from already included file name '/src/project/src/struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Root file specified for compilation
|
||||
Imported via "./Struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "./struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "./Struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "./struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/src/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/src/project/src/oneMore.ts'
|
||||
|
||||
|
||||
|
||||
Program 2 Reused:: Completely
|
||||
File: /src/project/node_modules/fp-ts/lib/Struct.d.ts
|
||||
|
||||
|
||||
export function foo(): void
|
||||
|
||||
File: /src/project/src/struct.d.ts
|
||||
|
||||
|
||||
|
||||
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
export const y = 10;
|
||||
resolvedModules:
|
||||
fp-ts/lib/Struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/node_modules/fp-ts/lib/Struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": true,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.d.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct/index.d.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/node_modules/fp-ts/package.json",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct.tsx"
|
||||
]
|
||||
}
|
||||
fp-ts/lib/struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/node_modules/fp-ts/lib/struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": true,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.d.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct/index.d.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/struct/package.json",
|
||||
"/src/project/node_modules/fp-ts/package.json",
|
||||
"/src/project/node_modules/fp-ts/lib/struct.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/struct.tsx"
|
||||
]
|
||||
}
|
||||
./Struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/src/Struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": false,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/Struct.ts",
|
||||
"/src/project/src/Struct.tsx"
|
||||
]
|
||||
}
|
||||
./struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/src/struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": false,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/struct.ts",
|
||||
"/src/project/src/struct.tsx"
|
||||
]
|
||||
}
|
||||
|
||||
File: /src/project/src/anotherFile.ts
|
||||
|
||||
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
|
||||
resolvedModules:
|
||||
fp-ts/lib/Struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/node_modules/fp-ts/lib/Struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": true,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.d.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct/index.d.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/node_modules/fp-ts/package.json",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct.tsx"
|
||||
]
|
||||
}
|
||||
fp-ts/lib/struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/node_modules/fp-ts/lib/struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": true,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.d.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct/index.d.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/struct/package.json",
|
||||
"/src/project/node_modules/fp-ts/package.json",
|
||||
"/src/project/node_modules/fp-ts/lib/struct.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/struct.tsx"
|
||||
]
|
||||
}
|
||||
./Struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/src/Struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": false,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/Struct.ts",
|
||||
"/src/project/src/Struct.tsx"
|
||||
]
|
||||
}
|
||||
./struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/src/struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": false,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/struct.ts",
|
||||
"/src/project/src/struct.tsx"
|
||||
]
|
||||
}
|
||||
|
||||
File: /src/project/src/oneMore.ts
|
||||
|
||||
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
|
||||
resolvedModules:
|
||||
fp-ts/lib/Struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/node_modules/fp-ts/lib/Struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": true,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.d.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct/index.d.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/node_modules/fp-ts/package.json",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct.tsx"
|
||||
]
|
||||
}
|
||||
fp-ts/lib/struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/node_modules/fp-ts/lib/struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": true,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.d.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct/index.d.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/struct/package.json",
|
||||
"/src/project/node_modules/fp-ts/package.json",
|
||||
"/src/project/node_modules/fp-ts/lib/struct.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/struct.tsx"
|
||||
]
|
||||
}
|
||||
./Struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/src/Struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": false,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/Struct.ts",
|
||||
"/src/project/src/Struct.tsx"
|
||||
]
|
||||
}
|
||||
./struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/src/struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": false,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/struct.ts",
|
||||
"/src/project/src/struct.tsx"
|
||||
]
|
||||
}
|
||||
|
||||
|
||||
MissingPaths:: [
|
||||
"lib.d.ts"
|
||||
]
|
||||
|
||||
/src/project/src/anotherFile.ts(4,22): error TS1149: File name '/src/project/node_modules/fp-ts/lib/struct.d.ts' differs from already included file name '/src/project/node_modules/fp-ts/lib/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/oneMore.ts'
|
||||
Root file specified for compilation
|
||||
/src/project/src/anotherFile.ts(5,22): error TS1149: File name '/src/project/src/Struct.d.ts' differs from already included file name '/src/project/src/struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Root file specified for compilation
|
||||
Imported via "./Struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "./struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "./Struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "./struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/src/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/src/project/src/oneMore.ts'
|
||||
/src/project/src/oneMore.ts(4,22): error TS1149: File name '/src/project/node_modules/fp-ts/lib/struct.d.ts' differs from already included file name '/src/project/node_modules/fp-ts/lib/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/oneMore.ts'
|
||||
Root file specified for compilation
|
||||
/src/project/src/oneMore.ts(5,22): error TS1149: File name '/src/project/src/Struct.d.ts' differs from already included file name '/src/project/src/struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Root file specified for compilation
|
||||
Imported via "./Struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "./struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "./Struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "./struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/src/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/src/project/src/oneMore.ts'
|
||||
/src/project/src/struct.d.ts(5,22): error TS1261: Already included file name '/src/project/node_modules/fp-ts/lib/Struct.d.ts' differs from file name '/src/project/node_modules/fp-ts/lib/struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/oneMore.ts'
|
||||
Root file specified for compilation
|
||||
/src/project/src/struct.d.ts(6,22): error TS1149: File name '/src/project/node_modules/fp-ts/lib/struct.d.ts' differs from already included file name '/src/project/node_modules/fp-ts/lib/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/oneMore.ts'
|
||||
Root file specified for compilation
|
||||
/src/project/src/struct.d.ts(7,22): error TS1149: File name '/src/project/src/Struct.d.ts' differs from already included file name '/src/project/src/struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Root file specified for compilation
|
||||
Imported via "./Struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "./struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "./Struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "./struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/src/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/src/project/src/oneMore.ts'
|
||||
|
||||
|
||||
|
||||
Program 3 Reused:: SafeModules
|
||||
File: /src/project/node_modules/fp-ts/lib/Struct.d.ts
|
||||
|
||||
|
||||
export function foo(): void
|
||||
|
||||
File: /src/project/src/struct.d.ts
|
||||
|
||||
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
|
||||
resolvedModules:
|
||||
fp-ts/lib/Struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/node_modules/fp-ts/lib/Struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": true,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.d.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct/index.d.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/node_modules/fp-ts/package.json",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct.tsx"
|
||||
]
|
||||
}
|
||||
fp-ts/lib/struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/node_modules/fp-ts/lib/struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": true,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.d.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct/index.d.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/struct/package.json",
|
||||
"/src/project/node_modules/fp-ts/package.json",
|
||||
"/src/project/node_modules/fp-ts/lib/struct.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/struct.tsx"
|
||||
]
|
||||
}
|
||||
./Struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/src/Struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": false,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/Struct.ts",
|
||||
"/src/project/src/Struct.tsx"
|
||||
]
|
||||
}
|
||||
|
||||
File: /src/project/src/anotherFile.ts
|
||||
|
||||
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
|
||||
resolvedModules:
|
||||
fp-ts/lib/Struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/node_modules/fp-ts/lib/Struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": true,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.d.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct/index.d.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/node_modules/fp-ts/package.json",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct.tsx"
|
||||
]
|
||||
}
|
||||
fp-ts/lib/struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/node_modules/fp-ts/lib/struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": true,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.d.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct/index.d.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/struct/package.json",
|
||||
"/src/project/node_modules/fp-ts/package.json",
|
||||
"/src/project/node_modules/fp-ts/lib/struct.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/struct.tsx"
|
||||
]
|
||||
}
|
||||
./Struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/src/Struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": false,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/Struct.ts",
|
||||
"/src/project/src/Struct.tsx"
|
||||
]
|
||||
}
|
||||
./struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/src/struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": false,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/struct.ts",
|
||||
"/src/project/src/struct.tsx"
|
||||
]
|
||||
}
|
||||
|
||||
File: /src/project/src/oneMore.ts
|
||||
|
||||
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
|
||||
resolvedModules:
|
||||
fp-ts/lib/Struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/node_modules/fp-ts/lib/Struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": true,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct.d.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/Struct/index.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/Struct/index.d.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct/package.json",
|
||||
"/src/project/node_modules/fp-ts/package.json",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/Struct.tsx"
|
||||
]
|
||||
}
|
||||
fp-ts/lib/struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/node_modules/fp-ts/lib/struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": true,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct.d.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.ts",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.tsx",
|
||||
"/src/project/src/node_modules/fp-ts/lib/struct/index.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/package.json",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct.d.ts",
|
||||
"/src/project/src/node_modules/@types/fp-ts/lib/struct/index.d.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/struct/package.json",
|
||||
"/src/project/node_modules/fp-ts/package.json",
|
||||
"/src/project/node_modules/fp-ts/lib/struct.ts",
|
||||
"/src/project/node_modules/fp-ts/lib/struct.tsx"
|
||||
]
|
||||
}
|
||||
./Struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/src/Struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": false,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/Struct.ts",
|
||||
"/src/project/src/Struct.tsx"
|
||||
]
|
||||
}
|
||||
./struct: {
|
||||
"resolvedModule": {
|
||||
"resolvedFileName": "/src/project/src/struct.d.ts",
|
||||
"extension": ".d.ts",
|
||||
"isExternalLibraryImport": false,
|
||||
"resolvedUsingTsExtension": false
|
||||
},
|
||||
"failedLookupLocations": [
|
||||
"/src/project/src/struct.ts",
|
||||
"/src/project/src/struct.tsx"
|
||||
]
|
||||
}
|
||||
|
||||
|
||||
MissingPaths:: [
|
||||
"lib.d.ts"
|
||||
]
|
||||
|
||||
/src/project/src/anotherFile.ts(4,22): error TS1149: File name '/src/project/node_modules/fp-ts/lib/struct.d.ts' differs from already included file name '/src/project/node_modules/fp-ts/lib/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/oneMore.ts'
|
||||
Root file specified for compilation
|
||||
/src/project/src/anotherFile.ts(5,22): error TS1149: File name '/src/project/src/Struct.d.ts' differs from already included file name '/src/project/src/struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Root file specified for compilation
|
||||
Imported via "./Struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "./Struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "./struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/src/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/src/project/src/oneMore.ts'
|
||||
/src/project/src/oneMore.ts(4,22): error TS1149: File name '/src/project/node_modules/fp-ts/lib/struct.d.ts' differs from already included file name '/src/project/node_modules/fp-ts/lib/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/oneMore.ts'
|
||||
Root file specified for compilation
|
||||
/src/project/src/oneMore.ts(5,22): error TS1149: File name '/src/project/src/Struct.d.ts' differs from already included file name '/src/project/src/struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Root file specified for compilation
|
||||
Imported via "./Struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "./Struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "./struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/src/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/src/project/src/oneMore.ts'
|
||||
/src/project/src/struct.d.ts(3,22): error TS1261: Already included file name '/src/project/node_modules/fp-ts/lib/Struct.d.ts' differs from file name '/src/project/node_modules/fp-ts/lib/struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/oneMore.ts'
|
||||
Root file specified for compilation
|
||||
/src/project/src/struct.d.ts(4,22): error TS1149: File name '/src/project/node_modules/fp-ts/lib/struct.d.ts' differs from already included file name '/src/project/node_modules/fp-ts/lib/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/src/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/src/project/src/oneMore.ts'
|
||||
Root file specified for compilation
|
||||
/src/project/src/struct.d.ts(5,22): error TS1149: File name '/src/project/src/Struct.d.ts' differs from already included file name '/src/project/src/struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Root file specified for compilation
|
||||
Imported via "./Struct" from file '/src/project/src/struct.d.ts'
|
||||
Imported via "./Struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "./struct" from file '/src/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/src/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/src/project/src/oneMore.ts'
|
||||
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: c.ts
|
||||
|
||||
|
||||
|
@ -41,7 +41,7 @@ a.ts(4,23): error TS2688: Cannot find type definition file for 'typerefs'.
|
|||
|
||||
|
||||
|
||||
Program Reused:: Not
|
||||
Program 2 Reused:: Not
|
||||
File: c.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: c.ts
|
||||
|
||||
|
||||
|
@ -41,7 +41,7 @@ a.ts(4,23): error TS2688: Cannot find type definition file for 'typerefs'.
|
|||
|
||||
|
||||
|
||||
Program Reused:: Completely
|
||||
Program 2 Reused:: Completely
|
||||
File: c.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: c.ts
|
||||
|
||||
|
||||
|
@ -42,7 +42,7 @@ a.ts(4,23): error TS2688: Cannot find type definition file for 'typerefs'.
|
|||
|
||||
|
||||
|
||||
Program Reused:: Not
|
||||
Program 2 Reused:: Not
|
||||
File: c.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: /node_modules/a/node_modules/x/index.d.ts
|
||||
|
||||
|
||||
|
@ -113,7 +113,7 @@ MissingPaths:: [
|
|||
|
||||
|
||||
|
||||
Program Reused:: Completely
|
||||
Program 2 Reused:: Completely
|
||||
File: /node_modules/a/node_modules/x/index.d.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: /node_modules/a/node_modules/x/index.d.ts
|
||||
|
||||
|
||||
|
@ -115,7 +115,7 @@ MissingPaths:: [
|
|||
|
||||
|
||||
|
||||
Program Reused:: Not
|
||||
Program 2 Reused:: Not
|
||||
File: /node_modules/a/node_modules/x/index.d.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: /node_modules/a/node_modules/x/index.d.ts
|
||||
|
||||
|
||||
|
@ -113,7 +113,7 @@ MissingPaths:: [
|
|||
|
||||
|
||||
|
||||
Program Reused:: Not
|
||||
Program 2 Reused:: Not
|
||||
File: /node_modules/a/node_modules/x/index.d.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: /node_modules/a/node_modules/x/index.d.ts
|
||||
|
||||
|
||||
|
@ -113,7 +113,7 @@ MissingPaths:: [
|
|||
|
||||
|
||||
|
||||
Program Reused:: Not
|
||||
Program 2 Reused:: Not
|
||||
File: /node_modules/a/node_modules/x/index.d.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: /node_modules/a/node_modules/x/index.d.ts
|
||||
|
||||
|
||||
|
@ -113,7 +113,7 @@ MissingPaths:: [
|
|||
|
||||
|
||||
|
||||
Program Reused:: Completely
|
||||
Program 2 Reused:: Completely
|
||||
File: /node_modules/a/node_modules/x/index.d.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: /node_modules/a/node_modules/x/index.d.ts
|
||||
|
||||
|
||||
|
@ -115,7 +115,7 @@ MissingPaths:: [
|
|||
|
||||
|
||||
|
||||
Program Reused:: Not
|
||||
Program 2 Reused:: Not
|
||||
File: /node_modules/a/node_modules/x/index.d.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: /node_modules/a/node_modules/x/index.d.ts
|
||||
|
||||
|
||||
|
@ -113,7 +113,7 @@ MissingPaths:: [
|
|||
|
||||
|
||||
|
||||
Program Reused:: Not
|
||||
Program 2 Reused:: Not
|
||||
File: /node_modules/a/node_modules/x/index.d.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: /node_modules/a/node_modules/x/index.d.ts
|
||||
|
||||
|
||||
|
@ -113,7 +113,7 @@ MissingPaths:: [
|
|||
|
||||
|
||||
|
||||
Program Reused:: Not
|
||||
Program 2 Reused:: Not
|
||||
File: /node_modules/a/node_modules/x/index.d.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: b.ts
|
||||
|
||||
|
||||
|
@ -27,7 +27,7 @@ a.ts(2,17): error TS2306: File 'b.ts' is not a module.
|
|||
|
||||
|
||||
|
||||
Program Reused:: Completely
|
||||
Program 2 Reused:: Completely
|
||||
File: b.ts
|
||||
|
||||
|
||||
|
@ -56,7 +56,7 @@ a.ts(2,17): error TS2306: File 'b.ts' is not a module.
|
|||
|
||||
|
||||
|
||||
Program Reused:: SafeModules
|
||||
Program 3 Reused:: SafeModules
|
||||
File: a.ts
|
||||
|
||||
|
||||
|
@ -70,7 +70,7 @@ MissingPaths:: [
|
|||
|
||||
|
||||
|
||||
Program Reused:: SafeModules
|
||||
Program 4 Reused:: SafeModules
|
||||
File: b.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: /types/typedefs/index.d.ts
|
||||
|
||||
|
||||
|
@ -29,7 +29,7 @@ MissingPaths:: [
|
|||
|
||||
|
||||
|
||||
Program Reused:: Completely
|
||||
Program 2 Reused:: Completely
|
||||
File: /types/typedefs/index.d.ts
|
||||
|
||||
|
||||
|
@ -60,7 +60,7 @@ MissingPaths:: [
|
|||
|
||||
|
||||
|
||||
Program Reused:: SafeModules
|
||||
Program 3 Reused:: SafeModules
|
||||
File: /a.ts
|
||||
|
||||
|
||||
|
@ -74,7 +74,7 @@ MissingPaths:: [
|
|||
|
||||
|
||||
|
||||
Program Reused:: SafeModules
|
||||
Program 4 Reused:: SafeModules
|
||||
File: /types/typedefs/index.d.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: /a.ts
|
||||
|
||||
|
||||
|
@ -21,7 +21,7 @@ MissingPaths:: [
|
|||
|
||||
|
||||
|
||||
Program Reused:: Completely
|
||||
Program 2 Reused:: Completely
|
||||
File: /a.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: c.ts
|
||||
|
||||
|
||||
|
@ -44,7 +44,7 @@ b.ts(1,22): error TS6059: File 'c.ts' is not under 'rootDir' '/a/b'. 'rootDir' i
|
|||
|
||||
|
||||
|
||||
Program Reused:: Completely
|
||||
Program 2 Reused:: Completely
|
||||
File: c.ts
|
||||
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
Program Reused:: Not
|
||||
Program 1 Reused:: Not
|
||||
File: /a.ts
|
||||
|
||||
|
||||
|
@ -22,7 +22,7 @@ MissingPaths:: [
|
|||
|
||||
|
||||
parent pointers are updated: true
|
||||
Program Reused:: Completely
|
||||
Program 2 Reused:: Completely
|
||||
File: /a.ts
|
||||
'use strict';
|
||||
|
||||
|
|
|
@ -0,0 +1,339 @@
|
|||
currentDirectory:: / useCaseSensitiveFileNames: false
|
||||
Input::
|
||||
//// [/a/lib/lib.d.ts]
|
||||
/// <reference no-default-lib="true"/>
|
||||
interface Boolean {}
|
||||
interface Function {}
|
||||
interface CallableFunction {}
|
||||
interface NewableFunction {}
|
||||
interface IArguments {}
|
||||
interface Number { toExponential: any; }
|
||||
interface Object {}
|
||||
interface RegExp {}
|
||||
interface String { charAt: any; }
|
||||
interface Array<T> { length: number; [n: number]: T; }
|
||||
interface ReadonlyArray<T> {}
|
||||
declare const console: { log(msg: any): void; };
|
||||
|
||||
//// [/home/src/projects/project/node_modules/fp-ts/lib/struct.d.ts]
|
||||
export function foo(): void
|
||||
|
||||
//// [/home/src/projects/project/src/anotherFile.ts]
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
|
||||
|
||||
//// [/home/src/projects/project/src/oneMore.ts]
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
|
||||
|
||||
//// [/home/src/projects/project/src/struct.d.ts]
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
|
||||
|
||||
//// [/home/src/projects/project/tsconfig.json]
|
||||
{}
|
||||
|
||||
//// [/lib/lib.d.ts]
|
||||
/// <reference no-default-lib="true"/>
|
||||
interface Boolean {}
|
||||
interface Function {}
|
||||
interface CallableFunction {}
|
||||
interface NewableFunction {}
|
||||
interface IArguments {}
|
||||
interface Number { toExponential: any; }
|
||||
interface Object {}
|
||||
interface RegExp {}
|
||||
interface String { charAt: any; }
|
||||
interface Array<T> { length: number; [n: number]: T; }
|
||||
interface ReadonlyArray<T> {}
|
||||
declare const console: { log(msg: any): void; };
|
||||
|
||||
|
||||
|
||||
Output::
|
||||
/lib/tsc -p /home/src/projects/project/tsconfig.json --explainFiles
|
||||
[96mhome/src/projects/project/src/anotherFile.ts[0m:[93m2[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/node_modules/fp-ts/lib/struct.d.ts' differs from already included file name '/home/src/projects/project/node_modules/fp-ts/lib/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [91m ~~~~~~~~~~~~~~~~~~[0m
|
||||
|
||||
[96mhome/src/projects/project/src/anotherFile.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/Struct.d.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/Struct.d.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/oneMore.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/oneMore.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96mhome/src/projects/project/src/anotherFile.ts[0m:[93m3[0m:[93m22[0m - [91merror[0m[90m TS1261: [0mAlready included file name '/home/src/projects/project/src/Struct.d.ts' differs from file name '/home/src/projects/project/src/struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Matched by default include pattern '**/*'
|
||||
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [91m ~~~~~~~~~~[0m
|
||||
|
||||
[96mhome/src/projects/project/src/Struct.d.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/Struct.d.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/anotherFile.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/oneMore.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/oneMore.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96mhome/src/projects/project/src/anotherFile.ts[0m:[93m4[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/src/struct.d.ts' differs from already included file name '/home/src/projects/project/src/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Matched by default include pattern '**/*'
|
||||
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [91m ~~~~~~~~~~[0m
|
||||
|
||||
[96mhome/src/projects/project/src/anotherFile.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/Struct.d.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/Struct.d.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/oneMore.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/oneMore.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96mhome/src/projects/project/src/oneMore.ts[0m:[93m2[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/node_modules/fp-ts/lib/struct.d.ts' differs from already included file name '/home/src/projects/project/node_modules/fp-ts/lib/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [91m ~~~~~~~~~~~~~~~~~~[0m
|
||||
|
||||
[96mhome/src/projects/project/src/anotherFile.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/anotherFile.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/Struct.d.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/Struct.d.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/oneMore.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96mhome/src/projects/project/src/oneMore.ts[0m:[93m4[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/src/struct.d.ts' differs from already included file name '/home/src/projects/project/src/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Matched by default include pattern '**/*'
|
||||
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [91m ~~~~~~~~~~[0m
|
||||
|
||||
[96mhome/src/projects/project/src/anotherFile.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/Struct.d.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/Struct.d.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/anotherFile.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/oneMore.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96mhome/src/projects/project/src/Struct.d.ts[0m:[93m2[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/node_modules/fp-ts/lib/struct.d.ts' differs from already included file name '/home/src/projects/project/node_modules/fp-ts/lib/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [91m ~~~~~~~~~~~~~~~~~~[0m
|
||||
|
||||
[96mhome/src/projects/project/src/anotherFile.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/anotherFile.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/Struct.d.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/oneMore.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/oneMore.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96mhome/src/projects/project/src/Struct.d.ts[0m:[93m4[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/src/struct.d.ts' differs from already included file name '/home/src/projects/project/src/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Matched by default include pattern '**/*'
|
||||
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [91m ~~~~~~~~~~[0m
|
||||
|
||||
[96mhome/src/projects/project/src/anotherFile.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/Struct.d.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/anotherFile.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/oneMore.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96mhome/src/projects/project/src/oneMore.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
lib/lib.d.ts
|
||||
Default library for target 'es5'
|
||||
home/src/projects/project/node_modules/fp-ts/lib/Struct.d.ts
|
||||
Imported via "fp-ts/lib/Struct" from file 'home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file 'home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file 'home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file 'home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file 'home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file 'home/src/projects/project/src/oneMore.ts'
|
||||
home/src/projects/project/src/Struct.d.ts
|
||||
Imported via "./Struct" from file 'home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file 'home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file 'home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file 'home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file 'home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file 'home/src/projects/project/src/oneMore.ts'
|
||||
Matched by default include pattern '**/*'
|
||||
home/src/projects/project/src/anotherFile.ts
|
||||
Matched by default include pattern '**/*'
|
||||
home/src/projects/project/src/oneMore.ts
|
||||
Matched by default include pattern '**/*'
|
||||
|
||||
Found 7 errors in 3 files.
|
||||
|
||||
Errors Files
|
||||
3 home/src/projects/project/src/anotherFile.ts[90m:2[0m
|
||||
2 home/src/projects/project/src/oneMore.ts[90m:2[0m
|
||||
2 home/src/projects/project/src/Struct.d.ts[90m:2[0m
|
||||
exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated
|
||||
|
||||
|
||||
//// [/home/src/projects/project/src/anotherFile.js]
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
|
||||
|
||||
//// [/home/src/projects/project/src/oneMore.js]
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
|
||||
|
|
@ -0,0 +1,331 @@
|
|||
currentDirectory:: /home/src/projects useCaseSensitiveFileNames: false
|
||||
Input::
|
||||
//// [/home/src/lib/lib.d.ts]
|
||||
/// <reference no-default-lib="true"/>
|
||||
interface Boolean {}
|
||||
interface Function {}
|
||||
interface CallableFunction {}
|
||||
interface NewableFunction {}
|
||||
interface IArguments {}
|
||||
interface Number { toExponential: any; }
|
||||
interface Object {}
|
||||
interface RegExp {}
|
||||
interface String { charAt: any; }
|
||||
interface Array<T> { length: number; [n: number]: T; }
|
||||
interface ReadonlyArray<T> {}
|
||||
declare const console: { log(msg: any): void; };
|
||||
|
||||
//// [/home/src/lib/lib.scripthost.d.ts]
|
||||
interface ScriptHostInterface { }
|
||||
|
||||
//// [/home/src/lib/lib.webworker.d.ts]
|
||||
interface WebWorkerInterface { }
|
||||
|
||||
//// [/home/src/projects/project1/core.d.ts]
|
||||
export const core = 10;
|
||||
|
||||
//// [/home/src/projects/project1/file.ts]
|
||||
export const file = 10;
|
||||
|
||||
//// [/home/src/projects/project1/file2.ts]
|
||||
/// <reference lib="webworker2"/>
|
||||
/// <reference lib="unknownlib"/>
|
||||
/// <reference lib="scripthost"/>
|
||||
|
||||
|
||||
//// [/home/src/projects/project1/index.ts]
|
||||
export const x = "type1";
|
||||
|
||||
//// [/home/src/projects/project1/tsconfig.json]
|
||||
{
|
||||
"compilerOptions": {
|
||||
"composite": true,
|
||||
"traceResolution": true
|
||||
}
|
||||
}
|
||||
|
||||
//// [/home/src/projects/project1/utils.d.ts]
|
||||
export const y = 10;
|
||||
|
||||
|
||||
|
||||
Output::
|
||||
/home/src/lib/tsc -p project1 --explainFiles
|
||||
File '/home/src/projects/project1/package.json' does not exist.
|
||||
File '/home/src/projects/package.json' does not exist.
|
||||
File '/home/src/package.json' does not exist.
|
||||
File '/home/package.json' does not exist.
|
||||
File '/package.json' does not exist.
|
||||
File '/home/src/projects/project1/package.json' does not exist according to earlier cached lookups.
|
||||
File '/home/src/projects/package.json' does not exist according to earlier cached lookups.
|
||||
File '/home/src/package.json' does not exist according to earlier cached lookups.
|
||||
File '/home/package.json' does not exist according to earlier cached lookups.
|
||||
File '/package.json' does not exist according to earlier cached lookups.
|
||||
File '/home/src/projects/project1/package.json' does not exist according to earlier cached lookups.
|
||||
File '/home/src/projects/package.json' does not exist according to earlier cached lookups.
|
||||
File '/home/src/package.json' does not exist according to earlier cached lookups.
|
||||
File '/home/package.json' does not exist according to earlier cached lookups.
|
||||
File '/package.json' does not exist according to earlier cached lookups.
|
||||
======== Resolving module '@typescript/lib-scripthost' from '/home/src/projects/project1/__lib_node_modules_lookup_lib.scripthost.d.ts__.ts'. ========
|
||||
Explicitly specified module resolution kind: 'Node10'.
|
||||
Loading module '@typescript/lib-scripthost' from 'node_modules' folder, target file types: TypeScript, Declaration.
|
||||
Searching all ancestor node_modules directories for preferred extensions: TypeScript, Declaration.
|
||||
Directory '/home/src/projects/project1/node_modules' does not exist, skipping all lookups in it.
|
||||
Scoped package detected, looking in 'typescript__lib-scripthost'
|
||||
Directory '/home/src/projects/node_modules' does not exist, skipping all lookups in it.
|
||||
Scoped package detected, looking in 'typescript__lib-scripthost'
|
||||
Directory '/home/src/node_modules' does not exist, skipping all lookups in it.
|
||||
Scoped package detected, looking in 'typescript__lib-scripthost'
|
||||
Directory '/home/node_modules' does not exist, skipping all lookups in it.
|
||||
Scoped package detected, looking in 'typescript__lib-scripthost'
|
||||
Directory '/node_modules' does not exist, skipping all lookups in it.
|
||||
Scoped package detected, looking in 'typescript__lib-scripthost'
|
||||
Loading module '@typescript/lib-scripthost' from 'node_modules' folder, target file types: JavaScript.
|
||||
Searching all ancestor node_modules directories for fallback extensions: JavaScript.
|
||||
Directory '/home/src/projects/project1/node_modules' does not exist, skipping all lookups in it.
|
||||
Directory '/home/src/projects/node_modules' does not exist, skipping all lookups in it.
|
||||
Directory '/home/src/node_modules' does not exist, skipping all lookups in it.
|
||||
Directory '/home/node_modules' does not exist, skipping all lookups in it.
|
||||
Directory '/node_modules' does not exist, skipping all lookups in it.
|
||||
======== Module name '@typescript/lib-scripthost' was not resolved. ========
|
||||
File '/home/src/lib/package.json' does not exist.
|
||||
File '/home/src/package.json' does not exist according to earlier cached lookups.
|
||||
File '/home/package.json' does not exist according to earlier cached lookups.
|
||||
File '/package.json' does not exist according to earlier cached lookups.
|
||||
File '/home/src/projects/project1/package.json' does not exist according to earlier cached lookups.
|
||||
File '/home/src/projects/package.json' does not exist according to earlier cached lookups.
|
||||
File '/home/src/package.json' does not exist according to earlier cached lookups.
|
||||
File '/home/package.json' does not exist according to earlier cached lookups.
|
||||
File '/package.json' does not exist according to earlier cached lookups.
|
||||
File '/home/src/projects/project1/package.json' does not exist according to earlier cached lookups.
|
||||
File '/home/src/projects/package.json' does not exist according to earlier cached lookups.
|
||||
File '/home/src/package.json' does not exist according to earlier cached lookups.
|
||||
File '/home/package.json' does not exist according to earlier cached lookups.
|
||||
File '/package.json' does not exist according to earlier cached lookups.
|
||||
File '/home/src/lib/package.json' does not exist according to earlier cached lookups.
|
||||
File '/home/src/package.json' does not exist according to earlier cached lookups.
|
||||
File '/home/package.json' does not exist according to earlier cached lookups.
|
||||
File '/package.json' does not exist according to earlier cached lookups.
|
||||
[96mproject1/file2.ts[0m:[93m1[0m:[93m21[0m - [91merror[0m[90m TS2727: [0mCannot find lib definition for 'webworker2'. Did you mean 'webworker'?
|
||||
|
||||
[7m1[0m /// <reference lib="webworker2"/>
|
||||
[7m [0m [91m ~~~~~~~~~~[0m
|
||||
|
||||
[96mproject1/file2.ts[0m:[93m2[0m:[93m21[0m - [91merror[0m[90m TS2726: [0mCannot find lib definition for 'unknownlib'.
|
||||
|
||||
[7m2[0m /// <reference lib="unknownlib"/>
|
||||
[7m [0m [91m ~~~~~~~~~~[0m
|
||||
|
||||
../lib/lib.d.ts
|
||||
Default library for target 'es5'
|
||||
../lib/lib.scripthost.d.ts
|
||||
Library referenced via 'scripthost' from file 'project1/file2.ts'
|
||||
project1/core.d.ts
|
||||
Matched by default include pattern '**/*'
|
||||
project1/file.ts
|
||||
Matched by default include pattern '**/*'
|
||||
project1/file2.ts
|
||||
Matched by default include pattern '**/*'
|
||||
project1/index.ts
|
||||
Matched by default include pattern '**/*'
|
||||
project1/utils.d.ts
|
||||
Matched by default include pattern '**/*'
|
||||
|
||||
Found 2 errors in the same file, starting at: project1/file2.ts[90m:1[0m
|
||||
|
||||
exitCode:: ExitStatus.DiagnosticsPresent_OutputsGenerated
|
||||
Program root files: [
|
||||
"/home/src/projects/project1/core.d.ts",
|
||||
"/home/src/projects/project1/file.ts",
|
||||
"/home/src/projects/project1/file2.ts",
|
||||
"/home/src/projects/project1/index.ts",
|
||||
"/home/src/projects/project1/utils.d.ts"
|
||||
]
|
||||
Program options: {
|
||||
"composite": true,
|
||||
"traceResolution": true,
|
||||
"project": "/home/src/projects/project1",
|
||||
"explainFiles": true,
|
||||
"configFilePath": "/home/src/projects/project1/tsconfig.json"
|
||||
}
|
||||
Program structureReused: Not
|
||||
Program files::
|
||||
/home/src/lib/lib.d.ts
|
||||
/home/src/lib/lib.scripthost.d.ts
|
||||
/home/src/projects/project1/core.d.ts
|
||||
/home/src/projects/project1/file.ts
|
||||
/home/src/projects/project1/file2.ts
|
||||
/home/src/projects/project1/index.ts
|
||||
/home/src/projects/project1/utils.d.ts
|
||||
|
||||
Semantic diagnostics in builder refreshed for::
|
||||
/home/src/lib/lib.d.ts
|
||||
/home/src/lib/lib.scripthost.d.ts
|
||||
/home/src/projects/project1/core.d.ts
|
||||
/home/src/projects/project1/file.ts
|
||||
/home/src/projects/project1/file2.ts
|
||||
/home/src/projects/project1/index.ts
|
||||
/home/src/projects/project1/utils.d.ts
|
||||
|
||||
Shape signatures in builder refreshed for::
|
||||
/home/src/lib/lib.d.ts (used version)
|
||||
/home/src/lib/lib.scripthost.d.ts (used version)
|
||||
/home/src/projects/project1/core.d.ts (used version)
|
||||
/home/src/projects/project1/file.ts (computed .d.ts during emit)
|
||||
/home/src/projects/project1/file2.ts (computed .d.ts during emit)
|
||||
/home/src/projects/project1/index.ts (computed .d.ts during emit)
|
||||
/home/src/projects/project1/utils.d.ts (used version)
|
||||
|
||||
|
||||
//// [/home/src/projects/project1/file.d.ts]
|
||||
export declare const file = 10;
|
||||
|
||||
|
||||
//// [/home/src/projects/project1/file.js]
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.file = void 0;
|
||||
exports.file = 10;
|
||||
|
||||
|
||||
//// [/home/src/projects/project1/file2.d.ts]
|
||||
|
||||
|
||||
//// [/home/src/projects/project1/file2.js]
|
||||
/// <reference lib="webworker2"/>
|
||||
/// <reference lib="unknownlib"/>
|
||||
/// <reference lib="scripthost"/>
|
||||
|
||||
|
||||
//// [/home/src/projects/project1/index.d.ts]
|
||||
export declare const x = "type1";
|
||||
|
||||
|
||||
//// [/home/src/projects/project1/index.js]
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.x = void 0;
|
||||
exports.x = "type1";
|
||||
|
||||
|
||||
//// [/home/src/projects/project1/tsconfig.tsbuildinfo]
|
||||
{"program":{"fileNames":["../../lib/lib.d.ts","../../lib/lib.scripthost.d.ts","./core.d.ts","./file.ts","./file2.ts","./index.ts","./utils.d.ts"],"fileInfos":[{"version":"3858781397-/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }\ninterface ReadonlyArray<T> {}\ndeclare const console: { log(msg: any): void; };","affectsGlobalScope":true,"impliedFormat":1},{"version":"-5403980302-interface ScriptHostInterface { }","affectsGlobalScope":true,"impliedFormat":1},{"version":"-15683237936-export const core = 10;","impliedFormat":1},{"version":"-16628394009-export const file = 10;","signature":"-9025507999-export declare const file = 10;\n","impliedFormat":1},{"version":"-15920922626-/// <reference lib=\"webworker2\"/>\n/// <reference lib=\"unknownlib\"/>\n/// <reference lib=\"scripthost\"/>\n","signature":"5381-","impliedFormat":1},{"version":"-11532698187-export const x = \"type1\";","signature":"-5899226897-export declare const x = \"type1\";\n","impliedFormat":1},{"version":"-13729955264-export const y = 10;","impliedFormat":1}],"root":[[3,7]],"options":{"composite":true},"referencedMap":[],"semanticDiagnosticsPerFile":[1,2,3,4,5,6,7],"latestChangedDtsFile":"./index.d.ts"},"version":"FakeTSVersion"}
|
||||
|
||||
//// [/home/src/projects/project1/tsconfig.tsbuildinfo.readable.baseline.txt]
|
||||
{
|
||||
"program": {
|
||||
"fileNames": [
|
||||
"../../lib/lib.d.ts",
|
||||
"../../lib/lib.scripthost.d.ts",
|
||||
"./core.d.ts",
|
||||
"./file.ts",
|
||||
"./file2.ts",
|
||||
"./index.ts",
|
||||
"./utils.d.ts"
|
||||
],
|
||||
"fileInfos": {
|
||||
"../../lib/lib.d.ts": {
|
||||
"original": {
|
||||
"version": "3858781397-/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }\ninterface ReadonlyArray<T> {}\ndeclare const console: { log(msg: any): void; };",
|
||||
"affectsGlobalScope": true,
|
||||
"impliedFormat": 1
|
||||
},
|
||||
"version": "3858781397-/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }\ninterface ReadonlyArray<T> {}\ndeclare const console: { log(msg: any): void; };",
|
||||
"signature": "3858781397-/// <reference no-default-lib=\"true\"/>\ninterface Boolean {}\ninterface Function {}\ninterface CallableFunction {}\ninterface NewableFunction {}\ninterface IArguments {}\ninterface Number { toExponential: any; }\ninterface Object {}\ninterface RegExp {}\ninterface String { charAt: any; }\ninterface Array<T> { length: number; [n: number]: T; }\ninterface ReadonlyArray<T> {}\ndeclare const console: { log(msg: any): void; };",
|
||||
"affectsGlobalScope": true,
|
||||
"impliedFormat": "commonjs"
|
||||
},
|
||||
"../../lib/lib.scripthost.d.ts": {
|
||||
"original": {
|
||||
"version": "-5403980302-interface ScriptHostInterface { }",
|
||||
"affectsGlobalScope": true,
|
||||
"impliedFormat": 1
|
||||
},
|
||||
"version": "-5403980302-interface ScriptHostInterface { }",
|
||||
"signature": "-5403980302-interface ScriptHostInterface { }",
|
||||
"affectsGlobalScope": true,
|
||||
"impliedFormat": "commonjs"
|
||||
},
|
||||
"./core.d.ts": {
|
||||
"original": {
|
||||
"version": "-15683237936-export const core = 10;",
|
||||
"impliedFormat": 1
|
||||
},
|
||||
"version": "-15683237936-export const core = 10;",
|
||||
"signature": "-15683237936-export const core = 10;",
|
||||
"impliedFormat": "commonjs"
|
||||
},
|
||||
"./file.ts": {
|
||||
"original": {
|
||||
"version": "-16628394009-export const file = 10;",
|
||||
"signature": "-9025507999-export declare const file = 10;\n",
|
||||
"impliedFormat": 1
|
||||
},
|
||||
"version": "-16628394009-export const file = 10;",
|
||||
"signature": "-9025507999-export declare const file = 10;\n",
|
||||
"impliedFormat": "commonjs"
|
||||
},
|
||||
"./file2.ts": {
|
||||
"original": {
|
||||
"version": "-15920922626-/// <reference lib=\"webworker2\"/>\n/// <reference lib=\"unknownlib\"/>\n/// <reference lib=\"scripthost\"/>\n",
|
||||
"signature": "5381-",
|
||||
"impliedFormat": 1
|
||||
},
|
||||
"version": "-15920922626-/// <reference lib=\"webworker2\"/>\n/// <reference lib=\"unknownlib\"/>\n/// <reference lib=\"scripthost\"/>\n",
|
||||
"signature": "5381-",
|
||||
"impliedFormat": "commonjs"
|
||||
},
|
||||
"./index.ts": {
|
||||
"original": {
|
||||
"version": "-11532698187-export const x = \"type1\";",
|
||||
"signature": "-5899226897-export declare const x = \"type1\";\n",
|
||||
"impliedFormat": 1
|
||||
},
|
||||
"version": "-11532698187-export const x = \"type1\";",
|
||||
"signature": "-5899226897-export declare const x = \"type1\";\n",
|
||||
"impliedFormat": "commonjs"
|
||||
},
|
||||
"./utils.d.ts": {
|
||||
"original": {
|
||||
"version": "-13729955264-export const y = 10;",
|
||||
"impliedFormat": 1
|
||||
},
|
||||
"version": "-13729955264-export const y = 10;",
|
||||
"signature": "-13729955264-export const y = 10;",
|
||||
"impliedFormat": "commonjs"
|
||||
}
|
||||
},
|
||||
"root": [
|
||||
[
|
||||
[
|
||||
3,
|
||||
7
|
||||
],
|
||||
[
|
||||
"./core.d.ts",
|
||||
"./file.ts",
|
||||
"./file2.ts",
|
||||
"./index.ts",
|
||||
"./utils.d.ts"
|
||||
]
|
||||
]
|
||||
],
|
||||
"options": {
|
||||
"composite": true
|
||||
},
|
||||
"referencedMap": {},
|
||||
"semanticDiagnosticsPerFile": [
|
||||
"../../lib/lib.d.ts",
|
||||
"../../lib/lib.scripthost.d.ts",
|
||||
"./core.d.ts",
|
||||
"./file.ts",
|
||||
"./file2.ts",
|
||||
"./index.ts",
|
||||
"./utils.d.ts"
|
||||
],
|
||||
"latestChangedDtsFile": "./index.d.ts"
|
||||
},
|
||||
"version": "FakeTSVersion",
|
||||
"size": 1512
|
||||
}
|
||||
|
|
@ -0,0 +1,975 @@
|
|||
currentDirectory:: /home/src/projects/project useCaseSensitiveFileNames: false
|
||||
Input::
|
||||
//// [/home/src/projects/project/src/struct.d.ts]
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
|
||||
|
||||
//// [/home/src/projects/project/src/anotherFile.ts]
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
|
||||
|
||||
//// [/home/src/projects/project/src/oneMore.ts]
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
|
||||
|
||||
//// [/home/src/projects/project/tsconfig.json]
|
||||
{}
|
||||
|
||||
//// [/home/src/projects/project/node_modules/fp-ts/lib/struct.d.ts]
|
||||
export function foo(): void
|
||||
|
||||
//// [/a/lib/lib.d.ts]
|
||||
/// <reference no-default-lib="true"/>
|
||||
interface Boolean {}
|
||||
interface Function {}
|
||||
interface CallableFunction {}
|
||||
interface NewableFunction {}
|
||||
interface IArguments {}
|
||||
interface Number { toExponential: any; }
|
||||
interface Object {}
|
||||
interface RegExp {}
|
||||
interface String { charAt: any; }
|
||||
interface Array<T> { length: number; [n: number]: T; }
|
||||
interface ReadonlyArray<T> {}
|
||||
declare const console: { log(msg: any): void; };
|
||||
|
||||
|
||||
/a/lib/tsc.js -w --explainFiles
|
||||
Output::
|
||||
>> Screen clear
|
||||
[[90mHH:MM:SS AM[0m] Starting compilation in watch mode...
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m2[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/node_modules/fp-ts/lib/struct.d.ts' differs from already included file name '/home/src/projects/project/node_modules/fp-ts/lib/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [91m ~~~~~~~~~~~~~~~~~~[0m
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m3[0m:[93m22[0m - [91merror[0m[90m TS1261: [0mAlready included file name '/home/src/projects/project/src/Struct.d.ts' differs from file name '/home/src/projects/project/src/struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Matched by default include pattern '**/*'
|
||||
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [91m ~~~~~~~~~~[0m
|
||||
|
||||
[96msrc/Struct.d.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/anotherFile.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m4[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/src/struct.d.ts' differs from already included file name '/home/src/projects/project/src/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Matched by default include pattern '**/*'
|
||||
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [91m ~~~~~~~~~~[0m
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96msrc/oneMore.ts[0m:[93m2[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/node_modules/fp-ts/lib/struct.d.ts' differs from already included file name '/home/src/projects/project/node_modules/fp-ts/lib/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [91m ~~~~~~~~~~~~~~~~~~[0m
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/anotherFile.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96msrc/oneMore.ts[0m:[93m4[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/src/struct.d.ts' differs from already included file name '/home/src/projects/project/src/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Matched by default include pattern '**/*'
|
||||
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [91m ~~~~~~~~~~[0m
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/anotherFile.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96msrc/Struct.d.ts[0m:[93m2[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/node_modules/fp-ts/lib/struct.d.ts' differs from already included file name '/home/src/projects/project/node_modules/fp-ts/lib/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [91m ~~~~~~~~~~~~~~~~~~[0m
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/anotherFile.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96msrc/Struct.d.ts[0m:[93m4[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/src/struct.d.ts' differs from already included file name '/home/src/projects/project/src/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Matched by default include pattern '**/*'
|
||||
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [91m ~~~~~~~~~~[0m
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/anotherFile.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
../../../../a/lib/lib.d.ts
|
||||
Default library for target 'es5'
|
||||
node_modules/fp-ts/lib/Struct.d.ts
|
||||
Imported via "fp-ts/lib/Struct" from file 'src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file 'src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file 'src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file 'src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file 'src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file 'src/oneMore.ts'
|
||||
src/Struct.d.ts
|
||||
Imported via "./Struct" from file 'src/anotherFile.ts'
|
||||
Imported via "./Struct" from file 'src/Struct.d.ts'
|
||||
Imported via "./struct" from file 'src/Struct.d.ts'
|
||||
Imported via "./struct" from file 'src/anotherFile.ts'
|
||||
Imported via "./Struct" from file 'src/oneMore.ts'
|
||||
Imported via "./struct" from file 'src/oneMore.ts'
|
||||
Matched by default include pattern '**/*'
|
||||
src/anotherFile.ts
|
||||
Matched by default include pattern '**/*'
|
||||
src/oneMore.ts
|
||||
Matched by default include pattern '**/*'
|
||||
[[90mHH:MM:SS AM[0m] Found 7 errors. Watching for file changes.
|
||||
|
||||
|
||||
|
||||
//// [/home/src/projects/project/src/anotherFile.js]
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
|
||||
|
||||
//// [/home/src/projects/project/src/oneMore.js]
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
|
||||
|
||||
|
||||
PolledWatches::
|
||||
/home/src/projects/node_modules/@types: *new*
|
||||
{"pollingInterval":500}
|
||||
/home/src/projects/package.json: *new*
|
||||
{"pollingInterval":2000}
|
||||
/home/src/projects/project/node_modules/@types: *new*
|
||||
{"pollingInterval":500}
|
||||
/home/src/projects/project/node_modules/fp-ts/lib/package.json: *new*
|
||||
{"pollingInterval":2000}
|
||||
/home/src/projects/project/node_modules/fp-ts/package.json: *new*
|
||||
{"pollingInterval":2000}
|
||||
/home/src/projects/project/node_modules/package.json: *new*
|
||||
{"pollingInterval":2000}
|
||||
/home/src/projects/project/package.json: *new*
|
||||
{"pollingInterval":2000}
|
||||
/home/src/projects/project/src/package.json: *new*
|
||||
{"pollingInterval":2000}
|
||||
|
||||
FsWatches::
|
||||
/a/lib/lib.d.ts: *new*
|
||||
{}
|
||||
/home/src/projects/project/node_modules/fp-ts/lib/Struct.d.ts: *new*
|
||||
{}
|
||||
/home/src/projects/project/src/Struct.d.ts: *new*
|
||||
{}
|
||||
/home/src/projects/project/src/anotherFile.ts: *new*
|
||||
{}
|
||||
/home/src/projects/project/src/oneMore.ts: *new*
|
||||
{}
|
||||
/home/src/projects/project/tsconfig.json: *new*
|
||||
{}
|
||||
|
||||
FsWatchesRecursive::
|
||||
/home/src/projects/project: *new*
|
||||
{}
|
||||
/home/src/projects/project/node_modules: *new*
|
||||
{}
|
||||
/home/src/projects/project/src: *new*
|
||||
{}
|
||||
|
||||
Program root files: [
|
||||
"/home/src/projects/project/src/anotherFile.ts",
|
||||
"/home/src/projects/project/src/oneMore.ts",
|
||||
"/home/src/projects/project/src/struct.d.ts"
|
||||
]
|
||||
Program options: {
|
||||
"watch": true,
|
||||
"explainFiles": true,
|
||||
"configFilePath": "/home/src/projects/project/tsconfig.json"
|
||||
}
|
||||
Program structureReused: Not
|
||||
Program files::
|
||||
/a/lib/lib.d.ts
|
||||
/home/src/projects/project/node_modules/fp-ts/lib/Struct.d.ts
|
||||
/home/src/projects/project/src/Struct.d.ts
|
||||
/home/src/projects/project/src/anotherFile.ts
|
||||
/home/src/projects/project/src/oneMore.ts
|
||||
|
||||
Semantic diagnostics in builder refreshed for::
|
||||
/a/lib/lib.d.ts
|
||||
/home/src/projects/project/node_modules/fp-ts/lib/Struct.d.ts
|
||||
/home/src/projects/project/src/Struct.d.ts
|
||||
/home/src/projects/project/src/anotherFile.ts
|
||||
/home/src/projects/project/src/oneMore.ts
|
||||
|
||||
Shape signatures in builder refreshed for::
|
||||
/a/lib/lib.d.ts (used version)
|
||||
/home/src/projects/project/node_modules/fp-ts/lib/struct.d.ts (used version)
|
||||
/home/src/projects/project/src/struct.d.ts (used version)
|
||||
/home/src/projects/project/src/anotherfile.ts (used version)
|
||||
/home/src/projects/project/src/onemore.ts (used version)
|
||||
|
||||
exitCode:: ExitStatus.undefined
|
||||
|
||||
Change:: change to reuse imports
|
||||
|
||||
Input::
|
||||
//// [/home/src/projects/project/src/struct.d.ts]
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
import * as xs4 from "./struct";
|
||||
export const y = 10;
|
||||
|
||||
|
||||
Timeout callback:: count: 1
|
||||
1: timerToUpdateProgram *new*
|
||||
|
||||
Before running Timeout callback:: count: 1
|
||||
1: timerToUpdateProgram
|
||||
|
||||
After running Timeout callback:: count: 0
|
||||
Output::
|
||||
>> Screen clear
|
||||
[[90mHH:MM:SS AM[0m] File change detected. Starting incremental compilation...
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m2[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/node_modules/fp-ts/lib/struct.d.ts' differs from already included file name '/home/src/projects/project/node_modules/fp-ts/lib/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [91m ~~~~~~~~~~~~~~~~~~[0m
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m3[0m:[93m22[0m - [91merror[0m[90m TS1261: [0mAlready included file name '/home/src/projects/project/src/Struct.d.ts' differs from file name '/home/src/projects/project/src/struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Matched by default include pattern '**/*'
|
||||
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [91m ~~~~~~~~~~[0m
|
||||
|
||||
[96msrc/Struct.d.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/anotherFile.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m4[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/src/struct.d.ts' differs from already included file name '/home/src/projects/project/src/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Matched by default include pattern '**/*'
|
||||
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [91m ~~~~~~~~~~[0m
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96msrc/oneMore.ts[0m:[93m2[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/node_modules/fp-ts/lib/struct.d.ts' differs from already included file name '/home/src/projects/project/node_modules/fp-ts/lib/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [91m ~~~~~~~~~~~~~~~~~~[0m
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/anotherFile.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96msrc/oneMore.ts[0m:[93m4[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/src/struct.d.ts' differs from already included file name '/home/src/projects/project/src/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Matched by default include pattern '**/*'
|
||||
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [91m ~~~~~~~~~~[0m
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/anotherFile.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96msrc/Struct.d.ts[0m:[93m2[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/node_modules/fp-ts/lib/struct.d.ts' differs from already included file name '/home/src/projects/project/node_modules/fp-ts/lib/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [91m ~~~~~~~~~~~~~~~~~~[0m
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/anotherFile.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96msrc/Struct.d.ts[0m:[93m4[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/src/struct.d.ts' differs from already included file name '/home/src/projects/project/src/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Matched by default include pattern '**/*'
|
||||
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [91m ~~~~~~~~~~[0m
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/anotherFile.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
../../../../a/lib/lib.d.ts
|
||||
Default library for target 'es5'
|
||||
node_modules/fp-ts/lib/Struct.d.ts
|
||||
Imported via "fp-ts/lib/Struct" from file 'src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file 'src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file 'src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file 'src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file 'src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file 'src/oneMore.ts'
|
||||
src/Struct.d.ts
|
||||
Imported via "./Struct" from file 'src/anotherFile.ts'
|
||||
Imported via "./Struct" from file 'src/Struct.d.ts'
|
||||
Imported via "./struct" from file 'src/Struct.d.ts'
|
||||
Imported via "./struct" from file 'src/anotherFile.ts'
|
||||
Imported via "./Struct" from file 'src/oneMore.ts'
|
||||
Imported via "./struct" from file 'src/oneMore.ts'
|
||||
Matched by default include pattern '**/*'
|
||||
src/anotherFile.ts
|
||||
Matched by default include pattern '**/*'
|
||||
src/oneMore.ts
|
||||
Matched by default include pattern '**/*'
|
||||
[[90mHH:MM:SS AM[0m] Found 7 errors. Watching for file changes.
|
||||
|
||||
|
||||
|
||||
//// [/home/src/projects/project/src/anotherFile.js] file written with same contents
|
||||
//// [/home/src/projects/project/src/oneMore.js] file written with same contents
|
||||
|
||||
|
||||
Program root files: [
|
||||
"/home/src/projects/project/src/anotherFile.ts",
|
||||
"/home/src/projects/project/src/oneMore.ts",
|
||||
"/home/src/projects/project/src/struct.d.ts"
|
||||
]
|
||||
Program options: {
|
||||
"watch": true,
|
||||
"explainFiles": true,
|
||||
"configFilePath": "/home/src/projects/project/tsconfig.json"
|
||||
}
|
||||
Program structureReused: Completely
|
||||
Program files::
|
||||
/a/lib/lib.d.ts
|
||||
/home/src/projects/project/node_modules/fp-ts/lib/Struct.d.ts
|
||||
/home/src/projects/project/src/Struct.d.ts
|
||||
/home/src/projects/project/src/anotherFile.ts
|
||||
/home/src/projects/project/src/oneMore.ts
|
||||
|
||||
Semantic diagnostics in builder refreshed for::
|
||||
/home/src/projects/project/src/Struct.d.ts
|
||||
/home/src/projects/project/src/anotherFile.ts
|
||||
/home/src/projects/project/src/oneMore.ts
|
||||
|
||||
Shape signatures in builder refreshed for::
|
||||
/home/src/projects/project/src/struct.d.ts (used version)
|
||||
/home/src/projects/project/src/onemore.ts (computed .d.ts)
|
||||
/home/src/projects/project/src/anotherfile.ts (computed .d.ts)
|
||||
|
||||
exitCode:: ExitStatus.undefined
|
||||
|
||||
Change:: change to update imports
|
||||
|
||||
Input::
|
||||
//// [/home/src/projects/project/src/struct.d.ts]
|
||||
import * as xs1 from "fp-ts/lib/Struct";
|
||||
import * as xs2 from "fp-ts/lib/struct";
|
||||
import * as xs3 from "./Struct";
|
||||
|
||||
|
||||
|
||||
Timeout callback:: count: 1
|
||||
2: timerToUpdateProgram *new*
|
||||
|
||||
Before running Timeout callback:: count: 1
|
||||
2: timerToUpdateProgram
|
||||
|
||||
After running Timeout callback:: count: 0
|
||||
Output::
|
||||
>> Screen clear
|
||||
[[90mHH:MM:SS AM[0m] File change detected. Starting incremental compilation...
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m2[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/node_modules/fp-ts/lib/struct.d.ts' differs from already included file name '/home/src/projects/project/node_modules/fp-ts/lib/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [91m ~~~~~~~~~~~~~~~~~~[0m
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m3[0m:[93m22[0m - [91merror[0m[90m TS1261: [0mAlready included file name '/home/src/projects/project/src/Struct.d.ts' differs from file name '/home/src/projects/project/src/struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Matched by default include pattern '**/*'
|
||||
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [91m ~~~~~~~~~~[0m
|
||||
|
||||
[96msrc/Struct.d.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/anotherFile.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m4[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/src/struct.d.ts' differs from already included file name '/home/src/projects/project/src/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Matched by default include pattern '**/*'
|
||||
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [91m ~~~~~~~~~~[0m
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96msrc/oneMore.ts[0m:[93m2[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/node_modules/fp-ts/lib/struct.d.ts' differs from already included file name '/home/src/projects/project/node_modules/fp-ts/lib/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [91m ~~~~~~~~~~~~~~~~~~[0m
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/anotherFile.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96msrc/oneMore.ts[0m:[93m4[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/src/struct.d.ts' differs from already included file name '/home/src/projects/project/src/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "./Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "./struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Matched by default include pattern '**/*'
|
||||
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [91m ~~~~~~~~~~[0m
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/anotherFile.ts[0m:[93m4[0m:[93m22[0m
|
||||
[7m4[0m import * as xs4 from "./struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m3[0m:[93m22[0m
|
||||
[7m3[0m import * as xs3 from "./Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
[96msrc/Struct.d.ts[0m:[93m2[0m:[93m22[0m - [91merror[0m[90m TS1149: [0mFile name '/home/src/projects/project/node_modules/fp-ts/lib/struct.d.ts' differs from already included file name '/home/src/projects/project/node_modules/fp-ts/lib/Struct.d.ts' only in casing.
|
||||
The file is in the program because:
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file '/home/src/projects/project/src/oneMore.ts'
|
||||
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [91m ~~~~~~~~~~~~~~~~~~[0m
|
||||
|
||||
[96msrc/anotherFile.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/anotherFile.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/Struct.d.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m1[0m:[93m22[0m
|
||||
[7m1[0m import * as xs1 from "fp-ts/lib/Struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
[96msrc/oneMore.ts[0m:[93m2[0m:[93m22[0m
|
||||
[7m2[0m import * as xs2 from "fp-ts/lib/struct";
|
||||
[7m [0m [96m ~~~~~~~~~~~~~~~~~~[0m
|
||||
File is included via import here.
|
||||
|
||||
../../../../a/lib/lib.d.ts
|
||||
Default library for target 'es5'
|
||||
node_modules/fp-ts/lib/Struct.d.ts
|
||||
Imported via "fp-ts/lib/Struct" from file 'src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/struct" from file 'src/anotherFile.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file 'src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/struct" from file 'src/Struct.d.ts'
|
||||
Imported via "fp-ts/lib/Struct" from file 'src/oneMore.ts'
|
||||
Imported via "fp-ts/lib/struct" from file 'src/oneMore.ts'
|
||||
src/Struct.d.ts
|
||||
Imported via "./Struct" from file 'src/anotherFile.ts'
|
||||
Imported via "./Struct" from file 'src/Struct.d.ts'
|
||||
Imported via "./struct" from file 'src/anotherFile.ts'
|
||||
Imported via "./Struct" from file 'src/oneMore.ts'
|
||||
Imported via "./struct" from file 'src/oneMore.ts'
|
||||
Matched by default include pattern '**/*'
|
||||
src/anotherFile.ts
|
||||
Matched by default include pattern '**/*'
|
||||
src/oneMore.ts
|
||||
Matched by default include pattern '**/*'
|
||||
[[90mHH:MM:SS AM[0m] Found 6 errors. Watching for file changes.
|
||||
|
||||
|
||||
|
||||
//// [/home/src/projects/project/src/anotherFile.js] file written with same contents
|
||||
//// [/home/src/projects/project/src/oneMore.js] file written with same contents
|
||||
|
||||
|
||||
Program root files: [
|
||||
"/home/src/projects/project/src/anotherFile.ts",
|
||||
"/home/src/projects/project/src/oneMore.ts",
|
||||
"/home/src/projects/project/src/struct.d.ts"
|
||||
]
|
||||
Program options: {
|
||||
"watch": true,
|
||||
"explainFiles": true,
|
||||
"configFilePath": "/home/src/projects/project/tsconfig.json"
|
||||
}
|
||||
Program structureReused: SafeModules
|
||||
Program files::
|
||||
/a/lib/lib.d.ts
|
||||
/home/src/projects/project/node_modules/fp-ts/lib/Struct.d.ts
|
||||
/home/src/projects/project/src/Struct.d.ts
|
||||
/home/src/projects/project/src/anotherFile.ts
|
||||
/home/src/projects/project/src/oneMore.ts
|
||||
|
||||
Semantic diagnostics in builder refreshed for::
|
||||
/home/src/projects/project/src/Struct.d.ts
|
||||
/home/src/projects/project/src/anotherFile.ts
|
||||
/home/src/projects/project/src/oneMore.ts
|
||||
|
||||
Shape signatures in builder refreshed for::
|
||||
/home/src/projects/project/src/struct.d.ts (used version)
|
||||
/home/src/projects/project/src/onemore.ts (computed .d.ts)
|
||||
/home/src/projects/project/src/anotherfile.ts (computed .d.ts)
|
||||
|
||||
exitCode:: ExitStatus.undefined
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
|
@ -79,7 +79,6 @@ Info seq [hh:mm:ss:mss] Files (4)
|
|||
../../../../a/lib/lib.d.ts
|
||||
Default library for target 'es5'
|
||||
node_modules/bar/foo.d.ts
|
||||
Imported via "./foo" from file 'node_modules/bar/index.d.ts'
|
||||
Imported via "./foo" from file 'node_modules/bar/index.d.ts'
|
||||
Root file specified for compilation
|
||||
node_modules/bar/index.d.ts
|
||||
|
|
|
@ -106,7 +106,6 @@ Info seq [hh:mm:ss:mss] Files (4)
|
|||
../../../../a/lib/lib.d.ts
|
||||
Default library for target 'es5'
|
||||
node_modules/bar/foo.d.ts
|
||||
Imported via "./foo" from file 'node_modules/bar/index.d.ts'
|
||||
Imported via "./foo" from file 'node_modules/bar/index.d.ts'
|
||||
Root file specified for compilation
|
||||
node_modules/bar/index.d.ts
|
||||
|
|
|
@ -77,7 +77,6 @@ Info seq [hh:mm:ss:mss] Files (4)
|
|||
../../../../a/lib/lib.d.ts
|
||||
Default library for target 'es5'
|
||||
node_modules/bar/foo.d.ts
|
||||
Imported via "./foo" from file 'node_modules/bar/index.d.ts'
|
||||
Imported via "./foo" from file 'node_modules/bar/index.d.ts'
|
||||
Root file specified for compilation
|
||||
node_modules/bar/index.d.ts
|
||||
|
|
Загрузка…
Ссылка в новой задаче