Wither jsoncons #580
Unanswered
danielaparker
asked this question in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Currently working on:
Add a way to extract the 'errorMessage' directly when a JSON schema validation fails. errorMessage is not a standard JSON Schema keyword, but it's supported in some implementations as an opt-in feature, notably in networknt/json-schema-validator, and we propose to follow that.
Generalized csv to json conversion. We'll add a flat option to
csv_options
that defaults totrue
, this will largely reproduce current behavior for encode and decode. If set tofalse
, encode will traverse nested JSON and produce output with JSONPointer column names, similar to Python's in2csv, decode will try to parse the column names as JSONPointers and map to JSON accordingly. We'll also provide an option to map the generated JSONPointer column names to user supplied plain names.length not working well in jsonpath_examples.cpp
Planned 1.x enhancements:
Support JMESPath Lexical Scoping using the new let expression, noting that JEP 18 has been approved.
Extend support throughout the library for stateful allocators.
Things we're currently thinking about, and experimenting with:
Define a few macros in the source to allow users to disable features they don’t need, such as reading or writing,
json_type_traits
support, UTF-8 validation, or checking for duplicates, to slim down the library footprint. Or to enable features such as fast floating-pointer conversion.Define the requirements that are needed for a type to satisfy each jsoncons extension's expectation for its
Json
template parameter. This will open up the way to allowing types other thanbasic_json
. In particular, we're considering introducing a read-onlyjson_view
type that allows for high performance parsing and that can be used with, for example, the jsonschema extension.On the horizon:
A specialized pull parser to more efficiently support json_cursor (currently all cursers repurpose our push parsers, pausing after each event received).
More uniform library support for non-string keys
Beta Was this translation helpful? Give feedback.
All reactions