From ecf66750b438d0f978a96b293a358391a31e7198 Mon Sep 17 00:00:00 2001 From: Ryan Diehl Date: Fri, 4 Mar 2022 07:57:20 -0500 Subject: [PATCH] fix(linter): update circular file path message to wrap onto multiple lines (#9033) --- .../src/rules/enforce-module-boundaries.spec.ts | 5 ++++- .../src/rules/enforce-module-boundaries.ts | 8 +++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/packages/eslint-plugin-nx/src/rules/enforce-module-boundaries.spec.ts b/packages/eslint-plugin-nx/src/rules/enforce-module-boundaries.spec.ts index 9768cd19fbac7..0411310a5503c 100644 --- a/packages/eslint-plugin-nx/src/rules/enforce-module-boundaries.spec.ts +++ b/packages/eslint-plugin-nx/src/rules/enforce-module-boundaries.spec.ts @@ -1198,7 +1198,10 @@ Circular file chain: Circular file chain: - libs/mylib/src/main.ts - libs/badcirclelib/src/main.ts -- [libs/anotherlib/src/main.ts,libs/anotherlib/src/index.ts]`; +- [ + libs/anotherlib/src/main.ts, + libs/anotherlib/src/index.ts + ]`; expect(failures.length).toEqual(2); expect(failures[0].message).toEqual(message); expect(failures[1].message).toEqual(message); diff --git a/packages/eslint-plugin-nx/src/rules/enforce-module-boundaries.ts b/packages/eslint-plugin-nx/src/rules/enforce-module-boundaries.ts index d1723c1222cc2..4aa0fc7d9343e 100644 --- a/packages/eslint-plugin-nx/src/rules/enforce-module-boundaries.ts +++ b/packages/eslint-plugin-nx/src/rules/enforce-module-boundaries.ts @@ -302,6 +302,10 @@ export default createESLintRule({ if (circularPath.length !== 0) { const circularFilePath = findFilesInCircularPath(circularPath); + // spacer text used for indirect dependencies when printing one line per file. + // without this, we can end up with a very long line that does not display well in the terminal. + const spacer = '\n '; + context.report({ node, messageId: 'noCircularDependencies', @@ -314,7 +318,9 @@ export default createESLintRule({ ), filePaths: circularFilePath .map((files) => - files.length > 1 ? `[${files.join(',')}]` : files[0] + files.length > 1 + ? `[${spacer}${files.join(`,${spacer}`)}\n ]` + : files[0] ) .reduce( (acc, files) => `${acc}\n- ${files}`,