https://github.com/tonyday567/ephemeral
cd ~/haskell/epemeral
- [X] version check&bump
- [ ] ghcup upgrades
ghcup list -c set -r
- [X] FIXMEs & TODOs
- [X] pragma cleanup
- [X] cabal-docspec
cabal-docspec
- [ ] cabal test
cabal test
- [ ] cabal bench
cabal bench
- [X] ormolu
ormolu --mode check $(git ls-files '*.hs')
ormolu --mode inplace $(git ls-files '*.hs')
- check tested-with line in cabal file
- [X] exact version bump
- [ ] branch, push & check CI
- [ ] haddock
cabal haddock
- [X] readme
- [ ] magit range
- [ ] ChangeLog
- [ ] PR to main
- [ ] merge PR
- [ ] immediate checkout and pull main
- [ ] cabal build with hackage ghc version
ghcup set ghc 9.2.4 cabal build
- [ ] final check
cabal clean && cabal build && cabal-docspec
- [ ] hkgr tagdist
hkgr tagdist
- [ ] check Hackage
Sometimes haddocks don’t build on Hackage. Here’s a recipe for uploading your own docs.
cabal haddock --builddir=docs --haddock-for-hackage --enable-doc cabal upload -d --publish docs/*-docs.tar.gz
cat cabal.project
cabal update
cabal-fix --gen
cabal-fix -f ~/haskell/cabal-fix/my-cabal-fix.config
cabal-fix -i
cabal build --prefer-oldest
hkgr publish
This won’t work if there are cabal.project specifications. So:
cabal upload .hkgr/prettychart-0.2.0.0.tar.gz --publish