Git Product home page Git Product logo

Comments (2)

frol avatar frol commented on July 18, 2024 1

Borsh does not include the schema inside the serialized data, so you should plan your upgradability accordingly. If you start from scratch, you have two paths:

  1. keep versioned data structured using enum (enum MyStruct { V1(MyStructV1) }), which will add a one byte tag as part of the borsh serialization for enums, here is an example
  2. plan to keep the data always at the latest state and as such, implement migration logic that would read all the old data using old structs, convert those into the new structs, and write it over using, here is an example

If you already have the data serialized with the old MyStruct, you can follow (2) and consider to implement (1) for seamless operation going forward.

Would you like to contribute a README/docs for this topic? I would be happy to review a PR

from borsh-rs.

yanliu38 avatar yanliu38 commented on July 18, 2024

Seems to be related: #114

from borsh-rs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.