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

ben-manes / caffeine / #5558
100%
master: 100%

Build:
Build:
LAST BUILD BRANCH: v3.dev
DEFAULT BRANCH: master
Ran 29 Jun 2026 08:28PM UTC
Jobs 1
Files 78
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 Jun 2026 07:46PM UTC coverage: 99.988% (+0.01%) from 99.976%
#5558

push

github

ben-manes
Evaluate the async bulk-load result's values once

AsyncBulkCompleter makes two passes over the loader's returned map:
fillProxies evaluates result.get(key) for each requested key, and
addNewEntries then evaluated entry.getValue() for every entry before
the proxies.containsKey skip -- so a lazy result (e.g. a user's
Maps.transformValues) re-ran the transform on each requested key only
to discard it. The 2016 commit collapsed the sync bulk path to one
pass but left the async completer two-pass.

Move getValue() inside the skip so only the new (unrequested) entries
are evaluated. Add getAll_lazyResult_evaluatesEachValueOnce, which
counts transform invocations on a Maps.transformValues result (under
the bug each requested value is counted twice).

4050 of 4056 branches covered (99.85%)

1 of 1 new or added line in 1 file covered. (100.0%)

8244 of 8245 relevant lines covered (99.99%)

1.0 hits per line

Jobs
ID Job ID Ran Files Coverage
1 #5558.1 29 Jun 2026 08:28PM UTC 78
99.99
Source Files on build #5558
  • Tree
  • List 78
  • Changed 3
  • Source Changed 3
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • bc97858b on github
  • Prev Build on v3.dev
  • Next Build on v3.dev
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