Vladiwostok
a3c473650b
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
2024-03-18 11:13:54 +02:00
Vladiwostok
a805955768
Use DMD in NumberStyleCheck ( #88 )
...
* Replace libdparse with DMD in NumberStyleCheck
* Fix re-lexing for windows (CRLF terminators) files
* Improve unit test
2024-03-05 10:53:12 +02:00
Vladiwostok
4301f6a67e
Delete DuplicateAttributeCheck ( #79 )
2024-02-22 11:40:22 +02:00
Eduard Staniloiu
a71b406c26
Fix branch after rebase
2024-02-05 17:31:35 +02:00
Eduard Staniloiu
e7fb552799
Fix branch after rebase
2024-01-29 18:00:16 +02:00
Vladiwostok
7f22d69b47
Use DMD in RedundantStorageClassCheck ( #84 )
2024-01-29 16:48:32 +02:00
Vladiwostok
28703e9304
Replace libdparse in AsmStyleCheck ( #75 )
2024-01-29 16:47:06 +02:00
Vladiwostok
467a1034a1
Add null terminator to string pointers ( #77 )
2024-01-29 16:45:51 +02:00
lucica28
c6b61cf1f0
replace libdparse in trust_too_much visitor ( #70 )
2024-01-29 16:45:49 +02:00
lucica28
e348cd5d01
delete float operator check ( #71 )
2024-01-29 16:43:50 +02:00
lucica28
73b8da8f67
replace libdparse in unused label check ( #65 )
2024-01-29 16:40:16 +02:00
lucica28
293a6a7a09
replace libdparse in exception check ( #68 )
2024-01-29 16:38:38 +02:00
lucica28
dd644fbfee
replace libdparse in useless assert ( #63 )
2024-01-29 16:15:20 +02:00
lucica28
d9ee7c8203
replace libdparse in statif if else visitor ( #56 )
2024-01-29 16:09:51 +02:00
lucica28
50c4d3b9b6
replace libdparse in redundant parens check ( #61 )
2024-01-29 16:07:39 +02:00
lucica28
396bedcd10
update dmd and include the API needed for semantic analysis ( #66 )
...
* update dmd and include the API needed for semantic analysis
* update libparse + initial implementation for properly documented public functions
* test
* refactor
* update workflows
* delete unused code
2024-01-29 16:05:33 +02:00
lucica28
8750717321
replace libdparse in backwards range check ( #58 )
2024-01-29 15:38:46 +02:00
lucica28
57601895f8
replace libdparse in builtin properties visitor ( #52 )
2024-01-29 15:34:59 +02:00
lucica28
8467cf3055
replace libdparse in logic precedence visitor ( #54 )
2024-01-29 15:33:05 +02:00
lucica28
e1639b4b10
replace libdparse in auto ref assignment ( #51 )
2024-01-29 15:31:30 +02:00
lucica28
710c184259
replace libparse in opequals without tohash visitor ( #53 )
2024-01-29 15:28:38 +02:00
lucica28
82bc26b7be
replace libdpase in assert without msg visitor ( #50 )
2024-01-29 15:26:14 +02:00
lucica28
18a5a09a23
replace libdparse in local imports visitor ( #45 )
2024-01-29 15:16:16 +02:00
lucica28
1ce09a0cbd
replace libdparse in constructor check ( #43 )
2024-01-29 15:14:31 +02:00
lucica28
7a017e049b
replace libdparse in alias style visitor ( #38 )
2024-01-24 14:43:33 +02:00
lucica28
761778b3f4
replace libdparse in explicitly annotated unittests check ( #44 )
2024-01-24 14:35:27 +02:00
lucica28
dd1ab872c1
replace libdparse in length subtraction visitor ( #42 )
2024-01-24 14:29:46 +02:00
lucica28
1cf2f30c32
replace libdparse in redundant attributes visitor ( #40 )
2024-01-24 14:26:00 +02:00
lucica28
b4884e3a3a
replace libdparse in imports sortedness visitor ( #35 )
...
* replace libdparse in imports sortedness visitor
* minor refactor
2024-01-24 13:53:35 +02:00
lucica28
8f625c2747
replace libparse in incorrect infinite range visitor ( #33 )
2024-01-24 13:50:42 +02:00
lucica28
16b69e503a
replace libparse in final attribute visitor ( #34 )
2024-01-24 13:46:18 +02:00
lucica28
664b9e25d5
replace libdparse in delete check ( #21 )
...
* replace libdparse in delete check
* delete comment
2024-01-24 13:28:29 +02:00
lucica28
34e4073105
replace libdparse in objectconst functionality + unittests integration with dmd ( #17 )
...
* replace libdparse in objectconst functionality + unittests integration with dmd
* updated dmd
* run tests
* use templates
* visit aggregate declaration
* updated dmd
* solve linter seg fault
* get rid of dup + refactor
* fix typo
2024-01-24 13:25:41 +02:00
Lucian Danescu
150643c4d3
Replace libdparse in enum array functionality
2024-01-24 13:14:35 +02:00
WebFreak001
8612841365
fix compilation on old compilers
2023-10-25 08:49:37 +02:00
WebFreak001
42033dcc55
add BaseAnalyzerArguments to keep ctor changes sane
...
also immediately makes tokens a part of it
This struct can for example precompute token indices for line endings
2023-10-25 08:49:37 +02:00
Robert Schadek
b43c8f45cf
Always Check Curly
...
Check that if|else|for|foreach|while|do|try|catch
are always followed by a BlockStatement aka. { }
closer
can not get the test to work
try to get the AutoFix in place
maybe a fix
nicer messages
some formatting
more tinkering
still nothing
autofix work now
AutoFix name
message to message_postfix
2023-09-24 19:35:46 +02:00
WebFreak001
c1e051bfba
fix infinite allocating in context formatter
2023-07-10 13:57:27 +02:00
Jan Jurzitza
fed654441f
fix #916 autofix CLI, add integration test for it ( #917 )
2023-07-09 13:09:21 +02:00
WebFreak001
3345a1953a
improve public auto fix API
2023-07-08 23:09:33 +02:00
WebFreak001
43caad72a8
add CLI API to get autofixes at location
2023-07-08 23:09:33 +02:00
WebFreak001
53c9536332
add startIndex, endIndex support to format string
2023-07-08 23:09:33 +02:00
WebFreak001
4194e6af0c
add `dscanner fix` command
2023-07-08 23:09:33 +02:00
WebFreak001
48cec8a6f4
implement indentation aware autofixes
2023-07-08 23:09:33 +02:00
WebFreak001
93aae57469
add autofix testing API
2023-07-08 23:09:33 +02:00
WebFreak001
f12319d5a8
add autofix whitespace collapsing API
2023-07-08 23:09:33 +02:00
Christian Köstlin
35d2cf4177
feature: Provide predefined error format compatible with dmds output
...
an output parser that works with dmd / ldc just works (tm) witha
dscanner as well
2023-07-07 00:15:04 +02:00
WebFreak001
1201a68f66
Only call Win32 API to enable colored output once
2023-07-05 22:41:42 +02:00
WebFreak001
a676bb13fb
fix selective imports
2023-07-02 13:33:11 +02:00
WebFreak001
78f2b5a420
add colored output option
...
also adds a simpler way to invoke D-Scanner for users that uses this new
UI by default: `dscanner lint FILES...`
2023-07-02 13:33:11 +02:00