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

ben-manes / caffeine / #2950 / 1
100%
master: 100%

Build:
Build:
LAST BUILD BRANCH: v3.dev
DEFAULT BRANCH: master
Ran 01 May 2022 10:56PM UTC
Files 77
Run time 4s
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

01 May 2022 08:55PM UTC coverage: 96.137%. Remained the same
#2950.1

push

github-actions

ben-manes
Avoid overwrites due to codegen compilation

The per-entry classes are code generated for optimizing the field layout
(memory overhead) and compiled without debug symbols to minimize the jar
size. Previously this was a double compilation due to circular
dependencies. That busted the build cache and made it harder to detect
if from a mallicious supply chain attack.

The factory classes are no longer generated as simple logic. Previously
they were due to needing to build a very large switch to each class, but
has long since been switched to a reflection lookup. That reduces the
factory class load time and jar bloat. This means that the hand written
classes have no static dependencies on the generated classes, and the
two can be independent compilation units.

The compileCodeGenJava task was run twice due to Gradle rewriting
errorprone's dependency as a local jar dependency. This was only
partially worked around where the main project downloads a local jar
to trick the classpath, but other subprojects included the build's jar.
This is now excluded on the dependency so the cache shouldn't be
busted.

As part of the build cleanup, the pmd checks for JMH were enabled and
the false warnings suppressed.

6919 of 7197 relevant lines covered (96.14%)

0.96 hits per line

Source Files on job #2950.1
  • Tree
  • List 0
  • Changed 3
  • Source Changed 2
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 2950
  • b0740b4e on github
  • Prev Job for on v3.dev (##2949.1)
  • Next Job for on v3.dev (##2951.1)
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