• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

tarantool / go-storage / 26637173979
90%

Build:
DEFAULT BRANCH: master
Ran 29 May 2026 12:28PM UTC
Jobs 1
Files 49
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

29 May 2026 12:27PM UTC coverage: 89.915% (+0.009%) from 89.906%
26637173979

push

github

bigbes
hasher: accept nil and empty input as the empty-string digest

Storage backends round-trip empty stored values as nil, so a read of a
legitimately-empty value reached the validator with body=nil and exploded
at the SHA-256 hash check ("data is nil") and the RSA-PSS verifier check
("failed to get hash: data is nil"). The only workaround was
IgnoreVerificationError(), which defeats the integrity layer.

Drop the data == nil guard from sha1/sha256 — hash.Hash.Write(nil) is
well-defined, both nil and []byte{} now produce the empty-input digest.
ErrDataIsNil was internal-only; remove it.

Pin the contract at every layer: nil/empty parity in the hasher units,
sign+verify acceptance plus empty-signature rejection in rsapss, direct
empty-body validator coverage (value-only, value+hash, value+hash+sig),
and a TxPut([]byte{})/TxGet round-trip mirroring the reproducer against
every backend.

Also unflake driver/etcd locker tests: each test was creating its 30s
deadline ctx before calling createTestDriverConcrete, which spins up a
fresh embedded etcd cluster and can take >20s on slow CI runners. The
bootstrap consumed most of the budget, leaving Unlock's session.Close →
Revoke to fail at the last hop with "context deadline exceeded" — the
session is bound to the caller's ctx via concurrency.WithContext. Move
the ctx below cluster bootstrap in every locker test so the 30s bounds
only the actual locker operations. Observed on PR #107 run-tests (1.23);
1.24 and stable were green.

3807 of 4234 relevant lines covered (89.91%)

512.68 hits per line

Coverage Regressions

Lines Coverage ∆ File
1
89.21
-0.72% storage.go
Jobs
ID Job ID Ran Files Coverage
1 26637173979.1 29 May 2026 12:28PM UTC 49
89.91
GitHub Action Run
Source Files on build 26637173979
  • Tree
  • List 49
  • Changed 3
  • Source Changed 0
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • 4c7fbdcd on github
  • Prev Build on master (#26637162934)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc