Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 13 additions & 13 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -106,15 +106,15 @@ jobs:

- name: Make target directories
if: github.event_name != 'pull_request' && (startsWith(github.ref, 'refs/tags/v') || github.ref == 'refs/heads/main')
run: mkdir -p modules/http4s-ember/.jvm/target modules/json4s/.js/target modules/http4s-ember/.js/target modules/http4s/.jvm/target modules/http4s/.js/target modules/circe/.jvm/target modules/scalacheck/.native/target modules/client/.native/target unidocs/target modules/sttp/.native/target modules/client/.js/target modules/json4s/.native/target modules/jawn/.jvm/target modules/http4s-netty/.jvm/target modules/client/.jvm/target modules/manifests/.js/target modules/circe/.js/target modules/objects/.js/target modules/objects/.jvm/target modules/jawn/.js/target modules/spray-json/.jvm/target modules/play-json/.jvm/target modules/zio/.jvm/target modules/manifests/.jvm/target modules/http4s-blaze/.jvm/target modules/sttp/.js/target modules/http4s/.native/target modules/sttp/.jvm/target modules/http4s-jdk/.jvm/target modules/jawn/.native/target modules/circe/.native/target modules/zio-json/.js/target modules/objects/.native/target modules/json4s/.jvm/target modules/scalacheck/.jvm/target modules/zio-json/.jvm/target modules/java-ssl/.jvm/target modules/http4s-ember/.native/target modules/manifests/.native/target modules/scalacheck/.js/target project/target
run: mkdir -p modules/http4s-ember/.jvm/target modules/json4s/.js/target modules/http4s-ember/.js/target modules/http4s/.jvm/target modules/http4s/.js/target modules/circe/.jvm/target modules/scalacheck/.native/target modules/client/.native/target unidocs/target modules/sttp/.native/target modules/client/.js/target modules/json4s/.native/target modules/jawn/.jvm/target modules/http4s-netty/.jvm/target modules/client/.jvm/target modules/manifests/.js/target modules/circe/.js/target modules/objects/.js/target modules/objects/.jvm/target modules/jawn/.js/target modules/spray-json/.jvm/target modules/play-json/.jvm/target modules/zio/.jvm/target modules/manifests/.jvm/target modules/http4s-blaze/.jvm/target modules/sttp/.js/target modules/sttp/.jvm/target modules/http4s-jdk/.jvm/target modules/jawn/.native/target modules/circe/.native/target modules/zio-json/.js/target modules/objects/.native/target modules/json4s/.jvm/target modules/scalacheck/.jvm/target modules/zio-json/.jvm/target modules/java-ssl/.jvm/target modules/manifests/.native/target modules/scalacheck/.js/target project/target

- name: Compress target directories
if: github.event_name != 'pull_request' && (startsWith(github.ref, 'refs/tags/v') || github.ref == 'refs/heads/main')
run: tar cf targets.tar modules/http4s-ember/.jvm/target modules/json4s/.js/target modules/http4s-ember/.js/target modules/http4s/.jvm/target modules/http4s/.js/target modules/circe/.jvm/target modules/scalacheck/.native/target modules/client/.native/target unidocs/target modules/sttp/.native/target modules/client/.js/target modules/json4s/.native/target modules/jawn/.jvm/target modules/http4s-netty/.jvm/target modules/client/.jvm/target modules/manifests/.js/target modules/circe/.js/target modules/objects/.js/target modules/objects/.jvm/target modules/jawn/.js/target modules/spray-json/.jvm/target modules/play-json/.jvm/target modules/zio/.jvm/target modules/manifests/.jvm/target modules/http4s-blaze/.jvm/target modules/sttp/.js/target modules/http4s/.native/target modules/sttp/.jvm/target modules/http4s-jdk/.jvm/target modules/jawn/.native/target modules/circe/.native/target modules/zio-json/.js/target modules/objects/.native/target modules/json4s/.jvm/target modules/scalacheck/.jvm/target modules/zio-json/.jvm/target modules/java-ssl/.jvm/target modules/http4s-ember/.native/target modules/manifests/.native/target modules/scalacheck/.js/target project/target
run: tar cf targets.tar modules/http4s-ember/.jvm/target modules/json4s/.js/target modules/http4s-ember/.js/target modules/http4s/.jvm/target modules/http4s/.js/target modules/circe/.jvm/target modules/scalacheck/.native/target modules/client/.native/target unidocs/target modules/sttp/.native/target modules/client/.js/target modules/json4s/.native/target modules/jawn/.jvm/target modules/http4s-netty/.jvm/target modules/client/.jvm/target modules/manifests/.js/target modules/circe/.js/target modules/objects/.js/target modules/objects/.jvm/target modules/jawn/.js/target modules/spray-json/.jvm/target modules/play-json/.jvm/target modules/zio/.jvm/target modules/manifests/.jvm/target modules/http4s-blaze/.jvm/target modules/sttp/.js/target modules/sttp/.jvm/target modules/http4s-jdk/.jvm/target modules/jawn/.native/target modules/circe/.native/target modules/zio-json/.js/target modules/objects/.native/target modules/json4s/.jvm/target modules/scalacheck/.jvm/target modules/zio-json/.jvm/target modules/java-ssl/.jvm/target modules/manifests/.native/target modules/scalacheck/.js/target project/target

