koalaman / shellcheck

ShellCheck, a static analysis tool for shell scripts
https://www.shellcheck.net
GNU General Public License v3.0
36.45k stars 1.78k forks source link

Drop support for some really old GHC versions #3015

Open josephcsible opened 4 months ago

josephcsible commented 4 months ago

https://github.com/koalaman/shellcheck/blob/3946cbd4a0b477700172c04be7baa3f43777bc99/ShellCheck.cabal#L44-L66

These lower bounds are really, really old. GHC 7.10.3 is from 2015. Can we drop support for some older versions? If we want to be conservative, I think a good new lower bound would be GHC 8.2, since that's what RHEL (EPEL) 8 ships, and to my knowledge, there are no supported versions of any mainstream distros that ship anything older.

brother commented 3 months ago

Being old is not really a bad thing. Most of the shell definitions are very old. As long as the lower bounds does not hamper development into upper bounds the make no harm IMHO.

josephcsible commented 3 months ago

What led to me asking about this is that there's a bunch of places in the code that clumsily create a Map k () just to pass to Map.difference. I wanted to change them to create a Set k and use Map.withoutKeys instead, but that's new to containers 0.5.8 (released 8 years ago), and our lower bound is 0.5.6.

josephcsible commented 3 months ago

Also, a while ago I found some code that was basically reimplementing fromRight, so I tried to replace it with calls to it instead, but that's new to GHC 8.2 (released 7 years ago).

brother commented 3 months ago

Good examples! Thnx