diff --git a/blaze-colonnade/blaze-colonnade.cabal b/blaze-colonnade/blaze-colonnade.cabal index 6cba0b2..9b6d981 100644 --- a/blaze-colonnade/blaze-colonnade.cabal +++ b/blaze-colonnade/blaze-colonnade.cabal @@ -17,7 +17,7 @@ library exposed-modules: Text.Blaze.Colonnade build-depends: - base >= 4.9 && < 5 + base >= 4.8 && < 5 , colonnade >= 1.1 && < 1.3 , blaze-markup >= 0.7 && < 0.9 , blaze-html >= 0.8 && < 0.10 diff --git a/build b/build index 7ace508..4ee0d2e 100755 --- a/build +++ b/build @@ -3,13 +3,14 @@ set -e # To use this script on Ubuntu, you will need to first run the following: # -# sudo apt install ghc-8.0.2 ghc-8.2.2 ghc-8.4.3 +# sudo apt install ghc-7.4.2 ghc-7.6.3 ghc-7.8.4 ghc-7.10.3 ghc-8.0.2 ghc-8.2.2 ghc-8.4.3 ghc-8.6.1 -declare -a ghcs=("8.0.2" "8.2.2" "8.4.3") +declare -a ghcs=("7.10.3" "8.0.2" "8.2.2" "8.4.4" "8.6.5") ## now loop through the above array for g in "${ghcs[@]}" do - cabal new-build --project-file "projects/cabal-$g.project" --builddir "dist-$g" -w "/opt/ghc/bin/ghc-$g" ./colonnade + cabal new-build --builddir "dist-$g" -w "/opt/ghc/bin/ghc-$g" colonnade + cabal new-build --builddir "dist-$g" -w "/opt/ghc/bin/ghc-$g" siphon done diff --git a/cabal.project b/cabal.project index 3b4a7ac..c51a100 100644 --- a/cabal.project +++ b/cabal.project @@ -1,5 +1,4 @@ packages: ./colonnade ./blaze-colonnade ./lucid-colonnade - ./yesod-colonnade ./siphon diff --git a/colonnade/colonnade.cabal b/colonnade/colonnade.cabal index bc324fa..dcdff79 100644 --- a/colonnade/colonnade.cabal +++ b/colonnade/colonnade.cabal @@ -1,6 +1,6 @@ -name: colonnade -version: 1.2.0.1 -synopsis: Generic types and functions for columnar encoding and decoding +name: colonnade +version: 1.2.0.2 +synopsis: Generic types and functions for columnar encoding and decoding description: The `colonnade` package provides a way to talk about columnar encodings and decodings of data. This package provides @@ -19,15 +19,15 @@ description: * for `yesod` widgets . * for encoding and decoding CSVs -homepage: https://github.com/andrewthad/colonnade#readme -license: BSD3 -license-file: LICENSE -author: Andrew Martin -maintainer: andrew.thaddeus@gmail.com -copyright: 2016 Andrew Martin -category: web -build-type: Simple -cabal-version: >=1.10 +homepage: https://github.com/andrewthad/colonnade#readme +license: BSD3 +license-file: LICENSE +author: Andrew Martin +maintainer: andrew.thaddeus@gmail.com +copyright: 2016 Andrew Martin +category: web +build-type: Simple +cabal-version: >=1.10 library hs-source-dirs: src @@ -35,19 +35,20 @@ library Colonnade Colonnade.Encode build-depends: - base >= 4.9 && < 5 + base >= 4.8 && < 5 , contravariant >= 1.2 && < 1.6 , vector >= 0.10 && < 0.13 , text >= 1.0 && < 1.3 , bytestring >= 0.10 && < 0.11 , profunctors >= 5.0 && < 5.4 + , semigroups >= 0.18.2 && < 0.20 default-language: Haskell2010 ghc-options: -Wall test-suite test - type: exitcode-stdio-1.0 - hs-source-dirs: test - main-is: Main.hs + type: exitcode-stdio-1.0 + hs-source-dirs: test + main-is: Main.hs build-depends: base >= 4.7 && <= 5 , colonnade diff --git a/lucid-colonnade/lucid-colonnade.cabal b/lucid-colonnade/lucid-colonnade.cabal index 8109ee1..ed708ff 100644 --- a/lucid-colonnade/lucid-colonnade.cabal +++ b/lucid-colonnade/lucid-colonnade.cabal @@ -17,7 +17,7 @@ library exposed-modules: Lucid.Colonnade build-depends: - base >= 4.9 && < 5 + base >= 4.8 && < 5 , colonnade >= 1.1.1 && < 1.3 , lucid >= 2.9 && < 3.0 , text >= 1.2 && < 1.3 diff --git a/lucid-colonnade/src/Lucid/Colonnade.hs b/lucid-colonnade/src/Lucid/Colonnade.hs index 6344537..7dfe6ab 100644 --- a/lucid-colonnade/src/Lucid/Colonnade.hs +++ b/lucid-colonnade/src/Lucid/Colonnade.hs @@ -182,7 +182,7 @@ encodeBodySized :: -> f a -> Html () encodeBodySized trAttrs tbodyAttrs colonnade collection = tbody_ tbodyAttrs $ do - flip foldMap collection $ \a -> tr_ (trAttrs a) $ do + for_ collection $ \a -> tr_ (trAttrs a) $ do E.rowMonoidalHeader colonnade (\(E.Sized sz _) (Cell cattr content) -> @@ -207,7 +207,7 @@ encodeTableSized mtheadAttrs tbodyAttrs trAttrs wrapContent tableAttrs colonnade Just extractForall -> do let (theadAttrs,theadTrAttrs) = extract mtheadAttrs thead_ theadAttrs $ tr_ theadTrAttrs $ do - foldlMapM' + traverse_ (wrapContent th_ . extract . (\(E.Sized i h) -> case E.headednessExtract of Just f -> @@ -224,7 +224,6 @@ encodeTableSized mtheadAttrs tbodyAttrs trAttrs wrapContent tableAttrs colonnade extract :: forall y. h y -> y extract = E.runExtractForall extractForall encodeBodySized trAttrs tbodyAttrs colonnade xs - pure () setColspanOrHide :: Int -> [Attribute] -> [Attribute] setColspanOrHide i attrs @@ -279,16 +278,15 @@ sectioned :: -> f (b, g a) -- ^ Collection of data -> Html () sectioned tableAttrs mheadAttrs bodyAttrs trAttrs dividerContent colonnade@(E.Colonnade v) collection = do - pure () let vlen = V.length v table_ tableAttrs $ do for_ mheadAttrs $ \(headAttrs,headTrAttrs) -> thead_ headAttrs . tr_ headTrAttrs $ E.headerMonadicGeneral_ colonnade (htmlFromCell th_) - tbody_ bodyAttrs $ forM_ collection $ \(b,as) -> do + tbody_ bodyAttrs $ for_ collection $ \(b,as) -> do let Cell attrs contents = dividerContent b tr_ [] $ do td_ ((colspan_ $ T.pack (show vlen)): attrs) contents - flip foldlMapM' as $ \a -> do + flip traverse_ as $ \a -> do tr_ (trAttrs a) $ E.rowMonadic colonnade (htmlFromCell td_) a diff --git a/siphon/siphon.cabal b/siphon/siphon.cabal index eabc044..39e0272 100644 --- a/siphon/siphon.cabal +++ b/siphon/siphon.cabal @@ -1,5 +1,5 @@ name: siphon -version: 0.8.1 +version: 0.8.1.1 synopsis: Encode and decode CSV files description: Please see README.md homepage: https://github.com/andrewthad/colonnade#readme @@ -13,20 +13,21 @@ build-type: Simple cabal-version: >=1.10 library - hs-source-dirs: src + hs-source-dirs: src exposed-modules: Siphon Siphon.Types build-depends: - base >= 4.9 && < 5 + base >= 4.8 && < 5 , colonnade >= 1.2 && < 1.3 , text >= 1.0 && < 1.3 , bytestring , vector , streaming >= 0.1.4 && < 0.3 , attoparsec - , transformers >= 0.5 && < 0.6 - default-language: Haskell2010 + , transformers >= 0.4.2 && < 0.6 + , semigroups >= 0.18.2 && < 0.20 + default-language: Haskell2010 test-suite doctest type: exitcode-stdio-1.0 @@ -36,7 +37,7 @@ test-suite doctest base , siphon , doctest >= 0.10 - default-language: Haskell2010 + default-language: Haskell2010 test-suite test type: exitcode-stdio-1.0