Skip to content

Commit

Permalink
Update smetrics to 1.2.0, cats-helper to 3.5.0 (#207)
Browse files Browse the repository at this point in the history
* Update smetrics to 1.2.0, cats-helper to 3.5.0

* Call new methods from deprecated ones

* Fix a signature
  • Loading branch information
i-surkov committed Jun 6, 2023
1 parent 6787cb1 commit 3148f84
Show file tree
Hide file tree
Showing 5 changed files with 30 additions and 10 deletions.
4 changes: 2 additions & 2 deletions project/Dependencies.scala
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ import sbt.*
object Dependencies {

val scalatest = "org.scalatest" %% "scalatest" % "3.2.13"
val `cats-helper` = "com.evolutiongaming" %% "cats-helper" % "3.2.0"
val smetrics = "com.evolutiongaming" %% "smetrics" % "1.0.5"
val `cats-helper` = "com.evolutiongaming" %% "cats-helper" % "3.5.0"
val smetrics = "com.evolutiongaming" %% "smetrics" % "1.3.0"
val `kind-projector` = "org.typelevel" % "kind-projector" % "0.13.2"
val betterMonadicFor = "com.olegpy" %% "better-monadic-for" % "0.3.1"

Expand Down
16 changes: 13 additions & 3 deletions src/main/scala/com/evolution/scache/Cache.scala
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ import cats.syntax.all.*
import cats.{Functor, Hash, Monad, MonadThrow, Monoid, Parallel, ~>}
import cats.kernel.CommutativeMonoid
import com.evolutiongaming.catshelper.CatsHelper.*
import com.evolutiongaming.catshelper.Runtime
import com.evolutiongaming.smetrics.MeasureDuration
import com.evolutiongaming.catshelper.{MeasureDuration, Runtime}
import com.evolutiongaming.smetrics

import scala.util.control.NoStackTrace

Expand Down Expand Up @@ -639,12 +639,22 @@ object Cache {

implicit class CacheOps[F[_], K, V](val self: Cache[F, K, V]) extends AnyVal {

@deprecated("use `withMetrics1` instead", "4.5.0")
def withMetrics(
metrics: CacheMetrics[F])(implicit
temporal: Temporal[F],
measureDuration: smetrics.MeasureDuration[F]
): Resource[F, Cache[F, K, V]] = {
implicit val md: MeasureDuration[F] = measureDuration.toCatsHelper
withMetrics1(metrics)
}

def withMetrics1(
metrics: CacheMetrics[F])(implicit
temporal: Temporal[F],
measureDuration: MeasureDuration[F]
): Resource[F, Cache[F, K, V]] = {
CacheMetered(self, metrics)
CacheMetered.apply1(self, metrics)
}

def mapK[G[_]](fg: F ~> G, gf: G ~> F)(implicit F: Functor[F]): Cache[G, K, V] = {
Expand Down
16 changes: 13 additions & 3 deletions src/main/scala/com/evolution/scache/CacheMetered.scala
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,24 @@ package com.evolution.scache
import cats.effect.{Resource, Temporal}
import cats.kernel.CommutativeMonoid
import cats.syntax.all.*
import com.evolutiongaming.catshelper.Schedule
import com.evolutiongaming.smetrics.MeasureDuration
import com.evolutiongaming.catshelper.{MeasureDuration, Schedule}
import com.evolutiongaming.smetrics

import scala.concurrent.duration.*

object CacheMetered {

def apply[F[_]: MeasureDuration: Temporal, K, V](
@deprecated("Use `apply1` instead", "4.5.0")
def apply[F[_]: smetrics.MeasureDuration: Temporal, K, V](
cache: Cache[F, K, V],
metrics: CacheMetrics[F],
interval: FiniteDuration = 1.minute
): Resource[F, Cache[F, K, V]] = {
implicit val md: MeasureDuration[F] = smetrics.MeasureDuration[F].toCatsHelper
apply1(cache, metrics, interval)
}

def apply1[F[_]: MeasureDuration: Temporal, K, V](
cache: Cache[F, K, V],
metrics: CacheMetrics[F],
interval: FiniteDuration = 1.minute
Expand Down
2 changes: 1 addition & 1 deletion src/test/scala/com/evolution/scache/CacheSpec.scala
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ class CacheSpec extends AsyncFunSuite with Matchers {
for {
cache <- cache0
metrics <- CacheMetricsProbe.of.toResource
cache <- cache.withMetrics(metrics)
cache <- cache.withMetrics1(metrics)
cache <- cache.withFence
} yield (cache, metrics)

Expand Down
2 changes: 1 addition & 1 deletion src/test/scala/com/evolution/scache/IOSuite.scala
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package com.evolution.scache

import cats.effect.unsafe.implicits.global
import cats.effect.{Clock, IO}
import com.evolutiongaming.smetrics.MeasureDuration
import com.evolutiongaming.catshelper.MeasureDuration
import org.scalactic.source.Position
import org.scalatest.Succeeded
import org.scalatest.enablers.Retrying
Expand Down

0 comments on commit 3148f84

Please sign in to comment.