Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature: Add YAML support #1395

Open
helmesjo opened this issue Oct 23, 2024 · 2 comments
Open

Feature: Add YAML support #1395

helmesjo opened this issue Oct 23, 2024 · 2 comments
Labels
help wanted Looking for assistance

Comments

@helmesjo
Copy link
Contributor

helmesjo commented Oct 23, 2024

Now, I assume this is something that is far from the current goal with the project, but I am currently looking into performance issues with yaml-cpp that we use and obviously came to think of glaze.

Given the generic approach to compile time reflection, YAML could very well be an excellent candidate for glaze given how close it is to JSON (technically being a superset of JSON).

Anyways, thought I'd drop it here as something to think about. :)

@stephenberry
Copy link
Owner

stephenberry commented Oct 23, 2024

Thanks for the suggestion and for your interest with Glaze. More formats are indeed on the roadmap. Recently I've been making the core logic more format agnostic and easier to specialize to support various formats.

The plan is to add more formats like YAML, BSON, etc. but I could use help. Another collaborator is actively developing Erlang binary support, which is planned to be added to Glaze. Glaze already CSV and BEVE support and Mustache support is under development.

Would you be interested in helping develop/support YAML in Glaze? I would be happy to add you as a contributor.

Note

While we will always need format specific unit tests, a goal is to add a format agnostic unit test that simply serializes and deserializes various C++ structures with a given format type that can be specified in CMake. This will allow us to test large amount of Glaze features with many of supported formats without needing to write additional code for each format.

Format agnostic roundtrip testing will be merged soon in: #1380

@stephenberry stephenberry added the help wanted Looking for assistance label Oct 23, 2024
@helmesjo
Copy link
Contributor Author

Awesome, and thanks for the writeup. I can't promise anything in the near future, but we'll definitely benefit from having a single dependency (glaze) for our different formats (currently json and yaml) and the performance boost is very much required (especially for debug builds).
Feel free to ping this thread when relevant work gets merged, I'll keep my eye on this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Looking for assistance
Projects
None yet
Development

No branches or pull requests

2 participants