- name: Upload target directories
if: github.event_name != 'pull_request' && (startsWith(github.ref, 'refs/tags/v') || github.ref == 'refs/heads/main')
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v5
with:
name: target-${{ matrix.os }}-${{ matrix.java }}-${{ matrix.scala }}-${{ matrix.project }}
path: targets.tar
Expand Down Expand Up @@ -164,7 +164,7 @@ jobs:
run: sbt +update

- name: Download target directories (2.12, rootJS)
uses: actions/download-artifact@v4
uses: actions/download-artifact@v6
with:
name: target-${{ matrix.os }}-${{ matrix.java }}-2.12-rootJS

Expand All @@ -174,7 +174,7 @@ jobs:
rm targets.tar

- name: Download target directories (2.12, rootJVM)
uses: actions/download-artifact@v4
uses: actions/download-artifact@v6
with:
name: target-${{ matrix.os }}-${{ matrix.java }}-2.12-rootJVM

Expand All @@ -184,7 +184,7 @@ jobs:
rm targets.tar

- name: Download target directories (2.12, rootNative)
uses: actions/download-artifact@v4
uses: actions/download-artifact@v6
with:
name: target-${{ matrix.os }}-${{ matrix.java }}-2.12-rootNative

Expand All @@ -194,7 +194,7 @@ jobs:
rm targets.tar

- name: Download target directories (2.13, rootJS)
uses: actions/download-artifact@v4
uses: actions/download-artifact@v6
with:
name: target-${{ matrix.os }}-${{ matrix.java }}-2.13-rootJS

Expand All @@ -204,7 +204,7 @@ jobs:
rm targets.tar

- name: Download target directories (2.13, rootJVM)
uses: actions/download-artifact@v4
uses: actions/download-artifact@v6
with:
name: target-${{ matrix.os }}-${{ matrix.java }}-2.13-rootJVM

Expand All @@ -214,7 +214,7 @@ jobs:
rm targets.tar

- name: Download target directories (2.13, rootNative)
uses: actions/download-artifact@v4
uses: actions/download-artifact@v6
with:
name: target-${{ matrix.os }}-${{ matrix.java }}-2.13-rootNative

Expand All @@ -224,7 +224,7 @@ jobs:
rm targets.tar

- name: Download target directories (3, rootJS)
uses: actions/download-artifact@v4
uses: actions/download-artifact@v6
with:
name: target-${{ matrix.os }}-${{ matrix.java }}-3-rootJS

Expand All @@ -234,7 +234,7 @@ jobs:
rm targets.tar

- name: Download target directories (3, rootJVM)
uses: actions/download-artifact@v4
uses: actions/download-artifact@v6
with:
name: target-${{ matrix.os }}-${{ matrix.java }}-3-rootJVM

Expand All @@ -244,7 +244,7 @@ jobs:
rm targets.tar

- name: Download target directories (3, rootNative)
uses: actions/download-artifact@v4
uses: actions/download-artifact@v6
with:
name: target-${{ matrix.os }}-${{ matrix.java }}-3-rootNative

