cache2k v1.9.1.Alpha Release Notes
Release Date: 2020-10-13 // over 3 years ago-
๐ This is a preview release for evaluation purposes and should not be used in production.
The preview is in preparation for version 2 which will have some major breaking changes to the previous releases. The final release will be 2.0.0.Final - "North Atlantic".
๐ New and Noteworthy
- cache2k-api, cache2k-core, cache2k-jmx and cache2k-config are fully modularized
- Requires at least Java 8 to run
- ๐ง Adaptions to Java 8 on API level. E.g. use of Duration in the configuration
- ๐ New interfaces for
CacheLoader
andCacheWriter
- ๐ Removal of deprecated classes and methods
- ๐ง JMX and XML configuration support is no longer part of
cache2k-core
- ๐ OSGi support with
cache2k-osgi-all
removed, see: #83
Possible Breakages
๐ Since this is a major release, some rarely used things in the API are changed without backwards compatibility. Most code is supposed to run without breaking.
- Requires at least Java 8 to run
- โ Remove deprecated classes and methods:
Cache.prefetch
,Cache.prefetchAll
,IntCache
,LongCache
,
CacheEntry.getLastModification
,AbstractCacheEntry
- Incompatible change of
CustomizationSupplier
interface - ๐
org.cache2k.integration.ResiliencePolicy
removed. Replaced by:org.cache2k.io.ResiliencePolicy
- ๐ JMX support moved from
cache2k-core
tocache2k-jmx
to minimize module dependencies - ๐ง XML configuration moved from
cache2k-core
tocache2k-config
to minimize module dependencies - โฌ๏ธ Dropped apache commons logging support. Commons logging seems to be not
๐ maintained any more and lacks Jigsaw/module support. - โฌ๏ธ Drop support for XML configuration on Android, removed XML pull dependency
๐ (The Android will be potentially unsupported in cache2k V2 at first) - ๐ง Moved JCache configuration classes in
org.cache.jcache
fromcache2k-api
tocache2k-jcache
.
If these are used,cache2k-jcache
needs to be in compile scope. Cache2kConfiguration
: Changed all parameters of type long, representing
milliseconds to typeDuration
API Changes
- ๐ฆ
org.cache2k.integration.CacheLoader
and everything in packageorg.cache2k.integration
๐ is deprecated. Replacements are available inorg.cache2k.io
. This major change was done to
๐ change from abstract classes to interface. The new package was introduced for smoother transition
๐ to keep the previous classes and deprecated them. - โ Add
Cache.loadAll
andCache.reloadAll
which returnCompletableFuture
๐ Old methods which useCacheOperationCompletionListener
are deprecated - โ Remove deprecated classes and methods:
Cache.prefetch
,Cache.prefetchAll
,IntCache
,LongCache
,
CacheEntry.getLastModification
,AbstractCacheEntry
๐ Fixes and Improvements
- All cache customizations (e.g.
CacheLoader
) implementCustomization
. - ๐ Speedup of internal hash table, because compatibility for Java 6 could be removed