ServantHaskell Web 服务

联合创作 · 2023-09-23 10:12

Servant 包含一组 Haskell 库,用来构建 Haskell Web 服务。这是一个类型安全的服务,同时支持生成 Web 服务的客户端代码(包括 Haskell 或者 JavaScript)



  • Update changelog and bump versions in master

    • git log --oneline v0.12.. | grep 'Merge pull request' is a good starting point (use correct previous release tag)


  • Create a release branch, e.g. release-0.13

    • Release branch is useful for backporting fixes from master


  • Smoke test in servant-universe

    • git submodule foreach git checkout master and git submodule foreach git pull to get newest of everything.

    • cabal new-build --enable-tests all to verify that everything builds, and cabal new-test all to run tests

      • It's a good idea to separate these steps, as tests often pass, if they compile :)


    • See cabal.project to selectively allow-newer

    • If some packages are broken, on your discretisation there are two options:

      • Fix them and make PRs: it's a good idea to test against older servant version too.

      • Temporarily comment out broken package


    • If you make a commit for servant-universe, you can use it as submodule in private projects to test even more


  • When ripples are cleared out:

    • git tag -s the release

    • git push --tags

    • cabal sdist and cabal upload


浏览 22
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报