diff --git a/packages/cli/src/base.ts b/packages/cli/src/base.ts index ea9b0af30..cb048faf6 100644 --- a/packages/cli/src/base.ts +++ b/packages/cli/src/base.ts @@ -108,7 +108,7 @@ export abstract class BaseCommand extends CeloCommand { } } - protected onError(): void { + async finally(arg?: Error): Promise { try { if (this._kit !== null) { this._kit.connection.stop() @@ -116,6 +116,8 @@ export abstract class BaseCommand extends CeloCommand { } catch (error) { this.log(`Failed to close the connection: ${error}`) } + + super.finally(arg) } protected async checkIfL2(): Promise { diff --git a/packages/cli/src/celo.ts b/packages/cli/src/celo.ts index cb4a3c296..84eeab91d 100644 --- a/packages/cli/src/celo.ts +++ b/packages/cli/src/celo.ts @@ -101,8 +101,6 @@ export abstract class CeloCommand extends Command { protected abstract checkIfL2(): Promise - protected onError(_: any) {} - protected async getNodeUrl(): Promise { const res = await this.parse() @@ -167,8 +165,6 @@ https://github.com/celo-org/developer-tooling/issues/new?assignees=&labels=bug+r arg ) } - - this.onError(arg) } return super.finally(arg) diff --git a/packages/cli/src/commands/network/info.ts b/packages/cli/src/commands/network/info.ts index 6e236bbe9..611ad76b4 100644 --- a/packages/cli/src/commands/network/info.ts +++ b/packages/cli/src/commands/network/info.ts @@ -113,7 +113,7 @@ export default class Info extends ViemCommand { printValueMapRecursive({ blockNumber, epochs: epochs.length === 1 ? epochs[0] : epochs, - ...(isL2 && { epochDuration: epochSize }), + ...(isL2 && { epochDuration: Number(epochSize) }), ...(!isL2 && { epochSize }), }) } diff --git a/packages/cli/src/commands/network/parameters-l2.test.ts b/packages/cli/src/commands/network/parameters-l2.test.ts index 17c09937b..1d6363626 100644 --- a/packages/cli/src/commands/network/parameters-l2.test.ts +++ b/packages/cli/src/commands/network/parameters-l2.test.ts @@ -20,12 +20,12 @@ testWithAnvilL2('network:parameters', (web3) => { currentThreshold: 60000000000000000000 (~6.000e+19) electabilityThreshold: 0.001 electableValidators: - max: 100 - min: 1 - maxNumGroupsVotedFor: 10 + max: 100 + min: 1 + maxNumGroupsVotedFor: 10 totalVotes: 60000000000000000000000 (~6.000e+22) EpochManager: - currentEpochNumber: 4 + currentEpochNumber: 4 epochDuration: 86400 isTimeForNextEpoch: false FeeCurrencyDirectory: @@ -34,7 +34,7 @@ testWithAnvilL2('network:parameters', (web3) => { 0x9cA64d4663B4A623C3E9a7F9155451647592bEc7: 21000 (~2.100e+4) 0xC458f5ab25a47741205722d465cDea9aB1E1154A: 21000 (~2.100e+4) Governance: - concurrentProposals: 3 + concurrentProposals: 3 dequeueFrequency: 4 hours minDeposit: 100000000000000000000 (~1.000e+20) participationParameters: @@ -50,8 +50,8 @@ testWithAnvilL2('network:parameters', (web3) => { totalLockedGold: 120000000000000000000000 (~1.200e+23) unlockingPeriod: 6 hours Reserve: - frozenReserveGoldDays: 0 - frozenReserveGoldStartBalance: 0 + frozenReserveGoldDays: 0 + frozenReserveGoldStartBalance: 0 frozenReserveGoldStartDay: 19991 (~1.999e+4) otherReserveAddresses: @@ -60,12 +60,12 @@ testWithAnvilL2('network:parameters', (web3) => { reportExpiry: 5 minutes Validators: commissionUpdateDelay: 3 days - downtimeGracePeriod: 0 + downtimeGracePeriod: 0 groupLockedGoldRequirements: duration: 6 months value: 10000000000000000000000 (~1.000e+22) - maxGroupSize: 2 - membershipHistoryLength: 60 + maxGroupSize: 2 + membershipHistoryLength: 60 slashingMultiplierResetPeriod: 1 month validatorLockedGoldRequirements: duration: 2 months diff --git a/packages/cli/src/commands/network/parameters.test.ts b/packages/cli/src/commands/network/parameters.test.ts index 94c5387b7..dac2f35c6 100644 --- a/packages/cli/src/commands/network/parameters.test.ts +++ b/packages/cli/src/commands/network/parameters.test.ts @@ -26,9 +26,9 @@ testWithAnvilL1('network:parameters', (web3: Web3) => { currentThreshold: 60000000000000000000 (~6.000e+19) electabilityThreshold: 0.001 electableValidators: - max: 100 - min: 1 - maxNumGroupsVotedFor: 10 + max: 100 + min: 1 + maxNumGroupsVotedFor: 10 totalVotes: 60000000000000000000000 (~6.000e+22) EpochRewards: carbonOffsetting: @@ -49,7 +49,7 @@ testWithAnvilL1('network:parameters', (web3: Web3) => { gasPriceMinimum: 100000000 (~1.000e+8) targetDensity: 0.5 Governance: - concurrentProposals: 3 + concurrentProposals: 3 dequeueFrequency: 4 hours minDeposit: 100000000000000000000 (~1.000e+20) participationParameters: @@ -65,8 +65,8 @@ testWithAnvilL1('network:parameters', (web3: Web3) => { totalLockedGold: 120000000000000000000000 (~1.200e+23) unlockingPeriod: 6 hours Reserve: - frozenReserveGoldDays: 0 - frozenReserveGoldStartBalance: 0 + frozenReserveGoldDays: 0 + frozenReserveGoldStartBalance: 0 frozenReserveGoldStartDay: 19991 (~1.999e+4) otherReserveAddresses: @@ -75,12 +75,12 @@ testWithAnvilL1('network:parameters', (web3: Web3) => { reportExpiry: 5 minutes Validators: commissionUpdateDelay: 3 days - downtimeGracePeriod: 0 + downtimeGracePeriod: 0 groupLockedGoldRequirements: duration: 6 months value: 10000000000000000000000 (~1.000e+22) - maxGroupSize: 2 - membershipHistoryLength: 60 + maxGroupSize: 2 + membershipHistoryLength: 60 slashingMultiplierResetPeriod: 1 month validatorLockedGoldRequirements: duration: 2 months diff --git a/packages/cli/src/utils/cli.ts b/packages/cli/src/utils/cli.ts index b0c37478b..7a23e6cd7 100644 --- a/packages/cli/src/utils/cli.ts +++ b/packages/cli/src/utils/cli.ts @@ -106,16 +106,16 @@ function toStringValueMapRecursive(valueMap: Record, prefix: string const printValue = (v: any): string => { if (typeof v === 'object' && v != null) { if (BigNumber.isBigNumber(v)) { - const extra = v.isGreaterThan(new BigNumber(10).pow(3)) ? `(~${v.toExponential(3)})` : '' - return `${v.toFixed()} ${extra}` + const extra = v.isGreaterThan(new BigNumber(10).pow(3)) ? ` (~${v.toExponential(3)})` : '' + return `${v.toFixed()}${extra}` } else if (v instanceof Error) { return '\n' + chalk.red(v.message) } return '\n' + toStringValueMapRecursive(v, prefix + ' ') } else if (typeof v === 'bigint') { - const extra = v > 1000n ? `(~${Number(v).toExponential(3)})` : '' + const extra = v > 1000n ? ` (~${Number(v).toExponential(3)})` : '' - return `${v} ${extra}` + return `${v}${extra}` } else if (typeof v === 'number') { return `${v}` }