unisonweb / unison

A friendly programming language from the future
https://unison-lang.org
Other
5.77k stars 270 forks source link

Which hlint hints do we care about? #3747

Open philderbeast opened 1 year ago

philderbeast commented 1 year ago
# Avoid infinite loop symlinks.
#   $ find -L . -type l
#   find: File system loop detected;
#     ‘./codebase2/codebase-sqlite/unison’ is part of the same file system loop as
#     ‘./codebase2/codebase-sqlite’.
#   find: File system loop detected;
#     ‘./unison’ is part of the same file system loop as
#     ‘.’.
- arguments:
  - --ignore-glob=codebase2/codebase-sqlite/unison
  - --ignore-glob=unison

Running hlint-3.5 with the above .hlint.yaml, I'm finding 1060 hints when run on .:

Warnings currently triggered

Which of these do we care about?

I'd be prepared to setup a github action to run hlint and to tackle these suggestions, taking the hints and applying them to the unison codebase.

aryairani commented 1 year ago

Hey @philderbeast! Sorry for the late reply.

First of all, this is kind of awesome, but... mostly we've been just ignoring hlint, because I'm not sure any of the rules are good as absolutes for us!

Well maybe these are good: Redundant bracket Redundant $

But anyway, I worry that the benefit of trying to fix these or any of them all at once is outweighed by the cost of potential merge conflicts, when they'll probably gradually go away on their own over time for free.

I think, if we're lucky, there will be some point in the future where we've got so many community contributions that we need a tool to get the different contributors' styles reined in, but we're not quite there yet; so I'm inclined to put this effort on hold for the time being.