Skip to content
This repository has been archived by the owner on Feb 15, 2021. It is now read-only.

Split into multiple libraries by function #169

Open
gregsdennis opened this issue Jun 26, 2018 · 3 comments
Open

Split into multiple libraries by function #169

gregsdennis opened this issue Jun 26, 2018 · 3 comments
Assignees
Labels
breaking-change The changes proposed/implemented here will break your code. feature Something new. feedback-requested I, the developer, would like feedback from you, the user.

Comments

@gregsdennis
Copy link
Owner

gregsdennis commented Jun 26, 2018

The different functionalities (data model, serialization, schema, path, pointer, & transform) are all fairly disjoint as far as internal dependencies. I wonder if I should split out the libraries based on that functionality. It could also give me insight as to which components are being used more often.

See also #40 and a few others where the features do cross over.

@gregsdennis gregsdennis added feature Something new. breaking-change The changes proposed/implemented here will break your code. labels Jun 26, 2018
@gregsdennis gregsdennis self-assigned this Jun 26, 2018
@gregsdennis gregsdennis added the feedback-requested I, the developer, would like feedback from you, the user. label Jun 29, 2018
@gregsdennis
Copy link
Owner Author

gregsdennis commented Jul 5, 2018

This is becoming a more and more important question as I add support for new uses of JSON.

These could all theoretically (and ideally) be separate libraries that build on the JSON data structure.

Maybe the proper way to get this started (and in a non-breaking way) is to implement these as independent libraries.


Perhaps serialization should be coupled with the data structure and parsing. They seem fairly common requirements. I can't imagine too many instances where you'd want the model but not serialization.

@gregsdennis
Copy link
Owner Author

gregsdennis commented Oct 23, 2018

The recent refactor of the Schema implementation has revealed multiple references to serialization internals, mostly around reflection. I'm starting to think this is less of a good idea.

@gregsdennis
Copy link
Owner Author

This approach is followed in the new https://github.com/gregsdennis/json-everything suite.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
breaking-change The changes proposed/implemented here will break your code. feature Something new. feedback-requested I, the developer, would like feedback from you, the user.
Projects
None yet
Development

No branches or pull requests

1 participant