Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrades kryo from 5.5.0 to 5.6.0 and switches to library version #14

Merged
merged 1 commit into from
Jan 26, 2024
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
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
Loading