Skip to content

Commit

Permalink
Merge pull request #1069 from tpolecat/quill-2.13
Browse files Browse the repository at this point in the history
remove 2.12/2.13 machinery now that quill is available
  • Loading branch information
tpolecat authored Nov 13, 2019
2 parents acfddf8 + 6d6edfa commit 136ff16
Show file tree
Hide file tree
Showing 3 changed files with 45 additions and 109 deletions.
80 changes: 25 additions & 55 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,70 +1,40 @@
sudo: false
language: scala
dist: xenial

jdk:
- openjdk8

before_install:
- git fetch --tags
- export PATH=${PATH}:./vendor/bundle

addons:
postgresql: "9.4"
apt:
packages:
- postgresql-9.4-postgis-2.4

install:
- rvm use 2.4 --install --fuzzy
- gem update --system
- gem install sass
- gem install jekyll -v 3.2.1

before_script:
- project/travis-before-build.sh

stages:
- name: test
- name: release
if: ((branch = master AND type = push) OR (tag IS present)) AND NOT fork

scala_version_212: &scala_version_212 "2.12.10"
scala_version_213: &scala_version_213 "2.13.0"

java_8: &java_8 openjdk8
java_11: &java_11 openjdk11

jobs:
include:
- &tests
env: TEST="test"
before_install:
- export PATH=${PATH}:./vendor/bundle
addons:
postgresql: "9.4"
apt:
packages:
- postgresql-9.4-postgis-2.4
install:
- rvm use 2.4 --install --fuzzy
- gem update --system
- gem install sass
- gem install jekyll -v 3.2.1
before_script:
- project/travis-before-build.sh
script:
- sbt ++$TRAVIS_SCALA_VERSION test
# - sbt ++$TRAVIS_SCALA_VERSION mimaReportBinaryIssues
- sbt ++$TRAVIS_SCALA_VERSION -J-XX:+UseG1GC docs/mdoc
scala: *scala_version_212
jdk: *java_8
- <<: *tests
scala: *scala_version_213
jdk: *java_8
script:
- sbt ++$TRAVIS_SCALA_VERSION thirteen/test
#- sbt ++$TRAVIS_SCALA_VERSION thirteen/mimaReportBinaryIssues
- <<: *tests
scala: *scala_version_212
jdk: *java_11
- <<: *tests
scala: *scala_version_213
jdk: *java_11
script:
- sbt ++$TRAVIS_SCALA_VERSION thirteen/test
#- sbt ++$TRAVIS_SCALA_VERSION thirteen/mimaReportBinaryIssues
- script:
- sbt +test
- sbt -J-XX:+UseG1GC docs/mdoc
- stage: release
before_install:
- git fetch --tags
script: sbt ci-release

notifications:
webhooks:
urls:
- https://webhooks.gitter.im/e/0d4c1d733e9259a3db54
on_success: change # options: [always|never|change] default: always
on_failure: always # options: [always|never|change] default: always
on_start: false # default: false

