This task encompasses the work to start transitioning Gruntfile.js tasks to package.json. This task covers all simple transitions such as ESLint and creating tasks for what remains. Delete any relevant dependencies as you go and see Popups for reference.
- eslint is not using grunt
- stylelint is not using grunt
- banana-checker is not using grunt
- grunt, grunt-contrib-watch and grunt-notify is removed from codebase
We discussed this in frontend standards group today. Reasons to do this include:
- Relying on Grunt plugin maintainers (e.g. dependant on grunt eslint-plugin upgrades everytime eslint is upgraded. Working now, albeit slower pace, but no guarantee it will in future)
- Grunt going out of fashion
- Focus should be on production code and less on tooling
- Only package.json to npm install, npm start
- Understanding how Grunt works is an unnecessary and additional tax developers need to make when working with our codebases and it's not clear if it's worth it.
- Tasks can be run in package.json. Grunt not needed for that purpose.
- CI faster as no longer needs to download grunt and grunt plugins.
Sign off steps
- Un-stall T206462