From 34c9952eb4015edac1e87ce095801ede294e5be9 Mon Sep 17 00:00:00 2001 From: ShaMan123 Date: Mon, 6 Mar 2023 13:03:30 +0200 Subject: [PATCH 1/3] ci(): disallow circular deps --- rollup.config.mjs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/rollup.config.mjs b/rollup.config.mjs index 7170f6ac4c5..cd0dacb792f 100644 --- a/rollup.config.mjs +++ b/rollup.config.mjs @@ -24,6 +24,19 @@ const plugins = [ }), ]; +/** + * disallow circular deps + * @see https://rollupjs.org/configuration-options/#onwarn + * @param {*} warning + * @param {*} warn + */ +function onwarn(warning, warn) { + if (warning.code === 'CIRCULAR_DEPENDENCY') + throw Object.assign(new Error(), warning); + // Use default for everything else + warn(warning); +} + // https://rollupjs.org/guide/en/#configuration-files export default [ { @@ -51,6 +64,7 @@ export default [ : null, ], plugins, + onwarn, }, { input: ['./index.node.ts'], @@ -69,6 +83,7 @@ export default [ }, ], plugins, + onwarn, external: ['jsdom', 'jsdom/lib/jsdom/living/generated/utils.js', 'canvas'], }, ]; From 6b43b43d562b7cadd9c4390b418b00e6ff396ace Mon Sep 17 00:00:00 2001 From: ShaMan123 Date: Mon, 6 Mar 2023 13:12:47 +0200 Subject: [PATCH 2/3] Update rollup.config.mjs --- rollup.config.mjs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/rollup.config.mjs b/rollup.config.mjs index cd0dacb792f..b156c1f0297 100644 --- a/rollup.config.mjs +++ b/rollup.config.mjs @@ -3,6 +3,7 @@ import terser from '@rollup/plugin-terser'; import ts from '@rollup/plugin-typescript'; import { babel } from '@rollup/plugin-babel'; import path from 'path'; +import chalk from 'chalk'; // import dts from "rollup-plugin-dts"; const splitter = /\n|\s|,/g; @@ -31,9 +32,10 @@ const plugins = [ * @param {*} warn */ function onwarn(warning, warn) { - if (warning.code === 'CIRCULAR_DEPENDENCY') + if (warning.code === 'CIRCULAR_DEPENDENCY') { + console.error(chalk.redBright(warning.message)); throw Object.assign(new Error(), warning); - // Use default for everything else + } warn(warning); } From 9a112c15c2ae14ae5f53d4c1067ccba5654af0ba Mon Sep 17 00:00:00 2001 From: ShaMan123 Date: Mon, 6 Mar 2023 13:17:19 +0200 Subject: [PATCH 3/3] Update CHANGELOG.md --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4fb9f142c9d..eac11af3c60 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,7 @@ ## [next] +- ci(): disallow circular deps [#8759](https://github.com/fabricjs/fabric.js/pull/8759) - chore(TS): remove controls from prototype. BREAKING: controls aren't shared anymore [#8753](https://github.com/fabricjs/fabric.js/pull/8753) - chore(TS): remove object `type` from prototype [#8714](https://github.com/fabricjs/fabric.js/pull/8714) - chore(TS): type Object props [#8677](https://github.com/fabricjs/fabric.js/issues/8677)