Download

3.5.1 April 3, 2013 Fix two regressions when using Sonar Runner to perform analyses in specific cases. (release notes, screenshots) Download (md5)
3.5 March 13, 2013 Tracking of unit tests, new rules on unit tests, new exclusion settings, enhanced update center, enhanced email notifications (release notes, screenshots)
3.4.1 Jan. 8, 2013 Fix a critical security bug on project permissions (release notes) Download (md5)
3.4 Dec. 22, 2012 New service to query measures, ability to compare projects, list of recent projects, alerts on measure variations (release notes, screenshots)
3.3.2 Nov. 21, 2012 Fix compatibility with Postgres 8 (release notes) Download (md5)
3.3.1 Nov. 07, 2012 Bug fixes release (release notes) Download (md5)
3.3 Oct. 24, 2012 Support of modules with different languages, overall coverage by unit and integration tests, enhanced file exclusions, new Java rules (release notes, screenshots) Download (md5)
3.2.1 Oct. 3, 2012 Bug fix release (release notes) Download (md5)
3.2 Aug. 6, 2012 New rules to define thresholds on coverage, comments, etc., Selection of quality profile by project administrators, Bulk deletion of projects, Ability to change project key, New period ‘Since Previous Version’ for differential views (release notes, screenshots) Download (md5)
3.1.1 June 25, 2012 Bug fix release (release notes, screenshots) Download (md5)
3.1 June 13, 2012 Global dashboards, Findbugs 2.0, rules for unit tests (release notes, screenshots) Download (md5)
3.0.1 May 14, 2012 Bug fixes release(release notes, screenshots) Download (md5)
3.0 April 17, 2012 Encryption of database password, TimeMachine available as widgets, New algorithm for tracking violations, 40 bugs and 40 improvements (release notes, screenshots) Download (md5)
2.14 March 19, 2012 Detection of cross-project duplications for all languages, add notes to rules, retrieve user information from third-party systems, email notification on new violations, enhanced treemaps (release notes, screenshots) Download (md5)
2.13.1 Jan. 31, 2012 Fix bug during migration (release notes) Download (md5)
2.13 Jan. 17, 2012 New search engine, review any piece of code, ability to change severity of violations, group reviews by action plans, new widgets to track project activity (release notes, screenshots) Download (md5)
2.12 Nov. 30, 2011 Support Java7 projects, new hotspot widgets, improve detection of duplications, better handling of project events, improve LCOM4 (release notes, screenshots) Download (md5)
2.11 Oct. 3, 2011 Sonar CPD to check cross project duplications, TimeMachine 2.0, suppress analysis snapshots, Sonar Server ID (release notes, screenshots) Download (md5)
2.10 Aug. 18, 2011 Internationalization, email notifications for review changes, improvement of manual measures (release notes, screenshots) Download (md5)
2.9 Jul. 18, 2011 Improve manual code reviews, track Quality Profile changes (release notes, screenshots) Download (md5)
2.8 May 19, 2011 Manual code review, analysis of Ant multi-modules projects, new tool to compare Quality profiles (release notes, screenshots) Download (md5)
Show all releases

Installation

Please read the installation and upgrade guide.

License

Sonar is distributed under the GNU Lesser GPL License, Version 3, under Swiss law. You may not use this application except in compliance with the License. You may obtain a copy of the License at http://www.gnu.org/licenses/lgpl.txt. The original GNU license from which this lesser license is derived can be found here. By downloading Sonar software, you agree to the terms of this Lesser GPL v.3 license and that you are entering into a license agreement with a company located in Switzerland. Unless required by Swiss law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Release Notes – Sonar – Version 3.5.1

Bug

  • [SONAR-4211] – This is no more possible to use the Sonar Runner or the Sonar Ant task with a secured Sonar instance (sonar.forceAuthentication=true)
  • [SONAR-4222] – Application context not respected in batch_bootstrap redirect

Release Notes – Sonar – Version 3.5

Sub-task

  • [SONAR-4092] – From a unit test allow to access to the lines covered by this unit test
  • [SONAR-4093] – From a covered line of code provide the ability to retrieve the unit tests covering this line
  • [SONAR-4094] – On each source file, provide the ability to list all unit tests covering at least one line of code in this source file

Bug

  • [SONAR-2965] – Sonar analysis is affected by connection timeout
  • [SONAR-3441] – Incorrect alignment of checkboxes for notification channels ("My profile" page)
  • [SONAR-3612] – Custom servlet filters are not loaded after database upgrade
  • [SONAR-3820] – Error when calling /api/violations webservice API
  • [SONAR-3837] – The Sonar violation tracking mechanism hangs and consumes lot of memory when a source file containing lot of violations on a rule is updated
  • [SONAR-3843] – Unable to determine structure of Maven project
  • [SONAR-3909] – % and _ should be taken into account as any other character by the search engine
  • [SONAR-3932] – problems with "Raw" link in Violations drilldown for user without Code Viewer role
  • [SONAR-3981] – Column sort broken on project_reviews page
  • [SONAR-3990] – The behavior of the "project" selector component is broken when adding several instances of the same project widget to a global dashboard
  • [SONAR-3991] – The behavior of the metric selector component is broken when adding several instances of the same project widget to a global dashboard
  • [SONAR-4009] – The behavior of "previous_version" option to define a differential view depends on the content of the snapshot.version column but not of the events table
  • [SONAR-4012] – Missing html escape in project name
  • [SONAR-4037] – If a pending updated Measures filter is "saved" without having first "Closed" the "Change Columns" section most last column changes are lost
  • [SONAR-4060] – The Settings page is not available on modules
  • [SONAR-4064] – No way to edit a user when its password is empty
  • [SONAR-4065] – During migration of measure filter to Sonar 3.4, the criteria 'Inspected within the last' and 'Inspected more than' have been switched
  • [SONAR-4107] – Deleting a quality profile leads to removing all associations between quality profiles and projects
  • [SONAR-4108] – Always display the full project name in the resource viewer title
  • [SONAR-4137] – Schema initialization error with MySQL 5.6 due to max index key length violation
  • [SONAR-4140] – An HTTP timeout exception might be thrown when launching a Sonar analysis on big project
  • [SONAR-4153] – If a language plugin defines default value for "sonar.cpd.<key>.minimumTokens", this value is never used

