[NEW PLUGIN] ecoCode - Requesting inclusion in SonarQube Marketplace

Hi,

Here’s what I saw in my new round of testing:

Kudos

  • I really like the energy comparison at the bottom of the PHP rules. This is really nice, and I think it will likely help adoption.

Optional

  • In checking all the plugins’ change logs, I see this:

    • WARNING : since this plugin version, ids of plugin rules changed. In consequence, if you have already made some issue checks in your SonarQube instance, you will have to do them again (example : false-positive issues will appear again)

    There is a mechanism available to migrate rule ids (and even repository names). Using it would mean that all the old issues would be seamlessly migrated to the new rule ids and no manual work, e.g. FP-ing, would be lost. (BTW, I can’t tell you the particulars, but it’s likely visible in the API.)
    Before we put these versions into the marketplace, do you want to take a look at that? It’s up to you.

  • I find it odd that the Java plugin has only Code Smell rules and the PHP and Python plugins have only Bug rules, especially when some of the rules are the same from language to language (e.g. ++i instead of i++)

  • ecocode-php:EC34’s title is “Avoid using try-catch-finally”, but it raises issues on try-catch blocks without the finally clause. The code sample clears it up, but it seems the rule is really “Avoid using try-catch” or perhaps “Avoid using try-catch and try-catch-finally”?

    • Ditto Python.

ToDo

  • For ecocode-java:EC63 (I see you’ve re-keyed it from S63. Thank you!) I see that the issue message still doesn’t make sense:
    Selection_1002

    Explicitly, the variable is assigned. I’m guessing it’s not used…?

  • I’ve mentioned this in the pull request, but

    • The file for the JavaScript plugin gives the download link for the Java plugin.
    • When I correct the download link to point to the JavaScript plugin I get a plugin that doesn’t expose any rules

The JavaScript, PHP and Python plugins all pass the bureaucratic requirements, and there are no showstoppers for PHP and Python. They’re good to enter the Marketplace. But because you’ve ganged all 4 together in one PR, they’re going to have to wait until the Java and JavaScript plugins’ problems get sorted out.

 
Ann