Tried to apply Obsidian Community plugin type check on a monorepo, and it produced catastrophically huge chunks of false positive warnings, mostly @typescript-eslint/no-unsafe-* warnings.
(the image above only shows part of the false positives)
Observation:
All the @typescript-eslint/no-unsafe-* warnings point to monorepo packages that have another internal package as dependency.
Since the type checker doesn’t link or build internal dependencies when checking, all exports from that internal package become /* unresolved */ any, which makes Eslint think all types are any, thus it reports false positives for almost all places that import something from an internal package.
On local machine, running eslint-plugin-obsidianmd doesn’t have this issue since deps are wired correctly in local environment.
Suggestion:
- Allow plugins to define a command (e.g.
postinstall) and execute that command before linting. - Or, silence those warnings on any packages that shows
unresolved.
