Releases: SonarSource/sonar-python
SonarPython 3.24.0.10784
Release notes - SonarPython - 3.24
Bug
SONARPY-1227 Fix parse error when multiple unpack in for loop
SONARPY-1237 Use file hashes to determine file modification status in PR analysis
Improvement
SONARPY-1216 PR Analysis: Avoid running regular rules for transitively impacted files
SONARPY-1238 Deduplicate strings in CPD token serialization
SonarPython 3.23.0.10732
Release notes - SonarPython - 3.23
Bug
SONARPY-1234 Disable cache when sonar.modules is used
New Feature
SONARPY-1231 Cache CPD tokens
SONARPY-1232 Load all Typeshed symbols used by the project in PR analysis context
Improvement
SONARPY-1235 Prevent executing the same rule again in case of successful scanWithoutParsing
SONARPY-1236 Improve serialization method used for CPD tokens
SonarPython 3.22.0.10674
Release notes - SonarPython - 3.22
Bug
SONARPY-1226 Fix NumberFormatException error
Task
SONARPY-1194 Serialize and cache the project level symbol table
SONARPY-1195 Build a dependency graph in the project-level symbol table
SONARPY-1196 Compute impacted files from deleted files
SONARPY-1197 Load project-level symbol table entries from cache
SONARPY-1199 Avoid scanning files that don't need to be analyzed
SONARPY-1201 Add integeration tests for incremental PR analysis
SonarPython 3.21.0.10628
Release notes - SonarPython - 3.21
False-Positive
SONARPY-1179 Update S5747 (RaiseOutsideExceptCheck) to not report an issue inside a 'except*'
SONARPY-1193 FP on rule S6304: "Granting access to all resources" should not be raised on actions without resource-level permissions
False Negative
SONARPY-1181 S5708 (CaughtExceptionsCheck) should report on except*
SONARPY-1183 S5713 (ChildAndParentExceptionCaughtCheck) should report on except*
New Feature
SONARPY-1091 Add quick fix for S4144 (DuplicatedMethodImplementationCheck)
SONARPY-1169 Support except* syntax
SONARPY-1184 Rule S6468 : ExceptionGroup and BaseExceptionGroup should not be caught in `except*` clauses
SONARPY-1217 Update API to expose data related to caching
Task
SONARPY-1194 Serialize and cache the project level symbol table
SONARPY-1195 Build a dependency graph in the project-level symbol table
SONARPY-1196 Compute impacted files from deleted files
SONARPY-1197 Load project-level symbol table entries from cache
SONARPY-1199 Avoid scanning files that don't need to be analyzed
SONARPY-1200 Upgrade protobuf version to 3.21.7
SONARPY-1201 Add integeration tests for incremental PR analysis
Improvement
SONARPY-1210 except* can not contain continue, break or return instruction
SonarPython 3.20.0.10345
Release notes - SonarPython - 3.20
Bug
SONARPY-1071 Quickfixes for S1854 should not change code execution
SONARPY-1072 S5799: Quickfixes should not change formatting
SONARPY-1077 S5719: Fix quick fix message and improve ordering
SONARPY-1188 S5717 should not provide a quick fix if the default value is not trivial
SONARPY-1191 The quick fix of S1854 (DeadStoreCheck) should remove indent before removed line
False-Positive
SONARPY-1186 S6317 should not on any wildcard identifier in resources
New Feature
SONARPY-1078 Add quick fixes for S1186 (EmptyFunctionCheck)
SONARPY-1081 Add quick fixes for S1131 (TrailingWhitespaceCheck)
SONARPY-1082 Add quick fixes for S139 (TrailingCommentCheck)
SONARPY-1088 Add quick fixes for S2316 (BackticksUsageCheck)
Improvement
SONARPY-1076 S2710: Suggest alternative quick fix to rename the first parameter
SONARPY-1176 Make use of the PolicyStatement data class for applicable CDK-related checks
SONARPY-1177 Apply default parameter annotation to CDK checks
SONARPY-1189 Improve Readme or add CONTRIBUTING.md
SonarPython 3.19.0.10254
Release notes - SonarPython - Version 3.19
Bug
SONARPY-1170 Fix the stub for aws_cdk.aws_ec2 recently added methods to have *args/**kwargs as additional parameters
New Feature
SONARPY-1162 Rule S6304: Policies granting access to all resources of an account are security-sensitive
SONARPY-1159 Rule S6463: Allowing unrestricted outbound communications is security-sensitive
SONARPY-1153 Rule S6302: Policies granting all privileges are security-sensitive
SONARPY-1145 Rule S6329: Allowing public network access to cloud resources is security-sensitive
SONARPY-1144 Rule S6270: Policies authorizing public access to resources are security-sensitive
SONARPY-1138 Rule S6333: Creating public APIs is security-sensitive
SONARPY-1135 Rule S6321: Administration services access should be restricted to specific IP addresses
SONARPY-1063 Rules support PCI DSS Security Standard
Task
SONARPY-1185 Update analyzer-commons to version 2.0
SonarPython 3.18.0.10116
Release notes - SonarPython - Version 3.18
Documentation
SONARPY-1134 Fix broken link in documentation
New Feature
SONARPY-1130 Rule S6319: Using unencrypted SageMaker notebook instances is security-sensitive
SONARPY-1127 Rule S4423: Weak SSL/TLS protocols should not be used
SONARPY-1119 Rule S5332: Using clear-text protocols is security-sensitive - Adding python CDK
SONARPY-1118 Rule S6332: Using unencrypted EFS file systems is security-sensitive
SONARPY-1117 Rule S6303: Using unencrypted RDS databases is security-sensitive
SONARPY-1116 Rule S6308: Using unencrypted OpenSearch domains is security-sensitive
SONARPY-1114 Rule S6327: Using unencrypted SNS topics is security-sensitive
SONARPY-1113 Rule S6330: Using unencrypted SQS queues is security-sensitive
SONARPY-1110 Rule S6275: Using unencrypted EBS volumes is security-sensitive
SonarPython 3.17.0.10029
Release notes - SonarPython - Version 3.17
Bug
SONARPY-1112 Python sensor should be executed also on TEST files
SONARPY-1075 Quickfix for S3923 should not break the code
False-Positive
SONARPY-1107 Adapt S5918 message when returning a call to a skip test method
SONARPY-1106 Fix wrong issue message on S5906 for NOT IN statement
SONARPY-1102 Fix FP on S5914 for nonlocal variables
SONARPY-1101 Fix FP on S5899 for helper methods
SONARPY-1086 Fix FP on S1764 for left bitwise shift
SONARPY-1073 Rule S1313: Exclude reserved documentation IP ranges
SONARPY-1067 Fix FP on S125 when the comment is not actual code
SONARPY-1061 Rule S2068: Add Flask config exceptions
SONARPY-1040 S1854 (DeadStoreCheck) should not raise FP with assignment expressions
SONARPY-1039 Fix FP on S5806 when the name is an IPython builtin
SONARPY-1037 S1481 should not report on dummy variables
SONARPY-1021 Fix FP on S1721 when using the walrus operator
SONARPY-1009 Fix FP on S5607 when using operator on hex value
SONARPY-990 S1481 should not raise when variable is assigned inside decorator
SONARPY-876 S5795 (IdentityComparisonWithCachedTypesCheck) shouldn't raise on 'is not None'
SONARPY-797 FP on S4426: mismatch between key length and key exponent
Improvement
SONARPY-1109 Update protobuf-java to 3.19.2
SonarPython 3.16.0.9967
Release notes - SonarPython - Version 3.16
New Feature
SONARPY-1064 Enable test checks to run on project test files
SONARPY-766 Rule S5918: Tests should be skipped explicitly
SONARPY-765 Rule S5915: Assertions should not be made at the end of blocks expecting an exception
SONARPY-764 Rule S5914: Assertions should not fail or succeed unconditionally
SONARPY-762 Rule S5906: The most specific assertion should be preferred
SONARPY-761 Rule S5845: Assertions of dissimilar types should not be made
SONARPY-760 Rule S5905: Assert should not be called on a tuple literal
SONARPY-758 Rule S5899: Test methods should be discoverable
SonarPython 3.15.1.9817
Release Notes - SonarPython - Version 3.15.1
Bug
- [SONARPY-1041] - Fix the quick-fix for S1940 (BooleanCheckNotInvertedCheck)
- [SONARPY-1042] - Fix the quick-fix for S3923 (AllBranchesAreIdenticalCheck)
- [SONARPY-1043] - Fix NPE in quick-fix for S1854 (DeadStoreCheck)
- [SONARPY-1046] - Regression of "NOSONAR" issue suppression