@typeberry/jam 0.4.0-4809f38 → 0.4.0-a5d5d88
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.
- package/README.md +5 -0
- package/bootstrap-generator.mjs +10 -8
- package/bootstrap-generator.mjs.map +1 -1
- package/bootstrap-importer.mjs +278 -197
- package/bootstrap-importer.mjs.map +1 -1
- package/bootstrap-network.mjs +9 -8
- package/bootstrap-network.mjs.map +1 -1
- package/index.js +280 -199
- package/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -8,6 +8,11 @@ Typeberry is a TypeScript implementation of [JAM protocol](https://graypaper.com
|
|
|
8
8
|
PRs unless the contributor waives any claims to the prize and copy rights for
|
|
9
9
|
the submitted code. By creating the PR you accept this requirement.**
|
|
10
10
|
|
|
11
|
+
## Links
|
|
12
|
+
|
|
13
|
+
- [Documentation](https://fluffylabs.dev/typeberry)
|
|
14
|
+
- [Performance Charts](https://typeberry.fluffylabs.dev)
|
|
15
|
+
|
|
11
16
|
## Implementation status
|
|
12
17
|
|
|
13
18
|
Gray Paper compliance can be controlled via `GP_VERSION` environment variable.
|
package/bootstrap-generator.mjs
CHANGED
|
@@ -2878,7 +2878,11 @@ var TestSuite;
|
|
|
2878
2878
|
})(TestSuite || (TestSuite = {}));
|
|
2879
2879
|
const ALL_VERSIONS_IN_ORDER = [GpVersion.V0_6_7, GpVersion.V0_7_0, GpVersion.V0_7_1, GpVersion.V0_7_2];
|
|
2880
2880
|
const DEFAULT_SUITE = TestSuite.W3F_DAVXY;
|
|
2881
|
-
|
|
2881
|
+
/**
|
|
2882
|
+
* Current version is set to track the jam-conformance testing.
|
|
2883
|
+
* Since we are currently at 0.7.1 not 0.7.2, we set our default version accordingly.
|
|
2884
|
+
*/
|
|
2885
|
+
const DEFAULT_VERSION = GpVersion.V0_7_1;
|
|
2882
2886
|
const env = typeof process === "undefined" ? {} : process.env;
|
|
2883
2887
|
let CURRENT_VERSION = parseCurrentVersion(env.GP_VERSION) ?? DEFAULT_VERSION;
|
|
2884
2888
|
let CURRENT_SUITE = parseCurrentSuite(env.TEST_SUITE) ?? DEFAULT_SUITE;
|
|
@@ -2937,8 +2941,8 @@ class Compatibility {
|
|
|
2937
2941
|
/**
|
|
2938
2942
|
* Allows selecting different values for different Gray Paper versions from one record.
|
|
2939
2943
|
*
|
|
2940
|
-
*
|
|
2941
|
-
*
|
|
2944
|
+
* fallback The default value to return if no value is found for the current.
|
|
2945
|
+
* versions A record mapping versions to values, checking if the version is greater or equal to the current version.
|
|
2942
2946
|
* @returns The value for the current version, or the default value.
|
|
2943
2947
|
*/
|
|
2944
2948
|
static selectIfGreaterOrEqual({ fallback, versions, }) {
|
|
@@ -3101,7 +3105,7 @@ const workspacePathFix = dev_env.NODE_ENV === "development"
|
|
|
3101
3105
|
|
|
3102
3106
|
;// CONCATENATED MODULE: ./packages/core/utils/opaque.ts
|
|
3103
3107
|
/**
|
|
3104
|
-
*
|
|
3108
|
+
* `Opaque<Type, Token>` constructs a unique type which is a subset of Type with a
|
|
3105
3109
|
* specified unique token Token. It means that base type cannot be assigned to unique type by accident.
|
|
3106
3110
|
* Good examples of opaque types include:
|
|
3107
3111
|
* - JWTs or other tokens - these are special kinds of string used for authorization purposes.
|
|
@@ -9024,11 +9028,9 @@ function reencodeAsView(codec, object, chainSpec) {
|
|
|
9024
9028
|
|
|
9025
9029
|
/** Helper function to create most used hashes in the block */
|
|
9026
9030
|
class TransitionHasher {
|
|
9027
|
-
context;
|
|
9028
9031
|
keccakHasher;
|
|
9029
9032
|
blake2b;
|
|
9030
|
-
constructor(
|
|
9031
|
-
this.context = context;
|
|
9033
|
+
constructor(keccakHasher, blake2b) {
|
|
9032
9034
|
this.keccakHasher = keccakHasher;
|
|
9033
9035
|
this.blake2b = blake2b;
|
|
9034
9036
|
}
|
|
@@ -10965,7 +10967,7 @@ class Generator {
|
|
|
10965
10967
|
// select validator for block
|
|
10966
10968
|
const validatorId = tryAsValidatorIndex(newTimeSlot % 6);
|
|
10967
10969
|
// retriev data from previous block
|
|
10968
|
-
const hasher = new TransitionHasher(this.
|
|
10970
|
+
const hasher = new TransitionHasher(this.keccakHasher, this.blake2b);
|
|
10969
10971
|
const parentHeaderHash = this.lastHeaderHash;
|
|
10970
10972
|
const stateRoot = this.states.getStateRoot(this.lastState);
|
|
10971
10973
|
// create extrinsic
|