destiny
destiny copied to clipboard
Wrong shared file location
When running npx destiny src --debug on Destiny's repo:
src
├──index
│ ├──formatFileStructure
│ │ ├──fixImports
│ │ │ ├──customResolve.ts
│ │ │ ├──findImports.ts
│ │ │ ├──makeImportPath.ts
│ │ │ └──RootOption.ts
│ │ ├──fixImports.ts
│ │ ├──moveFiles.ts
│ │ └──removeEmptyFolders.ts
│ ├──generateTrees
│ │ ├──buildGraph
│ │ │ ├──findSharedParent.ts
│ │ │ └──Graph.ts
│ │ ├──findEntryPoints
│ │ │ └──isTestFile.ts
│ │ ├──toFractalTree
│ │ │ └──hasCycle.ts
│ │ ├──buildGraph.ts
│ │ ├──detect-lonely-files.ts
│ │ ├──findEntryPoints.ts
│ │ ├──printTree.ts
│ │ └──toFractalTree.ts
│ ├──getFilePaths
│ │ └──logger.ts <------ ????
│ ├──formatFileStructure.ts
│ ├──generateTrees.ts
│ ├──getFilePaths.ts
│ └──printHelpMessage.ts
└──index.ts
DEBUG: +81ms generated tree(s):
[
{
parentFolder: '/mnt/c/Users/lucet/destiny/src',
tree: {
'index.ts': 'index.ts',
'index/getFilePaths.ts': 'index/getFilePaths.ts',
'shared/logger.ts': 'index/getFilePaths/logger.ts', <------ ????
'index/formatFileStructure.ts': 'index/formatFileStructure.ts',
'index/formatFileStructure/moveFiles.ts': 'index/formatFileStructure/moveFiles.ts',
'index/formatFileStructure/removeEmptyFolders.ts': 'index/formatFileStructure/removeEmptyFolders.ts',
'index/formatFileStructure/fixImports.ts': 'index/formatFileStructure/fixImports.ts',
'index/shared/findImports.ts': 'index/formatFileStructure/fixImports/findImports.ts',
'index/formatFileStructure/fixImports/makeImportPath.ts': 'index/formatFileStructure/fixImports/makeImportPath.ts',
'index/shared/customResolve.ts': 'index/formatFileStructure/fixImports/customResolve.ts',
'index/shared/RootOption.ts': 'index/formatFileStructure/fixImports/RootOption.ts',
'index/generateTrees.ts': 'index/generateTrees.ts',
'index/generateTrees/printTree.ts': 'index/generateTrees/printTree.ts',
'index/generateTrees/buildGraph.ts': 'index/generateTrees/buildGraph.ts',
'index/generateTrees/shared/Graph.ts': 'index/generateTrees/buildGraph/Graph.ts',
'index/generateTrees/shared/findSharedParent.ts': 'index/generateTrees/buildGraph/findSharedParent.ts',
'index/generateTrees/findEntryPoints.ts': 'index/generateTrees/findEntryPoints.ts',
'index/generateTrees/shared/isTestFile.ts': 'index/generateTrees/findEntryPoints/isTestFile.ts',
'index/generateTrees/toFractalTree.ts': 'index/generateTrees/toFractalTree.ts',
'index/generateTrees/toFractalTree/hasCycle.ts': 'index/generateTrees/toFractalTree/hasCycle.ts',
'index/shared/detect-lonely-files.ts': 'index/generateTrees/detect-lonely-files.ts',
'index/printHelpMessage.ts': 'index/printHelpMessage.ts'
},
useForwardSlash: true
}
]
logger.ts is misplaced. It's the only one I saw, but there may be more...
@AnatoleLucet This seems to be a side effect of the circular dependency caused by the import { Config } from "../index"; line in generateTrees.ts. I do not know if the circular dependency is there intentionally so -- I see there is some logic/testing surrounding circular dependencies -- but I see two different paths forward depending on whether or not the circular dependency is intentional.