chore(deps): bump vendored minio/sha256-simd to v1.0.1 + klauspost/cpuid/v2 to v2.2.3#42
Open
moralpriest wants to merge 1 commit into
Open
Conversation
…uid/v2 to v2.2.3 Coupled bump: sha256-simd v1.0.1 requires cpuid/v2 v2.2.3 (CPU feature detection for SIMD code-path selection). Both target go <=1.17 (1.17 + 1.15). Consensus-critical: minio/sha256-simd backs the SHA-256 calls in astrobwt/astrobwtv3/pow.go (AstroBWTv3 PoW key derivation + fallback hash) and sa_fast.go (miner fast path). klauspost/cpuid/v2 selects the fastest SHA-256 implementation at runtime. SHA-256 is a fixed standard (FIPS 180-4), so byte output is unchanged regardless of SIMD path chosen. Verification: - Build green: `go build ./...` - L1 hash vectors: new TestSha256SimdNistVectors (NIST FIPS 180-4 vectors) PASS - L2 AstroBWTv3: TestAstroBWTv3 + TestAstroBWTv3repeattest PASS (full PoW vectors) - L4 miner: standalone dero-miner (built from this branch) connected to derod --testnet getwork server and received work (AstroBWTv3 hashing with bumped libs) Pre-existing unrelated `go vet` warnings in astrobwt/astrobwt.go:48,86 (unreachable code, same idiom as cmd/derod/main.go:1064) left untouched.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Coupled bump of
github.com/minio/sha256-simd(old → v1.0.1) andgithub.com/klauspost/cpuid/v2(v2.0.6 → v2.2.3). sha256-simd v1.0.1 requires cpuid/v2 v2.2.3 (CPU feature detection for SIMD code-path selection). Both targetgo <=1.17(1.17 + 1.15), so this is a clean standalone prep PR — part of the dependency-prep track ahead of a future Go toolchain bump (see #40, #41).Why it matters (consensus-critical)
minio/sha256-simdbacks the SHA-256 calls inastrobwt/astrobwtv3/pow.go:sha256.Sum256(input)atpow.go:52— the first step of AstroBWTv3 PoW (seeds Salsa20 key).sha256.Sum256(buf)atpow.go:45— panic-recovery fallback hash.sa_fast.go— miner fast path (suffix array construction).klauspost/cpuid/v2selects the fastest SHA-256 implementation at runtime (AVX2/AVX512/SHA-NI). SHA-256 is a fixed standard (FIPS 180-4), so byte output is unchanged regardless of which SIMD path cpuid selects — only performance differs.Verification (all 4 layers pass)
go build ./...greenTestSha256SimdNistVectors(NIST FIPS 180-4 vectors: "abc", empty, 56-byte, 112-byte two-block) — PASSTestAstroBWTv3+TestAstroBWTv3repeattest(full PoW vectors) — PASSdero-minerbuilt from this branch connected toderod --testnetgetwork server, received work, and began AstroBWTv3 hashing with the bumped libs — PASSNotes
sha256blockSha_amd64.{go,s,_test.go}renamed tosha256block_amd64.*upstream;sha256-simd/.github/workflows/go.ymland.gitignore, pluscpuid/v2/testdata/and.github/noise, removed (not needed in vendor).go vetwarnings inastrobwt/astrobwt.go:48,86("unreachable code", same idiom ascmd/derod/main.go:1064) left untouched to keep the PR focused.🤖 Generated with opencode