From db532b6120c663d94d916dcd5c220eb632d419a4 Mon Sep 17 00:00:00 2001 From: Andreas Herrmann Date: Wed, 31 Mar 2021 17:17:19 +0200 Subject: [PATCH 01/13] add capability --- build-constraints.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/build-constraints.yaml b/build-constraints.yaml index 61e103b6..c35e9c1f 100644 --- a/build-constraints.yaml +++ b/build-constraints.yaml @@ -4556,6 +4556,9 @@ packages: - happy-meta - BNFC-meta + "Andreas Herrmann @aherrmann": + - capability + "Grandfathered dependencies": - Boolean - Decimal From 48bfa85f7bd6f4070eaf770ff9267ecd3b9a7340 Mon Sep 17 00:00:00 2001 From: Michael Snoyman Date: Wed, 31 Mar 2021 22:47:56 +0300 Subject: [PATCH 02/13] Add dockerfiles for lts 17.0 and 17.3 --- automated/dockerfiles/lts-17.0/Dockerfile | 90 +++++++++++++++++++++++ automated/dockerfiles/lts-17.3/Dockerfile | 90 +++++++++++++++++++++++ 2 files changed, 180 insertions(+) create mode 100644 automated/dockerfiles/lts-17.0/Dockerfile create mode 100644 automated/dockerfiles/lts-17.3/Dockerfile diff --git a/automated/dockerfiles/lts-17.0/Dockerfile b/automated/dockerfiles/lts-17.0/Dockerfile new file mode 100644 index 00000000..61c5d09d --- /dev/null +++ b/automated/dockerfiles/lts-17.0/Dockerfile @@ -0,0 +1,90 @@ +FROM ubuntu:18.04 + +LABEL maintainer="manny@fpcomplete.com" + +ARG GHC_VERSION=8.8.3 +ARG LTS_SLUG=lts-17.0 +ARG PID1_VERSION=0.1.2.0 +ARG STACK_VERSION=2.5.1 +ARG CUDA_VERSION=10.0 +ARG JVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64 +ARG LLVM_PATH=/usr/lib/llvm-7 +ARG BOOTSTRAP_COMMIT=1afd08ff0a3c3627f17eb1b928d35f337db40e08 + +ARG DEBIAN_FRONTEND=noninteractive +ARG VARIANT=build +ARG STACK_ROOT=/home/stackage/.stack + +# +# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries. +# + +ENV LANG=C.UTF-8 \ + LC_ALL=C.UTF-8 \ + PATH=/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:$STACK_ROOT/programs/x86_64-linux/ghc-$GHC_VERSION/bin:$PATH \ + CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \ + CPATH=$JVM_PATH/include:$JVM_PATH/include/linux:$LLVM_PATH/include + +# +# Install pre-requisites +# + +RUN apt-get update && \ + apt-get install -y --no-install-recommends \ + wget netbase ca-certificates g++ gcc libc6-dev libffi-dev libgmp-dev \ + make xz-utils zlib1g-dev git gnupg libtinfo-dev jq && \ + rm -rf /var/lib/apt/lists/* + +# +# Use Stackage's debian-bootstrap.sh script to install system libraries and +# tools required to build any Stackage package. +# Re-installs 'stack' *after* running debian-bootstrap.sh since that may have +# installed a different version. +# In the case of 'small' image, just install Stack and GHC. +# + +RUN if [ "$VARIANT" != "small" ]; then \ + wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=8.6.5$/GHCVER=$GHC_VERSION/" | GHCVER=$GHC_VERSION bash; \ + fi && \ + wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/bin '*/stack' && \ + if [ "$VARIANT" = "small" ]; then \ + stack setup --resolver ghc-$GHC_VERSION; \ + fi && \ + rm -rf /var/lib/apt/lists/* && \ + cd $STACK_ROOT && \ + find . -type f -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \ + find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true + +# +# Configure Stack to use the GHC installed in the Docker image rather than installing its own +# + +RUN mkdir /etc/stack/ && \ + echo "system-ghc: true" >/etc/stack/config.yaml + +# +# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We +# remove most of the STACK_ROOT afterward to save space, but keep the 'share' +# files that some of these tools require. +# + +RUN stack --resolver=$LTS_SLUG --local-bin-path=/usr/bin install \ + happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \ + cd $STACK_ROOT && \ + find . -type f -not -path './snapshots/*/share/*' -and -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \ + find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true + +# +# Install 'pid1' init daemon +# + +RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \ + chown root:root /usr/local/sbin && \ + chown root:root /usr/local/sbin/pid1 + +# +# Set up pid1 entrypoint and default command +# + +ENTRYPOINT ["/usr/local/sbin/pid1"] +CMD ["bash"] diff --git a/automated/dockerfiles/lts-17.3/Dockerfile b/automated/dockerfiles/lts-17.3/Dockerfile new file mode 100644 index 00000000..0c177b89 --- /dev/null +++ b/automated/dockerfiles/lts-17.3/Dockerfile @@ -0,0 +1,90 @@ +FROM ubuntu:18.04 + +LABEL maintainer="manny@fpcomplete.com" + +ARG GHC_VERSION=8.8.4 +ARG LTS_SLUG=lts-17.3 +ARG PID1_VERSION=0.1.2.0 +ARG STACK_VERSION=2.5.1 +ARG CUDA_VERSION=10.0 +ARG JVM_PATH=/usr/lib/jvm/java-8-openjdk-amd64 +ARG LLVM_PATH=/usr/lib/llvm-7 +ARG BOOTSTRAP_COMMIT=1afd08ff0a3c3627f17eb1b928d35f337db40e08 + +ARG DEBIAN_FRONTEND=noninteractive +ARG VARIANT=build +ARG STACK_ROOT=/home/stackage/.stack + +# +# Set encoding to UTF-8 and PATH to find GHC and cabal/stack-installed binaries. +# + +ENV LANG=C.UTF-8 \ + LC_ALL=C.UTF-8 \ + PATH=/root/.local/bin:/usr/local/cuda-$CUDA_VERSION/bin:$STACK_ROOT/programs/x86_64-linux/ghc-$GHC_VERSION/bin:$PATH \ + CUDA_PATH=/usr/local/cuda-$CUDA_VERSION \ + CPATH=$JVM_PATH/include:$JVM_PATH/include/linux:$LLVM_PATH/include + +# +# Install pre-requisites +# + +RUN apt-get update && \ + apt-get install -y --no-install-recommends \ + wget netbase ca-certificates g++ gcc libc6-dev libffi-dev libgmp-dev \ + make xz-utils zlib1g-dev git gnupg libtinfo-dev jq && \ + rm -rf /var/lib/apt/lists/* + +# +# Use Stackage's debian-bootstrap.sh script to install system libraries and +# tools required to build any Stackage package. +# Re-installs 'stack' *after* running debian-bootstrap.sh since that may have +# installed a different version. +# In the case of 'small' image, just install Stack and GHC. +# + +RUN if [ "$VARIANT" != "small" ]; then \ + wget -qO- https://raw.githubusercontent.com/fpco/stackage/$BOOTSTRAP_COMMIT/debian-bootstrap.sh | sed "s/^GHCVER=8.6.5$/GHCVER=$GHC_VERSION/" | GHCVER=$GHC_VERSION bash; \ + fi && \ + wget -qO- https://github.com/commercialhaskell/stack/releases/download/v$STACK_VERSION/stack-$STACK_VERSION-linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C /usr/bin '*/stack' && \ + if [ "$VARIANT" = "small" ]; then \ + stack setup --resolver ghc-$GHC_VERSION; \ + fi && \ + rm -rf /var/lib/apt/lists/* && \ + cd $STACK_ROOT && \ + find . -type f -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \ + find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true + +# +# Configure Stack to use the GHC installed in the Docker image rather than installing its own +# + +RUN mkdir /etc/stack/ && \ + echo "system-ghc: true" >/etc/stack/config.yaml + +# +# Use 'stack' to install basic Haskell tools like alex, happy, and cpphs. We +# remove most of the STACK_ROOT afterward to save space, but keep the 'share' +# files that some of these tools require. +# + +RUN stack --resolver=$LTS_SLUG --local-bin-path=/usr/bin install \ + happy alex cpphs gtk2hs-buildtools hscolour hlint hindent && \ + cd $STACK_ROOT && \ + find . -type f -not -path './snapshots/*/share/*' -and -not -path "./programs/x86_64-linux/ghc-$GHC_VERSION/*" -exec rm '{}' \; && \ + find . -type d -print0 |sort -rz |xargs -0 rmdir 2>/dev/null || true + +# +# Install 'pid1' init daemon +# + +RUN wget -O- "https://github.com/fpco/pid1/releases/download/v$PID1_VERSION/pid1-$PID1_VERSION-linux-x86_64.tar.gz" | tar xzf - -C /usr/local && \ + chown root:root /usr/local/sbin && \ + chown root:root /usr/local/sbin/pid1 + +# +# Set up pid1 entrypoint and default command +# + +ENTRYPOINT ["/usr/local/sbin/pid1"] +CMD ["bash"] From 68669633dc4376cade049b84a904607e88c0a422 Mon Sep 17 00:00:00 2001 From: Chris Dornan Date: Sat, 3 Apr 2021 10:16:21 +0100 Subject: [PATCH 03/13] tasty-hedgehog<1.1.0.0 --- build-constraints.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build-constraints.yaml b/build-constraints.yaml index 61e103b6..2c08ccfb 100644 --- a/build-constraints.yaml +++ b/build-constraints.yaml @@ -3129,7 +3129,7 @@ packages: - sv < 0 # via base-4.13.0.0 - sv-cassava < 0 # via sv-core - sv-core < 0 # via base-4.13.0.0 - - tasty-hedgehog + - tasty-hedgehog < 1.1.0.0 # https://github.com/commercialhaskell/stackage/issues/5973 "Ismail Mustafa @ismailmustafa": - handwriting < 0 From 2114bf29a77573ea699a298a44b007d2bc29510c Mon Sep 17 00:00:00 2001 From: Chris Dornan Date: Mon, 5 Apr 2021 17:51:23 +0100 Subject: [PATCH 04/13] singleton-bool < 0.1.6 --- build-constraints.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/build-constraints.yaml b/build-constraints.yaml index 2c08ccfb..fc47014a 100644 --- a/build-constraints.yaml +++ b/build-constraints.yaml @@ -6929,10 +6929,12 @@ packages: - persistent-test < 2.12.0.0 - persistent-typed-db < 0.1.0.3 - # https://github.com/commercialhaskell/stackage/issues/5969 - crackNum < 3 + # https://github.com/commercialhaskell/stackage/issues/5975 + - singleton-bool < 0.1.6 + # end of packages # Package flags are applied to individual packages, and override the values of From f60406eda6cbdf109279c939840f2625f21f5413 Mon Sep 17 00:00:00 2001 From: Dan Burton Date: Tue, 6 Apr 2021 13:41:34 -0400 Subject: [PATCH 05/13] skip tests for hpc-codecov per #5976 --- build-constraints.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/build-constraints.yaml b/build-constraints.yaml index fc47014a..89608b19 100644 --- a/build-constraints.yaml +++ b/build-constraints.yaml @@ -7439,6 +7439,7 @@ skipped-tests: - binary-parsers # https://github.com/winterland1989/binary-parsers/issues/3 - simple-affine-space # https://github.com/commercialhaskell/stackage/issues/5110 - hw-kafka-client # https://github.com/commercialhaskell/stackage/pull/5542 + - hpc-codecov # timeouts? https://github.com/commercialhaskell/stackage/issues/5976 # Missing foreign library - symengine # symengine From 18c6961b705fca0fce72babd4eabbdc2ff02a20a Mon Sep 17 00:00:00 2001 From: Dan Burton Date: Tue, 6 Apr 2021 13:59:10 -0400 Subject: [PATCH 06/13] expect test failure for dl-fedora per #5977 --- build-constraints.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/build-constraints.yaml b/build-constraints.yaml index 89608b19..dcc5551e 100644 --- a/build-constraints.yaml +++ b/build-constraints.yaml @@ -7728,6 +7728,7 @@ expected-test-failures: - character-cases # https://github.com/aiya000/hs-character-cases/issues/3 - lz4-frame-conduit # https://github.com/nh2/lz4-frame-conduit/issues/3 - dhall-yaml # https://github.com/commercialhaskell/stackage/issues/5640 + - dl-fedora # https://github.com/commercialhaskell/stackage/issues/5977 # Assertion failures due to module name ambiguity # (These _should_ be fixed by using the `hide` section of this file) From 446fcaef6a8204ef36c5ad1f86126f3a3ca03de7 Mon Sep 17 00:00:00 2001 From: Dan Burton Date: Sun, 11 Apr 2021 14:33:11 -0400 Subject: [PATCH 07/13] restore int-cast --- build-constraints.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build-constraints.yaml b/build-constraints.yaml index dcc5551e..280f6667 100644 --- a/build-constraints.yaml +++ b/build-constraints.yaml @@ -4317,7 +4317,7 @@ packages: # - msgpack-rpc # https://github.com/commercialhaskell/stackage/pull/4471 # - msgpack-idl # https://github.com/commercialhaskell/stackage/pull/4471 - msgpack-aeson < 0 # via msgpack - - int-cast < 0 # ghc 8.10 + - int-cast "Akihito Kirisaki @kirisaki": - caster < 0 # via fast-builder From 453ef0a01b4f19fa5729f682b417a796f0feaf48 Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Thu, 15 Apr 2021 00:13:58 +0800 Subject: [PATCH 08/13] README: first travis to github change lots of urls to fix yet --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index dfd4acf5..2a07a7b7 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ We welcome all packages, provided: Full details on how to add and test a package can be found in the [maintainers agreement](https://github.com/commercialhaskell/stackage/blob/master/MAINTAINERS.md#adding-a-package). __NOTE__: There is an approximate 30 minute delay between a package uploading -to Hackage and being available to the Travis build script to check upper +to Hackage and being available to the Github workflow action to check upper bounds. If a pull request is marked as failed due to using an older version, please close and reopen the PR to retrigger a Travis build. From 02fea20cccc038198bacdd6b583f5ac3571b04cc Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Thu, 15 Apr 2021 01:49:42 +0800 Subject: [PATCH 09/13] bump generic-lens and -optics and drop it-has (#5842) --- build-constraints.yaml | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/build-constraints.yaml b/build-constraints.yaml index 280f6667..29cf7f44 100644 --- a/build-constraints.yaml +++ b/build-constraints.yaml @@ -4461,7 +4461,7 @@ packages: - slack-api "Dobromir Nikolov @dnikolovv": - - it-has + - it-has < 0 # generic-lens 2.1 "Gabriele Sales @gbrsales": - cabal-appimage @@ -6842,11 +6842,6 @@ packages: # https://github.com/commercialhaskell/stackage/issues/5836 - clock < 0.8.2 - # https://github.com/commercialhaskell/stackage/issues/5842 - - generic-lens < 2.1.0.0 - - generic-lens-core < 2.1.0.0 - - generic-optics < 2.1.0.0 - # https://github.com/commercialhaskell/stackage/issues/5864 - parser-combinators < 1.3.0 - parser-combinators-tests < 1.3.0 From 01865fb3f5bc8c930d05545d2fdaf134e8699da9 Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Thu, 15 Apr 2021 02:25:44 +0800 Subject: [PATCH 10/13] generic-optics testsuite failing (kcsongor/generic-lens#133) --- build-constraints.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/build-constraints.yaml b/build-constraints.yaml index 29cf7f44..d781c856 100644 --- a/build-constraints.yaml +++ b/build-constraints.yaml @@ -7769,7 +7769,6 @@ expected-test-failures: - base16 # https://github.com/commercialhaskell/stackage/issues/5948 - prometheus-client # https://github.com/commercialhaskell/stackage/issues/5948 - # Recursive deps https://github.com/fpco/stackage/issues/1818 - options - text # 1.2.2.1 @@ -7886,6 +7885,8 @@ expected-test-failures: - mmark - mmark-ext + # https://github.com/kcsongor/generic-lens/issues/133 + - generic-optics # end of expected-test-failures # Benchmarks which are known not to build. Note that, currently we do not run From 2dcb7d8e8fc22f106308de89291bb84b1dd93337 Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Thu, 15 Apr 2021 11:27:29 +0800 Subject: [PATCH 11/13] .github: drop the hardcoding of cabal-install --- .github/workflows/check.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 16f9685c..00dd351c 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -9,7 +9,6 @@ jobs: - uses: haskell/actions/setup@v1 with: ghc-version: '8.10' - cabal-version: '3.4' stack-version: '2.5' - uses: actions/cache@v2 with: From 7a33298e6d3be558fd3b1ac7a9f93b4edd9856df Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Thu, 15 Apr 2021 13:58:09 +0800 Subject: [PATCH 12/13] move Kowainik packages to grandfathered: closes #5965 --- build-constraints.yaml | 37 +++++++++++++------------------------ 1 file changed, 13 insertions(+), 24 deletions(-) diff --git a/build-constraints.yaml b/build-constraints.yaml index d781c856..2fd01510 100644 --- a/build-constraints.yaml +++ b/build-constraints.yaml @@ -3765,30 +3765,6 @@ packages: - with-utf8 - uncaught-exception - "Kowainik @chshersh @vrom911": - - co-log-core - - co-log < 0 # ansi-terminal 0.11 - - co-log-polysemy < 0 - - colourista < 0 # ansi-terminal 0.11 - - first-class-patterns - - ilist - - life-sync < 0 # optparse-applicative 0.16.1 - - membrain - - relude < 1 # cabal version/parsing issue: https://github.com/commercialhaskell/stackage/issues/5921 - - shellmet - - shortcut-links - - summoner < 0 # neat-interpolation-0.4 - - summoner-tui < 0 # neat-interpolation-0.4 via summoner - - tomland - - typerep-map - - validation-selective - - "Dmitrii Kovanikov @chshersh": - - type-errors-pretty - - "Veronika Romashkina @vrom911": - - slist - "Holmusk @arbus": - elm-street < 0 # via base-4.13.0.0 & warp-3.3.2 @@ -4630,6 +4606,8 @@ packages: - classy-prelude-conduit - clientsession - cmark-gfm + - co-log-core + - co-log-polysemy < 0 - colour - concurrent-extra - conduit @@ -4706,6 +4684,7 @@ packages: - filemanip - fin - fingertree + - first-class-patterns - fmlist - friendly-time - functor-classes-compat @@ -4759,6 +4738,7 @@ packages: - hxt-unicode - iconv - ieee754 + - ilist - indexed - infer-license - insert-ordered-containers @@ -4785,6 +4765,7 @@ packages: - lzma - managed - math-functions + - membrain - mersenne-random-pure64 - mfsolve - microstache @@ -4861,6 +4842,7 @@ packages: - regex-tdfa-text < 0 # via regex-base-0.94.0.0 - relapse - relational-schemas + - relude < 1 # cabal version/parsing issue: https://github.com/commercialhaskell/stackage/issues/5921 - rerebase - resolv - resource-pool @@ -4884,12 +4866,15 @@ packages: - setenv - shakespeare - shell-escape + - shellmet + - shortcut-links - silently - simple-reflect - simple-sendfile - singleton-bool - size-based < 0 # ghc 8.10 - skein + - slist - snap-core - some - special-values @@ -4949,14 +4934,17 @@ packages: - timeit - tls-session-manager - token-bucket < 0 # via base-4.13.0.0 + - tomland - tonatona < 0 # via tonaparser - transformers-base - tree-diff - trivial-constraint < 0 # ghc 8.10.1 #5447/closed - true-name < 0 # MonadFail - tuple-th + - type-errors-pretty - type-fun < 0 # ghc 8.10.1 #5448/closed - type-hint + - typerep-map - uglymemo - unbounded-delays - universe @@ -4972,6 +4960,7 @@ packages: - utf8-light - utf8-string - uuid-types + - validation-selective - vault - vec - vector From 8b99976ed7363c146c1db25a10a1e21e1521a72e Mon Sep 17 00:00:00 2001 From: Jens Petersen Date: Thu, 15 Apr 2021 14:00:39 +0800 Subject: [PATCH 13/13] versions < 5.0 (#5982) --- build-constraints.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/build-constraints.yaml b/build-constraints.yaml index 2fd01510..c1d7748b 100644 --- a/build-constraints.yaml +++ b/build-constraints.yaml @@ -6919,6 +6919,8 @@ packages: # https://github.com/commercialhaskell/stackage/issues/5975 - singleton-bool < 0.1.6 + # https://github.com/commercialhaskell/stackage/issues/5982 + - versions < 5.0 # end of packages # Package flags are applied to individual packages, and override the values of