pub struct NotSPDX {}Expand description
§What it does
Ensures that each license in a SRCINFO is a valid SPDX license expression.
§Why is this bad?
The license attribution for packages clearly defines under what license(s) a package is distributed. When not using valid SPDX license identifiers to describe the license of a package, it may be unclear what license applies for it. Unclear license attribution has implication for the reuse of the package in binary form and whether source code must be made available for it. For this reason, Arch Linux decided to only allow valid SPDX license expressions (see RFC 0016).
§Examples
pkgbase = test
pkgver = 1.0.0
pkgrel = 1
arch = x86_64
license = ApacheUse instead:
pkgbase = test
pkgver = 1.0.0
pkgrel = 1
arch = x86_64
license = Apache-2.0Implementations§
Trait Implementations§
Source§impl Documented for NotSPDX
impl Documented for NotSPDX
Source§const DOCS: &'static str = "# What it does\n\nEnsures that each license in a [SRCINFO] is a valid SPDX license expression.\n\n# Why is this bad?\n\nThe license attribution for packages clearly defines under what license(s) a package is\ndistributed. When not using valid SPDX license identifiers to describe the license of a package,\nit may be unclear what license applies for it. Unclear license attribution has implication for\nthe reuse of the package in binary form and whether source code must be made available for it.\nFor this reason, Arch Linux decided to only allow valid SPDX license expressions (see [RFC\n0016]).\n\n# Examples\n\n```ini,ignore\npkgbase = test\npkgver = 1.0.0\npkgrel = 1\narch = x86_64\nlicense = Apache\n```\n\nUse instead:\n\n```ini,ignore\npkgbase = test\npkgver = 1.0.0\npkgrel = 1\narch = x86_64\nlicense = Apache-2.0\n```\n\n[SRCINFO]: https://alpm.archlinux.page/specifications/SRCINFO.5.html\n[RFC 0016]: https://rfc.archlinux.page/0016-spdx-license-identifiers/"
const DOCS: &'static str = "# What it does\n\nEnsures that each license in a [SRCINFO] is a valid SPDX license expression.\n\n# Why is this bad?\n\nThe license attribution for packages clearly defines under what license(s) a package is\ndistributed. When not using valid SPDX license identifiers to describe the license of a package,\nit may be unclear what license applies for it. Unclear license attribution has implication for\nthe reuse of the package in binary form and whether source code must be made available for it.\nFor this reason, Arch Linux decided to only allow valid SPDX license expressions (see [RFC\n0016]).\n\n# Examples\n\n```ini,ignore\npkgbase = test\npkgver = 1.0.0\npkgrel = 1\narch = x86_64\nlicense = Apache\n```\n\nUse instead:\n\n```ini,ignore\npkgbase = test\npkgver = 1.0.0\npkgrel = 1\narch = x86_64\nlicense = Apache-2.0\n```\n\n[SRCINFO]: https://alpm.archlinux.page/specifications/SRCINFO.5.html\n[RFC 0016]: https://rfc.archlinux.page/0016-spdx-license-identifiers/"
The static doc comments on this type.
Source§impl LintRule for NotSPDX
impl LintRule for NotSPDX
Source§fn extra_links(&self) -> Option<BTreeMap<String, String>>
fn extra_links(&self) -> Option<BTreeMap<String, String>>
Return the associated links for this lint rule.
Source§fn documentation(&self) -> String
fn documentation(&self) -> String
Returns the full documentation for this lint rule. Read more
Source§fn run(
&self,
resources: &Resources,
issues: &mut Vec<LintIssue>,
) -> Result<(), Error>
fn run( &self, resources: &Resources, issues: &mut Vec<LintIssue>, ) -> Result<(), Error>
Executes the linting logic and appends to list of accumulated issues. Read more
Source§fn scoped_name(&self) -> String
fn scoped_name(&self) -> String
Returns the full name of this lint by combining
LintRule::scope and LintRule::name
as {scope}::{name}. Read moreSource§fn groups(&self) -> &'static [LintGroup]
fn groups(&self) -> &'static [LintGroup]
Returns the static lint groups this lint rule belongs to. Read more
Source§fn configuration_options(&self) -> &[LintRuleConfigurationOptionName]
fn configuration_options(&self) -> &[LintRuleConfigurationOptionName]
Returns a map of configuration options used by this lint rule. Read more
Auto Trait Implementations§
impl Freeze for NotSPDX
impl RefUnwindSafe for NotSPDX
impl Send for NotSPDX
impl Sync for NotSPDX
impl Unpin for NotSPDX
impl UnwindSafe for NotSPDX
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more