This updates the ignore list as per #3250 and embeds code for updating
the ignore file when the environment variable `SI_UPDATE_IGNORE=true`
is set and the linter is run like so `SI_UPDATE_IGNORE=true npm run svglint`
-- running this command will display all remaining linting failures and
use these to update the ignore file.
This also:
* Normalises the top-level object key in the ignore file to match each
linter name
* Sorts the ignore output on top-level key and icon name value to
make output consistent
* Speeds up icon center checking if ignored
* Ignores icons in size linter if icon is otherwise ignored
* Add linter to check svg path dimensions
Float precision is set at 3 which is the default for svgo in .svgo.yml;
precision can be raised over time.
This adds an ignore file with the current paths of non-conforming icons.
This also changes the name of the icon title linter as well so it reads
more nicely than "custom".
* Update CONTRIBUTING GUIDELINES
Add a note on visual imperfections and viewbox problems due to
optimizing.
Co-authored-by: Eric Cornelisesn <ericornelissen@gmail.com>
Co-authored-by: Peter Noble <PeterShaggyNoble@users.noreply.github.com>