Skip to content

Commit 0a3cc3b

Browse files
authored
Merge pull request #40 from bplommer/weaken-effect-types
weaken typeclass constraint in client middleware from Effect to Sync
2 parents 30c4c62 + 8c66884 commit 0a3cc3b

File tree

3 files changed

+7
-7
lines changed

3 files changed

+7
-7
lines changed

src/main/scala/kamon/http4s/middleware/client/KamonSupport.scala

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
package kamon.http4s
1919
package middleware.client
2020

21-
import cats.effect.{Effect, Resource}
21+
import cats.effect.{Sync, Resource}
2222
import cats.implicits._
2323
import com.typesafe.config.Config
2424
import kamon.Kamon
@@ -39,7 +39,7 @@ object KamonSupport {
3939
Kamon.onReconfigure(newConfig => _instrumentation = instrumentation(newConfig))
4040

4141

42-
def apply[F[_]](underlying: Client[F])(implicit F:Effect[F]): Client[F] = Client { request =>
42+
def apply[F[_]](underlying: Client[F])(implicit F:Sync[F]): Client[F] = Client { request =>
4343

4444
for {
4545
ctx <- Resource.liftF(F.delay(Kamon.currentContext()))
@@ -52,7 +52,7 @@ object KamonSupport {
5252
(request: Request[F])
5353
(ctx: Context)
5454
(instrumentation: HttpClientInstrumentation)
55-
(implicit F:Effect[F]): Resource[F, Response[F]] =
55+
(implicit F:Sync[F]): Resource[F, Response[F]] =
5656
for {
5757
requestHandler <- Resource.liftF(F.delay(instrumentation.createHandler(getRequestBuilder(request), ctx)))
5858
response <- underlying.run(requestHandler.request).attempt
@@ -63,7 +63,7 @@ object KamonSupport {
6363
response: Either[Throwable, Response[F]],
6464
requestHandler: HttpClientInstrumentation.RequestHandler[Request[F]],
6565
settings: HttpClientInstrumentation.Settings
66-
)(implicit F:Effect[F]): F[Response[F]] =
66+
)(implicit F:Sync[F]): F[Response[F]] =
6767
response match {
6868
case Right(res) =>
6969
if(res.status.code == 404) requestHandler.span.name(settings.defaultOperationName)

src/test/scala/kamon/http4s/HttpMetricsSpec.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ class HttpMetricsSpec extends WordSpec
6565
def withServerAndClient[A](f: (Server[IO], Client[IO], HttpServerMetrics.HttpServerInstruments) => IO[A]): A =
6666
(srv, client, metrics).tupled.use(f.tupled).unsafeRunSync()
6767

68-
private def get[F[_]: ConcurrentEffect](path: String)(server: Server[F], client: Client[F]): F[String] = {
68+
private def get[F[_]: Sync](path: String)(server: Server[F], client: Client[F]): F[String] = {
6969
client.expect[String](s"http://127.0.0.1:${server.address.getPort}$path")
7070
}
7171

src/test/scala/kamon/http4s/ServerInstrumentationSpec.scala

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616

1717
package kamon.http4s
1818

19-
import cats.effect.{ConcurrentEffect, ContextShift, IO, Timer}
19+
import cats.effect.{ContextShift, IO, Sync, Timer}
2020
import kamon.http4s.middleware.server.KamonSupport
2121
import kamon.trace.Span
2222
import org.http4s.{Headers, HttpRoutes}
@@ -66,7 +66,7 @@ class ServerInstrumentationSpec extends WordSpec
6666
def withServerAndClient[A](f: (Server[IO], Client[IO]) => IO[A]): A =
6767
(srv, client).tupled.use(f.tupled).unsafeRunSync()
6868

69-
private def getResponse[F[_]: ConcurrentEffect](path: String)(server: Server[F], client: Client[F]): F[(String, Headers)] = {
69+
private def getResponse[F[_]: Sync](path: String)(server: Server[F], client: Client[F]): F[(String, Headers)] = {
7070
client.get(s"http://127.0.0.1:${server.address.getPort}$path"){ r =>
7171
r.bodyAsText.compile.toList.map(_.mkString).map(_ -> r.headers)
7272
}

0 commit comments

Comments
 (0)