@mainsail/blockchain-utils 0.0.1-evm.28 → 0.0.1-evm.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -10,6 +10,8 @@ var __metadata = (this && this.__metadata) || function (k, v) {
10
10
  import { inject, injectable } from "@mainsail/container";
11
11
  import { Contracts, Identifiers } from "@mainsail/contracts";
12
12
  let ProposerCalculator = class ProposerCalculator {
13
+ configuration;
14
+ stateStore;
13
15
  getValidatorIndex(round) {
14
16
  const { roundValidators } = this.configuration.getMilestone();
15
17
  return (this.stateStore.getTotalRound() + round) % roundValidators; // This method will work fine on roundValidators change. We are not trying to get sequential indexes on value change, because validators are randomized every round.
@@ -1 +1 @@
1
- {"version":3,"file":"proposer-calculator.js","sourceRoot":"","sources":["../source/proposer-calculator.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGtD,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAOvB,iBAAiB,CAAC,KAAa;QACrC,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;QAE9D,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,GAAG,KAAK,CAAC,GAAG,eAAe,CAAC,CAAC,oKAAoK;IACzO,CAAC;CACD,CAAA;AAViB;IADhB,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,aAAa,CAAC;;yDACiB;AAG/C;IADhB,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC;;sDACoB;AALxC,kBAAkB;IAD9B,UAAU,EAAE;GACA,kBAAkB,CAY9B"}
1
+ {"version":3,"file":"proposer-calculator.js","sourceRoot":"","sources":["../source/proposer-calculator.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGtD,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAEb,aAAa,CAAkC;IAG/C,UAAU,CAAyB;IAE7C,iBAAiB,CAAC,KAAa;QACrC,MAAM,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;QAE9D,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,GAAG,KAAK,CAAC,GAAG,eAAe,CAAC,CAAC,oKAAoK;IACzO,CAAC;CACD,CAAA;AAViB;IADhB,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,aAAa,CAAC;;yDACiB;AAG/C;IADhB,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC;;sDACoB;AALxC,kBAAkB;IAD9B,UAAU,EAAE;GACA,kBAAkB,CAY9B"}
@@ -11,24 +11,7 @@ import { inject, injectable } from "@mainsail/container";
11
11
  import { Contracts, Exceptions, Identifiers } from "@mainsail/contracts";
12
12
  import { assert } from "@mainsail/utils";
13
13
  let RoundCalculator = class RoundCalculator {
14
- constructor() {
15
- this.getMilestonesWhichAffectActiveValidatorCount = (configuration) => {
16
- const genesisHeight = this.configuration.getGenesisHeight();
17
- const milestones = [
18
- {
19
- data: configuration.getMilestone(genesisHeight).roundValidators,
20
- found: true,
21
- height: genesisHeight,
22
- },
23
- ];
24
- let nextMilestone = configuration.getNextMilestoneWithNewKey(genesisHeight, "roundValidators");
25
- while (nextMilestone.found) {
26
- milestones.push(nextMilestone);
27
- nextMilestone = configuration.getNextMilestoneWithNewKey(nextMilestone.height, "roundValidators");
28
- }
29
- return milestones;
30
- };
31
- }
14
+ configuration;
32
15
  isNewRound(height) {
33
16
  const milestones = this.configuration.get("milestones");
34
17
  const genesisHeight = this.configuration.getGenesisHeight();
@@ -110,6 +93,22 @@ let RoundCalculator = class RoundCalculator {
110
93
  roundHeight,
111
94
  };
112
95
  }
96
+ getMilestonesWhichAffectActiveValidatorCount = (configuration) => {
97
+ const genesisHeight = this.configuration.getGenesisHeight();
98
+ const milestones = [
99
+ {
100
+ data: configuration.getMilestone(genesisHeight).roundValidators,
101
+ found: true,
102
+ height: genesisHeight,
103
+ },
104
+ ];
105
+ let nextMilestone = configuration.getNextMilestoneWithNewKey(genesisHeight, "roundValidators");
106
+ while (nextMilestone.found) {
107
+ milestones.push(nextMilestone);
108
+ nextMilestone = configuration.getNextMilestoneWithNewKey(nextMilestone.height, "roundValidators");
109
+ }
110
+ return milestones;
111
+ };
113
112
  };
114
113
  __decorate([
115
114
  inject(Identifiers.Cryptography.Configuration),
@@ -1 +1 @@
1
- {"version":3,"file":"round-calculator.js","sourceRoot":"","sources":["../source/round-calculator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"round-calculator.js","sourceRoot":"","sources":["../source/round-calculator.ts"],"names":[],"mappings":"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"}
@@ -10,26 +10,25 @@ var __metadata = (this && this.__metadata) || function (k, v) {
10
10
  import { inject, injectable } from "@mainsail/container";
11
11
  import { Contracts, Identifiers } from "@mainsail/contracts";
12
12
  let TimestampCalculator = class TimestampCalculator {
13
- constructor() {
14
- this.calculateMinimalTimestamp = (previousBlock, round) => {
15
- // Hard limit to prevent overflow
16
- if (round > 100_000) {
17
- throw new Error(`Round ${round} is too high`);
18
- }
19
- const milestone = this.configuration.getMilestone(previousBlock.data.number + 1);
20
- const roundForMath = Math.max(0, round - 1);
21
- return (previousBlock.data.timestamp +
22
- // Append block time
23
- milestone.timeouts.blockTime +
24
- // Round timeout without increase
25
- round * milestone.timeouts.stageTimeout +
26
- // Add increase for each round. Using arithmetic progression formula
27
- 0.5 *
28
- roundForMath *
29
- (2 * milestone.timeouts.stageTimeoutIncrease +
30
- (roundForMath - 1) * milestone.timeouts.stageTimeoutIncrease));
31
- };
32
- }
13
+ configuration;
14
+ calculateMinimalTimestamp = (previousBlock, round) => {
15
+ // Hard limit to prevent overflow
16
+ if (round > 100_000) {
17
+ throw new Error(`Round ${round} is too high`);
18
+ }
19
+ const milestone = this.configuration.getMilestone(previousBlock.data.number + 1);
20
+ const roundForMath = Math.max(0, round - 1);
21
+ return (previousBlock.data.timestamp +
22
+ // Append block time
23
+ milestone.timeouts.blockTime +
24
+ // Round timeout without increase
25
+ round * milestone.timeouts.stageTimeout +
26
+ // Add increase for each round. Using arithmetic progression formula
27
+ 0.5 *
28
+ roundForMath *
29
+ (2 * milestone.timeouts.stageTimeoutIncrease +
30
+ (roundForMath - 1) * milestone.timeouts.stageTimeoutIncrease));
31
+ };
33
32
  };
34
33
  __decorate([
35
34
  inject(Identifiers.Cryptography.Configuration),
@@ -1 +1 @@
1
- {"version":3,"file":"timestamp-calculator.js","sourceRoot":"","sources":["../source/timestamp-calculator.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGtD,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IAAzB;QAIN,8BAAyB,GAAG,CAAC,aAAqC,EAAE,KAAa,EAAU,EAAE;YAC5F,iCAAiC;YACjC,IAAI,KAAK,GAAG,OAAO,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,cAAc,CAAC,CAAC;YAC/C,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACjF,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;YAE5C,OAAO,CACN,aAAa,CAAC,IAAI,CAAC,SAAS;gBAC5B,oBAAoB;gBACpB,SAAS,CAAC,QAAQ,CAAC,SAAS;gBAC5B,iCAAiC;gBACjC,KAAK,GAAG,SAAS,CAAC,QAAQ,CAAC,YAAY;gBACvC,oEAAoE;gBACpE,GAAG;oBACF,YAAY;oBACZ,CAAC,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC,oBAAoB;wBAC3C,CAAC,YAAY,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAC/D,CAAC;QACH,CAAC,CAAC;IACH,CAAC;CAAA,CAAA;AAxBiB;IADhB,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,aAAa,CAAC;;0DACiB;AAFpD,mBAAmB;IAD/B,UAAU,EAAE;GACA,mBAAmB,CA0B/B"}
1
+ {"version":3,"file":"timestamp-calculator.js","sourceRoot":"","sources":["../source/timestamp-calculator.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGtD,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IAEd,aAAa,CAAkC;IAEhE,yBAAyB,GAAG,CAAC,aAAqC,EAAE,KAAa,EAAU,EAAE;QAC5F,iCAAiC;QACjC,IAAI,KAAK,GAAG,OAAO,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,SAAS,KAAK,cAAc,CAAC,CAAC;QAC/C,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACjF,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QAE5C,OAAO,CACN,aAAa,CAAC,IAAI,CAAC,SAAS;YAC5B,oBAAoB;YACpB,SAAS,CAAC,QAAQ,CAAC,SAAS;YAC5B,iCAAiC;YACjC,KAAK,GAAG,SAAS,CAAC,QAAQ,CAAC,YAAY;YACvC,oEAAoE;YACpE,GAAG;gBACF,YAAY;gBACZ,CAAC,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC,oBAAoB;oBAC3C,CAAC,YAAY,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAC/D,CAAC;IACH,CAAC,CAAC;CACF,CAAA;AAxBiB;IADhB,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,aAAa,CAAC;;0DACiB;AAFpD,mBAAmB;IAD/B,UAAU,EAAE;GACA,mBAAmB,CA0B/B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mainsail/blockchain-utils",
3
- "version": "0.0.1-evm.28",
3
+ "version": "0.0.1-evm.30",
4
4
  "description": "Common blockchain utils for the Mainsail blockchain.",
5
5
  "license": "GPL-3.0-only",
6
6
  "contributors": [],
@@ -11,10 +11,10 @@
11
11
  "/distribution"
12
12
  ],
13
13
  "dependencies": {
14
- "@mainsail/contracts": "0.0.1-evm.28",
15
- "@mainsail/kernel": "0.0.1-evm.28",
16
- "@mainsail/container": "0.0.1-evm.28",
17
- "@mainsail/utils": "0.0.1-evm.28"
14
+ "@mainsail/container": "0.0.1-evm.30",
15
+ "@mainsail/kernel": "0.0.1-evm.30",
16
+ "@mainsail/utils": "0.0.1-evm.30",
17
+ "@mainsail/contracts": "0.0.1-evm.30"
18
18
  },
19
19
  "devDependencies": {
20
20
  "uvu": "0.5.6"
@@ -23,9 +23,9 @@
23
23
  "node": ">=20.x"
24
24
  },
25
25
  "scripts": {
26
- "build": "pnpm run clean && tsc",
26
+ "build": "tsc -b",
27
27
  "build:watch": "pnpm run clean && tsc -w",
28
- "clean": "del distribution",
28
+ "clean": "del distribution && del tsconfig.tsbuildinfo",
29
29
  "release": "pnpm publish --access public",
30
30
  "test": "pnpm run uvu source .test.ts",
31
31
  "test:coverage": "c8 -r=text -r=lcov --all pnpm run test",