Releases: SonarSource/SonarJS
Releases · SonarSource/SonarJS
11.5.0
What's Changed
- JS-876 Migrate CssIssuesTest to scanner-integration-tester by @zglicz in #5753
- JS-878 More integration tests migrated to SonarScannerIntegration by @zglicz in #5754
- JS-887 Refactor Stylelint rule tester by @vdiez in #5784
- JS-871 Add S7923 by @vdiez in #5785
- JS-893 Add "type" to all imports which are importing types only by @zglicz in #5801
- JS-872 Add S7924 by @vdiez in #5786
- JS-899 Fix S7749: Do not require a minimum number of digits by @vdiez in #5810
- JS-873 Implement CSS rule S7925 by @vdiez in #5811
- JS-485 Fix rule S1135 to ignore ESLint pragma comments by @vdiez in #5814
- JS-901 Fix its & remove deprecated properties for jasmin/armor/jared by @vdiez in #5820
- JS-900 Fix S7924: Raise once per CSS rule by @vdiez in #5819
- JS-904 Stop defining security rules by @vdiez in #5833
- JS-180 Fix S2187: Support tagged template literals by @vdiez in #5832
- JS-908 Default type-checking analysis should use latest ECMAScript spec libs by @vdiez in #5847
- JS-905 Fix S7755 Check for array type by @vdiez in #5834
- JS-914 Enforce usage of suggestions and fixes on all rules by @vdiez in #5853
Full Changelog: 11.4.0.34681...11.5.0.35357
11.4.1
Full Changelog: 11.4.0.34681...11.4.1.34873
11.4.0
What's Changed
- JS-843 Prepare next development iteration by @vdiez in #5662
- Update dependency @types/node to v22.18.0 by @renovate[bot] in #5664
- JS-844 Update changelog for eslint-plugin-sonarjs by @vdiez in #5665
- JS-794 Make all Sensors global by @vdiez in #5523
- Update typescript-eslint monorepo to v8.41.0 by @renovate[bot] in #5666
- Update dependency @typescript/native-preview to v7.0.0-dev.20250826.1 by @renovate[bot] in #5668
- Update dependency expect to v30.1.0 by @renovate[bot] in #5670
- Update dependency memfs to v4.38.2 by @renovate[bot] in #5669
- Update dependency expect to v30.1.1 by @renovate[bot] in #5672
- Update dependency @typescript/native-preview to v7.0.0-dev.20250827.1 by @renovate[bot] in #5671
- Update dependency @typescript/native-preview to v7.0.0-dev.20250828.1 by @renovate[bot] in #5673
- Update dependency expect to v30.1.2 by @renovate[bot] in #5675
- Update dependency typedoc to v0.28.12 by @renovate[bot] in #5676
- Update dependency @typescript/native-preview to v7.0.0-dev.20250901.1 by @renovate[bot] in #5677
- Update sonarlint.plugin.api.version to v10.29.0.82203 by @renovate[bot] in #5674
- JS-846 Test merging lcov branches by @vdiez in #5667
- Update dependency org.jetbrains:annotations to v26.0.2-1 by @renovate[bot] in #5678
- Update sonar.version to v25.9.0.112764 by @renovate[bot] in #5679
- Update sonarlint.plugin.api.version to v10.30.0.82224 by @renovate[bot] in #5680
- JS-853 Add more cleanup scripts in maven by @zglicz in #5682
- Update typescript-eslint monorepo to v8.42.0 by @renovate[bot] in #5683
- Update actions/setup-node action to v5 by @renovate[bot] in #5688
- Update dependency knip to v5.63.1 by @renovate[bot] in #5687
- Update dependency @types/semver to v7.7.1 by @renovate[bot] in #5686
- Update dependency @typescript/native-preview to v7.0.0-dev.20250903.1 by @renovate[bot] in #5684
- JS-854 Dont raise on arrow function as lambda argument by @zglicz in #5685
- JS-855 Make SQ green on master by @zglicz in #5690
- Update dependency @types/node to v22.18.1 by @renovate[bot] in #5691
- Update dependency eslint to v9.35.0 by @renovate[bot] in #5694
- Update babel monorepo to v7.28.4 by @renovate[bot] in #5693
- Update dependency @typescript/native-preview to v7.0.0-dev.20250904.1 by @renovate[bot] in #5689
- JS-857 Deprecate Node 18 by @zglicz in #5696
- Update typescript-eslint monorepo to v8.43.0 by @renovate[bot] in #5698
- JS-856 Add
eslint-plugin-unicornselected rules by @zglicz in #5692 - JS-757 Refactor package.json cache by @vdiez in #5697
- Update dependency globals to v16.4.0 by @renovate[bot] in #5702
- Update typescript-eslint monorepo to v8.43.0 by @renovate[bot] in #5700
- Update dependency memfs to v4.38.3 by @renovate[bot] in #5699
- Update dependency eslint-plugin-unicorn to v61 by @renovate[bot] in #5701
- Update dependency prettier-plugin-java to v2.7.5 by @renovate[bot] in #5703
- Update dependency com.google.code.gson:gson to v2.13.2 by @renovate[bot] in #5706
- Update dependency memfs to v4.39.0 by @renovate[bot] in #5704
- JS-859 Add strict null checks for tests by @zglicz in #5707
- JS-849 USER-902 add exception for @cdktf by @zglicz in #5708
- Update dependency typedoc to v0.28.13 by @renovate[bot] in #5717
- Update dependency @inquirer/prompts to v7.8.5 by @renovate[bot] in #5716
- Update dependency @angular-eslint/eslint-plugin to v20.3.0 by @renovate[bot] in #5715
- Update sonar.api.version to v13.1.0.3124 by @renovate[bot] in #5713
- Update dependency org.apache.maven.plugins:maven-shade-plugin to v3.6.1 by @renovate[bot] in #5711
- Update dependency @types/node to v22.18.3 - autoclosed by @renovate[bot] in #5710
- Update dependency @inquirer/prompts to v7.8.6 by @renovate[bot] in #5718
- Update dependency type-fest to v5 by @renovate[bot] in #5714
- Update protobuf monorepo to v4.32.1 by @renovate[bot] in #5712
- JS-820 Provide new sonar property to disallow FS access by @vdiez in #5705
- Update sonarlint.plugin.api.version to v10.31.0.82282 by @renovate[bot] in #5720
- Update sonar.api.version to v13.2.0.3137 by @renovate[bot] in #5719
- Update dependency @types/node to v22.18.4 by @renovate[bot] in #5721
- JS-862 Fix unicorn issues by @zglicz in #5709
- Update typescript-eslint monorepo to v8.44.0 by @renovate[bot] in #5722
- JS-864 Fix existing js SQ issues by @zglicz in #5723
- Update sonarlint.plugin.api.version to v10.32.0.82302 by @renovate[bot] in #5724
- JS-865 Upgrade ESLint stylistic to v5 by @vdiez in #5725
- Update dependency memfs to v4.40.0 by @renovate[bot] in #5726
- Update dependency @types/node to v22.18.5 by @renovate[bot] in #5728
- Update dependency memfs to v4.41.0 by @renovate[bot] in #5727
- Update dependency memfs to v4.42.0 by @renovate[bot] in #5729
Full Changelog: 11.3.0.34350...11.4.0.34681
11.3.0
What's Changed
- JS-834 Add theme directive to S4662 by @zglicz in #5615
- JS-828 Add @angular-eslint/eslint-plugin by @zglicz in #5597
- JS-839 Clean up Maven dependencies by @vdiez in #5639
- JS-719 Replace dependency
jsx-ast-utilswithjsx-ast-utils-xby @guilhermesimoes in #5625 - JS-840 Fix handling of built-in modules in fully qualified name generation by @zglicz in #5645
New Contributors
- @katzj made their first contribution in #5631
- @guilhermesimoes made their first contribution in #5625
Full Changelog: 11.2.0.34013...11.3.0.34350
11.2.0
What's Changed
- JS-812 Enable config migration for renovate by @vdiez in #5558
- Migrate renovate config by @renovate[bot] in #5560
- JS-814 Remove stale script by @zglicz in #5561
- JS-813 Prepare next development iteration by @vdiez in #5559
- Update dependency org.junit:junit-bom to v5.13.4 by @renovate[bot] in #5564
- Update dependency @inquirer/prompts to v7.7.1 by @renovate[bot] in #5563
- Update typescript-eslint monorepo to v8.38.0 by @renovate[bot] in #5565
- JS-793 Add SensorContext as parameter to JsAnalysisConsumer::doneAnalysis by @vdiez in #5521
- Tryout typescript go by @zglicz in #5566
- JS-810 Support sonar properties related to analysis scope when provided values are files instead of paths by @vdiez in #5567
- JS-685 Modify S2301 (
no-selector-parameter): Add exception when selector parameter is an object property by @vdiez in #5572 - JS-496 Improve UI message for missing tsconfig file by @vdiez in #5570
- Update dependency expect to v30.0.5 by @renovate[bot] in #5575
- JS-818 tsconfigPaths should accept absolute paths by @vdiez in #5573
- JS-815 Use same WebSocket connection on each Sensor execution by @vdiez in #5569
- ESLINTJS-18 Use ESLint built-in rule
no-unreachable-loopinstead of our ownno-one-iteration-loopby @vdiez in #5576 - ESLINTJS-35 check for jsdoc presence by @zglicz in #5578
- ESLINTJS-20 Do not raise on validator functions by @vdiez in #5577
- ESLINTJS-24 Do not raise on Object properties by @vdiez in #5579
- Update globally import from estree by @zglicz in #5580
- ESLINTJS-17 Allow functions function names for
prefer-immediate-returnby @zglicz in #5581 - JS-825 Remove unused imports by @vdiez in #5582
- JS-826 Allow Renovate to create PRs at any time by @vdiez in #5583
- Update dependency @typescript/native-preview to v7.0.0-dev.20250725.3 by @renovate[bot] in #5585
- Update dependency cross-env to v10 by @renovate[bot] in #5588
- Update dependency memfs to v4.19.0 by @renovate[bot] in #5587
- Update dependency typedoc to v0.28.8 by @renovate[bot] in #5589
- Update dependency memfs to v4.23.0 by @renovate[bot] in #5591
- Update dependency @typescript/native-preview to v7.0.0-dev.20250728.1 by @renovate[bot] in #5590
- Update dependency org.codehaus.mojo:flatten-maven-plugin to v1.7.2 by @renovate[bot] in #5592
- Update dependency @inquirer/prompts to v7.8.0 by @renovate[bot] in #5593
Full Changelog: 11.1.0.33853...11.2.0.34013
10.25.0
What's Changed
- JS-746 Bump version to 10.25 by @zglicz in #5421
- Update dependency @babel/core to v7.27.4 by @renovate[bot] in #5428
- Update protobuf monorepo to v4.31.1 by @renovate[bot] in #5425
- Update dependency protobufjs to v7.5.3 by @renovate[bot] in #5424
- Update dependency @types/node to v22.15.24 by @renovate[bot] in #5423
- Update dependency postcss to v8.5.4 by @renovate[bot] in #5426
- Update dependency pretty-quick to v4.2.0 by @renovate[bot] in #5430
- Update dependency org.junit:junit-bom to v5.13.0 by @renovate[bot] in #5429
- JS-744 Use lightweight Enterprise SQ edition in integration tests by @Godin in #5388
- JS-730 Websockets implementation by @zglicz in #5398
- JS-728 Revert Write ast files to disk by @vdiez in #5432
- Update sonar.version to v25.6.0.109173 by @renovate[bot] in #5437
- Update dependency @types/node to v22.15.29 by @renovate[bot] in #5433
- Update dependency org.java-websocket:Java-WebSocket to v1.6.0 by @renovate[bot] in #5436
- Update typescript-eslint monorepo to v8.33.1 by @renovate[bot] in #5435
- Update dependency pretty-quick to v4.2.2 by @renovate[bot] in #5434
- JS-751 Fix SQ issues by @vdiez in #5438
- JS-752 Fix stale "throws InterrruptedException" by @zglicz in #5439
- JS-753 Change branch for rspec generation by @vdiez in #5440
- Update dependency @babel/eslint-parser to v7.27.5 by @renovate[bot] in #5441
- Update dependency prettier-plugin-java to v2.6.8 by @renovate[bot] in #5443
- JS-737 JS-738 Update generated-meta to include required-dependency list by @zglicz in #5442
- JS-793 Add SensorContext as parameter to JsAnalysisConsumer::doneAnalysis by @vdiez in #5568
Full Changelog: 10.24.0.33043...10.25.0.33900
11.1.0
What's Changed
- JS-792 Remove deprecated Language API by @vdiez in #5520
- JS-411 Add new integration tests for SonarLint by @vdiez in #5507
- JS-800 Remove payload limit for WebSocket server by @zglicz in #5532
- JS-801 Update node.js min required versions by @vdiez in #5533
- JS-802 Automagically keep node versions in sync between package.json, pom.xml and NodeDeprecationWarnings by @zglicz in #5534
- JS-799 Generate licenses for Java dependencies by @zglicz in #5530
- Update sonarlint.plugin.api.version to v10.25.0.81589 by @renovate[bot] in #5540
- Update dependency @types/node to v22.16.3 by @renovate[bot] in #5536
- Update sonar.version to v25.7.0.110598 by @renovate[bot] in #5539
- Update dependency esbuild to v0.25.6 by @renovate[bot] in #5537
- Update typescript-eslint monorepo to v8.36.0 by @renovate[bot] in #5541
- Update dependency eslint to v9.31.0 by @renovate[bot] in #5538
- JS-804 Improve S2187: Add a few more test fqns by @zglicz in #5542
- JS-803 Re-work how node is installed on image and test minimal versions by @zglicz in #5535
- JS-805 Catch tsconfig processing errors by @zglicz in #5543
- JS-807 Add JS/TS exclusions filter in Java by @vdiez in #5545
- Avoid repeated extractions of embedded node runtime by @dreis2211 in #5546
- JS-808 Add coverage to NodeDeprecationWarning of the error case by @zglicz in #5547
- JS-809 Clean up cirrus.yml using matrix attribute by @vdiez in #5548
- Update dependency @types/node to v22.16.5 by @renovate[bot] in #5549
- Update dependency prettier-plugin-java to v2.7.3 - autoclosed by @renovate[bot] in #5551
- Update typescript-eslint monorepo to v8.37.0 by @renovate[bot] in #5556
- Update sonarlint.plugin.api.version to v10.26.0.81748 by @renovate[bot] in #5555
- Update dependency @inquirer/prompts to v7.7.0 by @renovate[bot] in #5552
- Update dependency esbuild to v0.25.8 by @renovate[bot] in #5550
- Update dependency commons-io:commons-io to v2.20.0 by @renovate[bot] in #5553
- Update dependency knip to v5.62.0 by @renovate[bot] in #5554
- JS-811 SQ issues on Java code by @zglicz in #5557
New Contributors
- @dreis2211 made their first contribution in #5546
Full Changelog: 11.0.0.33655...11.1.0.33853
11.0.0
Re-shaped project infrastructure. The main analysis is now driven by a the analyzeProject endpoint and managed in the Node.js bridge server. Communication with Java on a per file basis is performed via WebSockets.
What's Changed
- JS-746 Bump version to 10.25 by @zglicz in #5421
- JS-744 Use lightweight Enterprise SQ edition in integration tests by @Godin in #5388
- JS-730 Websockets implementation by @zglicz in #5398
- JS-728 Revert Write ast files to disk by @vdiez in #5432
- JS-751 Fix SQ issues by @vdiez in #5438
- JS-752 Fix stale "throws InterrruptedException" by @zglicz in #5439
- JS-753 Change branch for rspec generation by @vdiez in #5440
- JS-737 JS-738 Update generated-meta to include required-dependency list by @zglicz in #5442
- JS-727 Remove old analysis path (/analyze-js) by @vdiez in #5394
- JS-758 Handle Cancelled SensorContext by @vdiez in #5445
- JS-761 Fix minor issues with SonarLint integration by @zglicz in #5452
- JS-765 Fix package-json parsing with weird versions by @zglicz in #5460
- JS-763 Handle exceptions during AnalyzeProject by @zglicz in #5458
- JS-764 Easy, rename file: projectAnalyzer -> analyzeProject by @zglicz in #5459
- JS-373 Make S6606 less strict by @zglicz in #5463
- JS-766 Eslint plugin Changelog by @zglicz in #5467
- JS-767 Eslint plugin deploy job by @zglicz in #5468
- JS-768 WS messages debug -> trace by @zglicz in #5469
- JS-762 Use filters on Node.js by @vdiez in #5453
- JS-770 Rework the folder structure of js ruling tests by @vdiez in #5471
- JS-772 Fix references by @vdiez in #5477
- JS-771 Support extra Sonar property for timeout of node bridge by @zglicz in #5470
- JS-773 Fix path filters and fileType assignment by @vdiez in #5478
- JS-774 Use new Node 22.16 runtime plugin version by @zglicz in #5479
- JS-775 Fix README and docs generation for eslint-plugin-sonarjs by @vdiez in #5480
- ESLINTJS-74 JS-778 Add lodash.merge to ESLint plugin dependencies by @vdiez in #5483
- JS-777 Clean up cirrus.yml by @vdiez in #5482
- JS-781 Remove unused file by @zglicz in #5486
- JS-779 Update dependency eslint to v9.29.0 by @vdiez in #5484
- JS-573 Fix JavaScriptPlugin.java deprecation warnings by @vdiez in #5141
- JS-782 Clean more repo with knip by @zglicz in #5487
- JS-780 Do not apply analysis scope exclusions/inclusions to tsconfig.json and package.json files by @vdiez in #5485
- JS-783 Update ESLint plugin changelog by @vdiez in #5488
- JS-784 S1451 (
file-header): Input should be textarea instead of input by @vdiez in #5500 - JS-785 Update RSPEC Maven plugin by @vdiez in #5501
- JS-786 Remove get-all-dependencies by @zglicz in #5502
- JS-789 Improve S4036 message for users by @loris-s-sonarsource in #5505
- JS-790 Remove WS client connection timeout by @vdiez in #5508
- JS-788 Remove field from meta object by @zglicz in #5504
- JS-787 Add win cache for build task by @zglicz in #5503
- Remove import rules/helpers/index.ts in rules/index.ts by @zglicz in #5506
- JS-791 Use @types/jsx-ast-utils instead of home baked .d.ts file by @zglicz in #5509
- JS-795 Bump to version 11.0.0 by @zglicz in #5526
New Contributors
- @loris-s-sonarsource made their first contribution in #5505
Full Changelog: 10.24.0.33043...11.0.0.33655
10.24.0
What's Changed
- JS-715 Prepare next development iteration by @zglicz in #5370
- JS-706 Implement tsconfig.json cache in Node process by @vdiez in #5375
- JS-721 Change TS version to >=5 in eslint-plugin-sonarjs by @vdiez in #5384
- JS-723 Remove dependencies by @zglicz in #5389
- JS-518 Rewrite JsTsSensor to use analyze-project endpoint by @vdiez in #5197
- JS-636 Implement progressReport in Node.js by @vdiez in #5383
- JS-720 Move AnalysisWarningsWrapper to the JsTsSensor by @zglicz in #5382
- JS-725 remove unused imports by @zglicz in #5393
- JS-728 Write ast files to disk instead of serialized in response by @zglicz in #5395
- JS-729 Consume HTTP response with a StreamReader by @vdiez in #5397
- JS-734 Search for package.json files during project lookup by @vdiez in #5404
- JS-716 AST consumers should get all ASTs in PR analysis context by @karim-ouerghemmi-sonarsource in #5402
- JS-731 AST consumers can be disabled by @renaud-tognelli-sonarsource in #5399
- JS-739 Clean up analyze-project files finder by @vdiez in #5405
- JS-724 Remove 'profiling' module from SonarJS by @vdiez in #5410
- JS-742 Use "sonar.scanner.skipJreProvisioning" in integration tests by @Godin in #5413
- JS-743 Share file listener for SonarLint on both analysis paths by @vdiez in #5412
- JS-741 Small refactor on file stores by @vdiez in #5411
- JS-745 Fix SQ before release by @zglicz in #5420
- Multiple renovate updates.
Full Changelog: 10.23.0.32711...10.24.0.33043
10.23.0
What's Changed
- JS-653 Run Java plugin and JS bridge tests in parallel by @zglicz in #5223
- JS-671 Prepare next development iteration by @kebetsi in #5269
- Run compiled js tests instead of ts by @zglicz in #5251
- JS-668 Update rule metadata for CSS by @kebetsi in #5268
- JS-682 Sync rspec by @zglicz in #5290
- JS-680 Move to using external rspec-maven-plugin by @zglicz in #5288
- JS-643 Enable Java ruling by @zglicz in #5208
- JS-681 Generate rspec for CSS using plugin by @zglicz in #5289
- JS-684 Fix Typedoc config by @zglicz in #5298
- JS-683 Automatically update README.MD with rule counts by @zglicz in #5291
- JS-687 update rspec by @zglicz in #5301
- JS-688 Allow calling mvn install/deploy from subfolders by @zglicz in #5302
- JS-690 Update message on latest supported Typescript by @vdiez in #5303
- JS-686 Use external artifact for runtimes by @zglicz in #5300
- JS-693 Enable Java ruling by @vdiez in #5308
- Update developers by @vdiez in #5309
- JS-545 Configure renovate to use repox private npm registry by @zglicz in #5313
- Update transitive packages by @zglicz in #5319
- Update dependency org.sonarsource.orchestrator:sonar-orchestrator-junit5 to v5.6.1.2597 by @renovate in #5330
- JS-604 Update license excludes by @zglicz in #5311
- JS-634 Add default roles by @zglicz in #5314
- JS-633 Improve S3735: if no types, don't raise by @zglicz in #5312
- JS-72 JS-342 Calls to node:assert library should count as valid assertions by @zglicz in #5320
- JS-591 Retry with different config by @zglicz in #5332
- JS-41 Augment vitest assertions to include expectTypeOf and assertType by @zglicz in #5326
- Update dependency com.google.code.gson:gson to v2.13.1 by @renovate in #5327
- JS-701 Consider SonarJasmin active by default by @karim-ouerghemmi-sonarsource in #5333
- JS-588 Improve error message for unresponsive bridge server by @zglicz in #5334
- JS-703 Update README to rename SonarLint to SonarQube for IDE by @vdiez in #5337
- JS-628 Showcase going through inner files in search of assertions by @zglicz in #5335
- JS-702 Ignore git folder by @vdiez in #5336
- JS-628 S2699: Improved handling cross-file method calls by @zglicz in #5339
- Update dependency tsx to v4.19.4 by @renovate in #5340
- JS-153 Capture parsing errors in CSS by @vdiez in #5341
- JS-708 Update rule descriptions by @vdiez in #5345
- JS-707 S2068 should be case-insensitive and support "passphrase" by @GabinL21 in #5344
- JS-705 Rewrite rule to work with Typescript ParserServicesWithTypeInformation by @zglicz in #5342
- JS-625 Add support for 'cdk8s' and '@pulumi' by @zglicz in #5349
- New renovate config by @vdiez in #5354
- JS-711 NOJIRA small type change for ast in output analysis by @zglicz in #5358
- JS-712 Remove multi-part response for BridgeResponse by @zglicz in #5361
- JS-713 S2699 new implementation could cause endless loop by @zglicz in #5365
- BUILD-8073 Migrate public repositories workflows to large runners by @SamirM-BE in #5366
- JS-714 EZ SQ issue - break string by @zglicz in #5369
New Contributors
- @karim-ouerghemmi-sonarsource made their first contribution in #5333
- @GabinL21 made their first contribution in #5344
Full Changelog: 10.22.0.32148...10.23.0.32711