TH constraint solver change will break significant portions of Hackage.
I already commented on the original issue, but @osa1 pointed out comments on closed issues tend to get lost.
!1817 (closed) changes the way the solver deals with top-level splices, but I don't think the problem this change fixes outweighs the pain GHC 8.10 will inflict on hackage. It is incredibly common to write
data Foo = ...
makeLenses ''Foo
This keeps the TH call nice and close to the datatype it deals with, but with this change any classes defined below the makeLenses call will be invisible to all the code above, and vice versa. Given how incredibly common this pattern is in most code using TH to generate lenses (which is probably most code that uses lenses) this change will force significant portions of Hackage to gratuitously refactor modules to accommodate this change.
Given how much adoption of 8.8 is already lagging due to the breakage inflicted by MonadFail
, inflicting yet another massively breaking compiler on Hackage seems unwise.