Skip to content

Conversation

@xPaw
Copy link
Member

@xPaw xPaw commented Oct 1, 2022

  • Flagged values
    • Add Flag to KVValue for flagged strings (text) or flagged anything (binary)
    • Ensure that KV1 serialiser drops the flag when serialising (should happen by default, but check / write unit test)
    • Ensure that flag and value is maintained when deserialising to a strongly-typed object model that has a KVValue field/property.
  • Create KV3 text deserializer
  • Create KV3 text serializer
  • Write tests for converting KV3 to KV1
  • Write tests for converting KV1 to KV3
  • Support null type
  • Support different types of root values (arrays, strings, nulls, etc)
    • This partially works but a few things don't like value flags and arrays.
  • Add support for accessing and setting header encoding/format. We will likely need a breaking change for deserialize method to return some kind of KV file object, rather than KVObject directly. This KVFile object will likely be needed for KV2 implementation too.
  • Better support for arrays
  • Verify whether latest Source2 versions still support multiple flags at once (might have been removed)

@xPaw
Copy link
Member Author

xPaw commented Oct 23, 2022

@yaakov-h Can you give this an initial review pass? I especially want to hear about stuff around handling arrays and flags.

@xPaw xPaw linked an issue Dec 5, 2022 that may be closed by this pull request
@xPaw xPaw mentioned this pull request Dec 5, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

Implement KeyValues3 (Text)

3 participants