Skip to content

Catalog Migrator: Add missing BUNDLE-NOTICE and BUNDLE-LICENSE entries#196

Open
ajantha-bhat wants to merge 1 commit intoapache:mainfrom
ajantha-bhat:add-missing-bundle-notice-entries
Open

Catalog Migrator: Add missing BUNDLE-NOTICE and BUNDLE-LICENSE entries#196
ajantha-bhat wants to merge 1 commit intoapache:mainfrom
ajantha-bhat:add-missing-bundle-notice-entries

Conversation

@ajantha-bhat
Copy link
Copy Markdown
Member

Summary

  • Add NOTICE propagation for 5 non-ASF, Apache 2.0 licensed dependencies that have substantive NOTICE files in their source repos
  • Add iq80 LevelDB as a separate BUNDLE-LICENSE entry

BUNDLE-NOTICE entries added:

  • Snappy Java (xerial): Google Snappy and Hadoop PureJavaCrc32C attributions (source NOTICE)
  • HawtJNI (Fusesource): FuseSource Corp, Progress Software, IBM attributions (source notice.md)
  • BoneCP (Jolbox): Copyright 2010 Wallace Wadge (source NOTICE)
  • Eigenbase Properties: Copyright Julian Hyde and DynamoBI Corporation (source NOTICE)
  • Groovy (Codehaus 2.4.4, pre-ASF): Copyright 2003-2015, third-party software list (source NOTICE)

BUNDLE-LICENSE entry added:

  • iq80 LevelDB (Java port): Apache 2.0 licensed, classes bundled as org/iq80/leveldb/* (source)

Test plan

  • ./gradlew rat passes
  • ./gradlew :iceberg-catalog-migrator-cli:shadowJar builds successfully
  • META-INF/NOTICE in the uber jar contains all new entries
  • Reviewer verifies NOTICE content matches upstream source repos

Add NOTICE propagation for 5 non-ASF, Apache 2.0 licensed dependencies
that have substantive NOTICE files in their source repos:

- Snappy Java (xerial): Google Snappy and Hadoop PureJavaCrc32C attributions
- HawtJNI (Fusesource): FuseSource Corp, Progress Software, IBM attributions
- BoneCP (Jolbox): Copyright 2010 Wallace Wadge
- Eigenbase Properties: Copyright Julian Hyde and DynamoBI Corporation
- Groovy (Codehaus 2.4.4, pre-ASF): Copyright 2003-2015, third-party software list

Add iq80 LevelDB as a separate BUNDLE-LICENSE entry since its classes
(org/iq80/leveldb/*) are bundled in the uber jar as a distinct project
from LevelDBJNI (Fusesource).
@ajantha-bhat
Copy link
Copy Markdown
Member Author

This PR is for next release.
cc: @jbonofre

Comment on lines +170 to +177
This artifact bundles Snappy Java with the following in its NOTICE:
| This product includes software developed by Google Snappy.
| (http://code.google.com/p/snappy)
|
| This product includes software developed by Apache
| PureJavaCrc32C from apache-hadoop-common.
| (http://hadoop.apache.org)

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Cf. https://github.com/xerial/snappy-java/blob/main/NOTICE

(which version do we bundle?)

Why do we not mention the "google" and "PureJavaCrc32C" fragments exactly as in the upstream NOTICE?

Why do not mention "libstdc++"?

Why do not mention Hadoop? The LICENSE file mentions that it is bundled 🤔

Should we also include the "Contributors" section from upstream? I tend to think we should since it's part of Snappy-java's original NOTICE

@dimas-b dimas-b requested a review from jbonofre March 23, 2026 14:55
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