sdf-jkl opened a new issue, #11952:
URL: https://github.com/apache/arrow-rs/issues/11952

   ### Is your feature request related to a problem or challenge?
   
   Registering the canonical `arrow.parquet.variant` extension type currently 
requires a dependency on `parquet-variant-compute`, which also pulls in 
`parquet-variant-json`.
   
   In 
[apache/datafusion#26822](https://github.com/apache/datafusion/pull/26822), 
both `datafusion-common` and `datafusion-expr` need `VariantType` for schema 
validation, metadata handling, and the extension name. They do not need Variant 
compute kernels or JSON conversion for this registration, but must depend on 
those crates to access the type.
   
   ### Describe the solution you'd like
   
   Move `VariantType` into `parquet-variant` so schema-only consumers can 
depend on that crate directly. Its [current 
implementation](https://github.com/apache/arrow-rs/blob/5db01b1fa7ba6f70d5f63abf31c48fabed40929b/parquet-variant-compute/src/variant_array.rs#L126-L169)
 only needs `arrow-schema`, which `parquet-variant` already depends on.
   
   Keep the existing import path available through a re-export in 
`parquet-variant-compute`:
   
   ```rust
   pub use parquet_variant::VariantType;
   ```
   
   ### Describe alternatives you've considered
   
   ### Additional context
   
   `VariantType` was introduced alongside the `VariantArray` extension-type 
conversion in [#8392](https://github.com/apache/arrow-rs/pull/8392). Improving 
its storage-schema validation is tracked separately in 
[#11938](https://github.com/apache/arrow-rs/issues/11938); this proposal only 
changes where the type is exposed.
   


-- 
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]

Reply via email to