From 97dc3020eebb264a6a66cb02c4f5af48bee8470a Mon Sep 17 00:00:00 2001 From: Andreas Abel Date: Tue, 23 Aug 2022 15:08:39 +0200 Subject: [PATCH 1/2] Fix #1128, fix #1130 by adding bounds to Cabal-syntax and haddock-library --- hackage-server.cabal | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/hackage-server.cabal b/hackage-server.cabal index ba6b86341..934ac195c 100644 --- a/hackage-server.cabal +++ b/hackage-server.cabal @@ -118,6 +118,9 @@ common defaults build-depends: , aeson ^>= 2.0.3.0 , Cabal ^>= 3.6.3.0 + , Cabal-syntax ^>= 3.6.0.0 + -- Cabal-syntax needs to be bound to constrain hackage-security + -- see https://github.com/haskell/hackage-server/issues/1130 , fail ^>= 4.9.0 -- we use Control.Monad.Except, introduced in mtl-2.2.1 , network >= 3 && < 3.2 @@ -390,9 +393,14 @@ library lib-server , cryptohash-sha256 ^>= 0.11.100 , csv ^>= 0.1 , ed25519 ^>= 0.0.5 - , hackage-security ^>= 0.6 + , hackage-security >= 0.6 && < 0.7 + -- N.B: hackage-security-0.6.2 uses Cabal-syntax-3.8.1.0 + -- see https://github.com/haskell/hackage-server/issues/1130 + -- Thus, we need to include Cabal-syntax as dependency explicitly , hackage-security-HTTP ^>= 0.1.1 - , haddock-library > 1.7 && < 2 + , haddock-library >= 1.7.0 && < 1.11 + -- haddock-library-1.11.0 changed type of markupOrderedList + -- see https://github.com/haskell/hackage-server/issues/1128 , happstack-server ^>= 7.7.1 , hashable ^>= 1.3 || ^>= 1.4 , hslogger ^>= 1.3.1 From 7ef0d97b747141ae6975fa40cca0c4284e16fdf9 Mon Sep 17 00:00:00 2001 From: Andreas Abel Date: Tue, 23 Aug 2022 13:35:33 +0200 Subject: [PATCH 2/2] Bump CI to 9.2.4 and some deps --- .github/workflows/haskell-ci.yml | 12 ++++++------ cabal.haskell-ci | 7 ++++++- hackage-server.cabal | 18 +++++++++--------- 3 files changed, 21 insertions(+), 16 deletions(-) diff --git a/.github/workflows/haskell-ci.yml b/.github/workflows/haskell-ci.yml index 84b405fcf..4f2631d62 100644 --- a/.github/workflows/haskell-ci.yml +++ b/.github/workflows/haskell-ci.yml @@ -8,9 +8,9 @@ # # For more information, see https://github.com/haskell-CI/haskell-ci # -# version: 0.15.20220710 +# version: 0.15.20220822 # -# REGENDATA ("0.15.20220710",["github","hackage-server.cabal"]) +# REGENDATA ("0.15.20220822",["github","hackage-server.cabal"]) # name: Haskell-CI on: @@ -34,9 +34,9 @@ jobs: strategy: matrix: include: - - compiler: ghc-9.2.3 + - compiler: ghc-9.2.4 compilerKind: ghc - compilerVersion: 9.2.3 + compilerVersion: 9.2.4 setup-method: ghcup allow-failure: false - compiler: ghc-9.0.2 @@ -62,7 +62,7 @@ jobs: apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common libtinfo5 if [ "${{ matrix.setup-method }}" = ghcup ]; then mkdir -p "$HOME/.ghcup/bin" - curl -sL https://downloads.haskell.org/ghcup/0.1.17.8/x86_64-linux-ghcup-0.1.17.8 > "$HOME/.ghcup/bin/ghcup" + curl -sL https://downloads.haskell.org/ghcup/0.1.18.0/x86_64-linux-ghcup-0.1.18.0 > "$HOME/.ghcup/bin/ghcup" chmod a+x "$HOME/.ghcup/bin/ghcup" "$HOME/.ghcup/bin/ghcup" install ghc "$HCVER" || (cat "$HOME"/.ghcup/logs/*.* && false) "$HOME/.ghcup/bin/ghcup" install cabal 3.6.2.0 || (cat "$HOME"/.ghcup/logs/*.* && false) @@ -73,7 +73,7 @@ jobs: apt-get update apt-get install -y "$HCNAME" libbrotli-dev mkdir -p "$HOME/.ghcup/bin" - curl -sL https://downloads.haskell.org/ghcup/0.1.17.8/x86_64-linux-ghcup-0.1.17.8 > "$HOME/.ghcup/bin/ghcup" + curl -sL https://downloads.haskell.org/ghcup/0.1.18.0/x86_64-linux-ghcup-0.1.18.0 > "$HOME/.ghcup/bin/ghcup" chmod a+x "$HOME/.ghcup/bin/ghcup" "$HOME/.ghcup/bin/ghcup" install cabal 3.6.2.0 || (cat "$HOME"/.ghcup/logs/*.* && false) fi diff --git a/cabal.haskell-ci b/cabal.haskell-ci index 8b3444e8f..e8ddbd02d 100644 --- a/cabal.haskell-ci +++ b/cabal.haskell-ci @@ -13,4 +13,9 @@ installed: +all -Cabal -text -parsec -- Use Ubuntu 20.04 distribution: focal -apt: libbrotli-dev \ No newline at end of file +apt: libbrotli-dev + +-- Make sure the haddock step is included, +-- even though we don't define any library. +haddock-components: all + -- since haskell-ci 0.15.20220822 diff --git a/hackage-server.cabal b/hackage-server.cabal index 934ac195c..329faf15e 100644 --- a/hackage-server.cabal +++ b/hackage-server.cabal @@ -27,7 +27,7 @@ copyright: 2008-2015 Duncan Coutts, license: BSD-3-Clause license-file: LICENSE -tested-with: GHC == { 9.2.3, 9.0.2, 8.10.7, 8.8.4 } +tested-with: GHC == { 9.2.4, 9.0.2, 8.10.7, 8.8.4 } data-dir: datafiles data-files: @@ -111,12 +111,12 @@ common defaults , process >= 1.6 && < 1.7 , text ^>= 1.2.5.0 || ^>= 2.0 , time >= 1.9 && < 1.13 - , transformers >= 0.5 && < 0.6 - , unix >= 2.7 && < 2.8 + , transformers >= 0.5 && < 0.7 + , unix >= 2.7 && < 2.9 , scientific -- other dependencies shared by most components build-depends: - , aeson ^>= 2.0.3.0 + , aeson ^>= 2.0.3.0 || ^>= 2.1.0.0 , Cabal ^>= 3.6.3.0 , Cabal-syntax ^>= 3.6.0.0 -- Cabal-syntax needs to be bound to constrain hackage-security @@ -129,7 +129,7 @@ common defaults , parsec ^>= 3.1.13 , tar ^>= 0.5 , unordered-containers ^>= 0.2.10 - , vector ^>= 0.12 + , vector ^>= 0.12 || ^>= 0.13.0.0 , zlib ^>= 0.6.2 ghc-options: -Wall -fwarn-tabs -fno-warn-unused-do-bind -fno-warn-deprecated-flags -funbox-strict-fields @@ -377,7 +377,7 @@ library lib-server , async ^>= 2.2.1 -- requires bumping http-io-streams , attoparsec ^>= 0.14.4 - , attoparsec-iso8601 ^>= 1.0 + , attoparsec-iso8601 ^>= 1.0 || ^>= 1.1.0.0 , base16-bytestring ^>= 1.0 -- requires bumping http-io-streams , base64-bytestring ^>= 1.2.1.0 @@ -401,15 +401,15 @@ library lib-server , haddock-library >= 1.7.0 && < 1.11 -- haddock-library-1.11.0 changed type of markupOrderedList -- see https://github.com/haskell/hackage-server/issues/1128 - , happstack-server ^>= 7.7.1 - , hashable ^>= 1.3 || ^>= 1.4 + , happstack-server ^>= 7.7.1 || ^>= 7.8.0 + , hashable ^>= 1.3 || ^>= 1.4 , hslogger ^>= 1.3.1 , lifted-base ^>= 0.2.1 , mime-mail ^>= 0.5 , random ^>= 1.2 , rss ^>= 3000.2.0.7 , safecopy ^>= 0.10 - , semigroups ^>= 0.19 + , semigroups ^>= 0.20 , split ^>= 0.2 , stm ^>= 2.5.0 , tagged ^>= 0.8.5