Skip to content

Conversation

zhangfengcdt
Copy link
Owner

This commit introduces Parquet encoding support to the Prolly Tree library.

Changes include:

  • Added the parquet crate as a dependency.
  • Updated the EncodingType enum to include Parquet.
  • Implemented the encode_parquet function.
  • Added a test case for Parquet encoding and made tests order-agnostic.
  • Bumped the version to `0.2.0-alpha.1.

This commit introduces Parquet encoding support to the Prolly Tree library.

Changes include:
- Added the `parquet` crate as a dependency.
- Updated the `EncodingType` enum to include `Parquet`.
- Implemented the `encode_parquet` function.
- Added a test case for Parquet encoding and made tests order-agnostic.
- Bumped the version to `0.2.0-alpha.1.
@zhangfengcdt zhangfengcdt requested a review from Copilot July 12, 2025 14:51
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR introduces Parquet encoding support to the Prolly Tree library by adding a new encoding variant, implementing serialization logic, and updating dependencies and tests accordingly.

  • Added Parquet variant to EncodingType and wired it through encode_pairs.
  • Implemented encode_parquet with Arrow-to-Parquet serialization.
  • Added a test for Parquet encoding and updated Cargo.toml for new dependencies.

Reviewed Changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.

File Description
src/encoding.rs Added Parquet import, enum variant, encode_parquet method, and corresponding test logic.
Cargo.toml Bumped version to 0.2.0-alpha.1 and added parquet & bytes dependencies.
Comments suppressed due to low confidence (2)

src/encoding.rs:73

  • [nitpick] Consider changing the signature to return Result<Vec, ParquetError> (or a more general error type) so that encoding failures can be propagated instead of panicking.
    fn encode_parquet(&self) -> Vec<u8> {

src/encoding.rs:386

  • [nitpick] It may be helpful to add tests for edge cases (e.g., empty inputs or single-row batches) to ensure encode_parquet behaves correctly in all scenarios.
    fn test_encode_parquet() {

@zhangfengcdt zhangfengcdt merged commit 402a150 into main Jul 12, 2025
4 checks passed
@zhangfengcdt zhangfengcdt deleted the feature/parquet-encoding branch July 13, 2025 01:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant