You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Mike Drob (JIRA)" <ji...@apache.org> on 2018/06/09 19:43:00 UTC

[jira] [Commented] (HBASE-20707) Move MissingSwitchDefault check from checkstyle to error-prone

    [ https://issues.apache.org/jira/browse/HBASE-20707?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16507137#comment-16507137 ] 

Mike Drob commented on HBASE-20707:
-----------------------------------

[~apurtell], [~Jan Hentschel] - do you see any issues with this approach?

> Move MissingSwitchDefault check from checkstyle to error-prone
> --------------------------------------------------------------
>
>                 Key: HBASE-20707
>                 URL: https://issues.apache.org/jira/browse/HBASE-20707
>             Project: HBase
>          Issue Type: Bug
>          Components: build
>            Reporter: Mike Drob
>            Assignee: Mike Drob
>            Priority: Major
>         Attachments: HBASE-20707.patch
>
>
> Both checkstyle and error-prone can alert when a switch statement is missing a default. However, because checkstyle does it via static analysis and error-prone does it during compilation, e-p can detect when all cases of an enum have been covered, and will _not_ warn about the needed default case.
> In fact, checkstyle explicitly mentions in their docs that even if you cover all enum cases now, you should still have a default label because the enum could change in the future. Which seems silly to me, because your analysis tools should still be running in the future and would catch it then.
> Se we should migrate the check from checkstyle to a slightly smarter error-prone check.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)