diff --git a/backend/src/api/disk-cache.ts b/backend/src/api/disk-cache.ts index 0774f0904..ec14ca076 100644 --- a/backend/src/api/disk-cache.ts +++ b/backend/src/api/disk-cache.ts @@ -9,6 +9,8 @@ import { TransactionExtended } from '../mempool.interfaces'; import { Common } from './common'; class DiskCache { + private cacheSchemaVersion = 1; + private static FILE_NAME = config.MEMPOOL.CACHE_DIR + '/cache.json'; private static FILE_NAMES = config.MEMPOOL.CACHE_DIR + '/cache{number}.json'; private static CHUNK_FILES = 25; @@ -57,6 +59,13 @@ class DiskCache { } } + wipeCache() { + fs.unlinkSync(DiskCache.FILE_NAME); + for (let i = 1; i < DiskCache.CHUNK_FILES; i++) { + fs.unlinkSync(DiskCache.FILE_NAMES.replace('{number}', i.toString())); + } + } + loadMempoolCache() { if (!fs.existsSync(DiskCache.FILE_NAME)) { return; @@ -67,6 +76,11 @@ class DiskCache { if (cacheData) { logger.info('Restoring mempool and blocks data from disk cache'); data = JSON.parse(cacheData); + if (data.cacheSchemaVersion === undefined || data.cacheSchemaVersion !== this.cacheSchemaVersion) { + logger.notice('Disk cache contains an outdated schema version. Clearing it and skipping the cache loading.'); + return this.wipeCache(); + } + if (data.mempoolArray) { for (const tx of data.mempoolArray) { data.mempool[tx.txid] = tx; diff --git a/frontend/src/app/components/about/about.component.html b/frontend/src/app/components/about/about.component.html index 88e296c2d..4a0496710 100644 --- a/frontend/src/app/components/about/about.component.html +++ b/frontend/src/app/components/about/about.component.html @@ -47,32 +47,6 @@ Spiral - - - - - - - - Gemini - - - - - - - - - - - - - - - - - Exodus - @@ -84,25 +58,6 @@ Foundry - - - - - - - - - - - - - Unchained - Blockstream + + + + + + + + + + + + + Unchained + + + + + + + + + Gemini + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Exodus + diff --git a/frontend/src/locale/messages.xlf b/frontend/src/locale/messages.xlf index 8ea9d70cf..661540a6f 100644 --- a/frontend/src/locale/messages.xlf +++ b/frontend/src/locale/messages.xlf @@ -398,7 +398,7 @@ src/app/components/blocks-list/blocks-list.component.html - 13,14 + 14,15 src/app/components/pool/pool.component.html @@ -406,7 +406,7 @@ src/app/components/pool/pool.component.html - 261,263 + 260,262 src/app/components/transaction/transaction.component.html @@ -454,7 +454,7 @@ src/app/components/blocks-list/blocks-list.component.html - 11,12 + 12,13 src/app/components/difficulty-adjustments-table/difficulty-adjustments-table.component.html @@ -466,7 +466,7 @@ src/app/components/pool/pool.component.html - 260,262 + 259,261 src/app/dashboard/dashboard.component.html @@ -498,11 +498,11 @@ src/app/components/blocks-list/blocks-list.component.html - 18,19 + 19,20 src/app/components/mempool-block/mempool-block.component.html - 28,32 + 29,33 Bisq block transactions title @@ -518,7 +518,7 @@ src/app/components/blocks-list/blocks-list.component.html - 4,9 + 4,7 src/app/components/liquid-master-page/liquid-master-page.component.html @@ -526,7 +526,7 @@ src/app/components/master-page/master-page.component.html - 38,40 + 39,41 src/app/components/pool-ranking/pool-ranking.component.html @@ -699,7 +699,7 @@ src/app/components/about/about.component.html - 361,365 + 383,387 src/app/dashboard/dashboard.component.html @@ -833,11 +833,11 @@ src/app/components/pool/pool.component.html - 338,340 + 337,339 src/app/components/pool/pool.component.html - 349,352 + 348,351 BSQ addresses @@ -940,7 +940,7 @@ src/app/components/transactions-list/transactions-list.component.html - 249,251 + 252,254 @@ -969,6 +969,10 @@ src/app/bisq/bisq-transaction/bisq-transaction.component.html 111,117 + + src/app/components/mempool-block/mempool-block.component.html + 45,47 + src/app/components/transaction/transaction.component.html 13,16 @@ -992,7 +996,7 @@ src/app/components/transactions-list/transactions-list.component.html - 277,278 + 280,281 Transaction singular confirmation count shared.confirmation-count.singular @@ -1020,7 +1024,7 @@ src/app/components/transactions-list/transactions-list.component.html - 278,279 + 281,282 Transaction plural confirmation count shared.confirmation-count.plural @@ -1300,7 +1304,7 @@ Become a sponsor ❤️ src/app/components/about/about.component.html - 33,34 + 30,31 about.become-a-sponsor @@ -1308,7 +1312,7 @@ Navigate to https://mempool.space/sponsor to sponsor src/app/components/about/about.component.html - 34 + 31 src/app/components/sponsor/sponsor.component.html @@ -1320,7 +1324,7 @@ Enterprise Sponsors 🚀 src/app/components/about/about.component.html - 38,41 + 35,38 about.sponsors.enterprise.withRocket @@ -1328,7 +1332,7 @@ Community Sponsors ❤️ src/app/components/about/about.component.html - 159,162 + 181,184 about.sponsors.withHeart @@ -1336,7 +1340,7 @@ Self-Hosted Integrations src/app/components/about/about.component.html - 173,175 + 195,197 about.self-hosted-integrations @@ -1344,7 +1348,7 @@ Wallet Integrations src/app/components/about/about.component.html - 207,209 + 229,231 about.wallet-integrations @@ -1352,7 +1356,7 @@ Community Alliances src/app/components/about/about.component.html - 261,263 + 283,285 about.alliances @@ -1360,7 +1364,7 @@ Project Translators src/app/components/about/about.component.html - 277,279 + 299,301 about.translators @@ -1368,7 +1372,7 @@ Project Contributors src/app/components/about/about.component.html - 291,293 + 313,315 about.contributors @@ -1376,7 +1380,7 @@ Project Members src/app/components/about/about.component.html - 303,305 + 325,327 about.project_members @@ -1384,7 +1388,7 @@ Project Maintainers src/app/components/about/about.component.html - 316,318 + 338,340 about.maintainers @@ -1404,7 +1408,7 @@ src/app/components/master-page/master-page.component.html - 50,53 + 51,54 @@ -1474,7 +1478,7 @@ src/app/components/transactions-list/transactions-list.component.html - 285,287 + 288,290 src/app/dashboard/dashboard.component.html @@ -1678,11 +1682,11 @@ src/app/components/pool/pool.component.html - 429,431 + 428,430 src/app/components/pool/pool.component.html - 455,457 + 454,456 @@ -1757,7 +1761,7 @@ src/app/components/master-page/master-page.component.html - 8,9 + 9,10 master-page.offline @@ -1773,7 +1777,7 @@ src/app/components/master-page/master-page.component.html - 9,14 + 10,15 master-page.reconnecting @@ -1789,7 +1793,7 @@ src/app/components/master-page/master-page.component.html - 22,23 + 23,24 master-page.layer2-networks-header @@ -1805,7 +1809,7 @@ src/app/components/master-page/master-page.component.html - 32,34 + 33,35 master-page.dashboard @@ -1869,7 +1873,7 @@ src/app/components/blocks-list/blocks-list.component.html - 16,17 + 17,18 src/app/components/pool/pool.component.html @@ -1877,7 +1881,7 @@ src/app/components/pool/pool.component.html - 265,267 + 264,266 @@ -1904,7 +1908,7 @@ src/app/components/blocks-list/blocks-list.component.html - 15,16 + 16,17 src/app/components/pool/pool.component.html @@ -1912,7 +1916,7 @@ src/app/components/pool/pool.component.html - 264,266 + 263,265 @@ -1947,11 +1951,11 @@ src/app/components/blocks-list/blocks-list.component.html - 19,21 + 20,22 src/app/components/mempool-block/mempool-block.component.html - 32,35 + 33,36 src/app/components/mempool-graph/mempool-graph.component.ts @@ -1963,7 +1967,7 @@ src/app/components/pool/pool.component.html - 267,271 + 266,270 src/app/components/transaction/transaction.component.html @@ -2005,7 +2009,7 @@ src/app/components/mempool-block/mempool-block.component.ts - 71 + 75 Next Block @@ -2025,7 +2029,7 @@ src/app/components/mempool-block/mempool-block.component.html - 16,17 + 17,18 block.median-fee @@ -2045,23 +2049,31 @@ src/app/components/fees-box/fees-box.component.html - 6 + 16 src/app/components/fees-box/fees-box.component.html - 12 + 22 src/app/components/fees-box/fees-box.component.html + 27 + + + src/app/components/fees-box/fees-box.component.html + 32 + + + src/app/components/mempool-block/mempool-block.component.html 18 src/app/components/mempool-block/mempool-block.component.html - 17 + 22,25 src/app/components/mempool-block/mempool-block.component.html - 21,24 + 61,65 src/app/components/mempool-blocks/mempool-blocks.component.html @@ -2089,7 +2101,7 @@ src/app/components/transactions-list/transactions-list.component.html - 269 + 272 src/app/dashboard/dashboard.component.html @@ -2110,19 +2122,23 @@ src/app/components/fees-box/fees-box.component.html - 5,6 + 15,16 src/app/components/fees-box/fees-box.component.html - 11,12 + 21,22 src/app/components/fees-box/fees-box.component.html - 17,18 + 26,27 + + + src/app/components/fees-box/fees-box.component.html + 31,32 src/app/components/mempool-block/mempool-block.component.html - 17,20 + 18,21 Transaction fee tooltip @@ -2138,7 +2154,7 @@ src/app/components/mempool-block/mempool-block.component.html - 24,25 + 25,26 Total fees in a block block.total-fees @@ -2260,7 +2276,7 @@ Pool src/app/components/blocks-list/blocks-list.component.html - 12,13 + 13,14 src/app/components/pool-ranking/pool-ranking.component.html @@ -2276,7 +2292,7 @@ Mined src/app/components/blocks-list/blocks-list.component.html - 14,15 + 15,16 src/app/components/pool/pool.component.html @@ -2284,7 +2300,7 @@ src/app/components/pool/pool.component.html - 262,263 + 261,262 src/app/dashboard/dashboard.component.html @@ -2296,7 +2312,7 @@ TXs src/app/components/blocks-list/blocks-list.component.html - 18 + 19 src/app/components/pool/pool.component.html @@ -2304,7 +2320,7 @@ src/app/components/pool/pool.component.html - 267,269 + 266,268 src/app/dashboard/dashboard.component.html @@ -2441,40 +2457,52 @@ difficulty-box.next-halving - - Low priority + + No Priority src/app/components/fees-box/fees-box.component.html - 4,5 - - - src/app/components/fees-box/fees-box.component.html - 27,30 - - fees-box.low-priority - - - Medium priority - - src/app/components/fees-box/fees-box.component.html - 10,11 - - - src/app/components/fees-box/fees-box.component.html - 34,37 - - fees-box.medium-priority - - - High priority - - src/app/components/fees-box/fees-box.component.html - 16,17 + 4,7 src/app/components/fees-box/fees-box.component.html 41,44 + fees-box.no-priority + + + Low Priority + + src/app/components/fees-box/fees-box.component.html + 8,9 + + + src/app/components/fees-box/fees-box.component.html + 45,46 + + fees-box.low-priority + + + Medium Priority + + src/app/components/fees-box/fees-box.component.html + 9,11 + + + src/app/components/fees-box/fees-box.component.html + 46,48 + + fees-box.medium-priority + + + High Priority + + src/app/components/fees-box/fees-box.component.html + 10,15 + + + src/app/components/fees-box/fees-box.component.html + 47,51 + fees-box.high-priority @@ -2644,7 +2672,7 @@ src/app/components/master-page/master-page.component.html - 41,43 + 42,44 src/app/components/statistics/statistics.component.ts @@ -2656,7 +2684,7 @@ Mining Dashboard src/app/components/master-page/master-page.component.html - 35,37 + 36,38 src/app/components/mining-dashboard/mining-dashboard.component.ts @@ -2668,7 +2696,7 @@ TV view src/app/components/master-page/master-page.component.html - 44,46 + 45,47 src/app/components/television/television.component.ts @@ -2680,7 +2708,7 @@ Documentation src/app/components/master-page/master-page.component.html - 47,49 + 48,50 src/app/docs/docs/docs.component.html @@ -2692,22 +2720,95 @@ Fee span src/app/components/mempool-block/mempool-block.component.html - 20,21 + 21,22 mempool-block.fee-span + + Value + + src/app/components/mempool-block/mempool-block.component.html + 51,54 + + Transaction value + transaction.value + + + Fee + + src/app/components/mempool-block/mempool-block.component.html + 56 + + + src/app/components/transaction/transaction.component.html + 386 + + Transaction fee + transaction.fee + + + sat + + src/app/components/mempool-block/mempool-block.component.html + 56,57 + + + src/app/components/transaction/transaction.component.html + 386,387 + + + src/app/components/transactions-list/transactions-list.component.html + 272,273 + + sat + shared.sat + + + Fee rate + + src/app/components/mempool-block/mempool-block.component.html + 59,61 + + + src/app/components/transaction/transaction.component.html + 154,158 + + + src/app/components/transaction/transaction.component.html + 389,391 + + Transaction fee rate + transaction.fee-rate + + + Virtual size + + src/app/components/mempool-block/mempool-block.component.html + 65,68 + + + src/app/components/transaction/transaction.component.html + 153,155 + + + src/app/components/transaction/transaction.component.html + 216,219 + + Transaction Virtual Size + transaction.vsize + Stack of mempool blocks src/app/components/mempool-block/mempool-block.component.ts - 73 + 77 Mempool block src/app/components/mempool-block/mempool-block.component.ts - 75 + 79 @@ -2850,11 +2951,11 @@ src/app/components/pool/pool.component.html - 321,323 + 320,322 src/app/components/pool/pool.component.html - 329,331 + 328,330 mining.tags @@ -2870,11 +2971,11 @@ src/app/components/transactions-list/transactions-list.component.html - 148,151 + 151,154 src/app/components/transactions-list/transactions-list.component.html - 259,261 + 262,264 show-all @@ -2898,11 +2999,11 @@ src/app/components/pool/pool.component.html - 368,370 + 367,369 src/app/components/pool/pool.component.html - 395,397 + 394,396 mining.hashrate-24h @@ -2918,11 +3019,11 @@ src/app/components/pool/pool.component.html - 373,374 + 372,373 src/app/components/pool/pool.component.html - 399,400 + 398,399 mining.estimated @@ -2938,11 +3039,11 @@ src/app/components/pool/pool.component.html - 374,375 + 373,374 src/app/components/pool/pool.component.html - 400,401 + 399,400 mining.reported @@ -2958,11 +3059,11 @@ src/app/components/pool/pool.component.html - 375,378 + 374,377 src/app/components/pool/pool.component.html - 401,404 + 400,403 mining.luck @@ -2978,11 +3079,11 @@ src/app/components/pool/pool.component.html - 421,423 + 420,422 src/app/components/pool/pool.component.html - 448,450 + 447,449 mining.mined-blocks @@ -3018,7 +3119,7 @@ src/app/components/pool/pool.component.html - 263,265 + 262,264 latest-blocks.coinbasetag @@ -3425,7 +3526,7 @@ src/app/components/transactions-list/transactions-list.component.html - 281,284 + 284,287 Transaction unconfirmed state transaction.unconfirmed @@ -3457,32 +3558,6 @@ Transaction ETA in several hours or more transaction.eta.in-several-hours - - Virtual size - - src/app/components/transaction/transaction.component.html - 153,155 - - - src/app/components/transaction/transaction.component.html - 216,219 - - Transaction Virtual Size - transaction.vsize - - - Fee rate - - src/app/components/transaction/transaction.component.html - 154,158 - - - src/app/components/transaction/transaction.component.html - 389,391 - - Transaction fee rate - transaction.fee-rate - Descendant @@ -3525,28 +3600,6 @@ transaction.error.waiting-for-it-to-appear - - Fee - - src/app/components/transaction/transaction.component.html - 386 - - Transaction fee - transaction.fee - - - sat - - src/app/components/transaction/transaction.component.html - 386,387 - - - src/app/components/transactions-list/transactions-list.component.html - 269,270 - - sat - shared.sat - Effective fee rate @@ -3584,7 +3637,7 @@ ScriptSig (ASM) src/app/components/transactions-list/transactions-list.component.html - 104,106 + 107,109 ScriptSig (ASM) transactions-list.scriptsig.asm @@ -3593,7 +3646,7 @@ ScriptSig (HEX) src/app/components/transactions-list/transactions-list.component.html - 108,111 + 111,114 ScriptSig (HEX) transactions-list.scriptsig.hex @@ -3602,7 +3655,7 @@ Witness src/app/components/transactions-list/transactions-list.component.html - 113,115 + 116,118 transactions-list.witness @@ -3610,7 +3663,7 @@ P2SH redeem script src/app/components/transactions-list/transactions-list.component.html - 117,118 + 120,121 transactions-list.p2sh-redeem-script @@ -3618,7 +3671,7 @@ P2TR tapscript src/app/components/transactions-list/transactions-list.component.html - 121,123 + 124,126 transactions-list.p2tr-tapscript @@ -3626,7 +3679,7 @@ P2WSH witness script src/app/components/transactions-list/transactions-list.component.html - 123,125 + 126,128 transactions-list.p2wsh-witness-script @@ -3634,7 +3687,7 @@ nSequence src/app/components/transactions-list/transactions-list.component.html - 128,130 + 131,133 transactions-list.nsequence @@ -3642,7 +3695,7 @@ Previous output script src/app/components/transactions-list/transactions-list.component.html - 133,134 + 136,137 transactions-list.previous-output-script @@ -3650,7 +3703,7 @@ Previous output type src/app/components/transactions-list/transactions-list.component.html - 137,138 + 140,141 transactions-list.previous-output-type @@ -3658,7 +3711,7 @@ Peg-out to src/app/components/transactions-list/transactions-list.component.html - 176,177 + 179,180 transactions-list.peg-out-to @@ -3666,7 +3719,7 @@ ScriptPubKey (ASM) src/app/components/transactions-list/transactions-list.component.html - 237,239 + 240,242 ScriptPubKey (ASM) transactions-list.scriptpubkey.asm @@ -3675,7 +3728,7 @@ ScriptPubKey (HEX) src/app/components/transactions-list/transactions-list.component.html - 241,244 + 244,247 ScriptPubKey (HEX) transactions-list.scriptpubkey.hex @@ -3684,7 +3737,7 @@ Show all inputs to reveal fee data src/app/components/transactions-list/transactions-list.component.html - 271,274 + 274,277 transactions-list.load-to-reveal-fee-info diff --git a/frontend/src/resources/screenshots/v2.4.0-dashboard.png b/frontend/src/resources/screenshots/v2.4.0-dashboard.png index 7fa95e441..472e6f615 100644 Binary files a/frontend/src/resources/screenshots/v2.4.0-dashboard.png and b/frontend/src/resources/screenshots/v2.4.0-dashboard.png differ