Expand Down Expand Up @@ -323,7 +323,7 @@ jobs:
- name: Submit Dependencies
uses: scalacenter/sbt-dependency-submission@v2
with:
modules-ignore: scala-k8s-client-test_sjs1_2.12 scala-k8s-client-test_sjs1_2.13 scala-k8s-client-test_sjs1_3 scala-k8s-client-test_2.12 scala-k8s-client-test_2.13 scala-k8s-client-test_3 scala-k8s_2.12 scala-k8s_2.13 scala-k8s_3 docs_2.12 docs_2.13 docs_3 scala-k8s-example-cross-platform_sjs1_2.12 scala-k8s-example-cross-platform_sjs1_2.13 scala-k8s-example-cross-platform_sjs1_3 scala-k8s-codec-test_2.12 scala-k8s-codec-test_2.13 scala-k8s-codec-test_3 scala-k8s-objects-test_sjs1_2.12 scala-k8s-objects-test_sjs1_2.13 scala-k8s-objects-test_sjs1_3 scala-k8s-codec-test_native0.4_2.12 scala-k8s-codec-test_native0.4_2.13 scala-k8s-codec-test_native0.4_3 scala-k8s-example-jvm_2.12 scala-k8s-example-jvm_2.13 scala-k8s-example-jvm_3 scala-k8s-codec-test_sjs1_2.12 scala-k8s-codec-test_sjs1_2.13 scala-k8s-codec-test_sjs1_3 scala-k8s-example-cross-platform_native0.4_2.12 scala-k8s-example-cross-platform_native0.4_2.13 scala-k8s-example-cross-platform_native0.4_3 scala-k8s_2.12 scala-k8s_2.13 scala-k8s_3 scala-k8s_2.12 scala-k8s_2.13 scala-k8s_3 scala-k8s-objects-test_2.12 scala-k8s-objects-test_2.13 scala-k8s-objects-test_3 scala-k8s-example-cross-platform_2.12 scala-k8s-example-cross-platform_2.13 scala-k8s-example-cross-platform_3
modules-ignore: scala-k8s-client-test_sjs1_2.12 scala-k8s-client-test_sjs1_2.13 scala-k8s-client-test_sjs1_3 scala-k8s-client-test_2.12 scala-k8s-client-test_2.13 scala-k8s-client-test_3 scala-k8s_2.12 scala-k8s_2.13 scala-k8s_3 docs_2.12 docs_2.13 docs_3 scala-k8s-example-cross-platform_sjs1_2.12 scala-k8s-example-cross-platform_sjs1_2.13 scala-k8s-example-cross-platform_sjs1_3 scala-k8s-codec-test_2.12 scala-k8s-codec-test_2.13 scala-k8s-codec-test_3 scala-k8s-objects-test_sjs1_2.12 scala-k8s-objects-test_sjs1_2.13 scala-k8s-objects-test_sjs1_3 scala-k8s-codec-test_native0.5_2.12 scala-k8s-codec-test_native0.5_2.13 scala-k8s-codec-test_native0.5_3 scala-k8s-example-jvm_2.12 scala-k8s-example-jvm_2.13 scala-k8s-example-jvm_3 scala-k8s-codec-test_sjs1_2.12 scala-k8s-codec-test_sjs1_2.13 scala-k8s-codec-test_sjs1_3 scala-k8s_2.12 scala-k8s_2.13 scala-k8s_3 scala-k8s_2.12 scala-k8s_2.13 scala-k8s_3 scala-k8s-objects-test_2.12 scala-k8s-objects-test_2.13 scala-k8s-objects-test_3 scala-k8s-example-cross-platform_2.12 scala-k8s-example-cross-platform_2.13 scala-k8s-example-cross-platform_3
configs-ignore: test scala-tool scala-doc-tool test-internal

validate-steward:
Expand Down
59 changes: 34 additions & 25 deletions build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import dev.hnaderi.k8s.generator.KubernetesJsonPointerGeneratorPlugin
import dev.hnaderi.k8s.generator.KubernetesScalacheckGeneratorPlugin
import sbtcrossproject.CrossProject

ThisBuild / tlBaseVersion := "0.25"
ThisBuild / tlBaseVersion := "0.26"

ThisBuild / organization := "dev.hnaderi"
ThisBuild / organizationName := "Hossein Naderi"
Expand All @@ -13,7 +13,7 @@ ThisBuild / developers := List(
)

val scala212 = "2.12.20"
val scala213 = "2.13.16"
val scala213 = "2.13.18"
val scala3 = "3.3.7"
val PrimaryJava = JavaSpec.temurin("11")
val LTSJava = JavaSpec.temurin("17")
Expand Down Expand Up @@ -79,8 +79,8 @@ lazy val root =
name := "scala-k8s"
)

