Evolution

io.github.vigoo.desert.Evolution$
See theEvolution companion trait
object Evolution

Attributes

Companion:
trait
Graph
Supertypes
trait Sum
trait Mirror
class Object
trait Matchable
class Any
Self type

Members list

Concise view

Type members

Classlikes

final case class FieldAdded[F](name: String, default: F) extends Evolution

Add a new field to a case class

Add a new field to a case class

New version can still read old with the use of default. Old version can only read if F is Option[T] and the value is None.

Attributes

Graph
Supertypes
trait Product
trait Equals
trait Evolution
trait Serializable
class Object
trait Matchable
class Any
final case class FieldMadeOptional(name: String) extends Evolution

Existing non-option field made optional

Existing non-option field made optional

New version can read old data by wrapping with Some Old version can read new data if it is not None

Attributes

Graph
Supertypes
trait Product
trait Equals
trait Evolution
trait Serializable
class Object
trait Matchable
class Any

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type
final case class FieldRemoved(name: String) extends Evolution

Field removed from product

Field removed from product

New version can read old data by skipping the field Old version can read new data only if it was Option[T]

Attributes

Graph
Supertypes
trait Product
trait Equals
trait Evolution
trait Serializable
class Object
trait Matchable
class Any
case object InitialVersion extends Evolution

Attributes

Graph
Supertypes
trait Singleton
trait Product
trait Mirror
trait Product
trait Equals
trait Evolution
trait Serializable
class Object
trait Matchable
class Any
Self type

Inherited types

type MirroredElemLabels <: Tuple

The names of the product elements

The names of the product elements

Attributes

Inherited from:
Mirror
type MirroredLabel <: String

The name of the type

The name of the type

Attributes

Inherited from:
Mirror