packages feed

passman 0.3.0.2 → 0.3.1

raw patch · 3 files changed

+32/−17 lines, 3 filesdep ~transformers

Dependency ranges changed: transformers

Files

ChangeLog.md view
@@ -1,5 +1,10 @@ # Changelog for passman +## 0.3.1++- set maximum version of transformers package+- allow user to specifiy a temporary master password to retrieve a password+ ## 0.3.0.2  - more dependency versions
app/UI.hs view
@@ -27,7 +27,7 @@ import Control.Monad (when) import Control.Monad.Trans.Class (lift) import qualified Control.Monad.Trans.State as S-import Lens.Micro (over, set, (^.))+import Lens.Micro (over, set, (^.), (.~)) import Lens.Micro.Extras (view) import System.Console.HCL   ( Request@@ -161,11 +161,12 @@  servMenu :: String -> S.StateT Status IO () servMenu x = menu x-  [ ( "show password",  showPass x >> servMenu x )-  , ( "edit password",  editPassMenu x           )-  , ( "remove service", removeServ x             )-  , ( "rename service", renameServ x             )-  , ( "back",           mainMenu                 )+  [ ( "show password",           showPass x >> servMenu x )+  , ( "show alternate password", showAltPass x            )+  , ( "edit password",           editPassMenu x           )+  , ( "remove service",          removeServ x             )+  , ( "rename service",          renameServ x             )+  , ( "back",                    mainMenu                 )   ]  editPassMenu :: String -> S.StateT Status IO ()@@ -225,15 +226,24 @@   editPassMenu x  showPass :: String -> S.StateT Status IO ()-showPass x = do+showPass x = withService x+  (lift $ putStrLn "The service could not be found in the database.") $+  \d -> do+    lift $ putStrLn ""+    mp <- S.gets $ view masterPass+    lift $ putStrLn $ case pwGenerate mp d of+      Nothing -> "The password data were not valid."+      Just pw -> "password for " ++ x ++ ": " ++ pw++showAltPass :: String -> S.StateT Status IO ()+showAltPass srv = do   lift $ putStrLn ""-  withService x-    (lift $ putStrLn "The service could not be found in the database.") $-    \d -> do-      mp <- S.gets $ view masterPass-      lift $ putStrLn $ case pwGenerate mp d of-        Nothing -> "The password data were not valid."-        Just pw -> "password for " ++ x ++ ": " ++ pw+  old <- S.gets $ view masterPass+  Just new <- lift $ runRequest $ required $ prompt "alternate master password: " reqPassword+  S.modify $ masterPass .~ new+  showPass srv+  S.modify $ masterPass .~ old+  servMenu srv  -- TODO: refactor this monstrosity editPolicy :: PWPolicy -> Request PWPolicy
passman.cabal view
@@ -4,10 +4,10 @@ -- -- see: https://github.com/sol/hpack ----- hash: 2f7f0e04b3c25e738c5538d07d22d64c28c2a586ed82d577999d070ceafc41ba+-- hash: e3bd0ca2b360b025666f4503e3115caaaed34c7719487d90ae4d5eb58f9621e9  name:           passman-version:        0.3.0.2+version:        0.3.1 synopsis:       a simple password manager description:    Please see the README on GitHub at <https://github.com/jlamothe/passman#readme> category:       Security@@ -70,7 +70,7 @@     , microlens-th >=0.4.3.6 && <0.5     , passman     , random >=1.1 && <1.2-    , transformers >=0.5.6.2+    , transformers >=0.5.6.2 && <0.6   default-language: Haskell2010  test-suite passman-test