Skip to content

Commit f359d68

Browse files
Adds Exclusions to dependency api (#63)
1 parent a777e75 commit f359d68

File tree

16 files changed

+73
-34
lines changed

16 files changed

+73
-34
lines changed

client/src/main/scala/org/scalaexercises/evaluator/Decoders.scala

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
/*
2-
* scala-exercises - evaluator-client
3-
* Copyright (C) 2015-2016 47 Degrees, LLC. <http://www.47deg.com>
2+
*
3+
* scala-exercises - evaluator-client
4+
* Copyright (C) 2015-2019 47 Degrees, LLC. <http://www.47deg.com>
5+
*
46
*/
57

68
package org.scalaexercises.evaluator
@@ -16,5 +18,6 @@ object Decoders {
1618
Decoder.forProduct2("message", "pos")(CompilationInfo.apply)
1719

1820
implicit val decodeEvalResponse: Decoder[EvalResponse] =
19-
Decoder.forProduct5("msg", "value", "valueType", "consoleOutput", "compilationInfos")(EvalResponse.apply)
21+
Decoder.forProduct5("msg", "value", "valueType", "consoleOutput", "compilationInfos")(
22+
EvalResponse.apply)
2023
}

client/src/main/scala/org/scalaexercises/evaluator/EvaluatorAPI.scala

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
/*
2-
* scala-exercises - evaluator-client
3-
* Copyright (C) 2015-2016 47 Degrees, LLC. <http://www.47deg.com>
2+
*
3+
* scala-exercises - evaluator-client
4+
* Copyright (C) 2015-2019 47 Degrees, LLC. <http://www.47deg.com>
5+
*
46
*/
57

68
package org.scalaexercises.evaluator

client/src/main/scala/org/scalaexercises/evaluator/EvaluatorClient.scala

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
/*
2-
* scala-exercises - evaluator-client
3-
* Copyright (C) 2015-2016 47 Degrees, LLC. <http://www.47deg.com>
2+
*
3+
* scala-exercises - evaluator-client
4+
* Copyright (C) 2015-2019 47 Degrees, LLC. <http://www.47deg.com>
5+
*
46
*/
57

68
package org.scalaexercises.evaluator

client/src/main/scala/org/scalaexercises/evaluator/EvaluatorResponses.scala

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
/*
2-
* scala-exercises - evaluator-client
3-
* Copyright (C) 2015-2016 47 Degrees, LLC. <http://www.47deg.com>
2+
*
3+
* scala-exercises - evaluator-client
4+
* Copyright (C) 2015-2019 47 Degrees, LLC. <http://www.47deg.com>
5+
*
46
*/
57

68
package org.scalaexercises.evaluator

client/src/main/scala/org/scalaexercises/evaluator/api/Evaluator.scala

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
/*
2-
* scala-exercises - evaluator-client
3-
* Copyright (C) 2015-2016 47 Degrees, LLC. <http://www.47deg.com>
2+
*
3+
* scala-exercises - evaluator-client
4+
* Copyright (C) 2015-2019 47 Degrees, LLC. <http://www.47deg.com>
5+
*
46
*/
57

68
package org.scalaexercises.evaluator.api

client/src/main/scala/org/scalaexercises/evaluator/free/algebra/EvaluatorOps.scala

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
/*
2-
* scala-exercises - evaluator-client
3-
* Copyright (C) 2015-2016 47 Degrees, LLC. <http://www.47deg.com>
2+
*
3+
* scala-exercises - evaluator-client
4+
* Copyright (C) 2015-2019 47 Degrees, LLC. <http://www.47deg.com>
5+
*
46
*/
57

68
package org.scalaexercises.evaluator.free.algebra

client/src/main/scala/org/scalaexercises/evaluator/free/interpreters/Interpreter.scala

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
/*
2-
* scala-exercises - evaluator-client
3-
* Copyright (C) 2015-2016 47 Degrees, LLC. <http://www.47deg.com>
2+
*
3+
* scala-exercises - evaluator-client
4+
* Copyright (C) 2015-2019 47 Degrees, LLC. <http://www.47deg.com>
5+
*
46
*/
57

68
package org.scalaexercises.evaluator.free.interpreters

client/src/main/scala/org/scalaexercises/evaluator/http/HttpClient.scala

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
/*
2-
* scala-exercises - evaluator-client
3-
* Copyright (C) 2015-2016 47 Degrees, LLC. <http://www.47deg.com>
2+
*
3+
* scala-exercises - evaluator-client
4+
* Copyright (C) 2015-2019 47 Degrees, LLC. <http://www.47deg.com>
5+
*
46
*/
57

68
package org.scalaexercises.evaluator.http

client/src/main/scala/org/scalaexercises/evaluator/http/HttpRequestBuilder.scala

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
/*
2-
* scala-exercises - evaluator-client
3-
* Copyright (C) 2015-2016 47 Degrees, LLC. <http://www.47deg.com>
2+
*
3+
* scala-exercises - evaluator-client
4+
* Copyright (C) 2015-2019 47 Degrees, LLC. <http://www.47deg.com>
5+
*
46
*/
57

68
package org.scalaexercises.evaluator.http

client/src/main/scala/org/scalaexercises/evaluator/implicits.scala

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
/*
2-
* scala-exercises - evaluator-client
3-
* Copyright (C) 2015-2016 47 Degrees, LLC. <http://www.47deg.com>
2+
*
3+
* scala-exercises - evaluator-client
4+
* Copyright (C) 2015-2019 47 Degrees, LLC. <http://www.47deg.com>
5+
*
46
*/
57

68
package org.scalaexercises.evaluator

server/src/main/scala/org/scalaexercises/evaluator/evaluation.scala

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,17 @@ class Evaluator[F[_]: Sync](timeout: FiniteDuration = 20.seconds)(
4242

4343
def remoteToRepository(remote: Remote): Repository = MavenRepository(remote)
4444

45-
def dependencyToModule(dependency: Dependency): coursier.Dependency =
46-
coursier.Dependency.of(
47-
Module(Organization(dependency.groupId), ModuleName(dependency.artifactId)),
48-
dependency.version
49-
)
45+
def dependencyToModule(dependency: Dependency): coursier.Dependency = {
46+
val exclusions = dependency.exclusions map {
47+
case Exclusion(org, mod) => (Organization(org), ModuleName(mod))
48+
}
49+
coursier.Dependency
50+
.of(
51+
Module(Organization(dependency.groupId), ModuleName(dependency.artifactId)),
52+
dependency.version
53+
)
54+
.withExclusions(exclusions)
55+
}
5056

5157
val cache: FileCache[F] = FileCache[F].noCredentials
5258

server/src/main/scala/org/scalaexercises/evaluator/services.scala

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,8 @@ object services {
2828

2929
import EvalResponse.messages._
3030

31-
def evaluatorInstance[F[_]: ConcurrentEffect: ContextShift: Timer: Sync] = new Evaluator[F](20 seconds)
31+
def evaluatorInstance[F[_]: ConcurrentEffect: ContextShift: Timer: Sync] =
32+
new Evaluator[F](20 seconds)
3233

3334
val corsHeaders = Seq(
3435
Header("Vary", "Origin,Access-Control-Request-Methods"),

server/src/test/scala/org/scalaexercises/evaluator/EvalEndpointSpec.scala

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
/*
2-
* scala-exercises - evaluator-server
3-
* Copyright (C) 2015-2016 47 Degrees, LLC. <http://www.47deg.com>
2+
*
3+
* scala-exercises - evaluator-server
4+
* Copyright (C) 2015-2019 47 Degrees, LLC. <http://www.47deg.com>
5+
*
46
*/
57

68
package org.scalaexercises.evaluator

server/src/test/scala/org/scalaexercises/evaluator/EvaluatorSpec.scala

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
/*
2-
* scala-exercises - evaluator-server
3-
* Copyright (C) 2015-2016 47 Degrees, LLC. <http://www.47deg.com>
2+
*
3+
* scala-exercises - evaluator-server
4+
* Copyright (C) 2015-2019 47 Degrees, LLC. <http://www.47deg.com>
5+
*
46
*/
57

68
package org.scalaexercises.evaluator

server/src/test/scala/org/scalaexercises/evaluator/helper.scala

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
/*
2-
* scala-exercises - evaluator-server
3-
* Copyright (C) 2015-2016 47 Degrees, LLC. <http://www.47deg.com>
2+
*
3+
* scala-exercises - evaluator-server
4+
* Copyright (C) 2015-2019 47 Degrees, LLC. <http://www.47deg.com>
5+
*
46
*/
57

68
package org.scalaexercises.evaluator

shared/src/main/scala/org/scalaexercises/evaluator/types.scala

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,12 @@ final case class CompilationError[A](compilationInfos: CI) extends EvalResult[A]
3737

3838
final case class GeneralError[A](stack: Throwable) extends EvalResult[A]
3939

40-
final case class Dependency(groupId: String, artifactId: String, version: String)
40+
final case class Exclusion(organization: String, moduleName: String)
41+
final case class Dependency(
42+
groupId: String,
43+
artifactId: String,
44+
version: String,
45+
exclusions: Set[Exclusion] = Set.empty)
4146

4247
final case class EvalRequest(
4348
resolvers: List[String] = Nil,

0 commit comments

Comments
 (0)