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

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

Build:
DEFAULT BRANCH: master
Ran 02 May 2022 04:35AM 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

02 May 2022 02:22AM UTC coverage: 96.123% (-0.01%) from 96.137%
#2955.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.

6918 of 7197 relevant lines covered (96.12%)

0.96 hits per line

Source Files on job #2955.1
  • Tree
  • List 0
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 2955
  • 407bb3b5 on github
  • Prev Job for on master (##2954.1)
  • Next Job for on master (##2957.1)
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