Skip to content

Commit

Permalink
Merge pull request #69 from phadej/smp
Browse files Browse the repository at this point in the history
Smp
  • Loading branch information
phadej committed Feb 6, 2018
2 parents b61b152 + 461de43 commit 83aac95
Show file tree
Hide file tree
Showing 4 changed files with 52 additions and 7 deletions.
27 changes: 25 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,12 @@ matrix:
- compiler: "ghc-8.2.2"
# env: TEST=--disable-tests BENCH=--disable-benchmarks
addons: {apt: {packages: [ghc-ppa-tools,cabal-install-head,ghc-8.2.2], sources: [hvr-ghc]}}
- compiler: "ghc-8.4.1"
env: GHCHEAD=true
addons: {apt: {packages: [ghc-ppa-tools,cabal-install-head,ghc-8.4.1], sources: [hvr-ghc]}}

allow_failures:
- compiler: "ghc-8.4.1"

before_install:
- HC=${CC}
Expand All @@ -67,6 +73,21 @@ install:
- "sed -i.bak 's/^jobs:/-- jobs:/' ${HOME}/.cabal/config"
- rm -fv cabal.project cabal.project.local
- "if [ $HCNUMVER -ge 70800 ]; then sed -i.bak 's/-- ghc-options:.*/ghc-options: -j2/' ${HOME}/.cabal/config; fi"
# Overlay Hackage Package Index for GHC HEAD: https://github.com/hvr/head.hackage
- |
if $GHCHEAD; then
sed -i.bak 's/-- allow-newer:.*/allow-newer: *:base, *:template-haskell, *:ghc, *:Cabal/' ${HOME}/.cabal/config
echo 'repository head.hackage' >> ${HOME}/.cabal/config
echo ' url: http://head.hackage.haskell.org/' >> ${HOME}/.cabal/config
echo ' secure: True' >> ${HOME}/.cabal/config
echo ' root-keys: 07c59cb65787dedfaef5bd5f987ceb5f7e5ebf88b904bbd4c5cbdeb2ff71b740' >> ${HOME}/.cabal/config
echo ' 2e8555dde16ebd8df076f1a8ef13b8f14c66bad8eafefd7d9e37d0ed711821fb' >> ${HOME}/.cabal/config
echo ' 8f79fd2389ab2967354407ec852cbe73f2e8635793ac446d09461ffb99527f6e' >> ${HOME}/.cabal/config
echo ' key-threshold: 3' >> ${HOME}/.cabal.config
cabal new-update head.hackage -v
fi
- grep -Ev -- '^\s*--' ${HOME}/.cabal/config | grep -Ev '^\s*$'
- "printf 'packages: \".\"\\n' > cabal.project"
- cat cabal.project
Expand Down Expand Up @@ -106,9 +127,11 @@ script:
- rm -rf ./dist-newstyle
- if $HADDOCK; then cabal new-haddock -w ${HC} ${TEST} ${BENCH} all; else echo "Skipping haddock generation";fi

- if [ $HCNUMVER -eq 70804 ]; then cabal new-build -w ${HC} --disable-tests --disable-benchmarks --constraint='attoparsec ==0.13.0.1' --constraint='attoparsec-iso8601 ==1.0.0.0' --constraint='bytestring ==0.10.4.0' --constraint='containers ==0.5.5.1' --constraint='hashable ==1.1.2.4' --constraint='http-types ==0.8.6' --constraint='text ==1.1.1.3' --constraint='time ==1.4.2' --constraint='time-local-compat ==0.1.1.0' --constraint='unordered-containers ==0.2.5.0' --constraint='uri-bytestring ==0.1.7' --constraint='uuid-types ==1.0.2' all; else echo skipping...; fi
- if [ $HCNUMVER -eq 70804 ]; then cabal new-build -w ${HC} --disable-tests --disable-benchmarks --constraint='attoparsec ==0.13.0.1' --constraint='attoparsec-iso8601 ==1.0.0.0' --constraint='bytestring ==0.10.4.0' --constraint='containers ==0.5.5.1' --constraint='hashable ==1.1.2.4' --constraint='http-types ==0.8.6' --constraint='semigroups ==0.16' --constraint='text ==1.1.1.3' --constraint='time ==1.4.2' --constraint='time-local-compat ==0.1.1.0' --constraint='unordered-containers ==0.2.6.0' --constraint='uri-bytestring ==0.1.7' --constraint='uuid-types ==1.0.2' all; else echo skipping...; fi

- if [ $HCNUMVER -eq 71003 ]; then cabal new-build -w ${HC} --disable-tests --disable-benchmarks --constraint='attoparsec ==0.13.0.1' --constraint='attoparsec-iso8601 ==1.0.0.0' --constraint='bytestring ==0.10.6.0' --constraint='containers ==0.5.6.1' --constraint='hashable ==1.2.3.2' --constraint='http-types ==0.8.6' --constraint='semigroups ==0.16.0.1' --constraint='text ==1.2.0.2' --constraint='time ==1.5.0.1' --constraint='time-local-compat ==0.1.1.0' --constraint='unordered-containers ==0.2.6.0' --constraint='uri-bytestring ==0.1.7' --constraint='uuid-types ==1.0.2' all; else echo skipping...; fi

