-
Notifications
You must be signed in to change notification settings - Fork 79
Versioning pickles #204
base: 0.9.x
Are you sure you want to change the base?
Versioning pickles #204
Conversation
This is open for discussion. Also FYI @dzufferey (we're touching the pickle format here) |
// read format version and check for mismatch | ||
val v = nextByte() | ||
if (v != format.version) | ||
throw new Exception(s"Incompatible pickle format version: read version $v, expected version ${format.version}") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Throw PicklingException
instead?
Note to self: repoint at 0.10.0 |
For some reason this segfaults for me locally... |
@@ -28,6 +29,7 @@ trait PBuilder extends Hintable { | |||
|
|||
trait PReader extends Hintable { | |||
def mirror: Mirror | |||
def beginPickle(): PReader |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why no endPickle?
f038382
to
ad73c96
Compare
@heathermiller I saw this pull request and got very excited. Is this an answer to schema evolution with Scala Pickling? I'm very intrigued by Scala Pickling, but I can't jump in until I have some way to evolve my pickled and persisted data structures. |
We should look into implementing versioning on 0.11 branch. |
Agreed. Although one thing that's happening here is that people are merging the idea of serialization with schema evolution... I'm not sure these concepts should be merged into one. It requires a pretty fundamental design rethink. |
+1. I think pickling (serialization) shoudl enable schema and schema evolution. NOT be the schema/schema evolution. |
No description provided.