Releases: protofire/solhint
v6.0.3
[6.0.3] - 2026-01-20
🛠️ Fix: removed unused files, normalized schema for validation, load-rules, base-checker and validator improvements
🛠️ Fix: removing console log from use-natspec rule (thanks brossetti1!!)
🛠️ Fix: misc minor issues and typos. General polish and stability
✨🛡️ Kudos to our contributors! 🛡️✨
v6.0.2
Merge pull request #732 from protofire/develop MERGE Develop into Master - v6.0.2
v6.0.1
[6.0.1] - 2025-08-22
🛠️ Fix: no-unused-vars for modifiers
🛠️ Fix: no-unused-imports handled for multiline @inheritdoc. Eliminates missed detections with multiline inheritance docs
🛠️ Fix: func-name-mixedcase improvement, added snake case exception in interface (naming). Aligns interface naming edge cases
🛠️ Fix: misc minor issues; docs link and typos. General polish and stability
🧰 Infra: Update GitHub Actions in CI workflows. Keeps CI up to date and consistent across jobs
🧰 Infra: Ignore enhancement to mimic as regular linters
🧹 Chore: Remove fs-extra dependency. Simplifies deps
🧹 Chore: Remove strip-ansi. Cleans unused/legacy deps
🧹 Chore: Changed changelog format
🧱 Enhancement: added config for no-unused-vars to validate parameters or not
🧱 Validation: Improve AJV schema validation and related caching approach. More robust/faster config validation
✨🛡️ Kudos to our contributors! 🛡️✨
v6.0.0
[6.0.0] - 2025-07-04
BREAKING CHANGE
Some rules were removed from the recommended ruleset and other were promoted. See below:
Rules revision - #692
🟥 DEMOTED
payable-fallback: Outdated due to the introduction of receive(); rarely needed in modern Solidity.
✅ PROMOTED
interface-starts-with-i: Promotes clarity by clearly distinguishing interfaces from contracts.gas-calldata-parameters: Encourages optimal memory usage for external functions.gas-increment-by-one: Suggests using ++i style for gas-efficient increments.gas-indexed-events: Improves event indexing for off-chain systems and reduces gas usage.gas-small-strings: Recommends cheaper encoding using bytes32 for short strings.gas-strict-inequalities: Helps avoid subtle off-by-one bugs in range conditions.gas-struct-packing: Maximizes storage efficiency by suggesting tight struct packing.duplicated-imports: Prevents redundant imports that bloat the AST and confuse code structure.import-path-check: Ensures all imported files exist and resolve correctly, avoiding runtime errors.function-max-lines: Encourages smaller, more readable and maintainable functions.constructor-syntax: Enforces modern constructor syntax for consistency and clarity.use-natspec: Promotes proper documentation with NatSpec for better audits and readability.
Fixed
gas-struct-packingfalse positives - #690gas-increment-by-onebackward expression - #691- Typo (thanks to @MarkFizz77)
Added
use-natspec: Promote the use of natspec and make several checks to enforce it - #689
v5.2.0
[5.2.0] - 2025-06-27
Fixed
imports-orderinterference withno-unused-imports#684
Added
- Added
cacheflag allowing to skip already evaluated files if no error was thrown and file did not change - #685 - Added multi-directory config support by hierarchy - #678
- Added better error handling on invalid configs - #683
Thanks to @smol-ninja - @PaulRBerg @lechpzn, @otc-png, @MamunC0der, @kks-code, @RidaMichofi
For making the time of proposing rules, pointing out typos, broken links, unused code, copyright, small reviews, etc. We really appreciate your contributions!
v5.1.0
[5.1.0] - 2025-05-05
Added
- Argument to avoid discord poster - #646
- Auto-fix for
no-unused-import- #648 (Thanks to @DenisGorbachev) - New Rule: import-path-check - #657
Updated
- yml and parser update - #668 (Thanks to @zeevick10)
- cleanup deprecated code - #655
- Improved
orderingrule - #656
BREAKING CHANGE
- Removed code for
solhint:defaultruleset - #654
Thanks to @fanqiaojun, @maximevtush, @MaxweLL22-22, @PixelPil0t1, @wgyt, @operagxsasha, @Hopium21, @leopardracer, @omahs, @zeevick10, @gap-editor, @Olexandr88, @jirutka
For making the time of pointing out typos, license update, broken links, unused code, copyright, small reviews, etc. We really appreciate your contributions!
v5.0.5
[5.0.5] - 2025-01-16
Fixed
gas-custom-errors#620 - Support for Custom Errors insiderequirestatementscompiler-version#621 - Upgraded minimum requirement for the rulereentrancy#622 - Fixed path and typos- Typos #623 - Fixed typos
- Typo #625 - Fixed typo
Added
- New Rule: Duplicated Imports #626
- Cute Message on console report to gather community into discord channel
v5.0.4
v5.0.3
v5.0.2
[5.0.2] - 2024-07-25
Fixed
func-named-parametersexclude abi.encodeX from the rule #583 (Thanks to @0xCLARITY)- Several typos in comments #586 (Thanks to @dropbigfish)
Added
- New Rule: Imports order #587