rules_license icon indicating copy to clipboard operation
rules_license copied to clipboard

Avoid duplicate packages

Open mering opened this issue 1 year ago • 0 comments

Expected Behavior

When running bazel build //examples/sboms:write_sbom_sbom, the resulting JSON should look as follows:

[
  {
    "top_level_target": "//tools:write_sbom",
    "dependencies": [
      {
        "target_under_license": "//tools:write_sbom",
        "licenses": [
          "//:license"
        ]
      }
    ],
    "licenses": [
      {
        "label": "//:license",
        "bazel_package": "//",
        "license_kinds": [
          {
            "target": "@//licenses/spdx:Apache-2.0",
            "name": "Apache-2.0",
            "conditions": []
          }
        ],
        "copyright_notice": "",
        "package_name": "rules_license",
        "package_url": "",
        "package_version": "0.0.7",
        "license_text": "LICENSE",
        "used_by": [
          "//tools:write_sbom"
        ]
      }
    ],
    "packages": [
          {
            "target": "//:package_info",
            "bazel_package": "//",
            "package_name": "rules_license",
            "package_url": "",
            "package_version": "0.0.7"
          }
    ]
  }
]

Actual Behavior

When running bazel build //examples/sboms:write_sbom_sbom, the resulting JSON actually looks as follows:

[
  {
    "top_level_target": "//tools:write_sbom",
    "dependencies": [
      {
        "target_under_license": "//tools:write_sbom",
        "licenses": [
          "//:license"
        ]
      }
    ],
    "licenses": [
      {
        "label": "//:license",
        "bazel_package": "//",
        "license_kinds": [
          {
            "target": "@//licenses/spdx:Apache-2.0",
            "name": "Apache-2.0",
            "conditions": []
          }
        ],
        "copyright_notice": "",
        "package_name": "",
        "package_url": "",
        "package_version": "",
        "license_text": "LICENSE",
        "used_by": [
          "//tools:write_sbom"
        ]
      }
    ],
    "packages": [
          {
            "target": "//:package_info",
            "bazel_package": "//",
            "package_name": "rules_license",
            "package_url": "",
            "package_version": "0.0.7"
          },
          {
            "target": "//:package_info",
            "bazel_package": "//",
            "package_name": "rules_license",
            "package_url": "",
            "package_version": "0.0.7"
          }
    ]
  }
]

Specifically, the same package is included twice and the license doesn't contain package_name and package_version fields.

Steps to Reproduce the Problem

  1. Run bazel build //examples/sboms:write_sbom_sbom
  2. Inspect bazel-bin/examples/sboms/_write_sbom_sbom_licenses_info.json

Specifications

  • Version:
  • Platform:

mering avatar Sep 11 '23 13:09 mering