yackage 0.8.0 → 0.8.1
raw patch · 3 files changed
+17/−1 lines, 3 filesdep +aeson
Dependencies added: aeson
Files
- ChangeLog.md +4/−0
- yackage.cabal +2/−1
- yackage.hs +11/−0
ChangeLog.md view
@@ -1,3 +1,7 @@+## 0.8.1++* aeson 1.0+ ## 0.8.0 * Warp 3.1
yackage.cabal view
@@ -1,5 +1,5 @@ Name: yackage-Version: 0.8.0+Version: 0.8.1 Synopsis: Personal Hackage replacement for testing new packages. description: Hackage documentation generation is not reliable. For up to date documentation, please see: <http://www.stackage.org/package/yackage>. Homepage: http://github.com/snoyberg/yackage@@ -29,6 +29,7 @@ , containers , directory , yaml+ , aeson , cmdargs , wai >= 1.4 , transformers
yackage.hs view
@@ -6,6 +6,9 @@ {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE ViewPatterns #-}+{-# LANGUAGE CPP #-}+{-# LANGUAGE StandaloneDeriving #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-} import Yesod.Core import Yesod.Form import Text.Hamlet@@ -44,6 +47,9 @@ import qualified Data.Vector as Vector import Data.Conduit (($$)) import Data.Conduit.List (consume)+#if MIN_VERSION_aeson(1,0,0)+import qualified Data.Aeson as A+#endif data Args = Args { port :: Int@@ -261,6 +267,10 @@ go (pn, vs) = toPathPiece pn .= array (map go' $ Set.toList vs) go' = String . toPathPiece +#if MIN_VERSION_aeson(1,0,0)+deriving instance FromJSON PackageName+deriving instance A.FromJSONKey PackageName+#else instance FromJSON PackageDB where parseJSON (Object o) = do fmap Map.fromList $ mapM go $ HMap.toList o@@ -275,3 +285,4 @@ return x go' _ = fail "parseConfig.go'" parseJSON _ = fail "parseConfig"+#endif