carpecodeum opened a new pull request, #7670: URL: https://github.com/apache/arrow-rs/pull/7670
# Which issue does this PR close? Closes [Variant: Write Variant Values as JSON](https://github.com/apache/arrow-rs/issues/7426) #7426 Part of [[EPIC] [Parquet] Implement Variant type support in Parquet](https://github.com/apache/arrow-rs/issues/6736) #6736 # Rationale for this change This is an initial version, serving as a simple interface between the Variant implementation and the Serde JSON library. A huge thank you to @PinkCrow007, @mprammer, @alamb, the rest of the CMU variant team, and everyone else we've interacted with who has helped me get started with contributing to this project. This is my first Arrow-related PR, and I thank you all for your insight and support. # What changes are included in this PR? This PR implements a comprehensive JSON conversion API for Variant types with three main functions (`variant_to_json`, `variant_to_json_string`, and `variant_to_json_value`) that convert different Variant types to JSON format, including primitives, decimals, dates, timestamps, and binary data with proper escaping and base64 encoding. The implementation adds missing methods to `VariantObject` and `VariantArray` for field/element access, includes two new dependencies (`serde_json` and `base64`), and provides comprehensive test coverage with unit, integration, and documentation test suites. Open to input for improving any part of this implementation. # Are there any user-facing changes? The new API's added in parquet-variant will be user-facing. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