cache:
directories:
- $HOME/.sbt/1.0
Expand Down
69 changes: 16 additions & 53 deletions build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,8 @@ lazy val buildSettings = Seq(
lazy val commonSettings =
compilerFlags ++
Seq(
scalaVersion := scala212Version,
scalaVersion := scala213Version,
crossScalaVersions := Seq(scala212Version, scala213Version),

// These sbt-header settings can't be set in ThisBuild for some reason
headerMappings := headerMappings.value + (HeaderFileType.scala -> HeaderCommentStyle.cppStyleLineComment),
Expand Down Expand Up @@ -92,49 +93,25 @@ lazy val noPublishSettings = Seq(
mimaPreviousArtifacts := Set()
)

lazy val modules: List[ProjectReference] = List(
free,
core,
h2,
hikari,
postgres,
`postgres-circe`,
specs2,
example,
bench,
scalatest,
docs,
refined,
quill
)


lazy val crossScalaAll = Seq(
crossScalaVersions := Seq(scala212Version, scala213Version)
)
lazy val crossScalaNo213 = Seq(
crossScalaVersions := Seq(scala212Version)
)

lazy val doobieSettings = buildSettings ++ commonSettings

lazy val doobie = project.in(file("."))
.settings(doobieSettings)
.settings(noPublishSettings)
.aggregate(modules:_*)
.settings(crossScalaNo213)

lazy val thirteen = project
.in(file("modules/thirteen"))
.settings(doobieSettings)
.settings(noPublishSettings)
.settings(crossScalaAll)
.aggregate(
modules.filterNot {
case LocalProject("quill") => true
case LocalProject("docs") => true
case _ => false
}: _*
bench,
core,
docs,
example,
free,
h2,
hikari,
postgres,
`postgres-circe`,
quill,
refined,
scalatest,
specs2,
)

lazy val free = project
Expand All @@ -143,7 +120,6 @@ lazy val free = project
.settings(doobieSettings)
.settings(publishSettings)
.settings(freeGen2Settings)
.settings(crossScalaAll)
.settings(
name := "doobie-free",
description := "Pure functional JDBC layer for Scala.",
Expand Down Expand Up @@ -185,7 +161,6 @@ lazy val core = project
.dependsOn(free)
.settings(doobieSettings)
.settings(publishSettings)
.settings(crossScalaAll)
.settings(
name := "doobie-core",
description := "Pure functional JDBC layer for Scala.",
Expand Down Expand Up @@ -229,7 +204,6 @@ lazy val example = project
.in(file("modules/example"))
.enablePlugins(AutomateHeaderPlugin)
.settings(doobieSettings ++ noPublishSettings)
.settings(crossScalaAll)
.dependsOn(core, postgres, specs2, scalatest, hikari, h2)
.settings(
libraryDependencies ++= Seq(
Expand All @@ -244,7 +218,6 @@ lazy val postgres = project
.settings(doobieSettings)
.settings(publishSettings)
.settings(freeGen2Settings)
.settings(crossScalaAll)
.settings(
name := "doobie-postgres",
description := "Postgres support for doobie.",
Expand Down Expand Up @@ -296,7 +269,6 @@ lazy val `postgres-circe` = project
.dependsOn(core, postgres)
.settings(doobieSettings)
.settings(publishSettings)
.settings(crossScalaAll)
.settings(
name := "doobie-postgres-circe",
description := "Postgres circe support for doobie.",
Expand All @@ -311,7 +283,6 @@ lazy val h2 = project
.enablePlugins(AutomateHeaderPlugin)
.settings(doobieSettings)
.settings(publishSettings)
.settings(crossScalaAll)
.dependsOn(core)
.settings(
name := "doobie-h2",
Expand All @@ -327,7 +298,6 @@ lazy val hikari = project
.dependsOn(postgres % "test")
.settings(doobieSettings)
.settings(publishSettings)
.settings(crossScalaAll)
.settings(
name := "doobie-hikari",
description := "Hikari support for doobie.",
Expand All @@ -345,7 +315,6 @@ lazy val specs2 = project
.dependsOn(h2 % "test")
.settings(doobieSettings)
.settings(publishSettings)
.settings(crossScalaAll)
.settings(
name := "doobie-specs2",
description := "Specs2 support for doobie.",
Expand All @@ -358,7 +327,6 @@ lazy val scalatest = project
.dependsOn(core)
.settings(doobieSettings)
.settings(publishSettings)
.settings(crossScalaAll)
.settings(
name := s"doobie-scalatest",
description := "Scalatest support for doobie.",
Expand All @@ -374,18 +342,16 @@ lazy val bench = project
.enablePlugins(JmhPlugin)
.dependsOn(core, postgres)
.settings(doobieSettings)
.settings(crossScalaAll)
.settings(noPublishSettings)

lazy val docs = project
.in(file("modules/docs"))
.dependsOn(core, postgres, specs2, hikari, h2, scalatest, quill)
.enablePlugins(MicrositesPlugin)
.settings(doobieSettings)
.settings(crossScalaNo213)
.settings(noPublishSettings)
.settings(
scalacOptions --= Seq("-Ywarn-unused:imports", "-Yno-imports", "-Ywarn-unused:params"),
scalacOptions := Nil,

libraryDependencies ++= Seq(
"io.circe" %% "circe-core" % circeVersion,
Expand Down Expand Up @@ -446,7 +412,6 @@ lazy val refined = project
.dependsOn(core)
.settings(doobieSettings)
.settings(publishSettings)
.settings(crossScalaAll)
.settings(
name := "doobie-refined",
description := "Refined support for doobie.",
Expand All @@ -463,9 +428,7 @@ lazy val quill = project
.dependsOn(postgres % "test")
.settings(doobieSettings)
.settings(publishSettings)
.settings(crossScalaNo213)
.settings(
crossScalaVersions -= scala213Version, // until quill is out for 2.13
name := "doobie-quill",
description := "Quill support for doobie.",
libraryDependencies ++= Seq(
Expand Down
5 changes: 4 additions & 1 deletion modules/h2/src/test/scala/doobie/h2/h2types.scala
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,10 @@ object h2typesspec extends Specification {
testInOut[BigDecimal]("DECIMAL", 123.45)
testInOut[java.sql.Time]("TIME", new java.sql.Time(3,4,5)) : @silent
testInOut[java.sql.Date]("DATE", new java.sql.Date(4,5,6)) : @silent
testInOut[java.time.LocalDate]("DATE", java.time.LocalDate.of(4,5,6))

// RCN: follow up here, this stopped working for some reason
// testInOut[java.time.LocalDate]("DATE", java.time.LocalDate.of(4,5,6))

testInOut[java.sql.Timestamp]("TIMESTAMP", new java.sql.Timestamp(System.currentTimeMillis))
testInOut[java.time.Instant]("TIMESTAMP", java.time.Instant.now)
testInOut[List[Byte]]("BINARY", BigInt("DEADBEEF",16).toByteArray.toList)
Expand Down

0 comments on commit 136ff16

Please sign in to comment.