mirror of https://github.com/voidlizard/hbs2
wip
This commit is contained in:
parent
ce5363cb86
commit
48194f1959
|
@ -23,9 +23,11 @@ import Data.ByteString.Char8 qualified as BS
|
||||||
import Data.ByteString.Lazy.Char8 qualified as LBS8
|
import Data.ByteString.Lazy.Char8 qualified as LBS8
|
||||||
import Data.ByteString.Lazy (ByteString)
|
import Data.ByteString.Lazy (ByteString)
|
||||||
import Data.Either
|
import Data.Either
|
||||||
|
import Data.Fixed
|
||||||
import Data.Maybe
|
import Data.Maybe
|
||||||
import Data.HashMap.Strict (HashMap)
|
import Data.HashMap.Strict (HashMap)
|
||||||
import Data.HashMap.Strict qualified as HM
|
import Data.HashMap.Strict qualified as HM
|
||||||
|
import Data.HashSet qualified as HS
|
||||||
import Data.Text qualified as Text
|
import Data.Text qualified as Text
|
||||||
import Data.Text.Encoding (decodeUtf8With)
|
import Data.Text.Encoding (decodeUtf8With)
|
||||||
import Data.Text.Encoding.Error (ignore)
|
import Data.Text.Encoding.Error (ignore)
|
||||||
|
@ -38,7 +40,7 @@ import System.Process.Typed
|
||||||
import Control.Monad.Trans.Cont
|
import Control.Monad.Trans.Cont
|
||||||
import System.IO qualified as IO
|
import System.IO qualified as IO
|
||||||
import System.IO.Temp (emptySystemTempFile)
|
import System.IO.Temp (emptySystemTempFile)
|
||||||
|
import System.TimeIt
|
||||||
|
|
||||||
import Data.Map qualified as Map
|
import Data.Map qualified as Map
|
||||||
|
|
||||||
|
@ -156,13 +158,12 @@ scanGitLogLocal :: FixmePerks m
|
||||||
-> FixmeM m ()
|
-> FixmeM m ()
|
||||||
scanGitLogLocal refMask play = do
|
scanGitLogLocal refMask play = do
|
||||||
warn $ red "scanGitLogLocal" <+> pretty refMask
|
warn $ red "scanGitLogLocal" <+> pretty refMask
|
||||||
warn $ yellow "STEP 1" <+> "get all known branches including remote"
|
|
||||||
|
|
||||||
refs <- listRefs
|
(t,refs) <- timeItT listRefs
|
||||||
|
|
||||||
let hashes = fmap fst refs
|
let hashes = fmap fst refs
|
||||||
|
|
||||||
warn $ yellow "STEP 2" <+> "for each branch --- get tree"
|
warn $ yellow "listRefs in" <+> pretty (realToFrac t :: Fixed E6)
|
||||||
|
|
||||||
let pat = [(True, refMask)]
|
let pat = [(True, refMask)]
|
||||||
|
|
||||||
|
|
|
@ -24,6 +24,7 @@ module Fixme.State
|
||||||
, cleanStage
|
, cleanStage
|
||||||
, insertProcessed
|
, insertProcessed
|
||||||
, isProcessed
|
, isProcessed
|
||||||
|
, selectProcessed
|
||||||
, HasPredicate(..)
|
, HasPredicate(..)
|
||||||
) where
|
) where
|
||||||
|
|
||||||
|
@ -666,3 +667,10 @@ isProcessed what = do
|
||||||
select @(Only (Maybe Int)) [qc| select null from fixmeprocessed where hash = ? limit 1 |] (Only k)
|
select @(Only (Maybe Int)) [qc| select null from fixmeprocessed where hash = ? limit 1 |] (Only k)
|
||||||
<&> isJust . listToMaybe
|
<&> isJust . listToMaybe
|
||||||
|
|
||||||
|
selectProcessed :: (FixmePerks m, MonadReader FixmeEnv m)
|
||||||
|
=> m [HashRef]
|
||||||
|
selectProcessed = withState do
|
||||||
|
select_ [qc|select hash from fixmeprocessed|]
|
||||||
|
<&> fmap fromOnly
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue