From d848ab4befd830a1575df6e2a7b3f243f1c2461d Mon Sep 17 00:00:00 2001 From: Mononaut Date: Wed, 14 Jun 2023 14:33:13 -0400 Subject: [PATCH 1/5] scroll to see all mempool blocks --- .../blockchain/blockchain.component.html | 4 +- .../blockchain/blockchain.component.scss | 41 ++--------- .../blockchain/blockchain.component.ts | 70 ++++++++++++++++--- .../mempool-blocks.component.ts | 21 ++++-- .../app/components/start/start.component.html | 2 +- .../app/components/start/start.component.ts | 23 ++++-- 6 files changed, 105 insertions(+), 56 deletions(-) diff --git a/frontend/src/app/components/blockchain/blockchain.component.html b/frontend/src/app/components/blockchain/blockchain.component.html index 0c4a1cbb7..2c3f1ad8c 100644 --- a/frontend/src/app/components/blockchain/blockchain.component.html +++ b/frontend/src/app/components/blockchain/blockchain.component.html @@ -1,9 +1,9 @@
-
+
- + diff --git a/frontend/src/app/components/blockchain/blockchain.component.scss b/frontend/src/app/components/blockchain/blockchain.component.scss index 63ca22626..135a8b842 100644 --- a/frontend/src/app/components/blockchain/blockchain.component.scss +++ b/frontend/src/app/components/blockchain/blockchain.component.scss @@ -26,43 +26,14 @@ position: absolute; left: 0; top: 75px; - transform: translateX(50vw); + --divider-offset: 50vw; + --mempool-offset: 0px; + transform: translateX(calc(var(--divider-offset) + var(--mempool-offset))); } -.position-container.liquid, .position-container.liquidtestnet { - transform: translateX(420px); -} - -@media (min-width: 768px) { - .blockchain-wrapper.time-ltr { - .position-container.liquid, .position-container.liquidtestnet { - transform: translateX(calc(100vw - 420px)); - } - } -} - -@media (max-width: 767.98px) { - .blockchain-wrapper { - .position-container { - transform: translateX(95vw); - } - .position-container.liquid, .position-container.liquidtestnet { - transform: translateX(50vw); - } - .position-container.loading { - transform: translateX(50vw); - } - } - .blockchain-wrapper.time-ltr { - .position-container { - transform: translateX(5vw); - } - .position-container.liquid, .position-container.liquidtestnet { - transform: translateX(50vw); - } - .position-container.loading { - transform: translateX(50vw); - } +.blockchain-wrapper.time-ltr { + .position-container { + transform: translateX(calc(100vw - var(--divider-offset) - var(--mempool-offset))); } } diff --git a/frontend/src/app/components/blockchain/blockchain.component.ts b/frontend/src/app/components/blockchain/blockchain.component.ts index ab9875a4c..5eb2ed481 100644 --- a/frontend/src/app/components/blockchain/blockchain.component.ts +++ b/frontend/src/app/components/blockchain/blockchain.component.ts @@ -1,4 +1,4 @@ -import { Component, OnInit, OnDestroy, ChangeDetectionStrategy, Input, OnChanges, SimpleChanges } from '@angular/core'; +import { Component, OnInit, OnDestroy, ChangeDetectionStrategy, Input, Output, EventEmitter, HostListener, ChangeDetectorRef } from '@angular/core'; import { firstValueFrom, Subscription } from 'rxjs'; import { StateService } from '../../services/state.service'; @@ -13,43 +13,95 @@ export class BlockchainComponent implements OnInit, OnDestroy { @Input() pageIndex: number; @Input() blocksPerPage: number = 8; @Input() minScrollWidth: number = 0; + @Input() scrollableMempool: boolean = false; + + @Output() mempoolOffsetChange: EventEmitter = new EventEmitter(); network: string; timeLtrSubscription: Subscription; timeLtr: boolean = this.stateService.timeLtr.value; ltrTransitionEnabled = false; + flipping = false; connectionStateSubscription: Subscription; loadingTip: boolean = true; connected: boolean = true; + dividerOffset: number = 0; + mempoolOffset: number = 0; + constructor( public stateService: StateService, + private cd: ChangeDetectorRef, ) {} - ngOnInit() { + ngOnInit(): void { + this.onResize(); this.network = this.stateService.network; this.timeLtrSubscription = this.stateService.timeLtr.subscribe((ltr) => { this.timeLtr = !!ltr; }); this.connectionStateSubscription = this.stateService.connectionState$.subscribe(state => { this.connected = (state === 2); - }) - firstValueFrom(this.stateService.chainTip$).then(tip => { + }); + firstValueFrom(this.stateService.chainTip$).then(() => { this.loadingTip = false; }); } - ngOnDestroy() { + ngOnDestroy(): void { this.timeLtrSubscription.unsubscribe(); this.connectionStateSubscription.unsubscribe(); } - trackByPageFn(index: number, item: { index: number }) { + trackByPageFn(index: number, item: { index: number }): number { return item.index; } - toggleTimeDirection() { - this.ltrTransitionEnabled = true; - this.stateService.timeLtr.next(!this.timeLtr); + toggleTimeDirection(): void { + this.ltrTransitionEnabled = false; + const prevOffset = this.mempoolOffset; + this.mempoolOffset = 0; + this.mempoolOffsetChange.emit(0); + setTimeout(() => { + this.ltrTransitionEnabled = true; + this.flipping = true; + this.stateService.timeLtr.next(!this.timeLtr); + setTimeout(() => { + this.ltrTransitionEnabled = false; + this.flipping = false; + this.mempoolOffset = prevOffset; + this.mempoolOffsetChange.emit(this.mempoolOffset); + }, 1000); + }, 0); + this.cd.markForCheck(); + } + + onMempoolWidthChange(width): void { + if (this.flipping) { + return; + } + this.mempoolOffset = Math.max(0, width - this.dividerOffset); + this.cd.markForCheck(); + setTimeout(() => { + this.mempoolOffsetChange.emit(this.mempoolOffset); + }, 0); + } + + @HostListener('window:resize', ['$event']) + onResize(): void { + if (window.innerWidth >= 768) { + if (this.stateService.isLiquid()) { + this.dividerOffset = 420; + } else { + this.dividerOffset = window.innerWidth * 0.5; + } + } else { + if (this.stateService.isLiquid()) { + this.dividerOffset = window.innerWidth * 0.5; + } else { + this.dividerOffset = window.innerWidth * 0.95; + } + } + this.cd.markForCheck(); } } diff --git a/frontend/src/app/components/mempool-blocks/mempool-blocks.component.ts b/frontend/src/app/components/mempool-blocks/mempool-blocks.component.ts index 561f01585..3e7ba310a 100644 --- a/frontend/src/app/components/mempool-blocks/mempool-blocks.component.ts +++ b/frontend/src/app/components/mempool-blocks/mempool-blocks.component.ts @@ -1,9 +1,9 @@ -import { Component, OnInit, OnDestroy, ChangeDetectionStrategy, ChangeDetectorRef, HostListener, Input, OnChanges, SimpleChanges } from '@angular/core'; +import { Component, OnInit, OnDestroy, ChangeDetectionStrategy, ChangeDetectorRef, HostListener, Input, OnChanges, SimpleChanges, Output, EventEmitter } from '@angular/core'; import { Subscription, Observable, fromEvent, merge, of, combineLatest } from 'rxjs'; import { MempoolBlock } from '../../interfaces/websocket.interface'; import { StateService } from '../../services/state.service'; import { Router } from '@angular/router'; -import { take, map, switchMap } from 'rxjs/operators'; +import { take, map, switchMap, tap } from 'rxjs/operators'; import { feeLevels, mempoolFeeColors } from '../../app.constants'; import { specialBlocks } from '../../app.constants'; import { RelativeUrlPipe } from '../../shared/pipes/relative-url/relative-url.pipe'; @@ -29,6 +29,9 @@ export class MempoolBlocksComponent implements OnInit, OnChanges, OnDestroy { @Input() count: number = null; @Input() spotlight: number = 0; @Input() getHref?: (index) => string = (index) => `/mempool-block/${index}`; + @Input() allBlocks: boolean = false; + + @Output() widthChange: EventEmitter = new EventEmitter(); specialBlocks = specialBlocks; mempoolBlocks: MempoolBlock[] = []; @@ -145,7 +148,12 @@ export class MempoolBlocksComponent implements OnInit, OnChanges, OnDestroy { this.updateMempoolBlockStyles(); this.calculateTransactionPosition(); + return this.mempoolBlocks; + }), + tap(() => { + this.cd.markForCheck(); + this.widthChange.emit(this.containerOffset + this.mempoolBlocks.length * this.blockOffset); }) ); @@ -254,7 +262,10 @@ export class MempoolBlocksComponent implements OnInit, OnChanges, OnDestroy { reduceEmptyBlocksToFitScreen(blocks: MempoolBlock[]): MempoolBlock[] { const innerWidth = this.stateService.env.BASE_MODULE !== 'liquid' && window.innerWidth <= 767.98 ? window.innerWidth : window.innerWidth / 2; - const blocksAmount = Math.min(this.stateService.env.MEMPOOL_BLOCKS_AMOUNT, Math.floor(innerWidth / (this.blockWidth + this.blockPadding))); + let blocksAmount = this.stateService.env.MEMPOOL_BLOCKS_AMOUNT; + if (!this.allBlocks) { + blocksAmount = Math.min(this.stateService.env.MEMPOOL_BLOCKS_AMOUNT, Math.floor(innerWidth / (this.blockWidth + this.blockPadding))); + } while (blocks.length < blocksAmount) { blocks.push({ blockSize: 0, @@ -274,10 +285,10 @@ export class MempoolBlocksComponent implements OnInit, OnChanges, OnDestroy { reduceMempoolBlocksToFitScreen(blocks: MempoolBlock[]): MempoolBlock[] { const innerWidth = this.stateService.env.BASE_MODULE !== 'liquid' && window.innerWidth <= 767.98 ? window.innerWidth : window.innerWidth / 2; - let blocksAmount; + let blocksAmount = this.stateService.env.MEMPOOL_BLOCKS_AMOUNT; if (this.count) { blocksAmount = 8; - } else { + } else if (!this.allBlocks) { blocksAmount = Math.min(this.stateService.env.MEMPOOL_BLOCKS_AMOUNT, Math.floor(innerWidth / (this.blockWidth + this.blockPadding))); } while (blocks.length > blocksAmount) { diff --git a/frontend/src/app/components/start/start.component.html b/frontend/src/app/components/start/start.component.html index ec4bf4805..5cf7b4fd9 100644 --- a/frontend/src/app/components/start/start.component.html +++ b/frontend/src/app/components/start/start.component.html @@ -18,7 +18,7 @@ (dragstart)="onDragStart($event)" (scroll)="onScroll($event)" > - +
diff --git a/frontend/src/app/components/start/start.component.ts b/frontend/src/app/components/start/start.component.ts index 3bd0c086e..1793818a9 100644 --- a/frontend/src/app/components/start/start.component.ts +++ b/frontend/src/app/components/start/start.component.ts @@ -44,6 +44,7 @@ export class StartComponent implements OnInit, OnDestroy { lastUpdate: number = 0; lastMouseX: number; velocity: number = 0; + mempoolOffset: number = 0; constructor( private stateService: StateService, @@ -117,6 +118,12 @@ export class StartComponent implements OnInit, OnDestroy { }); } + onMempoolOffsetChange(offset): void { + const delta = offset - this.mempoolOffset; + this.addConvertedScrollOffset(delta); + this.mempoolOffset = offset; + } + @HostListener('window:resize', ['$event']) onResize(): void { this.isMobile = window.innerWidth <= 767.98; @@ -350,7 +357,7 @@ export class StartComponent implements OnInit, OnDestroy { resetScroll(): void { this.scrollToBlock(this.chainTip); - this.blockchainContainer.nativeElement.scrollLeft = 0; + this.setScrollLeft(0); } getPageIndexOf(height: number): number { @@ -368,9 +375,17 @@ export class StartComponent implements OnInit, OnDestroy { getConvertedScrollOffset(): number { if (this.timeLtr) { - return -this.blockchainContainer?.nativeElement?.scrollLeft || 0; + return -(this.blockchainContainer?.nativeElement?.scrollLeft || 0) - this.mempoolOffset; } else { - return this.blockchainContainer?.nativeElement?.scrollLeft || 0; + return (this.blockchainContainer?.nativeElement?.scrollLeft || 0) - this.mempoolOffset; + } + } + + setScrollLeft(offset: number): void { + if (this.timeLtr) { + this.blockchainContainer.nativeElement.scrollLeft = offset - this.mempoolOffset; + } else { + this.blockchainContainer.nativeElement.scrollLeft = offset + this.mempoolOffset; } } @@ -388,7 +403,7 @@ export class StartComponent implements OnInit, OnDestroy { ngOnDestroy() { if (this.blockchainContainer?.nativeElement) { // clean up scroll position to prevent caching wrong scroll in Firefox - this.blockchainContainer.nativeElement.scrollLeft = 0; + this.setScrollLeft(0); } this.timeLtrSubscription.unsubscribe(); this.chainTipSubscription.unsubscribe(); From 9d606d0006e092a8fba2a813536d3af1b1198bc2 Mon Sep 17 00:00:00 2001 From: Mononaut Date: Fri, 16 Jun 2023 12:44:55 -0400 Subject: [PATCH 2/5] scroll selected mempool block into view --- .../app/components/start/start.component.ts | 40 ++++++++++++++----- 1 file changed, 31 insertions(+), 9 deletions(-) diff --git a/frontend/src/app/components/start/start.component.ts b/frontend/src/app/components/start/start.component.ts index 1793818a9..7a3b6b492 100644 --- a/frontend/src/app/components/start/start.component.ts +++ b/frontend/src/app/components/start/start.component.ts @@ -40,7 +40,7 @@ export class StartComponent implements OnInit, OnDestroy { minScrollWidth: number; pageIndex: number = 0; pages: any[] = []; - pendingMark: number | void = null; + pendingMark: number | null = null; lastUpdate: number = 0; lastMouseX: number; velocity: number = 0; @@ -71,19 +71,29 @@ export class StartComponent implements OnInit, OnDestroy { this.chainTip = height; this.tipIsSet = true; this.updatePages(); - if (this.pendingMark != null) { - this.scrollToBlock(this.pendingMark); - this.pendingMark = null; - } + this.applyPendingMarkArrow(); }); this.markBlockSubscription = this.stateService.markBlock$.subscribe((mark) => { + let blockHeight; if (mark?.blockHeight != null) { + blockHeight = mark.blockHeight; + } else if (mark?.mempoolBlockIndex != null) { + blockHeight = -1 - mark.mempoolBlockIndex; + } else if (mark?.mempoolPosition?.block != null) { + blockHeight = -1 - mark.mempoolPosition.block; + } + if (blockHeight != null) { if (this.tipIsSet) { - if (!this.blockInViewport(mark.blockHeight)) { - this.scrollToBlock(mark.blockHeight); + let scrollToHeight = blockHeight; + if (blockHeight < 0) { + scrollToHeight = this.chainTip - blockHeight; } - } else { - this.pendingMark = mark.blockHeight; + if (!this.blockInViewport(scrollToHeight)) { + this.scrollToBlock(scrollToHeight); + } + } + if (!this.tipIsSet || (blockHeight < 0 && !this.mempoolOffset)) { + this.pendingMark = blockHeight; } } }); @@ -122,6 +132,18 @@ export class StartComponent implements OnInit, OnDestroy { const delta = offset - this.mempoolOffset; this.addConvertedScrollOffset(delta); this.mempoolOffset = offset; + this.applyPendingMarkArrow(); + } + + applyPendingMarkArrow(): void { + if (this.pendingMark != null) { + if (this.pendingMark < 0) { + this.scrollToBlock(this.chainTip - this.pendingMark); + } else { + this.scrollToBlock(this.pendingMark); + } + this.pendingMark = null; + } } @HostListener('window:resize', ['$event']) From 58b805253029f71bd1ce98dd5d160231e48fceb4 Mon Sep 17 00:00:00 2001 From: Mononaut Date: Mon, 19 Jun 2023 15:19:34 -0400 Subject: [PATCH 3/5] don't reset blockchain position on every mempool update --- .../src/app/components/start/start.component.ts | 16 ++++++++++++++-- .../transaction/transaction.component.ts | 2 ++ frontend/src/app/services/state.service.ts | 3 ++- 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/frontend/src/app/components/start/start.component.ts b/frontend/src/app/components/start/start.component.ts index 7a3b6b492..22d3d6350 100644 --- a/frontend/src/app/components/start/start.component.ts +++ b/frontend/src/app/components/start/start.component.ts @@ -1,6 +1,6 @@ import { Component, ElementRef, HostListener, OnInit, OnDestroy, ViewChild, Input } from '@angular/core'; import { Subscription } from 'rxjs'; -import { StateService } from '../../services/state.service'; +import { MarkBlockState, StateService } from '../../services/state.service'; import { specialBlocks } from '../../app.constants'; @Component({ @@ -24,6 +24,7 @@ export class StartComponent implements OnInit, OnDestroy { chainTipSubscription: Subscription; chainTip: number = -1; tipIsSet: boolean = false; + lastMark: MarkBlockState; markBlockSubscription: Subscription; blockCounterSubscription: Subscription; @ViewChild('blockchainContainer') blockchainContainer: ElementRef; @@ -75,20 +76,31 @@ export class StartComponent implements OnInit, OnDestroy { }); this.markBlockSubscription = this.stateService.markBlock$.subscribe((mark) => { let blockHeight; + let newMark = true; if (mark?.blockHeight != null) { + if (this.lastMark?.blockHeight === mark.blockHeight) { + newMark = false; + } blockHeight = mark.blockHeight; } else if (mark?.mempoolBlockIndex != null) { + if (this.lastMark?.mempoolBlockIndex === mark.mempoolBlockIndex || (mark.txid && this.lastMark?.txid === mark.txid)) { + newMark = false; + } blockHeight = -1 - mark.mempoolBlockIndex; } else if (mark?.mempoolPosition?.block != null) { + if (this.lastMark?.txid === mark.txid) { + newMark = false; + } blockHeight = -1 - mark.mempoolPosition.block; } + this.lastMark = mark; if (blockHeight != null) { if (this.tipIsSet) { let scrollToHeight = blockHeight; if (blockHeight < 0) { scrollToHeight = this.chainTip - blockHeight; } - if (!this.blockInViewport(scrollToHeight)) { + if (newMark && !this.blockInViewport(scrollToHeight)) { this.scrollToBlock(scrollToHeight); } } diff --git a/frontend/src/app/components/transaction/transaction.component.ts b/frontend/src/app/components/transaction/transaction.component.ts index dd32b05e8..85b90a378 100644 --- a/frontend/src/app/components/transaction/transaction.component.ts +++ b/frontend/src/app/components/transaction/transaction.component.ts @@ -240,6 +240,7 @@ export class TransactionComponent implements OnInit, AfterViewInit, OnDestroy { this.mempoolPosition = txPosition.position; if (this.tx && !this.tx.status.confirmed) { this.stateService.markBlock$.next({ + txid: txPosition.txid, mempoolPosition: this.mempoolPosition }); this.txInBlockIndex = this.mempoolPosition.block; @@ -359,6 +360,7 @@ export class TransactionComponent implements OnInit, AfterViewInit, OnDestroy { } else { if (tx.cpfpChecked) { this.stateService.markBlock$.next({ + txid: tx.txid, txFeePerVSize: tx.effectiveFeePerVsize, mempoolPosition: this.mempoolPosition, }); diff --git a/frontend/src/app/services/state.service.ts b/frontend/src/app/services/state.service.ts index 31f5f3aab..4f00622a8 100644 --- a/frontend/src/app/services/state.service.ts +++ b/frontend/src/app/services/state.service.ts @@ -8,8 +8,9 @@ import { isPlatformBrowser } from '@angular/common'; import { map, shareReplay } from 'rxjs/operators'; import { StorageService } from './storage.service'; -interface MarkBlockState { +export interface MarkBlockState { blockHeight?: number; + txid?: string; mempoolBlockIndex?: number; txFeePerVSize?: number; mempoolPosition?: MempoolPosition; From 9e5d10b15f43b65c5460aae00e9577e2e2a08e2e Mon Sep 17 00:00:00 2001 From: Joost Jager Date: Mon, 3 Jul 2023 16:00:32 +0200 Subject: [PATCH 4/5] Add average fee delta to pool ranking Co-authored-by: mononaut <83316221+mononaut@users.noreply.github.com> --- backend/src/api/mining/mining.ts | 1 + backend/src/mempool.interfaces.ts | 1 + backend/src/repositories/PoolsRepository.ts | 3 ++- .../pool-ranking/pool-ranking.component.html | 13 +++++++++++-- .../pool-ranking/pool-ranking.component.scss | 13 ++++++++++++- frontend/src/app/interfaces/node-api.interface.ts | 1 + 6 files changed, 28 insertions(+), 4 deletions(-) diff --git a/backend/src/api/mining/mining.ts b/backend/src/api/mining/mining.ts index 1283a1846..e190492b8 100644 --- a/backend/src/api/mining/mining.ts +++ b/backend/src/api/mining/mining.ts @@ -106,6 +106,7 @@ class Mining { emptyBlocks: emptyBlocksCount.length > 0 ? emptyBlocksCount[0]['count'] : 0, slug: poolInfo.slug, avgMatchRate: poolInfo.avgMatchRate !== null ? Math.round(100 * poolInfo.avgMatchRate) / 100 : null, + avgFeeDelta: poolInfo.avgFeeDelta, }; poolsStats.push(poolStat); }); diff --git a/backend/src/mempool.interfaces.ts b/backend/src/mempool.interfaces.ts index 3edd84cde..13c74160a 100644 --- a/backend/src/mempool.interfaces.ts +++ b/backend/src/mempool.interfaces.ts @@ -19,6 +19,7 @@ export interface PoolInfo { blockCount: number; slug: string; avgMatchRate: number | null; + avgFeeDelta: number | null; } export interface PoolStats extends PoolInfo { diff --git a/backend/src/repositories/PoolsRepository.ts b/backend/src/repositories/PoolsRepository.ts index 293fd5e39..899712266 100644 --- a/backend/src/repositories/PoolsRepository.ts +++ b/backend/src/repositories/PoolsRepository.ts @@ -39,7 +39,8 @@ class PoolsRepository { pools.name AS name, pools.link AS link, slug, - AVG(blocks_audits.match_rate) AS avgMatchRate + AVG(blocks_audits.match_rate) AS avgMatchRate, + AVG((CAST(blocks.fees as SIGNED) - CAST(blocks_audits.expected_fees as SIGNED)) / NULLIF(CAST(blocks_audits.expected_fees as SIGNED), 0)) AS avgFeeDelta FROM blocks JOIN pools on pools.id = pool_id LEFT JOIN blocks_audits ON blocks_audits.height = blocks.height diff --git a/frontend/src/app/components/pool-ranking/pool-ranking.component.html b/frontend/src/app/components/pool-ranking/pool-ranking.component.html index 7b7fbfae0..6ffcbf485 100644 --- a/frontend/src/app/components/pool-ranking/pool-ranking.component.html +++ b/frontend/src/app/components/pool-ranking/pool-ranking.component.html @@ -94,7 +94,8 @@ Blocks Avg Health - Empty blocks + Avg Block Fees + Empty blocks @@ -121,7 +122,15 @@ Unknown - {{ pool.emptyBlocks }} ({{ pool.emptyBlockRatio }}%) + + + {{ pool.avgFeeDelta > 0 ? '+' : '' }}{{ (pool.avgFeeDelta * 100) | amountShortener: 2 }}% + + + - + + + {{ pool.emptyBlocks }} ({{ pool.emptyBlockRatio }}%) diff --git a/frontend/src/app/components/pool-ranking/pool-ranking.component.scss b/frontend/src/app/components/pool-ranking/pool-ranking.component.scss index fc58909f8..b82264503 100644 --- a/frontend/src/app/components/pool-ranking/pool-ranking.component.scss +++ b/frontend/src/app/components/pool-ranking/pool-ranking.component.scss @@ -110,4 +110,15 @@ .disabled { pointer-events: none; opacity: 0.5; -} \ No newline at end of file +} + +td { + .difference { + &.positive { + color: rgb(66, 183, 71); + } + &.negative { + color: rgb(183, 66, 66); + } + } +} diff --git a/frontend/src/app/interfaces/node-api.interface.ts b/frontend/src/app/interfaces/node-api.interface.ts index 648eb38ea..68c45b3b2 100644 --- a/frontend/src/app/interfaces/node-api.interface.ts +++ b/frontend/src/app/interfaces/node-api.interface.ts @@ -91,6 +91,7 @@ export interface SinglePoolStats { logo: string; slug: string; avgMatchRate: number; + avgFeeDelta: number; } export interface PoolsStats { blockCount: number; From 824c6f97e499911408394e40f1578fecfb5adabf Mon Sep 17 00:00:00 2001 From: wiz Date: Wed, 5 Jul 2023 09:32:39 +0900 Subject: [PATCH 5/5] ops: Use mempool/electrs for liquid instances --- production/install | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/production/install b/production/install index 8f3491591..5ee445a21 100755 --- a/production/install +++ b/production/install @@ -361,10 +361,10 @@ BITCOIN_ELECTRS_REPO_NAME=electrs BITCOIN_ELECTRS_REPO_BRANCH=mempool BITCOIN_ELECTRS_LATEST_RELEASE=mempool -ELEMENTS_ELECTRS_REPO_URL=https://github.com/blockstream/electrs +ELEMENTS_ELECTRS_REPO_URL=https://github.com/mempool/electrs ELEMENTS_ELECTRS_REPO_NAME=electrs -ELEMENTS_ELECTRS_REPO_BRANCH=new-index -ELEMENTS_ELECTRS_LATEST_RELEASE=new-index +ELEMENTS_ELECTRS_REPO_BRANCH=mempool +ELEMENTS_ELECTRS_LATEST_RELEASE=mempool LIQUID_ASSET_REGISTRY_DB_URL=https://github.com/blockstream/asset_registry_db LIQUID_ASSET_REGISTRY_DB_NAME=asset_registry_db