Description
Describe the bug
This package uses TSLint, which is deprecated. The suggested upgrade path seems to have some issues and complexity. Since there are a number of options for linting, I figured it was worth opening an issue to decide on a direction first.
A few possibilities:
- Move to ESLint directly. This would have been my choice in previous versions, but the latest ESLint seems more complex and potentially involves adding a number of support modules.
- Move to an alternative tool. Examples would be things like neostandard, typescript-eslint, biome.
I think no matter which option we pick, we might end up tweaking the lint rules over time if we want to match the TSLint configuration as closely as possible (not sure if that is necessarily a goal though).
Client Version
latest
Server Version
not relevant
To Reproduce
Run npm ci
on this repo
Expected behavior
npm ci
finishes with no warnings or errors related to this package
Example Code
not relevant
Environment (please complete the following information):
local development
Additional context
Quoting my comment from #2050 regarding migrating away from TSLint:
FWIW, I briefly started looking into this. It's not as simple as I had hoped it would be. TSLint provides an automatic migration to ESLint that preserves many of the current linting settings. However, it seems to migrate to a now outdated version of ESLint, so the generated config has some problems. In turn, ESLint also provides an automatic update migration. Unfortunately, ESLint seems to have gotten a lot more complex in its latest version and requires installing a bunch of additional modules.