[Bug]: Hadoop 2 binary LICENSE is missing entries for Hadoop 2-only bundled jars

Aperta Adatta ai principianti
#4,480 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 2 giorni

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
77/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
hadoop, java
Ambito
release

Direzione di ricerca

Leggi LICENSE-binary e confronta le voci Apache License Version 2.0 con le coordinate dei jar specifici di Hadoop 2 elencate nell’issue. Aggiungi le coordinate mancanti, contrassegnate con “(Hadoop 2)”, e verifica che coprano tutti i jar elencati senza rimuovere le voci esistenti. Il lavoro è completato quando LICENSE del binario Hadoop 2 include ogni jar elencato.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

What happened?

The Hadoop 2 binary convenience distribution, apache-amoro-0.9.0-incubating-bin-hadoop2.tar.gz, bundles jars that are not listed in its LICENSE (generated from LICENSE-binary; the Hadoop 2 and Hadoop 3 tarballs ship the same LICENSE).

Found while reviewing the 0.9.0-incubating RC14 binaries (tag v0.9.0-rc14, commit 18d12b99d5297dbd0bb4eb72517c4855d75210f6). I checked every jar in lib/ against the LICENSE entries, including wildcard entries such as org.apache.hadoop:hadoop-*.

This issue covers the jars that only the Hadoop 2 tarball ships. The jars missing from both tarballs (transaction-api, oro, ipaddress, ant, ant-launcher, ivy, and ant:ant:1.6.5) are covered in #4479.

All of these jars are Apache-2.0, judging by their poms and manifests, so there is no licence-category problem; the LICENSE list is just incomplete.

Jar in lib/ Coordinates ASF?
apacheds-i18n-2.0.0-M15.jar org.apache.directory.server:apacheds-i18n yes
apacheds-kerberos-codec-2.0.0-M15.jar org.apache.directory.server:apacheds-kerberos-codec yes
api-asn1-api-1.0.0-M20.jar org.apache.directory.api:api-asn1-api yes
api-util-1.0.0-M20.jar org.apache.directory.api:api-util yes
htrace-core4-4.1.0-incubating.jar org.apache.htrace:htrace-core4 yes
geronimo-jcache_1.0_spec-1.0-alpha-1.jar org.apache.geronimo.specs:geronimo-jcache_1.0_spec yes
jasper-compiler-5.5.23.jar tomcat:jasper-compiler yes (Apache Tomcat)
jasper-runtime-5.5.23.jar tomcat:jasper-runtime yes (Apache Tomcat)
jackson-core-asl-1.9.13.jar org.codehaus.jackson:jackson-core-asl no
jackson-mapper-asl-1.9.13.jar org.codehaus.jackson:jackson-mapper-asl no
jackson-jaxrs-1.9.13.jar org.codehaus.jackson:jackson-jaxrs no
jackson-xc-1.9.13.jar org.codehaus.jackson:jackson-xc no
json-smart-2.3.jar net.minidev:json-smart no
accessors-smart-1.2.jar net.minidev:accessors-smart no
ehcache-3.3.1.jar org.ehcache:ehcache no
unused-1.0.0.jar org.spark-project.spark:unused no

Apart from these, the Hadoop 2 tarball checks out:

  • NOTICE carries the third-party notices from the bundled jars.
  • The Hadoop 2-specific CDDL components (jaxb-api 2.2.2, jsp-api 2.1, stax-api 1.0-2) and the non-Apache jars (mssql-jdbc, py4j, pickle) are covered.
  • Every lib/…jar path referenced in LICENSE exists, except entries explicitly labelled "(Hadoop 3)".
Suggested fix

Add the coordinates above to the "Apache License Version 2.0" section of LICENSE-binary, labelled "(Hadoop 2)" as the file already does for other distribution-specific entries. Wildcards would cover several at once, for example org.apache.directory.server:apacheds-*, org.apache.directory.api:api-*, org.codehaus.jackson:jackson-*, net.minidev:*-smart and tomcat:jasper-*.

As suggested in #4479, a release-tooling check that fails when a jar in lib/ has no matching LICENSE entry would catch this for both Hadoop profiles.

Affects Versions

0.9.0-incubating (RC14)

How to reproduce
tar xzf apache-amoro-0.9.0-incubating-bin-hadoop2.tar.gz && cd amoro-0.9.0-incubating
ls lib | grep -E '^(apacheds|api-asn1|api-util|htrace|geronimo-jcache|jasper|jackson-(core|mapper)-asl|jackson-jaxrs|jackson-xc|json-smart|accessors-smart|ehcache|unused)-'
grep -n -iE 'apacheds|directory\.api|htrace|geronimo|jasper|codehaus\.jackson|minidev|ehcache|spark-project' LICENSE   # no output
Lingua principale
Java
Stelle
1.2k
Fork
398
Merge medio
3g 7h
PR unite (30g)
15

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di apache/amoro

Tutte le issue di apache/amoro

Issue simili

Altre issue su Java

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.