ChainSafe / lodestar

🌟 TypeScript Implementation of Ethereum Consensus
https://lodestar.chainsafe.io
Apache License 2.0
1.18k stars 289 forks source link

Prevent circular dependencies with eslint #3929

Open dapplion opened 2 years ago

dapplion commented 2 years ago

Motivation

'import/no-cycle' is expensive computationally, consider restricting its maxdepth

See https://github.com/import-js/eslint-plugin-import/blob/HEAD/docs/rules/no-cycle.md#maxdepth

A lint run in master currently takes Done in 121.30s. in Github Actions (from https://github.com/ChainSafe/lodestar/runs/5137987474?check_suite_focus=true#step:13:38)

In this PR for a failed run it took in 137.5s so the extra time is okay :+1:

Description

Prevent circular dependencies with eslint

See https://github.com/ChainSafe/lodestar/pull/3742 for an example implementation

philknows commented 1 year ago

Related to #6011

wemeetagain commented 1 month ago

@nazarhussain is there a biome rule?

nazarhussain commented 4 weeks ago

Not at the moment, but hopefully something related to Analyzer will sure come soon. https://biomejs.dev/analyzer/