<!-- Generated with Stardoc: http://skydoc.bazel.build -->

Rules for declaring the compliance licenses used by a package.



<a id="license"></a>

## license

<pre>
license(<a href="#license-name">name</a>, <a href="#license-copyright_notice">copyright_notice</a>, <a href="#license-license_kinds">license_kinds</a>, <a href="#license-license_text">license_text</a>, <a href="#license-package_name">package_name</a>, <a href="#license-package_url">package_url</a>,
         <a href="#license-package_version">package_version</a>)
</pre>



**ATTRIBUTES**


| Name  | Description | Type | Mandatory | Default |
| :------------- | :------------- | :------------- | :------------- | :------------- |
| <a id="license-name"></a>name |  A unique name for this target.   | <a href="https://bazel.build/concepts/labels#target-names">Name</a> | required |  |
| <a id="license-copyright_notice"></a>copyright_notice |  Copyright notice.   | String | optional | <code>""</code> |
| <a id="license-license_kinds"></a>license_kinds |  License kind(s) of this license. If multiple license kinds are listed in the LICENSE file, and they all apply, then all should be listed here. If the user can choose a single one of many, then only list one here.   | <a href="https://bazel.build/concepts/labels">List of labels</a> | optional | <code>[]</code> |
| <a id="license-license_text"></a>license_text |  The license file.   | <a href="https://bazel.build/concepts/labels">Label</a> | optional | <code>LICENSE</code> |
| <a id="license-package_name"></a>package_name |  A human readable name identifying this package. This may be used to produce an index of OSS packages used by an applicatation.   | String | optional | <code>""</code> |
| <a id="license-package_url"></a>package_url |  The URL this instance of the package was download from. This may be used to produce an index of OSS packages used by an applicatation.   | String | optional | <code>""</code> |
| <a id="license-package_version"></a>package_version |  A human readable version string identifying this package. This may be used to produce an index of OSS packages used by an applicatation.  It should be a value that increases over time, rather than a commit hash.   | String | optional | <code>""</code> |



<!-- Generated with Stardoc: http://skydoc.bazel.build -->

Proof of concept. License restriction.

<a id="license_kind"></a>

## license_kind

<pre>
license_kind(<a href="#license_kind-name">name</a>, <a href="#license_kind-canonical_text">canonical_text</a>, <a href="#license_kind-conditions">conditions</a>, <a href="#license_kind-long_name">long_name</a>, <a href="#license_kind-url">url</a>)
</pre>



**ATTRIBUTES**


| Name  | Description | Type | Mandatory | Default |
| :------------- | :------------- | :------------- | :------------- | :------------- |
| <a id="license_kind-name"></a>name |  A unique name for this target.   | <a href="https://bazel.build/concepts/labels#target-names">Name</a> | required |  |
| <a id="license_kind-canonical_text"></a>canonical_text |  File containing the canonical text for this license. Must be UTF-8 encoded.   | <a href="https://bazel.build/concepts/labels">Label</a> | optional | <code>None</code> |
| <a id="license_kind-conditions"></a>conditions |  Conditions to be met when using software under this license.  Conditions are defined by the organization using this license.   | List of strings | required |  |
| <a id="license_kind-long_name"></a>long_name |  Human readable long name of license.   | String | optional | <code>""</code> |
| <a id="license_kind-url"></a>url |  URL pointing to canonical license definition   | String | optional | <code>""</code> |



<!-- Generated with Stardoc: http://skydoc.bazel.build -->

Rules for declaring metadata about a package.

<a id="package_info"></a>

## package_info

<pre>
package_info(<a href="#package_info-name">name</a>, <a href="#package_info-package_name">package_name</a>, <a href="#package_info-package_url">package_url</a>, <a href="#package_info-package_version">package_version</a>)
</pre>



**ATTRIBUTES**


| Name  | Description | Type | Mandatory | Default |
| :------------- | :------------- | :------------- | :------------- | :------------- |
| <a id="package_info-name"></a>name |  A unique name for this target.   | <a href="https://bazel.build/concepts/labels#target-names">Name</a> | required |  |
| <a id="package_info-package_name"></a>package_name |  A human readable name identifying this package. This may be used to produce an index of OSS packages used by an applicatation.   | String | optional | <code>""</code> |
| <a id="package_info-package_url"></a>package_url |  The URL this instance of the package was download from. This may be used to produce an index of OSS packages used by an applicatation.   | String | optional | <code>""</code> |
| <a id="package_info-package_version"></a>package_version |  A human readable version string identifying this package. This may be used to produce an index of OSS packages used by an applicatation.  It should be a value that increases over time, rather than a commit hash.   | String | optional | <code>""</code> |



<!-- Generated with Stardoc: http://skydoc.bazel.build -->

Basic providers for license rules.

This file should only contain the basic providers needed to create
license and package_info declarations. Providers needed to gather
them are declared in other places.


<a id="LicenseInfo"></a>

## LicenseInfo

<pre>
LicenseInfo(<a href="#LicenseInfo-copyright_notice">copyright_notice</a>, <a href="#LicenseInfo-label">label</a>, <a href="#LicenseInfo-license_kinds">license_kinds</a>, <a href="#LicenseInfo-license_text">license_text</a>, <a href="#LicenseInfo-package_name">package_name</a>, <a href="#LicenseInfo-package_url">package_url</a>,
            <a href="#LicenseInfo-package_version">package_version</a>)
