Document CI requirements

This commit is contained in:
Harendra Kumar 2021-04-19 20:33:34 +05:30
parent 6132eb3acb
commit 45b997f0b0
2 changed files with 31 additions and 4 deletions

View File

@ -25,6 +25,9 @@
* Check if any critical pending bugs or issues are to be included
* If this is a major release check if any previously deprecated features are to
be removed in this release.
* Check pre-release APIs to be exposed, especially from streamly-examples
* PVP is ahered to, do not change pre-release APIs in a minor release
* _Documentation_:
* README is updated
@ -33,6 +36,14 @@
* Documents in the `docs` directory are consistent with new changes
* All combinators have time and space complexity annotations
* All combinators have `since` annotation
* Unreleased combinators should be marked with `Pre-release` or
`Internal` annotations
* _Build and Test_:
* All CIs are green
* Manually build and test for all flags (esp. `dev` flag) not covered by CIs
* Test latest GHC version with -O0 and -O1
* _Benchmarks_:
@ -44,15 +55,12 @@
in regular runs.
* Check comparative benchmarks using streaming-benchmarks
* _Tests_:
* Run tests with `dev` flag on. Many tests are disabled in regular runs.
* _Examples_:
* Update
[streamly-examples](https://github.com/composewell/streamly-examples)
to make sure it runs with the latest release.
* Check the performance of examples where applicable
* _Update Package Metadata:_

19
design/ci-tests.md Normal file
View File

@ -0,0 +1,19 @@
This file documents the required CI test matrix so that we do not accidentally
remove or miss any tests when making changes to CI configs:
* Last three major versions of GHC (build lib, test, bench, docs), run
tests, on Linux platform, using cabal build
* Only for prime GHC version:
* Run on Windows and MacOS platforms too
* stack build
* Run `bench.sh --quick`
* -Werror (for lib, test, bench)
* `coverage` build
* build from source distribution
* hlint
* `inspection` flag + `fusion-plugin` flag
* --flag streamk
* --flag debug
* --flag doctests
* Latest version ghcjs build (lib, test, bench), run tests