Security News
Fluent Assertions Faces Backlash After Abandoning Open Source Licensing
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
vite-plugin-circular-dependency
Advanced tools
English | 中文
A framework-agnostic build-time Vite plugin designed to detect circular imports and self-references, compatible with dynamic and static imports.
// Configure the output path,
// a scan report will be generated to the specified path
export default defineConfig({
plugins: [
circleDependency({
outputFilePath: "./circleDep",
}),
],
});
// Without any configuration, it will be printed on the console
export default defineConfig({
plugins: [circleDependency()],
});
npm i -D vite-plugin-circular-dependency
// yarn add --dev vite-plugin-circular-dependency
// pnpm i --dev vite-plugin-circular-dependency
Please use this plugin when building
In your vite.config.(js|ts)
import the plugin and register it.
import { defineConfig } from "vite";
import circleDependency from "vite-plugin-circular-dependency";
export default defineConfig({
plugins: [circleDependency()],
});
export interface Options {
/**
* Rules to include transforming target.
*
* @default [/\.[jt]sx?$/, /\.vue\??/]
*/
include?: FilterPattern;
/**
* Rules to exclude scan target.
*
* @default [/node_modules/, /\.git/]
*/
exclude?: FilterPattern;
/**
* The file address of the scan result output, the default console print
*/
outputFilePath?: string;
// If configured, will output the products of circular references as an interactive HTML application to the specified address
outputInteractiveFilePath?: string;
/**
* Whether to throw an error when a circular import exists
*
* @default true
*/
circleImportThrowErr?: boolean;
/**
* Format the path of the output node.
* By default, vite.config will be used as the root path to generate a relative path
*
* @default function
*/
formatOutModulePath?: (path: string) => string;
/**
* The result of formatted output
* will also affect the data format in the console print or output file
*
* @default (data: CircleData) => data
*/
formatOut?: (data: CircleData) => any;
/**
* Whether to ignore dynamic imports during the scan.
*
* @default false
*
* If the file has the @circular-ignore tag, the module will also be ignored for circular dependency scanning.
* Example:
* // @circular-ignore
* import { example } from './exampleModule';
*/
ignoreDynamicImport?: boolean;
}
FAQs
Detect circular dependencies
The npm package vite-plugin-circular-dependency receives a total of 14,597 weekly downloads. As such, vite-plugin-circular-dependency popularity was classified as popular.
We found that vite-plugin-circular-dependency demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Fluent Assertions is facing backlash after dropping the Apache license for a commercial model, leaving users blindsided and questioning contributor rights.
Research
Security News
Socket researchers uncover the risks of a malicious Python package targeting Discord developers.
Security News
The UK is proposing a bold ban on ransomware payments by public entities to disrupt cybercrime, protect critical services, and lead global cybersecurity efforts.