packages feed

haskoin-store 0.62.0 → 0.62.1

raw patch · 3 files changed

+13/−9 lines, 3 filesdep ~haskoin-store-dataPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: haskoin-store-data

API changes (from Hackage documentation)

Files

CHANGELOG.md view
@@ -4,6 +4,10 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html) +## 0.62.1+### Fixed+- Fix idempotent transaction elimination bug.+ ## 0.62.0 ### Added - Configurable Blockchain price URLs.
haskoin-store.cabal view
@@ -5,7 +5,7 @@ -- see: https://github.com/sol/hpack  name:           haskoin-store-version:        0.62.0+version:        0.62.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@@ -60,7 +60,7 @@     , hashable >=1.3.0.0     , haskoin-core >=0.21.1     , haskoin-node >=0.17.0-    , haskoin-store-data ==0.62.0+    , haskoin-store-data ==0.62.1     , hedis >=0.12.13     , http-types >=0.12.3     , lens >=4.18.1@@ -116,7 +116,7 @@     , haskoin-core >=0.21.1     , haskoin-node >=0.17.0     , haskoin-store-    , haskoin-store-data ==0.62.0+    , haskoin-store-data ==0.62.1     , hedis >=0.12.13     , http-types >=0.12.3     , lens >=4.18.1@@ -177,7 +177,7 @@     , haskoin-core >=0.21.1     , haskoin-node >=0.17.0     , haskoin-store-    , haskoin-store-data ==0.62.0+    , haskoin-store-data ==0.62.1     , hedis >=0.12.13     , hspec >=2.7.1     , http-types >=0.12.3
src/Haskoin/Store/Logic.hs view
@@ -430,9 +430,9 @@     get_tx th =         getActiveTxData th >>= \case             Nothing -> do-                $(logErrorS) "BlockStore" $+                $(logDebugS) "BlockStore" $                     "Transaction not found: " <> txHashToHex th-                throwError TxNotFound+                return Nothing             Just td               | memonly && confirmed (txDataBlock td) -> do                 $(logErrorS) "BlockStore" $@@ -441,15 +441,15 @@                 throwError TxConfirmed               | rbfcheck ->                 isRBF (txDataBlock td) (txData td) >>= \case-                    True -> return $ txData td+                    True -> return $ Just $ txData td                     False -> do                         $(logErrorS) "BlockStore" $                             "Double-spending transaction: "                             <> txHashToHex th                         throwError DoubleSpend-              | otherwise -> return $ txData td+              | otherwise -> return $ Just $ txData td     go txs pdg = do-        txs1 <- HashSet.fromList <$> mapM get_tx (HashSet.toList pdg)+        txs1 <- HashSet.fromList . catMaybes <$> mapM get_tx (HashSet.toList pdg)         pdg1 <- HashSet.fromList . concatMap (map spenderHash . I.elems) <$>                 mapM getSpenders (HashSet.toList pdg)         let txs' = txs1 <> txs