SonarQube Community Build new versioning scheme / plugin support

Hi,

As a result, SonarQube Community Build will adopt a new versioning scheme separate from our commercial versions.

  1. How is this working with plugins? Are plugins still supporting the Community and the Commercial edition?
  2. How is this working with the advanced build properties version and pluginApiMinVersion?

Thanks for your answer.

Regards,
Günter

1 Like

Maybe also interesting: How the Community Build is handled here:

Hi,

Excellent question! In fact, plugins will need to declare compatibility with Community Build and SonarQube Server separately. (The property file repo README has been updated accordingly.) We’ll produce two separate compatibility matrices (here the Community Build one)

version is just the version of the plugin itself. It is entirely unaffected.

I believe SonarQube Server and SonarQube Community Build will (continue to) share the same plugin API. So this should also be unaffected.

 
HTH,
Ann

Hi,

thanks for your answer.

To be more precise, the question is about sonar.version. Here I can use 24.12.0.100206 (Community Build) or 10.8.0.100206 (SonarQube Server) now. What is the right approach?

    <sonar.version>24.12.0.100206</sonar.version>
    <sonar.plugin.api.version>10.14.0.2599</sonar.plugin.api.version>
    <pluginApiMinVersion>9.14.0.375</pluginApiMinVersion>

      <dependency>
        <groupId>org.sonarsource.api.plugin</groupId>
        <artifactId>sonar-plugin-api</artifactId>
        <version>${sonar.plugin.api.version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.sonarsource.api.plugin</groupId>
        <artifactId>sonar-plugin-api-test-fixtures</artifactId>
        <version>${sonar.plugin.api.version}</version>
      </dependency>
      <dependency>
        <groupId>org.sonarsource.sonarqube</groupId>
        <artifactId>sonar-plugin-api-impl</artifactId>
        <version>${sonar.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.sonarsource.sonarqube</groupId>
        <artifactId>sonar-testing-harness</artifactId>
        <version>${sonar.version}</version>
        <scope>test</scope>
      </dependency>

Regards,
Günter

Hi Guenter,

Thanks for the clarification. I could guess, but I won’t put either of us through that. I’m going to flag this for the the folks who don’t have to guess.

 
Ann

Hi Günter,
thanks for your question,

On the SonarQube Server and SonarQube Community Build side we don’t use the value of the sonar.version property when loading the plugin. It is not even carried over to MANIFEST.MF.

But I think your doubts are more about which version of sonar-testing-harnesss and sonar-plugin-api-impl you should use for testing. Here, I would recommend to use the Community Build artifacts as they will likely be released more often. And at the same time, these are the only artifacts that are available in mvnrepository [harness] [plugin-api-impl].

On our side, we will verify internally whether we could improve our documentation for plugin development in this area.

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.