These were disabled in ktlint 1.7 and is now opt-in. ktlint planned to remove these checks, but this decision has been reversed
Ktlint analyses code on a file by file base. Meaning, that all linting/formatting decisions have to be made based on information in the file that is being processed. Information in other files is not taken into account at all. For a 100% reliable detection whether an import is used, or unused, a file needs to be analyzed within the scope of the project and its dependencies.
The no-unused-imports rule is marked as deprecated starting from Ktlint 1.7.0, and will be removed in Ktlint 2.0.0. Until the rule is removed, it can be used by explicitly enabling the rule in the .editorconfig, by adding:
I will use detekt for this: https://detekt.dev/
I have been planning to enable detekt for a while, and this is a sufficient reason to start. Detekt bugfixes should be added as TODOs
These were disabled in ktlint 1.7 and is now opt-in.
ktlintplanned to remove these checks, but this decision has been reversedI will use
detektfor this: https://detekt.dev/I have been planning to enable
detektfor a while, and this is a sufficient reason to start. Detekt bugfixes should be added as TODOs