- if [ $HCNUMVER -eq 71003 ]; then cabal new-build -w ${HC} --disable-tests --disable-benchmarks --constraint='attoparsec ==0.13.0.1' --constraint='attoparsec-iso8601 ==1.0.0.0' --constraint='bytestring ==0.10.6.0' --constraint='containers ==0.5.6.1' --constraint='hashable ==1.2.3.2' --constraint='http-types ==0.8.6' --constraint='text ==1.2.0.2' --constraint='time ==1.5.0.1' --constraint='time-local-compat ==0.1.1.0' --constraint='unordered-containers ==0.2.5.1' --constraint='uri-bytestring ==0.1.7' --constraint='uuid-types ==1.0.2' all; else echo skipping...; fi
- if [ $HCNUMVER -eq 80002 ]; then cabal new-build -w ${HC} --disable-tests --disable-benchmarks --constraint='attoparsec ==0.13.0.1' --constraint='attoparsec-iso8601 ==1.0.0.0' --constraint='bytestring ==0.10.6.0' --constraint='containers ==0.5.7.0' --constraint='hashable ==1.2.4.0' --constraint='http-types ==0.8.6' --constraint='text ==1.2.2.0' --constraint='time ==1.5.0.1' --constraint='time-local-compat ==0.1.1.0' --constraint='unordered-containers ==0.2.6.0' --constraint='uri-bytestring ==0.2.1.0' --constraint='uuid-types ==1.0.2' all; else echo skipping...; fi

# REGENDATA ["--config","--output",".travis.yml","http-api-data.cabal"]
# EOF
22 changes: 20 additions & 2 deletions cabal.make-travis-yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,11 @@ constraint-set lower-bounds-7.8.4
containers ==0.5.5.1,
hashable ==1.1.2.4,
http-types ==0.8.6,
semigroups ==0.16,
text ==1.1.1.3,
time ==1.4.2,
time-local-compat ==0.1.1.0,
unordered-containers ==0.2.5.0,
unordered-containers ==0.2.6.0,
uri-bytestring ==0.1.7,
uuid-types ==1.0.2

Expand All @@ -30,9 +31,26 @@ constraint-set lower-bounds-7.10.3
containers ==0.5.6.1,
hashable ==1.2.3.2,
http-types ==0.8.6,
semigroups ==0.16.0.1,
text ==1.2.0.2,
time ==1.5.0.1,
time-local-compat ==0.1.1.0,
unordered-containers ==0.2.5.1,
unordered-containers ==0.2.6.0,
uri-bytestring ==0.1.7,
uuid-types ==1.0.2

constraint-set lower-bounds-8.0.2
ghc: == 8.0.2
constraints:
attoparsec ==0.13.0.1,
attoparsec-iso8601 ==1.0.0.0,
bytestring ==0.10.6.0,
containers ==0.5.7.0,
hashable ==1.2.4.0,
http-types ==0.8.6,
text ==1.2.2.0,
time ==1.5.0.1,
time-local-compat ==0.1.1.0,
unordered-containers ==0.2.6.0,
uri-bytestring ==0.2.1.0,
uuid-types ==1.0.2
7 changes: 5 additions & 2 deletions http-api-data.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,8 @@ tested-with:
GHC==7.8.4,
GHC==7.10.3,
GHC==8.0.2,
GHC==8.2.2
GHC==8.2.2,
GHC==8.4.1

custom-setup
setup-depends:
Expand All @@ -49,9 +50,11 @@ library
, text >= 1.1.1.3 && < 1.3
, time >= 1.4.2 && < 1.9
, time-locale-compat >= 0.1.1.0 && < 0.2
, unordered-containers >= 0.2.5.0 && < 0.3
, unordered-containers >= 0.2.6.0 && < 0.3
, uri-bytestring >= 0.1.7 && < 0.4
, uuid-types >= 1.0.2 && <1.1
if !impl(ghc >= 8.0)
build-depends: semigroups >= 0.16 && < 0.19
if flag(use-text-show)
cpp-options: -DUSE_TEXT_SHOW
build-depends: text-show >= 2
Expand Down
3 changes: 2 additions & 1 deletion src/Web/Internal/FormUrlEncoded.hs
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ import Data.List (intersperse, sortBy)
import Data.Map (Map)
import qualified Data.Map as Map
import Data.Monoid
import qualified Data.Semigroup as Semi
import Data.Ord (comparing)

import Data.Text (Text)
Expand Down Expand Up @@ -183,7 +184,7 @@ instance FromFormKey Natural where parseFormKey = parseQueryParam
--
-- 'Form' can be URL-encoded with 'urlEncodeForm' and URL-decoded with 'urlDecodeForm'.
newtype Form = Form { unForm :: HashMap Text [Text] }
deriving (Eq, Read, Generic, Monoid)
deriving (Eq, Read, Generic, Semi.Semigroup, Monoid)

instance Show Form where
showsPrec d form = showParen (d > 10) $
Expand Down

0 comments on commit 83aac95

Please sign in to comment.