Commit Graph

1640 Commits

Author SHA1 Message Date
Vladiwostok 926216b0db Remove dead code 2025-08-29 13:16:44 +03:00
Vladiwostok 0327db17b7 Update DMD to 10eb368c1b8c323e1921e991cb2bd8fce535e9b2 2025-08-29 13:16:44 +03:00
Vladiwostok d2ef7fc47b Fix CI 2025-08-29 13:16:44 +03:00
Vladiwostok 795d825c04 Cleanup code and fix integration tests (#172)
* Delete libdparse unit test assertion function

* Delete unused libdparse visitors from base.d

* Improve StaticIfElse warning location

* Improve FunctionAttributeCheck warning location

* Switch to DMD flow for listing autofixes

* Extract dmd analyzer selection in a separate function

* Make getName() method in BaseAnalyzerDmd public

* Fix offsets in integration test json

* Improve StyleChecker warning location

* Enable integration tests in CI

* Fix Autofix flow

* Remove & comment dead code

* Remove dead code from autofix unit test

* Remove dead code

* Remove dead code from autofix.d

* Clean up code in helpers.d

* Clean up code in run.d and migrate StatsCollector to dmd

* Fix reading code from stdin

* Return if errors are found in analysis flows

* Remove dead code

* Check for Windows line terminators in integration tests
2025-08-29 13:16:44 +03:00
Vladiwostok 9c7f594625 Fix Autofix in StaticIfElse (#157) 2025-08-29 13:16:44 +03:00
Vladiwostok ed35bfc691 Fix nolint in StyleChecker (#171) 2025-08-29 13:16:44 +03:00
Vladiwostok ba22ec2c2b Fix Autofix for FinalAttributeChecker (#170) 2025-08-29 13:16:44 +03:00
Vladiwostok 8c61dc3cad Fix Autofix for LengthSubtractionCheck (#169) 2025-08-29 13:16:44 +03:00
Vladiwostok f6c367c513 Replace libdparse with DMD in FunctionAttributeCheck (#156) 2025-08-29 13:16:44 +03:00
Vladiwostok 7980ac3a3b Fix Autofix for LambdaReturnCheck (#151) 2025-08-29 13:16:44 +03:00
Vladiwostok 14ccbeb354 Replace libdparse with DMD in UndocumentedDeclarationCheck (#123) 2025-08-29 13:16:44 +03:00
Vladiwostok 80435481f4 Replace libdparse with DMD in IfConstraintsIndentCheck (#128)
* Replace libdparse with DMD in IfConstraintsIndentCheck

* Fix evil segfault bug

* Remove Issue#829 unit test

* Properly detect issue
2025-08-29 13:16:44 +03:00
Vladiwostok 116a4ea3d2 Remove unused imports (#166) 2025-08-29 13:16:44 +03:00
Vladiwostok 29717d09e8 Remove unused nolint code (#162) 2025-08-29 13:16:44 +03:00
Vladiwostok 0c11c6564b Update dmd to 4a90885ef8e0fc29334da91a4318f9ab52af9f80 (#164) 2025-08-29 13:16:44 +03:00
Vladiwostok 3f28b37b97 Use rawWrite for writing test files in unit tests (#168) 2025-08-29 13:16:44 +03:00
Vladiwostok d9f5b05e66 Replace libdparse with DMD in MismatchedArgumentCheck (#161) 2025-08-29 13:16:44 +03:00
Vladiwostok fc8a68b9c4 Respect @nolint user attribute (#158)
* Respect @nolint in UnmodifiedFinder

* Respect @nolint in UselessInitializerChecker

* Respect @nolint in StaticIfElse

* Fix visibility in base.d
2025-08-29 13:16:44 +03:00
Vladiwostok 6c3d96e389 Replace libdparse with DMD in AllManCheck (#125)
* Replace libdparse with DMD in AllManCheck

* Test assertAnalyzerDmd without writing to file

* Revert "Test assertAnalyzerDmd without writing to file"

This reverts commit 9f50f38a11d97df960c05d5a128059b13e7dcab4.

* Fix windows ci bug

---------

Co-authored-by: Eduard Staniloiu <edi33416@gmail.com>
2025-08-29 13:16:44 +03:00
Vladiwostok bb68206f38 Fail unittests on DMD parsing errors (#154) 2025-08-29 13:16:44 +03:00
Razvan Nitu cc40e684cf Fix unittests (#153)
* Fix broken unittests in vcall_in_ctor.d

* Fix broken unittest in line_length.d

* Fix broken unittest in redundant_attributes.d

* Fix broken unittest in if_constraints_indent.d

* Fix broken unittests in auto_function.d

* Fix broken unittest in always_curly.d
2025-08-29 13:16:44 +03:00
Vladiwostok 3ba7a378c5 Fix Autofix for AutoFunctionChecker (#149) 2025-08-29 13:16:44 +03:00
Vladiwostok fc72595eac Fix Autofix for ExplicitlyAnnotatedUnittestCheck (#150) 2025-08-29 13:16:44 +03:00
Vladiwostok 3b1a43a044 Fix Autofix for AlwaysCurlyCheck (#148) 2025-08-29 13:16:44 +03:00
Vladiwostok ea4c90d703 Replace libdparse with DMD in VcallCtorChecker (#145)
* Replace libdparse with DMD in VcallCtorChecker

* Reformat the file
2025-08-29 13:16:44 +03:00
Vladiwostok cec745a2e1 Fix Autofix for DeleteCheck (#144) 2025-08-29 13:16:44 +03:00
Vladiwostok e52e2970f9 Update dmd to ef02f08456762548555b1476a6e32c6e6af6320c (#146) 2025-08-29 13:16:44 +03:00
Vladiwostok 355ce407d2 Respect "skip unittest" user configuration (#139) 2025-08-29 13:16:44 +03:00
Vladiwostok f8cc9cd8fc Update dmd (6f1b331a6a29e3dddc647ec04dfc9cd85064f3e9) (#141) 2025-08-29 13:16:44 +03:00
Vladiwostok fdb8ad5334 Implement autofix flow for dmd as a library and fix autofix for EnumArrayVisitor (#143) 2025-08-29 13:16:44 +03:00
Vladiwostok d27342b734 Separate analyze with dmd and autofix flows from libdparse analyze flow (#142)
* Separate analyze with dmd and autofix flows from libdparse analyze flow

* Make locally used functions private

* Extract parsing using DMD in a separate function

* Address feedback
2025-08-29 13:16:44 +03:00
Vladiwostok 99dcc4b794 Replace libdparse in UnusedResultChecker (#80)
* Replace libdparse with DMD in UnusedResultChecker

* Run semantic analysis in unit test

* Add more unit tests

* Remove debug prints

* Fix no return test

* Remove semantic analysis
2025-08-29 13:16:44 +03:00
Vladiwostok aece8d2bab Replace libdparse with DMD in LineLengthCheck (#134)
* Replace libdparse with DMD in LineLengthCheck

* Fix windows line counting

* Fix gdc compilation
2025-08-29 13:16:44 +03:00
Vladiwostok 8d7196ae07 Replace libdparse with DMD in HasPublicExampleCheck (#130) 2025-08-29 13:16:44 +03:00
Vladiwostok c0cb2cf18f Replace libdparse with DMD in UselessInitializerChecker (#121)
* Replace libdparse with DMD in UselessInitializerChecker

* Address feedback
2025-08-29 13:16:44 +03:00
Vladiwostok ab17df9a57 Replace libdparse with DMD in BodyOnDisabledFuncsCheck (#127)
* Replace libdparse with DMD in BodyOnDisabledFuncsCheck

* Address feedback
2025-08-29 13:16:44 +03:00
Vladiwostok a232713df4 Replace libdparse with DMD in UnmodifiedFinder (#117) 2025-08-29 13:16:44 +03:00
Vladiwostok 16af24d14f Replace libdparse with DMD in UnusedVariableCheck (#119) 2025-08-29 13:16:44 +03:00
Vladiwostok 9c3859760a Replace libdparse with DMD in UnusedParameterCheck (#116)
* Replace libdparse with DMD in UnusedParameterCheck

* Add workaround for gdc-12 compilation
2025-08-29 13:16:44 +03:00
Vladiwostok 026eb8bef1 Update dmd to latest version (b02f7183804f583776db69c1d8b355671e306216) (#138)
* Disable macOS debug session

* Update dmd to latest version (b02f7183804f583776db69c1d8b355671e306216)
2025-08-29 13:16:44 +03:00
Vladiwostok 2f7e13579c Fix github actions for macos (#135)
* Fix github actions for macos

* Enable macos debugging session
2025-08-29 13:16:44 +03:00
Vladiwostok af525da448 Replace libdparse with DMD in AutoFunctionChecker (#103) 2025-08-29 13:16:44 +03:00
Vladiwostok a9f1348cd4 Replace libdparse with DMD in StyleChecker (#111) 2025-08-29 13:16:44 +03:00
Vladiwostok 9fd84a0bee Replace libdparse with DMD in AlwaysCurlyCheck (#109) 2025-08-29 13:16:44 +03:00
Vladiwostok f4dd1c0c72 Replace libdparse with DMD in LambdaReturnCheck (#114) 2025-08-29 13:16:44 +03:00
Vladiwostok 4a0016c9ed Delete CommaExpressionCheck (#104) 2025-08-29 13:16:44 +03:00
Vladiwostok eb0900437a Delete IfStatementCheck (#106) 2025-08-29 13:16:44 +03:00
Vladiwostok 0e34c831ff Replace libdparse with DMD in LabelVarNameCheck (#101)
* Replace libdparse with DMD in LabelVarNameCheck

* Disable check for local functions
2025-08-29 13:16:44 +03:00
Vladiwostok de6c0a3c98 Use DMD in CyclomaticComplexityCheck (#85)
* Use DMD in CyclomaticComplexityCheck

* Simplify templated visit

* Keep old unit tests
2025-08-29 13:16:44 +03:00
Vladiwostok 4e69052ddc Replace libdparse in IfElseSameCheck (#81)
* Fix & extend IfElseSameCheck

* Enable debug session

* Revert "Enable debug session"

This reverts commit e703fbe58db4c2def038b5473b5b127c4a3773d0.

* Replace common code with template

* Investigate failing workflows

* Revert "Investigate failing workflows"

This reverts commit 11e1dbf4935e492c18bb837611822df8bbb12efd.

* Remove check extension

* Trigger assign error only for the ternary operator

* Fix assignment error
2025-08-29 13:16:44 +03:00