packages feed

haskoin-store 1.5.5 → 1.5.6

raw patch · 5 files changed

+33/−21 lines, 5 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

+ Haskoin.Store: [bloom] :: StoreConfig -> !Bool
+ Haskoin.Store.Manager: [bloom] :: StoreConfig -> !Bool
- Haskoin.Store: StoreConfig :: !Int -> ![String] -> !Bool -> !FilePath -> !Network -> !Maybe String -> !Ctx -> !Word32 -> !Word32 -> !Int -> !Integer -> !Bool -> !Bool -> !Bool -> !NominalDiffTime -> !NominalDiffTime -> !SockAddr -> WithConnection -> !Maybe Stats -> !Int -> StoreConfig
+ Haskoin.Store: StoreConfig :: !Int -> ![String] -> !Bool -> !FilePath -> !Network -> !Maybe String -> !Ctx -> !Word32 -> !Word32 -> !Int -> !Integer -> !Bool -> !Bool -> !Bool -> !NominalDiffTime -> !NominalDiffTime -> !SockAddr -> WithConnection -> !Maybe Stats -> !Int -> !Bool -> StoreConfig
- Haskoin.Store.Database.Reader: withDatabaseReader :: MonadUnliftIO m => Network -> Ctx -> Word32 -> Word32 -> FilePath -> Maybe DataMetrics -> DatabaseReaderT m a -> m a
+ Haskoin.Store.Database.Reader: withDatabaseReader :: MonadUnliftIO m => Network -> Ctx -> Word32 -> Word32 -> FilePath -> Bool -> Maybe DataMetrics -> DatabaseReaderT m a -> m a
- Haskoin.Store.Manager: StoreConfig :: !Int -> ![String] -> !Bool -> !FilePath -> !Network -> !Maybe String -> !Ctx -> !Word32 -> !Word32 -> !Int -> !Integer -> !Bool -> !Bool -> !Bool -> !NominalDiffTime -> !NominalDiffTime -> !SockAddr -> WithConnection -> !Maybe Stats -> !Int -> StoreConfig
+ Haskoin.Store.Manager: StoreConfig :: !Int -> ![String] -> !Bool -> !FilePath -> !Network -> !Maybe String -> !Ctx -> !Word32 -> !Word32 -> !Int -> !Integer -> !Bool -> !Bool -> !Bool -> !NominalDiffTime -> !NominalDiffTime -> !SockAddr -> WithConnection -> !Maybe Stats -> !Int -> !Bool -> StoreConfig

Files

