From 41e04b444121124d143ef7eb895556bc4647dee4 Mon Sep 17 00:00:00 2001 From: Daniel Firth <dan.firth@homotopic.tech> Date: Mon, 20 Feb 2023 09:26:03 +0000 Subject: [PATCH] README.md: add policy sections --- README.md | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/README.md b/README.md index 752dd94b..d67217bb 100644 --- a/README.md +++ b/README.md @@ -32,3 +32,50 @@ delete the packages folder. If you need to do additional manual overrides to the nix code, such as `addPkgconfigDepends`, edit the `configuration.nix` overlay, which is applied afterwards. + +## Package Set Policy + +This package set has the following policy. + +* GHC will advance as often as possible +* Nonversioned locations (git, unversioned tarballs) are permitted to allow + GHC to advance. +* The following packages must always build: + * aeson + * beam-postgres + * composite-base + * dhall + * haskell-language-server + * hedgehog + * pandoc + * persistent-postgresql + * polysemy + * servant + * sydtest + * tasty + * xmonad-contrib + * xmonad + * wai-app-static + * warp +* Tags will be of the form `unstable-<yyyy>-<mm>-<dd>-r<N>` where any + unversioned source is used. +* Tags will be of the form `stable-<yyyy>-<mm>-<dd>-r<N>` where all +stable sources are used. + +## Commit Policy + +* All commits should evaluate with `nix flake show`. +* All commits should pass all checks with `nix flake check`. +* All derivations in `packages` should build. +* Where possible, commits should be atomic, of the form + * foo: init at <version> + * foo: <old-version> -> <new-version> +* If multiple packages need to be maintained in lockstep, + the commit message should contain all changes. + +## ChangeLog Policy + +* ChangeLogs should clearly show source stability changes between versions, + of the form: + * stabilized source: aeson, lens + * destabilized source: pandoc -- GitLab