Skip to content

Releases: SonarSource/sonar-php

3.27.1.9352

13 Jan 09:58
3ddc5a0
Compare
Choose a tag to compare

Release notes - SonarPHP - 3.27.1

Bug

SONARPHP-1344 Verify file status by file hashes before restoring from cache

3.27.0.9339

11 Jan 13:04
e422306
Compare
Choose a tag to compare

Release notes - SonarPHP - 3.27

Bug

SONARPHP-1341 Using file hash when writing and reading from cache

3.26.0.9313

04 Jan 08:57
bb2f0bc
Compare
Choose a tag to compare

Release notes - SonarPHP - 3.26

Bug

SONARPHP-1085 Parse error on namespace using keywords

Task

SONARPHP-1330 Serialize and deserialize the project level symbol table

SONARPHP-1331 Write/read Project Symbol Tables to/from cache

SONARPHP-1332 Avoid scanning files that don't need to be analyzed

SONARPHP-1333 Add integration tests for incremental PR analysis

SONARPHP-1334 `PHPSensor.AnalysisScanner` should become a stand-alone class

SONARPHP-1335 All constructors of the `PHPSensor` should be covered with UTs and ITs

SONARPHP-1336 Update API to expose data related to caching

SONARPHP-1339 Cache CPD tokens for main files

Improvement

SONARPHP-1337 Get rid of LegacyIssue class

3.25.0.9077

19 Sep 14:24
62146fc
Compare
Choose a tag to compare

Release notes - SonarPHP - Version 3.25

Bug

SONARPHP-1316 Import of PHPStan reports without issues should not raise an error

SONARPHP-1313 PHP sensor should be executed also on TEST files.

SONARPHP-1308 The namespace resolver should not look into other namespaces to resolve

False-Positive

SONARPHP-1311 Rule S1313: Exclude reserved documentation IP ranges

Improvement

SONARPHP-1318 Adapt PHPUnit integration tests to reflect state-of-the art testing in PHP

SONARPHP-1312 External report information on files that are excluded from the analysis should not be processed

SONARPHP-1282 Adjust fully qualified path of external reports to prevent incorrect allocation

New Feature

SONARPHP-1315 Support readonly class syntax

3.24.0.8949

08 Aug 15:24
2bba07f
Compare
Choose a tag to compare

Release notes - SonarPHP - Version 3.24

Bug

SONARPHP-1300 Parsing error on the order of constructor promoted property characteristics

SONARPHP-1296 Parse error on keywords as enum case identifier

False Negative

SONARPHP-1267 Parser: All keywords should be case insensitive

SONARPHP-1170 S2050: FN on fully qualified name

SONARPHP-1168 S2755: FN with fully qualified names

False-Positive

SONARPHP-1303 Rule S1313: Exclude local IPv4-mapped IPv6 address

SONARPHP-1299 S1144 should take into account PHPDoc @uses

SONARPHP-1238 S5996 FP on line breaks after end boundaries

SONARPHP-1169 FP for S2277 when using fully qualified name

Improvement

SONARPHP-1298 Update Analyzer Commons to 1.25: minor changes on Regex checks

SONARPHP-1294 Rule S1192: Add period as allowed character for exceptions

SONARPHP-1136 S2755 should support cakephp xml utils

SONARPHP-593 Make S1697 cover PHP idiomatic cases

New Feature

SONARPHP-1306 Rules support PCI DSS Security Standard

SONARPHP-1293 Provide OWASP Top 10 2021 security standards for rules metadata

Task

SONARPHP-1309 Add Windows build and plugin qa step to CI

SONARPHP-1301 Remove deprecated DuplicatedBlocks rule from Sonar Way

3.23.1.8766

28 Mar 13:06
db197ac
Compare
Choose a tag to compare

Improvement

  • [SONARPHP-1295] - Provide descriptions for rule properties of S1808

False-Positive

3.23.0.8726

09 Feb 12:54
6028c5a
Compare
Choose a tag to compare

New Feature

  • [SONARPHP-1270] - Rule S6393: Regular expressions should have valid delimiters
  • [SONARPHP-1272] - Rule S6396: Superfluous curly brace quantifiers should be avoided
  • [SONARPHP-1273] - Rule S6397: Character classes in regular expressions should not contain only one character
  • [SONARPHP-1274] - Rule S6323: Alternation in regular expressions should not contain empty alternatives
  • [SONARPHP-1275] - Rule S6326: Regular expressions should not contain multiple spaces
  • [SONARPHP-1276] - Rule S6353: Regular expression quantifiers and character classes should be used concisely
  • [SONARPHP-1277] - Rule S6328: Replacement strings should reference existing regular expression groups
  • [SONARPHP-1278] - Rule S6331: Regular expressions should not contain empty groups
  • [SONARPHP-1279] - Rule S6395: Non-capturing groups without quantifier should not be used

False-Positive

  • [SONARPHP-1268] - S3699 should not raise on arrow functions or match clauses

3.22.1.8626

24 Jan 08:29
68787fc
Compare
Choose a tag to compare

Bug

  • [SONARPHP-1269] - CFG building should not fail when enum is encountered

3.22.0.8482

26 Nov 14:07
2c23cd7
Compare
Choose a tag to compare

Bug

  • [SONARPHP-1262] - PHPStan report import should not fail on paths with class context

New Feature

  • [SONARPHP-1251] - Parser should support Enums
  • [SONARPHP-1252] - Parser should support `new` in initializers
  • [SONARPHP-1253] - Parser should support readonly properties
  • [SONARPHP-1254] - Parser should support first-class callable syntax
  • [SONARPHP-1255] - Parser should support pure intersection types
  • [SONARPHP-1256] - Parser should support explicit octal integer literal notation
  • [SONARPHP-1260] - Parser should support final class constants
  • [SONARPHP-1264] - S1144 UnusedPrivateMethodCheck should raise on enum private and protected methods
  • [SONARPHP-1265] - Parser should allow enums as inner statements

Improvement

3.21.2.8292

12 Nov 13:31
86bd9dd
Compare
Choose a tag to compare

Bug

  • [SONARPHP-1250] - Secondary locations for regex rules are not present in UI

False-Positive

  • [SONARPHP-1249] - Regex parser should not raise error on syntactical correct expression