Skip to content

Conversation

@TeofilC
Copy link

@TeofilC TeofilC commented Oct 10, 2025

We switch our dependency on template-haskell to a dependency on template-haskell-lift. This smaller library is more stabler and if we can remove the template-haskell dependency from all boot libraries then template-haskell will be much easier to re-install since it no longer needs to be in GHC's dependency closure.

It also lets us drop a lot of compatibility CPP.

For more information see the GHC proposal that introduced this library: ghc-proposals/ghc-proposals#696

template-haskell-lift is not compatible with versions of GHC before 9.10, so support for earlier versions would either need to be dropped, or we would need to add some CPP.

This GHC MR tests this PR against GHC-HEAD: https://gitlab.haskell.org/ghc/ghc/-/merge_requests/14978

@AshleyYakeley
Copy link
Member

I don't think boot libraries (like time) can depend on non-boot libraries (such as template-haskell-lift)?

@TeofilC
Copy link
Author

TeofilC commented Oct 11, 2025

I'll add more of a description in a bit but this will become a boot library in 9.16. I'll update the cabal file to only use it for GHCs greater than that

@TeofilC TeofilC marked this pull request as ready for review January 10, 2026 22:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants