numerus-closus 0.2.0.0 → 0.3.0.0
raw patch · 3 files changed
+4/−7 lines, 3 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
- Control.NumerusClosus.Typed: SlidingWindow :: WindowSize -> BucketSize Int -> UTCTime -> Set UTCTime -> SlidingWindow
+ Control.NumerusClosus.Typed: SlidingWindow :: WindowSize -> BucketSize Int -> Set UTCTime -> SlidingWindow
- Control.NumerusClosus.Typed: slidingWindow :: WindowSize -> BucketSize Int -> UTCTime -> SlidingWindow
+ Control.NumerusClosus.Typed: slidingWindow :: WindowSize -> BucketSize Int -> SlidingWindow
Files
- numerus-closus.cabal +1/−1
- src/Control/NumerusClosus.hs +1/−3
- src/Control/NumerusClosus/Typed.hs +2/−3
numerus-closus.cabal view
@@ -1,6 +1,6 @@ cabal-version: 3.0 name: numerus-closus-version: 0.2.0.0+version: 0.3.0.0 author: Gautier DI FOLCO maintainer: gautier.difolco@gmail.com category: Scheduling
src/Control/NumerusClosus.hs view
@@ -110,9 +110,7 @@ -- | A sliding window rate limiter that allows a given number of requests within the sliding window. slidingWindow :: Typed.WindowSize -> Typed.BucketSize Int -> RateLimiter-slidingWindow ws bs = RateLimiter $ Typed.slidingWindow ws bs epoch- where- epoch = UTCTime (toEnum 0) 0+slidingWindow ws bs = RateLimiter $ Typed.slidingWindow ws bs -- | Sliding window counter using two-window weighted interpolation. slidingWindowCount :: Typed.WindowSize -> Typed.BucketSize Integer -> UTCTime -> RateLimiter
src/Control/NumerusClosus/Typed.hs view
@@ -178,7 +178,6 @@ { windowSize :: WindowSize, maxBucket :: BucketSize Int, -- \* Iteration field- windowStart :: UTCTime, bucket :: Set.Set UTCTime } deriving stock (Eq, Show, Generic)@@ -191,8 +190,8 @@ where refreshedBucket = snd $ Set.split (addUTCTime ((-1) * windowSize.unWindowSize) now) bucket -slidingWindow :: WindowSize -> BucketSize Int -> UTCTime -> SlidingWindow-slidingWindow windowSize maxBucket windowStart =+slidingWindow :: WindowSize -> BucketSize Int -> SlidingWindow+slidingWindow windowSize maxBucket = SlidingWindow {bucket = Set.empty, ..} -- | The number of sub-windows for bucketed sliding windows.