lazy val circeVersion = "0.14.8"
lazy val munitVersion = "1.0.0-M11"
lazy val circeVersion = "0.14.15"
lazy val munitVersion = "1.2.0"

val rootDir = Def.setting((ThisBuild / baseDirectory).value)

Expand Down Expand Up @@ -138,25 +138,31 @@ lazy val javaSSL = module("java-ssl") {
}

lazy val http4s = module("http4s") {
crossProject(JVMPlatform, JSPlatform, NativePlatform)
crossProject(
JVMPlatform,
JSPlatform // ,NativePlatform TODO enable after typelevel adopted
)
.crossType(CrossType.Pure)
.settings(
description := "http4s based client for kubernetes",
libraryDependencies ++= Seq(
"org.http4s" %%% "http4s-client" % "0.23.30"
"org.http4s" %%% "http4s-client" % "0.23.33"
)
)
.dependsOn(client, jawn)
.jvmConfigure(_.dependsOn(javaSSL.jvm))
}

lazy val http4sEmber = module("http4s-ember") {
crossProject(JVMPlatform, JSPlatform, NativePlatform)
crossProject(
JVMPlatform,
JSPlatform // , NativePlatform
)
.crossType(CrossType.Pure)
.settings(
description := "http4s ember based client for kubernetes",
libraryDependencies ++= Seq(
"org.http4s" %%% "http4s-ember-client" % "0.23.30"
"org.http4s" %%% "http4s-ember-client" % "0.23.33"
)
)
.dependsOn(http4s)
Expand All @@ -167,7 +173,7 @@ lazy val http4sNetty = module("http4s-netty") {
.settings(
description := "http4s netty based client for kubernetes",
libraryDependencies ++= Seq(
"org.http4s" %% "http4s-netty-client" % "0.5.25"
"org.http4s" %% "http4s-netty-client" % "0.5.26"
)
)
.dependsOn(http4s)
Expand Down Expand Up @@ -202,7 +208,7 @@ lazy val sttp = module("sttp") {
.settings(
description := "sttp based client for kubernetes",
libraryDependencies ++= Seq(
"com.softwaremill.sttp.client3" %%% "core" % "3.9.8"
"com.softwaremill.sttp.client3" %%% "core" % "3.11.0"
)
)
.dependsOn(client, jawn)
Expand All @@ -215,8 +221,8 @@ lazy val zio = module("zio") {
.settings(
description := "zio-http based client for kubernetes",
libraryDependencies ++= Seq(
"dev.zio" %% "zio-http" % "3.0.0-RC4",
"dev.zio" %%% "zio-json" % "0.6.2"
"dev.zio" %% "zio-http" % "3.0.1",
"dev.zio" %%% "zio-json" % "0.7.45"
)
)
.dependsOn(client, `zio-json`)
Expand All @@ -229,7 +235,7 @@ lazy val scalacheck = module("scalacheck") {
description := "scalacheck generators for kubernetes data models",
k8sUnmanagedTarget := rootDir.value / "modules" / "scalacheck" / "src" / "main" / "scala",
libraryDependencies ++= Seq(
"org.scalacheck" %%% "scalacheck" % "1.17.1"
"org.scalacheck" %%% "scalacheck" % "1.19.0"
)
)
.dependsOn(objects)
Expand Down Expand Up @@ -309,7 +315,7 @@ lazy val `play-json` = module("play-json") {
.settings(
description := "play-json codecs for kubernetes data models",
libraryDependencies ++= Seq(
("org.playframework" %%% "play-json" % "3.0.4")
("org.playframework" %%% "play-json" % "3.0.6")
.cross(CrossVersion.for3Use2_13)
)
)
Expand All @@ -336,7 +342,7 @@ lazy val `zio-json` = module("zio-json") {
.settings(
description := "zio-json codecs for kubernetes data models",
libraryDependencies ++= Seq(
"dev.zio" %%% "zio-json" % "0.6.2"
"dev.zio" %%% "zio-json" % "0.7.21"
)
)
.dependsOn(objects)
Expand All @@ -349,7 +355,7 @@ lazy val jawn = module("jawn") {
.settings(
description := "jawn facade for kubernetes data models parsing",
libraryDependencies ++= Seq(
"org.typelevel" %%% "jawn-parser" % "1.5.1"
"org.typelevel" %%% "jawn-parser" % "1.6.0"
)
)
.dependsOn(objects)
Expand All @@ -361,7 +367,7 @@ lazy val manifests = module("manifests") {
.settings(
description := "kubernetes manifests utilities",
libraryDependencies ++= Seq(
"dev.hnaderi" %%% "yaml4s-backend" % "0.2.2"
"dev.hnaderi" %%% "yaml4s-backend" % "0.3.2"
)
)
.dependsOn(objects)
Expand All @@ -373,7 +379,7 @@ lazy val docs = project
.enablePlugins(ScalaK8sWebsite)
.settings(
libraryDependencies ++= Seq(
"org.http4s" %%% "http4s-circe" % "0.23.30",
"org.http4s" %%% "http4s-circe" % "0.23.33",
"com.softwaremill.sttp.client3" %%% "circe" % "3.11.0"
)
)
Expand Down Expand Up @@ -411,19 +417,22 @@ lazy val exampleJVM = example("jvm") {
.crossType(CrossType.Pure)
.settings(
libraryDependencies ++= Seq(
"org.http4s" %%% "http4s-circe" % "0.23.30",
"org.http4s" %%% "http4s-circe" % "0.23.33",
"com.softwaremill.sttp.client3" %%% "circe" % "3.11.0"
)
)
.dependsOn(http4sNetty, http4sEmber, circe, zio, sttp)
}

lazy val exampleCrossPlatform = example("cross-platform") {
crossProject(JVMPlatform, JSPlatform, NativePlatform)
crossProject(
JVMPlatform,
JSPlatform // , NativePlatform
)
.crossType(CrossType.Pure)
.settings(
libraryDependencies ++= Seq(
"org.http4s" %%% "http4s-circe" % "0.23.30"
"org.http4s" %%% "http4s-circe" % "0.23.33"
)
)
.jsSettings(
Expand All @@ -433,10 +442,10 @@ lazy val exampleCrossPlatform = example("cross-platform") {
// scalaJSLinkerConfig ~= { _.withModuleKind(ModuleKind.ESModule) }
)
.jsConfigure(_.enablePlugins(ScalaJSBundlerPlugin))
.nativeSettings(
libraryDependencies += "com.armanbilge" %%% "epollcat" % "0.1.6",
envVars ++= Map("S2N_DONT_MLOCK" -> "1")
)
// .nativeSettings(
// libraryDependencies += "com.armanbilge" %%% "epollcat" % "0.1.6",
// envVars ++= Map("S2N_DONT_MLOCK" -> "1")
// )
.dependsOn(http4sEmber, circe)
}

Expand Down
2 changes: 1 addition & 1 deletion modules/zio/src/main/scala/ZIOBackend.scala
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ final case class ZIOBackend(
case Some(value) => qs.updated(k, Chunk(v) ++ value)
}
}
} yield u.queryParams(qp)
} yield u.setQueryParams(QueryParams(qp))

private def expect[O: Decoder](req: http.Request): ScopedTask[O] =
client.request(req).flatMap { res =>
Expand Down
8 changes: 4 additions & 4 deletions project/plugins.sbt
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
addSbtPlugin("org.typelevel" % "sbt-typelevel" % "0.8.2")
addSbtPlugin("org.typelevel" % "sbt-typelevel-site" % "0.8.2")
addSbtPlugin("org.typelevel" % "sbt-typelevel" % "0.8.3")
addSbtPlugin("org.typelevel" % "sbt-typelevel-site" % "0.8.3")
addSbtPlugin("org.portable-scala" % "sbt-scalajs-crossproject" % "1.3.2")
addSbtPlugin("org.portable-scala" % "sbt-scala-native-crossproject" % "1.3.2")
addSbtPlugin("org.scala-js" % "sbt-scalajs" % "1.16.0")
addSbtPlugin("org.scala-native" % "sbt-scala-native" % "0.4.17")
addSbtPlugin("org.scala-js" % "sbt-scalajs" % "1.20.1")
addSbtPlugin("org.scala-native" % "sbt-scala-native" % "0.5.9")
addSbtPlugin("com.eed3si9n" % "sbt-buildinfo" % "0.13.1")
addSbtPlugin("ch.epfl.scala" % "sbt-scalajs-bundler" % "0.21.1")
Loading