wai-app-static 3.1.9 → 3.1.9.1
raw patch · 4 files changed
+10/−35 lines, 4 filesdep −cryptondep −memorynew-uploaderPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependencies removed: crypton, memory
API changes (from Hackage documentation)
- WaiAppStatic.Storage.Filesystem: type ETagLookup = FilePath -> IO (Maybe ByteString)
+ WaiAppStatic.Storage.Filesystem: type ETagLookup = FilePath -> IO Maybe ByteString
Files
- ChangeLog.md +5/−0
- WaiAppStatic/Storage/Embedded/Runtime.hs +2/−14
- WaiAppStatic/Storage/Filesystem.hs +0/−10
- wai-app-static.cabal +3/−11
ChangeLog.md view
@@ -1,5 +1,10 @@ # wai-app-static changelog +## 3.1.9.1++* Backported a patch to not need `crypton` as a dependency.+ Instead, just depend on `base64-bytestring` and `cryptohash-md5`.+ ## 3.1.9 * Added `NoCache` constructor to `MaxAge` [#977](https://github.com/yesodweb/wai/pull/977)
WaiAppStatic/Storage/Embedded/Runtime.hs view
@@ -17,13 +17,8 @@ import qualified Data.Text as T import qualified Network.Wai as W import WaiAppStatic.Types-#ifdef MIN_VERSION_crypton-import Crypto.Hash (hash, MD5, Digest)-import Data.ByteArray.Encoding-#else import Crypto.Hash.MD5 (hash) import Data.ByteString.Base64 (encode)-#endif import System.FilePath (isPathSeparator) import WaiAppStatic.Storage.Filesystem (defaultFileServerSettings) @@ -62,7 +57,7 @@ { fileGetSize = fromIntegral $ S.length bs , fileToResponse = \s h -> W.responseBuilder s h $ byteString bs , fileName = name- , fileGetHash = return $ Just $ runHash bs+ , fileGetHash = return $ Just $ encode $ hash bs , fileGetModified = Nothing } @@ -100,13 +95,6 @@ { fileGetSize = fromIntegral $ S.length bs , fileToResponse = \s h -> W.responseBuilder s h $ byteString bs , fileName = name- , fileGetHash = return $ Just $ runHash bs+ , fileGetHash = return $ Just $ encode $ hash bs , fileGetModified = Nothing }--runHash :: ByteString -> ByteString-#ifdef MIN_VERSION_crypton-runHash = convertToBase Base64 . (hash :: S.ByteString -> Digest MD5)-#else-runHash = encode . hash-#endif
WaiAppStatic/Storage/Filesystem.hs view
@@ -37,13 +37,8 @@ import Util import WaiAppStatic.Listing import WaiAppStatic.Types-#ifdef MIN_VERSION_crypton-import Data.ByteArray.Encoding-import Crypto.Hash (hashlazy, MD5, Digest)-#else import Data.ByteString.Base64 (encode) import Crypto.Hash.MD5 (hashlazy)-#endif import qualified Data.ByteString.Lazy as BL (hGetContents) import qualified Data.Text as T @@ -157,13 +152,8 @@ hashFile :: FilePath -> IO ByteString hashFile fp = withBinaryFile fp ReadMode $ \h -> do f <- BL.hGetContents h-#ifdef MIN_VERSION_crypton- let !hash = hashlazy f :: Digest MD5- return $ convertToBase Base64 hash-#else let !hash = hashlazy f return . encode $ hash-#endif hashFileIfExists :: ETagLookup hashFileIfExists fp = do
wai-app-static.cabal view
@@ -1,5 +1,5 @@ name: wai-app-static-version: 3.1.9+version: 3.1.9.1 license: MIT license-file: LICENSE author: Michael Snoyman <michael@snoyman.com>@@ -24,10 +24,6 @@ Description: print debug info Default: False -Flag crypton- Description: Use the crypton library for MD5 computation- Default: True- library default-language: Haskell2010 build-depends: base >= 4.12 && < 5@@ -53,11 +49,7 @@ , wai-extra >= 3.0 && < 3.2 , optparse-applicative >= 0.7 , warp >= 3.0.11 && < 3.5- if flag(crypton)- build-depends: crypton >= 0.6- , memory >= 0.7- else- build-depends: base64-bytestring >= 0.1+ , base64-bytestring >= 0.1 , cryptohash-md5 >= 0.11.101 exposed-modules: Network.Wai.Application.Static@@ -110,4 +102,4 @@ source-repository head type: git- location: git://github.com/yesodweb/wai.git+ location: https://github.com/yesodweb/wai.git