detekt / detekt-intellij-plugin

detekt plugin for IntelliJ
https://plugins.jetbrains.com/plugin/10761-detekt
Apache License 2.0
290 stars 39 forks source link

Make detekt plugin opt-in per-project #490

Closed rock3r closed 10 months ago

rock3r commented 10 months ago

On projects that already have detekt enabled, this makes no difference. For projects that don't have detekt enabled, the plugin will ask on project open to enable it or opt out for the current project. Users can always use the IDE settings to turn on detekt as before.

image

The detekt configuration UI has also been overhauled, by reorganizing settings in a more intuitive way. The main on/off switch for detekt analysis has been placed prominently at the top of the configuration page, and the tooltip has been turned into a comment for easier understanding, as its wording is a tad cryptic. The "common options" section is now "plugin options" — as those relate to the IDE plugin rather than detekt proper.

The implicit dependency of the debug mode on the stdout/stderr redirect has been made explicit with an indent, and a UI DSL bug worked around where custom components wouldn't get properly disabled by enabledIf bindings.

Darcula New UI Dark
New settings screenshot, under Darcula ("old UI") New settings screenshot, under New UI Dark

This PR closes #479

rock3r commented 10 months ago

@arturbosch any feedback?

arturbosch commented 10 months ago

@arturbosch any feedback?

Looks good to me!

Can we implement DumpAware or something here? Screenshot from 2023-09-09 12-31-38

Should we rename this <option name="optIn" value="OptedIn" />? After a week the user forgot what OptedIn means and ask if we collect telemetry or something. Maybe even Jetbrains Marketplace will ask what it means ^_^. EnableDialogShowedOnFirstRun with true|false ?

rock3r commented 10 months ago

@arturbosch all addressed :)