Skip to content

Commit d342189

Browse files
authored
Merge pull request #47 from christobill/CHORE/46-fatal-warnings
[#14] Set up fatal warnings compilation flag
2 parents 2fe423b + da255ef commit d342189

File tree

12 files changed

+26
-33
lines changed

12 files changed

+26
-33
lines changed

.travis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ sudo: false
22
language: scala
33
scala:
44
- 2.11.11
5-
- 2.12.2
5+
- 2.12.8
66
jdk: oraclejdk8
77
cache:
88
directories:

build.sbt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name := "stripe-scala"
22

3-
val currentScalaVersion = "2.12.3"
3+
val currentScalaVersion = "2.12.8"
44
val scala211Version = "2.11.11"
55
val circeVersion = "0.9.3"
66

@@ -11,6 +11,7 @@ crossScalaVersions := Seq(currentScalaVersion, scala211Version)
1111
organization := "org.mdedetrich"
1212

1313
scalacOptions ++= Seq(
14+
"-Xfatal-warnings",
1415
"-target:jvm-1.8",
1516
"-encoding",
1617
"UTF-8",
@@ -94,17 +95,16 @@ releaseProcess := Seq[ReleaseStep](
9495
)
9596

9697
val flagsFor11 = Seq(
97-
"-Xlint:_",
9898
"-Yconst-opt",
9999
"-Ywarn-infer-any",
100100
"-Yclosure-elim",
101101
"-Ydead-code"
102102
)
103103

104104
val flagsFor12 = Seq(
105-
"-Xlint:_",
105+
"-Xlint:-unused", //because 2.11 needs unused import: cats.syntax.either._
106106
"-Ywarn-infer-any",
107-
"-opt:l:project"
107+
"-opt-inline-from:<sources>"
108108
)
109109

110110
scalacOptions ++= {

src/main/scala/org/mdedetrich/stripe/v1/Accounts.scala

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import akka.http.scaladsl.HttpExt
88
import akka.stream.Materializer
99
import cats.syntax.either._
1010
import com.typesafe.scalalogging.LazyLogging
11-
import defaults._
1211
import enumeratum.{Enum, EnumEntry}
1312
import io.circe._
1413
import io.circe.syntax._

src/main/scala/org/mdedetrich/stripe/v1/Balances.scala

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -171,9 +171,7 @@ object Balances extends LazyLogging {
171171
x.status,
172172
x.`type`))
173173

174-
case class SourceTypes(card: Option[BigDecimal],
175-
bankAccount: Option[BigDecimal],
176-
bitcoinReceiver: Option[BigDecimal])
174+
case class SourceTypes(card: Option[BigDecimal], bankAccount: Option[BigDecimal], bitcoinReceiver: Option[BigDecimal])
177175

178176
implicit val sourceTypesDecoder: Decoder[SourceTypes] = Decoder.forProduct3(
179177
"card",

src/main/scala/org/mdedetrich/stripe/v1/BankAccounts.scala

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import akka.http.scaladsl.model.Uri
55
import akka.http.scaladsl.model.Uri.Query
66
import akka.stream.Materializer
77
import com.typesafe.scalalogging.LazyLogging
8-
import defaults._
98
import enumeratum._
109
import io.circe._
1110
import io.circe.syntax._

src/main/scala/org/mdedetrich/stripe/v1/Customers.scala

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ import akka.http.scaladsl.HttpExt
66
import akka.http.scaladsl.model.Uri
77
import akka.stream.Materializer
88
import cats.syntax.either._
9-
import defaults._
109
import com.typesafe.scalalogging.LazyLogging
1110
import io.circe._
1211
import io.circe.syntax._

src/main/scala/org/mdedetrich/stripe/v1/Errors.scala

Lines changed: 18 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,9 @@ package org.mdedetrich.stripe.v1
22

33
import akka.http.scaladsl.model.HttpResponse
44
import cats.instances.either._
5-
import cats.syntax.cartesian._
65
import cats.syntax.either._
7-
import defaults._
86
import enumeratum._
7+
import io.circe.Decoder.Result
98
import io.circe._
109

1110
object Errors {
@@ -113,34 +112,38 @@ object Errors {
113112
extends Error(429, `type`, code, message, param)
114113
}
115114

116-
private def errorDecoder(c: HCursor) =
117-
c.downField("type").as[Type] |@|
118-
c.downField("code").as[Option[Code]] |@|
119-
c.downField("message").as[Option[String]] |@|
120-
c.downField("param").as[Option[String]].map {
121-
case Some(s) if s.isEmpty => None
122-
case s => s
123-
}
115+
private def errorDecoder(
116+
c: HCursor): (Result[Type], Result[Option[Code]], Result[Option[String]], Result[Option[String]]) =
117+
(c.downField("type").as[Type],
118+
c.downField("code").as[Option[Code]],
119+
c.downField("message").as[Option[String]],
120+
c.downField("param").as[Option[String]].map {
121+
case Some(s) if s.isEmpty => None
122+
case s => s
123+
})
124+
125+
import cats.syntax.apply._
126+
import cats.instances.either._
124127

125128
implicit val badRequestDecoder: Decoder[Error.BadRequest] =
126129
Decoder.instance[Error.BadRequest] { c =>
127-
errorDecoder(c).map(Error.BadRequest.apply)
130+
errorDecoder(c).mapN(Error.BadRequest.apply)
128131
}
129132
implicit val unauthorizedDecoder: Decoder[Error.Unauthorized] =
130133
Decoder.instance[Error.Unauthorized] { c =>
131-
errorDecoder(c).map(Error.Unauthorized.apply)
134+
errorDecoder(c).mapN(Error.Unauthorized.apply)
132135
}
133136
implicit val requestFailedDecoder: Decoder[Error.RequestFailed] =
134137
Decoder.instance[Error.RequestFailed] { c =>
135-
errorDecoder(c).map(Error.RequestFailed.apply)
138+
errorDecoder(c).mapN(Error.RequestFailed.apply)
136139
}
137140
implicit val notFoundDecoder: Decoder[Error.NotFound] =
138141
Decoder.instance[Error.NotFound] { c =>
139-
errorDecoder(c).map(Error.NotFound.apply)
142+
errorDecoder(c).mapN(Error.NotFound.apply)
140143
}
141144
implicit val tooManyRequestsDecoder: Decoder[Error.TooManyRequests] =
142145
Decoder.instance[Error.TooManyRequests] { c =>
143-
errorDecoder(c).map(Error.TooManyRequests.apply)
146+
errorDecoder(c).mapN(Error.TooManyRequests.apply)
144147
}
145148

146149
private def errorEncoder: Encoder[Error] =

src/main/scala/org/mdedetrich/stripe/v1/PaymentSource.scala

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import akka.http.scaladsl.model.Uri.Query
88
import akka.stream.Materializer
99
import cats.syntax.either._
1010
import com.typesafe.scalalogging.LazyLogging
11-
import defaults._
1211
import enumeratum._
1312
import io.circe._
1413
import io.circe.syntax._

src/main/scala/org/mdedetrich/stripe/v1/TransferReversals.scala

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ import akka.http.scaladsl.model.Uri
77
import akka.http.scaladsl.model.Uri.Query
88
import akka.stream.Materializer
99
import com.typesafe.scalalogging.LazyLogging
10-
import defaults._
1110
import io.circe.{Decoder, Encoder}
1211
import org.mdedetrich.stripe.v1.defaults._
1312
import org.mdedetrich.stripe.{ApiKey, Endpoint, IdempotencyKey, PostParams}

src/main/scala/org/mdedetrich/stripe/v1/Transfers.scala

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ import akka.http.scaladsl.model.Uri
77
import akka.stream.Materializer
88
import cats.syntax.either._
99
import com.typesafe.scalalogging.LazyLogging
10-
import defaults._
1110
import enumeratum._
1211
import io.circe.{Decoder, Encoder}
1312
import org.mdedetrich.stripe.v1.BankAccounts._

0 commit comments

Comments
 (0)