Skip to content

Commit

Permalink
Merge pull request #14 from altoo-ag/update-kryo
Browse files Browse the repository at this point in the history
Upgrades kryo from 5.5.0 to 5.6.0 and switches to library version
  • Loading branch information
danischroeter authored Jan 26, 2024
2 parents 1320000 + e8f280f commit 41b8d31
Show file tree
Hide file tree
Showing 29 changed files with 58 additions and 57 deletions.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ We provide several versions of the library:

| Version | Kryo Compatibility | Available Scala Versions | Tested with |
|---------|--------------------|--------------------------|---------------------------------------------------------------------|
| v1.2.x | Kryo-5.6 | 2.12,2.13,3 | JDK: OpenJdk11,OpenJdk17,OpenJdk21 Scala: 2.12.18,2.13.11,3.3.1 |
| v1.1.x | Kryo-5.5 | 2.12,2.13,3 | JDK: OpenJdk11,OpenJdk17,OpenJdk21 Scala: 2.12.18,2.13.11,3.3.1 |
| v1.0.x | Kryo-5.4 | 2.12,2.13,3 | JDK: OpenJdk11,OpenJdk17 Scala: 2.12.18,2.13.11,3.3.1 |

Expand Down
4 changes: 2 additions & 2 deletions build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import sbtrelease.ReleasePlugin.autoImport.ReleaseTransformations._
val mainScalaVersion = "3.3.1"
val secondaryScalaVersions = Seq("2.12.18", "2.13.12")

val kryoVersion = "5.5.0"
val kryoVersion = "5.6.0"
enablePlugins(ReleasePlugin)
addCommandAlias("validatePullRequest", ";+test")

Expand Down Expand Up @@ -41,7 +41,7 @@ lazy val core: Project = project.in(file("core"))

