solhint
solhint copied to clipboard
Solhint is an open-source project to provide a linting utility for Solidity code.
solhint --init throws an error ``` solhint: command not found``` when installed with yarn package manager version 1.22.19 Here is my package.json ```json { "devDependencies": { "@chainlink/contracts": "0.4.1", "@ethersproject/abi": "^5.7.0",...
Fix for issue https://github.com/protofire/solhint/issues/353
Hi! Tiny nit-pick here, nbd if it doesn't get fixed. When including timestamps in contracts, you get the following warning. ```bash warning Avoid to make time-based decisions in your business...
**Problem** I'm using Turborepo and Github Actions for test automation in CI. And Hardhat-solhint throws indentation error, which automatically _disappears_ when the action re-runs. ```sh pawcon-blockchain:lint: 113:5 error Expected indentation...
Solhint throws `GC: Invalid Solidity version gas-custom-errors` when `pragma solidity >=0.8.19
PoC: 1. Clone repo: https://github.com/0xCLARITY/solhint-testing 2. Run `yarn lint` 3. Observe "errors": ```sh yarn lint yarn run v1.22.21 $ solhint 'src/**/*.sol' src/ICounter.sol 4:3 warning GC: [sender] on Event [Increment] could...
boolean_comparison Checks if an expression contains a comparison with a boolean literal, which is unnecessary. (best practices) division_before_multiplication Checks for division operations before multiplications, which can result in value truncation....
[here](https://github.com/protofire/solhint/blob/8c2f05ae06fcb41e72d9d9841b52c357a686056c/lib/config/config-file.js#L21), Solhint throws the error trace from Node itself, this is a little distracting because the error is of the format ``` ``` But a better format IMO would be...
Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.20.12 to 7.23.2. Release notes Sourced from @babel/traverse's releases. v7.23.2 (2023-10-11) NOTE: This release also re-publishes @babel/core, even if it does not appear in the linked release...
I want to make sure all our public functions are carefully considered and well documented. The `comprehensive-interface` Solhint rule helps me to achieve this. The problem I am facing is...