maven-heaven: `map_shaded_classes_to_maven_packages` ignores POMs present only in the from/ codebase, leaving all shaded .class resources unmapped
Los mantenedores suelen responder en 1 día
Evaluación
Este issue todavía no se ha evaluado.
Descripción
This is a follow-up issue for #2247
When scanning a Maven package whose binary JAR excludes META-INF/maven/** (a common shade‑plugin configuration) but whose source JAR still contains the POM, the shaded .class resources in the binary are never mapped back to their originating Maven dependencies. They remain with an application-package status instead of shaded-class.
Sample
PURL: pkg:maven/org.apache.kyuubi/[email protected]
There is no pom.xml in the deployment (to/) codebase. The only POM present is: from/META-INF/maven/org.apache.kyuubi/kyuubi-relocated-thrift/pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<parent>
<artifactId>kyuubi-relocated-parent</artifactId>
<groupId>org.apache.kyuubi</groupId>
<version>0.4.1</version>
<relativePath>../../pom.xml</relativePath>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>kyuubi-relocated-thrift</artifactId>
<description>Relocated Thrift classes used by Kyuubi internally.</description>
<build>
<plugins>
<plugin>
<artifactId>maven-shade-plugin</artifactId>
<executions>
<execution>
<id>shade-kyuubi</id>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<createDependencyReducedPom>true</createDependencyReducedPom>
<dependencyReducedPomLocation>${project.basedir}/target/dependency-reduced-pom.xml</dependencyReducedPomLocation>
<artifactSet>
<includes>
<include>*</include>
</includes>
</artifactSet>
<filters>
<filter>
<artifact>*:*</artifact>
<excludes>
<exclude>**/*.proto</exclude>
<exclude>META-INF/*.SF</exclude>
<exclude>META-INF/*.DSA</exclude>
<exclude>META-INF/*.RSA</exclude>
<exclude>META-INF/DEPENDENCIES</exclude>
<exclude>META-INF/LICENSE.txt</exclude>
<exclude>META-INF/NOTICE.txt</exclude>
<exclude>META-INF/maven/**</exclude>
<exclude>LICENSE.txt</exclude>
<exclude>NOTICE.txt</exclude>
<exclude>mozilla/**</exclude>
<exclude>**/module-info.class</exclude>
</excludes>
</filter>
</filters>
<relocations>
<relocation>
<pattern>com.facebook.fb303</pattern>
<shadedPattern>${shading.prefix}.fb303</shadedPattern>
<includes>
<include>com.facebook.fb303.**</include>
</includes>
</relocation>
<relocation>
<pattern>org.apache.thrift</pattern>
<shadedPattern>${shading.prefix}.thrift</shadedPattern>
<includes>
<include>org.apache.thrift.**</include>
</includes>
</relocation>
</relocations>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>flatten-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<id>compile</id>
<phase>package</phase>
<goals>
<goal>attach-artifact</goal>
</goals>
<configuration>
<artifacts>
<artifact>
<file>${basedir}/target/${project.artifactId}-${project.version}.jar</file>
<type>jar</type>
<classifier>optional</classifier>
</artifact>
</artifacts>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<properties>
<thrift.version>0.16.0</thrift.version>
<fb303.version>0.9.3</fb303.version>
</properties>
</project>
Note that the binary archive excludes META-INF/maven/** and therefore no pom.xml in the deployment codebase.
As a result, the map_shaded_classes_to_maven_packages is not mapping anything.
Issues:
- The
pom.xmlwas excluded from the deployment codebase:
https://repo1.maven.org/maven2/org/apache/kyuubi/kyuubi-relocated-thrift/0.4.1/kyuubi-relocated-thrift-0.4.1.pom - It contains the
${shading.prefix}variable, which requires fetching the parent package to resolve:
https://repo1.maven.org/maven2/org/apache/kyuubi/kyuubi-relocated-parent/0.4.1/kyuubi-relocated-parent-0.4.1.pom - No dependency information is defined in the Maven
pom.xml; the dependency details exist only in the project's GitHub repository:
https://raw.githubusercontent.com/apache/kyuubi-shaded/refs/tags/v0.4.1/kyuubi-relocated-thrift/pom.xml
- Lenguaje dominante
- Python
- Estrellas
- 225
- Forks
- 216
- Merge medio
- 1 d 59 min
- PR fusionados (30 d)
- 13
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de aboutcode-org/scancode.io
-
ignored_dependency_scopes does not exclude npm devDependenciesPosiblemente ocupada @MGpromax la tomó hace 70 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
aboutcode-org/scancode.io#2215 ·
Los mantenedores suelen responder en 1 día
-
Delivery Error in scan_single_package: No connection adapters were found for '/notifications/send_scan_notification/Quizá libre de nuevo @akshat-lakhera la tomó hace 16 días y no hay ningún pull request abierto. Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
aboutcode-org/scancode.io#2206 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
update `run` cli command to run pipelines without an inputPosiblemente ocupada @NoiceHax la tomó hace 82 días. Abiertonice-to-have
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
aboutcode-org/scancode.io#2203 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Local developement docs are outdatedPosiblemente ocupada @nik-767 la tomó hace 111 días. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 82/100
aboutcode-org/scancode.io#2197 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
aboutcode-org/scancode.io#2290 ·
Los mantenedores suelen responder en 1 día
Todos los issues de aboutcode-org/scancode.io
Issues similares
-
bug severity:low
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 2 días
-
curriculum documentation quality
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
githubnext/gh-aw-workshop#5367 ·
Los mantenedores suelen responder en 3 días
-
OAuth documentation for GET /api/v2/users/me/ appears inconsistent with required global read scopeAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
Create Noise Latents ignores randomize_seed and produces the same noise every runPosiblemente ocupada @griptapeops la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
griptape-ai/griptape-nodes-library-diffusers#127 ·
Los mantenedores suelen responder en 1 día
-
Jenkins capacity report: metrics history is lost when archiving a month failsPosiblemente ocupada @RaphaelFakhri la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
adoptium/infrastructure#4568 ·
Los mantenedores suelen responder en 1 día