mirror of
https://github.com/commercialhaskell/stackage.git
synced 2026-01-11 23:08:30 +01:00
MAINTAINERS.md: add a little more leniency
This commit is contained in:
parent
ee2e621bff
commit
b1e6f4fac9
@ -6,6 +6,8 @@ The idea behind Stackage is that, if all packages work with the newest versions
|
|||||||
* All packages are compatible with the newest versions of all dependencies (You can find restrictive upper bounds by visiting http://packdeps.haskellers.com/feed?needle=PACKAGENAME).
|
* All packages are compatible with the newest versions of all dependencies (You can find restrictive upper bounds by visiting http://packdeps.haskellers.com/feed?needle=PACKAGENAME).
|
||||||
* All packages in a snapshot are compatible with the versions of libraries that ship with the GHC used in the snapshot ([more information on lenient lower bounds](https://www.fpcomplete.com/blog/2014/05/lenient-lower-bounds)).
|
* All packages in a snapshot are compatible with the versions of libraries that ship with the GHC used in the snapshot ([more information on lenient lower bounds](https://www.fpcomplete.com/blog/2014/05/lenient-lower-bounds)).
|
||||||
|
|
||||||
|
Packages in Stackage are not patched: all package changes occur upstream in Hackage.
|
||||||
|
|
||||||
## Adding a package
|
## Adding a package
|
||||||
|
|
||||||
Anyone can add any package to Stackage but you may only add packages under your own name. It's highly encouraged that the actual package maintainer is also the Stackage maintainer, if that is not the case you should drop the package maintainer a note first.
|
Anyone can add any package to Stackage but you may only add packages under your own name. It's highly encouraged that the actual package maintainer is also the Stackage maintainer, if that is not the case you should drop the package maintainer a note first.
|
||||||
@ -44,18 +46,18 @@ recommend waiting an hour before opening the PR. You can verify this
|
|||||||
by making sure the latest version is listed at
|
by making sure the latest version is listed at
|
||||||
https://github.com/commercialhaskell/all-cabal-metadata/tree/master/packages/.
|
https://github.com/commercialhaskell/all-cabal-metadata/tree/master/packages/.
|
||||||
|
|
||||||
## Uploading a new package
|
## Uploading a new package version
|
||||||
|
|
||||||
When a new version of a package is uploaded to Hackage, we automatically try to include it in Stackage (unless the new version is considered experimental). That can result in a number of possible failures. If there is a failure we temporarily introduce an upper bound, and raise GitHub issue tickets to resolve the issue.
|
When a new version of a package in Stackage is uploaded to Hackage, we automatically try to include it in Stackage (unless the new version is considered experimental). That can result in a number of possible failures. If there is a failure we temporarily introduce an upper bound, and open a GitHub issue ticket to resolve the issue.
|
||||||
|
|
||||||
If the new version doesn't compile then the package author should quickly (within 1 week) upload a fixed version.
|
If the new version doesn't compile then the package author should upload a fixed version.
|
||||||
|
|
||||||
If a package's test suite is failing, the first job is to investigate why. If this is due to a bad interaction with versions of other packages in Stackage, then it is the responsibility of the maintainer to fix the test suite. In some situations, it is acceptable to not run the test suite.
|
If a package's test suite is failing, the first job is to investigate why. If this is due to a bad interaction with versions of other packages in Stackage, then it is the responsibility of the maintainer to fix the test suite. In some situations, it is acceptable to not run the test suite.
|
||||||
|
|
||||||
|
|
||||||
## Following dependency upgrades
|
## Following dependency upgrades
|
||||||
|
|
||||||
If a new version of a dependency is released, and that stops your package compiling/passing the tests, then it is your responsibility to modify your package. It is highly recommended that all package maintainers follow the dependencies of their packages on [Packdeps](http://packdeps.haskellers.com/), typically using the RSS feeds.
|
If a new version of a dependency is released, and that stops your package compiling/passing the tests, then it is your responsibility to modify your package. It is recommended that all package maintainers follow the dependencies of their packages on [Packdeps](http://packdeps.haskellers.com/), typically using the RSS feeds.
|
||||||
|
|
||||||
If a package is not modified in a timely manner, it may be temporarily
|
If a package is not modified in a timely manner, it may be temporarily
|
||||||
removed from Stackage by the curator team, at which point it is your
|
removed from Stackage by the curator team, at which point it is your
|
||||||
@ -76,12 +78,11 @@ free to add a package to Stackage regardless of responsiveness
|
|||||||
guarantees. However, as stated above, we may elect to temporarily
|
guarantees. However, as stated above, we may elect to temporarily
|
||||||
remove a package if it is not updated in a timely manner.
|
remove a package if it is not updated in a timely manner.
|
||||||
|
|
||||||
|
|
||||||
## Failing to meet the time limits
|
## Failing to meet the time limits
|
||||||
|
|
||||||
Maintainers are humans, humans get sick/have babies/go on holiday. If you have regular problems meeting the limits, find a co-maintainer. If you have a one-off problem, respond to the GitHub tickets saying so, and some kind soul might pick up the slack.
|
Maintainers are humans, humans get sick/have babies/go on holiday. If you have regular problems meeting the limits, find a co-maintainer. If you have a one-off problem, respond to the GitHub tickets saying so, and some kind soul might pick up the slack.
|
||||||
|
|
||||||
The time limits are intended to stop people being inconvenienced because of problems in other packages. Where such inconvenience happens, we will drop the offending packages from Stackage. While upper bounds are sometimes a temporary solution, they are against the ethos of Stackage, so will not be kept for long.
|
The soft time limits are intended to prevent people being inconvenienced because of problems in other packages. Where such inconvenience happens, we will drop the offending packages from Stackage. While upper bounds are sometimes a temporary solution, they are against the ethos of Stackage, so will not be kept for longer periods.
|
||||||
|
|
||||||
## Upgrading to a new GHC version
|
## Upgrading to a new GHC version
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user