feat(third-party): introduce roaring bitmap and xxhash by zjw1111 · Pull Request #34 · apache/paimon-cpp · GitHub
Skip to content

feat(third-party): introduce roaring bitmap and xxhash - #34

Merged
leaves12138 merged 1 commit into
apache:mainfrom
zjw1111:migrate/third-party-roaring-xxhash
Jun 1, 2026
Merged

feat(third-party): introduce roaring bitmap and xxhash#34
leaves12138 merged 1 commit into
apache:mainfrom
zjw1111:migrate/third-party-roaring-xxhash

Conversation

@zjw1111

@zjw1111 zjw1111 commented Jun 1, 2026

Copy link
Copy Markdown
Collaborator

Purpose

Linked issue: None

Introduce vendored third-party sources for CRoaring and xxHash:

  • Add CRoaring sources under third_party/roaring_bitmap/.
  • Add xxHash sources under third_party/xxhash/.
  • Add small CMake wrapper targets for both third-party libraries.
  • Update top-level LICENSE and NOTICE for the bundled third-party code.

The original third-party source license headers are preserved. The top-level LICENSE also declares the BSD-3-Clause PyTorch TH simd.h derived code embedded in third_party/roaring_bitmap/roaring.cpp. Only the local CMake wrapper files use ASF headers.

Tests

  • git diff --check
  • git diff --cached --check
  • cmake -S third_party/roaring_bitmap -B /tmp/paimon-cpp-roaring-build
  • cmake --build /tmp/paimon-cpp-roaring-build -j64
  • cmake -S third_party/xxhash -B /tmp/paimon-cpp-xxhash-build
  • cmake --build /tmp/paimon-cpp-xxhash-build -j64

API and Format

No public API, storage format, or protocol changes.

Documentation

No user-facing documentation changes. The repository-level LICENSE and NOTICE files were updated for third-party declarations.

Generative AI tooling

Migrate-by: OpenAI Codex

@leaves12138 leaves12138 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Thanks for adding the vendored sources. I found one release-blocking licensing issue: third_party/roaring_bitmap/roaring.cpp includes a BSD-3-Clause block for code derived from PyTorch TH simd.h (Facebook/Idiap/DeepMind/NEC/NYU copyrights) around lines 15276-15318, but the current LICENSE entry only records CRoaring as Apache-2.0. For binary redistribution, BSD-3-Clause requires reproducing the copyright, conditions, and disclaimer in the documentation/materials, so please add this bundled third-party license/copyright text to LICENSE (and update NOTICE only if required by ASF policy). I did not find other blockers in this pass.

@zjw1111
zjw1111 force-pushed the migrate/third-party-roaring-xxhash branch from dbed40e to 451121f Compare June 1, 2026 07:16

@leaves12138 leaves12138 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Re-reviewed the latest head. The previous licensing blocker is resolved: LICENSE now includes the BSD-3-Clause copyright, conditions, and disclaimer for the PyTorch TH simd.h-derived code embedded in CRoaring. I did not find other blockers in this pass.

@leaves12138
leaves12138 merged commit ca728c7 into apache:main Jun 1, 2026
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.

2 participants