Skip to content

Commit

Permalink
Merge branch 'main' into non-empty-collection
Browse files Browse the repository at this point in the history
  • Loading branch information
987Nabil authored Aug 14, 2024
2 parents 25b281d + b178062 commit 61f5fd6
Show file tree
Hide file tree
Showing 21 changed files with 182 additions and 174 deletions.
15 changes: 10 additions & 5 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
name: CI

env:
JDK_JAVA_OPTIONS: -XX:+PrintCommandLineFlags -Xmx6G -Xss4M -XX:+UseG1GC # JDK_JAVA_OPTIONS is _the_ env. variable to use for modern Java
JVM_OPTS: -XX:+PrintCommandLineFlags -Xmx6G -Xss4M -XX:+UseG1GC # for Java 8 only (sadly, it is not modern enough for JDK_JAVA_OPTIONS)
JDK_JAVA_OPTIONS: -XX:+PrintCommandLineFlags -Xmx6G -Xss4M -XX:+UseG1GC
NODE_OPTIONS: --max_old_space_size=6144

on:
Expand Down Expand Up @@ -38,16 +37,16 @@ jobs:
strategy:
fail-fast: false
matrix:
java: ['adopt@1.11', 'openjdk@1.17']
java: ['temurin:17', 'temurin:21']
scala: ['2.12.18', '2.13.12', '3.3.1']
platform: ['JVM', 'Native', 'JS']
steps:
- uses: actions/checkout@v3.0.0
with:
fetch-depth: 0
- uses: olafurpg/setup-scala@v13
- uses: coursier/setup-action@v1
with:
java-version: ${{ matrix.java }}
jvm: ${{ matrix.java }}
- name: Cache scala dependencies
uses: coursier/cache-action@v6
- name: Install libuv
Expand All @@ -56,6 +55,12 @@ jobs:
- name: Run tests
run: sbt ++${{ matrix.scala }}! test${{ matrix.platform }}

ci:
runs-on: ubuntu-20.04
needs: [build,lint]
steps:
- run: echo "All checks passed"

publish:
runs-on: ubuntu-20.04
timeout-minutes: 45
Expand Down
48 changes: 25 additions & 23 deletions build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@ import sbtcrossproject.CrossPlugin.autoImport._
import BuildHelper.{ crossProjectSettings, _ }
import org.scalajs.sbtplugin.ScalaJSPlugin.autoImport._

Global / onChangedBuildSource := ReloadOnSourceChanges

