Skip to content

Modernize documentation setup#784

Merged
LaurentRDC merged 2 commits intomasterfrom
beam-docs-autogen
Mar 3, 2026
Merged

Modernize documentation setup#784
LaurentRDC merged 2 commits intomasterfrom
beam-docs-autogen

Conversation

@LaurentRDC
Copy link
Member

@LaurentRDC LaurentRDC commented Feb 28, 2026

This PR does two things:

  • Modernize the way documentation is built by re-using the flake.nix mechanism for development;
  • Generates documentation on every commit and deploy to Github Pages once again.

Fixes #612 and #727

Modernization

There were a few issues that needed to be fixed.

The most important is that I could not get the dbLenses and tableLenses mechanism so compile on GHC 9.8 or 9.10. I recall there were changes to ImpredicativeTypes in GHC 9.8, so it could be why. Instead, I generated lenses using microlens-th's makeLenses, and edited the section on lenses accordingly (i.e. practically removed it).

This introduced TemplateHaskell in some of the examples. Unfortunately, runhaskell doesn't work well with staged compilation of files containing TemplateHaskell. Therefore, we build examples with runhaskell UNLESS Template Haskell is involved, in which case we use the much slower ghc --make -O0.

@LaurentRDC LaurentRDC force-pushed the beam-docs-autogen branch 3 times, most recently from f17c3ec to 1d240e4 Compare March 1, 2026 01:12
@LaurentRDC LaurentRDC marked this pull request as ready for review March 1, 2026 01:24
@LaurentRDC
Copy link
Member Author

LaurentRDC commented Mar 1, 2026

@peterbecich I extended your implementation of flake.nix from #737 to also work with the documentation, but I'm very far out of my depth here. Would you take a look?

Edit: I'll merge the PR now since it's working, but feel free to comment here and I can make fixups in a subsequent PR

@LaurentRDC LaurentRDC force-pushed the beam-docs-autogen branch 9 times, most recently from 4dae703 to a119235 Compare March 3, 2026 00:18
@LaurentRDC LaurentRDC merged commit 6c26218 into master Mar 3, 2026
13 checks passed
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.

Publish docs from CI

1 participant