bazel-contrib / rules_jvm_external

Bazel rules to resolve, fetch and export Maven artifacts
Apache License 2.0
332 stars 254 forks source link

manifest stamping prefixes all jars with "processed_" #786

Open ghost opened 1 year ago

ghost commented 1 year ago

771 enabled manifest stamping by default. This results in mutating third-party jars (which breaks SBOM verification) as well as inserting a "processed_" prefix in all file names. My deployments began failing because other non-Bazel projects cannot locate jars by name such as "commons-foo-1.2.3.jar" at runtime.

In the meantime, I can move forward by adding a --@rules_jvm_external//settings:stamp_manifest=false on the cmdline. However, as it involves mutating and renaming third-party artifacts, IMO manifest stamping should never be the default.

JaredNeil commented 6 months ago

Similar to JetBrains/bazel-bsp#403, the Bloop compiler also expects to find a jar file that starts with scala-compiler. Could the stamping be changed to create the unstamped files as unprocessed_*.jar and then the final files could have the canonical file name without a prefix?