// Dependencies
lazy val coreDeps = Seq(
"com.esotericsoftware" % "kryo" % kryoVersion,
"com.esotericsoftware" % "kryo5" % kryoVersion,
"com.typesafe" % "config" % "1.4.2",
"org.lz4" % "lz4-java" % "1.8.0",
"org.agrona" % "agrona" % "1.15.1", // should match pekko-remote/aeron inherited version
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package io.altoo.serialization.kryo.scala

import com.esotericsoftware.kryo.Kryo
import com.esotericsoftware.kryo.kryo5.Kryo
import io.altoo.serialization.kryo.scala.serializer.{ScalaCollectionSerializer, ScalaImmutableMapSerializer, ScalaImmutableSetSerializer}

private[kryo] object ScalaVersionSerializers {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,10 @@ package io.altoo.serialization.kryo.scala.serializer

import scala.collection.Traversable

import com.esotericsoftware.kryo.Kryo
import com.esotericsoftware.kryo.Serializer
import com.esotericsoftware.kryo.io.Input
import com.esotericsoftware.kryo.io.Output
import com.esotericsoftware.kryo.kryo5.Kryo
import com.esotericsoftware.kryo.kryo5.Serializer
import com.esotericsoftware.kryo.kryo5.io.Input
import com.esotericsoftware.kryo.kryo5.io.Output

/**
* Generic serializer for traversable collections
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package io.altoo.serialization.kryo.scala

import com.esotericsoftware.kryo.Kryo
import com.esotericsoftware.kryo.kryo5.Kryo
import io.altoo.serialization.kryo.scala.serializer.{ScalaCollectionSerializer, ScalaImmutableMapSerializer}

private[kryo] object ScalaVersionSerializers {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@

package io.altoo.serialization.kryo.scala.serializer

import com.esotericsoftware.kryo.io.{Input, Output}
import com.esotericsoftware.kryo.{Kryo, Serializer}
import com.esotericsoftware.kryo.kryo5.io.{Input, Output}
import com.esotericsoftware.kryo.kryo5.{Kryo, Serializer}

/**
* Generic serializer for traversable collections
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package io.altoo.serialization.kryo.scala

import com.esotericsoftware.kryo.Kryo
import com.esotericsoftware.kryo.kryo5.Kryo
import io.altoo.serialization.kryo.scala.serializer.{ScalaCollectionSerializer, ScalaEnumNameSerializer, ScalaImmutableMapSerializer}

private[kryo] object ScalaVersionSerializers {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@

package io.altoo.serialization.kryo.scala.serializer

import com.esotericsoftware.kryo.io.{Input, Output}
import com.esotericsoftware.kryo.{Kryo, Serializer}
import com.esotericsoftware.kryo.kryo5.io.{Input, Output}
import com.esotericsoftware.kryo.kryo5.{Kryo, Serializer}

/**
* Generic serializer for traversable collections
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package io.altoo.serialization.kryo.scala.serializer

import com.esotericsoftware.kryo.io.{Input, Output}
import com.esotericsoftware.kryo.{Kryo, Serializer}
import com.esotericsoftware.kryo.kryo5.io.{Input, Output}
import com.esotericsoftware.kryo.kryo5.{Kryo, Serializer}

import scala.runtime.EnumValue

Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
package io.altoo.serialization.kryo.scala

import com.esotericsoftware.kryo.{ClassResolver, ReferenceResolver}
import com.esotericsoftware.kryo.serializers.FieldSerializer
import com.esotericsoftware.kryo.util.{DefaultClassResolver, ListReferenceResolver, MapReferenceResolver}
import com.esotericsoftware.kryo.kryo5.{ClassResolver, ReferenceResolver}
import com.esotericsoftware.kryo.kryo5.serializers.FieldSerializer
import com.esotericsoftware.kryo.kryo5.util.{DefaultClassResolver, ListReferenceResolver, MapReferenceResolver}
import io.altoo.serialization.kryo.scala.serializer.*

import scala.util.{Failure, Success}
Expand Down Expand Up @@ -34,7 +34,7 @@ class DefaultKryoInitializer {
* Note: register custom classes/serializer in `postInit`, otherwise default order might break.
*/
def preInit(kryo: ScalaKryo): Unit = {
kryo.setDefaultSerializer(classOf[com.esotericsoftware.kryo.serializers.FieldSerializer[?]])
kryo.setDefaultSerializer(classOf[com.esotericsoftware.kryo.kryo5.serializers.FieldSerializer[?]])
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,12 @@

package io.altoo.serialization.kryo.scala

import com.esotericsoftware.kryo.Kryo
import com.esotericsoftware.kryo.util.*
import com.esotericsoftware.minlog.Log as MiniLog
import com.esotericsoftware.kryo.kryo5.Kryo
import com.esotericsoftware.kryo.kryo5.minlog.Log as MiniLog
import com.esotericsoftware.kryo.kryo5.objenesis.strategy.StdInstantiatorStrategy
import com.esotericsoftware.kryo.kryo5.util.*
import com.typesafe.config.Config
import io.altoo.serialization.kryo.scala.serializer.*
import org.objenesis.strategy.StdInstantiatorStrategy
import org.slf4j.LoggerFactory

import java.nio.ByteBuffer
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
package io.altoo.serialization.kryo.scala

import com.esotericsoftware.kryo.Kryo
import com.esotericsoftware.kryo.io.{ByteBufferInput, ByteBufferOutput, Input, Output}
import com.esotericsoftware.kryo.unsafe.{UnsafeInput, UnsafeOutput}
import com.esotericsoftware.kryo.kryo5.Kryo
import com.esotericsoftware.kryo.kryo5.io.{ByteBufferInput, ByteBufferOutput, Input, Output}
import com.esotericsoftware.kryo.kryo5.unsafe.{UnsafeInput, UnsafeOutput}
import org.slf4j.Logger

import java.nio.ByteBuffer
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package io.altoo.serialization.kryo.scala.serializer

import com.esotericsoftware.kryo.io.{Input, Output}
import com.esotericsoftware.kryo.{Kryo, Serializer}
import com.esotericsoftware.kryo.kryo5.io.{Input, Output}
import com.esotericsoftware.kryo.kryo5.{Kryo, Serializer}

import java.lang.reflect.Field

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@

package io.altoo.serialization.kryo.scala.serializer

import com.esotericsoftware.kryo.Registration
import com.esotericsoftware.kryo.util.DefaultClassResolver
import com.esotericsoftware.kryo.kryo5.Registration
import com.esotericsoftware.kryo.kryo5.util.DefaultClassResolver

class KryoClassResolver(val logImplicits: Boolean) extends DefaultClassResolver {
override def registerImplicit(typ: Class[?]): Registration = {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@
*/
package io.altoo.serialization.kryo.scala.serializer

import com.esotericsoftware.kryo.*
import com.esotericsoftware.kryo.serializers.FieldSerializer
import com.esotericsoftware.kryo.kryo5.*
import com.esotericsoftware.kryo.kryo5.serializers.FieldSerializer

class ScalaKryo(classResolver: ClassResolver, referenceResolver: ReferenceResolver)
extends Kryo(classResolver, referenceResolver) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@

package io.altoo.serialization.kryo.scala.serializer

import com.esotericsoftware.kryo.io.{Input, Output}
import com.esotericsoftware.kryo.{Kryo, Serializer}
import com.esotericsoftware.kryo.kryo5.io.{Input, Output}
import com.esotericsoftware.kryo.kryo5.{Kryo, Serializer}

import java.lang.reflect.Constructor
import scala.collection.immutable.{Map as IMap, SortedMap}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@

package io.altoo.serialization.kryo.scala.serializer

import com.esotericsoftware.kryo.io.{Input, Output}
import com.esotericsoftware.kryo.{Kryo, Serializer}
import com.esotericsoftware.kryo.kryo5.io.{Input, Output}
import com.esotericsoftware.kryo.kryo5.{Kryo, Serializer}

import _root_.java.lang.reflect.Field
import scala.collection.mutable.Map as MMap
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@

package io.altoo.serialization.kryo.scala.serializer

import com.esotericsoftware.kryo.io.{Input, Output}
import com.esotericsoftware.kryo.{Kryo, Serializer}
import com.esotericsoftware.kryo.kryo5.io.{Input, Output}
import com.esotericsoftware.kryo.kryo5.{Kryo, Serializer}

import java.lang.reflect.Constructor
import scala.collection.immutable.{Set as imSet, SortedSet as imSSet}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@

package io.altoo.serialization.kryo.scala.serializer

import com.esotericsoftware.kryo.io.{Input, Output}
import com.esotericsoftware.kryo.{Kryo, Serializer}
import com.esotericsoftware.kryo.kryo5.io.{Input, Output}
import com.esotericsoftware.kryo.kryo5.{Kryo, Serializer}

class ScalaUnitSerializer extends Serializer[Unit] {
def write(kryo: Kryo, output: Output, obj: Unit): Unit = {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package io.altoo.serialization.kryo.scala.serializer

import com.esotericsoftware.kryo.Registration
import com.esotericsoftware.kryo.util.DefaultClassResolver
import com.esotericsoftware.kryo.kryo5.Registration
import com.esotericsoftware.kryo.kryo5.util.DefaultClassResolver

import java.util.Collections

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package io.altoo.serialization.kryo.scala.serializer

import com.esotericsoftware.kryo.Kryo
import com.esotericsoftware.kryo.kryo5.Kryo

object ScalaVersionRegistry {
final val immutableHashMapImpl = "scala.collection.immutable.HashMap$HashTrieMap"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package io.altoo.serialization.kryo.scala.serializer

import com.esotericsoftware.kryo.Kryo
import com.esotericsoftware.kryo.kryo5.Kryo

object ScalaVersionRegistry {
final val immutableHashMapImpl = "scala.collection.immutable.HashMap"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package io.altoo.serialization.kryo.scala.serializer

import com.esotericsoftware.kryo.util.{DefaultClassResolver, ListReferenceResolver}
import com.esotericsoftware.kryo.kryo5.util.{DefaultClassResolver, ListReferenceResolver}
import io.altoo.serialization.kryo.scala.testkit.KryoSerializationTesting
import org.scalatest.flatspec.AnyFlatSpec
import org.scalatest.matchers.should.Matchers
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package io.altoo.serialization.kryo.scala.serializer

import com.esotericsoftware.kryo.Kryo
import com.esotericsoftware.kryo.kryo5.Kryo

object ScalaVersionRegistry {
final val immutableHashMapImpl = "scala.collection.immutable.HashMap"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ limitations under the License.

package io.altoo.serialization.kryo.scala

import com.esotericsoftware.minlog.Log
import com.esotericsoftware.kryo.kryo5.minlog.Log
import com.typesafe.config.ConfigFactory
import org.scalatest.concurrent.ScalaFutures
import org.scalatest.flatspec.AnyFlatSpec
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@

package io.altoo.serialization.kryo.scala.serializer

import com.esotericsoftware.kryo.Kryo
import com.esotericsoftware.kryo.io.{Input, Output}
import com.esotericsoftware.kryo.kryo5.Kryo
import com.esotericsoftware.kryo.kryo5.io.{Input, Output}
import org.scalatest.flatspec.AnyFlatSpec

import scala.language.implicitConversions
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
package io.altoo.serialization.kryo.scala.serializer

import com.esotericsoftware.kryo.io.{Input, Output}
import com.esotericsoftware.kryo.serializers.MapSerializer
import com.esotericsoftware.kryo.{Kryo, Serializer}
import com.esotericsoftware.kryo.kryo5.io.{Input, Output}
import com.esotericsoftware.kryo.kryo5.serializers.MapSerializer
import com.esotericsoftware.kryo.kryo5.{Kryo, Serializer}
import io.altoo.serialization.kryo.scala.testkit.AbstractKryoTest

import java.util
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package io.altoo.serialization.kryo.scala.serializer

import com.esotericsoftware.kryo.util.{DefaultClassResolver, ListReferenceResolver}
import com.esotericsoftware.kryo.kryo5.util.{DefaultClassResolver, ListReferenceResolver}
import io.altoo.serialization.kryo.scala.testkit.KryoSerializationTesting
import org.scalatest.flatspec.AnyFlatSpec

Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
package io.altoo.serialization.kryo.scala.testkit

import com.esotericsoftware.kryo.Kryo
import com.esotericsoftware.kryo.io.{Input, Output}
import com.esotericsoftware.kryo.util.MapReferenceResolver
import com.esotericsoftware.kryo.kryo5.Kryo
import com.esotericsoftware.kryo.kryo5.io.{Input, Output}
import com.esotericsoftware.kryo.kryo5.objenesis.strategy.StdInstantiatorStrategy
import com.esotericsoftware.kryo.kryo5.util.MapReferenceResolver
import io.altoo.serialization.kryo.scala.serializer.SubclassResolver
import org.objenesis.strategy.StdInstantiatorStrategy
import org.scalatest.Outcome
import org.scalatest.flatspec.AnyFlatSpec
import org.scalatest.matchers.should.Matchers
Expand Down

0 comments on commit 41b8d31

Please sign in to comment.