on master help sign in
Merge branch 'master' into ghc7.10

Conflicts: build-constraints.yaml

commit8e432e5e6816069472689548c72490d4e81b29f1 authorMichael Snoyman <michael@snoyman.com> dateFri 27 Mar 2015, 13:12 (12 years ago) parent697c1375b44174
3 files changed+106−87
Dockerfile+1−1 README.md+17−42 build-constraints.yaml+88−44
Dockerfile+1−1
@@ -20,6 +20,6 @@ ENV PATH /home/stackage/.cabal/bin:/usr/local/sbin:/usr/local/bin:/opt/ghc/7.8.4
2020
2121RUN cabal update
2222RUN cabal install hscolour cabal-install --constraint "Cabal < 1.22" && cp $HOME/.cabal/bin/* /usr/local/bin && rm -rf $HOME/.cabal $HOME/.ghc /tmp/stackage
23−RUN wget https://s3.amazonaws.com/stackage-travis/stackage-curator.bz2 && bunzip2 stackage-curator.bz2 && chmod +x stackage-curator && mv stackage-curator /usr/local/bin
23+RUN wget https://s3.amazonaws.com/stackage-travis/stackage-curator/stackage-curator.bz2 && bunzip2 stackage-curator.bz2 && chmod +x stackage-curator && mv stackage-curator /usr/local/bin
2424
2525RUN cd /home/stackage && cabal update && stackage-curator check
README.md+17−42
@@ -43,6 +43,23 @@ dependencies, you may send a pull request without testing first.
4343You should also read the [maintainers
4444agreement](https://github.com/fpco/stackage/wiki/Maintainers-Agreement).
4545
46+Package Author Guidelines
47+-------------------------
48+
49+There are some basic rules to get your package to play nice with Stackage. Here
50+are some quick guidelines to hopefully make this easier:
51+
52+* Make sure that your code is buildability and testable from Hackage. Often
53+ times, authors test their builds locally, but the tarball that gets uploaded
54+ to Hackage is missing some necessary files. The best way to do this is to
55+ set up a Travis job to do it for you. We recommend the
56+ [multi-ghc-travis](https://github.com/hvr/multi-ghc-travis) approach.
57+* Make your code compatible with the newest versions of all dependencies.
58+* Make your code 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)).
59+
60+There are certainly many other tips that could be added here. If you think of
61+any, please send a pull request!
62+
4663Build the package set
4764---------------------
4865
@@ -96,45 +113,3 @@ The following describes at a high level the series of steps for processing
961131. Load up most recent build plan
971142. Convert build plan into constraints for next build
981153. Continue from step (3) above
99−
100−## Code explanation
101−
102−We start off with *constraints*. Constraints state things like "package X has a
103−given version range," who the maintainer is for a package, the description of
104−the system/compiler being used, etc. `BuildConstraints` describes the build as
105−a whole, whereas `PackageConstraints` describes the constraints on an
106−individual package.
107−
108−There are two primary ways of getting a `BuildConstraints`.
109−`defaultBuildConstraints` inspects the first GHC in the PATH environment variable to
110−determine GHC version, core packages, core tools, etc. It then uses the
111−`Stackage.Config` module to extract information on additional packages to be
112−installed. The secondary approach is in `Stackage2.UpdateBuildPlan`, which will be
113−discussed later.
114−
115−`BuildConstraints` does not specify a build completely. That is given by a
116−`BuildPlan`, which is similarly broken down into `BuildPlan` and `PackagePlan`.
117−In order to get a `BuildPlan`, we need two pieces of information: the
118−`BuildConstraints`, and a package index. The package index (usually downloaded
119−from Hackage) is a collection of all of the cabal files available.
120−
121−By applying a `BuildConstraints` to a package index (via `newBuildPlan`), we
122−get a proposed `BuildPlan`. There is no guarantee that this `BuildPlan` is
123−valid. To validate it, we use `checkBuildPlan`. A `BuildPlan` is an instance of
124−both `ToJSON` and `FromJSON`, and therefore can be serialized to a file for
125−later use.
126−
127−When dealing with LTS Haskell, we want to be able to take a `BuildPlan`, and
128−update to a newer `BuildPlan` that keeps all packages at the same major
129−version. `updateBuildConstraints` turns a `BuildPlan` into a new
130−`BuildConstraints` with that restriction, and `updateBuildPlan` applies
131−`newBuildPlan` to that result. As mentioned previously: this is *not* a
132−validated result, and therefore `checkBuildPlan` must be used.
133−
134−A `BuildPlan` can be acted on. This is done to check that all packages compile
135−together, run relevant test suites, test Haddock documentation is correct, and
136−produce as artifacts both a self-contained GHC binary package database and a
137−set of Haddock documentation. (Not yet implemented.)
138−
139−A `BuildPlan` may be converted into a bundle to be uploaded to Stackage Server.
140−(Not yet implemented.)
build-constraints.yaml+88−44
@@ -122,9 +122,7 @@ packages:
122122 - kure
123123
124124 "Omari Norman <omari@smileystation.com>":
125− - barecheck
126125 - rainbow
127− - quickpull
128126 - multiarg
129127 - prednote
130128 - cartel
@@ -322,10 +320,13 @@ packages:
322320 #- BlogLiterately
323321 #- BlogLiterately-diagrams
324322 - diagrams
325− - diagrams-builder
323+
324+ # https://github.com/fpco/stackage/issues/443
325+ #- diagrams-builder
326+ #- diagrams-haddock
327+
326328 - diagrams-contrib
327329 - diagrams-core
328− - diagrams-haddock
329330 - diagrams-lib
330331 - diagrams-postscript
331332 - diagrams-svg
@@ -373,10 +374,12 @@ packages:
373374 - tardis
374375 - lens-family-th
375376
376− "Daniel Díaz <dhelta.diaz@gmail.com>":
377+ "Daniel Díaz dhelta.diaz@gmail.com @Daniel-Diaz":
377378 - HaTeX
378379 - matrix
379380 - binary-list
381+ - haskintex
382+ - post-mess-age
380383
381384 "Gabriel Gonzalez <Gabriel439@gmail.com>":
382385 - pipes
@@ -480,8 +483,7 @@ packages:
480483 - openpgp-asciiarmor
481484 - MusicBrainz
482485 - DAV
483− # https://github.com/fpco/stackage/issues/463
484− #- hopenpgp-tools
486+ - hopenpgp-tools
485487
486488 # https://github.com/fpco/stackage/issues/160
487489 "Ketil Malde":
@@ -629,10 +631,11 @@ packages:
629631 "Joey Eremondi <joey@eremondi.com>":
630632 - aeson-pretty
631633 - digest
632− - elm-build-lib
633− - elm-compiler
634+ # See: https://github.com/elm-lang/elm-compiler/commit/e714001a928b3834b62555fc350909c95d380ef4
635+ #- elm-build-lib
636+ #- elm-compiler
634637 - elm-core-sources
635− - elm-package
638+ #- elm-package
636639 - language-glsl
637640 - prettyclass
638641 - QuasiText
@@ -741,25 +744,81 @@ packages:
741744
742745 "Oleg Grenrus oleg.grenrus@iki.fi @phadej":
743746 - waitra
744−
747+
745748 "Adam C. Foltzer acfoltzer@galois.com @acfoltzer":
749+ - cryptol
746750 - gitrev
747751
748752 "Luke Taylor tekul.hs@gmail.com @tekul":
749753 - jose-jwt
750754
751− "Stackage upper bounds":
752−
753− # https://github.com/fpco/stackage/issues/390
754− # NOTE: When this issue is resolved, remove the expected test failure
755− # for language-ecmascript as well.
756− - language-ecmascript < 0.17
755+ "Brendan Hay brendan.g.hay@gmail.com @brendanhay":
756+ - amazonka
757+ - amazonka-core
758+ - amazonka-autoscaling
759+ - amazonka-cloudformation
760+ - amazonka-cloudfront
761+ - amazonka-cloudhsm
762+ - amazonka-cloudsearch-domains
763+ - amazonka-cloudsearch
764+ - amazonka-cloudtrail
765+ - amazonka-cloudwatch-logs
766+ - amazonka-cloudwatch
767+ - amazonka-codedeploy
768+ - amazonka-cognito-identity
769+ - amazonka-cognito-sync
770+ - amazonka-config
771+ - amazonka-datapipeline
772+ - amazonka-directconnect
773+ - amazonka-dynamodb
774+ - amazonka-ec2
775+ - amazonka-ecs
776+ - amazonka-elasticache
777+ - amazonka-elasticbeanstalk
778+ - amazonka-elastictranscoder
779+ - amazonka-elb
780+ - amazonka-emr
781+ - amazonka-glacier
782+ - amazonka-iam
783+ - amazonka-importexport
784+ - amazonka-kinesis
785+ - amazonka-kms
786+ - amazonka-lambda
787+ - amazonka-opsworks
788+ - amazonka-rds
789+ - amazonka-redshift
790+ - amazonka-route53-domains
791+ - amazonka-route53
792+ - amazonka-s3
793+ - amazonka-sdb
794+ - amazonka-ses
795+ - amazonka-sns
796+ - amazonka-sqs
797+ - amazonka-ssm
798+ - amazonka-storagegateway
799+ - amazonka-sts
800+ - amazonka-support
801+ - amazonka-swf
802+ - ede
803+ - pagerduty
804+ - semver
805+ - text-manipulate
806+
807+ "Nick Partridge nkpart@gmail.com @nkpart":
808+ - cabal-file-th
809+
810+ "Gershom Bazerman <gershomb@gmail.com> @gbaz":
811+ - jmacro
812+ - jmacro-rpc
813+ - jmacro-rpc-happstack
814+ - jmacro-rpc-snap
815+ - mbox
816+ - kmeans
817+ - boolsimplifier
818+ - cubicspline
819+ - maximal-cliques
757820
758− # https://github.com/fpco/stackage/issues/407
759− - HStringTemplate < 0.8
760−
761− # https://github.com/fpco/stackage/issues/410
762− - elm-package < 0.4
821+ "Stackage upper bounds":
763822
764823 # https://github.com/fpco/stackage/issues/415
765824 - hackage-db < 1.12
@@ -767,28 +826,13 @@ packages:
767826 # https://github.com/fpco/stackage/issues/424
768827 - control-monad-free < 0.6
769828
770− # https://github.com/fpco/stackage/issues/426
771− - utf8-string < 1
772−
773− # https://github.com/fpco/stackage/issues/440
774− - th-orphans < 0.9
775− - file-location < 0.4.7
776− - th-desugar < 1.5.1
777− - singletons < 1.1.1
778−
779829 # https://github.com/fpco/stackage/issues/442
780830 - blaze-builder < 0.4
831+
832+ # https://github.com/fpco/stackage/issues/487
781833 - blaze-markup < 0.7
782834 - blaze-html < 0.8
783835
784− # https://github.com/fpco/stackage/issues/443
785− - exceptions < 0.7
786− - rest-client < 0.5
787− - rest-types < 1.13
788− - rest-core < 0.35
789− - rest-gen < 0.17
790− - rest-wai < 0.1.0.7
791−
792836 # https://github.com/fpco/stackage/issues/467
793837 - lens < 4.8
794838
@@ -804,8 +848,8 @@ packages:
804848 # https://github.com/fpco/stackage/issues/483
805849 - rethinkdb-client-driver < 0.0.15
806850
807− # https://github.com/fpco/stackage/issues/485
808− - parsec < 3.1.9
851+ # https://github.com/fpco/stackage/issues/494
852+ - criterion < 1.1
809853
810854# Package flags are applied to individual packages, and override the values of
811855# global-flags
@@ -1032,9 +1076,6 @@ expected-test-failures:
10321076 # https://github.com/vincenthz/hs-crypto-pubkey/issues/17
10331077 - crypto-pubkey
10341078
1035− # https://github.com/jswebtools/language-ecmascript/issues/60
1036− - language-ecmascript
1037−
10381079 # https://github.com/kazu-yamamoto/unix-time/issues/29
10391080 - unix-time
10401081
@@ -1125,6 +1166,9 @@ skipped-benchmarks:
11251166 # sometimes falls out-of-sync on hasql-postgres
11261167 - hasql
11271168
1169+ # https://github.com/fpco/stackage/issues/488
1170+ - uuid-types
1171+
11281172skipped-profiling:
11291173 # https://github.com/nomeata/ghc-heap-view/commit/8d198eb8fbbad2ce0c4527c781659f35b8909c04#diff-8288955e209cfbead5b318a8598be9c0R10
11301174 - ghc-heap-view