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

cenkalti / rain / 37146811107
51%

Build:
DEFAULT BRANCH: master
Ran 03 Oct 2026 07:09PM UTC
Jobs 1
Files 169
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

03 Oct 2026 07:05PM UTC coverage: 50.866% (+5.7%) from 45.206%
37146811107

push

github

cenkalti
test: cover the low-coverage critical paths

Repo coverage 47.7% -> 54.2%. Per package:

  boltdbresumer  13.1% -> 95.3%   on-disk resume state
  pexlist        24.4% -> 97.6%   peer exchange accounting
  metainfo       33.3% -> 96.6%   parsing untrusted torrent files
  peerreader     44.6% -> 93.2%   protocol framing from peers
  peerwriter     49.5% -> 81.7%   write queue and framing

The key names and version number in boltdbresumer are pinned as the
on-disk contract: renaming one orphans the resume data of every existing
session, so that test exists to fail loudly rather than be updated.

Four behaviors these tests corrected, each one an assumption that looked
obvious and was wrong:

  - AddedAt is persisted as RFC3339, so sub-second precision is dropped
    on the way to BoltDB, while the JSON path keeps it.
  - PEX's first flush is uncapped by design (BEP 11 exempts the initial
    message) and later overflow carries to the next flush.
  - peerreader's oversized-piece guard runs after the index/begin pair
    is read, not before it.
  - PeerReader.Stop cannot interrupt a read parked on the socket; it is
    seen only at the message handoff and the rate-limiter wait, which is
    why callers close the connection too.

Also documents two pre-existing findings without changing behavior:
Info.Name is returned unsanitized while Files[].Path is cleaned, and
CompactPeer's 4-byte address makes PEX IPv4-only, collapsing every
IPv6-only peer to 0.0.0.0.

6112 of 12016 relevant lines covered (50.87%)

101.27 hits per line

Coverage Regressions

Lines Coverage ∆ File
4
44.51
0.0% torrent/torrent_messagehandler.go
Jobs
ID Job ID Ran Files Coverage
1 37146811107.1 03 Oct 2026 07:09PM UTC 169
50.87
GitHub Action Run
Source Files on build 37146811107
  • Tree
  • List 169
  • Changed 11
  • Source Changed 0
  • Coverage Changed 11
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • f3d90b63 on github
  • Prev Build on master (#37145289099)
  • Next Build on master (#37147560904)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc