All Versions
19
Latest Version
Avg Release Cycle
72 days
Latest Release
322 days ago

Changelog History
Page 1

  • v2.8.8 Changes

    December 08, 2020

    Cache

  • v2.8.7 Changes

    December 07, 2020

    Cache

    • 🛠 Fixed asMap().keySet().toArray() to not return expired mappings (#472)
    • ➕ Added support for ISO-8601 durations to CaffeineSpec (#466)
    • 🛠 Fixed put update optimization for variable expiration (#478)
  • v2.8.6 Changes

    October 12, 2020

    Cache

    • Changed false sharing protection to comply with JDK 15's field layout (Java Objects Inside Out)
    • Suppressed the removal listener notification when an AsyncCache future value resolves to null
    • 👌 Improved the implementations of AsyncCache.synchronous().asMap() conditional methods
    • ➕ Added Jandex index for assisting GraalVM AOT (quarkusio/quarkus#10420)
    • 🗄 Deprecated UnsafeAccess and SingleConsumerQueue

    JCache

    • 🔄 Changed to an OSGi Component to avoid coupling consumers to the provider (#447)
    • ➕ Added the ability to record native statistics (#460)
  • v2.8.5 Changes

    June 29, 2020

    Cache

    • 🛠 Fixed expiration delay for scheduled cleanup (#431)
  • v2.8.4 Changes

    May 21, 2020

    Cache

    • ⏱ Schedule maintenance on an absent getIfPresent if there is pending work (#420)
  • v2.8.3 Changes

    May 18, 2020

    Cache

    • ➕ Added Policy.getIfPresentQuietly to lookup without affecting the metadata (#418)
  • v2.8.2 Changes

    April 27, 2020

    Cache

    • ➕ Add optimistic fast path for putIfAbsent to avoid locking (apache/openwhisk#2797)
    • 🛠 Fixed race causing an incorrect removal cause (#412)
    • 🛠 Fixed SCM connection URLs (#394)

    JCache

    • Prefer the thread context classloader (#387)
  • v2.8.1 Changes

    January 15, 2020

    JCache

    • 👍 Allow for using a custom config source (#312)
  • v2.8.0 Changes

    August 06, 2019

    Cache

    • Include the license file in the jar (#325)
    • ➕ Add RemovalCause to StatsCounter (#304)
    • ➕ Add getAll support to manual caches (#310)
    • 🛠 Fix long overflow in statistics (google/guava#3503)
    • ➕ Add Scheduler for prompt eviciton of expired entries (#195)

    JCache

    • 🛠 Fix assigning ticker to cache builder (#313)
  • v2.7.0 Changes

    February 24, 2019

    Cache

    • ➕ Added async asMap() view (#156)
    • Introduced AsyncCache for manual async cache (#246)
    • 🛠 Fixed async expiration when create races with reads (#298)
    • 👌 Improved hit rates by using an adaptive eviction policy (#106)
    • 🛠 Fixed refresh to use the stats ticker for recording the load time (#240)
    • ⏱ Rescheduled async maintenance immediately if pending work remains (#225)
    • Migrated from JSR-305 annotations to CheckerFramework & ErrorProne (#242)

    JCache

    • ➕ Added config file setting for the executor (#276)

    🚀 This release includes improvements to the eviction policy by using a hill climber to optimize for frequency or recency. For more details, see the HighScalability article and our paper Adaptive Software Cache Management.