Releases: mokies/ratelimitj
Releases · mokies/ratelimitj
Sawtooth Peak, (Sequoia National Park) California
- Support for Dropwizard 2.x, dropped support for Dropwizard 1.x
- Library updates: Lettuce 5.3.2, reactor-core 3.3.8, slf4j-api 1.7.30
The ironbound, Tasmania (1st ascent)
Mt Agung, Bali
- Support for Redis Cluster, see
RedisClusterRateLimiterFactory
- Breaking change - RequestLimitRule interface as it now uses java.time.Duration
- Breaking change - Removed support for Java async interfaces which can be migrated to reactive interfaces
- Breaking change - @ratelimited interface change. key replaced with keys
- Improvements to handling of NOSCRIPT error. All applications using Redis based rate limiters should upgrade
Mount Ossa, Tasmania (5th ascent)
- Gracefully handles NOSCRIPT error that was occurring when Redis scripts are flushed
- Library updates Lettuce 5.0.5, Dropwizard 1.3.5
Mount Ossa, Tasmania (3nd ascent)
- Introduced grouped key prefix to Dropwizard @ratelimited annotation to support rate limiting acrossed grouped Dropwizard resources.
- Library updates Lettuce 5.0.2, Dropwizard 1.2.3
Mount Ossa, Tasmania (2nd ascent)
- Library updates Lettuce 5.0.1, Dropwizard 1.2.0. Guava removed
- Some implementation polish
- Upgraded build to Gradle 4.3 and Junit 5
Mount Ossa, Tasmania
- Introduced
ConcurrentRequestRateLimiter
with in-memory implementation of a concurrent rate limiter, AKA a semaphore - Deprecating
AsyncRequestRateLimiter
, users should migrate toReactiveRequestRateLimiter
- Changes to
RequestRateLimiter
interfaces, previously calledRateLimiter
- API breaking method name change:
overLimit
tooverLimitOrIncrement
- Introduced new metho
geLimitWhenIncremented
to determine if the given key, after incrementing by the given weight, is >= the configured rate limit. - Library updates Gradle 4.1, Lettuce 4.4.0, Dropwizard 1.1.3, Guava 22.0 (will be removed in 0.5.0)
- Correcting race condition in
InMemorySlidingWindowRequestRateLimiter
if equal string based keys had different identities - Javadoc and Github doc improvements
- Avoid work when weight is zero in InMemorySlidingWindow & RedisSlidingWindow
0.4.0.M2
Mt Feathertop, Victoria (3rd ascent)
- Added Dropwizard @ratelimit Key.IP limits on IP (HTTP Header X-Forwarded-For or servlet remote address)
- Fixed Dropwizard integration defect that broke in-memory and impacted performance for redis
Mt Feathertop, Victoria (2rd ascent)
- Dropwizard @ratelimit now provides three key types:
- Key.AUTHENTICATED limits on the authenticated dropwizard principle
- Key.RESOURCE limits on the resource name
- Key.ANY limits on any identifying key
- First release of ratelimit-inmemory to maven central