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

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

Build:
Build:
LAST BUILD BRANCH: v3.dev
DEFAULT BRANCH: master
Ran 04 May 2026 06:47PM 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

04 May 2026 06:14PM UTC coverage: 100.0%. Remained the same
#5435

push

github

ben-manes
audit follow-ups: sketch sentinel guard, async asMap setValue, tests

* BoundedLocalCache.AddTask.run / evictionOrder: read keyRef first then
  check isAlive() before incrementing the frequency sketch, so a retired
  strong-key sentinel cannot pollute the sketch (matches onAccess pattern).

* LocalAsyncCache.AsyncAsMapView.entrySet(): wrap with a custom EntrySet
  whose iterator/spliterator yields WriteThroughEntries backed by
  AsyncAsMapView itself, so setValue routes through AsyncAsMapView.put and
  handleCompletion runs on completion (weight, expiry, stats, null/error
  auto-removal). removeAll/retainAll/contains/remove still delegate to BLC's
  optimized entrySet to preserve weak-key identity semantics. Updated the
  existing writeThroughEntry and entrySet_toArray_writeThrough tests for the
  new stats and added writeThroughEntry_incompleteFuture.

* simulator/build.gradle.kts: add withPathSensitivity(RELATIVE) to the two
  inputs.files declarations on JavaExec tasks.

* New BoundedLocalCacheTest coverage from /audit-* findings:
  brokenEquality_{compute,computeIfAbsent,merge};
  compute_collectedEntry_mappingThrows_evictionCommitted and
  computeIfAbsent_collectedEntry_mappingThrows_evictionCommitted as
  COLLECTED-side parallels to the existing EXPIRED variants;
  compute_{expired,collected}Entry_weigherThrows_evictionCommitted; and
  replaceConditionally_weigherThrows_wrongOldValue as a regression guard
  for the deliberate decision to keep the weigher call outside the bin's
  critical section.

* AsyncCacheFrayTest.refresh_concurrentEvictionAndReadd exercises the
  LocalAsyncLoadingCache.refresh(K) for(;;) loop under concurrent
  eviction-and-re-add (10,000 iterations).

3950 of 3958 branches covered (99.8%)

40 of 40 new or added lines in 2 files covered. (100.0%)

8089 of 8089 relevant lines covered (100.0%)

1.0 hits per line

Jobs
ID Job ID Ran Files Coverage
1 #5435.1 04 May 2026 06:47PM UTC 78
100.0
Source Files on build #5435
  • Tree
  • List 78
  • Changed 2
  • Source Changed 2
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • 83072485 on github
  • Prev Build on master
  • 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