Hello everyone,

I would like to make the source code of the Cassandra project more
visible to people outside of the Cassandra Community and highlight the
typical known issues in new contributions in the GitHub pull-request
interface as well. This makes it easier for those who are unfamiliar
with the accepted code style and just want to be part of a large and
friendly community to add new contributions.

The ASF provides [1] the SonarClound facilities for the open source
project, which are free to use, and we can also easily add the process
of building and uploading reports to the build using GitHub actions
with almost no maintenance costs for us. Of course, as a
recommendation quality tool, it doesn't reject any changes/pull
requests, so nothing will change from that perspective.

I've prepared everything we need to do this here (we also need to
modify the default Sonar Way profile to suit our needs, which I can't
do as I don't have sufficient privileges):
https://issues.apache.org/jira/browse/CASSANDRA-18390

I look forward to hearing your thoughts on this.


Examples:

I did the same way for the Apache Ignite project, and here is how in
the end it may look like.
For the pull-requests queue:
https://sonarcloud.io/project/pull_requests_list?id=apache_ignite

The report itself for a pull request (the aggregation is used):
https://github.com/apache/ignite/pull/10769

The main branch quality gate profile:
https://sonarcloud.io/summary/overall?id=apache_ignite


In addition to this:

A developer can configure the SonarLint IDE plugin (available for
IntelliJ IDEA, Eclipse) to retrieve Cassandra's quality profiles and
configured rules from the sonarcloud.io resource and highlight any
violated warnings locally, making it easier to develop a new patch.


[1] 
https://cwiki.apache.org/confluence/display/INFRA/SonarCloud+for+ASF+projects

Reply via email to