diff --git a/packages/api/package.json b/packages/api/package.json index b7a5493f9e..a5d37edbe5 100644 --- a/packages/api/package.json +++ b/packages/api/package.json @@ -70,8 +70,8 @@ "check-readme": "typescript-docs-verifier" }, "dependencies": { - "@chainsafe/persistent-merkle-tree": "^1.2.0", - "@chainsafe/ssz": "^1.2.1", + "@chainsafe/persistent-merkle-tree": "^1.2.1", + "@chainsafe/ssz": "^1.2.2", "@lodestar/config": "^1.33.0", "@lodestar/params": "^1.33.0", "@lodestar/types": "^1.33.0", diff --git a/packages/beacon-node/package.json b/packages/beacon-node/package.json index 1f56d088f2..6d0c4bf3e6 100644 --- a/packages/beacon-node/package.json +++ b/packages/beacon-node/package.json @@ -98,10 +98,10 @@ "@chainsafe/enr": "^5.0.1", "@chainsafe/libp2p-gossipsub": "^14.1.1", "@chainsafe/libp2p-noise": "^16.1.0", - "@chainsafe/persistent-merkle-tree": "^1.2.0", + "@chainsafe/persistent-merkle-tree": "^1.2.1", "@chainsafe/prometheus-gc-stats": "^1.0.0", "@chainsafe/pubkey-index-map": "^3.0.0", - "@chainsafe/ssz": "^1.2.1", + "@chainsafe/ssz": "^1.2.2", "@chainsafe/threads": "^1.11.2", "@crate-crypto/node-eth-kzg": "0.8.0", "@ethersproject/abi": "^5.7.0", diff --git a/packages/cli/package.json b/packages/cli/package.json index 40a4fc5719..30acbcc8c5 100644 --- a/packages/cli/package.json +++ b/packages/cli/package.json @@ -56,8 +56,8 @@ "@chainsafe/blst": "^2.2.0", "@chainsafe/discv5": "^11.0.3", "@chainsafe/enr": "^5.0.1", - "@chainsafe/persistent-merkle-tree": "^1.2.0", - "@chainsafe/ssz": "^1.2.1", + "@chainsafe/persistent-merkle-tree": "^1.2.1", + "@chainsafe/ssz": "^1.2.2", "@chainsafe/threads": "^1.11.2", "@libp2p/crypto": "^5.0.15", "@libp2p/interface": "^2.7.0", @@ -74,7 +74,6 @@ "@lodestar/utils": "^1.33.0", "@lodestar/validator": "^1.33.0", "@multiformats/multiaddr": "^12.1.3", - "cpu-features": "^0.0.10", "deepmerge": "^4.3.1", "ethers": "^6.7.0", "find-up": "^6.3.0", @@ -89,7 +88,6 @@ }, "devDependencies": { "@lodestar/test-utils": "^1.33.0", - "@types/cpu-features": "^0.0.3", "@types/debug": "^4.1.7", "@types/inquirer": "^9.0.3", "@types/proper-lockfile": "^4.1.4", diff --git a/packages/cli/src/applyPreset.ts b/packages/cli/src/applyPreset.ts index 1df08710fe..6955f37541 100644 --- a/packages/cli/src/applyPreset.ts +++ b/packages/cli/src/applyPreset.ts @@ -1,23 +1,9 @@ // MUST import this file first before anything and not import any Lodestar code. import {setHasher} from "@chainsafe/persistent-merkle-tree"; -import {hasher as asSha256Hasher} from "@chainsafe/persistent-merkle-tree/hasher/as-sha256"; import {hasher as hashtreeHasher} from "@chainsafe/persistent-merkle-tree/hasher/hashtree"; -import CpuFeatures from "cpu-features"; -// without setting this first, persistent-merkle-tree will use noble instead -const cpuFeatures = CpuFeatures(); -if ( - cpuFeatures.arch === "x86" && - !( - (cpuFeatures.flags.avx512f && cpuFeatures.flags.avx512vl) || - (cpuFeatures.flags.avx2 && cpuFeatures.flags.bmi2) || - (cpuFeatures.flags.avx && cpuFeatures.flags.sha) - ) -) { - setHasher(asSha256Hasher); -} else { - setHasher(hashtreeHasher); -} +// Without setting this first, persistent-merkle-tree will use noble instead +setHasher(hashtreeHasher); // // ## Rationale diff --git a/packages/config/package.json b/packages/config/package.json index 4c6a72b327..0c5a2f72c3 100644 --- a/packages/config/package.json +++ b/packages/config/package.json @@ -64,7 +64,7 @@ "blockchain" ], "dependencies": { - "@chainsafe/ssz": "^1.2.1", + "@chainsafe/ssz": "^1.2.2", "@lodestar/params": "^1.33.0", "@lodestar/types": "^1.33.0", "@lodestar/utils": "^1.33.0" diff --git a/packages/db/package.json b/packages/db/package.json index c8a8239645..2c62e453c3 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -35,7 +35,7 @@ "check-readme": "typescript-docs-verifier" }, "dependencies": { - "@chainsafe/ssz": "^1.2.1", + "@chainsafe/ssz": "^1.2.2", "@lodestar/config": "^1.33.0", "@lodestar/utils": "^1.33.0", "classic-level": "^1.4.1", diff --git a/packages/fork-choice/package.json b/packages/fork-choice/package.json index 9f4c692893..d9e7153e45 100644 --- a/packages/fork-choice/package.json +++ b/packages/fork-choice/package.json @@ -36,7 +36,7 @@ "check-readme": "typescript-docs-verifier" }, "dependencies": { - "@chainsafe/ssz": "^1.2.1", + "@chainsafe/ssz": "^1.2.2", "@lodestar/config": "^1.33.0", "@lodestar/params": "^1.33.0", "@lodestar/state-transition": "^1.33.0", diff --git a/packages/light-client/package.json b/packages/light-client/package.json index 047115a2b9..763672b8e7 100644 --- a/packages/light-client/package.json +++ b/packages/light-client/package.json @@ -72,8 +72,8 @@ "dependencies": { "@chainsafe/bls": "8.2.0", "@chainsafe/blst": "^2.2.0", - "@chainsafe/persistent-merkle-tree": "^1.2.0", - "@chainsafe/ssz": "^1.2.1", + "@chainsafe/persistent-merkle-tree": "^1.2.1", + "@chainsafe/ssz": "^1.2.2", "@lodestar/api": "^1.33.0", "@lodestar/config": "^1.33.0", "@lodestar/params": "^1.33.0", diff --git a/packages/prover/src/cli/applyPreset.ts b/packages/prover/src/cli/applyPreset.ts index 7d648aa608..2ef0a430db 100644 --- a/packages/prover/src/cli/applyPreset.ts +++ b/packages/prover/src/cli/applyPreset.ts @@ -1,23 +1,9 @@ // MUST import this file first before anything and not import any Lodestar code. import {setHasher} from "@chainsafe/persistent-merkle-tree"; -import {hasher as asSha256Hasher} from "@chainsafe/persistent-merkle-tree/hasher/as-sha256"; import {hasher as hashtreeHasher} from "@chainsafe/persistent-merkle-tree/hasher/hashtree"; -import CpuFeatures from "cpu-features"; -// without setting this first, persistent-merkle-tree will use noble instead -const cpuFeatures = CpuFeatures(); -if ( - cpuFeatures.arch === "x86" && - !( - (cpuFeatures.flags.avx512f && cpuFeatures.flags.avx512vl) || - (cpuFeatures.flags.avx2 && cpuFeatures.flags.bmi2) || - (cpuFeatures.flags.avx && cpuFeatures.flags.sha) - ) -) { - setHasher(asSha256Hasher); -} else { - setHasher(hashtreeHasher); -} +// Without setting this first, persistent-merkle-tree will use noble instead +setHasher(hashtreeHasher); // // ## Rationale diff --git a/packages/state-transition/package.json b/packages/state-transition/package.json index a69648ced6..7d1bdfd8fe 100644 --- a/packages/state-transition/package.json +++ b/packages/state-transition/package.json @@ -60,10 +60,10 @@ "dependencies": { "@chainsafe/as-sha256": "^1.2.0", "@chainsafe/blst": "^2.2.0", - "@chainsafe/persistent-merkle-tree": "^1.2.0", + "@chainsafe/persistent-merkle-tree": "^1.2.1", "@chainsafe/persistent-ts": "^1.0.0", "@chainsafe/pubkey-index-map": "^3.0.0", - "@chainsafe/ssz": "^1.2.1", + "@chainsafe/ssz": "^1.2.2", "@chainsafe/swap-or-not-shuffle": "^1.2.1", "@lodestar/config": "^1.33.0", "@lodestar/params": "^1.33.0", diff --git a/packages/types/package.json b/packages/types/package.json index a56630ddae..f2e8c320fb 100644 --- a/packages/types/package.json +++ b/packages/types/package.json @@ -68,7 +68,7 @@ }, "types": "lib/index.d.ts", "dependencies": { - "@chainsafe/ssz": "^1.2.1", + "@chainsafe/ssz": "^1.2.2", "@lodestar/params": "^1.33.0", "ethereum-cryptography": "^2.0.0" }, diff --git a/packages/validator/package.json b/packages/validator/package.json index 9e0ceb7c52..75e3e0f3b1 100644 --- a/packages/validator/package.json +++ b/packages/validator/package.json @@ -46,7 +46,7 @@ ], "dependencies": { "@chainsafe/blst": "^2.2.0", - "@chainsafe/ssz": "^1.2.1", + "@chainsafe/ssz": "^1.2.2", "@lodestar/api": "^1.33.0", "@lodestar/config": "^1.33.0", "@lodestar/db": "^1.33.0", diff --git a/yarn.lock b/yarn.lock index 92b58f326a..7c1b14e9a9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -587,29 +587,47 @@ optionalDependencies: "@node-rs/crc32" "^1.10.6" -"@chainsafe/hashtree-darwin-arm64@1.0.1": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@chainsafe/hashtree-darwin-arm64/-/hashtree-darwin-arm64-1.0.1.tgz#e2c60090c56a1c8dc8bdff329856184ad32e4cd5" - integrity sha512-+KmEgQMpO7FDL3klAcpXbQ4DPZvfCe0qSaBBrtT4vLF8V1JGm3sp+j7oibtxtOsLKz7nJMiK1pZExi7vjXu8og== +"@chainsafe/hashtree-darwin-arm64@1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@chainsafe/hashtree-darwin-arm64/-/hashtree-darwin-arm64-1.0.2.tgz#fcf09de55e8b666fa86d2136d285a4ea55f066c0" + integrity sha512-yIIwn9SUR5ZTl2vN1QqRtDFL/w2xYW4o68A1k8UexMbieGAnE7Ab7NvtCZRHRe8x0eONO46F/bWn5bxxyYlFXw== -"@chainsafe/hashtree-linux-arm64-gnu@1.0.1": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@chainsafe/hashtree-linux-arm64-gnu/-/hashtree-linux-arm64-gnu-1.0.1.tgz#49d2604a6c9106219448af3eaf76f4da6e44daca" - integrity sha512-p1hnhGq2aFY+Zhdn1Q6L/6yLYNKjqXfn/Pc8jiM0e3+Lf/hB+yCdqYVu1pto26BrZjugCFZfupHaL4DjUTDttw== +"@chainsafe/hashtree-linux-arm64-gnu@1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@chainsafe/hashtree-linux-arm64-gnu/-/hashtree-linux-arm64-gnu-1.0.2.tgz#0af39b6f25ed77a2185151484c67636c3bfd7138" + integrity sha512-MDz1xBRTRHw2eezGqx1Ff8NoeUUQP3bhbeeVG8ZZTkFYqvRc8O65OQOTtgO+fFGvqnDjVBSRHmiTXU5eNeH/mQ== -"@chainsafe/hashtree-linux-x64-gnu@1.0.1": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@chainsafe/hashtree-linux-x64-gnu/-/hashtree-linux-x64-gnu-1.0.1.tgz#31c5a2bb196b78f04f2bf4bfb5c1bf1f3331f071" - integrity sha512-uCIGuUWuWV0LiB4KLMy6JFa7Jp6NmPl3hKF5BYWu8TzUBe7vSXMZfqTzGxXPggFYN2/0KymfRdG9iDCOJfGRqg== +"@chainsafe/hashtree-linux-arm64-musl@1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@chainsafe/hashtree-linux-arm64-musl/-/hashtree-linux-arm64-musl-1.0.2.tgz#40911e7427d88a1febca23f96f83f009977dbbf9" + integrity sha512-BUy+/9brJwAFAtraro4y/1F+aP/8j/7HrnYdde8PTu7jHWAClI9xZygadaJbk0GoWxyCOUAJKUs8KHVnYxJDeg== -"@chainsafe/hashtree@1.0.1": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@chainsafe/hashtree/-/hashtree-1.0.1.tgz#587666a261e1da6a37904095ce875fddc53c7c89" - integrity sha512-bleu9FjqBeR/l6W1u2Lz+HsS0b0LLJX2eUt3hOPBN7VqOhidx8wzkVh2S7YurS+iTQtfdK4K5QU9tcTGNrGwDg== +"@chainsafe/hashtree-linux-x64-gnu@1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@chainsafe/hashtree-linux-x64-gnu/-/hashtree-linux-x64-gnu-1.0.2.tgz#98d30f22200c0a4afd496b1466c51f9a42aa9e4f" + integrity sha512-bFy9ffFG77SivmeOjOlZmOCrxzQ/WqUESy0I+dW6IX7wquTXHldJKWvohs9+FEn3TSXgeigFmEATz5tfxBfIZw== + +"@chainsafe/hashtree-linux-x64-musl@1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@chainsafe/hashtree-linux-x64-musl/-/hashtree-linux-x64-musl-1.0.2.tgz#b7aa71150dd6c4687a0f529a5cee052e36a99fb3" + integrity sha512-mbJB3C0RjwpqOMPZIUQm3IBH6d3sYiKDXMU6ORt5nuk7Ix2I80xxffAciDO1d7kKNnW6HStOj5s/rGhIDxK1ug== + +"@chainsafe/hashtree-win32-x64-msvc@1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@chainsafe/hashtree-win32-x64-msvc/-/hashtree-win32-x64-msvc-1.0.2.tgz#1b9fbb3f6a4b51f36b9efd42db9ab0308580b518" + integrity sha512-wXFhGqaydgadefQbjSTGqZY1R1MBhnJj+gbJhULNRUXco5pHsXfOk3QhCDAefp1PPW+wQwfT4clEnQCqJIf58w== + +"@chainsafe/hashtree@1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@chainsafe/hashtree/-/hashtree-1.0.2.tgz#2a16b49e491bef9e5760cd1010363cb3d1351fb8" + integrity sha512-OaWjsZ6S/GaT2RvaqdpsF5Mux8qQOE2KbitX2yHmQJZNUZkdh7C3N4PA5LsvewqX+z8Nkv8mr1uSe0LSrHGiQw== optionalDependencies: - "@chainsafe/hashtree-darwin-arm64" "1.0.1" - "@chainsafe/hashtree-linux-arm64-gnu" "1.0.1" - "@chainsafe/hashtree-linux-x64-gnu" "1.0.1" + "@chainsafe/hashtree-darwin-arm64" "1.0.2" + "@chainsafe/hashtree-linux-arm64-gnu" "1.0.2" + "@chainsafe/hashtree-linux-arm64-musl" "1.0.2" + "@chainsafe/hashtree-linux-x64-gnu" "1.0.2" + "@chainsafe/hashtree-linux-x64-musl" "1.0.2" + "@chainsafe/hashtree-win32-x64-msvc" "1.0.2" "@chainsafe/is-ip@^2.0.1": version "2.0.1" @@ -671,13 +689,13 @@ dependencies: "@chainsafe/is-ip" "^2.0.1" -"@chainsafe/persistent-merkle-tree@1.2.0", "@chainsafe/persistent-merkle-tree@^1.2.0": - version "1.2.0" - resolved "https://registry.yarnpkg.com/@chainsafe/persistent-merkle-tree/-/persistent-merkle-tree-1.2.0.tgz#a402debcae6b386c51564c8cbacc9b0d56f64486" - integrity sha512-Ng2eqd6OPvFPPuroQ659ZrFMHtc44LxUfK7K2WkoBhlQ3hrvIn3UTQNKc77xUCU40xjeBGSxAfz+MSV256i+/g== +"@chainsafe/persistent-merkle-tree@1.2.1", "@chainsafe/persistent-merkle-tree@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@chainsafe/persistent-merkle-tree/-/persistent-merkle-tree-1.2.1.tgz#80f052e4a04c63304d5198dbf2fa49e104a0365a" + integrity sha512-AOSEVLfaqwb9eTCKuY1ri0DrRxVQ3Rh+we1VBj1GahUGfEdE8OC3Vkbca7Up6RoI9Ip9FLnI31Y7AjKH9ZqAGA== dependencies: "@chainsafe/as-sha256" "1.2.0" - "@chainsafe/hashtree" "1.0.1" + "@chainsafe/hashtree" "1.0.2" "@noble/hashes" "^1.3.0" "@chainsafe/persistent-merkle-tree@^0.6.1": @@ -760,13 +778,13 @@ "@chainsafe/as-sha256" "^0.4.1" "@chainsafe/persistent-merkle-tree" "^0.6.1" -"@chainsafe/ssz@^1.2.1": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@chainsafe/ssz/-/ssz-1.2.1.tgz#a9a89c9706de33444c0ee64fbc461ae6001132af" - integrity sha512-rchrNF+tJ1yOMZS5CQK3bK5UZC1vQP8ANxW4McRedvBls5b9Mvn+LtbOE4wffrVMOxQzOXcBGZDoCPPJYX76Rg== +"@chainsafe/ssz@^1.2.2": + version "1.2.2" + resolved "https://registry.yarnpkg.com/@chainsafe/ssz/-/ssz-1.2.2.tgz#3c41b70bac9e646cb4cce0d49bda176ca87984ad" + integrity sha512-kIA3fJO6h2RsQndsNBlCSQYB4xfdZGMQvNPKPgbiB0mysV6okuxeJU3Nyl16xDCKv3tqej76eGYHcyjMVt7V1w== dependencies: "@chainsafe/as-sha256" "1.2.0" - "@chainsafe/persistent-merkle-tree" "1.2.0" + "@chainsafe/persistent-merkle-tree" "1.2.1" "@chainsafe/swap-or-not-shuffle-darwin-arm64@1.2.1": version "1.2.1" @@ -3383,11 +3401,6 @@ resolved "https://registry.yarnpkg.com/@types/cookie/-/cookie-0.6.0.tgz#eac397f28bf1d6ae0ae081363eca2f425bedf0d5" integrity sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA== -"@types/cpu-features@^0.0.3": - version "0.0.3" - resolved "https://registry.yarnpkg.com/@types/cpu-features/-/cpu-features-0.0.3.tgz#a2bec076eb5dc95e0a6c23d1f8d389be4109b309" - integrity sha512-W/Ep+LDZoxMbCcH7LHRB3RN+TY4gbHl3u4uRq4XsxOh1gnpf5Lkwy5xWTBKSaJYQuMLW2XPAmRWA5Ucsy2EGVQ== - "@types/datastore-level@^3.0.0": version "3.0.0" resolved "https://registry.npmjs.org/@types/datastore-level/-/datastore-level-3.0.0.tgz" @@ -5383,14 +5396,6 @@ cosmiconfig@^8.2.0: parse-json "^5.2.0" path-type "^4.0.0" -cpu-features@^0.0.10: - version "0.0.10" - resolved "https://registry.yarnpkg.com/cpu-features/-/cpu-features-0.0.10.tgz#9aae536db2710c7254d7ed67cb3cbc7d29ad79c5" - integrity sha512-9IkYqtX3YHPCzoVg1Py+o9057a3i0fp7S530UWokCSaFVTc7CwXPRiOjRjBQQ18ZCNafx78YfnG+HALxtVmOGA== - dependencies: - buildcheck "~0.0.6" - nan "^2.19.0" - cpu-features@~0.0.4: version "0.0.8" resolved "https://registry.yarnpkg.com/cpu-features/-/cpu-features-0.0.8.tgz#a2d464b023b8ad09004c8cdca23b33f192f63546"