Jump to content

SonarQube: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
→‎Overview: Removing promotional content
Tags: references removed Mobile edit Mobile web edit
mNo edit summary
Line 1: Line 1:
{{short description|Open-source platform for continuous inspection of code quality}}
{{short description|Open-source platform for continuous inspection of code quality}}
{{Multiple issues|
{{Multiple issues|
{{Advert|date=October 2020}}
{{Advert|date=October 2020}}
{{Self-published|date=September 2021}}
{{Self-published|date=September 2021}}
{{lead extra info|date=September 2021}}
{{lead extra info|date=September 2021}}
}}
}}

{{Infobox software
{{Infobox software
| name = SonarQube
| name = SonarQube
Line 25: Line 24:
}}
}}


'''SonarQube''' (formerly '''Sonar''')<ref>{{cite web | url=http://sonar.15.x6.nabble.com/SONAR-is-becoming-SONARQUBE-td5010134.html | title=SONAR is becoming SONARQUBE | publisher=SonarQube project mailing list | date=20 March 2013 | accessdate=3 July 2013 | author=Freddy Mallet | url-status=dead | archive-date=24 July 2013 | archive-url=https://web.archive.org/web/20130724075005/http://sonar.15.x6.nabble.com/SONAR-is-becoming-SONARQUBE-td5010134.html }}</ref> is an [[open-source software|open-source]] platform developed by [[SonarSource]] for continuous inspection of [[software quality|code quality]] to perform automatic reviews with static [[static program analysis|analysis of code]] to detect [[software bug|bugs]] and [[code smell]]s on 29 [[programming language]]s. SonarQube offers reports on [[duplicate code|duplicated code]], [[programming style|coding standards]], [[unit testing|unit tests]], [[code coverage]], [[cyclomatic complexity|code complexity]], [[comment (computer programming)|comments]], [[defensive programming|bugs]], and security recommendations.<ref name=methodsandtools>{{cite magazine|title =Sonar |magazine = Methods and Tools |date = 2010-03-01|url = http://www.methodsandtools.com/PDF/mt201001.pdf|accessdate = 2017-08-29|volume=18|issue=1 |issn=1661-402X |pages=40–46}}</ref><ref name="sonarinaction">{{cite book |last=Campell/Papapetrou |first=Ann/Patroklos |title=Sonar (SonarQube) in action |publisher=Manning Publications |year=2013 |location= Greenwich, Connecticut, USA |isbn= 978-1617290954| pages=350}}</ref>
'''SonarQube''' (formerly '''Sonar''')<ref>{{cite web|url=http://sonar.15.x6.nabble.com/SONAR-is-becoming-SONARQUBE-td5010134.html|title=SONAR is becoming SONARQUBE|publisher=SonarQube project mailing list|date=20 March 2013|access-date=3 July 2013|author=Freddy Mallet|url-status=dead|archive-date=24 July 2013|archive-url=https://web.archive.org/web/20130724075005/http://sonar.15.x6.nabble.com/SONAR-is-becoming-SONARQUBE-td5010134.html}}</ref> is an [[open-source software|open-source]] platform developed by [[SonarSource]] for continuous inspection of [[software quality|code quality]] to perform automatic reviews with static [[static program analysis|analysis of code]] to detect [[software bug|bugs]] and [[code smell]]s on 29 [[programming language]]s. SonarQube offers reports on [[duplicate code|duplicated code]], [[programming style|coding standards]], [[unit testing|unit tests]], [[code coverage]], [[cyclomatic complexity|code complexity]], [[comment (computer programming)|comments]], [[defensive programming|bugs]], and security recommendations.<ref name="methodsandtools">{{cite magazine|title=Sonar|magazine=Methods and Tools|date=2010-03-01|url=http://www.methodsandtools.com/PDF/mt201001.pdf|accessdate=2017-08-29|volume=18|issue=1|issn=1661-402X|pages=40–46}}</ref><ref name="sonarinaction">{{cite book|last=Campell/Papapetrou|first=Ann/Patroklos|title=Sonar (SonarQube) in action|publisher=Manning Publications|year=2013|location=Greenwich, Connecticut, USA|isbn=978-1617290954|pages=350}}</ref>


SonarQube provides automated analysis and integration with [[Apache Maven|Maven]], [[Apache Ant|Ant]], [[Gradle]], [[MSBuild]] and [[continuous integration]] tools.<ref name="jteam">{{cite web|title = Measuring Code Quality With Sonar|last = Buijze|first = Allard|date = 2010-02-26|url = http://blog.jteam.nl/2010/02/26/measuring-code-quality-with-sonar/|accessdate = 2017-08-29|url-status = dead|archive-date = 2011-08-12|archive-url = https://web.archive.org/web/20110812151637/http://blog.jteam.nl/2010/02/26/measuring-code-quality-with-sonar/}}</ref><ref name="g3global">{{cite web|title = Continuous Integration on SAP using Subversion, Maven, Hudson, Nexus and Sonar|last = Odendaal|first = René|date = 2009-06-24|url = http://www.g3it.com/blog/technical/continuous-integration-on-sap-using-subversion-maven-hudson-nexus-and-sonar/|accessdate = 2017-08-29|archive-date = 2012-07-24|archive-url = https://web.archive.org/web/20120724002206/http://www.g3it.com/blog/technical/continuous-integration-on-sap-using-subversion-maven-hudson-nexus-and-sonar/|url-status = dead}}</ref><ref name="slideshare">{{cite web|title = How can you improve, harmonize and automate your development process using tools like Maven, Hudson, and Nexus?|last = Smart|first = John|date = 2010-03-14|url = http://www.slideshare.net/wakaleo/how-can-you-improve-harmonize-and-automate-your-development-process-using-tools-like-maven-hudson-and-nexus-this-presentation-is-a-highlevel-overview-of-java-software-development-process-improvement-3321091|accessdate = 2017-08-29}}</ref>
SonarQube provides automated analysis and integration with [[Apache Maven|Maven]], [[Apache Ant|Ant]], [[Gradle]], [[MSBuild]] and [[continuous integration]] tools.<ref name="jteam">{{cite web|title=Measuring Code Quality With Sonar|last=Buijze|first=Allard|date=2010-02-26|url=http://blog.jteam.nl/2010/02/26/measuring-code-quality-with-sonar/|accessdate=2017-08-29|url-status=dead|archive-date=2011-08-12|archive-url=https://web.archive.org/web/20110812151637/http://blog.jteam.nl/2010/02/26/measuring-code-quality-with-sonar/}}</ref><ref name="g3global">{{cite web|title=Continuous Integration on SAP using Subversion, Maven, Hudson, Nexus and Sonar|last=Odendaal|first=René|date=2009-06-24|url=http://www.g3it.com/blog/technical/continuous-integration-on-sap-using-subversion-maven-hudson-nexus-and-sonar/|access-date=2017-08-29|archive-date=2012-07-24|archive-url=https://web.archive.org/web/20120724002206/http://www.g3it.com/blog/technical/continuous-integration-on-sap-using-subversion-maven-hudson-nexus-and-sonar/|url-status=dead}}</ref><ref name="slideshare">{{cite web|title=How can you improve, harmonize and automate your development process using tools like Maven, Hudson, and Nexus?|last=Smart|first=John|date=2010-03-14|url=http://www.slideshare.net/wakaleo/how-can-you-improve-harmonize-and-automate-your-development-process-using-tools-like-maven-hudson-and-nexus-this-presentation-is-a-highlevel-overview-of-java-software-development-process-improvement-3321091|accessdate=2017-08-29}}</ref>


== Overview ==
==Overview==
SonarQube supports the programming languages [[Java (programming language)|Java]] [[Java (programming language)#Android|(including Android)]], [[C Sharp (programming language)|C#]], [[C (programming language)|C]], [[C++]], [[JavaScript]], [[TypeScript]], [[Python (programming language)|Python]], [[Go (programming language)|Go]], [[Swift (programming language)|Swift]], [[COBOL]], [[Apex (programming language)|Apex]], [[PHP]], [[Kotlin (programming language)|Kotlin]], [[Ruby (programming language)|Ruby]], [[Scala (programming language)|Scala]], [[HTML]], [[Cascading Style Sheets|CSS]], [[ABAP]], [[Apache Flex|Flex]], [[Objective-C]], [[PL/I]], [[PL/SQL]], [[IBM RPG|RPG]], [[Transact-SQL|T-SQL]], [[Visual Basic .NET|VB.NET]], [[Visual Basic|VB6]], and [[XML]].<ref>{{cite web|url=https://www.sonarqube.org/features/multi-languages/|title=Multi-Language {{!}} SonarQube|accessdate=2021-01-25}}</ref> As of December 2021, analyzing C, C++, Obj-C, Swift, ABAP, T-SQL, and PL/SQL is only available via a commercial license.
SonarQube supports the programming languages [[Java (programming language)|Java]] [[Java (programming language)#Android|(including Android)]], [[C Sharp (programming language)|C#]], [[C (programming language)|C]], [[C++]], [[JavaScript]], [[TypeScript]], [[Python (programming language)|Python]], [[Go (programming language)|Go]], [[Swift (programming language)|Swift]], [[COBOL]], [[Apex (programming language)|Apex]], [[PHP]], [[Kotlin (programming language)|Kotlin]], [[Ruby (programming language)|Ruby]], [[Scala (programming language)|Scala]], [[HTML]], [[Cascading Style Sheets|CSS]], [[ABAP]], [[Apache Flex|Flex]], [[Objective-C]], [[PL/I]], [[PL/SQL]], [[IBM RPG|RPG]], [[Transact-SQL|T-SQL]], [[Visual Basic .NET|VB.NET]], [[Visual Basic|VB6]], and [[XML]].<ref>{{cite web|url=https://www.sonarqube.org/features/multi-languages/|title=Multi-Language - SonarQube|accessdate=2021-01-25}}</ref> As of December 2021, analyzing C, C++, Obj-C, Swift, ABAP, T-SQL, and PL/SQL is only available via a commercial license.


SonarQube is an open core product for static code analysis, with additional features offered in commercial editions.
SonarQube is an open core product for static code analysis, with additional features offered in commercial editions.


=== SonarLint ===<!--The page SonarLint redirects here-->
===SonarLint===<!--The page SonarLint redirects here-->
SonarQube is expandable with the use of [[plug-in (computing)|plug-ins]]. It integrates with the [[Eclipse (software)|Eclipse]], [[Microsoft Visual Studio|Visual Studio]], [[Visual Studio Code]], and [[IntelliJ IDEA]] development environments through '''SonarLint''' plug-ins, as well as external tools such as [[LDAP]], [[Active Directory]], and [[GitHub]].<ref name="zauber">{{cite web|url=http://blog.code.zauber.com.ar/2009/11/creating-sonar-plugin-for-software.html|title=Creating a Sonar Plugin for software development metrics|author=Mariano|date=2009-11-17|archive-url=https://web.archive.org/web/20100324015505/http://blog.code.zauber.com.ar/2009/11/creating-sonar-plugin-for-software.html|archive-date=March 24, 2010|url-status=dead|access-date=2017-08-29}}</ref><ref name="infoq">{{cite web|url=http://www.infoq.com/news/2010/03/monetizing-technical-debt/|title=Monetizing the Technical Debt|last=Hazrati|first=Vikas|date=2010-03-30|accessdate=2017-08-29}}</ref>
SonarQube is expandable with the use of [[plug-in (computing)|plug-ins]]. It integrates with the [[Eclipse (software)|Eclipse]], [[Microsoft Visual Studio|Visual Studio]], [[Visual Studio Code]], and [[IntelliJ IDEA]] development environments through '''SonarLint''' plug-ins, as well as external tools such as [[LDAP]], [[Active Directory]], and [[GitHub]].<ref name="zauber">{{cite web|url=http://blog.code.zauber.com.ar/2009/11/creating-sonar-plugin-for-software.html|title=Creating a Sonar Plugin for software development metrics|author=Mariano|date=2009-11-17|archive-url=https://web.archive.org/web/20100324015505/http://blog.code.zauber.com.ar/2009/11/creating-sonar-plugin-for-software.html|archive-date=March 24, 2010|url-status=dead|access-date=2017-08-29}}</ref><ref name="infoq">{{cite web|url=http://www.infoq.com/news/2010/03/monetizing-technical-debt/|title=Monetizing the Technical Debt|last=Hazrati|first=Vikas|date=2010-03-30|accessdate=2017-08-29}}</ref>


==Reception==
==Reception==
In 2009, SonarQube received a [[Jolt Awards|Jolt Award]] under the [[Test automation|testing tools]] category.<ref name=jolt>{{cite web|title=Jolt Awards Winners |date=2009-03-18 |url=http://www.joltawards.com/winners.html |access-date=2010-04-13 |url-status=dead |archive-url=https://web.archive.org/web/20100201211611/http://www.joltawards.com/winners.html |archive-date=February 1, 2010 }}</ref><ref name=jolt2>{{cite web|title = Jolt Productivity Award #2: Testing and Debugging|date = 2010-12-01|url = http://www.drdobbs.com/joltawards/228400216|accessdate = 2010-12-09}}</ref>
In 2009, SonarQube received a [[Jolt Awards|Jolt Award]] under the [[Test automation|testing tools]] category.<ref name="jolt">{{cite web|title=Jolt Awards Winners|date=2009-03-18|url=http://www.joltawards.com/winners.html|access-date=2010-04-13|url-status=dead|archive-url=https://web.archive.org/web/20100201211611/http://www.joltawards.com/winners.html|archive-date=February 1, 2010}}</ref><ref name="jolt2">{{cite web|title=Jolt Productivity Award #2: Testing and Debugging|date=2010-12-01|url=http://www.drdobbs.com/joltawards/228400216|accessdate=2010-12-09}}</ref>


==See also==
==See also==

Revision as of 14:19, 21 November 2023

SonarQube
Developer(s)SonarSource
Initial release2006–2007[1]
Stable release
9.9 / February 7, 2023; 19 months ago (2023-02-07)[2]
Repository
Written inJava
Operating systemCross-platform
TypeStatic program analysis
LicenseLesser GNU General Public License
Websitesonarqube.org

SonarQube (formerly Sonar)[3] is an open-source platform developed by SonarSource for continuous inspection of code quality to perform automatic reviews with static analysis of code to detect bugs and code smells on 29 programming languages. SonarQube offers reports on duplicated code, coding standards, unit tests, code coverage, code complexity, comments, bugs, and security recommendations.[4][5]

SonarQube provides automated analysis and integration with Maven, Ant, Gradle, MSBuild and continuous integration tools.[6][7][8]

Overview

SonarQube supports the programming languages Java (including Android), C#, C, C++, JavaScript, TypeScript, Python, Go, Swift, COBOL, Apex, PHP, Kotlin, Ruby, Scala, HTML, CSS, ABAP, Flex, Objective-C, PL/I, PL/SQL, RPG, T-SQL, VB.NET, VB6, and XML.[9] As of December 2021, analyzing C, C++, Obj-C, Swift, ABAP, T-SQL, and PL/SQL is only available via a commercial license.

SonarQube is an open core product for static code analysis, with additional features offered in commercial editions.

SonarLint

SonarQube is expandable with the use of plug-ins. It integrates with the Eclipse, Visual Studio, Visual Studio Code, and IntelliJ IDEA development environments through SonarLint plug-ins, as well as external tools such as LDAP, Active Directory, and GitHub.[10][11]

Reception

In 2009, SonarQube received a Jolt Award under the testing tools category.[12][13]

See also

References

  1. ^ "History | SonarSource". www.sonarsource.com.
  2. ^ "What's New in latest releases | SonarQube". www.sonarqube.org.
  3. ^ Freddy Mallet (20 March 2013). "SONAR is becoming SONARQUBE". SonarQube project mailing list. Archived from the original on 24 July 2013. Retrieved 3 July 2013.
  4. ^ "Sonar" (PDF). Methods and Tools. Vol. 18, no. 1. 2010-03-01. pp. 40–46. ISSN 1661-402X. Retrieved 2017-08-29.
  5. ^ Campell/Papapetrou, Ann/Patroklos (2013). Sonar (SonarQube) in action. Greenwich, Connecticut, USA: Manning Publications. p. 350. ISBN 978-1617290954.
  6. ^ Buijze, Allard (2010-02-26). "Measuring Code Quality With Sonar". Archived from the original on 2011-08-12. Retrieved 2017-08-29.
  7. ^ Odendaal, René (2009-06-24). "Continuous Integration on SAP using Subversion, Maven, Hudson, Nexus and Sonar". Archived from the original on 2012-07-24. Retrieved 2017-08-29.
  8. ^ Smart, John (2010-03-14). "How can you improve, harmonize and automate your development process using tools like Maven, Hudson, and Nexus?". Retrieved 2017-08-29.
  9. ^ "Multi-Language - SonarQube". Retrieved 2021-01-25.
  10. ^ Mariano (2009-11-17). "Creating a Sonar Plugin for software development metrics". Archived from the original on March 24, 2010. Retrieved 2017-08-29.
  11. ^ Hazrati, Vikas (2010-03-30). "Monetizing the Technical Debt". Retrieved 2017-08-29.
  12. ^ "Jolt Awards Winners". 2009-03-18. Archived from the original on February 1, 2010. Retrieved 2010-04-13.
  13. ^ "Jolt Productivity Award #2: Testing and Debugging". 2010-12-01. Retrieved 2010-12-09.