Shubham Kanodia (@_pastelsky) on X

1 min read Original article ↗

Post

Post

  • user avatar

    Configuration management in JavaScript tooling ecosystem seems quite broken. Last week while slow profiling lint times in our project, I found out that stylelint spends ~73% of its time in just resolving configuration, and ~20% doing actual linting.

  • user avatar

    This happens because it needs to search recursively for a lint configuration for every single file linted. Stylelint isn’t alone though – quite a few tools(e.g. ESLint) use cosmic config / similar for config scanning, and I wouldn’t be surprised if they were equally inefficient.

    user avatar

    Given that there is usually little to no sharing of results between tools in the JS ecosystem, you pay this cost once for every such tool that you use - which can add up to be a lot in mid-large projects. Each tool has its own config and and ignore files.

    user avatar

    This is where

    @rometools

    ’s philosophy of single toolchain should shine. Even without all of its its rust foo, I’d expect it to cut down on so much in-efficiency in repetitive config management/parsing etc that it’d make a typical dev loop noticeably faster.