Add qodana CI checks (do not merge, PR for research) #5
1448 new problems found by Qodana for .NET
Qodana for .NET
1448 new problems were found
Inspection name | Severity | Problems |
---|---|---|
XML highlighting |
🔴 Failure | 6 |
Redundant cast |
🔶 Warning | 175 |
Redundant arithmetic overflow checking context |
🔶 Warning | 139 |
Unused parameter (private accessibility) |
🔶 Warning | 74 |
Missing grid column/row setter for non-first child |
🔶 Warning | 14 |
Redundant namespace alias |
🔶 Warning | 12 |
Namespace does not correspond to file location |
🔶 Warning | 9 |
Possible 'System.NullReferenceException' |
🔶 Warning | 9 |
Unresolved binding path when DataContext is known |
🔶 Warning | 7 |
Parameter hides member |
🔶 Warning | 5 |
Overridden property |
🔶 Warning | 4 |
Member hides static member from outer class |
🔶 Warning | 4 |
The pattern is redundant, it does not produce any runtime checks |
🔶 Warning | 4 |
Type member is never used (private accessibility) |
🔶 Warning | 4 |
Access to a static member of a type via a derived type |
🔶 Warning | 3 |
Redundant using directive |
🔶 Warning | 3 |
Unknown property |
🔶 Warning | 2 |
Overriding property |
🔶 Warning | 2 |
Redundant name qualifier |
🔶 Warning | 2 |
Unassigned readonly field |
🔶 Warning | 2 |
Possible 'null' assignment to non-nullable entity |
🔶 Warning | 1 |
Deprecated property |
🔶 Warning | 1 |
Redundant property |
🔶 Warning | 1 |
Empty constructor |
🔶 Warning | 1 |
Invalid XML documentation comment |
🔶 Warning | 1 |
Non-accessed field (private accessibility) |
🔶 Warning | 1 |
Private field can be converted into local variable |
🔶 Warning | 1 |
Type member is never used (non-private accessibility) |
◽️ Notice | 267 |
Unresolved binding path when DataContext is unknown |
◽️ Notice | 81 |
Adjust modifiers declaration order |
◽️ Notice | 72 |
Member can be made private (non-private accessibility) |
◽️ Notice | 60 |
Add/remove 'this.' qualifier |
◽️ Notice | 36 |
Use collection expression syntax |
◽️ Notice | 36 |
Type is never used (non-private accessibility) |
◽️ Notice | 32 |
Invert 'if' statement to reduce nesting |
◽️ Notice | 29 |
Use explicit or implicit modifier definition for type members |
◽️ Notice | 27 |
Remove redundant parentheses |
◽️ Notice | 24 |
Convert constructor into primary constructor |
◽️ Notice | 19 |
Use preferred 'var' style (when type is simple) |
◽️ Notice | 18 |
Use preferred style of 'new' expression when created type is evident |
◽️ Notice | 17 |
Convert local variable or field into constant (private accessibility) |
◽️ Notice | 14 |
Redundant empty argument list on object creation expression |
◽️ Notice | 14 |
Method return value is never used (non-private accessibility) |
◽️ Notice | 14 |
Convert 'if' statement into 'switch' |
◽️ Notice | 12 |
'if-return' statement can be rewritten as 'return' statement |
◽️ Notice | 11 |
Use preferred style for trailing comma before new line in multiline lists |
◽️ Notice | 10 |
Use preferred body style (convert into property, indexer, or event with preferred body style) |
◽️ Notice | 9 |
Class is never instantiated (non-private accessibility) |
◽️ Notice | 8 |
Field can be made readonly (private accessibility) |
◽️ Notice | 8 |
RoslynAnalyzers Avoid constant arrays as arguments |
◽️ Notice | 7 |
Convert into 'using' declaration |
◽️ Notice | 7 |
Use object or collection initializer when possible |
◽️ Notice | 7 |
Add/remove qualifier for static members |
◽️ Notice | 6 |
Unassigned field (non-private accessibility) |
◽️ Notice | 6 |
Convert 'as' expression type check and the following null check into pattern matching |
◽️ Notice | 6 |
Auto-property can be made get-only (non-private accessibility) |
◽️ Notice | 5 |
Use preferred 'var' style (for built-in types) |
◽️ Notice | 5 |
Use string interpolation expression |
◽️ Notice | 5 |
Use preferred argument style for literal values |
◽️ Notice | 4 |
Merge null/pattern/value checks into 'or'/'and' patterns |
◽️ Notice | 4 |
Parameter can be declared with the base type |
◽️ Notice | 4 |
Convert into 'await using' statement or declaration |
◽️ Notice | 4 |
Replace if statement with null-propagating code |
◽️ Notice | 4 |
RoslynAnalyzers Mark members as static |
◽️ Notice | 3 |
Class with virtual (overridable) members never inherited (non-private accessibility) |
◽️ Notice | 3 |
Overlapping sections |
◽️ Notice | 3 |
Field can be made readonly (non-private accessibility) |
◽️ Notice | 3 |
Inline 'out' variable declaration |
◽️ Notice | 3 |
Member can be made static (shared) (non-private accessibility) |
◽️ Notice | 3 |
Type check and casts can be merged |
◽️ Notice | 3 |
Property can be made init-only (non-private accessibility) |
◽️ Notice | 3 |
Redundant type declaration body |
◽️ Notice | 3 |
Redundant verbatim string prefix |
◽️ Notice | 3 |
Use preferred argument style for string literal values |
◽️ Notice | 2 |
RoslynAnalyzers Use char overload |
◽️ Notice | 2 |
'if' statement can be rewritten as '?:' expression |
◽️ Notice | 2 |
Convert property into auto-property |
◽️ Notice | 2 |
Convert property into auto-property (when possible) |
◽️ Notice | 2 |
Member can be made static (shared) (private accessibility) |
◽️ Notice | 2 |
Merge null/pattern checks into complex pattern |
◽️ Notice | 2 |
Redundant semicolon after type or namespace declaration |
◽️ Notice | 2 |
Some values of the enum are not processed inside 'switch' statement and are handled via default section |
◽️ Notice | 2 |
Auto-property can be made get-only (private accessibility) |
◽️ Notice | 1 |
Replace built-in type reference with a CLR type name or a keyword |
◽️ Notice | 1 |
RoslynAnalyzers Use concrete types when possible for improved performance |
◽️ Notice | 1 |
RoslynAnalyzers Instantiate argument exceptions correctly |
◽️ Notice | 1 |
Dictionary lookup can be simplified with 'GetValueOrDefault' |
◽️ Notice | 1 |
Convert constructor into member initializers |
◽️ Notice | 1 |
'if' statement can be rewritten as '??=' assignment |
◽️ Notice | 1 |
Replace 'switch' statement with 'switch' expression |
◽️ Notice | 1 |
Loop can be converted into LINQ-expression |
◽️ Notice | 1 |
Merge conditional ?: expression into conditional access |
◽️ Notice | 1 |
Merge negated null/pattern checks into complex pattern |
◽️ Notice | 1 |
Merge nested property patterns |
◽️ Notice | 1 |
Method supports cancellation |
◽️ Notice | 1 |
Non-accessed field (non-private accessibility) |
◽️ Notice | 1 |
Parameter output value is always discarded (non-private accessibility) |
◽️ Notice | 1 |
Redundant 'else' keyword |
◽️ Notice | 1 |
Replace auto-property with computed property |
◽️ Notice | 1 |
Return type can be IEnumerable<T> (non-private accessibility) |
◽️ Notice | 1 |
RoslynAnalyzers Use 'LibraryImportAttribute' instead of 'DllImportAttribute' to generate P/Invoke marshalling code at compile time |
◽️ Notice | 1 |
Unused parameter (non-private accessibility) |
◽️ Notice | 1 |
Grid columns/rows definitions can be converted to attribute |
◽️ Notice | 1 |
☁️ View the detailed Qodana report
Detected 58 dependencies
Third-party software list
This page lists the third-party software dependencies used in Consolonia
Contact Qodana team
Contact us at [email protected]
- Or via our issue tracker: https://jb.gg/qodana-issue
- Or share your feedback: https://jb.gg/qodana-discussions
Details
This result was published with Qodana GitHub Action
Annotations
Check warning on line 80 in Consolonia.Gallery/Gallery/GalleryViews/GalleryStorage.axaml.cs
github-actions / Qodana for .NET
Access to a static member of a type via a derived type
Access to a static member of a type via a derived type
Check warning on line 43 in Consolonia.Gallery/Gallery/GalleryViews/GalleryStorage.axaml.cs
github-actions / Qodana for .NET
Access to a static member of a type via a derived type
Access to a static member of a type via a derived type
Check warning on line 99 in Consolonia.Gallery/Gallery/GalleryViews/GalleryStorage.axaml.cs
github-actions / Qodana for .NET
Access to a static member of a type via a derived type
Access to a static member of a type via a derived type
Check notice on line 34 in Consolonia.Gallery/Gallery/GalleryViews/GalleryStorage.axaml.cs
github-actions / Qodana for .NET
Use preferred argument style for literal values
Inconsistent argument style: redundant name identifier
Check notice on line 75 in Consolonia.Gallery/Gallery/GalleryViews/GalleryStorage.axaml.cs
github-actions / Qodana for .NET
Use preferred argument style for literal values
Inconsistent argument style: redundant name identifier
Check notice on line 70 in Consolonia.Gallery/Gallery/GalleryViews/GalleryStorage.axaml.cs
github-actions / Qodana for .NET
Use preferred argument style for literal values
Inconsistent argument style: redundant name identifier
Check notice on line 38 in Consolonia.Gallery/Gallery/GalleryViews/GalleryStorage.axaml.cs
github-actions / Qodana for .NET
Use preferred argument style for literal values
Inconsistent argument style: redundant name identifier
Check notice on line 75 in Consolonia.Gallery/Gallery/GalleryViews/GalleryStorage.axaml.cs
github-actions / Qodana for .NET
Use preferred argument style for string literal values
Inconsistent argument style: redundant name identifier
Check notice on line 70 in Consolonia.Gallery/Gallery/GalleryViews/GalleryStorage.axaml.cs
github-actions / Qodana for .NET
Use preferred argument style for string literal values
Inconsistent argument style: redundant name identifier
Check notice on line 58 in Consolonia.GuiCS/handles.cs
github-actions / Qodana for .NET
Use preferred body style (convert into property, indexer, or event with preferred body style)
Code body does not conform to code style settings: use expression-bodied property
Check notice on line 174 in Consolonia.GuiCS/Size.cs
github-actions / Qodana for .NET
Use preferred body style (convert into property, indexer, or event with preferred body style)
Code body does not conform to code style settings: use expression body
Check notice on line 126 in Consolonia.GuiCS/binding.cs
github-actions / Qodana for .NET
Use preferred body style (convert into property, indexer, or event with preferred body style)
Code body does not conform to code style settings: use expression-bodied property
Check notice on line 132 in Consolonia.GuiCS/binding.cs
github-actions / Qodana for .NET
Use preferred body style (convert into property, indexer, or event with preferred body style)
Code body does not conform to code style settings: use expression-bodied property
Check notice on line 141 in Consolonia.GuiCS/Size.cs
github-actions / Qodana for .NET
Use preferred body style (convert into property, indexer, or event with preferred body style)
Code body does not conform to code style settings: use expression-bodied property
Check notice on line 52 in Consolonia.GuiCS/handles.cs
github-actions / Qodana for .NET
Use preferred body style (convert into property, indexer, or event with preferred body style)
Code body does not conform to code style settings: use expression-bodied property
Check notice on line 31 in Consolonia.GuiCS/WindowsDriver.cs
github-actions / Qodana for .NET
Use preferred body style (convert into property, indexer, or event with preferred body style)
Code body does not conform to code style settings: use expression body
Check notice on line 155 in Consolonia.GuiCS/Size.cs
github-actions / Qodana for .NET
Use preferred body style (convert into property, indexer, or event with preferred body style)
Code body does not conform to code style settings: use expression body
Check notice on line 164 in Consolonia.GuiCS/Point.cs
github-actions / Qodana for .NET
Use preferred body style (convert into property, indexer, or event with preferred body style)
Code body does not conform to code style settings: use expression-bodied property
Check notice on line 261 in Consolonia.GuiCS/binding.cs
github-actions / Qodana for .NET
Adjust modifiers declaration order
Inconsistent modifiers declaration order
Check notice on line 262 in Consolonia.GuiCS/binding.cs
github-actions / Qodana for .NET
Adjust modifiers declaration order
Inconsistent modifiers declaration order
Check notice on line 307 in Consolonia.GuiCS/binding.cs
github-actions / Qodana for .NET
Adjust modifiers declaration order
Inconsistent modifiers declaration order
Check notice on line 309 in Consolonia.GuiCS/binding.cs
github-actions / Qodana for .NET
Adjust modifiers declaration order
Inconsistent modifiers declaration order
Check notice on line 264 in Consolonia.GuiCS/binding.cs
github-actions / Qodana for .NET
Adjust modifiers declaration order
Inconsistent modifiers declaration order
Check notice on line 323 in Consolonia.GuiCS/binding.cs
github-actions / Qodana for .NET
Adjust modifiers declaration order
Inconsistent modifiers declaration order
Check notice on line 277 in Consolonia.GuiCS/binding.cs
github-actions / Qodana for .NET
Adjust modifiers declaration order
Inconsistent modifiers declaration order