Toolkit for code / comments actuality and relevance checking.
DISCLAIMER: Work in process, and for a while - here is approximate description
"Code never lies, comments sometimes do." - Ron Jeffries
Actool CLI provides tools for validating comments in code - based on your config, code and commits history.
Tool was conceived to solve following problems:
- Comments for code block loses their actuality fastly - during developing (becomes irrelevant)
/** * Get schedules from server */constgetShared=async()=>{const{data: schedules}=awaitAPI.getSchedules();const{data: vehicles}=awaitAPI.getVehicles();const{data: issueStatuses}=awaitAPI.getIssueStatuses();}- Sometimes few parts of code stay commented. And after long time it might confuse you and your colleagues when you'll return to this block
return(<divclassName="toolbar"><ButtononClick={handleRefresh}>Refresh</Button>{/* <Button onClick={() => dispatch(deleteEntity()))}>Delete</Button> */}{/* <Button onClick={handleAdd}>Add</Button> */}</div>)- After a while of your projects started - there are a lot of
fixme/todotags, what hard to control and track during dev
// TODO: loading logic// FIXME: temp logic, specify// FIXME: invalid behaviour, fix laterTODO: quick start with module (how it should be - by your opinion)
TODO: installing process (yarn + npm)
TODO: quick usage example (import / require without custom config)
TODO: customization for project (how it should be - by your opinion)
![]() Ilya Azin | ![]() Ural Ozbayan | ![]() Damir Nafikov |
TODO: some specific cases / problems (how it should be - by your opinion)
- MVP version for js (as script validator)
- NPM module version for js
- ESLint rule
- Version with precommit hook validating
- Version for other langs
- Version for IDEs (at start - as vscode extension)
- Check comments actuality (with validate triggering by related code changing)
- Control rubbish commented code (to reduce amount of unused commented and confusing logic)
- Control todo/fixme's progression (to regulate and normalize project backlog)
- Notifications for user (for manual checking confusing specified files)


