Open Issues Need Help
View All on GitHubAI Summary: Implement `FromIterator` for the `VariantPath` type in the Apache Arrow Rust project, allowing creation of `VariantPath` instances from iterators of strings and numbers. This would enable more concise and flexible creation of `VariantPath` objects.
AI Summary: The task is to remove the redundant public methods `dictionary_size` from the `VariantMetadata` struct in the Apache Arrow Rust implementation. This involves identifying and removing the specified methods from the source code, ensuring no functionality is broken, and potentially updating related documentation.
AI Summary: Implement comprehensive tests for the Apache Arrow Rust `VariantBuilder` API, ensuring coverage of various `VariantObject` sizes and data lengths to validate the correct handling of field IDs and offsets in the Variant encoding. This involves creating `VariantObject`s with a range of element counts, triggering different sizes for field IDs and offsets, and verifying their proper encoding. The tests should consider edge cases and potentially be marked as ignored until a related issue (#7699) is resolved.
AI Summary: Write unit tests for the Apache Arrow Rust implementation's `VariantList` functionality, ensuring coverage for lists exceeding 256 elements and various total child data lengths to verify correct offset size handling in the Variant encoding. The tests should use the `VariantBuilder` API and may need to be initially ignored if a related issue (7699) is not yet resolved.
AI Summary: Implement a configurable validation flag in the `ObjectBuilder` for the Apache Arrow Rust project. This flag will control whether duplicate field writes during object construction result in an error or are silently overwritten. The goal is to provide users with a choice between strict validation (error on duplicates) and lenient behavior (overwrite duplicates).
AI Summary: The task is to optimize the determination of whether to use String or ShortString within the Apache Arrow Rust implementation. The current method involves multiple decisions, and the goal is to find a more efficient and direct approach to reduce redundancy and improve performance.