app/Main.hs view
@@ -129,7 +129,8 @@     priceHistoryURL :: !String,     noBlockchainInfo :: !Bool,     noSlow :: !Bool,-    healthCheckInterval :: !Int+    healthCheckInterval :: !Int,+    bloom :: !Bool   }  env :: (MonadIO m) => String -> a -> (String -> Maybe a) -> m a@@ -207,6 +208,8 @@     env "NO_SLOW" False parseBool   healthCheckInterval <-     env "HEALTH_CHECK_INTERVAL" 30 readMaybe+  bloom <-+    env "BLOOM" False parseBool   return Config {version = False, ..}   where     tickerString =@@ -502,11 +505,11 @@         <> showDefault         <> value c.priceHistoryURL   noBlockchainInfo <--    flag c.noBlockchainInfo False $+    flag c.noBlockchainInfo True $       long "no-blockchain-info"         <> help "Disable Blockchain.info-style API endpoints"   noSlow <--    flag c.noSlow False $+    flag c.noSlow True $       long "no-slow"         <> help "Disable potentially slow API endpoints"   healthCheckInterval <-@@ -516,6 +519,10 @@         <> help "Background check update interval"         <> showDefault         <> value c.healthCheckInterval+  bloom <-+    flag c.bloom True $+      long "bloom"+        <> help "RocksDB Bloom filters"   pure Config {..}  networkReader :: String -> Either String Network@@ -573,7 +580,8 @@                 maxPeerLife = fromIntegral cfg.maxPeerLife,                 connect = withConnection,                 stats = stats,-                redisSyncInterval = cfg.redisSyncInterval+                redisSyncInterval = cfg.redisSyncInterval,+                bloom = cfg.bloom               }       lift $         runWeb
haskoin-store.cabal view
@@ -5,14 +5,13 @@ -- see: https://github.com/sol/hpack  name:           haskoin-store-version:        1.5.5+version:        1.5.6 synopsis:       Storage and index for Bitcoin and Bitcoin Cash description:    Please see the README on GitHub at <https://github.com/haskoin/haskoin-store#readme> category:       Bitcoin, Finance, Network homepage:       http://github.com/haskoin/haskoin-store#readme bug-reports:    http://github.com/haskoin/haskoin-store/issues-author:         Jean-Pierre Rupp,-                Levente Kurusa+author:         Jean-Pierre Rupp maintainer:     jprupp@protonmail.ch license:        MIT license-file:   LICENSE
src/Haskoin/Store/Database/Reader.hs view
@@ -130,11 +130,12 @@   Word32 ->   Word32 ->   FilePath ->+  Bool ->   Maybe DataMetrics ->   DatabaseReaderT m a ->   m a-withDatabaseReader net ctx igap gap dir stats f =-  withDBCF dir cfg columnFamilyConfig $ \db -> do+withDatabaseReader net ctx igap gap dir bloom stats f =+  withDBCF dir cfg (columnFamilyConfig bloom) $ \db -> do     let bdb =           DatabaseReader             { db = db,@@ -149,16 +150,16 @@   where     cfg = def {createIfMissing = True} -columnFamilyConfig :: [(String, Config)]-columnFamilyConfig =-  [ ("addr-tx", def {prefixLength = Just 22, bloomFilter = True}),-    ("addr-out", def {prefixLength = Just 22, bloomFilter = True}),-    ("tx", def {prefixLength = Just 33, bloomFilter = True}),-    ("spender", def {prefixLength = Just 33, bloomFilter = True}), -- unused-    ("unspent", def {prefixLength = Just 37, bloomFilter = True}),-    ("block", def {prefixLength = Just 33, bloomFilter = True}),-    ("height", def {prefixLength = Nothing, bloomFilter = True}),-    ("balance", def {prefixLength = Just 22, bloomFilter = True})+columnFamilyConfig :: Bool -> [(String, Config)]+columnFamilyConfig bloom =+  [ ("addr-tx", def {prefixLength = Just 22, bloomFilter = bloom}),+    ("addr-out", def {prefixLength = Just 22, bloomFilter = bloom}),+    ("tx", def {prefixLength = Just 33, bloomFilter = bloom}),+    ("spender", def {prefixLength = Just 33, bloomFilter = bloom}), -- unused+    ("unspent", def {prefixLength = Just 37, bloomFilter = bloom}),+    ("block", def {prefixLength = Just 33, bloomFilter = bloom}),+    ("height", def {prefixLength = Nothing, bloomFilter = bloom}),+    ("balance", def {prefixLength = Just 22, bloomFilter = bloom})   ]  addrTxCF :: DB -> ColumnFamily
src/Haskoin/Store/Manager.hs view
@@ -154,7 +154,9 @@     -- | StatsD     stats :: !(Maybe Stats),     -- | sync mempool against cache every this many seconds-    redisSyncInterval :: !Int+    redisSyncInterval :: !Int,+    -- | database Bloom filters+    bloom :: !Bool   }  withStore ::@@ -199,6 +201,7 @@     cfg.initGap     cfg.gap     cfg.db+    cfg.bloom     stats     f 
test/Haskoin/StoreSpec.hs view
@@ -108,7 +108,8 @@                 maxPeerLife = 48 * 3600,                 connect = dummyPeerConnect net ad,                 stats = Nothing,-                redisSyncInterval = 30+                redisSyncInterval = 30,+                bloom = True               }       withStore cfg $ \store ->         withSubscription store.pub $ \sub ->