v0.0.50
Pre-release
Pre-release
MiKo Analyzers v0.0.50 Release Notes
This release brings a wide range of improvements, new rules, and fixes to enhance code quality and maintainability.
Highlights
-
New Rules Added
MiKo_6067: Detects ternary operator tokens at end of lines.MiKo_1516,MiKo_1517: Prefer adjectives over nouns.MiKo_1518,MiKo_1519: Flags usage of "reference" in names.
-
Analyzer Enhancements
MiKo_1063: Now recognizesoutparameters and abbreviations likenavandrec.MiKo_2019: Improved handling of boolean properties and starting phrases like Simple, Complex, Additional, or Health.MiKo_2223: Smarter fixes forstring.Empty, ignorese.g.,i.e., and numeric starters.MiKo_3085Increased acceptable expression length from 60 to 62 characters.
-
Bug Fixes
MiKo_1040no longer reports on non-collection fields (#1564).
-
Code Fixes & Refactorings
- Rudimentary code fix added for
MiKo_2223. - Refactored rule titles for clarity and consistency.
- Switched
MiKo_1510andMiKo_1514.
- Rudimentary code fix added for
What's Changed in detail
- 'IsAsciiLetterLower' and 'IsAsciiLetterUpper' inlined for performance reasons by @RalfKoban in #1544
- Acceptable length for expressions increased from 60 to 62 characters by @RalfKoban in #1537
- Added new rule MiKo_6067 that reports if ternary operator tokens are placed at end of lines by @RalfKoban in #1539
- Added new rules MiKo_1516, MiKo_1516 and MiKo_1517 that report if adjectives should be preferred to nouns by @RalfKoban in #1535
- Added new rules MiKo_1518 and MiKo_1519 that report on 'reference' in parameter or variable names by @RalfKoban in #1552
- Added rudimentary codefix for MiKo_2223 that can fix 'string.Empty' by @RalfKoban in #1558
- BenchmarkDotNet bumped to v0.15.4 by @RalfKoban in #1566
- Bumped Benchmark.NET to v0.15.3, added .NET9 as test configuration by @RalfKoban in #1546
- Bumped ReportGenerator to v5.4.14 by @RalfKoban in #1547
- Code-fixes switched to 'XmlTextDocumentationCodeFixProvider' by @RalfKoban in #1557
- Dogfooding own rules by @RalfKoban in #1536
- MiKo_1040 no longer reports on non-collection fields by @RalfKoban in #1564
- MiKo_1063 is now aware of 'out' parameters by @RalfKoban in #1553
- MiKo_1063 is now aware of abbreviations 'nav' (for 'navigation') and 'rec' (for 'record') by @RalfKoban in #1549
- MiKo_1081/2/3/4/5 are now aware of bit numbers 8, 16, 32, 64 and 128 by @RalfKoban in #1529
- MiKo_2012 and MiKo_2019 are now aware of 'implementation' / 'implementation class' by @RalfKoban in #1532
- MiKo_2019 is now able to fix some boolean properties by @RalfKoban in #1561
- MiKo_2019 is now aware of 'Simple'/'Complex' and fixes it to 'Represents a simple'/'Represents a complex' by @RalfKoban in #1527
- MiKo_2019 is now aware of some more starting phrases by @RalfKoban in #1559
- MiKo_2019 is now aware of text starting with 'Additional' and 'Health' by @RalfKoban in #1541
- MiKo_2060 is now aware of 'Initializes a new instance of the class' by @RalfKoban in #1534
- MiKo_2075 now ignores 'local function' by @RalfKoban in #1530
- MiKo_2075/2202/2203/2210/2222 are now aware of findings at very end of XML text line by @RalfKoban in #1556
- MiKo_2079 is now aware of more phrases by @RalfKoban in #1560
- MiKo_2223 now ignores 'e.g.' and 'i.e.' and text starting with a number, and attempts to fix found types by @RalfKoban in #1562
- MiKo_5019 now ignores primary constructors by @RalfKoban in #1545
- MiKo_5019 now supports more method types by @RalfKoban in #1531
- MiKo_6031 codefix is now aware of colon being on same line as initializer closing bracket by @RalfKoban in #1533
- MiKo_6040 is now aware of element access expressions by @RalfKoban in #1548
- Refactored analyzer rule titles for clarity and consistency by @RalfKoban in #1540
- ReportGenerator bumped to v5.4.16 by @RalfKoban in #1565
- Switched MiKo_1510 and MiKo_1514 by @RalfKoban in #1550
- Version increased to 0.50 by @RalfKoban in #1567
Full Changelog: v0.0.49...v0.0.50