mirror of
https://github.com/pezkuwichain/pezkuwi-dev.git
synced 2026-04-21 23:48:03 +00:00
8d28b36f9c
- Package namespace: @polkadot/dev -> @pezkuwi/dev - Repository: polkadot-js/dev -> pezkuwichain/pezkuwi-dev - Author: Pezkuwi Team <team@pezkuwichain.io> Packages: - @pezkuwi/dev (build tools, linting, CI scripts) - @pezkuwi/dev-test (test runner) - @pezkuwi/dev-ts (TypeScript build) Upstream: polkadot-js/dev v0.83.3
30 lines
788 B
JavaScript
Executable File
30 lines
788 B
JavaScript
Executable File
#!/usr/bin/env node
|
|
// Copyright 2017-2025 @polkadot/dev authors & contributors
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
|
|
// @ts-expect-error For scripts we don't include @types/* definitions
|
|
import madge from 'madge';
|
|
|
|
import { exitFatal, logBin } from './util.mjs';
|
|
|
|
logBin('polkadot-dev-circular');
|
|
|
|
const res = await madge('./', { fileExtensions: ['ts', 'tsx'] });
|
|
|
|
/** @type {string[][]} */
|
|
const circular = res.circular();
|
|
|
|
if (!circular.length) {
|
|
process.stdout.write('No circular dependency found!\n');
|
|
process.exit(0);
|
|
}
|
|
|
|
const err = `Failed with ${circular.length} circular dependencies`;
|
|
const all = circular
|
|
.map((files, idx) => `${(idx + 1).toString().padStart(4)}: ${files.join(' > ')}`)
|
|
.join('\n');
|
|
|
|
process.stdout.write(`\n${err}:\n\n${all}\n\n`);
|
|
|
|
exitFatal(err);
|