Skip to content

Commit cf307c0

Browse files
committed
Support GHC-9.0
See ghc-proposals/ghc-proposals#229 for the cause of breakage
1 parent 8ca3be5 commit cf307c0

File tree

4 files changed

+40
-23
lines changed

4 files changed

+40
-23
lines changed

.travis.yml

Lines changed: 29 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,13 @@
22
#
33
# haskell-ci '--output' '.travis.yml' 'HTTP.cabal'
44
#
5+
# To regenerate the script (for example after adjusting tested-with) run
6+
#
7+
# haskell-ci regenerate
8+
#
59
# For more information, see https://github.com/haskell-CI/haskell-ci
610
#
7-
# version: 0.9.20200325
11+
# version: 0.11.20210220
812
#
913
version: ~> 1.0
1014
language: c
@@ -29,41 +33,44 @@ before_cache:
2933
- rm -rfv $CABALHOME/packages/head.hackage
3034
jobs:
3135
include:
32-
- compiler: ghc-8.10.1
33-
addons: {"apt":{"sources":[{"sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-8.10.1","cabal-install-3.2"]}}
36+
- compiler: ghc-9.0.1
37+
addons: {"apt":{"packages":["ghc-9.0.1","cabal-install-3.4"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main"}]}}
38+
os: linux
39+
- compiler: ghc-8.10.4
40+
addons: {"apt":{"packages":["ghc-8.10.4","cabal-install-3.4"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main"}]}}
3441
os: linux
3542
- compiler: ghc-8.8.3
36-
addons: {"apt":{"sources":[{"sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-8.8.3","cabal-install-3.0"]}}
43+
addons: {"apt":{"packages":["ghc-8.8.3","cabal-install-3.4"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main"}]}}
3744
os: linux
3845
- compiler: ghc-8.6.5
39-
addons: {"apt":{"sources":[{"sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-8.6.5","cabal-install-3.0"]}}
46+
addons: {"apt":{"packages":["ghc-8.6.5","cabal-install-3.4"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main"}]}}
4047
os: linux
4148
- compiler: ghc-8.4.4
42-
addons: {"apt":{"sources":[{"sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-8.4.4","cabal-install-3.0"]}}
49+
addons: {"apt":{"packages":["ghc-8.4.4","cabal-install-3.4"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main"}]}}
4350
os: linux
4451
- compiler: ghc-8.2.2
45-
addons: {"apt":{"sources":[{"sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-8.2.2","cabal-install-3.0"]}}
52+
addons: {"apt":{"packages":["ghc-8.2.2","cabal-install-3.4"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main"}]}}
4653
os: linux
4754
- compiler: ghc-8.0.2
48-
addons: {"apt":{"sources":[{"sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-8.0.2","cabal-install-3.0"]}}
55+
addons: {"apt":{"packages":["ghc-8.0.2","cabal-install-3.4"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main"}]}}
4956
os: linux
5057
- compiler: ghc-7.10.3
51-
addons: {"apt":{"sources":[{"sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-7.10.3","cabal-install-3.0"]}}
58+
addons: {"apt":{"packages":["ghc-7.10.3","cabal-install-3.4"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main"}]}}
5259
os: linux
5360
- compiler: ghc-7.8.4
54-
addons: {"apt":{"sources":[{"sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-7.8.4","cabal-install-3.0"]}}
61+
addons: {"apt":{"packages":["ghc-7.8.4","cabal-install-3.4"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main"}]}}
5562
os: linux
5663
- compiler: ghc-7.6.3
57-
addons: {"apt":{"sources":[{"sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-7.6.3","cabal-install-3.0"]}}
64+
addons: {"apt":{"packages":["ghc-7.6.3","cabal-install-3.4"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main"}]}}
5865
os: linux
5966
- compiler: ghc-7.4.2
60-
addons: {"apt":{"sources":[{"sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-7.4.2","cabal-install-3.0"]}}
67+
addons: {"apt":{"packages":["ghc-7.4.2","cabal-install-3.4"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main"}]}}
6168
os: linux
6269
- compiler: ghc-7.2.2
63-
addons: {"apt":{"sources":[{"sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-7.2.2","cabal-install-3.0"]}}
70+
addons: {"apt":{"packages":["ghc-7.2.2","cabal-install-3.4"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main"}]}}
6471
os: linux
6572
- compiler: ghc-7.0.4
66-
addons: {"apt":{"sources":[{"sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-7.0.4","cabal-install-3.0"]}}
73+
addons: {"apt":{"packages":["ghc-7.0.4","cabal-install-3.4"],"sources":[{"key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286","sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main"}]}}
6774
os: linux
6875
before_install:
6976
- HC=$(echo "/opt/$CC/bin/ghc" | sed 's/-/\//')
@@ -86,7 +93,7 @@ before_install:
8693
- |
8794
echo "verbose: normal +nowrap +markoutput" >> $CABALHOME/config
8895
echo "remote-build-reporting: anonymous" >> $CABALHOME/config
89-
echo "write-ghc-environment-files: always" >> $CABALHOME/config
96+
echo "write-ghc-environment-files: never" >> $CABALHOME/config
9097
echo "remote-repo-cache: $CABALHOME/packages" >> $CABALHOME/config
9198
echo "logs-dir: $CABALHOME/logs" >> $CABALHOME/config
9299
echo "world-file: $CABALHOME/world" >> $CABALHOME/config
@@ -113,6 +120,8 @@ install:
113120
- touch cabal.project
114121
- |
115122
echo "packages: ." >> cabal.project
123+
- if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo 'package HTTP' >> cabal.project ; fi
124+
- "if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo ' ghc-options: -Werror=missing-methods' >> cabal.project ; fi"
116125
- |
117126
- "for pkg in $($HCPKG list --simple-output); do echo $pkg | sed 's/-[^-]*$//' | (grep -vE -- '^(HTTP)$' || true) | sed 's/^/constraints: /' | sed 's/$/ installed/' >> cabal.project.local; done"
118127
- cat cabal.project || true
@@ -138,6 +147,8 @@ script:
138147
- touch cabal.project
139148
- |
140149
echo "packages: ${PKGDIR_HTTP}" >> cabal.project
150+
- if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo 'package HTTP' >> cabal.project ; fi
151+
- "if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo ' ghc-options: -Werror=missing-methods' >> cabal.project ; fi"
141152
- |
142153
- "for pkg in $($HCPKG list --simple-output); do echo $pkg | sed 's/-[^-]*$//' | (grep -vE -- '^(HTTP)$' || true) | sed 's/^/constraints: /' | sed 's/$/ installed/' >> cabal.project.local; done"
143154
- cat cabal.project || true
@@ -147,9 +158,9 @@ script:
147158
- ${CABAL} v2-build $WITHCOMPILER --disable-tests --disable-benchmarks all
148159
# Building with tests and benchmarks...
149160
# build & run tests, build benchmarks
150-
- ${CABAL} v2-build $WITHCOMPILER ${TEST} ${BENCH} all
161+
- ${CABAL} v2-build $WITHCOMPILER ${TEST} ${BENCH} all --write-ghc-environment-files=always
151162
# Testing...
152-
- ${CABAL} v2-test $WITHCOMPILER ${TEST} ${BENCH} all
163+
- ${CABAL} v2-test $WITHCOMPILER ${TEST} ${BENCH} all --test-show-details=direct
153164
# cabal check...
154165
- (cd ${PKGDIR_HTTP} && ${CABAL} -vnormal check)
155166
# haddock...
@@ -158,5 +169,5 @@ script:
158169
- rm -f cabal.project.local
159170
- ${CABAL} v2-build $WITHCOMPILER --disable-tests --disable-benchmarks all
160171

161-
# REGENDATA ("0.9.20200325",["--output",".travis.yml","HTTP.cabal"])
172+
# REGENDATA ("0.11.20210220",["--output",".travis.yml","HTTP.cabal"])
162173
# EOF

CHANGES

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
Version 4000.3.15.1
2+
* Support GHC-9.0
3+
4+
5+
Version ?
6+
17
* If the URI contains "user:pass@" part, use it for Basic Authorization
28
* Add a test harness.
39
* Don't leak a socket when getHostAddr throws an exception.

HTTP.cabal

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
Name: HTTP
2-
Version: 4000.3.15
2+
Version: 4000.3.15.1
33
Cabal-Version: >= 1.10
44
Build-type: Simple
55
License: BSD3
@@ -56,7 +56,7 @@ Description:
5656

5757
Extra-Source-Files: CHANGES
5858

59-
tested-with: GHC==8.10.1, GHC==8.8.3, GHC==8.6.5, GHC==8.4.4, GHC==8.2.2, GHC==8.0.2, GHC==7.10.3, GHC==7.8.4, GHC==7.6.3, GHC==7.4.2, GHC==7.2.2, GHC==7.0.4
59+
tested-with: GHC==9.0.1, GHC==8.10.4, GHC==8.8.3, GHC==8.6.5, GHC==8.4.4, GHC==8.2.2, GHC==8.0.2, GHC==7.10.3, GHC==7.8.4, GHC==7.6.3, GHC==7.4.2, GHC==7.2.2, GHC==7.0.4
6060

6161
Source-Repository head
6262
type: git
@@ -109,7 +109,7 @@ Library
109109

110110
-- note the test harness constraints should be kept in sync with these
111111
-- where dependencies are shared
112-
Build-depends: base >= 4.3.0.0 && < 4.15, parsec >= 2.0 && < 3.2
112+
Build-depends: base >= 4.3.0.0 && < 4.16, parsec >= 2.0 && < 3.2
113113
Build-depends: array >= 0.3.0.2 && < 0.6, bytestring >= 0.9.1.5 && < 0.12
114114
Build-depends: time >= 1.1.2.3 && < 1.11
115115

@@ -155,7 +155,7 @@ Test-Suite test
155155
bytestring >= 0.9.1.5 && < 0.12,
156156
deepseq >= 1.3.0.0 && < 1.5,
157157
pureMD5 >= 0.2.4 && < 2.2,
158-
base >= 4.3.0.0 && < 4.15,
158+
base >= 4.3.0.0 && < 4.16,
159159
split >= 0.1.3 && < 0.3,
160160
test-framework >= 0.2.0 && < 0.9,
161161
test-framework-hunit >= 0.3.0 && <0.4

Network/TCP.hs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ instance Eq EndPoint where
8989
map toLower host1 == map toLower host2 && port1 == port2
9090

9191
data Conn a
92-
= MkConn { connSock :: ! Socket
92+
= MkConn { connSock :: !Socket
9393
, connHandle :: Handle
9494
, connBuffer :: BufferOp a
9595
, connInput :: Maybe a

0 commit comments

Comments
 (0)