Skip to main content

provenant/license_detection/models/
license.rs

1//! License metadata loaded from .LICENSE files.
2
3use serde::{Deserialize, Serialize};
4
5/// License metadata loaded from .LICENSE files.
6#[derive(Debug, Clone, PartialEq, Default, Serialize, Deserialize)]
7pub struct License {
8    pub key: String,
9    pub short_name: Option<String>,
10    pub name: String,
11    pub language: Option<String>,
12    pub spdx_license_key: Option<String>,
13    pub other_spdx_license_keys: Vec<String>,
14    pub category: Option<String>,
15    pub owner: Option<String>,
16    pub homepage_url: Option<String>,
17    pub text: String,
18    pub reference_urls: Vec<String>,
19    pub osi_license_key: Option<String>,
20    pub text_urls: Vec<String>,
21    pub osi_url: Option<String>,
22    pub faq_url: Option<String>,
23    pub other_urls: Vec<String>,
24    pub notes: Option<String>,
25    pub is_deprecated: bool,
26    pub is_exception: bool,
27    pub is_unknown: bool,
28    pub is_generic: bool,
29    pub replaced_by: Vec<String>,
30    pub minimum_coverage: Option<u8>,
31    pub standard_notice: Option<String>,
32    pub ignorable_copyrights: Option<Vec<String>>,
33    pub ignorable_holders: Option<Vec<String>>,
34    pub ignorable_authors: Option<Vec<String>>,
35    pub ignorable_urls: Option<Vec<String>>,
36    pub ignorable_emails: Option<Vec<String>>,
37}