[FIRST RELEASE] SonarQube i-Code CNES plugin 1.0.0


(Benoît Garçon) #1

Hello every one, we would like to submit you a new plugin we have developed for SonarQube. Here come required information:

Thanks a lot for taking a look on this plugin.


(G Ann Campbell) #2

Hi,

That’s not quite how it works. :slight_smile:

The Plugin Library lists plugins in the Marketplace. Here are the requirements for that: https://docs.sonarqube.org/display/DEV/Deploying+to+the+Marketplace

At a glance, your plugin key doesn’t conform to the requirements. Also, we’ll need to test. Can you point me to an appropriate set of projects to do that with? Even better if you already have handy the reports to import.

Ann


(Benoît Garçon) #3

I have edited the post and the plugin according to your answer.

Here is an example: example. Just run an analysis over this project with the updated plugin.

Thanks for the time spent on it.

Benoît


(G Ann Campbell) #4

Hi Benoit,

(Sorry, I don’t know how to type the special ‘i’.)

This works nicely and generally looks well put together, and I think this can probably go into the Marketplace as-is, but before I add it, I’d like to clarify a few points:

  • It looks like all the Fortran rules, for both ‘languages’, have descriptions of “Unreferenced rule”. Was that on purpose? Rule descriptions are there to help users understand what they’re doing wrong, and are particularly helpful in cases like this, where I guess a specific format is expected:
    Selection_999(236)

  • You’ve tagged a number of rules with either ‘f77’ or ‘f90’. Was it just to have some tag on each rule? If so, I’d advise against it; it’s redundant with the language (mostly) yet its presence on some rules and not others is likely to be confusing

  • You’ve tagged some Fortran 90 rules and one Shell rule with ‘f77’. Was this in error?

  • You’ve added a Nesting metric. It’s not clear to me what it’s about, but in case it’s relevant to one of the existing metric categories, you’re free to put it there instead of creating a new one.

  • I got the following in my analysis log, and “0.00%” for duplications in my project: “INFO: Calculating CPD for 0 files”. It might be worth taking another look at since I think how duplications are calculated is mostly language-independent and maybe not something you have to do (altho to be honest, I really don’t know).

Ann


(Benoît Garçon) #5
  • It looks like all the Fortran rules, for both ‘languages’, have descriptions of “Unreferenced rule”. Was that on purpose? Rule descriptions are there to help users understand what they’re doing wrong, and are particularly helpful in cases like this, where I guess a specific format is expected

There are no descriptions for now for Fortran rules. We will work on adding some.

  • You’ve tagged a number of rules with either ‘f77’ or ‘f90’. Was it just to have some tag on each rule? If so, I’d advise against it; it’s redundant with the language (mostly) yet its presence on some rules and not others is likely to be confusing

It was to differentiate f77 & f90 rules when there was only one Fortran language. Tag can be removed.

  • You’ve added a Nesting metric. It’s not clear to me what it’s about, but in case it’s relevant to one of the existing metric categories, you’re free to put it there instead of creating a new one.

Nesting represents the maximum number of nesting blocks. Maybe it could be added in ‘Size’ category?

  • I got the following in my analysis log, and “0.00%” for duplications in my project: “INFO: Calculating CPD for 0 files”. It might be worth taking another look at since I think how duplications are calculated is mostly language-independent and maybe not something you have to do (altho to be honest, I really don’t know).

This plugin only imports i-Code issues, i-Code does not calculate duplications. If there is a SonarQube API to simply calculate them we can add CPD to the plugin.

Benoît


(Benoît Garçon) #6

I have edited the post and the plugin according to the first three points.

The new version integrate your feedback except for duplications that needs to be discussed for a next major version. It won’t be supported for this one.

Benoît


(G Ann Campbell) #7

Hi,

You’re in!

:slight_smile:
Ann


(Benoît Garçon) #8

Great :slight_smile: Thank you for all the time spent on this plugin.

Benoît