</pre>

Provides information about a license instance.

**FIELDS**


| Name  | Description |
| :------------- | :------------- |
| <a id="LicenseInfo-copyright_notice"></a>copyright_notice |  string: Human readable short copyright notice    |
| <a id="LicenseInfo-label"></a>label |  Label: label of the license rule    |
| <a id="LicenseInfo-license_kinds"></a>license_kinds |  list(LicenseKindInfo): License kinds    |
| <a id="LicenseInfo-license_text"></a>license_text |  string: The license file path    |
| <a id="LicenseInfo-package_name"></a>package_name |  string: Human readable package name    |
| <a id="LicenseInfo-package_url"></a>package_url |  URL from which this package was downloaded.    |
| <a id="LicenseInfo-package_version"></a>package_version |  Human readable version string    |



<!-- Generated with Stardoc: http://skydoc.bazel.build -->

Basic providers for license rules.

This file should only contain the basic providers needed to create
license and package_info declarations. Providers needed to gather
them are declared in other places.


<a id="LicenseKindInfo"></a>

## LicenseKindInfo

<pre>
LicenseKindInfo(<a href="#LicenseKindInfo-conditions">conditions</a>, <a href="#LicenseKindInfo-label">label</a>, <a href="#LicenseKindInfo-long_name">long_name</a>, <a href="#LicenseKindInfo-name">name</a>)
</pre>

Provides information about a license_kind instance.

**FIELDS**


| Name  | Description |
| :------------- | :------------- |
| <a id="LicenseKindInfo-conditions"></a>conditions |  list(string): List of conditions to be met when using this packages under this license.    |
| <a id="LicenseKindInfo-label"></a>label |  Label: The full path to the license kind definition.    |
| <a id="LicenseKindInfo-long_name"></a>long_name |  string: Human readable license name    |
| <a id="LicenseKindInfo-name"></a>name |  string: Canonical license name    |



<!-- Generated with Stardoc: http://skydoc.bazel.build -->

Basic providers for license rules.

This file should only contain the basic providers needed to create
license and package_info declarations. Providers needed to gather
them are declared in other places.


<a id="PackageInfo"></a>

## PackageInfo

<pre>
PackageInfo(<a href="#PackageInfo-type">type</a>, <a href="#PackageInfo-label">label</a>, <a href="#PackageInfo-package_name">package_name</a>, <a href="#PackageInfo-package_url">package_url</a>, <a href="#PackageInfo-package_version">package_version</a>)
</pre>

Provides information about a package.

**FIELDS**


| Name  | Description |
| :------------- | :------------- |
| <a id="PackageInfo-type"></a>type |  string: How to interpret data    |
| <a id="PackageInfo-label"></a>label |  Label: label of the package_info rule    |
| <a id="PackageInfo-package_name"></a>package_name |  string: Human readable package name    |
| <a id="PackageInfo-package_url"></a>package_url |  string: URL from which this package was downloaded.    |
| <a id="PackageInfo-package_version"></a>package_version |  string: Human readable version string    |



<!-- Generated with Stardoc: http://skydoc.bazel.build -->

Rules and macros for collecting LicenseInfo providers.

<a id="gather_metadata_info"></a>

## gather_metadata_info

<pre>
gather_metadata_info(<a href="#gather_metadata_info-name">name</a>)
</pre>

Collects LicenseInfo providers into a single TransitiveMetadataInfo provider.

**ASPECT ATTRIBUTES**


| Name | Type |
| :------------- | :------------- |
| *| String |


**ATTRIBUTES**


| Name  | Description | Type | Mandatory | Default |
| :------------- | :------------- | :------------- | :------------- | :------------- |
| <a id="gather_metadata_info-name"></a>name |  A unique name for this target.   | <a href="https://bazel.build/concepts/labels#target-names">Name</a> | required |   |



<!-- Generated with Stardoc: http://skydoc.bazel.build -->

Rules and macros for collecting LicenseInfo providers.

<a id="gather_metadata_info_and_write"></a>

## gather_metadata_info_and_write

<pre>
gather_metadata_info_and_write(<a href="#gather_metadata_info_and_write-name">name</a>)
</pre>

Collects TransitiveMetadataInfo providers and writes JSON representation to a file.

    Usage:
      bazel build //some:target           --aspects=@rules_license//rules:gather_metadata_info.bzl%gather_metadata_info_and_write
          --output_groups=licenses
    

**ASPECT ATTRIBUTES**


| Name | Type |
| :------------- | :------------- |
| *| String |


**ATTRIBUTES**


| Name  | Description | Type | Mandatory | Default |
| :------------- | :------------- | :------------- | :------------- | :------------- |
| <a id="gather_metadata_info_and_write-name"></a>name |  A unique name for this target.   | <a href="https://bazel.build/concepts/labels#target-names">Name</a> | required |   |



<!-- Generated with Stardoc: http://skydoc.bazel.build -->

Rules and macros for collecting package metdata providers.

<a id="trace"></a>

## trace

<pre>
trace(<a href="#trace-name">name</a>)
</pre>

Used to allow the specification of a target to trace while collecting license dependencies.

**ATTRIBUTES**


| Name  | Description | Type | Mandatory | Default |
| :------------- | :------------- | :------------- | :------------- | :------------- |
| <a id="trace-name"></a>name |  A unique name for this target.   | <a href="https://bazel.build/concepts/labels#target-names">Name</a> | required |  |



