- Fixed
no-empty-blocksto not report inherited constructors with empty blocks (#264). - Added option
errorMessageMaxLengthfor ruleerror-reasonto specify a character limit on error message.
- Added rule
no-trailing-whitespaceto warn the user when code, comment or blank lines contain trailing whitespaces. This rule will supply thefixfunctionality in a future release. - Added
getLines()sourceCode utility function for rule developers. This method returns the source code split into lines. - Added
getComments()sourceCode utility function for rule developers. This method returns a list of AST Nodes representing comments in the source code.
- Added support for
solium-disable-previous-linecomment directive. - Added support for
solium-enablecomment directive. See configuring with comments. This feature currently has a limitation which has been documented in Known Issues. - Added Pull Request template.
- Fixed rule
no-empty-blocksto report function declarations with empty bodies. Fallback andpayablefunctions andpayableconstructors are not reported if their body is empty. See #254. - Fixed rule
quotesto stop reporting false positives due to brackets enclosing strings (see #240). - Modified rule
uppercaseto allow up to 2 leading and trailing underscores for a constant's name.
- Added support for parsing function declarations inside Inline Assembly blocks.
- Added Issue Templates to the repository for Bug report, Feature request and Lint rule suggestion.
- Added Contribution guidelines.
- Changed
.soliumignore-related warning messages to be more user-friendly. - Fixed bugs in parser related to Inline Assembly variable declaration.
- Fixed
uppercaserule to allow single-character names, where the character must be an alphabet. - Fixed
indentationrule to allow Call expression arguments to start with circular bracket (#223). - Fixed
BinaryExpressionposition bug in parser that led to #175 & #223.
- Added
fixfunctionality tolinebreak-stylerule. - Added
linebreak-stylerule configuration to default.soliumrc.json. - Added support for tilde for specifying version literals in
pragmastatements. - Added rule
constructorto warn the user when the deprecated style of constructor declaration is being used. - Added
--fix-dry-runoption to CLI to allow users to see a git-style diff of the changes the--fixoption will make. - Fixed Hex literal parsing. Incorrect parsing caused the linter to crash in some cases.
- Fixed source code util's
getTextOnLine()to account for both linebreak-styles on both platforms (see issue) - Changed documentation URL to ethlint.readthedocs.io.
solium.readthedocs.iois deprecated but will receive updates. - Moved deprecated rules in documentation into their own section.
- Deprecated the npm package
solium. All updates will be pushed simultaneously to npm packagessoliumandethlint. There is no difference between the software being pushed to these packages, but it is highly recommended that you move to theethlintnpm package. - Added Changelog
- Added syntax support for Solidity
0.5. - Added
ignoreoption forfunction-orderrule (See issue) - Added file name in addition to stack trace in the output of
--debugoption. - Fixed the ignore feature to account for windows line endings in
.soliumignorefile. (Thanks to @romaric-juniet) - Fixed documentation errors.