Improvement

  • [SONAR-2760] – Ability to exclude source folders from source code analysis (the same way it's possible to exclude some packages for instance)
  • [SONAR-3317] – The dry run mode doesn't support the tracking of violations
  • [SONAR-3434] – Drilldown: Allow files to be opened in new tabs
  • [SONAR-3583] – Violation tracking mechanism should load missing rule IDs
  • [SONAR-3692] – Add new widget property types
  • [SONAR-3739] – ProjectFileSystem#getBuildOutputDir() should return a list of folders
  • [SONAR-3860] – Improve the Sonar Source Code Importer to filter BOM character
  • [SONAR-3884] – Roles & Filters use different alphabetization
  • [SONAR-3948] – The bulk deletion page should allow to delete a project definition which doesn't have any associated quality snapshots
  • [SONAR-3959] – Extensible email distribution
  • [SONAR-3992] – Use a dynamic component to select a metric in the Quality Profile / Alert page
  • [SONAR-3999] – Handle error when a truncated license key is entered
  • [SONAR-4003] – Make the "Action Plans" widget support a new option to display or not the closed reviews in each action plan
  • [SONAR-4025] – add filter description to filter widget
  • [SONAR-4027] – The isn't any input field having the focus when opening a modal window with Internet Explorer
  • [SONAR-4031] – In the Compare service, it should always be possible to select the "LASTEST" snapshot even if there isn't any version on a project
  • [SONAR-4032] – Add the 'sonar.skippedModules' property to the Settings>Exclusions page
  • [SONAR-4036] – Do not filter the unit test source files in the 'Components' page
  • [SONAR-4042] – When saving a Measure Filter from a page which is not the first result page, this page is always displayed by default
  • [SONAR-4048] – improve access denied message during analysis
  • [SONAR-4053] – The semaphore mechanism should automatically detect when an other semaphore is outdated and so can/should be ignored
  • [SONAR-4055] – Keep "conditions_to_cover" and "conditions_by_line" measure history
  • [SONAR-4067] – Remove compatibility with deprecated packaging of plugins
  • [SONAR-4068] – Upgrade to Rails 2.3.15
  • [SONAR-4070] – Sonar API doesn't cater for specifying attributes for XML tags in Maven plugin configuration
  • [SONAR-4071] – Make it possible to localize the widget property keys
  • [SONAR-4078] – When having a lot of projects (let's say > 1'000) and when using Oracle, displaying the list of all projects can be really long and CPU intensive
  • [SONAR-4081] – Improve the way rule keys are shown on the quality profile page
  • [SONAR-4088] – Sort available widgets by name when editing a dashboard
  • [SONAR-4098] – Use a new "pop-up/detach" icon to indicate that a new window containing a resource viewer can be detached
  • [SONAR-4100] – Provide the ability for a Sonar user to activate an email notification per project
  • [SONAR-4102] – 'Organisation' field on 'Server ID' tab must not accept special characters
  • [SONAR-4110] – Log server ID, when it exists, at startup
  • [SONAR-4127] – Remove the empty directories /extensions/rules/checkstyle|pmd from distribution
  • [SONAR-4129] – Few new icons
  • [SONAR-4138] – Deleting a manual metric should lead to deactivate the metric in the Sonar DB and not to fully drop it
  • [SONAR-4160] – Add violation data to dry run json report

New Feature

  • [SONAR-1896] – File inclusion patterns
  • [SONAR-2227] – Manage dependency of a plugin on an group (parent plugin)
  • [SONAR-2291] – Provide a way to locally cache Sonar dependencies on file system from one Sonar analysis to another
  • [SONAR-2501] – Provide ability to record and display line coverage per test
  • [SONAR-2746] – Email new alerts
  • [SONAR-3108] – Provide a way to exclude some source files from the duplication detection mechanism
  • [SONAR-3976] – Introduce the concept of plugin group (ex Java and .Net)
  • [SONAR-4087] – Java API to handle tests

Task

  • [SONAR-4112] – Remove the unused/deprecated metrics "Complexity/paragraph" and "Paragraph"

Release Notes – Sonar – Version 3.4.1

Bug

  • [SONAR-4050] – The roles on each project are re-initialized with the default values as soon as the project is analyzed

Release Notes – Sonar – Version 3.4

Bug

  • [SONAR-2712] – Sonar breaks while trying to persist long versions
  • [SONAR-3703] – Can not display a filter name with special characters
  • [SONAR-3752] – Multiple successive and identical lines should not be detected as being part of a duplication
  • [SONAR-3767] – Rendering issue in dashboard with user-defined filter
  • [SONAR-3788] – When doing a "Change password" action in the Users administration page, all "deactivated" users are displayed
  • [SONAR-3790] – When searching for a project, this project appears in the result list as many times as there are some occurrences of the substring to be searched
  • [SONAR-3805] – Cannot load the project bulk deletion page when there are more than 1,000 projects
  • [SONAR-3855] – anonymous users, filters based on "favourites only" in global dashboards, cause exception "Can not render widget filter: undefined method `favourite_ids' for nil:NilClass"
  • [SONAR-3873] – When deleting a manual metric all relating manual measures MUST be deleted
  • [SONAR-3883] – Reuse auto-generated keys in property sets
  • [SONAR-3889] – Some rows in the table AUTHORS are duplicated
  • [SONAR-3896] – The last empty line of source file is not displayed in the source code viewer
  • [SONAR-3897] – The "Compare Profiles" service doesn't filter disable rules
  • [SONAR-3926] – Incorrect links to violations in Violations Drilldown when coming from the Hotspots page
  • [SONAR-3930] – Backup of settings then restore to a new Sonar instance can cause deployment failures
  • [SONAR-3937] – Reviews search – project select box exposes all projects instead of projects that user has rights to see
  • [SONAR-3952] – I18n mechanism should work with "basePlugin" packaging property
  • [SONAR-3955] – Projects are sometimes diplayed many times when using "search" in the roles view
  • [SONAR-3956] – Roles service in project is not called in a standard way
  • [SONAR-3969] – Replace "Previous" by "First" in the pagination footer of the filter page

Improvement

  • [SONAR-812] – Add the possibility to filter resources by language in the Sonar Web Service API
  • [SONAR-1352] – Create alerts based on differential view measures
  • [SONAR-1677] – Add the ability to override criteria of filters when anonymous
  • [SONAR-2835] – Ability to copy measure filters
  • [SONAR-2911] – Add the possibility to compare X versions of a project
  • [SONAR-3021] – Display "Compare profiles" link also if not logged in or not an admin
  • [SONAR-3111] – Ability to add a description to a measure filter
  • [SONAR-3306] – Use a semaphore to prevent launching several analysis of the same project at the same time
  • [SONAR-3325] – Searching for files when package names are too longs
  • [SONAR-3399] – Move all server-side temporary files to $SONAR_HOME/tmp
  • [SONAR-3766] – The "Roles" page should be displayed on Developer resource when a user is administrator of those resources
  • [SONAR-3792] – When renaming a manual metric, the key of this manual metric must not change
  • [SONAR-3797] – Size of the name column in the groups table is too short
  • [SONAR-3807] – Do not expand description during disable/enable rule
  • [SONAR-3824] – Display metric abbreviations in the filter column header and not the metric names
  • [SONAR-3830] – Make configurable the thread pool of the embedded Jetty server
  • [SONAR-3831] – Displaying project key in "Bulk deletion"
  • [SONAR-3841] – In the "Description" widget we should display the the language name and not the language key
  • [SONAR-3866] – Remove the misleading and useless "… JVM BUG(s) …." logs generated by the Jetty service
  • [SONAR-3887] – API: new database semaphores
  • [SONAR-3888] – The ordering of the languages should be case insensitive on the quality profiles page
  • [SONAR-3898] – API: add methods getFloat() and getDouble() to org.sonar.api.config.Settings
  • [SONAR-3904] – Enter key adds input rows where it shouldn't
  • [SONAR-3919] – The "Bulk Deletion" page shouldn't use '%' in the ResourceIndex DB request
  • [SONAR-3923] – API: server-side extension providers can't access to core components
  • [SONAR-3933] – ws-client: upgrade minimal version of httpclient 4.2
  • [SONAR-3934] – Extract PMD, Checkstyle, Surefire, JaCoCo and Cobertura plugins into Sonar Java project
  • [SONAR-3936] – Add a pagination mechanism to the Quality Profile page
  • [SONAR-3938] – Extend the default size of the snapshots.path column to make it possible for a Maven project or a View to have a deep depth of modules
  • [SONAR-3939] – Improve logs when detection of cross-project duplications is disabled
  • [SONAR-3940] – API: allow property relocation
  • [SONAR-3941] – Two new properties 'sonar.login' and 'sonar.password' are required on batch side when server can't be reached anonymously
  • [SONAR-3942] – Display keys of the installed plugins
  • [SONAR-3945] – Drop GWT API
  • [SONAR-3946] – API: add search engine to Java WS client
  • [SONAR-3949] – Extract FindBugs plugin into Sonar Java project
  • [SONAR-3950] – Populate MANIFEST of ws-client library with required osgi entries
  • [SONAR-3963] – The script in charge to produce sonar.war generates a misleading message about the sonar home directory
  • [SONAR-3966] – Replace the expand/collapse link by 2 separated links
  • [SONAR-3972] – Refactor the top navigation bar to create a "Tools" menu, a Quality Profiles link, …
  • [SONAR-3984] – Provide a ruby API to be able to get the lastest measures on a/some project(s)(resources)
  • [SONAR-3986] – Add metric descriptions as tooltips on measure filter columns
  • [SONAR-3987] – Add the Welcome widget
  • [SONAR-3989] – Remove the treemap of the Components page
  • [SONAR-4002] – Display widget properties in the same order than the annotations @WidgetProperty

New Feature

  • [SONAR-37] – Provide a way to launch a comparison between few projects
  • [SONAR-1803] – Ability to override the code coverage engine per language
  • [SONAR-2342] – Provide a way to quickly come back to a ressource which has been recently browsed
  • [SONAR-3825] – Refactor the "Filters" page and rename it "Measures"
  • [SONAR-3862] – Provide a link to all "Projects", "Views", "Developers", … from the top navigation bar
  • [SONAR-3895] – Fully refactor the Dry Run mode to remove all the current limitations

Task

  • [SONAR-3786] – Rewrite the "Tests" tabulation in the source viewer to drop use of GWT

Release Notes – Sonar – Version 3.3.2

Bug

  • [SONAR-3944] – Measure filters fail with PostgreSQL 8
  • [SONAR-3960] – Cross-project duplications fail on Postgres 8.3

Release Notes – Sonar – Version 3.3.1

Bug

  • [SONAR-3903] – Error when a duplication is detected on a filename containing XML entities like ampersand
  • [SONAR-3907] – Can not render widget filter after upgrade to Sonar 3.3
  • [SONAR-3910] – Sonar startup crashes due to French Translation Pack
  • [SONAR-3912] – Missing keys in the Core bundle
  • [SONAR-3929] – Database upgrade fails

Release Notes – Sonar – Version 3.3

Release Notes – Sonar – Version 3.3

Bug

  • [SONAR-2444] – DuplicatedSourceException when using package-info.java file in source package and test package of same name
  • [SONAR-2838] – When editing the integer value of a manual measure, the edition mode display a double value
  • [SONAR-2953] – Display Issue in "Chidamber Kemerer Widget" when used in 1/3 part of layouts
  • [SONAR-3066] – Metric "comment lines" is badly computed in case if comment on first line, but not the first comment
  • [SONAR-3542] – Recover from Oracle connection failures
  • [SONAR-3549] – From the dependencies page, when selecting a library whose source code has been analysed, the bread crumb is unexpectedly updated
  • [SONAR-3597] – On manual measures, "Last change by" field is never updated
  • [SONAR-3599] – If a default provided quality profile is renamed, this profile is deleted but any link to the old profile is kept in the projects table
  • [SONAR-3605] – Update the link "More information" in General Settings > Encryption
  • [SONAR-3641] – The DBCleaner fail purging the project_measures table when there are more than 2'000 rows in the characteristics table
  • [SONAR-3699] – Findbugs need update to 2.0.1 for "java.text.ParseException: Unparseable date: "12/20/2011 09:17 PM EST"
  • [SONAR-3701] – Upgrade to JaCoCo 0.5.10
  • [SONAR-3707] – Avoid to have two default quality profiles for the same language
  • [SONAR-3712] – Incorrect computation of metric "statements" in some cases
  • [SONAR-3716] – When renaming a quality profile, special characters are displayed in html
  • [SONAR-3722] – Misleading exception message when no l10n of rule name
  • [SONAR-3723] – Bad rendering of widget properties
  • [SONAR-3726] – Cobertura can be executed even if project language not Java
  • [SONAR-3729] – Checkstyle rule "TrailingComment" doesn't work
  • [SONAR-3734] – Case insensitive sorting of quality profiles
  • [SONAR-3740] – Typo on General Settings > Server ID > Fixed IP Addresses
  • [SONAR-3741] – The plugin upgrades that are available in Update Center are not compatible with Sonar Release Candidates
  • [SONAR-3743] – Unable to parse Java source file
  • [SONAR-3746] – Measures relating to reviews are not computed on Unit Tests
  • [SONAR-3756] – Typo in the 'Upgrade database' page
  • [SONAR-3765] – The backslash character '\' is automatically duplicated by Sonar when defining a rule property value
  • [SONAR-3769] – When a rule doesn't have a description, a quality profile containing this rule can't be displayed when using Oracle DB
  • [SONAR-3775] – Regression: SonarException when a project does not contain any file in its source folders
  • [SONAR-3782] – Content type is missing on the URL /batch/*
  • [SONAR-3783] – Core plugin not able to have his own l10n bundle
  • [SONAR-3793] – Complexity for abstract and interface methods should be zero
  • [SONAR-3794] – Incorrect computation of complexity for class, which contains several initialization blocks
  • [SONAR-3800] – The Timeline widget generates many warnings
  • [SONAR-3808] – Status codes of /api/server are not up-to-date in wsclient
  • [SONAR-3819] – Use the "options" parameter on @WidgetProperty to filter metrics
  • [SONAR-3822] – Error on Active reviews per developer widget
  • [SONAR-3838] – The widget "Most violated resources" generates an exception when used on a "Developer" resource
  • [SONAR-3876] – Backslash characters are duplicated on PostgreSQL 9.1

Improvement

  • [SONAR-968] – Clicking on the lowest level in the resource explorer does not highlight it in blue
  • [SONAR-1078] – General exclusion patterns
  • [SONAR-2325] – The Findbugs plugin should offer a way to filter bugs whose probability is not high enough
  • [SONAR-2392] – Combining code coverage results of integration and unit tests for a module
  • [SONAR-2804] – JaCoCo : Offer way to merge code-coverage unit vs. it-tests
  • [SONAR-3065] – API: add jQuery
  • [SONAR-3345] – Do not update existing Quality profiles on server restart/upgrade
  • [SONAR-3435] – Upgrade to JRuby 1.6.7
  • [SONAR-3529] – API: ability to define property sets
  • [SONAR-3563] – Add a link on the project name when a project widget is displayed in a global dashboard
  • [SONAR-3591] – Split the Chidamber & Kemerer widget into two distinct widgets
  • [SONAR-3600] – Support Checkstyle rules ClassTypeParameterName and MethodTypeParameterName
  • [SONAR-3621] – Performance of filters are highly impacted when defining a criteria or a default metric to sort the results on
  • [SONAR-3623] – API : support modal windows
  • [SONAR-3631] – Use SSLR-based parser to compute metrics for Java projects
  • [SONAR-3636] – Add and feed a new column projects.created_at
  • [SONAR-3640] – For filters, the minimum page size should not be limited at 20 (but at 5)
  • [SONAR-3650] – Do not display "New XXX" metrics in the metric property lists of the "history" widgets
  • [SONAR-3651] – It should not be possible to select the differential metrics (New XXX) in the "Custom Measures" widget
  • [SONAR-3675] – Refactor the Events widget to prevent using AJAX
  • [SONAR-3676] – Create properties to define project links (CI, Issue tracker, Scm, …) for non Maven projects
  • [SONAR-3683] – Remove the deprecated "SCM" metrics "Commits", "Last Commit" and "Days Since Last Commit"
  • [SONAR-3693] – SquidClassLoader should ignore non JAR-files
  • [SONAR-3698] – API : ability to execute scripts without enough permissions
  • [SONAR-3704] – API : remove the component org.sonar.api.utils.ServerHttpClient
  • [SONAR-3706] – API : remove the deprecated annotation org.sonar.check.Check
  • [SONAR-3708] – Improve the error stack trace when a StackOverflowError is raised when trying to match a regular expression in the Sonar Channel
  • [SONAR-3724] – API: allow to validate rule repositories in unit tests
  • [SONAR-3736] – Use Maven dependencies instead of URLs for I18n Harmcrest matchers
  • [SONAR-3737] – Upgrade to Rails 2.3.14
  • [SONAR-3738] – Improve performance of filters without criteria
  • [SONAR-3742] – Drop the zoom effect of the complexity chart
  • [SONAR-3750] – Add ability to define some default global source exclusion patterns (property sonar.exclusions)
  • [SONAR-3758] – Make it possible to define some dedicated exclusion patterns on unit test source files
  • [SONAR-3760] – Improve the documentation of the "resource key/name like" filter criteria to make it clear that '%' and '_' have a special meaning
  • [SONAR-3763] – The "sonar.language" property should be available in the Configuration>Settings>Global tab to define the default project language
  • [SONAR-3776] – Provide a WS Api to validate a user's login/password
  • [SONAR-3802] – New top navigation bar
  • [SONAR-3804] – Whatever is the reason, when the SourceCodeImporter can't manage to import a source file, a meaningful message should be logged
  • [SONAR-3811] – New web service to search for resources by name
  • [SONAR-3812] – Enhanced selection of metric properties
  • [SONAR-3815] – Support multi_values properties in the WS Api
  • [SONAR-3823] – Some Java-related initializers are activated even for non-Java projects
  • [SONAR-3826] – API: new extension point PageDecoration
  • [SONAR-3827] – The JaCoCo engine should not be fed with any files whose extensions are different from .class
  • [SONAR-3833] – Ability to edit/delete/rename the quality profiles provided "out-the-box" by plugins
  • [SONAR-3840] – Add web service to list Quality profiles
  • [SONAR-3844] – Drop the support of the deprecated property sonar.light
  • [SONAR-3847] – The web service /api/profiles/backup should not require administrator right

New Feature

  • [SONAR-1984] – Add an extension point to allow adding html in <head>
  • [SONAR-2059] – New rule to detect calls to method File#deleteOnExit
  • [SONAR-2376] – Add an extension point to define a HTML banner
  • [SONAR-2602] – Make it possible to analyse a multi-modules project whose some modules have different language (sonar.language)
  • [SONAR-2686] – New rule "LCOM4 is too high"
  • [SONAR-3672] – Enhanced selection of projects in global dashboards
  • [SONAR-3754] – API: ability to define a cardinality on a property or property set

Task

  • [SONAR-3768] – Deprecate metric comment_blank_lines
  • [SONAR-3777] – Move Sonar Batch Bootstrapper classes from Sonar to Sonar Runner
  • [SONAR-3779] – Drop prototip.js
  • [SONAR-3780] – Drop support of servlet 2.4 servers (Tomcat 5.5)

Wish

  • [SONAR-2203] – Increase the size of the "key" attribute on the Language class

Release Notes – Sonar – Version 3.2.1

Bug

  • [SONAR-3542] – Recover from Oracle connection failures
  • [SONAR-3701] – Upgrade to JaCoCo 0.5.10
  • [SONAR-3773] – When migrating to Sonar 3.2, the default roles on Views are not filled and remain empty
  • [SONAR-3775] – Regression: SonarException when a project does not contain any file in its source folders

Release Notes – Sonar – Version 3.2

Bug

  • [SONAR-3084] – When resizing the browser window, the Timeline widget is not automatically resized
  • [SONAR-3249] – Rule "commented out code line" produces false-positive violations in file headers
  • [SONAR-3336] – valueType.MILLISEC not displayed correctly
  • [SONAR-3419] – API: Unexpected behaviour of AbstractSourceImporter when some methods were overridden
  • [SONAR-3447] – Users with accents in first name are not shown in the "Assign To" list
  • [SONAR-3485] – The Checkstyle JavadocType check does not support 'allowUnknownTags'
  • [SONAR-3493] – Adding a user in Default roles for new Projects empties the Projects list below
  • [SONAR-3539] – When using Jacoco and the Sonar Ant task, the "lines_to_cover" measure is computed on unit tests
  • [SONAR-3550] – Some characters like '"' are badly displayed in the Violations drop down list in the resource viewer
  • [SONAR-3572] – Findbugs plugin should log a violation only on the primary location of a bug instance
  • [SONAR-3579] – Conflict with Ruby local installation
  • [SONAR-3584] – Unable to edit the default "Treemap" filter
  • [SONAR-3590] – When an exception is raised in a ruby widget, the error stack trace is not logged in the sonar.log file
  • [SONAR-3603] – Project roles: users and groups are duplicated
  • [SONAR-3613] – metric_domain.Reviews is missing in core.properties
  • [SONAR-3615] – Avoid using pluralize function for I18N.
  • [SONAR-3653] – Weird branch coverage for new code
  • [SONAR-3665] – Boolean widget properties are not properly saved when editing a widget
  • [SONAR-3669] – Filter widget crashes when end-user has not the role "user"
  • [SONAR-3690] – Bad charset when reading measure text data
  • [SONAR-3702] – API : AnnotationRuleParser does not detect overridden rule parameters

Improvement

  • [SONAR-1608] – Allow adapting artifact and group id of projects
  • [SONAR-1995] – Use multi-lines input for xpath expression in XPath Rule
  • [SONAR-2008] – Enable updates from SNAPSHOT versions for plugins
  • [SONAR-2496] – Support 'previous-version' value for differential views
  • [SONAR-2594] – Modify the Findbugs plugin to use the default locale in order to generate violation message
  • [SONAR-2989] – Support localization API in batch extensions
  • [SONAR-3119] – Improve detection of blocks of commented-out lines of code
  • [SONAR-3416] – Time machine widgets: add a new parameter to display a title
  • [SONAR-3432] – API: define rule property type
  • [SONAR-3451] – Remove the "Chidamber & Kemerer" from the default project dashboard
  • [SONAR-3491] – Extend the content of "Shared" column in the "My xxx Dashboards" pages to display the owner of the shared dashboards
  • [SONAR-3507] – Replace Derby by H2
  • [SONAR-3510] – Make it possible to select a view or a developer when adding a project widget to a global dashboard
  • [SONAR-3512] – Make it possible to create and share a dashboard without following it
  • [SONAR-3516] – Check minimal sonar version required by installed plugins
  • [SONAR-3517] – Allow an project administrator to select the Quality Profile to be used when analyzing the project
  • [SONAR-3531] – The MultilinesDocTokenizer from the sonar-colorizer doesn't allow to use the '>' and '<' characters in the 'endToken' parameter
  • [SONAR-3534] – Allow to import code coverage by ITs even when the jacoco engine is not configured to be the default one
  • [SONAR-3535] – At the bottom of a rule description, display the kee and not the name of the rule engine
  • [SONAR-3536] – Make JaCoCo default coverage engine
  • [SONAR-3538] – Embed the default java SQALE Quality Model for Java
  • [SONAR-3543] – The Sonar analysis must fail when a project has been analysed but the measure 'files' is 0
  • [SONAR-3546] – Revert SONAR-3482 by allowing to delete a filter which is used in a dashboard
  • [SONAR-3548] – Add a field to dynamically filter widgets when editing a dashboard
  • [SONAR-3551] – Formatting issues with the 'General Settings > Email' and 'General Settings > Server ID' tabs
  • [SONAR-3552] – Typos on admin pages
  • [SONAR-3556] – Display only 1 decimal for float measures in the Timeline widget
  • [SONAR-3560] – Remove the "lines_to_cover" metric from the "On new code" section of the "Code coverage" widget
  • [SONAR-3567] – Remove the useless "action" header from the My Filter page : "Add filter", "Manage filters" and "Edit filter"
  • [SONAR-3570] – Make the project "deletion" page working asynchronously to prevent any HTTP timeout
  • [SONAR-3577] – Enable the rule "Avoid commented-out lines of code" by default
  • [SONAR-3581] – Tool to validate a l10n bundle based on multiple plugins
  • [SONAR-3593] – API : new component to get email settings
  • [SONAR-3594] – During migration to Sonar 3.1, if the definition of an active filter doesn't exist, this active filter should be ignored
  • [SONAR-3595] – Support resizing of browser window
  • [SONAR-3596] – Allow I18n mechanism to search for plugin bundles inside the language packs
  • [SONAR-3617] – Improve performance of treemap filters
  • [SONAR-3618] – Support custom default permissions for non-project resources
  • [SONAR-3620] – Define a new TEXT widget/rule property type
  • [SONAR-3624] – Typos in PMD XPath rule template
  • [SONAR-3626] – CommandExecutor : should be possible to specify environment variables
  • [SONAR-3627] – Quality Profile > Coding Rules: Rename "Plugin" into "Repository"
  • [SONAR-3628] – Possibility to customize the title of global widget
  • [SONAR-3633] – Add default permissioning to configuration backup
  • [SONAR-3637] – Upgrade to JaCoCo 0.5.8
  • [SONAR-3646] – API : new extension point to be notified on user creation
  • [SONAR-3660] – The property sonar.updatecenter.url must support local files
  • [SONAR-3661] – API: new component org.sonar.api.utils.UriReader
  • [SONAR-3662] – Remove the property sonar.jdbc.validationQuery
  • [SONAR-3664] – Log sonar/plugins versions and sha1 at startup
  • [SONAR-3671] – Delete noisy log "undefined method `column_layout' for nil:NilClass"
  • [SONAR-3688] – Improve log when loading a plugin that is not compiled for Java 5

New Feature

  • [SONAR-2333] – Create a new Sonar Rule to log a violation for each outgoing dependency that needs to be cut to break a design cycle
  • [SONAR-2614] – Provide a bulk project deletion page
  • [SONAR-3496] – New rule to log a violation when a file contains some duplicated blocks
  • [SONAR-3497] – New rule to log a violation when the density of comments in a source file is below a configurable threshold
  • [SONAR-3498] – New rule to log a violation when the percentage of code coverage in a source file is below a configurable threshold

Task

Release Notes – Sonar – Version 3.1.1

Bug

  • [SONAR-3584] – Unable to edit the default "Treemap" filter

Release Notes – Sonar – Version 3.1

Sub-task

  • [SONAR-2073] – Provide a filter widget
  • [SONAR-3145] – During long migration access to Sonar should be not allowed
  • [SONAR-3146] – During migration second upgrade should not be allowed
  • [SONAR-3457] – Make it possible to add some project widget to a global dashboard
  • [SONAR-3458] – Extend the existing dashboard extension point to programmatically define some global dashboards
  • [SONAR-3459] – Extend the existing widget extension point to programmatically define some widgets on global dashboards
  • [SONAR-3460] – During migration to Sonar 3.1, create a new global dashboard for each existing filter
  • [SONAR-3461] – Make it possible to sort the list of global dashboards and to select which dashboards to display BY DEFAULT
  • [SONAR-3462] – Make it possible to sort the list of global dashboards and to select which dashboards to display FOR THE CURRENT USER
  • [SONAR-3464] – Removal of the "Default Filters" page
  • [SONAR-3465] – The "Filters" page should be renamed "My Filters" and should be moved close to the "My Profile" page

Bug

  • [SONAR-3308] – Removing a detached instance org.sonar.api.batch.Event
  • [SONAR-3348] – The Links column on the filters page provides a Developer Connection link that browsers do not support
  • [SONAR-3397] – Widget "Custom Measures" is empty
  • [SONAR-3406] – Missing HTML escape in "Edit rule" page in Quality profiles for rule parameters
  • [SONAR-3424] – The HTML lists are badly displayed in the rule description pop-up
  • [SONAR-3425] – Error when saving any setting with Derby and on a Project
  • [SONAR-3429] – In rule descriptions, paragraphs ("<p>" tags) should have some vertical spacing
  • [SONAR-3442] – Embedded error: Fail to decorate 'xxx'
  • [SONAR-3443] – Active Reviews widget – page scrolling doesn't work
  • [SONAR-3444] – Name and description of the Treemap widget is missing
  • [SONAR-3445] – The path "Search" feature on filters doesn't work any more
  • [SONAR-3448] – Sonar fails to start if the sonar.jdbc.* properties are encrypted
  • [SONAR-3456] – Title of metric hotspot widget does not support i18n
  • [SONAR-3480] – There is no way to delete one of the three default Filters : Projects, Treemap and My Favourites
  • [SONAR-3481] – The three default Filters appear in the "My Filters" page of all users whereas they should only appear for the sonar administrators
  • [SONAR-3483] – The "My Filters" page should not display filters which are owned by another user
  • [SONAR-3494] – [Project Roles] Rename Default roles for new Projects to Default Roles For New Projects
  • [SONAR-3528] – Pagination is broken on reviews widgets
  • [SONAR-3555] – Content type is missing on static files provided by plugins
  • [SONAR-3561] – Timeline widget cannot be displayed if one of the selected metrics has no value at all

Improvement

  • [SONAR-1076] – Dedicated rule-set space for unit tests
  • [SONAR-1927] – Global dashboards
  • [SONAR-2030] – Filters : Display the root project when defining a path filter
  • [SONAR-3074] – Migrate to Findbugs 2.0
  • [SONAR-3083] – When a root resource is defined in a filter, it should be possible to display only the direct children of this root resource
  • [SONAR-3126] – Stop the Sonar Analysis when the Sonar batch and the Sonar server are not using the same DB
  • [SONAR-3182] – Remove the support of PMD CPD
  • [SONAR-3218] – Improve the Sonar migration service by preventing any parallel executions
  • [SONAR-3371] – Sort the Shared filters list
  • [SONAR-3375] – Add a warning message in the footer when the browser is IE6
  • [SONAR-3378] – Make configurable the number of hours before keeping onle one snapshot per day
  • [SONAR-3381] – In the "Components" page, reverse the hyperlinks on the resource names and magnifying glasses
  • [SONAR-3422] – Filters are very long to be displayed with MsSQL as soon as the result is sorted on a metric
  • [SONAR-3431] – Complete the web service /api/profiles to backup and restore profile
  • [SONAR-3454] – Remove the column character ":" after On new code on the unit test widget
  • [SONAR-3455] – Typo on Differential Views => Period 1 => description + add which snapshot is taken into account when a date or a period is selected
  • [SONAR-3467] – Remove the "Edit layout" action from the dashboard action menu and make it possible to select a layout directly from the "Configure Widgets" mode
  • [SONAR-3471] – Add a link to the "My Filters" page when editing a Filter widget
  • [SONAR-3473] – Improve the parameter sonar.forceAuthentication
  • [SONAR-3482] – Prevent removing a filter which is used by a widget
  • [SONAR-3495] – Initial exception is lost when settings can't be decrypted
  • [SONAR-3537] – Improve performances of the treemap filter
  • [SONAR-3565] – Prevent executing any SQL delete requests on the 'project_measures' having a nested SELECT request on another table

New Feature

  • [SONAR-2706] – Add extension point to the Review functionality in order to link review to external tracking system like JIRA or Crucible
  • [SONAR-2950] – Single Sign On with external authentication mechanism
  • [SONAR-3016] – New extension point: filter template

Task

  • [SONAR-2313] – Add info about build number into Sonar distribution
  • [SONAR-3240] – Fully remove support of old format for DUPLICATIONS_DATA
  • [SONAR-3428] – Should support Infinitest
  • [SONAR-3477] – End of support of IE6

Release Notes – Sonar – Version 3.0.1

Bug

  • [SONAR-3425] – Error when saving any setting with Derby and on a Project
  • [SONAR-3442] – Embedded error: Fail to decorate ‘xxx’
  • [SONAR-3448] – Sonar fails to start if the sonar.jdbc.* properties are encrypted

Release notes 3.0

Bug

  • [SONAR-1053] – Null pointer exception when doing a backup of a Sonar server configuration
  • [SONAR-1569] – Case insensitive sorting in the Dependencies page
  • [SONAR-1700] – Some links to the projects end up in new session
  • [SONAR-1708] – Problems with alert status
  • [SONAR-1746] – Unable to get class information for @throws tag <<custom exception>>
  • [SONAR-2041] – Request for existing resource and non-existing metric fails on Derby
  • [SONAR-2403] – The resource filter throws an error message when trying to display the “Source” tab of a unit test resource without having the source code
  • [SONAR-2424] – Possible NPE during export of profile
  • [SONAR-2523] – Fail to open popup from review page when resource does not exist anymore
  • [SONAR-2530] – Unable to delete sub-module project
  • [SONAR-2841] – Tests suite results are not always ignored
  • [SONAR-2977] – Setting a profile to default via the API doesn’t seem to work
  • [SONAR-2983] – Unable to define an alert for a boolean metric
  • [SONAR-3003] – There is sometimes an additional line displayed at the end in the source code viewer
  • [SONAR-3032] – When the “Redundant Throws” Checkstyle check can’t manage to get a class information, a runtime exception is thrown and the analysis of this file is stopped
  • [SONAR-3073] – column sorting for ‘key’ does not work in filter
  • [SONAR-3100] – Can not unfollow shared dashboards
  • [SONAR-3106] – Error trying to configure group privileges for a project
  • [SONAR-3127] – Global (default) passwords get exposed to less privileged users
  • [SONAR-3172] – It should not be possible to create a manual violation on a unit test source code
  • [SONAR-3215] – Data inconsitency on table projects
  • [SONAR-3229] – PMD fails when inspecting Java files suffixed with .jav
  • [SONAR-3243] – Wrong permalink when file shown
  • [SONAR-3277] – Nullpointer on duplications tab when a project has been deleted
  • [SONAR-3278] – Incorrect breadcrumb link on contextualized review page
  • [SONAR-3283] – When the login of a user is “numeric”, there is no way to filter all reviews assigned to this user through the global Reviews page
  • [SONAR-3290] – Filters based on Favourites can not be correctly shared
  • [SONAR-3292] – Misleading message when version of org.codehaus.sonar:sonar-maven-plugin is fixed to a bad version
  • [SONAR-3294] – Elements of “History table” widget is unordered
  • [SONAR-3297] – Sort issue with stripes on groups
  • [SONAR-3316] – Property values defined in the conf/sonar.properties file are not trimmed
  • [SONAR-3326] – Problem displaying History when project has a Green Alert event
  • [SONAR-3346] – Non-parsable pmd-result.xml
  • [SONAR-3352] – Sonar analysis on an Oracle database with reviews fails with Fail to decorate ‘XXX’: Invalid column type: 1111
  • [SONAR-3353] – TimeMachine widget not correctly displayed if only 2 snapshots with one that misses measures
  • [SONAR-3354] – If no measure is available, TimeMachine widget should display a blank line
  • [SONAR-3361] – Error : undefined method `source’ for nil:NilClass
  • [SONAR-3363] – Error log “undefined method `downcase’ for ["BLOCKER", "CRITICAL", "MAJOR", "MINOR", "INFO"]:Array”
  • [SONAR-3368] – Error log “ActiveRecord::JDBCError: Unknown column ‘project_measures.variation_value_0′”
  • [SONAR-3382] – “Extend description” is buggy on IE9
  • [SONAR-3396] – The widget title should be “Lines” instead of “Lines of code” when the measure ncloc is not present
  • [SONAR-3404] – Wrong number of reviews is displayed in “Open reviews per developer” widget

Improvement

  • [SONAR-1377] – WS API should return HTTP 401 when user/password are not valid
  • [SONAR-1378] – API: define property type
  • [SONAR-2197] – Display Design page, Coverage/LCOM4/Dependencies tabs based on measures
  • [SONAR-2270] – Make Checkstyle:ParameterNumber rule instantiable
  • [SONAR-2721] – Extend the “Size metrics” widget to display the number of “projects”
  • [SONAR-2900] – API: AnnotationCheckFactory should accept check objects and not only check classes
  • [SONAR-3006] – Make the TimeMachine service a dashboard page
  • [SONAR-3031] – When an error is logged by Checkstyle, this error should be dumped in the Sonar analysis log file
  • [SONAR-3121] – The Sonar analysis must fail when all source directories don’t exist
  • [SONAR-3125] – Add better error message for unknown language
  • [SONAR-3135] – The option to get the distribution of file by complexity should be displayed on views
  • [SONAR-3177] – The distribution measures should not be aggregated when thresholds are not the same
  • [SONAR-3224] – API: support Ruby on Rails applications
  • [SONAR-3287] – Make it possible to access to the “History” page on a View or Developer resource
  • [SONAR-3289] – On Java projects, replace the “distribution of complexity by class” by the “distribution of complexity by file”
  • [SONAR-3295] – Change sonar.jacoco.excludes behaviour so that it excludes from both instrumentation and coverage report
  • [SONAR-3305] – When there isn’t any description or title available on a rule, a NullPointerException is thrown
  • [SONAR-3315] – The error message is meaningless when a project contains duplicate source files
  • [SONAR-3318] – CommandExecutor : should be possible to capture stdout and stderr
  • [SONAR-3319] – Prevent conflicts in l10n of description for rules by using repository key
  • [SONAR-3320] – Add an extension point to observe property changes
  • [SONAR-3323] – Display tab/page/widget only when required measures exist in DB
  • [SONAR-3327] – Make the links to external resources open on a new tab
  • [SONAR-3328] – Measure drilldown should not display zero variations
  • [SONAR-3343] – When a rule is annotated, its name and its description fields should be saved as NULL if they are not not provided
  • [SONAR-3347] – Limit time of analysis for single file for bridge between PMD and Sonar CPD
  • [SONAR-3357] – In the “Violations” widget, replace “On new code” label by “Added” and “On old code” label by “Removed”
  • [SONAR-3358] – Case-insensitive sort in the Components page
  • [SONAR-3372] – The ‘delete’ comment action is not available in the review page whereas this action should be available on the last comment for the author of the comment
  • [SONAR-3383] – Add pagination and search engine to management console of project roles
  • [SONAR-3384] – Do not display hotspot widgets when related metric is not available
  • [SONAR-3393] – API : provide an AverageFormula class
  • [SONAR-3412] – Remove zero values from drilldowns of package/file cycles

New Feature

  • [SONAR-2084] – Support for encrypted configuration
  • [SONAR-3008] – CommandExecutor: Increase the log level to display command and arguments
  • [SONAR-3072] – Create a new algorithm for detecting new violations based on block recognition
  • [SONAR-3344] – Display metadata of SonarSource licenses

Task

  • [SONAR-3114] – Refactor the tab “Dependencies”
  • [SONAR-3332] – API: delete the deprecated class org.sonar.api.batch.AbstractViolationsStaxParser
  • [SONAR-3334] – Drop the table RULES_CATEGORIES
  • [SONAR-3359] – Remove the possibility to create a rule without a description in the Web UI

Release notes 2.14

Bug

  • [SONAR-1945] – Database deadlocks on Sonar 2.2 and MySQL
  • [SONAR-2080] – Refresh rule when changing a parameter of an inherited rule
  • [SONAR-2190] – Database Locks when two projects are built simultaneously
  • [SONAR-2211] – Database deadlocks while purging database on Sonar 2.3 and SQL Server 2005
  • [SONAR-2885] – SONAR-2637 back in Sonar 2.11 on IE8 and IE9
  • [SONAR-2907] – Two branches of the same project (which are considered as different projects in Sonar) cannot have individual project settings
  • [SONAR-2940] – Filters : Unable to sort the “language” column on both ways
  • [SONAR-3001] – When changing the metric associated with the treemap color axis, the tooltip can sometimes never disappear
  • [SONAR-3009] – Widgets can not be configured on IE9
  • [SONAR-3091] – The “Events” widget should not display events on snapshots which are about to be deleted
  • [SONAR-3092] – Timeline widget won’t display snaphots with 0 Weighted Rule Violations
  • [SONAR-3102] – Unable to see or update a review which has been created/assigned/commented by a deleted user
  • [SONAR-3112] – Badly configured metrics
  • [SONAR-3129] – Special columns like Version, Language, Build date, … can’t be added to filter when language is not english
  • [SONAR-3142] – PurgeDependencies takes too much time to finish
  • [SONAR-3143] – The title of the “Create Action Plan” button is wrongly changed when the action plan can’t be created
  • [SONAR-3171] – Space missing in drilldown description
  • [SONAR-3184] – The Reviews page can’t be displayed when a review is associated to a deleted project
  • [SONAR-3198] – [Action Plan] Can’t set the due date to the current day
  • [SONAR-3199] – [Action Plan] Manage Action plans –> Manage action plans
  • [SONAR-3201] – [Action Plan] Sort issues
  • [SONAR-3206] – Can not delete snapshot from history
  • [SONAR-3223] – Error in review search when result ties to a deleted resource
  • [SONAR-3230] – Stolen user session
  • [SONAR-3235] – Make the numbers non breakable on the hotspot widgets
  • [SONAR-3241] – Metric “Lines to cover” is hidden, whereas “Uncovered lines” not
  • [SONAR-3247] – Favourite Web Service base URL is incorrect
  • [SONAR-3253] – Possible NPE in org.sonar.api.measures.Measure#setData(String)
  • [SONAR-3254] – When a violation is attached to an empty source code, the code viewer fails to display this violation
  • [SONAR-3255] – Drilling down into violations from SQALE does not land properly
  • [SONAR-3275] – ArrayIndexOutOfBoundsException in URL /chart
  • [SONAR-3284] – The RegExp Header CheckStyle rule incorrectly using ignoreLines instead of multiLines causing the functionality to fail every time

Improvement

  • [SONAR-1650] – Add a star icon in the code viewer header to easily tag a java file as favourite
  • [SONAR-1707] – Add the column SNAPSHOTS.BUILD_DATE
  • [SONAR-1960] – DBCleaner properties should be expressed in weeks instead of months
  • [SONAR-2009] – Redirect to original URL when user logs in
  • [SONAR-2061] – API: ability to declare metrics without any historical data
  • [SONAR-2124] – Show difference when rules in derived profiles are changed
  • [SONAR-2132] – Redirect to last page after login
  • [SONAR-2416] – Fully remove the Sonar internal Maven repository which was used by Sonar mojo version 1.0-beta-1
  • [SONAR-2754] – Provide a new option in the ‘House Cleaning’ mechanism to delete past measures on directories and packages
  • [SONAR-2756] – Purge measures related to quality model requirements
  • [SONAR-2807] – The DB Cleaner must keep only one snapshot by day
  • [SONAR-2946] – Display the property keys in UI in all cases
  • [SONAR-2959] – Add the batch properties sonar.showSql and sonar.showSqlResults
  • [SONAR-2990] – The category filter is lost when adding a widget to a dashboard
  • [SONAR-2994] – Missing localization for ‘Sign Up’ and ‘Log In’ pages
  • [SONAR-2995] – Remove “Sign Up” link from tab index
  • [SONAR-3014] – The main project dashboard “Links” column provides a Developer Connection link that browsers do not support
  • [SONAR-3040] – Dispay the project/module along with the file path in the Code Viewer header
  • [SONAR-3059] – Remove the Javascript Infovis Toolkit 1.3.x from the sonar bundle
  • [SONAR-3081] – Update the “Violations” widget in order to display the number of “new violations”
  • [SONAR-3088] – When switching from a project page to another project page, the differential view configuration should be kept
  • [SONAR-3094] – Improve the display of the “Differential Views” tab in the “Global Settings” page
  • [SONAR-3104] – Improve the usability of the project ‘History’ page and remove the category events
  • [SONAR-3120] – Resources associated to a module which has been removed from a multi-module project are never purged
  • [SONAR-3137] – Retrieve information about users from external system
  • [SONAR-3138] – Fallback to Sonar database if external security provider failed
  • [SONAR-3139] – Use Sonar CPD with existing extension point CpdMapping
  • [SONAR-3144] – sonar-cpd-plugin should not depend on PMD
  • [SONAR-3147] – Web service to list available widgets
  • [SONAR-3148] – Do not log errors when the URL /charts/trends has bad parameters
  • [SONAR-3150] – Reduce size of PMD and FindBugs plugins
  • [SONAR-3155] – Change the info message displayed by the Timeline widget when only one snapshot is available
  • [SONAR-3164] – AnnotationCheckFactory does not detect properties declared in inherited classes
  • [SONAR-3169] – API: new utility class org.sonar.api.utils.FieldUtils2
  • [SONAR-3175] – Document the constraint on number of JAR files in jdbc-driver directories
  • [SONAR-3176] – Complete documentation of differential views properties
  • [SONAR-3180] – Remove the support of AJP connector
  • [SONAR-3185] – Default value of the property ‘sonar.authenticator.createUsers’ should be true and not false
  • [SONAR-3200] – [Action Plan] Display the date of closure on the Closed action plans list
  • [SONAR-3205] – Upgrade to JaCoCo 0.5.6
  • [SONAR-3228] – Some metrics are not persisted if value 0 whereas they can be used in Sonar Web UI
  • [SONAR-3239] – Depreciate the metrics PARAGRAPHS, PARAGRAPH_COMPLEXITY and PARAGRAPH_COMPLEXITY_DISTRIBUTION
  • [SONAR-3242] – The review buttons should not hide the violation title
  • [SONAR-3244] – Remove the message “Logged in” on successful authentication
  • [SONAR-3246] – Provide “zoom in/zoom out” feature in treemaps
  • [SONAR-3248] – When deleting a project, the review comments and action plans attached to this project are not purged
  • [SONAR-3258] – No more delete users in the Sonar DB but deactivate them
  • [SONAR-3263] – Remove the property sonar.purge.minimumPeriodInHours
  • [SONAR-3269] – Add multiline code support on Sonar markdown
  • [SONAR-3273] – Remove useless horizontal scrollbars on IE7
  • [SONAR-3307] – Add the parameter rewriteBatchedStatements=true to MySQL JDBC URL
  • [SONAR-3313] – Highly reduce the memory consumes by Sonar when there is a huge amount of duplicated blocks in a project

New Feature

  • [SONAR-1492] – Allow notes per quality rule
  • [SONAR-2069] – New treemap widget
  • [SONAR-2292] – Design groups management for a better extensibility
  • [SONAR-2747] – Email notification mechanism to be notified when new violations have been created on a project
  • [SONAR-2757] – Refactor the purge mechanisms to prevent any fullscan SQL requests on snapshots table
  • [SONAR-3012] – New widget to monitor the review activity
  • [SONAR-3166] – Provide by default a new “Reviews” page
  • [SONAR-3179] – API to define resources
  • [SONAR-3181] – Allow cross projects duplication detection mechanism with the legacy CpdMapping extension point and for all languages
  • [SONAR-3208] – Even for View or Developer resources, the violation and measures drilldown pages must allow to drilldown till the source code
  • [SONAR-3209] – Provide a Sonar API to save and retrieve some measures by line on a source file
  • [SONAR-3210] – On java projects, provide the measures comments and loc by line for each java source file
  • [SONAR-3231] – API: Allow to associate measure with committer

Task

  • [SONAR-3207] – API: remove the deprecated extension point org.sonar.api.batch.Purge
  • [SONAR-3212] – Document format of conf/sonar.properties
  • [SONAR-3238] – Deprecate old format for DUPLICATIONS_DATA
  • [SONAR-3245] – Minimal required version of Maven to build Sonar should be declared as 2.2.1

Release notes 2.13.1

Bug

  • [SONAR-3221] – During migration to Sonar 2.13, some projects can be deleted

Release notes 2.13

New Feature

  • [SONAR-983] – Add modules, packages and files to the search engine
  • [SONAR-1929] – New extension point: dashboard template
  • [SONAR-1974] – Being able to “review” any source code with or without violations
  • [SONAR-2399] – Provide some “Reviews” widgets
  • [SONAR-2662] – Create action plans which are a set of manual reviews
  • [SONAR-2973] – Add the ability to override the severity of a violation
  • [SONAR-3046] – Support of periods in the widget “Most Violated Rules”

Task

  • [SONAR-3023] – Increase the size of SNAPSHOTS.QUALIFIER and PROJECTS.QUALIFIER
  • [SONAR-3039] – Refactor the LCOM4 viewer with Ruby extension
  • [SONAR-3118] – Remove property “sonar.useStructureDump”

Improvement

  • [SONAR-1836] – Upgrade to Checkstyle 5.5
  • [SONAR-2018] – “Commented-out lines of code” is not defined as a rule
  • [SONAR-2816] – Internationalize numbers displayed in the TimeLine widget
  • [SONAR-2819] – Upgrade to PMD 4.3
  • [SONAR-2912] – [Rename quality profile] Default value: put profile name instead of undefined
  • [SONAR-2968] – Do not force to add the root project to the property sonar.includedModules
  • [SONAR-2972] – Remove the + sign before the number of accessors
  • [SONAR-2975] – Replace the properties sonar.hibernate.default_schema and sonar.jdbc.postgreSearchPath by sonar.jdbc.schema
  • [SONAR-2984] – Review comment should be optional
  • [SONAR-2991] – Add pagination to the “Reviews” page
  • [SONAR-3027] – Highlight measure values in headers of viewers
  • [SONAR-3028] – Improve the way to deselect filters in drilldown pages
  • [SONAR-3034] – API: default value of WidgetProperty is not injected in Ruby widgets
  • [SONAR-3037] – Remove the + sign before the number of skipped tests
  • [SONAR-3045] – Guess the property sonar.jdbc.driverClassName
  • [SONAR-3052] – API : add Guava dependency
  • [SONAR-3054] – Change some Findbugs rule titles
  • [SONAR-3057] – Differential measures on ‘Violations’ and ‘New Violations’ should be displayed with red or green colors
  • [SONAR-3060] – Add new CPD algorithm based on suffix tree
  • [SONAR-3061] – Accept whitespaces in sonar.includedModules
  • [SONAR-3062] – API: org.sonar.api.config.Settings#getStringArray() should trim values
  • [SONAR-3063] – Implement the hotspots page as a dashboard
  • [SONAR-3086] – Improve usability of review forms
  • [SONAR-3090] – Remove DUPLICATIONS_INDEX.ID
  • [SONAR-3093] – Java: remove metric “commented out lines of code” and “comments” metric must include all comments
  • [SONAR-3095] – Upgrade to JaCoCo 0.5.5
  • [SONAR-3098] – Add localization of dashboard name
  • [SONAR-3099] – Search of reviews by id must ignore other criteria
  • [SONAR-3116] – Do not allow to skip the root module

Bug

  • [SONAR-1682] – Commented LOC metric does not include fully commented source code
  • [SONAR-2660] – Exception when launching the Sonar service on Windows platform with a LocalSystem account
  • [SONAR-2795] – Pagination limitation in Filters
  • [SONAR-2891] – Breadcrumb is not valid in the page Dependencies
  • [SONAR-2897] – Typo in property name : instead of “sonar.cobertura.maxmen” should be “sonar.cobertura.maxmem”
  • [SONAR-2939] – On the complexity widget, rename Functions distribution /complexity in Methods distribution /complexity
  • [SONAR-2945] – The message and the line of a violation linked to a review are not updated in the review detail
  • [SONAR-2947] – The source code snippet displayed in a review detail is not always the last snapshot
  • [SONAR-2980] – Web-service: impossible to retrieve unassigned reviews
  • [SONAR-3033] – Bad tooltip for the action “Move right” in the Components page
  • [SONAR-3050] – TimeoutException when looking for duplications
  • [SONAR-3055] – API: remove the attribute “classes” of the annotations @DependsUpon and @DependedUpon
  • [SONAR-3058] – AJP connector is broken in 2.12 (jetty 6.1.26)
  • [SONAR-3070] – API: DateUtils accepts badly formatted strings for parsing
  • [SONAR-3071] – The settings page fails if a property has a null value
  • [SONAR-3077] – Rule.toString() sometimes throws org.hibernate.LazyInitializationException
  • [SONAR-3096] – Exclude source sub-directories starting with a dot
  • [SONAR-3101] – “Duplications” tab shows incorrect lines
  • [SONAR-3103] – Do not allow to unshare default dashboards
  • [SONAR-3107] – When a problem occurs while starting a Sonar server component, the root exception is not logged

Release notes 2.12

New Feature

  • [SONAR-2070] – New widget of most violated rules
  • [SONAR-2071] – New widget of most violated resources
  • [SONAR-2748] – Make the profile backup available as permalink
  • [SONAR-2792] – Embed the JaCoCo java code coverage engine into the Sonar core
  • [SONAR-2902] – New metric hotspot widget
  • [SONAR-2963] – Add the widget “Integration Test Coverage”

Task

  • [SONAR-2642] – Setup MyBatis library to start removing use of Hibernate
  • [SONAR-2773] – Sonar itself cannot be compiled with JDK7
  • [SONAR-2797] – Delete the Maven Archetypes used to create plugins
  • [SONAR-2834] – Remove the Google Analytics Plugin from the distribution
  • [SONAR-2923] – Remove the org.sonar.channel.CodeBuffer.push(CharSequence chars) method

Sub-task

  • [SONAR-2585] – Checkstyle – grammar update for Java 7 support
  • [SONAR-2710] – PMD – Grammar update for Java 7 support

Improvement

  • [SONAR-801] – Events on Dashboard confused for same project dates
  • [SONAR-1149] – In the “Duplications” tab of the Resource Viewer, user should be able to click on file
  • [SONAR-1928] – Extract widgets from the hotspots page
  • [SONAR-2580] – Use dos-style for line endings in configuration files
  • [SONAR-2584] – Analysis of Java 7 projects
  • [SONAR-2698] – Display of arrows to sort columns
  • [SONAR-2715] – If something wrong happens when saving a source file in DB, there is no way to know which source file can’t be imported
  • [SONAR-2719] – The time should be always provided when logging something during a Sonar analysis
  • [SONAR-2723] – LCOM4 flags benign groups – Members with Initial Capitals
  • [SONAR-2726] – Do not allow upgrade with Derby embedded database
  • [SONAR-2727] – Display a warning message in the footer when the Derby engine is used
  • [SONAR-2733] – Display duplicated blocks by group in the resource viewer
  • [SONAR-2740] – Senders address should contain (Sonar) or some other distinguishing feature
  • [SONAR-2771] – Allow to render a single widget
  • [SONAR-2796] – Display which directories Sonar will use during analysis
  • [SONAR-2798] – Upgrade to JaCoCo 0.5.3 (available in Central Maven repository)
  • [SONAR-2799] – JaCoCo : Allow to specify “exclclassloader” via properties for plugin
  • [SONAR-2800] – JaCoCo : Update descriptions in plugin settings – colon character should be used as a separator in agent options
  • [SONAR-2803] – JaCoCo : Being able to define some class name exclusion at global level
  • [SONAR-2809] – Expose Weighted Violations as filter column & widget value
  • [SONAR-2814] – Upgrade standalone application from Jetty 6.1.24 to 6.1.26
  • [SONAR-2826] – The Duplications viewer can not be displayed when there are too many duplicated blocks
  • [SONAR-2830] – An horizontal scrollbar appears in the bottom of code viewers in IE
  • [SONAR-2839] – Speed up server startup when using Derby
  • [SONAR-2840] – Do not display JDBC settings when user is not administrator
  • [SONAR-2849] – Remove declarations of third-party repositories from root POM
  • [SONAR-2856] – Upgrade to cobertura-maven-plugin 2.5.1
  • [SONAR-2861] – API: new settings component
  • [SONAR-2869] – API: allow to annotate extensions with @Properties/@Property
  • [SONAR-2870] – Do not rebuild the WAR file when changing conf/sonar.properties
  • [SONAR-2874] – oracle.jdbc.driver.OracleDriver is deprecated and is removed in ojdbc6.jar : update of sonar.properties file required
  • [SONAR-2875] – API: deprecate the interface org.sonar.squid.api.CodeCheck
  • [SONAR-2879] – Trim paths (sources, tests, binaries, libraries) before usage
  • [SONAR-2880] – Sort user list in user to group assignment dialog
  • [SONAR-2881] – Do not rebuild the WAR file when changing conf/logback.xml
  • [SONAR-2882] – Upgrade to SLF4J 1.6.2 and Logback 0.9.30
  • [SONAR-2883] – Remove the unused file conf/derby.properties
  • [SONAR-2892] – Too many open files during code inspection
  • [SONAR-2904] – Provide debug message to display file, for which we constructing tokens/statements/blocks
  • [SONAR-2914] – Add the parameter sonar.verbose to Maven bootstrapper
  • [SONAR-2916] – Default logging level should be INFO on server side
  • [SONAR-2919] – Refactor event handling in Sonar Web
  • [SONAR-2929] – Improve NT scripts to fail with an error message in case UAC is enabled and not ran as administrator
  • [SONAR-2932] – Log HTTP 500 errors
  • [SONAR-2934] – Consider accessors transitively when computing setters and getters
  • [SONAR-2937] – Disallow start of multiple instances of an application at the same time on Windows
  • [SONAR-2941] – Exclude isolated method from LCOM4 computation
  • [SONAR-2943] – Oracle JDBC URL Issue
  • [SONAR-2952] – Make the “Coverage” tab support display of “IT Coverage” measures
  • [SONAR-2955] – Do not distribute CSS and JS files used in development mode
  • [SONAR-2956] – Support Boolean type with Derby
  • [SONAR-2961] – Fail silently when deadlock happens during a purge
  • [SONAR-2962] – Add an index on dependencies.project_snapshot_id to improve performance.
  • [SONAR-2967] – Must ignore the properties sonar.skippedModules and sonar.includedModules defined on modules
  • [SONAR-3005] – The LCOM4 measure should never be lesser than 1

Bug

  • [SONAR-1908] – AnalysisException parsing error on escaped unicode
  • [SONAR-2038] – LCOM4 value is incorrect when mixing getter/setter and direct field access.
  • [SONAR-2317] – The metric “new lines to cover” is badly formated
  • [SONAR-2632] – Remove the buffer length restriction
  • [SONAR-2668] – Make labels non breakable on the filter screen
  • [SONAR-2681] – Support of the maven “-pl” option by the Sonar Maven plugin
  • [SONAR-2695] – Sort on list are case sensitive
  • [SONAR-2696] – On filters, the Name column cannot be sorted on the descending way
  • [SONAR-2697] – Project Roles => Select users: on the Ungranted users list box, it seems that there is no ordering at all
  • [SONAR-2724] – LCOM4 flags benign groups – list management
  • [SONAR-2735] – Sonar throws a NullPointerException when run on a project that contains an aggregator pom that specifies a pom.xml file in the module section instead of a directory
  • [SONAR-2741] – The method JavaAstScanner.scanDirectory(..) can’t be called several times
  • [SONAR-2762] – Regular expression operators ‘+’ and ‘$’ must be escaped when they are used to define a source exclusion pattern
  • [SONAR-2779] – Impossible to set up charset for notification emails
  • [SONAR-2811] – Time Machine won’t compare to previous versions if said version has been manually modified.
  • [SONAR-2831] – Values are not aligned in the page Components
  • [SONAR-2833] – Fail to create SQLServer tables when collation is case-sensitive
  • [SONAR-2842] – Exit code is not properly returned when using RUN_AS_USER
  • [SONAR-2846] – API: the i18n Hamcrest matcher should not fail if some keys are not defined in the reference bundle
  • [SONAR-2851] – Review date is badly formatted
  • [SONAR-2852] – CommandExecutor must explicitly close all streams
  • [SONAR-2855] – Metrics are not sorted in the configuration panel of widgets
  • [SONAR-2863] – When displaying the number of violations in the “History table” widget, this number might not be the total number of violations
  • [SONAR-2872] – The TimeLine widget can’t be displayed with Oracle DB
  • [SONAR-2873] – FindBugs should be disposed after usage
  • [SONAR-2878] – Stop analysis if execution of Maven Plugin failed
  • [SONAR-2884] – The message “No lines match your filter criteria” is not localized
  • [SONAR-2887] – The dropdown lists can’t be used in the Quality Profile/Changelog service to list all changes between two versions of the Quality Profile
  • [SONAR-2896] – Configuration made by MavenPluginHandler not taken into account with Maven 2.x
  • [SONAR-2905] – JaCoCo : Don’t stop analysis, if there is test failures
  • [SONAR-2908] – Typo in english language pack : “Titre” instead of “Title”
  • [SONAR-2913] – In the History widget, if there’s only 1 snapshot, the sparkline cannot be displayed
  • [SONAR-2915] – Sonar can’t be started on Solaris due to upgrade of JRuby
  • [SONAR-2928] – The creation date of a violation is unexpectedly updated when a violation is not associated to a line and the message is updated
  • [SONAR-2958] – Null description in the web service “rules”

Release notes 2.11

Release Notes – Sonar – Version 2.11

New Feature

  • [SONAR-893] – Provide a new “History” service on each project to be able to delete some quality snapshots
  • [SONAR-1091] – Copy Paste Code checking over all Projects
  • [SONAR-2074] – New timeline widget
  • [SONAR-2412] – Provide a new web service to delete a project
  • [SONAR-2603] – Provide a unique Sonar Server ID by Sonar cluster
  • [SONAR-2701] – New “Time Machine” widget to display measures of required metrics by past version

Improvement

  • [SONAR-1369] – CPD Plugin “Ignore Literals” causes “false” detections with big array of Strings
  • [SONAR-2200] – Provide a new Ruby API to display a stack area in a widget
  • [SONAR-2522] – Improve the batch requests on the RULES table
  • [SONAR-2621] – Profile changelog should be accessible by anonymous users
  • [SONAR-2633] – In the user administration page, a new dedicated “Change password” action should be available
  • [SONAR-2655] – org.sonar.api.database.BaseIdentifiable need add a human readable “toString” method,it will help us find problem!
  • [SONAR-2690] – Anonymous access : add a title above the project list in the Quality Profile “projects” tab
  • [SONAR-2692] – API: allow plugins to auto-disable on server startup
  • [SONAR-2693] – Provide an Hamcrest matcher to compare a pair of translation bundles
  • [SONAR-2694] – Provide a new optional ‘category’ attribute on @Property annotation
  • [SONAR-2700] – Add the server startup date/time to the System Info page
  • [SONAR-2702] – Provide a new “Exclusions” service in the “CONFIGURATION” section of each project
  • [SONAR-2703] – Provide a new “Links” service in the “CONFIGURATION” section of each project
  • [SONAR-2704] – Upgrade to Prototype 1.7/Scriptaculous 1.9
  • [SONAR-2705] – Add Protovis
  • [SONAR-2713] – Improve usability of the settings page
  • [SONAR-2714] – Reorganize core properties into categories
  • [SONAR-2716] – Support localization of plugin properties
  • [SONAR-2734] – Provide a new “Deletion” service in the “CONFIGURATION” section of each project
  • [SONAR-2781] – The annotation @UserRole should be optional on resource viewers
  • [SONAR-2785] – Merge the page Email Settings to General Settings
  • [SONAR-2787] – “My Profile” configuration menu should not be restricted to admins
  • [SONAR-2810] – End support of JNDI JDBC datasource by WAR mode

Bug

  • [SONAR-2549] – Unable to create Sonar objects in Oracle when similar object exist for other users on the server
  • [SONAR-2556] – Adding new widgets to a dashboard re-organizes the first column
  • [SONAR-2579] – Creating an event through the web service API leads to a org.sonar.api.Batch.Event exception
  • [SONAR-2587] – [PostgreSQL support] Sonar mess up with table names from other schema
  • [SONAR-2616] – When assigning a review, if assignee does not exist an error message should appear
  • [SONAR-2638] – Changing pools configuration in sonar.properties does not increase the pool used by JRuby
  • [SONAR-2646] – When there isn’t any violation in a project the hotspot widget “Most violated rules” never finished to be displayed
  • [SONAR-2656] – Some error messages are duplicated when changing user password in the “Users” administration page
  • [SONAR-2676] – NCSS rule minimums don’t list what’s cited in the rule explanation
  • [SONAR-2677] – JUnit tests containing several level of nested inner classes can’t be analysed by Sonar
  • [SONAR-2744] – The Sonar Maven plugin is no more compatible with the build-helper-maven-plugin and so can’t work with multiple source directories
  • [SONAR-2745] – The “Components” service displays some metric names with a wrong language bundle
  • [SONAR-2750] – Incorrect l18n with #human_short_date on locale “en”
  • [SONAR-2766] – Support ResourceTabs implemented as Ruby on Rails pages
  • [SONAR-2782] – False-positive duplication : chain of cases
  • [SONAR-2784] – When the maximum number of JDBC connections is reached some JDBC connections are never released to the JDBC pool
  • [SONAR-2812] – The creation date of violation should not be reinitialized when the hash of the line hasn’t been changed
  • [SONAR-2813] – Wrong links in the hotspots of views
  • [SONAR-2817] – The Custom Measures widget is not displayed at all on IE7+
  • [SONAR-2823] – Java Squid is unable to retrieve information about classes from JDK
  • [SONAR-2824] – Results of Squid Java bytecode analysis are affected by classes available for Sonar
  • [SONAR-2827] – The property sonar.exclusions can not be changed by extensions
  • [SONAR-2837] – False-positive duplication : initialization of multidimensional array

Task

  • [SONAR-2689] – Do not support the version 1.0-beta-1 of the Sonar maven plugin anymore

Release notes 2.10

New Feature

  • [SONAR-75] – Internationalization
  • [SONAR-2477] – Allow to use FindBugs filter-files with exclusions
  • [SONAR-2547] – Create a new administration page on project/module/views resources to be able to feed manual measures
  • [SONAR-2548] – New widget to display a selection of measures
  • [SONAR-2596] – Provide an event notification mechanism
  • [SONAR-2601] – New administration page to configure email settings
  • [SONAR-2607] – Provide some email notifications on review changes

Improvement

  • [SONAR-848] – Being able to retrieve manual measures through the API as any other measure
  • [SONAR-2002] – The Sonar WS API automatically kills an HTTP connection after 30s. This timeout parameter should be configurable
  • [SONAR-2006] – Allow to select manual measures in filters treemap
  • [SONAR-2583] – Remove the unused table PARAMETERS
  • [SONAR-2604] – Default value for properties “sonar.java.source” and “sonar.java.target” should be “1.5″
  • [SONAR-2610] – Replace the table ASYNC_MEASURES_SNAPSHOTS by MANUAL_MEASURES
  • [SONAR-2615] – Administrator should be able to change email address of user
  • [SONAR-2634] – The tendency icon of the “violations” metric should not be colorized
  • [SONAR-2635] – Add new type of widget property : METRIC
  • [SONAR-2636] – Display keys in the administration console of manual metrics
  • [SONAR-2644] – Rule name should be optional in XML declaration files
  • [SONAR-2648] – New web service /api/manual_measures
  • [SONAR-2649] – Create a new parameter for “conf/sonar.properties” to define delay (in seconds) between processing of notification queue
  • [SONAR-2665] – Allow to override the HTTP parameter Accepted-Language in Java Web Service Client
  • [SONAR-2667] – Keep context when Java Web Service raises exceptions

Bug

  • [SONAR-830] – Sonar WS API return all elements when there aren’t metric value
  • [SONAR-1388] – Metric measures that are user_managed are not output in the web services resources api
  • [SONAR-1566] – Alerts on manual metrics are not drawn
  • [SONAR-1866] – Filters do not work when manual measure is used as criteria
  • [SONAR-2004] – Sorting manual metrics fails in Filters
  • [SONAR-2539] – Should not be possible to modify closed review
  • [SONAR-2540] – New empty comment leads to error
  • [SONAR-2567] – When removing a user sharing some filters or dashboards, those filters and dashboards must also be removed
  • [SONAR-2582] – The Filter Path field is not working with Oracle DB
  • [SONAR-2619] – Measure drilldown fails with Views plugin
  • [SONAR-2627] – False-positive flags disappear after second analysis run
  • [SONAR-2637] – Issue with dashboard layout in IE6 and IE7
  • [SONAR-2650] – FileFilter extension point is ignored
  • [SONAR-2673] – Fail to upgrade from 2.8 to 2.9 because of migration of reviews
  • [SONAR-2674] – The method Sensor#shouldExecuteOnProject() must not be executed before Initializer extensions
  • [SONAR-2707] – Some dependencies might miss in the Libraries, Dependencies and Design services when running several sonar analysis at same time

Sub-task

  • [SONAR-2589] – Modification of all web ruby templates (of nonadministrative services) to use bundles
  • [SONAR-2591] – API : translation mechanism of rule descriptions
  • [SONAR-2592] – Provide a new global property in the Settings page to define the default locale to be used
  • [SONAR-2593] – Modify the Checkstyle plugin to use the default locale in order to generate violation message
  • [SONAR-2598] – Provide a new NotificationManager service
  • [SONAR-2599] – Extend the “My Profile” page to display available event types and to be able to subscribe to those even types
  • [SONAR-2600] – Provide an email notification channel
  • [SONAR-2606] – Provide a new NotificationDispatcher extension point

Release notes 2.9

New Feature

  • [SONAR-2388] – Extend the Reviews page to be able to search for ‘false-positive’ reviews
  • [SONAR-2404] – Extend the Review web service API to be able to create and update a review
  • [SONAR-2468] – API: new extension point to override the project definition provided by the Sonar bootstrapper
  • [SONAR-2520] – Support two “RESOLVED” and “REOPENED” statuses for reviews

Improvement

  • [SONAR-1183] – Add the profile used in the TimeMachine
  • [SONAR-1688] – Search box does not allow mouse clicks to select the item.
  • [SONAR-1922] – Add a kind of version control for quality profiles
  • [SONAR-2164] – Add an option to skip the quadratic “Package design analysis” phase
  • [SONAR-2397] – Add the ability to sort the reviews result in the “Reviews” page on any column
  • [SONAR-2402] – When specifying a review id in the “Reviews” page all other filter value should be deactivated/reinitialized
  • [SONAR-2414] – Refactor the Cloud page
  • [SONAR-2419] – Improve permalink visibility on review
  • [SONAR-2421] – By default when using the reviews web service API, search is limited to “VIOLATION” whereas this should not be the case
  • [SONAR-2425] – Add index on CHARACTERISTIC_PROPERTIES.CHARACTERISTIC_ID
  • [SONAR-2426] – Allow to directly assign a violation to users
  • [SONAR-2432] – Tune best and worst values for coverage metrics
  • [SONAR-2433] – Allow 2-letter-usernames
  • [SONAR-2436] – Improve the look&feel of html button
  • [SONAR-2438] – Display the last update date of reviews
  • [SONAR-2441] – The ChannelDispatcher create a new String object each time it consumes a character by itself
  • [SONAR-2443] – Improve the user select-box when assigning violation and searching for review
  • [SONAR-2450] – Display the last comment on each review in the Reviews page
  • [SONAR-2453] – Update the way “FALSE-POSITIVE” reviews are managed
  • [SONAR-2454] – The review assignee field must be set to null when a violation is flag as false-positive
  • [SONAR-2455] – Remove the dependency classworlds-1.1 from plugin API
  • [SONAR-2462] – A “False-Positive” review should be closed only when the underlying violation disappears
  • [SONAR-2463] – The creation date of violation should not be reinitialized when the message of the violation is changing
  • [SONAR-2469] – API: allow to change instantiation strategy of batch extensions
  • [SONAR-2485] – Best value should be set for lcom4 to 1
  • [SONAR-2488] – Add the id for violations in the WS Client
  • [SONAR-2497] – Add batch properties to include/exclude plugins to load
  • [SONAR-2505] – Dry Run mode
  • [SONAR-2507] – Batch must load plugins without connecting to database
  • [SONAR-2515] – API: get list of installed plugins
  • [SONAR-2518] – Do not list core plugins in the System Info page
  • [SONAR-2521] – Add antiResourceLocking=true to Tomcat descriptor
  • [SONAR-2525] – Stop displaying the SCM revision number in the TimeMachine service
  • [SONAR-2553] – API: compute the variations on all measures
  • [SONAR-2574] – API: configure the working directory used by org.sonar.api.utils.command.Command
  • [SONAR-2581] – Support server setup in Java Web Service client

Bug

  • [SONAR-553] – When doing a historical analysis, the project links are changed
  • [SONAR-1902] – After removing a column in a filter, the move left functions jumps two columns
  • [SONAR-2268] – Wrong parameter can be saved despite error message
  • [SONAR-2390] – Users page fails on Oracle with ORA-01795 error: maximum number of expressions in a list is 1000
  • [SONAR-2396] – Null pointer exception when alert on New Violation
  • [SONAR-2410] – Footer extension is hidden by sidebar
  • [SONAR-2428] – Dashboard and drilldown shows different number of new violations
  • [SONAR-2445] – Do not remove BouncyCastle security provider
  • [SONAR-2449] – ‘updated_at’ attribute of a review is not updated when a comment is added
  • [SONAR-2457] – Source shown on review even if user does not have view source privilege.
  • [SONAR-2459] – Sonar AST rules don’t generate any violations when the java bytecode is not available
  • [SONAR-2464] – Metric.Builder should set best and worst values for metrics with type percent
  • [SONAR-2473] – Closed reviews can have their “updated_at” timestamp updated when CloseReviewsDecorator is executed
  • [SONAR-2487] – Do not analyse bytecode, when property “sonar.skipDesign” set to “true”
  • [SONAR-2491] – Broken Java Service Wrapper script on Solaris -> bad substitution for “${WRAPPER_CMD:0:60}” in getpid()
  • [SONAR-2493] – build-war.sh fails to run Ant
  • [SONAR-2495] – Sonar Batch fails to unregister JDBC driver, causing memory leak
  • [SONAR-2512] – commons-configuration has wrong transitive dependencies on commons-beanutils
  • [SONAR-2535] – The resource viewer displays an error message when there are more than 1’000 violations on a resource
  • [SONAR-2536] – Execution of FindBugs might leave unterminated thread
  • [SONAR-2571] – Unnecessary escaping for newlines in output from web-services
  • [SONAR-2605] – Dashboard crashes if a project variation is configured as “since a version”

Task

  • [SONAR-2475] – API: delete deprecated Rule API

Release notes 2.8

New Feature

  • [SONAR-1957] – Provide a way to directly “flag” a violation as “false-positive” from UI
  • [SONAR-1973] – Provide a way to review a violation
  • [SONAR-2298] – Provide a common way to bootstrappers (Ant, Gradle) to support multi-modules mode
  • [SONAR-2319] – Add tool to compare two profiles
  • [SONAR-2327] – Provide a new “Reviews” service
  • [SONAR-2347] – Close a review when its corresponding violation is fixed
  • [SONAR-2349] – New rule to detect empty Java files
  • [SONAR-2357] – Create example plugin
  • [SONAR-2382] – Create a new “reviews” web service API
  • [SONAR-2384] – Create a markdown dedicated to Sonar needs

Improvement

  • [SONAR-654] – Resource must be declared in context configuration under Tomcat
  • [SONAR-791] – When the source directory is not exactly the java package root, Sonar should stop the analysis
  • [SONAR-897] – Support Jetty 7
  • [SONAR-1667] – Add property ‘ignoreAnnotations’ for UselessOverridingMethod PMD rule
  • [SONAR-1909] – New extension point: batch lifecycle listener
  • [SONAR-2107] – NPE when saving a violation on a null rule
  • [SONAR-2146] – Squid for Java must use the new PFS to work with InputFile objects
  • [SONAR-2201] – Display violations of projects
  • [SONAR-2202] – Calculate variations on quality model measures
  • [SONAR-2225] – When the DefaultResourcePersister.getLastSnapshot(..) find several snapshots, a meaningful exception must be thrown
  • [SONAR-2234] – Provide more meaningful message when persist operation failed
  • [SONAR-2249] – Display Violation message with new lines in web
  • [SONAR-2275] – Remove the Checkstyle “Design For Extension” rule from the default “Sonar Way” and “Sun checks” quality profiles
  • [SONAR-2278] – Improve exception handling during code inspection
  • [SONAR-2279] – API : new extension points to handle lifecycle events
  • [SONAR-2282] – When the last line of a source code file is a blank line, this line is not currently displayed but should be
  • [SONAR-2284] – Upgrade to JRuby 1.6
  • [SONAR-2299] – Show Hibernate SQL only if debug logging level enabled, but not info level
  • [SONAR-2303] – “Architectural constraint” rule not accepts patterns with spaces
  • [SONAR-2321] – The Cobertura plugin must not search for XML reports when Cobertura has not been executed
  • [SONAR-2322] – Filter unit tests files listed in surefire reports
  • [SONAR-2323] – Remove logs specific to Maven
  • [SONAR-2344] – Improve the algorithm in charge to define/update the creation date of each violation
  • [SONAR-2366] – Upgrade embedded database to Derby 10.7.1.1
  • [SONAR-2371] – SurefireSensor should not depend on project packaging
  • [SONAR-2372] – Upgrade to cobertura-maven-plugin 2.5
  • [SONAR-2380] – The “violations” web service API must not return “false-positive” violation
  • [SONAR-2381] – The “violations” web service API must return violations decorated with review
  • [SONAR-2386] – Value of lineId for Violation is not deterministic
  • [SONAR-2411] – Filter out best values for resources in drilldown

Task

  • [SONAR-2341] – API: Deprecate Project.getPackaging
  • [SONAR-2409] – Remove ability to use deprecated property “branch”

Bug

  • [SONAR-1865] – Dollars ($) are not accepted in java class names
  • [SONAR-1898] – Plugin.getName() was deprecated in Sonar 2.2, but still used and can cause errors
  • [SONAR-2100] – NPE when using JNDI database connection
  • [SONAR-2115] – Files with Windows end of lines are badly parsed by syntax highlighter
  • [SONAR-2140] – Strange behavior when a Java class does not define the correct package
  • [SONAR-2176] – When changing defaultValue for rule parameter, value will not be updated in database
  • [SONAR-2179] – The “bulk change” option of quality profiles fail when there are too many selected rules
  • [SONAR-2255] – The metric “classes” must not be 0 on unit tests
  • [SONAR-2261] – Exclusion patterns must be trimmed
  • [SONAR-2266] – API : do not inject non-existent source/test directories in ProjectFileSystem
  • [SONAR-2276] – BootStrapper’s class loader doesn’t isolate resources
  • [SONAR-2285] – Can not start server if installation path contains whitespaces
  • [SONAR-2293] – Line number representation in source code view are wrong for files that use mixed line endings
  • [SONAR-2300] – Linux scripts do not work, if Sonar was built on Windows
  • [SONAR-2301] – ClassComplexityCheck NullPointerException
  • [SONAR-2306] – Conflicts with local ruby gems
  • [SONAR-2309] – Error when browser locale is Hebrew
  • [SONAR-2311] – When the root kee of a Maven multi-module project is changing, each next Sonar analysis throw a NonUniqueResultException exception
  • [SONAR-2329] – NonUniqueResultException occurs when analyzing both a maven module and its parent
  • [SONAR-2332] – Findbugs plugin must remove temporary files created during execution
  • [SONAR-2338] – Unable to drilldown by dependency metrics from sub-project
  • [SONAR-2346] – Failing with Current container state was: CONSTRUCTED
  • [SONAR-2348] – Wrong package of empty Java files
  • [SONAR-2358] – Mechanism to calculate checksums for violations is unstable
  • [SONAR-2359] – Most of properties sonar.jdbc.* should not be required when JDBC datasource is loaded from JNDI
  • [SONAR-2367] – Filter error when a column is on a disabled metric
  • [SONAR-2369] – User list is not correctly sorted in the “Groups” page
  • [SONAR-2378] – Sonar zip archive contains wrong attributes for directories
  • [SONAR-2379] – sonar-ws-client: ClassCastException in DependencyUnmarshaller
  • [SONAR-2413] – Empty variations in measure drilldown pages

Release notes 2.7

New Feature

  • [SONAR-1846] – Integrate information from SCM into Sonar core
  • [SONAR-1923] – New option to force downcase of username during authentication (for Active Directory)
  • [SONAR-2218] – Code Coverage of new source code
  • [SONAR-2230] – Provide a new /api/profiles web service
  • [SONAR-2272] – Dispatch batch events via EventBus

Improvement

  • [SONAR-1914] – coverage_line_hits_data should be available in decorator
  • [SONAR-2145] – Remove Clover from the Sonar core and add it to the Sonar plugins forge
  • [SONAR-2163] – Change the service wrapper
  • [SONAR-2189] – Remove the component SquidSearch
  • [SONAR-2205] – Web service /api/rules should provide configKey
  • [SONAR-2214] – Increase the maximum size of chart extensions
  • [SONAR-2231] – Don’t use module sonar-deprecated in core plugins
  • [SONAR-2238] – Remove the metric “uncovered_complexity_by_tests”
  • [SONAR-2239] – Improve the display of branch coverage by line
  • [SONAR-2240] – Replace the metric branch_coverage_hits_data by conditions_by_line and covered_conditions_by_line
  • [SONAR-2243] – logs directory does not exist when unzipping Sonar since migration to GIT
  • [SONAR-2256] – Add a link to raw file
  • [SONAR-2274] – API: add utility class to execute command-lines
  • [SONAR-2277] – Re-activate GZIP compression of HTTP responses for IE6
  • [SONAR-2280] – ProjectFileSystem.resolvePath should return canonical file
  • [SONAR-2287] – Add measures about new violations to filters
  • [SONAR-2288] – Group lines in coverage viewer
  • [SONAR-2289] – Increase timeouts of embedded database startup/shutdown
  • [SONAR-2318] – Increase performance of viewers

Bug

  • [SONAR-2193] – Pattern matching doesn’t work if pattern ends on “/**”
  • [SONAR-2204] – Incorrect URL encoding in sonar-ws-client with httpclient 4.x
  • [SONAR-2208] – undefined method `getSystemLoadAverage’
  • [SONAR-2212] – Sonar 2.6 cannot run on tomcat 5.5
  • [SONAR-2213] – in the Reports reuse section, when I enter a relative path to the Cobertura report path, it still looks in the default path
  • [SONAR-2228] – Wrong implementation of ActiveRuleParam#equals()
  • [SONAR-2233] – New user always created with username in lowercase, whereas should not
  • [SONAR-2241] – Default for Illegal Instantiations is empty
  • [SONAR-2246] – Cobertura: wrong uncovered lines and uncovered conditions on anonymous classes
  • [SONAR-2247] – Static files locked by jetty in dev mode on Windows
  • [SONAR-2251] – Unstable state of violations when stopping a build
  • [SONAR-2259] – Incorrect URL encoding in sonar-ws-client with httpclient 3.x
  • [SONAR-2267] – The “duplicated blocks” measure on each file is not correct when a duplication involved more than two blocks

Task

  • [SONAR-2257] – Cleanup sonar-plugin-api dependencies

Release notes 2.6

New Feature

  • [SONAR-1481] – Allow Findbugs extensions
  • [SONAR-2106] – New Java library to bootstrap project analysis
  • [SONAR-2123] – New annotation to allow specify in which environments BatchExtension should be active
  • [SONAR-2148] – New properties to manage level of Java language
  • [SONAR-2151] – New property to manage source encoding
  • [SONAR-2172] – API: New extension point – Initializer

Improvement

  • [SONAR-1280] – Add experimental Findbugs rules
  • [SONAR-1526] – ResourceFilters are not used by Squid
  • [SONAR-1664] – Add access to project settings/properties
  • [SONAR-2046] – Synchronize unmarshallers from sonar-ws-client to sonar-gwt-api
  • [SONAR-2066] – Allow PUT requests from Java Web Service Client
  • [SONAR-2067] – Upgrade to JRuby 1.5
  • [SONAR-2075] – Add the ability for a plugin to extend an other plugin
  • [SONAR-2110] – Add Tomcat 7.x to list of supported servers
  • [SONAR-2114] – Cardinality of checkstyle rule Type Name should be updated to multiple
  • [SONAR-2126] – Change API to work with project and file system of a project
  • [SONAR-2127] – API: do not automatically create hierarchy of resource tree
  • [SONAR-2130] – Make measures of Java methods/classes available to plugins
  • [SONAR-2138] – Displaying differential values in % can be misleading
  • [SONAR-2153] – API: A decorator should override formulas
  • [SONAR-2154] – API: add the minimum scope of resource to persist in SumChildDistributionFormula
  • [SONAR-2165] – Cardinality of checkstyle rule Local Variable Name should be updated to multiple
  • [SONAR-2166] – Cardinality of checkstyle rule Member Name should be updated to multiple
  • [SONAR-2167] – Improve descriptions and default values of Checkstyle naming convention rules
  • [SONAR-2168] – Add the parameter tabWidth to the Checkstyle Indentation rule
  • [SONAR-2169] – API: Add marker interface CoverageExtension
  • [SONAR-2188] – API: add parameters from and to to timemachine chart

Bug

  • [SONAR-1302] – Authenticated sessions do not expire
  • [SONAR-1800] – Context ClassLoader can be changed during execution of Maven plugin and should be restored
  • [SONAR-2094] – Loosing custom profile when starting with missing plugin
  • [SONAR-2113] – Static resource loading is not working
  • [SONAR-2116] – Cannot build 2.5 war, ant-nodeps-1.7.0.jar library is missing
  • [SONAR-2133] – Sonar doesn’t work out of the box with PostgreSQL 9.0
  • [SONAR-2137] – Incorrect violation severity is displayed on violation tab
  • [SONAR-2149] – Resource filters are ignored in complexity distributions of Java projects
  • [SONAR-2155] – Resource filters are ignored in RFC/LCOM4 distributions of Java projects
  • [SONAR-2159] – The total classes used in complexity distribution is different than the number of classes
  • [SONAR-2161] – Pmd plugin doesn’t accept 5 and 6 as valid Java versions
  • [SONAR-2171] – Do not compute LCOM4/RFC measures when Java bytecode is not available
  • [SONAR-2174] – A SQL request in DBCleaner plugin generates two locks on the table SNAPSHOTS
  • [SONAR-2180] – NoClone Checkstyle module in error
  • [SONAR-2184] – Can not select a period on custom dashboards
  • [SONAR-2191] – Source cannot be viewed in IE6
  • [SONAR-2192] – Anonymous classes should not be shown in RFC and LCOM4 distribution

Release notes 2.5

New Feature

  • [SONAR-249] – Differential views (e.g. : changes during the last 7, 30 and 90 days)
  • [SONAR-833] – New Web Service to get history of measures (time machine)
  • [SONAR-1450] – Add support for incremental review of incoming violations
  • [SONAR-1663] – Limit Sonar Database size : add a purge job
  • [SONAR-1722] – Provide an inheritance mechanism on Quality Profiles
  • [SONAR-1760] – Support the annotation “@SuppressWarnings” at class and method levels
  • [SONAR-1817] – New rule to create violation on each NOSONAR tag occurence
  • [SONAR-1930] – New rule : depth of inheritance should not exceed a given threshold
  • [SONAR-1931] – New rule : total class complexity should not exceed a pre-defined threshold
  • [SONAR-1932] – New rule : instruction “continue” should not be used
  • [SONAR-1933] – New rule : break instruction should not be used outside a switch statement

Improvement

  • [SONAR-971] – Cardinality of checkstyle rule TodoComment should be updated to multiple
  • [SONAR-1405] – The API must optionally allow plugins to add rule violations on lines with //NOSONAR tag
  • [SONAR-1493] – A SQL Select Query is done on Rules table each time a new violation is saved
  • [SONAR-1556] – When a language is specified with the ‘sonar.language’ property but not supported, a clear message must be displayed
  • [SONAR-1683] – API: remove the dependency on maven-dependency-tree
  • [SONAR-1729] – Violations decorator should test if the measure exist before saving something
  • [SONAR-1809] – Export / import alerts attached to a quality profile
  • [SONAR-1829] – Rename the term “Priority” by “Severity” for rules
  • [SONAR-1845] – Create a new Sonar rule to check method complexity
  • [SONAR-1948] – Temporary folder is not deleted after installation of plugins
  • [SONAR-1977] – Ignore violations from findbugs report, if rule not activated in Sonar
  • [SONAR-1989] – Ruby API should cast values of widget properties
  • [SONAR-1992] – Update MsSQL JDBC driver jTDS to 1.2.4 version
  • [SONAR-2007] – Remove the useless ISO Categories
  • [SONAR-2011] – Remove the Maven POM from Sonar project metadata
  • [SONAR-2017] – Log execution time of decorators
  • [SONAR-2024] – Improvements to Java WS client (property update, violation limit, rules, …)
  • [SONAR-2031] – Remove the feature “reuse configuration” of the plugins Checkstyle and PMD
  • [SONAR-2032] – Delete the measures on metric ‘violations’ and rule priority
  • [SONAR-2039] – Allow non-admin users to backup quality profiles
  • [SONAR-2057] – Move quality profile link from dashboard header to description widget

Bug

  • [SONAR-1605] – Issue with Backup/Restore : end tag name </name> must match start tag name <value>
  • [SONAR-1811] – The file ../../logs/sonar.log is created when using the WAR packaging
  • [SONAR-1819] – Unable to restore a Sonar backup which contains some manual metric definitions
  • [SONAR-1978] – The Squid “Unused private method” doesn’t report a violation at correct line with generic methods
  • [SONAR-1979] – Missing FindBugs rule : Dead store due to switch statement fall through to throw
  • [SONAR-1981] – If name not specified for rule, then AnnotationRuleParser should set it equal to key
  • [SONAR-1987] – Copied rule can’t be restored from configuration backup
  • [SONAR-1988] – Description of rule parameters should be optional
  • [SONAR-1991] – Comment in config file contain trunkated link
  • [SONAR-2003] – Plugin inter-dependencies do not work with Maven 3
  • [SONAR-2005] – Remove the useless Findbugs rule “DMI_VACUOUS_CALL_TO_EASYMOCK_METHOD”
  • [SONAR-2010] – The ChannelReader doesn’t allow a regular expression to consume more than 8’000 characters
  • [SONAR-2015] – Inconsistency between Undocumented API measure and Undocumented API violations
  • [SONAR-2016] – Sonar plugins and so extensions are not accessible from the Sonar Maven plugin
  • [SONAR-2029] – The field Rule.configKey should be nullable
  • [SONAR-2036] – Violations widget: do not display bar charts when no violations
  • [SONAR-2037] – The index on ‘measure_data.snapshot_id’ is needed for DB performance
  • [SONAR-2056] – Different behaviour of ProjectClasspath under Maven 2.x and 3.x
  • [SONAR-2101] – Drilldown is sometimes empty when the parameter characteristic is set

Release notes 2.4.1

Bug

  • [SONAR-1990] – ORA-01795: fail to upgrade Oracle database to Sonar 2.4

Release notes 2.4

New Feature

  • [SONAR-1563] – Update Center: display installed plugins
  • [SONAR-1643] – Customizable dashboards
  • [SONAR-1676] – Support different layouts of dashboards
  • [SONAR-1716] – Create Widget edit mode for dashboards
  • [SONAR-1832] – Create an architecture rule engine
  • [SONAR-1886] – Update Center: uninstall a plugin
  • [SONAR-1887] – Update Center: display available plugin updates
  • [SONAR-1888] – Update Center: upgrade a plugin
  • [SONAR-1889] – Update Center: display new available plugins
  • [SONAR-1890] – Update Center: install a new plugin

Improvement

  • [SONAR-1668] – Name of the project does not get updated
  • [SONAR-1705] – When using the WAR packaging to deploy Sonar, if the “sonar.home” directory doesn’t exist a clear message/exception must be displayed
  • [SONAR-1772] – Remove the use of the Maven Findbugs plugin to directly pilot the Findbugs library
  • [SONAR-1784] – sonar-surefire-plugin should be reusable
  • [SONAR-1794] – Handle a new type of “text” property value in the Quality Profile service
  • [SONAR-1830] – Creation of a new “rating” metric type
  • [SONAR-1834] – When exist, the source code exclusion patterns should be displayed in the Maven log
  • [SONAR-1837] – Add profiling logs to database optimization tasks
  • [SONAR-1838] – Plugin inter-dependencies
  • [SONAR-1840] – Accept remote execution of batch when using embedded database
  • [SONAR-1844] – The “Squid” rule engine should be renamed “Sonar” rule engine in the web interface
  • [SONAR-1847] – When saving a violation with a rule that doesn’t exist, a NullPointerException is thrown instead of a meaningful exception
  • [SONAR-1851] – Support Maven 3.0 final
  • [SONAR-1852] – Add the analysis date to the Java web service client libray
  • [SONAR-1853] – Create a new CodeReaderFilter mechanism to prevent logic duplications between Channel(s)
  • [SONAR-1862] – Implement a child-first classloader strategy for plugins
  • [SONAR-1871] – Generate a meaningful error message when the PMD XPATH rule is activated without setting the “XPATH_EXPRESSION_PARAM” and “XPATH_MESSAGE_PARAM” values
  • [SONAR-1875] – Improve CodeReaderFilter with channel capabilities
  • [SONAR-1878] – Add a meaningful error message when a Source can’t be persisted in the Sonar DB
  • [SONAR-1893] – Update Center: display new sonar releases
  • [SONAR-1897] – Update Center: web service to get information about installed plugins
  • [SONAR-1901] – “Undocumented API” is not defined as a rule in Sonar
  • [SONAR-1910] – Add a web service to upgrade database version
  • [SONAR-1911] – Update current “/api/server” web service to get server status
  • [SONAR-1913] – Add a property to deactivate Update Center
  • [SONAR-1943] – Add proxy authentication support for update center
  • [SONAR-1952] – System Info page is very slow to display due to database statistics
  • [SONAR-1962] – Increase contrast in Treemap colors
  • [SONAR-1963] – Minimum period used in purge tasks should be configurable
  • [SONAR-1808] – sonar-cobertura-plugin should be reusable
  • [SONAR-1915] – Deploy core plugins to maven repository

Bug

  • [SONAR-1850] – Libraries are duplicated in the table SNAPSHOTS
  • [SONAR-1856] – Filters must exclude measures on quality model characteristics
  • [SONAR-1861] – Batch-Maven-Plugin integration: non-jar plugin-files aren’t accessible via Classloader
  • [SONAR-1900] – When RulesRepository not presented, Sonar server startup failed
  • [SONAR-1903] – AnnotationCheckFactory doesn’t work for cloned rules
  • [SONAR-1904] – WildcardPattern builds the wrong regexps
  • [SONAR-1950] – Clicking on a shared inactive dashboard throw an error
  • [SONAR-1955] – Sonar Maven plugin cannot recognize escaped characters in the POM file’s <name/> tag
  • [SONAR-1964] – Quality model measures are wrong in the page ‘Components’

Release notes 2.3.1

Bug

  • [SONAR-1881] – Unable to migrate to Sonar 2.3 : the “Disable deprecated active rules” step fails
  • [SONAR-1856] – Filters must exclude measures on quality model characteristics

Release notes 2.3

New Feature

  • [SONAR-738] – Honor Checkstyle Suppressions XML Document
  • [SONAR-1229] – Export/Import a given Sonar quality profile
  • [SONAR-1709] – Add static resources to plugins
  • [SONAR-1766] – Create a new PMD XPath rule and let user duplicate this rule as often as necessary
  • [SONAR-1404] – Allow to rename quality profile

Improvement

  • [SONAR-236] – Checkstyle implementation only allows one check per Checkstyle class
  • [SONAR-555] – Permalink on Time Machine charts
  • [SONAR-736] – Reuse findbugs reports
  • [SONAR-964] – Multiple Regexp hard to distinguish
  • [SONAR-990] – Add an option to activate/deactivate all the selected rules of the profile admin console
  • [SONAR-1024] – Improve the rules search engine by displaying the number of results for not selected rule level (Inactive rule)
  • [SONAR-1290] – Improve SQL requests on the Q profiles page
  • [SONAR-1328] – Ability to personalize the CheckStyle SuppressionCommentFilter and SuppressWithNearbyCommentFilter modules
  • [SONAR-1534] – Activation of all the default FindBugs rules
  • [SONAR-1557] – Findbugs should not analyzed *.jar files stored in the target/classes directory
  • [SONAR-1607] – Missing FindBugs rules
  • [SONAR-1634] – Defining a new metric with existing key results in confusing message
  • [SONAR-1641] – Exclude certain member variables (esp. logger instances) from the LCOM4 calculation
  • [SONAR-1665] – Upgrade to Commons DBCP 2.3
  • [SONAR-1669] – Add info about JDBC driver in the System Info page
  • [SONAR-1670] – Upgrade the MySql driver from version 5.1.6 to 5.1.13
  • [SONAR-1674] – Log user agent in Jetty logs
  • [SONAR-1698] – Remove the “Translation” Checkstyle rule as it works only on property files
  • [SONAR-1701] – API: search profile rules by config key
  • [SONAR-1706] – Depreciate sonar.reuseExistingRulesConfiguration
  • [SONAR-1745] – Add URL parameters to time machine charts
  • [SONAR-1747] – Add the ability to instantiate a new KeywordColorizer with a regular expression
  • [SONAR-1749] – MavenPlugin api, offer way to build nested xml-elements
  • [SONAR-1757] – Improve the error log message when a “javax.persistence.NonUniqueResultException” is thrown
  • [SONAR-1761] – Missing example in the ConstructorCallsOverridableMethod PMD rule description
  • [SONAR-1763] – Optional generation of the Checkstyle XML report
  • [SONAR-1776] – Add a page “Permalinks” to the profile console
  • [SONAR-1778] – Missing description for some system plugins
  • [SONAR-1780] – An exception should be thrown in case when two Sonar plugins try to use the same key
  • [SONAR-1781] – The use of org.sonar.api.batch.AbstractSourceImporter is error prone when importing Unit Test source code
  • [SONAR-1798] – Ability to register a number of points to a rule violation
  • [SONAR-1814] – New extension point : factory of extensions
  • [SONAR-1822] – Add the property ‘sonar.skipTendencies’ to skip calculation of measure tendencies

Bug

  • [SONAR-343] – When a rule is removed from the repository, it should be remove from the DB as well
  • [SONAR-440] – Warning when some rules are not imported from a checkstyle and/or PMD configuration file(s)
  • [SONAR-942] – Export rules configuration fails when quality profile name contains the ‘.’ character
  • [SONAR-1073] – Column “RULE_FAILURES”.”MESSAGE” is too short (maximum : 500)
  • [SONAR-1137] – When no rule engine exist on a language, all other rules are shown on the screen
  • [SONAR-1315] – Automatically filter Findbugs violations and Code coverage metrics on classes without sources
  • [SONAR-1342] – The pluginKey associated to an active rule can be wrong
  • [SONAR-1480] – No way to export Findbugs rules in a XML file and then to reimport this file to create a new Quality profile
  • [SONAR-1549] – The Sonar profile creation form doesn’t allow to import checkstyle,pmd and Findbugs conf files when several langages are defined
  • [SONAR-1637] – Getting “Java inner classes are not supported” Sonar error when analyzing Cobertura report
  • [SONAR-1638] – Warning while parsing enums
  • [SONAR-1644] – A protected method from a class A which is only used by classes extended A are badly considered as dead code.
  • [SONAR-1654] – Export rules in rules engine exports everything (Java, PHP, VB…) when you select any in plugins
  • [SONAR-1666] – Some Findbugs violations are missing in the Sonar web interface
  • [SONAR-1685] – The maven plugin fails if the property sonar.host.url ends with a slash
  • [SONAR-1687] – Filters fail when three criteria are defined
  • [SONAR-1689] – Sorting on alerts does not work anymore
  • [SONAR-1693] – Server-side extensions can not use external dependencies
  • [SONAR-1697] – XML default property values are not correctly displayed in the Settings pages
  • [SONAR-1702] – NoClassDefFoundError when using sonar-ws-client with Commons HttpClient 4.0
  • [SONAR-1712] – Fail to delete a filter if embedded database
  • [SONAR-1715] – Web Services Java Client lib : socket timeout not set
  • [SONAR-1721] – Checkstyle violation is reported for MethodParamPad since Sonar seems to be missing option in rule
  • [SONAR-1727] – Warning when aggregating empty distributions
  • [SONAR-1736] – Description of the Checkstyle “Visibility Modifier” rule is error prone
  • [SONAR-1738] – NPE in EmbeddedDatabaseFactorywhen using JNDI datasource
  • [SONAR-1751] – The method org.sonar.gwt.Utils.getPageWidth() returns 0 in IE6
  • [SONAR-1753] – Time Machine chart is not secured
  • [SONAR-1758] – Unit test EventUnmarshallerTest on ws-client module can fail according to the timezone of the machine
  • [SONAR-1767] – Violations do not show when using id instead of kee in violation drilldown to reference rule
  • [SONAR-1768] – Import of Checkstyle configuration with “message” element fails
  • [SONAR-1774] – AbstractTokenizer does not add token entries
  • [SONAR-1793] – Wrong URL construction in ViolationQuery, when depth parameter used
  • [SONAR-1802] – Can’t import FindBugs profile when some rules are duplicated in the findbugs.xml configuration file
  • [SONAR-1805] – The PMD rule CloneMethodMustImplementCloneable is badly configured in the Sonar Way quality profile (and so not activated in this default profile)
  • [SONAR-1812] – The declaration @BelongsTo(classes=GeneratesViolations.class) does not work
  • [SONAR-1813] – If the method DecoratorContext.getViolations() is called by a decorator before the ViolationsDecorator, all violations saved between those two decorators are lost
  • [SONAR-1833] – treemap ignores fractional part of metrics
  • [SONAR-1843] – The webservice /api/properties fails when requested format is XML

Release notes 2.2

New Feature

  • [SONAR-96] – Let users flag projects, packages or classes as favourites
  • [SONAR-1426] – Add mechanism for loading plugin dependencies
  • [SONAR-1535] – Ability to create events using sonar-ws-client
  • [SONAR-1552] – API : add extension points to handle server lifecycle
  • [SONAR-1559] – Widget for displaying info about plugin
  • [SONAR-1560] – Extract metadata from Sonar plugins
  • [SONAR-1590] – User-defined filters
  • [SONAR-1594] – API : support user properties

Improvement

  • [SONAR-1227] – Ability to specify the Cobertura maxmem property in the Settings page
  • [SONAR-1265] – Compatibility with Maven 3.0
  • [SONAR-1336] – Upgrade Squid from Checkstyle 4.0 to 5.1 to get the java AST
  • [SONAR-1398] – Ugrade to Checkstyle 5.1
  • [SONAR-1421] – Upgrade to Cobertura 1.9.4.1
  • [SONAR-1431] – Change the formula for complexity distribution
  • [SONAR-1523] – DIRECTORY metric is not computed when AbstractDirectoryDecorator is not implemented
  • [SONAR-1528] – Add a data field to events
  • [SONAR-1536] – Do not use the maven plugin to execute Checkstyle
  • [SONAR-1537] – Upgrade PMD from 4.2.2 to 4.2.5
  • [SONAR-1542] – Do not use the maven plugin to execute PMD
  • [SONAR-1543] – Support of Clover 3
  • [SONAR-1550] – Publish checksums on the download page
  • [SONAR-1567] – Remove the internal Maven repository
  • [SONAR-1582] – Do not support Clover 1 anymore
  • [SONAR-1583] – Upgrade default version of Clover to 2.6.3
  • [SONAR-1589] – Sonar should provide log4j-over-slf4j
  • [SONAR-1592] – build-war.sh uses unnecessary shell syntax
  • [SONAR-1595] – A property to set an explicit list of modules to include in analysis
  • [SONAR-1599] – Web Services Java Client lib : support authentication with the connector HttpClient 4.0
  • [SONAR-1609] – In the build.xml script used to package the war file, the property “webxml” should be defined on the “war” task
  • [SONAR-1618] – Upgrade to Derby 10.6.1.0
  • [SONAR-1619] – Create a new Syntax Highlighter tokenizer able to work with Regular Expression
  • [SONAR-1620] – Should be possible to retrieve all human-readable measures for specified resource
  • [SONAR-1631] – Add tooltip to icons of resource type (project, package, …)
  • [SONAR-1635] – Unconditionnaly run sonar analysis even with PMD configured to fail build
  • [SONAR-1636] – Change priority icons
  • [SONAR-1655] – Upgrade version of Mockito to 1.8.5

Bug

  • [SONAR-543] – Transitive dependency on PMD version 3.9 in a parent pom breaks Maven Sonar goal execution
  • [SONAR-827] – if we have a column on dashboard with a new metric created by plugin and if we delete this plugin without removing this column, next startup crash
  • [SONAR-992] – Multiple source folders are not supported by the Maven Checkstyle plugin
  • [SONAR-1066] – JUnit aggregate report parsing problem
  • [SONAR-1118] – Unable to do sonar:sonar in multi module project
  • [SONAR-1153] – When a duplicated line is in several different duplicated blocs, the metrics duplicated lines is wrong
  • [SONAR-1179] – PMD and Checkstyle rule extensions are not executed when using Maven 2.1+
  • [SONAR-1201] – Violations on PreserveStackTrace PMD rule are duplicated
  • [SONAR-1230] – When more than 2 files are involved in the same duplications, Sonar only takes the 2 first into account
  • [SONAR-1296] – Problem of scrollbar horizontal with treemap activated
  • [SONAR-1321] – Unit test results not showing anymore.
  • [SONAR-1434] – sonar-maven-plugin 2.0-SNAPSHOT + Maven 3 (alpha 6) + Clover 2 doesn’t work
  • [SONAR-1483] – make Sonar able to cope with more than 2 files involved in duplicated code.
  • [SONAR-1509] – login does not work with uid values containing a whitspace
  • [SONAR-1538] – Missing PMD rule SimplifyBooleanExpressions
  • [SONAR-1545] – Some checkstyle rules fail with Unable to instantiate
  • [SONAR-1555] – Sonar analyzer crashes parsing JSNI code
  • [SONAR-1593] – In the new check API, parameter name are used instead of parameter keys
  • [SONAR-1597] – Do not delete project settings when restoring a configuration backup
  • [SONAR-1606] – Unused protected methods from Abstract class should not be considered as dead code
  • [SONAR-1610] – Unexpected result when sorting on ‘Version’ Column
  • [SONAR-1617] – Parsing Multi-line comments beginning with /*/
  • [SONAR-1625] – Keyword ‘switch’ is misspelled in JavaKeywords
  • [SONAR-1628] – Bug in EventQuery class detected as Blocker by Sonar itself
  • [SONAR-1639] – Prevent Sonar analysis from stopping when a dependency between two resources can’t be created
  • [SONAR-1673] – OutOfMemory error on the web service “resources”

Release notes 2.1.2

Bug

  • [SONAR-1524] – Prevent successful authentication with blank password (only with authentication plugins like LDAP and Identity)
  • [SONAR-1572] – After 2.0.1 to 2.1.1 upgrade, time machine causes an exception on some projects
  • [SONAR-1574] – When using the “sonar.branch” property, maven libraries are missing in the Design and Libraries services

Release notes 2.1.1

Bug

  • [SONAR-1435] – Sonar 2 doesn’t want to sort my projects by names in the homepage
  • [SONAR-1551] – The code syntax highlighter API has slightly changed from 2.0 to 2.1 and some plugins (Flex, …) are no more compatible with Sonar 2.1

Release notes 2.1

New Feature

  • [SONAR-1090] – Create a new rule to detect unused private and protected methods
  • [SONAR-1257] – New page “Libraries” for projects
  • [SONAR-1317] – Create a new rule to detect calls to deprecated methods
  • [SONAR-1414] – Add an administration console of installed plugins and sytem info
  • [SONAR-1419] – Create a new page “Dependencies” to search for library usages
  • [SONAR-1420] – Create custom maven lifecycle for packaging plugins
  • [SONAR-1429] – Create a Web Service for project events
  • [SONAR-1456] – Create a test framework for Sonar plugins
  • [SONAR-1462] – Add new metrics in the project size widget

Improvement

  • [SONAR-800] – Version column of Snapshot not wide enough
  • [SONAR-1079] – Usability improvements into the drilldown pages
  • [SONAR-1417] – Improve the layout of hotspots
  • [SONAR-1418] – CPD is memory hungry as all java source code is loaded is memory whereas this is not necessary
  • [SONAR-1422] – Do not use the deprecated parameter “format” of the cobertura maven plugin
  • [SONAR-1424] – Upgrade plugins to GWT 2.0
  • [SONAR-1432] – Add new metrics in the complexity widget
  • [SONAR-1437] – translation error on Design page
  • [SONAR-1458] – Paginate the source code
  • [SONAR-1463] – Add decorators to calculate average complexity / file and /paragraph
  • [SONAR-1467] – Exclude hidden files from analysis
  • [SONAR-1473] – Change the formula to calculate average complexity
  • [SONAR-1479] – Display sources even if the syntax highlighter fails
  • [SONAR-1482] – Plugin API : register extension instances on top of extension classes
  • [SONAR-1484] – Statements should be moved under Lines of code as there are a size metric
  • [SONAR-1485] – Rename the metric ‘cmpx’ in the project dashboard
  • [SONAR-1491] – Add the timeout parameter to Findbugs
  • [SONAR-1500] – Remove useless tabs from the global Settings page
  • [SONAR-1501] – Add the possibility to override default CPD properties when covering a new language
  • [SONAR-1502] – Add a new property ‘sonar.cpd.skip’ to skip detection of duplicated code
  • [SONAR-1518] – Purge event orphans
  • [SONAR-1520] – Support the auto blocking feature of Nexus 1.6

Bug

  • [SONAR-988] – PMD plugin fails when java target is jsr14
  • [SONAR-1209] – Time Machine displays first snapshot of a day in middle columns
  • [SONAR-1386] – import java.net.URL is not colorized properly
  • [SONAR-1428] – limit parameter is limited to 300 on violations API
  • [SONAR-1430] – Formula do not work in plugins
  • [SONAR-1435] – Sonar 2 doesn’t want to sort my projects by names in the homepage
  • [SONAR-1436] – Architecture metrics are not calculated when only one package => widget does not appear
  • [SONAR-1439] – Findbug failed for one project since 2.0.1 upgrade
  • [SONAR-1440] – Sonar 2.0.X is not compatible with Maven 2.0.7 and 2.0.8
  • [SONAR-1444] – The Checkstyle rule RegexpSinglelineJava, RegexpSingleline and RegexpMultiline fail
  • [SONAR-1445] – Uncovered Lines and Uncovered Conditions not longer available as metrics under “Coverage”
  • [SONAR-1449] – Adding option -Dsonar.exclusions=**/*.aj produce unexpected results
  • [SONAR-1459] – The Findbugs collector ignores the exclude-findbug files
  • [SONAR-1476] – The ‘all_pass_authorizer.rb’ has a syntactical error that prevents it from running
  • [SONAR-1495] – ORA-01795 (maximum number of expressions in a list is 1000) when deleting a project from UI
  • [SONAR-1496] – The Java syntax highlighter fails when cpp and c comments are nested
  • [SONAR-1503] – Bug with inner classes
  • [SONAR-1515] – with security saving plugin settings for a project results in error for the project admin
  • [SONAR-1519] – Security issue when checking project roles

Task

  • [SONAR-1469] – Creation of a new sonar-channel maven module

Release notes 2.0

New Feature

  • [SONAR-137] – Calculate Chidamber and Kemerer Metrics
  • [SONAR-501] – New “Components DSM” service
  • [SONAR-1255] – Add a new “Design” tab in the Resource Viewer
  • [SONAR-1256] – Create a new “Design” widget to display in the project dashboard
  • [SONAR-1346] – Java library for Sonar web service API

Improvement

  • [SONAR-403] – Upgrade to checkstyle 5
  • [SONAR-695] – Slight alignement issue when having images in tables
  • [SONAR-1116] – Upgrade to Findbugs 1.3.9
  • [SONAR-1168] – Add the possibility that a metric does not show in TimeMachine, treemap…
  • [SONAR-1178] – Use the quality profile name in the description included in the PMD export file
  • [SONAR-1247] – Extend the sensor mechanism to save violations from decorators
  • [SONAR-1282] – Improve log management at startup
  • [SONAR-1319] – Checkstyle rules : ‘Header’ and ‘RegexpHeader’ are not available in Sonar
  • [SONAR-1323] – Abstract decorators for distribution should be depreciated and replaced by formulas
  • [SONAR-1326] – FILES and CLASSES metrics should both be fed
  • [SONAR-1334] – Automatically create a user in the sonar db if authentication has been successfully done against an external authentication server
  • [SONAR-1339] – Be able to handle more than 1,000 projects in the home page on Oracle
  • [SONAR-1343] – Add a new “maxHeap” parameter on the Sonar Findbugs plugin (default value = 512)
  • [SONAR-1344] – When processing violations, -1 as line number should associated to line 0 of the file
  • [SONAR-1359] – Add the parameter metrics=true|false to the resources web service
  • [SONAR-1364] – Log HTTP requests
  • [SONAR-1379] – Squid Error while parsing comment
  • [SONAR-1382] – Get server metadata from WS client library
  • [SONAR-1383] – Add trends to WS client library

Bug

  • [SONAR-862] – Support non-public PostgreSQL schema
  • [SONAR-887] – XML Findbugs report can be badly formatted in “<Errors> <AnalysisError>” section
  • [SONAR-955] – Sonar fails to add row to measure_data table due to schema limitation
  • [SONAR-1213] – Line number is not available when there are violations on UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR Findbugs rule
  • [SONAR-1216] – EQ_DOESNT_OVERRIDE_EQUALS Findbugs rule is buggy
  • [SONAR-1260] – clouds, hotspots, violations not displaying after analysis using -Dsonar.projectDate
  • [SONAR-1276] – Upgrade fails when migrating and users perform analysis
  • [SONAR-1283] – Exclusions are not handled properly by Cobertura
  • [SONAR-1284] – can’t build sonar with maven 3 due to duplicate dependencies in pom
  • [SONAR-1306] – Authentication plugin is instantiated twice
  • [SONAR-1310] – Unable to specify or override the Maven Cobertura Plugin version (due to SONAR-1055)
  • [SONAR-1311] – URLs are wrong on projects starting with a digit
  • [SONAR-1312] – Sonar Squid’s org.sonar.squid.text.* doesn’t correctly manage all kind of end-of-line character(s)
  • [SONAR-1316] – Cannot upgrade to 1.12 using MSSQL Server
  • [SONAR-1324] – Multi-module build fails with NPE when language set to non-java
  • [SONAR-1327] – Complexity distribution by class is in fact a complexity distribution by file
  • [SONAR-1338] – The language of a file is unknown when upgrading to sonar 1.12
  • [SONAR-1356] – Fix UTF-8 issues with MS SQL Server
  • [SONAR-1362] – Magnifying glass points to wrong url in the drilldown
  • [SONAR-1367] – Squid doesn’t manage to correctly handle adjacent comment blocks
  • [SONAR-1380] – Packages at one level are not properly handled
  • [SONAR-1381] – Don’t escape characters in JSON
  • [SONAR-1403] – Select Snapshot in Time Machine view not working in Chrome
  • [SONAR-1406] – Missing findbugs rules in Sonar
  • [SONAR-1410] – The Java keyword “catch” is not highlighted in sources

Release notes 1.12

New Feature

  • [SONAR-61] – Link to rule description from a violation displayed in the resource viewer
  • [SONAR-630] – Sonar should have a complete user management
  • [SONAR-675] – Colorize the source code in the Resource viewer
  • [SONAR-972] – Provide a generic Sonar way to tag the source code in order to suppress a violation : //NOSONAR
  • [SONAR-1180] – add CPD options ignoreLiterals and ignoreIdentifiers
  • [SONAR-1224] – API : new extension point to add code colorization on new languages
  • [SONAR-1264] – New extension point : external management of user passwords

Improvement

  • [SONAR-658] – Include Plugin Name in Violations Annotations
  • [SONAR-840] – Faster JSON generation
  • [SONAR-881] – Use @Override annotation to avoid counting undocumentedAPI when overriding public API
  • [SONAR-1018] – NoClassDefFoundError is not correctly handled by the Sonar Maven plugin
  • [SONAR-1044] – Enable to change color scale on the treemap
  • [SONAR-1075] – Standardize the way “Best Value” is managed on Metric
  • [SONAR-1146] – Add the number of Public API in the Resource Viewer header
  • [SONAR-1147] – Add the full file path in the Resource Viewer header
  • [SONAR-1157] – Add “Uncovered lines” and “Uncovered conditions” in the “Coverage” tab of the Resource Viewer
  • [SONAR-1176] – Add the formal ID of rules in the rule’s description
  • [SONAR-1177] – Parsing Surefire reports is too slow
  • [SONAR-1184] – API : upgrade to commons-codec 1.4
  • [SONAR-1186] – Add the MS SQLServer driver to classpath
  • [SONAR-1190] – Make faster drilldown pages
  • [SONAR-1193] – Rule “Import order” misses property “Option” in configuration screen
  • [SONAR-1202] – Improve SQL request used by Sonar webservice to get snapshot names
  • [SONAR-1214] – Default priority of UWF_FIELD_NOT_INITIALIZED_IN_CONSTRUCTOR Findbugs rule must be minor
  • [SONAR-1215] – Default priority of OBL_UNSATISFIED_OBLIGATION Findbugs rule must be minor
  • [SONAR-1219] – Change default priority of SIC_INNER_SHOULD_BE_STATIC_ANON Findbugs rule from Critical to Major
  • [SONAR-1220] – Change default priority of SIC_INNER_SHOULD_BE_STATIC_NEEDS_THIS Findbugs rule from Critical to Major
  • [SONAR-1221] – Change default priority of CI_CONFUSED_INHERITANCE Findbugs rule from Critical to Minor
  • [SONAR-1222] – Change default priority of RV_CHECK_FOR_POSITIVE_INDEXOF Findbugs rule from Critical to Minor
  • [SONAR-1223] – Change default priority of DM_CONVERT_CASE Findbugs rule from Major to Info
  • [SONAR-1226] – Do some cleaning in the way CoreMetrics are organized in domains
  • [SONAR-1245] – Add titles to the treemap
  • [SONAR-1246] – The description of the PMD rule ‘Close resource’ is not explicit
  • [SONAR-1248] – Empty constructors should not be considered as public API
  • [SONAR-1250] – Improve rendering of Duplication Density in components treemap
  • [SONAR-1251] – Select metrics by domain in components treemap
  • [SONAR-1258] – Upgrade to XStream 1.3.1
  • [SONAR-1259] – Contextual title of HTML pages
  • [SONAR-1261] – Improve the script to build war file in order to prevent any use of locally installed ANT version
  • [SONAR-1285] – Improve SQL request in charge to set snapshots.isLast column to 0
  • [SONAR-1293] – No logs when rendering a plugin widget fails

Bug

  • [SONAR-1115] – Exclusion from static analysis also suppresses Surefire (JUnit) test results.
  • [SONAR-1155] – When selecting a metric that only has zero values in the treemap (size axis), it does not get refreshed
  • [SONAR-1164] – sonar.jdbc.dialect property does not correctly initialize the activerecord dialect to use
  • [SONAR-1165] – Sonar is using the wrong shema in Oracle XE when running two instances with different versions
  • [SONAR-1172] – Bad default value for the Checkstyle rule “TypeName ” in the “Sun checks” profile
  • [SONAR-1182] – Can’t open ResourceViewer to display source code
  • [SONAR-1188] – sonar-squid and sonar-plug-api artifacts have invalid checksums
  • [SONAR-1203] – Fail to purge Oracle database with error ORA-01795
  • [SONAR-1206] – Getting a 404 HTTP Error leads to a loop in url /projects
  • [SONAR-1217] – Temporary deactivate EQ_DOESNT_OVERRIDE_EQUALS Findbugs rule
  • [SONAR-1218] – Change default priority of SIC_INNER_SHOULD_BE_STATIC Findbugs rule from Critical to Major
  • [SONAR-1233] – Commented LOC metric should not count native GWT methods
  • [SONAR-1235] – Overzealous Commented LOC
  • [SONAR-1236] – Browser cache must be cleaned when upgrading Sonar
  • [SONAR-1237] – Invalid check sums for sonar-squid and sonar-plugin-api at http://repository.codehaus.org?
  • [SONAR-1253] – Cannot update project links in settings
  • [SONAR-1275] – Error when running for the first time with PostgreSQL 8.2 : ActiveRecord::ActiveRecordError: ERROR: value too long for type character varying(9)
  • [SONAR-1292] – Can not display piechart when no data
  • [SONAR-1294] – Deleting a manual metric never ends
  • [SONAR-1303] – Code colorizer mechanism doesn’t handle correctly backslash character

Wish

  • [SONAR-701] – Timeouts in sonar server HTTP connection should be configurable

Release notes 1.11.1

Bug

  • [SONAR-1182] – Can’t open ResourceViewer to display source code
  • [SONAR-1203] – Fail to purge Oracle database with error ORA-01795

Release notes 1.11

New Feature

  • [SONAR-583] – Possibility to reuse PMD and Checkstyle configuration files defined in the pom
  • [SONAR-980] – Create a “Components” service
  • [SONAR-1074] – Display the number of commented out code lines in the project Dashboard
  • [SONAR-1113] – Add maven archetypes to create plugins
  • [SONAR-1121] – API : new extension point RubyRailsPage
  • [SONAR-1122] – API : add conditions to display pages and widgets
  • [SONAR-1163] – Calculate line coverage, branch coverage and mix line/branch coverage by unit tests

Improvement

  • [SONAR-356] – Add branch coverage to Cobertura Collector
  • [SONAR-498] – When executing Sonar on an old version of a project, measures are never purged on that snapshot
  • [SONAR-704] – When clicking on a class in the cloud, this should direct to the drill down
  • [SONAR-741] – Purge job : for a given resource, the column islast must be set to “0″ for all past snapshots.
  • [SONAR-742] – Upgrade to GWT 1.7
  • [SONAR-871] – Add the number of undocum API in the dashboard in the Comment dashbox
  • [SONAR-872] – Upgrade to Hibernate 3.3
  • [SONAR-912] – Sonar war is not able to start with other port differ from 1527
  • [SONAR-939] – Open the Squid-API to get the LoC/method above a distinct complexity
  • [SONAR-958] – Better manage Maven modules whose artifact ID is changing between two quality analysis
  • [SONAR-970] – Detect whether a commented line is a comment or a commented LOC
  • [SONAR-1010] – Errors should be logged on the standard output when starting Sonar
  • [SONAR-1037] – Upgrade to ASM 3.2
  • [SONAR-1051] – Display dashboard on projects without sources
  • [SONAR-1055] – Maven Cobertura Plugin version must be set to 2.3 even if version 2.2 is defined is the pom.xml file
  • [SONAR-1060] – Add a job to systematically purge all snapshots whose scope=’ENTITY’ and islast=’0′
  • [SONAR-1061] – Add an URL to a measure from the batch API
  • [SONAR-1085] – Improve the purge mechanism to handle all cases
  • [SONAR-1087] – Contextualized breadcrumb
  • [SONAR-1094] – The constructor of org.sonar.api.resources.File should have a Language parameter
  • [SONAR-1109] – Add parameter “limit” to Violations WS
  • [SONAR-1114] – Add the NCLOC value at method level
  • [SONAR-1117] – Open a popup to display file analysis
  • [SONAR-1123] – Change the formatting when numbers are too big
  • [SONAR-1132] – add new extension point to API : Ruby on Rails Web Service
  • [SONAR-1134] – Clouds : use NCLOC instead of complexity in the “quick wins” view
  • [SONAR-1139] – API : add a method to get rule priority weights
  • [SONAR-1148] – Clicking on a File in the Hotspot service must open a new window with the Resource Viewer
  • [SONAR-1152] – A line starting with a comment but with code in it should be counted as code
  • [SONAR-1158] – Timemachine is now activated at package level
  • [SONAR-1162] – API : depreciate the metric uncovered_complexity_by_tests

Bug

  • [SONAR-270] – Sonar behind a HTTPS reverse proxy sometimes fall back to HTTP
  • [SONAR-721] – Purge last snapshot on a Maven project which has became a Maven module
  • [SONAR-818] – .CGLIBLazyInitializer.getProxyFactory: NoClassDefFoundError in org.sonar.mojo.InternalMojo#execute()
  • [SONAR-826] – Data too long for column ‘kee’ at row 1 in project xstream
  • [SONAR-908] – Oracle and sonar call with sonar.projectDate param produces an error on home page
  • [SONAR-935] – If you run in a sub-module before the container, the type gets stuck as toplevel
  • [SONAR-963] – Change group ID of Maven project
  • [SONAR-981] – Sonar doesn’t use correct test results directory when clover is skipped (maven.clover.skip=true)
  • [SONAR-1056] – When deleting a project, the column snapshot.islast is not set to ’0′ on Maven modules
  • [SONAR-1068] – Numbers of violations are still wrong in time machine chart
  • [SONAR-1071] – When an anonymous innerclass and its parent class have a method with the same signature, only one method is computed.
  • [SONAR-1084] – Cannot access Alerts of a profile in read-only mode
  • [SONAR-1088] – When copying a profile and pressing cancel, an error is raised
  • [SONAR-1093] – No default directory forced when a file is created at the root
  • [SONAR-1099] – Special characters are not displayed in unit test error message
  • [SONAR-1101] – Alerts on RCI and RCI optional are being lost during 1.10 migration
  • [SONAR-1103] – Duplicate Jdom jar (version 1.0 and 1.1)
  • [SONAR-1119] – After migrating to Sonar 1.10.1, the FindBugs collector is ignoring the exclussions filter file
  • [SONAR-1127] – REST metrics API json crash
  • [SONAR-1133] – The parameter depth=-1 in Web Services does not include root resource
  • [SONAR-1140] – File complexity is badly displayed in project dashboard
  • [SONAR-1143] – NonUniqueResultException when mvn sonar:sonar on a module after mvn sonar:sonar on the parent
  • [SONAR-1161] – Number of violations are wrong in the all projects list at the home page

Release notes 1.10.1

Bug

  • [SONAR-1057] – Pre-defined rules profiles do not have the correct priority
  • [SONAR-1059] – Rules Compliance Index is not calculated on files
  • [SONAR-1062] – Active rules with optional level are not converted to priority INFO during 1.10 migration
  • [SONAR-1064] – NumberFormatException in ParsingUtils.scaleValue
  • [SONAR-1065] – Numbers of violations are wrong in treemap and time machine

Release notes 1.10

New Feature

  • [SONAR-764] – Move the execution of job from the Sonar web server to the Maven Sonar plugin
  • [SONAR-894] – Add key to rules in WS API
  • [SONAR-977] – New extension point : post job

Improvement

  • [SONAR-187] – Upgrade to MySQL connector/J 5.1
  • [SONAR-627] – Manage 5 rule priority levels and associate a weight to each level
  • [SONAR-646] – Use the default locale for formatting number
  • [SONAR-657] – Personalize the header of the source code viewer on “violations” tab
  • [SONAR-707] – Allow Customized Headers on Home page
  • [SONAR-746] – The name node should not be mandatory in the pom.xml file
  • [SONAR-781] – Change the behavior of the treemap in case alerts are defined on a metric
  • [SONAR-810] – There should be a way to associate a plugin property to a project
  • [SONAR-819] – Drilldown on packages metric doesn’t display the list of packages
  • [SONAR-829] – Do not insert unit test measures when value is zero
  • [SONAR-843] – Merge sonar.log and wrapper.log
  • [SONAR-851] – Create a piechart component
  • [SONAR-852] – Pmd takes only one exclusion from Sonar
  • [SONAR-853] – Findbugs should generate exclude file for Maven
  • [SONAR-854] – Sonar should configure exclude sources for checkstyle plugin
  • [SONAR-889] – Reduce size of HTML pages
  • [SONAR-890] – Coverage information should be associated to file and not to nested classes
  • [SONAR-891] – improve url_for_drilldown with default source viewer tab param
  • [SONAR-892] – By default the duplicated blocks detail should be collapsed
  • [SONAR-896] – PMD and checkstyle maven plugins are called even if no rules defined
  • [SONAR-915] – AbstractDatabaseConnector loadVersion() needs to specify a schema name to reduce overhead of getMetaData()
  • [SONAR-920] – Change the example of an exclusion pattern in the project Settings page
  • [SONAR-921] – Add a more explicit message to homepage when no projects are analysed
  • [SONAR-932] – API : simplify exclusion of files
  • [SONAR-933] – Simplify configuration of code coverage plugins
  • [SONAR-947] – Ability to filter violations viewer by priority or by rule
  • [SONAR-949] – Speed up rendering of the hotspot widget “Most complext and less tested classes”
  • [SONAR-953] – Invert order of the measures ‘accessors’ in drilldown page
  • [SONAR-954] – Upgrade to Cobertura Maven Plugin 2.3
  • [SONAR-957] – The branch parameter should become the sonar.branch parameter for consistency
  • [SONAR-959] – Projects search form is slow on Nemo
  • [SONAR-962] – Remove unused column SNAPSHOTS.PURGED
  • [SONAR-967] – Do not insert undocumented API measures when value is zero
  • [SONAR-984] – Improve performances of the “resources” Web Service
  • [SONAR-1012] – Tendency should be calculated between XX days and now
  • [SONAR-1017] – Default period of measure tendencies should be 30 days

Task

  • [SONAR-965] – Add MySQL scripts to create and drop database
  • [SONAR-969] – Drop table RULE_FAILURE_PARAMS

Sub-task

  • [SONAR-923] – commons-configuration-1.6 upgrade

Release notes 1.9.1/1.9.2

Improvement

  • [SONAR-495] – Improve memory consumption of maven collectors
  • [SONAR-725] – Upgrade to Clover 2.5
  • [SONAR-749] – Upgrade to Findbugs maven plugin 2.0

Bug

  • [SONAR-898] – Cobertura XML report can not be validated when no internet connexion
  • [SONAR-594] – Sonar FindBugs plugin fails on EAR projects with sources
  • [SONAR-651] – Findbugs plugin throws a StackOverflow exception (Infinite Recursion)
  • [SONAR-759] – sonar-core:collect: AbstractMethodError: javax.xml.parsers.DocumentBuilderFactory.setFeature
  • [SONAR-762] – OutOfMemoryError during collect-phase of CoberturaMavenCollector
  • [SONAR-836] – java.lang.StackOverflowError
  • [SONAR-861] – Undeclared entites in XML report file make sonar crash
  • [SONAR-864] – sonar-squid fails when analyzing a .java file that contains only a block comment
  • [SONAR-866] – NPE in newUnitTestClassFromAbsolutePath durring sonar collect phase
  • [SONAR-867] – Sonar 1.9 fails executing squid
  • [SONAR-873] – mvn sonar:sonar produces: org.apache.maven.lifecycle.LifecycleExecutionException: Can not execute Sonar
  • [SONAR-878] – Use maven plugin versions defined in pom
  • [SONAR-879] – Sonar maven plugin tries to access codehaus and maven remote repositories (stax2-api)
  • [SONAR-880] – Database transaction isolation not correctly set in web container
  • [SONAR-883] – Uprade DB error when migrating on Sonar 1.9, metric “classes” already exists
  • [SONAR-884] – Error when upgrading database from 1.5.1 to 1.9
  • [SONAR-888] – Manual measures/events do not work with embedded database

Bug

  • [SONAR-330] – File target/sonar/sonar-pom.xml is locked
  • [SONAR-535] – Unable to deploy two distinct Sonar web applications (war) on the same servlet container (Tomcat)
  • [SONAR-623] – Findbugs doesn’t work with non-Maven projects when using multiple source directories
  • [SONAR-694] – Measures seem clickable on the home page
  • [SONAR-700] – Findbugs violations should always be associated to a file and not to a nested classes
  • [SONAR-805] – Maven propeties provided through the command line should overide properties defined in the settings.xml file
  • [SONAR-865] – Tolken count property should only appear under the CPD plugin
  • [SONAR-903] – Unit tests success percentage can be slightly wrong (100% instead of 99.99%)
  • [SONAR-941] – When extending CS with custom rules sonar recognizes it as a custom CS PMD and findbugs rule.
  • [SONAR-948] – Project source file are not readen using the pom configured charset
  • [SONAR-986] – Info level is mapped to ignore in Checkstyle
  • [SONAR-987] – Exclusion patterns should not impact the Surefire exclusion configuration
  • [SONAR-995] – The hotspot widget “Most violated rules” is empty on packages

Release notes 1.9

New Feature

  • [SONAR-466] – Create a chart displaying the methods distribution by complexity
  • [SONAR-664] – Add support for enabling AJP13Listener (mod_jk) in embedded Jetty
  • [SONAR-751] – Create a Dashboard Widget extension point
  • [SONAR-765] – Integrate the new Sonar-Squid engine (replacement of JavaNCSS)

Improvement

  • [SONAR-178] – Support PostgreSQL
  • [SONAR-280] – Enable CheckStyle SuppressionCommentFilter module
  • [SONAR-499] – Improve Sonar database use on project/module/packages measures (project_measures table)
  • [SONAR-603] – Sonar Maven repository are always in status “In Service – Checking remote …” when declared in Nexus engine
  • [SONAR-608] – New definition of “Lines of code”, “Lines” (physical vs logical LOC) and “Statements”
  • [SONAR-625] – Comments metrics are not available at class level
  • [SONAR-727] – Upgrade to Rails 2.2
  • [SONAR-728] – MD5 and SHA1 files are missing in internal maven repository
  • [SONAR-752] – Unable to run Sonar behind an HTTPS proxy
  • [SONAR-761] – Add a log error in the logs/sonar.log file when snapshot consolidation web service returns a HTTP 400 code
  • [SONAR-767] – add property “closeTargets” for CloseResource pmd rule
  • [SONAR-768] – Add a help message with default password when authentication fails
  • [SONAR-774] – Automatically setup database on startup, except on upgrades
  • [SONAR-778] – In the project dashboard, don’t load the the measure on rules
  • [SONAR-786] – Simplify sequence management
  • [SONAR-788] – Error while creating a quality profile with name too long
  • [SONAR-794] – Javadoc comments count are for public and private methods
  • [SONAR-796] – Remove metric ‘optional_rules_compliance’
  • [SONAR-798] – Sonar Squid integration Impacts on the Hostpots service
  • [SONAR-802] – Rename metric keys
  • [SONAR-803] – Increase default PermGen space
  • [SONAR-820] – Slightly changes the statements sensor on Sonar Squid
  • [SONAR-821] – Slightly change the public API sensor on Sonar Squid
  • [SONAR-822] – Fix Cobertura code coverage on multi-modules projects
  • [SONAR-824] – Increment the branch measure when encountering “throw” and “return” instructions
  • [SONAR-828] – Comment lines on a line of code falsify NCLOC

Bug

  • [SONAR-162] – The metric ‘number of methods’ should include methods from inner classes
  • [SONAR-163] – Measures should be also calculated on Java nested classes
  • [SONAR-312] – JavaNCSS fails when a Java interface contains an annotation
  • [SONAR-514] – When trying to change the Sonar password through the web interface, you get a 500 internal error
  • [SONAR-634] – Greater than and less than characters should be HTML encoded
  • [SONAR-662] – JavaNCSS doesn’t correctly manage non UTF-8 characters
  • [SONAR-677] – Clover code coverage is wrong on multi-modules projects
  • [SONAR-681] – When exluding all sources from quality analysis, the Sonar Maven goal fails
  • [SONAR-688] – branch name doesn’t show up on project index treemap
  • [SONAR-696] – Missing metric files_count in web services API
  • [SONAR-709] – Cannot execute the command org.codehaus.mojo:javancss-maven-plugin::report
  • [SONAR-712] – Sonar compatibility with the build-helper-maven plugin
  • [SONAR-757] – Unit tests results are not collected when <disableXmlReport> node is set to true
  • [SONAR-769] – Lines of code appear twice in the metrics
  • [SONAR-787] – CPD throws a NullPointerException
  • [SONAR-793] – Licence comments are included in ncloc
  • [SONAR-795] – NPE in JettyEmbedder
  • [SONAR-811] – Missing rule parameters when restoring profiles from backup
  • [SONAR-849] – ParseException

Release notes 1.8

New Feature

  • [SONAR-30] – Create a Hot Spots service
  • [SONAR-504] – Export/import Findbugs profiles
  • [SONAR-563] – Measures on ISO categories are not published in the Web Service API
  • [SONAR-584] – Import findbugs-include.xml (patch included)

Improvement

  • [SONAR-520] – PMD CPD : minimumTokenCount should be configurable in Sonar
  • [SONAR-532] – Rename “Coverage clouds” to “Clouds” and extend use to “Rules compliance” index
  • [SONAR-660] – Create a default quality profile “Sonar way with Findbugs” which activates all Findbugs rules (+300)
  • [SONAR-669] – Align all numbers in the Sonar’s homepage
  • [SONAR-682] – Display a maximum of three resources columns in the drilldown services
  • [SONAR-689] – Publish version and date on WebServices API
  • [SONAR-697] – Add a permalink on the classes treemap
  • [SONAR-711] – StackOverflowError with maven 2.0.10
  • [SONAR-715] – Project links loaded from maven pom should not be editable in project settings page
  • [SONAR-716] – Homepage : display developer connection besides other project links
  • [SONAR-717] – Inactivate the “Tab Character” rule from the “Sonar Way” quality profile
  • [SONAR-729] – Upgrade to Derby 10.4.2.0
  • [SONAR-733] – Web Services : add the most violated resources for a given rule
  • [SONAR-760] – Roll log files

Bug

  • [SONAR-222] – StackOverflowError exception when extensions are defined in the pom
  • [SONAR-308] – Error with custom maven types
  • [SONAR-365] – Configuration of plugins in grand parent does not work
  • [SONAR-377] – sonar maven 1.4.1 plugin does not work on maven 2.1-m1 and maven 2.0.10-x
  • [SONAR-588] – Multi module configuration : mvn build is ok, but sonar projects can’t be browsed
  • [SONAR-602] – Surefire time is calculated wrong.
  • [SONAR-686] – It seems that “manual measures” are being lost after a rebuild (new build of the same version).
  • [SONAR-703] – Surefire plugin does not work with projects with no java main sources
  • [SONAR-713] – Sonar doesn’t work with Maven 2.1 on multi-modules project
  • [SONAR-722] – Violations Drilldown doesn’t work when combining “Categories” and “Rules” filters
  • [SONAR-724] – cannot execute clover2:instrument ‘target/sonar/pom.xml’ does not exist
  • [SONAR-759] – sonar-core:collect: AbstractMethodError: javax.xml.parsers.DocumentBuilderFactory.setFeature

Release notes 1.7

New Feature

  • [SONAR-205] – Ability to exclude sources or packages from quality control
  • [SONAR-300] – Tighter integration with maven-surefire-plugin
  • [SONAR-415] – Reuse existing code coverage/unit tests results from build

Improvement

  • [SONAR-135] – Manage test exclusions from code coverage
  • [SONAR-512] – Add coverage clouds on modules and packages
  • [SONAR-538] – Add new metrics on duplications and a new tab “Duplications” in the source code viewer
  • [SONAR-551] – Simplify the “Measures drilldown” service header to make the service more generic
  • [SONAR-617] – Add a print icon
  • [SONAR-618] – Provide a permalink to directly access to the source code viewer on a given file/class
  • [SONAR-656] – Display all resource columns in drilldown pages
  • [SONAR-659] – Display the percentage of Test success at class level

Bug

  • [SONAR-353] – Test Success Percent is not correct when there are skipped tests
  • [SONAR-448] – Oracle ORA-01795: Maximum number of elements in IN
  • [SONAR-612] – Left navigation bar is incorrectly displayed in Internet Explorer
  • [SONAR-616] – Missing % label on alerts console when anonymous
  • [SONAR-629] – “-server” option shouldn’t be activated by default in wrapper.conf file
  • [SONAR-643] – Mistake nowrap in the tooltip css class !
  • [SONAR-650] – Type in findbugs plugin error message
  • [SONAR-652] – Code coverage line hits measure parameter size overflow
  • [SONAR-665] – As many open JDBC connections as maven modules

Release notes 1.6

New Feature

  • [SONAR-40] – Manage alert thresholds
  • [SONAR-328] – Add ability to associate a coding rules profile to a specific project
  • [SONAR-591] – Backup/restore quality profiles

Improvement

  • [SONAR-533] – Better printing of pages
  • [SONAR-517] – In rules breakdown, when selecting a class file, the source view is displayed instead of the violations view
  • [SONAR-560] – Deactivate checkstyle rule “Need Braces” in “Sonar Way” rules profile
  • [SONAR-574] – LGPL link in the Sonar footer should point to http://sonar.codehaus.org/gnulicense/ rather than on gnu web site
  • [SONAR-578] – Support jetty.host bind address just as jetty.port (patch included)
  • [SONAR-593] – Sonar should be able to ignore a property skip=true for any mandatory plugin
  • [SONAR-597] – Catch NonUniqueResultException exception in ProjectAnalysis.saveResource(Resource res) to add contextual information
  • [SONAR-601] – When you analyse a project which doesn’t contain any class, you can’t browse and so delete the project in the web interface

Bug

  • [SONAR-519] – NullPointerException on collect phase when “skip” property is set to true on maven-checkstyle-plugin
  • [SONAR-522] – Purge mechanism on penultimate snapshot is not efficient compared to Sonar 1.4
  • [SONAR-523] – java.sql.SQLException: Closed Connection with Oracle Database on Sonar web log
  • [SONAR-567] – Performance issue when viewing the source code in IE
  • [SONAR-570] – With IE 6, there is no scrollbar on rules list in violations drilldown server
  • [SONAR-582] – Default CS line=”0″ and FB lineNumber=”Not available” to line 1 in Sonar RuleFailureParam (patch included)
  • [SONAR-589] – Pie chart in Violations drilldown is drawn incorrect
  • [SONAR-605] – Duplication of “test_count” metric on PRJ snapshot
  • [SONAR-607] – Improve error page when something goes wrong
  • [SONAR-611] – User measures cannot be created under oracle

Release notes 1.5.1

Improvement

  • [SONAR-479] – Remove Maven dependencies on Sonar SNAPSHOT artifacts
  • [SONAR-542] – The jdk “-server” option should be activated by default
  • [SONAR-545] – Dashboard : do not display complexity chart when no measures
  • [SONAR-547] – Display the event category description in the “add event” form
  • [SONAR-550] – Improve API to integrate other languages than Java

Bug

  • [SONAR-518] – NullPointerException on collect phase when “aggregate” property is set to true on maven-pmd-plugin
  • [SONAR-540] – In the TimeMachine service, the first snapshot of all time is displayed on the right instead of being displayed on the left
  • [SONAR-544] – User plugins are not deployed
  • [SONAR-546] – Missing data in measures drilldown
  • [SONAR-564] – Measures with value 0 are not displayed in measures drilldown
  • [SONAR-565] – Manage Clover outputDirectory parameter

Release notes 1.5

New Feature

  • [SONAR-44] – Display the code coverage details within Java source
  • [SONAR-51] – Integrate Findbugs to create a new category : Anti-patterns
  • [SONAR-138] – Skip a list of maven modules
  • [SONAR-174] – Automatic creation of version on project
  • [SONAR-231] – Possibility to activate google analytics
  • [SONAR-240] – Execute the maven plugin on an old version of an application stored in the Version Control System
  • [SONAR-248] – Web services API
  • [SONAR-306] – It should be possible on a given project to deactivate sources import
  • [SONAR-336] – Add a search form to the header web interface to easily switch to a given project
  • [SONAR-366] – Add a radar (ass xradar) to show the Coding Rules Compliance (more visual)
  • [SONAR-374] – Extension points
  • [SONAR-400] – Add a “Coverage Clouds” cloud to quickly identify which classes are the most complex and yet the least covered by unit tests
  • [SONAR-402] – Provide user a way to manually feed metrics values through the web interface
  • [SONAR-414] – Centralized clover license
  • [SONAR-426] – Allow use of system variable in sonar.properties file
  • [SONAR-427] – Ability to define an absolute path for storing PMD/Checkstyle rule extensions
  • [SONAR-428] – Improve the “Coding Rules Compliance” portlet displayed inside a project dashboard
  • [SONAR-429] – Add a way to export and import Sonar configuration with an xml file
  • [SONAR-430] – Ability to add and visualize events on projects

Improvement

  • [SONAR-133] – Upgrade to Attlassian Clover 2 maven plugin
  • [SONAR-194] – Add new URL with groupId, ArtifactiId as parameters
  • [SONAR-199] – Refactor the TimeMachine service (history chart, display labels by default, …)
  • [SONAR-224] – Upgrade to PMD 4.2.2
  • [SONAR-232] – Upgrade to Apache Derby 10.4.x
  • [SONAR-297] – Improve display on IE6
  • [SONAR-307] – Rename “Reviews” section to someting more generic and allow to add new value through a REST interface
  • [SONAR-317] – Improve complexity distribution chart
  • [SONAR-321] – Improve display of rules compliance measures on dashboard page
  • [SONAR-329] – Unit tests are executed twice which could be a real drawback when unit tests duration is important
  • [SONAR-339] – Remove default value of rule parameters
  • [SONAR-348] – Add an optional column with the project version (when available) on the dashboard
  • [SONAR-372] – Upgrade to rails 2.0.2
  • [SONAR-379] – Possibility to use all checkstyle and PMD rules
  • [SONAR-387] – Improve usability of the coding rules edition/viewer service
  • [SONAR-388] – Let user choose what’s the metric to use to determine the size of a bloc in the Treemap
  • [SONAR-396] – Upgrade to jruby 1.1.4
  • [SONAR-416] – Manage findbugs ‘effort’ parameter
  • [SONAR-420] – Coding Rules Breakdown service : display number of violations instead of RCI for rules, modules and packages
  • [SONAR-441] – Add a more synthetic header on source file viewer
  • [SONAR-449] – Prevent robots from accessing public web instances of Sonar
  • [SONAR-451] – Upgrade to jruby 1.1.5
  • [SONAR-454] – Order of ISO categories should not depends on the number of violations in Project dashboard page
  • [SONAR-455] – Modules, packages or classes without any violations shouldn’t be displayed in the coding rules breakdown
  • [SONAR-457] – The accelerator factor used to calculate the Coding Rules Compliance measure should be changeable by Sonar administrator
  • [SONAR-463] – Improve plugins page
  • [SONAR-478] – Never execute the maven “install” phase
  • [SONAR-487] – Improve Sonar database use on class measures (project_measures table)
  • [SONAR-488] – Amending the descriptions attached to the plugins configuration pages
  • [SONAR-530] – TimeMachine : Replace average cc by method by total cc in the three default displayed metrics
  • [SONAR-531] – Rename “Measures breakdown” service in “Measures drilldown” and “Rules breakdown” in “Rules drilldown”

Sub-task

  • [SONAR-384] – New extension point : sources viewer
  • [SONAR-385] – New extension point : web page
  • [SONAR-390] – New extension point : web footer
  • [SONAR-399] – Web service API to export coding rules
  • [SONAR-407] – New extension point : metric definition
  • [SONAR-408] – New extension point : consolidation job

Bug

  • [SONAR-234] – PMD CloneMethodMustImplementCloneable rule exists in two versions
  • [SONAR-273] – Replace 0% Test success by — when no test exists
  • [SONAR-314] – ConsolidationException on multi-modules projects if continuum is badly configured
  • [SONAR-340] – Error while importing Checkstyle profile with parameters named “id”
  • [SONAR-342] – Error if XML definition of rules extensions is updated
  • [SONAR-346] – Can not collect checkstyle measures when embedded database + too many violations
  • [SONAR-351] – Mysql Broken pipe
  • [SONAR-364] – Remove rule failures first and last new line characters
  • [SONAR-373] – Fatal Error when building Sonar from latest source
  • [SONAR-381] – Wrong link in dashboard
  • [SONAR-386] – error message at the setp 5 of the installation guide
  • [SONAR-389] – PMD rule TooManyMethods is not available in Sonar
  • [SONAR-391] – Sonar.war failed to start on Tomcat 6.0.18
  • [SONAR-401] – Sonar runs test eventhough the confiuration of skipTest in maven surefire plugin is setted to false
  • [SONAR-409] – CPD encoding should not be forced to UTF-8
  • [SONAR-413] – NullPointerException occures inside PMD Collector when coding rules are activated on unit tests
  • [SONAR-431] – Error while importing Checkstyle profile with ‘metadata’ nodes
  • [SONAR-432] – Error while importing PMD profile without node ‘priority’ for each rule definition
  • [SONAR-434] – PMD rule “DoubleCheckedLocking” is not available in Sonar
  • [SONAR-435] – PMD rule “OverrideBothEqualsAndHashcode” is not available in Sonar
  • [SONAR-436] – PMD rule “NPathComplexity” is not available in Sonar
  • [SONAR-438] – PMD rule “MethodNamingConventions” is not available in Sonar
  • [SONAR-439] – PMD rules imported into Sonar with a priority of 5 seems to have a strange state : activated but neither mandatory nor optional ?
  • [SONAR-443] – Checkstyle : encoding issue on rule parameters
  • [SONAR-453] – Dependency on Maven-PMD-Plugin version 2.4 in a parent pom breaks Maven Sonar goal execution
  • [SONAR-470] – Can not bind JDBC datasource to Jonas JNDI
  • [SONAR-472] – Startup fails when root directory contains whitespaces
  • [SONAR-474] – Configuration of Manual Metrics is not possible after migration from 1.4.1 to 1.5M2
  • [SONAR-475] – Description of some Findbug violations are longer than the database column size
  • [SONAR-477] – “Add a measure” does not display the description of selected measure type
  • [SONAR-480] – Rules Breakdown histograms buggy display
  • [SONAR-481] – GUI defect on IE6
  • [SONAR-484] – Sorting of “number of tests” metric is incorrect
  • [SONAR-485] – Manual metrics created from Java plugins should not be updated online
  • [SONAR-489] – Some cases are not covered properly by the tendency management
  • [SONAR-493] – IE 7 Doesn’t refresh the radar while using the checkbox for including opt. rules
  • [SONAR-494] – Second column is wrong on code coverage/rule violations viewers
  • [SONAR-502] – Regression issue -Rules compliance treemap is entirely green
  • [SONAR-506] – Number of mandatory rules violations displayed in the TimeMachine service is incorrect
  • [SONAR-507] – Tendency calculation doesn’t use the good measures
  • [SONAR-508] – Chronological order is not always respected to display snapshots in the TimeMachine service
  • [SONAR-510] – Coverage Clouds service is sometimes empty
  • [SONAR-511] – In the TimeMachine service, the first snapshot of all time on the given project must always be displayed
  • [SONAR-513] – Searching a project from the coverage clouds service is impossible
  • [SONAR-516] – Coverage cloud is empty
  • [SONAR-521] – GZIP compression is not activated on web content
  • [SONAR-527] – Cobertura report is not generated with Continuum
  • [SONAR-528] – ORA-01400 exception raised during sonar maven collect step
  • [SONAR-529] – Wronk key for the MethodNamingConventions rule in PMD

Release notes 1.4.3

Bug

  • [SONAR-409] – CPD encoding should not be forced to UTF-8

Release notes 1.4.2

Bug

  • [SONAR-344] – Checkstyle custom rules configuration is not imported

Release notes 1.4.1

Bug

  • [SONAR-338] – Error while importing Checkstyle profile with nodes other than ‘module’ and ‘property’
  • [SONAR-345] – “NoMethodError” when migrating from V1.3 to V1.4 with Oracle database
  • [SONAR-347] – PMD extensions are lost when migrating from 1.3 to 1.4
  • [SONAR-357] – Maven plugin throws a org.apache.maven.BuildFailureException: Compilation failure : when I launch maven sonar plugin from the reactor project

Improvement

  • [SONAR-257] – Add the property ‘tabWidth’ to the checkstyle rule ‘LineLength’
  • [SONAR-341] – Rules extensions can not be activated if the key contains whitespaces

Release notes 1.4

Bug

  • [SONAR-33] – JavaNCSS can not parse annotations from method body
  • [SONAR-209] – The script to start sonar does not work on solaris i86pc
  • [SONAR-270] – Sonar behind a HTTPS reverse proxy sometimes fall back to HTTP
  • [SONAR-275] – Cannot edit Review types
  • [SONAR-283] – Sonar maven plugin does not retrieve custom checktyle rules from sonar server
  • [SONAR-284] – Javascript error on setup page in Internet Explorer
  • [SONAR-291] – Rules compliance treemap is entirely green
  • [SONAR-292] – Can not install with SQL Server 2005
  • [SONAR-294] – Removing a maven submodule causes error with sonar
  • [SONAR-301] – The color on treemap for the rules compliance is often green on after a migration from 1.2 to 1.3 eventhought the quality is low.
  • [SONAR-304] – Performance issue on homepage treemap
  • [SONAR-311] – The checkstyle rule Multiple String Literals has an unvalid parameter
  • [SONAR-318] – javax.persistence.NoResultException when maven collects measures
  • [SONAR-319] – Can not set parameter values when activating a coding rule
  • [SONAR-320] – Files/directories are not writable when unzipping the distribution

Improvement

  • [SONAR-250] – Upgrade to JRuby 1.1.2
  • [SONAR-257] – Add the property ‘tabWidth’ to the checkstyle rule ‘LineLength’
  • [SONAR-260] – Sonar server can’t be started on an IBM Aix Unix machine
  • [SONAR-262] – Upgrade to Java Service Wrapper 3.3
  • [SONAR-288] – Display the plugin names on the coding rules page
  • [SONAR-293] – Upgrade Surefire maven plugin from 2.4.2 to 2.4.3
  • [SONAR-299] – Upgrade to Checkstyle 4.4 and maven-checkstyle-plugin 2.2
  • [SONAR-303] – Permalinks on XML rules configuration
  • [SONAR-334] – Move the ‘documentation’ link from the header to the footer

New Feature

  • [SONAR-289] – Copy coding rules profiles from the interface

Task

  • [SONAR-242] – Publish a technical benchmark

Release notes 1.3

Bug

  • [SONAR-188] – Error to get a connection from the database
  • [SONAR-210] – Compatibility with UFT-8 MySQL database
  • [SONAR-216] – Error trying to look at metrics
  • [SONAR-222] – The maven plugin fails with maven 2.0.9
  • [SONAR-235] – Tendency icons are not colored on qualitative metrics
  • [SONAR-251] – Project version is not displayed into the Description portlet
  • [SONAR-253] – NullPointerException while processing measures tendency
  • [SONAR-254] – Maven error on the XWiki project
  • [SONAR-256] – Wrong test success percentage when no test file
  • [SONAR-258] – Compatibility with surefire maven plugin 2.1.3
  • [SONAR-261] – Performance issue with IE 6 on the homepage
  • [SONAR-265] – Duplicated lines on time machine comparison
  • [SONAR-266] – Can not change the web context when standalone mode
  • [SONAR-267] – Error when deleting project from embedded database
  • [SONAR-268] – Error when clicking on the small magnified icon in “measure breakdown > comments” in the “package” column.
  • [SONAR-269] – Broken link to documentation
  • [SONAR-277] – Installation guide Sonar 1.3 : wrong maven plugin (use 1.3 not 1.3RC1)

Improvement

  • [SONAR-166] – Do not redirect the homepage to /project/list
  • [SONAR-171] – Compress javascript files
  • [SONAR-175] – Improve web server performance with new JRuby versions (JRUBY 1.1, GOLDSPIKE 1.5)
  • [SONAR-198] – In the TimeMachine service, the y axis of the classes distribution diagram should be in % and not in “number of classes”
  • [SONAR-211] – Compress HTTP response
  • [SONAR-221] – The logo should link to www.sonarsoftware.org instead of sonar.hortis.ch

New Feature

  • [SONAR-43] – Display a synthesis of class measures within Java source
  • [SONAR-45] – Add metrics on javadoc and comments
  • [SONAR-47] – Add measures at package level
  • [SONAR-50] – Ability to deploy Sonar as a web application on Tomcat 5.5
  • [SONAR-238] – New metric : ratio of duplicated lines
  • [SONAR-285] – Documentation is misleading

Task

  • [SONAR-7] – Rename java packages from “ch.hortis.sonar” to “org.sonar”
  • [SONAR-111] – A live demo of Sonar code base should be available online
  • [SONAR-252] – Cancel SONAR-221 : update links from sonar.hortis.ch to sonar.codehaus.org

Release notes 1.2.1

Bug

  • [SONAR-184] – Rules breakdown gives Syntax error page
  • [SONAR-219] – No complexity chart on embedded database

Release notes 1.2

Bug

  • [SONAR-169] – Can not generate charts on Linux
  • [SONAR-179] – Results do not get consolidated properly for projects with more than one level of modules
  • [SONAR-193] – Colors used in the classes distribution diagram are not correct when several versions are displayed (Time Machine service)

Improvement

  • [SONAR-63] – Refactoring : do not use the column Metrics.id anymore
  • [SONAR-158] – Re-organize dashboard display like google analytics
  • [SONAR-177] – Upgrade to surefire maven plugin 2.4.2
  • [SONAR-180] – Replace “maintanability” by “maintainability”
  • [SONAR-182] – Improve batch logs
  • [SONAR-190] – The color of arrow must be depend of the type of measure, not if the measure increases or decreases
  • [SONAR-192] – Add a database index on RULE_FAILURE_PARAMS
  • [SONAR-196] – Used Lines of Codes instead of Complexity Cyclomatic to draw the Tree Maps

New Feature

  • [SONAR-24] – CTI : Manage manual reviews
  • [SONAR-76] – Do not used colored tendencies for quantitative measures like NCSS
  • [SONAR-82] – Ability to desactivate quality control on a module

Release notes 1.1

Bug

  • [SONAR-4] – Maven plugin conflict with the goal ‘site’
  • [SONAR-10] – Java interfaces must not have a code coverage measure
  • [SONAR-11] – Compatibility with Continuum continuous integration server
  • [SONAR-12] – Some rule messages are too large for the database
  • [SONAR-14] – No tendency on some projects even if there are more than 3 measures
  • [SONAR-17] – No data in “Flop 10 classes”
  • [SONAR-65] – Invisible classes
  • [SONAR-71] – Display “0 test” on sonar dashboard
  • [SONAR-119] – Wrong cyclomatic complexity if existence of inner class
  • [SONAR-121] – MissingUnitTestsService is adding test metrics to non test files
  • [SONAR-122] – sonar maven plugin is not propagating system properties trough the maven embedder
  • [SONAR-124] – tendency icons wrongly displayed on RCI graph
  • [SONAR-125] – clover is not working correctly when install goal called within maven sonar plugin
  • [SONAR-126] – sonar maven repository not working
  • [SONAR-129] – Encoding error with PMD
  • [SONAR-131] – Sonar -> Maven Embedder doesn’t use repo mirrors in settings.xml
  • [SONAR-134] – Clover license is not auto-detected
  • [SONAR-144] – Deactivate coding rules on unit tests
  • [SONAR-145] – Maven plugins are not configured if defined within reporting section
  • [SONAR-149] – Maven Embedder doesn’t use server settings defined in settings.xml
  • [SONAR-160] – Database migration fails from v1.0.2 to v1.1-beta1
  • [SONAR-161] – Coding rules import not possible
  • [SONAR-168] – PMD doesn’t support JDK 1.1 parameter
  • [SONAR-170] – The script to stop sonar does not work on linux
  • [SONAR-183] – Evolution Graphics does not work (blank picture) in a linx environnement without X11

Improvement

  • [SONAR-19] – Upgrade to jruby 1.0.3
  • [SONAR-20] – The plugin must not fail on code coverage failures
  • [SONAR-25] – IE6 compatibility
  • [SONAR-27] – Add a link to the issue tracker within the footer
  • [SONAR-28] – Add the homepage to the breadcrumb
  • [SONAR-29] – Compatibility with Miscrosoft SQLServer database
  • [SONAR-31] – Upgrade to JXR maven plugin 2.1
  • [SONAR-34] – Warning on deprecated Oracle hibernate dialect
  • [SONAR-66] – Upgrade to surefire maven plugin 2.4
  • [SONAR-67] – Add a link to rules breakdown from the portlet ‘Rules compliance’
  • [SONAR-69] – Upgrade to maven-cobertura-plugin 2.2
  • [SONAR-117] – The jetty server listens only on localhost
  • [SONAR-118] – Upgrade to activerecord-jdbc-adapter 0.7
  • [SONAR-123] – system property for hibernate dialect
  • [SONAR-128] – The description of the rule Javadoc Method is not correctly displayed
  • [SONAR-130] – Save the type of a class : MAIN or TEST
  • [SONAR-136] – Sort link icons on the homepage
  • [SONAR-142] – Remove the indicator “number of tests” from breakdown page
  • [SONAR-147] – Update the ‘Sonar way’ profile with new PMD 4.1 rules
  • [SONAR-150] – Deactivate coding rules on JSP
  • [SONAR-151] – Remove the rule ‘Abstract Naming rule’ (redundant with ‘Abstract Class Name’)
  • [SONAR-152] – Update some rule descriptions
  • [SONAR-156] – Replace the maven goal ‘sonar-light’ by ‘sonar’ + property ‘sonar.light’

New Feature

  • [SONAR-1] – CTI – Management of checkstyle and PMD extensions
  • [SONAR-2] – CTI – Personalize the tendency depth
  • [SONAR-3] – CTI – Personalize indicators available on the home page (list of projects)
  • [SONAR-5] – Import rules configuration through web interface from existing checkstyle and PMD XML files
  • [SONAR-6] – Apply license LGPLv3
  • [SONAR-8] – CTI – Secure the web application by defining an admin role
  • [SONAR-9] – The maven plugin downloads the JDBC driver from the sonar server
  • [SONAR-16] – CTI – Time Machine : compare snapshots of a same project
  • [SONAR-18] – CTI – An admin user can set a label on a given snapshot
  • [SONAR-21] – CTI – Create two new indicators at project level : number and ratio of test errors
  • [SONAR-22] – CTI – Time Machine : display a past project dashboard
  • [SONAR-23] – CTI – On the breakdown pages, display all the files containing rules violations and not only the flop 10
  • [SONAR-46] – Refactor the configuration rules service interface
  • [SONAR-60] – Add an optional filter on Rules configuration service to display only the activated rules
  • [SONAR-64] – Upgrade to PMD 4.1
  • [SONAR-127] – Manage activation of a rules profile
  • [SONAR-140] – Display currently processing measures on homepage

Task

  • [SONAR-26] – Move to codehaus forge
  • [SONAR-32] – Check the number formatting used by metrics collectors