packages feed

rails-session 0.1.2.0 → 0.1.3.0

raw patch · 4 files changed

+14/−6 lines, 4 filesdep +hspecdep ~base16-bytestringnew-uploaderPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependencies added: hspec

Dependency ranges changed: base16-bytestring

API changes (from Hackage documentation)

- Web.Rails3.Session: lookupUserIds :: (Num a) => RubyObject -> Maybe (NonEmpty a)
+ Web.Rails3.Session: lookupUserIds :: Num a => RubyObject -> Maybe (NonEmpty a)

Files

CHANGELOG.md view
@@ -1,3 +1,8 @@+## 0.1.3.0++- Update to newer GHC version.+- Switch from TravisCI to GitHub Actions.+ ## 0.1.2.0  - Add Rails3 support.
rails-session.cabal view
@@ -1,5 +1,5 @@ name:                rails-session-version:             0.1.2.0+version:             0.1.3.0 synopsis:            Decrypt Ruby on Rails sessions in Haskell description:         Please see README.md homepage:            http://github.com/iconnect/rails-session#readme@@ -32,7 +32,7 @@                      , string-conv       >= 0.1                      , vector            >= 0.10.12.3                      , bytestring-                     , base16-bytestring+                     , base16-bytestring >= 1.0.1.0                      , containers   if impl(ghc < 8.0)      build-depends: semigroups@@ -46,6 +46,7 @@   build-depends:       base                      , bytestring                      , filepath+                     , hspec                      , semigroups                      , rails-session                      , ruby-marshal
src/Web/Rails3/Session.hs view
@@ -94,9 +94,10 @@   >>= Marshal.decodeEither   where     extractChecksum :: Either String (Digest SHA1)-    extractChecksum = maybeToEither-                      "[Rails3 Cookie] Illegal checksum in cookie. Wasn't able to extract a valid HMAC checksum out of it."-                      (Hash.digestFromByteString $ fst $ (B16.decode hexChecksum))+    extractChecksum = do+      decoded <- B16.decode hexChecksum+      maybeToEither "[Rails3 Cookie] Illegal checksum in cookie. Wasn't able to extract a valid HMAC checksum out of it."+                    (Hash.digestFromByteString decoded)      compareChecksum :: Digest SHA1 -> Either String ByteString     compareChecksum checksum = if (computedChecksum == checksum) then (Right $ B64.decodeLenient b64) else (Left "[Rails3 Cookie] Checksum doesn't match")
test/Spec.hs view
@@ -9,7 +9,8 @@ import           Data.Vector (fromList) import           System.IO.Unsafe (unsafePerformIO) import           Test.Tasty (defaultMain, testGroup)-import           Test.Tasty.Hspec (describe, it, shouldBe, shouldSatisfy, testSpec, Spec)+import           Test.Tasty.Hspec (testSpec)+import           Test.Hspec (describe, it, shouldBe, shouldSatisfy, Spec) import           Web.Rails.Session import qualified Web.Rails3.Session as R3 import qualified Data.List.NonEmpty as NE