on master help sign in
Add instructions for testing a package against the latest versions of dependencies
097b645Adam Bergmark
MAINTAINERS.md+14−2
@@ -21,6 +21,18 @@ To add a set of packages, you would add:
21
21
22After doing that, send a pull request (with a commit message like "add foo-bar"). We do not require new submissions to be tested against the rest of Stackage before the pull request (though it is a good idea to do so if you can with `stack --resolver nightly exec stackage-curator check` and `stack --resolver nightly build`), provided you meet the dependency version requirements above. If your library depends on a C library, add a note to your pull request with the Ubuntu library name, or even better edit the `debian-bootstrap.sh` script directly
22After doing that, send a pull request (with a commit message like "add foo-bar"). We do not require new submissions to be tested against the rest of Stackage before the pull request (though it is a good idea to do so if you can with `stack --resolver nightly exec stackage-curator check` and `stack --resolver nightly build`), provided you meet the dependency version requirements above. If your library depends on a C library, add a note to your pull request with the Ubuntu library name, or even better edit the `debian-bootstrap.sh` script directly
23
23
24+If you want to make sure that the package builds against the newest versions of all dependecies you can do this:
25+```
26+$ cabal update
27+$ ghc --version # Should give v8.0.1
28+$ cabal get PACKAGE-VERSION # e.g. aeson-0.11.2.1
29+$ cd PACKAGE-VERSION
30+$ cabal sandbox init # Should give "Creating a new sandbox" and not "Using an existing sandbox".
31+$ cabal install --enable-tests --enable-benchmarks --dry-run | grep latest # Should give no results
32+$ cabal install --enable-tests --enable-benchmarks --allow-newer
33+$ cabal test
34+```
35+
24**NB** Please use commit messages like "add foo-bar" or "add johndev's packages"
36**NB** Please use commit messages like "add foo-bar" or "add johndev's packages"
25(`build-constraints.yaml` is the most frequently changed file in this git repo
37(`build-constraints.yaml` is the most frequently changed file in this git repo
26so commit messages like "update build-constraints.yaml" are not helpful).
38so commit messages like "update build-constraints.yaml" are not helpful).
@@ -28,8 +40,8 @@ so commit messages like "update build-constraints.yaml" are not helpful).
28**NB2** There can be a delay of up to an hour before package versions
40**NB2** There can be a delay of up to an hour before package versions
29newly uploaded to Hackage appear to our build server. If you just
41newly uploaded to Hackage appear to our build server. If you just
30uploaded a package to Hackage that you're trying to get included, we
42uploaded a package to Hackage that you're trying to get included, we
31−recommend waiting an hour before opening the PR. You can also verify
43+recommend waiting an hour before opening the PR. You can verify this
32−this by making sure the latest version is listed in
44+by making sure the latest version is listed in
33https://github.com/commercialhaskell/all-cabal-files/tree/master/PACKAGENAME.
45https://github.com/commercialhaskell/all-cabal-files/tree/master/PACKAGENAME.
34
46
35
47
README.md+1−1
@@ -21,7 +21,7 @@ We welcome all packages, provided:
21* The package is compatible with the newest versions of all dependencies (You can find restrictive upper bounds by visiting http://packdeps.haskellers.com/feed?needle=PACKAGENAME).
21* The package is compatible with the newest versions of all dependencies (You can find restrictive upper bounds by visiting http://packdeps.haskellers.com/feed?needle=PACKAGENAME).
22* The package is compatible with the versions of libraries that ship with GHC ([more information on lenient lower bounds](https://www.fpcomplete.com/blog/2014/05/lenient-lower-bounds)).
22* The package is compatible with the versions of libraries that ship with GHC ([more information on lenient lower bounds](https://www.fpcomplete.com/blog/2014/05/lenient-lower-bounds)).
23
23
24−Full details on how to add a package can be found in the [maintainers agreement](https://github.com/fpco/stackage/blob/master/MAINTAINERS.md#adding-a-package).
24+Full details on how to add and test a package can be found in the [maintainers agreement](https://github.com/fpco/stackage/blob/master/MAINTAINERS.md#adding-a-package).
25
25
26__NOTE__: There is an approximate 30 minute delay between a package uploading
26__NOTE__: There is an approximate 30 minute delay between a package uploading
27to Hackage and being available to the Travis build script to check upper
27to Hackage and being available to the Travis build script to check upper