inThisBuild(
List(
name := "zio-schema",
Expand Down Expand Up @@ -127,13 +129,13 @@ lazy val zioSchemaMacros = crossProject(JSPlatform, JVMPlatform, NativePlatform)
.nativeSettings(Test / fork := false)
.nativeSettings(
libraryDependencies ++= Seq(
"io.github.cquiroz" %%% "scala-java-time" % "2.5.0"
"io.github.cquiroz" %%% "scala-java-time" % scalaJavaTimeVersion
)
)
.jsSettings(
libraryDependencies ++= Seq(
"io.github.cquiroz" %%% "scala-java-time" % "2.5.0",
"io.github.cquiroz" %%% "scala-java-time-tzdb" % "2.5.0"
"io.github.cquiroz" %%% "scala-java-time" % scalaJavaTimeVersion,
"io.github.cquiroz" %%% "scala-java-time-tzdb" % scalaJavaTimeVersion
)
)
.settings(testDeps)
Expand All @@ -157,13 +159,13 @@ lazy val zioSchema = crossProject(JSPlatform, JVMPlatform, NativePlatform)
.nativeSettings(Test / fork := false)
.nativeSettings(
libraryDependencies ++= Seq(
"io.github.cquiroz" %%% "scala-java-time" % "2.5.0"
"io.github.cquiroz" %%% "scala-java-time" % scalaJavaTimeVersion
)
)
.jsSettings(
libraryDependencies ++= Seq(
"io.github.cquiroz" %%% "scala-java-time" % "2.5.0",
"io.github.cquiroz" %%% "scala-java-time-tzdb" % "2.5.0"
"io.github.cquiroz" %%% "scala-java-time" % scalaJavaTimeVersion,
"io.github.cquiroz" %%% "scala-java-time-tzdb" % scalaJavaTimeVersion
)
)
.settings(testDeps)
Expand Down Expand Up @@ -212,13 +214,13 @@ lazy val zioSchemaDerivation = crossProject(JSPlatform, JVMPlatform, NativePlatf
.nativeSettings(Test / fork := false)
.nativeSettings(
libraryDependencies ++= Seq(
"io.github.cquiroz" %%% "scala-java-time" % "2.5.0"
"io.github.cquiroz" %%% "scala-java-time" % scalaJavaTimeVersion
)
)
.jsSettings(
libraryDependencies ++= Seq(
"io.github.cquiroz" %%% "scala-java-time" % "2.5.0",
"io.github.cquiroz" %%% "scala-java-time-tzdb" % "2.5.0"
"io.github.cquiroz" %%% "scala-java-time" % scalaJavaTimeVersion,
"io.github.cquiroz" %%% "scala-java-time-tzdb" % scalaJavaTimeVersion
)
)
.settings(testDeps)
Expand All @@ -241,13 +243,13 @@ lazy val zioSchemaJson = crossProject(JSPlatform, JVMPlatform, NativePlatform)
.nativeSettings(Test / fork := false)
.nativeSettings(
libraryDependencies ++= Seq(
"io.github.cquiroz" %%% "scala-java-time" % "2.5.0"
"io.github.cquiroz" %%% "scala-java-time" % scalaJavaTimeVersion
)
)
.jsSettings(
libraryDependencies ++= Seq(
"io.github.cquiroz" %%% "scala-java-time" % "2.5.0",
"io.github.cquiroz" %%% "scala-java-time-tzdb" % "2.5.0"
"io.github.cquiroz" %%% "scala-java-time" % scalaJavaTimeVersion,
"io.github.cquiroz" %%% "scala-java-time-tzdb" % scalaJavaTimeVersion
)
)
.jsSettings(scalaJSLinkerConfig ~= { _.withOptimizer(false) })
Expand All @@ -268,13 +270,13 @@ lazy val zioSchemaProtobuf = crossProject(JSPlatform, JVMPlatform, NativePlatfor
.nativeSettings(Test / fork := false)
.nativeSettings(
libraryDependencies ++= Seq(
"io.github.cquiroz" %%% "scala-java-time" % "2.5.0"
"io.github.cquiroz" %%% "scala-java-time" % scalaJavaTimeVersion
)
)
.jsSettings(
libraryDependencies ++= Seq(
"io.github.cquiroz" %%% "scala-java-time" % "2.5.0",
"io.github.cquiroz" %%% "scala-java-time-tzdb" % "2.5.0"
"io.github.cquiroz" %%% "scala-java-time" % scalaJavaTimeVersion,
"io.github.cquiroz" %%% "scala-java-time-tzdb" % scalaJavaTimeVersion
)
)
.settings(testDeps)
Expand All @@ -292,8 +294,8 @@ lazy val zioSchemaThrift = project
.settings(buildInfoSettings("zio.schema.thrift"))
.settings(
libraryDependencies ++= Seq(
"org.apache.thrift" % "libthrift" % thriftVersion,
"javax.annotation" % "javax.annotation-api" % javaxAnnotationApiVersion
"org.apache.thrift" % "libthrift" % thriftVersion,
"jakarta.annotation" % "jakarta.annotation-api" % javaxAnnotationApiVersion
)
)
.settings(testDeps)
Expand Down Expand Up @@ -359,13 +361,13 @@ lazy val zioSchemaOptics = crossProject(JSPlatform, JVMPlatform, NativePlatform)
.nativeSettings(Test / fork := false)
.nativeSettings(
libraryDependencies ++= Seq(
"io.github.cquiroz" %%% "scala-java-time" % "2.5.0"
"io.github.cquiroz" %%% "scala-java-time" % scalaJavaTimeVersion
)
)
.jsSettings(
libraryDependencies ++= Seq(
"io.github.cquiroz" %%% "scala-java-time" % "2.5.0",
"io.github.cquiroz" %%% "scala-java-time-tzdb" % "2.5.0"
"io.github.cquiroz" %%% "scala-java-time" % scalaJavaTimeVersion,
"io.github.cquiroz" %%% "scala-java-time-tzdb" % scalaJavaTimeVersion
)
)
.settings(testDeps)
Expand All @@ -389,13 +391,13 @@ lazy val zioSchemaExamples = crossProject(JSPlatform, JVMPlatform, NativePlatfor
.nativeSettings(Test / fork := false)
.nativeSettings(
libraryDependencies ++= Seq(
"io.github.cquiroz" %%% "scala-java-time" % "2.5.0"
"io.github.cquiroz" %%% "scala-java-time" % scalaJavaTimeVersion
)
)
.jsSettings(
libraryDependencies ++= Seq(
"io.github.cquiroz" %%% "scala-java-time" % "2.5.0",
"io.github.cquiroz" %%% "scala-java-time-tzdb" % "2.5.0"
"io.github.cquiroz" %%% "scala-java-time" % scalaJavaTimeVersion,
"io.github.cquiroz" %%% "scala-java-time-tzdb" % scalaJavaTimeVersion
)
)
.settings(testDeps)
Expand Down
41 changes: 21 additions & 20 deletions project/BuildHelper.scala
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
import sbt._
import Keys._

import sbtcrossproject.CrossPlugin.autoImport._
import sbtbuildinfo._
import BuildInfoKeys._
import scalafix.sbt.ScalafixPlugin.autoImport._
import sbt.*
import Keys.*
import sbtcrossproject.CrossPlugin.autoImport.*
import sbtbuildinfo.*
import BuildInfoKeys.*
import scalafix.sbt.ScalafixPlugin.autoImport.*
import scalanativecrossproject.NativePlatform

import scala.scalanative.sbtplugin.ScalaNativePlugin.autoImport.nativeConfig

object BuildHelper {

private val versions: Map[String, String] = {
Expand All @@ -26,20 +27,20 @@ object BuildHelper {
val Scala213: String = versions("2.13")
val Scala3: String = versions("3.3")

val zioVersion = "2.0.19"
val zioJsonVersion = "0.6.2"
val zioPreludeVersion = "1.0.0-RC21"
val zioOpticsVersion = "0.2.1"
val zioBsonVersion = "1.0.5"
val silencerVersion = "1.7.14"
val zioVersion = "2.1.7"
val zioJsonVersion = "0.7.2"
val zioPreludeVersion = "1.0.0-RC28"
val zioOpticsVersion = "0.2.2"
val zioBsonVersion = "1.0.6"
val avroVersion = "1.11.3"
val bsonVersion = "4.11.1"
val zioConstraintlessVersion = "0.3.2"
val scalaCollectionCompatVersion = "2.10.0"
val msgpackVersion = "0.9.6"
val jacksonScalaVersion = "2.15.2"
val thriftVersion = "0.16.0"
val javaxAnnotationApiVersion = "1.3.2"
val bsonVersion = "4.11.3"
val zioConstraintlessVersion = "0.3.3"
val scalaCollectionCompatVersion = "2.12.0"
val msgpackVersion = "0.9.8"
val jacksonScalaVersion = "2.17.2"
val thriftVersion = "0.20.0"
val javaxAnnotationApiVersion = "1.3.5"
val scalaJavaTimeVersion = "2.6.0"

def macroDefinitionSettings = Seq(
scalacOptions += "-language:experimental.macros",
Expand Down
4 changes: 2 additions & 2 deletions project/plugins.sbt
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
addSbtPlugin("org.scalameta" % "sbt-scalafmt" % "2.4.5")
addSbtPlugin("ch.epfl.scala" % "sbt-scalafix" % "0.11.1")
addSbtPlugin("com.github.cb372" % "sbt-explicit-dependencies" % "0.3.1")
addSbtPlugin("org.scala-js" % "sbt-scalajs" % "1.15.0")
addSbtPlugin("org.scala-js" % "sbt-scalajs" % "1.16.0")
addSbtPlugin("org.portable-scala" % "sbt-scalajs-crossproject" % "1.3.2")
addSbtPlugin("com.eed3si9n" % "sbt-buildinfo" % "0.11.0")
addSbtPlugin("com.github.sbt" % "sbt-ci-release" % "1.5.12")
addSbtPlugin("org.portable-scala" % "sbt-scala-native-crossproject" % "1.3.2")
addSbtPlugin("org.scala-native" % "sbt-scala-native" % "0.4.16")
addSbtPlugin("org.scala-native" % "sbt-scala-native" % "0.5.3")
addSbtPlugin("pl.project13.scala" % "sbt-jmh" % "0.4.6")
addSbtPlugin("dev.zio" % "zio-sbt-website" % "0.4.0-alpha.22")

Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit 61f5fd6

Please sign in to comment.