haskoin-store 1.5.0 → 1.5.1
raw patch · 4 files changed
+20/−19 lines, 4 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- Haskoin.Store: [$sel:block:Store] :: Store -> !BlockStore
- Haskoin.Store: [$sel:cache:Store] :: Store -> !Maybe CacheConfig
- Haskoin.Store: [$sel:chain:CacheConfig] :: CacheConfig -> !Chain
- Haskoin.Store: [$sel:chain:Store] :: Store -> !Chain
- Haskoin.Store: [$sel:connect:StoreConfig] :: StoreConfig -> !SockAddr -> WithConnection
- Haskoin.Store: [$sel:ctx:StoreConfig] :: StoreConfig -> !Ctx
- Haskoin.Store: [$sel:ctx:Store] :: Store -> !Ctx
- Haskoin.Store: [$sel:db:StoreConfig] :: StoreConfig -> !FilePath
- Haskoin.Store: [$sel:db:Store] :: Store -> !DatabaseReader
- Haskoin.Store: [$sel:discover:StoreConfig] :: StoreConfig -> !Bool
- Haskoin.Store: [$sel:gap:StoreConfig] :: StoreConfig -> !Word32
- Haskoin.Store: [$sel:initGap:StoreConfig] :: StoreConfig -> !Word32
- Haskoin.Store: [$sel:initPeers:StoreConfig] :: StoreConfig -> ![String]
- Haskoin.Store: [$sel:limit:Limits] :: Limits -> !Word32
- Haskoin.Store: [$sel:maxKeys:CacheConfig] :: CacheConfig -> !Integer
- Haskoin.Store: [$sel:maxPeerLife:StoreConfig] :: StoreConfig -> !NominalDiffTime
- Haskoin.Store: [$sel:maxPeers:StoreConfig] :: StoreConfig -> !Int
- Haskoin.Store: [$sel:metrics:CacheConfig] :: CacheConfig -> !Maybe CacheMetrics
- Haskoin.Store: [$sel:minAddrs:CacheConfig] :: CacheConfig -> !Int
- Haskoin.Store: [$sel:net:StoreConfig] :: StoreConfig -> !Network
- Haskoin.Store: [$sel:net:Store] :: Store -> !Network
- Haskoin.Store: [$sel:noMempool:StoreConfig] :: StoreConfig -> !Bool
- Haskoin.Store: [$sel:offset:Limits] :: Limits -> !Word32
- Haskoin.Store: [$sel:peerMgr:Store] :: Store -> !PeerMgr
- Haskoin.Store: [$sel:peerTimeout:StoreConfig] :: StoreConfig -> !NominalDiffTime
- Haskoin.Store: [$sel:pub:Store] :: Store -> !Publisher StoreEvent
- Haskoin.Store: [$sel:redis:CacheConfig] :: CacheConfig -> !Connection
- Haskoin.Store: [$sel:redis:StoreConfig] :: StoreConfig -> !Maybe String
- Haskoin.Store: [$sel:redisMaxKeys:StoreConfig] :: StoreConfig -> !Integer
- Haskoin.Store: [$sel:redisMinAddrs:StoreConfig] :: StoreConfig -> !Int
- Haskoin.Store: [$sel:redisSyncInterval:StoreConfig] :: StoreConfig -> !Int
- Haskoin.Store: [$sel:start:Limits] :: Limits -> !Maybe Start
- Haskoin.Store: [$sel:stats:StoreConfig] :: StoreConfig -> !Maybe Stats
- Haskoin.Store: [$sel:syncMempool:StoreConfig] :: StoreConfig -> !Bool
- Haskoin.Store: [$sel:wipeMempool:StoreConfig] :: StoreConfig -> !Bool
- Haskoin.Store.BlockStore: [$sel:chain:BlockStoreConfig] :: BlockStoreConfig -> !Chain
- Haskoin.Store.BlockStore: [$sel:ctx:BlockStoreConfig] :: BlockStoreConfig -> !Ctx
- Haskoin.Store.BlockStore: [$sel:db:BlockStoreConfig] :: BlockStoreConfig -> !DatabaseReader
- Haskoin.Store.BlockStore: [$sel:net:BlockStoreConfig] :: BlockStoreConfig -> !Network
- Haskoin.Store.BlockStore: [$sel:noMempool:BlockStoreConfig] :: BlockStoreConfig -> !Bool
- Haskoin.Store.BlockStore: [$sel:peerMgr:BlockStoreConfig] :: BlockStoreConfig -> !PeerMgr
- Haskoin.Store.BlockStore: [$sel:peerTimeout:BlockStoreConfig] :: BlockStoreConfig -> !NominalDiffTime
- Haskoin.Store.BlockStore: [$sel:pub:BlockStoreConfig] :: BlockStoreConfig -> !Publisher StoreEvent
- Haskoin.Store.BlockStore: [$sel:stats:BlockStoreConfig] :: BlockStoreConfig -> !Maybe Stats
- Haskoin.Store.BlockStore: [$sel:syncMempool:BlockStoreConfig] :: BlockStoreConfig -> !Bool
- Haskoin.Store.BlockStore: [$sel:wipeMempool:BlockStoreConfig] :: BlockStoreConfig -> !Bool
- Haskoin.Store.Cache: [$sel:chain:CacheConfig] :: CacheConfig -> !Chain
- Haskoin.Store.Cache: [$sel:maxKeys:CacheConfig] :: CacheConfig -> !Integer
- Haskoin.Store.Cache: [$sel:metrics:CacheConfig] :: CacheConfig -> !Maybe CacheMetrics
- Haskoin.Store.Cache: [$sel:minAddrs:CacheConfig] :: CacheConfig -> !Int
- Haskoin.Store.Cache: [$sel:redis:CacheConfig] :: CacheConfig -> !Connection
- Haskoin.Store.Common: [$sel:limit:Limits] :: Limits -> !Word32
- Haskoin.Store.Common: [$sel:offset:Limits] :: Limits -> !Word32
- Haskoin.Store.Common: [$sel:start:Limits] :: Limits -> !Maybe Start
- Haskoin.Store.Database.Reader: [$sel:ctx:DatabaseReader] :: DatabaseReader -> !Ctx
- Haskoin.Store.Database.Reader: [$sel:db:DatabaseReader] :: DatabaseReader -> !DB
- Haskoin.Store.Database.Reader: [$sel:initGap:DatabaseReader] :: DatabaseReader -> !Word32
- Haskoin.Store.Database.Reader: [$sel:maxGap:DatabaseReader] :: DatabaseReader -> !Word32
- Haskoin.Store.Database.Reader: [$sel:metrics:DatabaseReader] :: DatabaseReader -> !Maybe DataMetrics
- Haskoin.Store.Database.Reader: [$sel:net:DatabaseReader] :: DatabaseReader -> !Network
- Haskoin.Store.Database.Types: [$sel:address:AddrOutKey] :: AddrOutKey -> !Address
- Haskoin.Store.Database.Types: [$sel:address:AddrTxKey] :: AddrTxKey -> !Address
- Haskoin.Store.Database.Types: [$sel:address:BalKey] :: BalKey -> !Address
- Haskoin.Store.Database.Types: [$sel:block:AddrOutKey] :: AddrOutKey -> !BlockRef
- Haskoin.Store.Database.Types: [$sel:block:AddrTxKey] :: AddrTxKey -> !BlockRef
- Haskoin.Store.Database.Types: [$sel:block:UnspentVal] :: UnspentVal -> !BlockRef
- Haskoin.Store.Database.Types: [$sel:confirmed:BalVal] :: BalVal -> !Word64
- Haskoin.Store.Database.Types: [$sel:hash:BlockKey] :: BlockKey -> BlockHash
- Haskoin.Store.Database.Types: [$sel:height:HeightKey] :: HeightKey -> BlockHeight
- Haskoin.Store.Database.Types: [$sel:outpoint:AddrOutKey] :: AddrOutKey -> !OutPoint
- Haskoin.Store.Database.Types: [$sel:outpoint:UnspentKey] :: UnspentKey -> !OutPoint
- Haskoin.Store.Database.Types: [$sel:received:BalVal] :: BalVal -> !Word64
- Haskoin.Store.Database.Types: [$sel:script:OutVal] :: OutVal -> !ByteString
- Haskoin.Store.Database.Types: [$sel:script:UnspentVal] :: UnspentVal -> !ByteString
- Haskoin.Store.Database.Types: [$sel:short:TxKey] :: TxKey -> (Word32, Word16)
- Haskoin.Store.Database.Types: [$sel:tx:AddrTxKey] :: AddrTxKey -> !TxRef
- Haskoin.Store.Database.Types: [$sel:txid:TxKey] :: TxKey -> TxHash
- Haskoin.Store.Database.Types: [$sel:txid:UnspentKey] :: UnspentKey -> !TxHash
- Haskoin.Store.Database.Types: [$sel:txs:BalVal] :: BalVal -> !Word64
- Haskoin.Store.Database.Types: [$sel:unconfirmed:BalVal] :: BalVal -> !Word64
- Haskoin.Store.Database.Types: [$sel:utxo:BalVal] :: BalVal -> !Word64
- Haskoin.Store.Database.Types: [$sel:value:OutVal] :: OutVal -> !Word64
- Haskoin.Store.Database.Types: [$sel:value:UnspentVal] :: UnspentVal -> !Word64
- Haskoin.Store.Manager: [$sel:block:Store] :: Store -> !BlockStore
- Haskoin.Store.Manager: [$sel:cache:Store] :: Store -> !Maybe CacheConfig
- Haskoin.Store.Manager: [$sel:chain:Store] :: Store -> !Chain
- Haskoin.Store.Manager: [$sel:connect:StoreConfig] :: StoreConfig -> !SockAddr -> WithConnection
- Haskoin.Store.Manager: [$sel:ctx:StoreConfig] :: StoreConfig -> !Ctx
- Haskoin.Store.Manager: [$sel:ctx:Store] :: Store -> !Ctx
- Haskoin.Store.Manager: [$sel:db:StoreConfig] :: StoreConfig -> !FilePath
- Haskoin.Store.Manager: [$sel:db:Store] :: Store -> !DatabaseReader
- Haskoin.Store.Manager: [$sel:discover:StoreConfig] :: StoreConfig -> !Bool
- Haskoin.Store.Manager: [$sel:gap:StoreConfig] :: StoreConfig -> !Word32
- Haskoin.Store.Manager: [$sel:initGap:StoreConfig] :: StoreConfig -> !Word32
- Haskoin.Store.Manager: [$sel:initPeers:StoreConfig] :: StoreConfig -> ![String]
- Haskoin.Store.Manager: [$sel:maxPeerLife:StoreConfig] :: StoreConfig -> !NominalDiffTime
- Haskoin.Store.Manager: [$sel:maxPeers:StoreConfig] :: StoreConfig -> !Int
- Haskoin.Store.Manager: [$sel:net:StoreConfig] :: StoreConfig -> !Network
- Haskoin.Store.Manager: [$sel:net:Store] :: Store -> !Network
- Haskoin.Store.Manager: [$sel:noMempool:StoreConfig] :: StoreConfig -> !Bool
- Haskoin.Store.Manager: [$sel:peerMgr:Store] :: Store -> !PeerMgr
- Haskoin.Store.Manager: [$sel:peerTimeout:StoreConfig] :: StoreConfig -> !NominalDiffTime
- Haskoin.Store.Manager: [$sel:pub:Store] :: Store -> !Publisher StoreEvent
- Haskoin.Store.Manager: [$sel:redis:StoreConfig] :: StoreConfig -> !Maybe String
- Haskoin.Store.Manager: [$sel:redisMaxKeys:StoreConfig] :: StoreConfig -> !Integer
- Haskoin.Store.Manager: [$sel:redisMinAddrs:StoreConfig] :: StoreConfig -> !Int
- Haskoin.Store.Manager: [$sel:redisSyncInterval:StoreConfig] :: StoreConfig -> !Int
- Haskoin.Store.Manager: [$sel:stats:StoreConfig] :: StoreConfig -> !Maybe Stats
- Haskoin.Store.Manager: [$sel:syncMempool:StoreConfig] :: StoreConfig -> !Bool
- Haskoin.Store.Manager: [$sel:wipeMempool:StoreConfig] :: StoreConfig -> !Bool
- Haskoin.Store.Web: [$sel:blockTimeout:WebLimits] :: WebLimits -> !Word64
- Haskoin.Store.Web: [$sel:defItemCount:WebLimits] :: WebLimits -> !Word32
- Haskoin.Store.Web: [$sel:healthCheckInterval:WebConfig] :: WebConfig -> !Int
- Haskoin.Store.Web: [$sel:host:WebConfig] :: WebConfig -> !String
- Haskoin.Store.Web: [$sel:limits:WebConfig] :: WebConfig -> !WebLimits
- Haskoin.Store.Web: [$sel:maxFullItemCount:WebLimits] :: WebLimits -> !Word32
- Haskoin.Store.Web: [$sel:maxItemCount:WebLimits] :: WebLimits -> !Word32
- Haskoin.Store.Web: [$sel:maxLaggingBlocks:WebConfig] :: WebConfig -> !Int
- Haskoin.Store.Web: [$sel:maxOffset:WebLimits] :: WebLimits -> !Word32
- Haskoin.Store.Web: [$sel:maxPendingTxs:WebConfig] :: WebConfig -> !Int
- Haskoin.Store.Web: [$sel:minPeers:WebConfig] :: WebConfig -> !Int
- Haskoin.Store.Web: [$sel:noBlockchainInfo:WebConfig] :: WebConfig -> !Bool
- Haskoin.Store.Web: [$sel:noMempool:WebConfig] :: WebConfig -> !Bool
- Haskoin.Store.Web: [$sel:noSlow:WebConfig] :: WebConfig -> !Bool
- Haskoin.Store.Web: [$sel:port:WebConfig] :: WebConfig -> !Int
- Haskoin.Store.Web: [$sel:priceHistoryURL:WebConfig] :: WebConfig -> !String
- Haskoin.Store.Web: [$sel:stats:WebConfig] :: WebConfig -> !Maybe Stats
- Haskoin.Store.Web: [$sel:store:WebConfig] :: WebConfig -> !Store
- Haskoin.Store.Web: [$sel:tickerRefresh:WebConfig] :: WebConfig -> !Int
- Haskoin.Store.Web: [$sel:tickerURL:WebConfig] :: WebConfig -> !String
- Haskoin.Store.Web: [$sel:txTimeout:WebLimits] :: WebLimits -> !Word64
- Haskoin.Store.Web: [$sel:version:WebConfig] :: WebConfig -> !String
- Haskoin.Store.Web: [$sel:xpubGap:WebLimits] :: WebLimits -> !Word32
- Haskoin.Store.Web: [$sel:xpubGapInit:WebLimits] :: WebLimits -> !Word32
+ Haskoin.Store: [block] :: Store -> !BlockStore
+ Haskoin.Store: [cache] :: Store -> !Maybe CacheConfig
+ Haskoin.Store: [chain] :: CacheConfig -> !Chain
+ Haskoin.Store: [connect] :: StoreConfig -> !SockAddr -> WithConnection
+ Haskoin.Store: [ctx] :: StoreConfig -> !Ctx
+ Haskoin.Store: [db] :: StoreConfig -> !FilePath
+ Haskoin.Store: [discover] :: StoreConfig -> !Bool
+ Haskoin.Store: [gap] :: StoreConfig -> !Word32
+ Haskoin.Store: [initGap] :: StoreConfig -> !Word32
+ Haskoin.Store: [initPeers] :: StoreConfig -> ![String]
+ Haskoin.Store: [limit] :: Limits -> !Word32
+ Haskoin.Store: [maxKeys] :: CacheConfig -> !Integer
+ Haskoin.Store: [maxPeerLife] :: StoreConfig -> !NominalDiffTime
+ Haskoin.Store: [maxPeers] :: StoreConfig -> !Int
+ Haskoin.Store: [metrics] :: CacheConfig -> !Maybe CacheMetrics
+ Haskoin.Store: [minAddrs] :: CacheConfig -> !Int
+ Haskoin.Store: [net] :: StoreConfig -> !Network
+ Haskoin.Store: [noMempool] :: StoreConfig -> !Bool
+ Haskoin.Store: [offset] :: Limits -> !Word32
+ Haskoin.Store: [peerMgr] :: Store -> !PeerMgr
+ Haskoin.Store: [peerTimeout] :: StoreConfig -> !NominalDiffTime
+ Haskoin.Store: [pub] :: Store -> !Publisher StoreEvent
+ Haskoin.Store: [redisMaxKeys] :: StoreConfig -> !Integer
+ Haskoin.Store: [redisMinAddrs] :: StoreConfig -> !Int
+ Haskoin.Store: [redisSyncInterval] :: StoreConfig -> !Int
+ Haskoin.Store: [redis] :: CacheConfig -> !Connection
+ Haskoin.Store: [start] :: Limits -> !Maybe Start
+ Haskoin.Store: [stats] :: StoreConfig -> !Maybe Stats
+ Haskoin.Store: [syncMempool] :: StoreConfig -> !Bool
+ Haskoin.Store: [wipeMempool] :: StoreConfig -> !Bool
+ Haskoin.Store.BlockStore: [chain] :: BlockStoreConfig -> !Chain
+ Haskoin.Store.BlockStore: [ctx] :: BlockStoreConfig -> !Ctx
+ Haskoin.Store.BlockStore: [db] :: BlockStoreConfig -> !DatabaseReader
+ Haskoin.Store.BlockStore: [net] :: BlockStoreConfig -> !Network
+ Haskoin.Store.BlockStore: [noMempool] :: BlockStoreConfig -> !Bool
+ Haskoin.Store.BlockStore: [peerMgr] :: BlockStoreConfig -> !PeerMgr
+ Haskoin.Store.BlockStore: [peerTimeout] :: BlockStoreConfig -> !NominalDiffTime
+ Haskoin.Store.BlockStore: [pub] :: BlockStoreConfig -> !Publisher StoreEvent
+ Haskoin.Store.BlockStore: [stats] :: BlockStoreConfig -> !Maybe Stats
+ Haskoin.Store.BlockStore: [syncMempool] :: BlockStoreConfig -> !Bool
+ Haskoin.Store.BlockStore: [wipeMempool] :: BlockStoreConfig -> !Bool
+ Haskoin.Store.Cache: [chain] :: CacheConfig -> !Chain
+ Haskoin.Store.Cache: [maxKeys] :: CacheConfig -> !Integer
+ Haskoin.Store.Cache: [metrics] :: CacheConfig -> !Maybe CacheMetrics
+ Haskoin.Store.Cache: [minAddrs] :: CacheConfig -> !Int
+ Haskoin.Store.Cache: [redis] :: CacheConfig -> !Connection
+ Haskoin.Store.Common: [limit] :: Limits -> !Word32
+ Haskoin.Store.Common: [offset] :: Limits -> !Word32
+ Haskoin.Store.Common: [start] :: Limits -> !Maybe Start
+ Haskoin.Store.Database.Reader: [ctx] :: DatabaseReader -> !Ctx
+ Haskoin.Store.Database.Reader: [db] :: DatabaseReader -> !DB
+ Haskoin.Store.Database.Reader: [initGap] :: DatabaseReader -> !Word32
+ Haskoin.Store.Database.Reader: [maxGap] :: DatabaseReader -> !Word32
+ Haskoin.Store.Database.Reader: [metrics] :: DatabaseReader -> !Maybe DataMetrics
+ Haskoin.Store.Database.Reader: [net] :: DatabaseReader -> !Network
+ Haskoin.Store.Database.Types: [address] :: BalKey -> !Address
+ Haskoin.Store.Database.Types: [block] :: UnspentVal -> !BlockRef
+ Haskoin.Store.Database.Types: [confirmed] :: BalVal -> !Word64
+ Haskoin.Store.Database.Types: [hash] :: BlockKey -> BlockHash
+ Haskoin.Store.Database.Types: [height] :: HeightKey -> BlockHeight
+ Haskoin.Store.Database.Types: [outpoint] :: UnspentKey -> !OutPoint
+ Haskoin.Store.Database.Types: [received] :: BalVal -> !Word64
+ Haskoin.Store.Database.Types: [script] :: OutVal -> !ByteString
+ Haskoin.Store.Database.Types: [short] :: TxKey -> (Word32, Word16)
+ Haskoin.Store.Database.Types: [tx] :: AddrTxKey -> !TxRef
+ Haskoin.Store.Database.Types: [txid] :: UnspentKey -> !TxHash
+ Haskoin.Store.Database.Types: [txs] :: BalVal -> !Word64
+ Haskoin.Store.Database.Types: [unconfirmed] :: BalVal -> !Word64
+ Haskoin.Store.Database.Types: [utxo] :: BalVal -> !Word64
+ Haskoin.Store.Database.Types: [value] :: OutVal -> !Word64
+ Haskoin.Store.Manager: [block] :: Store -> !BlockStore
+ Haskoin.Store.Manager: [cache] :: Store -> !Maybe CacheConfig
+ Haskoin.Store.Manager: [chain] :: Store -> !Chain
+ Haskoin.Store.Manager: [connect] :: StoreConfig -> !SockAddr -> WithConnection
+ Haskoin.Store.Manager: [ctx] :: Store -> !Ctx
+ Haskoin.Store.Manager: [db] :: Store -> !DatabaseReader
+ Haskoin.Store.Manager: [discover] :: StoreConfig -> !Bool
+ Haskoin.Store.Manager: [gap] :: StoreConfig -> !Word32
+ Haskoin.Store.Manager: [initGap] :: StoreConfig -> !Word32
+ Haskoin.Store.Manager: [initPeers] :: StoreConfig -> ![String]
+ Haskoin.Store.Manager: [maxPeerLife] :: StoreConfig -> !NominalDiffTime
+ Haskoin.Store.Manager: [maxPeers] :: StoreConfig -> !Int
+ Haskoin.Store.Manager: [net] :: Store -> !Network
+ Haskoin.Store.Manager: [noMempool] :: StoreConfig -> !Bool
+ Haskoin.Store.Manager: [peerMgr] :: Store -> !PeerMgr
+ Haskoin.Store.Manager: [peerTimeout] :: StoreConfig -> !NominalDiffTime
+ Haskoin.Store.Manager: [pub] :: Store -> !Publisher StoreEvent
+ Haskoin.Store.Manager: [redisMaxKeys] :: StoreConfig -> !Integer
+ Haskoin.Store.Manager: [redisMinAddrs] :: StoreConfig -> !Int
+ Haskoin.Store.Manager: [redisSyncInterval] :: StoreConfig -> !Int
+ Haskoin.Store.Manager: [redis] :: StoreConfig -> !Maybe String
+ Haskoin.Store.Manager: [stats] :: StoreConfig -> !Maybe Stats
+ Haskoin.Store.Manager: [syncMempool] :: StoreConfig -> !Bool
+ Haskoin.Store.Manager: [wipeMempool] :: StoreConfig -> !Bool
+ Haskoin.Store.Web: [blockTimeout] :: WebLimits -> !Word64
+ Haskoin.Store.Web: [defItemCount] :: WebLimits -> !Word32
+ Haskoin.Store.Web: [healthCheckInterval] :: WebConfig -> !Int
+ Haskoin.Store.Web: [host] :: WebConfig -> !String
+ Haskoin.Store.Web: [limits] :: WebConfig -> !WebLimits
+ Haskoin.Store.Web: [maxFullItemCount] :: WebLimits -> !Word32
+ Haskoin.Store.Web: [maxItemCount] :: WebLimits -> !Word32
+ Haskoin.Store.Web: [maxLaggingBlocks] :: WebConfig -> !Int
+ Haskoin.Store.Web: [maxOffset] :: WebLimits -> !Word32
+ Haskoin.Store.Web: [maxPendingTxs] :: WebConfig -> !Int
+ Haskoin.Store.Web: [minPeers] :: WebConfig -> !Int
+ Haskoin.Store.Web: [noBlockchainInfo] :: WebConfig -> !Bool
+ Haskoin.Store.Web: [noMempool] :: WebConfig -> !Bool
+ Haskoin.Store.Web: [noSlow] :: WebConfig -> !Bool
+ Haskoin.Store.Web: [port] :: WebConfig -> !Int
+ Haskoin.Store.Web: [priceHistoryURL] :: WebConfig -> !String
+ Haskoin.Store.Web: [stats] :: WebConfig -> !Maybe Stats
+ Haskoin.Store.Web: [store] :: WebConfig -> !Store
+ Haskoin.Store.Web: [tickerRefresh] :: WebConfig -> !Int
+ Haskoin.Store.Web: [tickerURL] :: WebConfig -> !String
+ Haskoin.Store.Web: [txTimeout] :: WebLimits -> !Word64
+ Haskoin.Store.Web: [version] :: WebConfig -> !String
+ Haskoin.Store.Web: [xpubGapInit] :: WebLimits -> !Word32
+ Haskoin.Store.Web: [xpubGap] :: WebLimits -> !Word32
- Haskoin.Store: class (Monad m) => StoreReadBase m
+ Haskoin.Store: class Monad m => StoreReadBase (m :: Type -> Type)
- Haskoin.Store: class (StoreReadBase m) => StoreReadExtra m
+ Haskoin.Store: class StoreReadBase m => StoreReadExtra (m :: Type -> Type)
- Haskoin.Store: isInCache :: MonadLoggerIO m => XPubSpec -> CacheT m Bool
+ Haskoin.Store: isInCache :: forall (m :: Type -> Type). MonadLoggerIO m => XPubSpec -> CacheT m Bool
- Haskoin.Store: type CacheT = ReaderT (Maybe CacheConfig)
+ Haskoin.Store: type CacheT = ReaderT Maybe CacheConfig
- Haskoin.Store.Cache: cacheDelXPubs :: (MonadLoggerIO m, StoreReadBase m) => [XPubSpec] -> CacheT m Integer
+ Haskoin.Store.Cache: cacheDelXPubs :: forall (m :: Type -> Type). (MonadLoggerIO m, StoreReadBase m) => [XPubSpec] -> CacheT m Integer
- Haskoin.Store.Cache: isInCache :: MonadLoggerIO m => XPubSpec -> CacheT m Bool
+ Haskoin.Store.Cache: isInCache :: forall (m :: Type -> Type). MonadLoggerIO m => XPubSpec -> CacheT m Bool
- Haskoin.Store.Cache: type CacheT = ReaderT (Maybe CacheConfig)
+ Haskoin.Store.Cache: type CacheT = ReaderT Maybe CacheConfig
- Haskoin.Store.Common: applyLimitC :: Monad m => Limit -> ConduitT i i m ()
+ Haskoin.Store.Common: applyLimitC :: forall (m :: Type -> Type) i. Monad m => Limit -> ConduitT i i m ()
- Haskoin.Store.Common: applyLimitsC :: Monad m => Limits -> ConduitT i i m ()
+ Haskoin.Store.Common: applyLimitsC :: forall (m :: Type -> Type) i. Monad m => Limits -> ConduitT i i m ()
- Haskoin.Store.Common: class (Monad m) => StoreReadBase m
+ Haskoin.Store.Common: class Monad m => StoreReadBase (m :: Type -> Type)
- Haskoin.Store.Common: class (StoreReadBase m) => StoreReadExtra m
+ Haskoin.Store.Common: class StoreReadBase m => StoreReadExtra (m :: Type -> Type)
- Haskoin.Store.Common: class StoreWrite m
+ Haskoin.Store.Common: class StoreWrite (m :: Type -> Type)
- Haskoin.Store.Common: joinDescStreams :: (Monad m, Ord a) => [ConduitT () a m ()] -> ConduitT () a m ()
+ Haskoin.Store.Common: joinDescStreams :: forall (m :: Type -> Type) a. (Monad m, Ord a) => [ConduitT () a m ()] -> ConduitT () a m ()
- Haskoin.Store.Logic: type MonadImport m = (MonadError ImportException m, MonadLoggerIO m, StoreReadBase m, StoreWrite m)
+ Haskoin.Store.Logic: type MonadImport (m :: Type -> Type) = (MonadError ImportException m, MonadLoggerIO m, StoreReadBase m, StoreWrite m)
- Haskoin.Store.Web: data () => Except
+ Haskoin.Store.Web: data Except
Files
- haskoin-store.cabal +3/−3
- src/Haskoin/Store.hs +1/−0
- src/Haskoin/Store/Database/Reader.hs +8/−8
- src/Haskoin/Store/Web.hs +8/−8
haskoin-store.cabal view
@@ -5,7 +5,7 @@ -- see: https://github.com/sol/hpack name: haskoin-store-version: 1.5.0+version: 1.5.1 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@@ -90,7 +90,7 @@ Paths_haskoin_store hs-source-dirs: app- ghc-options: -Wall -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-export-lists -Wmissing-home-modules -Wpartial-fields -Wredundant-constraints -threaded -rtsopts -with-rtsopts=-N+ ghc-options: -Wall -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-export-lists -Wmissing-home-modules -Wpartial-fields -Wredundant-constraints -threaded -rtsopts "-with-rtsopts=-N --nonmoving-gc" build-depends: aeson >=1.4.7.1 , aeson-pretty >=0.8.8@@ -148,7 +148,7 @@ Paths_haskoin_store hs-source-dirs: test- ghc-options: -Wall -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-export-lists -Wmissing-home-modules -Wpartial-fields -Wredundant-constraints -threaded -rtsopts -with-rtsopts=-N+ ghc-options: -Wall -Wcompat -Widentities -Wincomplete-record-updates -Wincomplete-uni-patterns -Wmissing-export-lists -Wmissing-home-modules -Wpartial-fields -Wredundant-constraints -threaded -rtsopts "-with-rtsopts=-N --nonmoving-gc" build-depends: QuickCheck >=2.13.2 , aeson >=1.4.7.1
src/Haskoin/Store.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE DuplicateRecordFields #-} module Haskoin.Store ( Store (..), StoreConfig (..),
src/Haskoin/Store/Database/Reader.hs view
@@ -151,14 +151,14 @@ columnFamilyConfig :: [(String, Config)] columnFamilyConfig =- [ ("addr-tx", def {prefixLength = Just 22}),- ("addr-out", def {prefixLength = Just 22}),- ("tx", def {prefixLength = Just 33}),- ("spender", def {prefixLength = Just 33}), -- unused- ("unspent", def {prefixLength = Just 37}),- ("block", def {prefixLength = Just 33}),- ("height", def {prefixLength = Nothing}),- ("balance", def {prefixLength = Just 22})+ [ ("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}) ] addrTxCF :: DB -> ColumnFamily
src/Haskoin/Store/Web.hs view
@@ -1447,7 +1447,7 @@ getBinfoAddrsParam name = do net <- askl (.config.store.net) ctx <- askl (.config.store.ctx)- p <- param (TL.fromStrict name) `rescue` return ""+ p <- param name `rescue` return "" if T.null p then return HashSet.empty else case parseBinfoAddr net ctx p of@@ -1654,7 +1654,7 @@ Nothing -> raise ThingNotFound Just a -> return a -getBinfoAddr :: (MonadUnliftIO m) => TL.Text -> ActionT m BinfoAddr+getBinfoAddr :: (MonadUnliftIO m) => Text -> ActionT m BinfoAddr getBinfoAddr param' = do txt <- S.captureParam param' net <- askl (.config.store.net)@@ -1926,7 +1926,7 @@ let f = map (.balance.address) in HashSet.fromList . concatMap f . HashMap.elems -getBinfoCount :: (MonadUnliftIO m) => TL.Text -> ActionT m Int+getBinfoCount :: (MonadUnliftIO m) => Text -> ActionT m Int getBinfoCount str = do d <- askl (.config.limits.defItemCount) x <- askl (.config.limits.maxFullItemCount)@@ -2597,8 +2597,8 @@ Nothing -> return Nothing -- Parameter was not supplied Just ts -> maybe (raise err) (return . Just) (parseParam net ctx ts) where- label = TL.fromStrict (proxyLabel (Proxy :: Proxy a))- err = UserError $ "Unable to parse param " <> TL.unpack label+ label = proxyLabel (Proxy :: Proxy a)+ err = UserError $ "Unable to parse param " <> T.unpack label -- | Raises an exception if the parameter is not supplied paramRequired :: forall a m. (Param a, MonadUnliftIO m) => ActionT m a@@ -2621,7 +2621,7 @@ p <- S.captureParam label `rescue` S.next maybe S.next return (parseParam net ctx p) where- label = TL.fromStrict (proxyLabel (Proxy :: Proxy a))+ label = proxyLabel (Proxy :: Proxy a) parseBody :: (MonadIO m, Serial a) => ActionT m a parseBody = do@@ -2746,11 +2746,11 @@ S.ActionT m a -> S.ActionT m a -> S.ActionT m a-x `rescue` y = x `S.rescue` \S.StatusError {} -> y+x `rescue` y = x `S.catch` \(_ :: S.ScottyException) -> y param :: (MonadUnliftIO m, S.Parsable a) =>- TL.Text ->+ Text -> S.ActionT m a param t = S.queryParam t `rescue` S.formParam t