pub struct Project {Show 18 fields
pub name: String,
pub version: Option<Version>,
pub description: Option<String>,
pub readme: Option<ReadMe>,
pub requires_python: Option<VersionSpecifiers>,
pub license: Option<License>,
pub license_files: Option<Vec<String>>,
pub authors: Option<Vec<Contact>>,
pub maintainers: Option<Vec<Contact>>,
pub keywords: Option<Vec<String>>,
pub classifiers: Option<Vec<String>>,
pub urls: Option<IndexMap<String, String>>,
pub entry_points: Option<IndexMap<String, IndexMap<String, String>>>,
pub scripts: Option<IndexMap<String, String>>,
pub gui_scripts: Option<IndexMap<String, String>>,
pub dependencies: Option<Vec<Requirement>>,
pub optional_dependencies: Option<IndexMap<String, Vec<Requirement>>>,
pub dynamic: Option<Vec<String>>,
}
Expand description
PEP 621 project metadata
Fields§
§name: String
The name of the project
version: Option<Version>
The version of the project as supported by PEP 440
description: Option<String>
The summary description of the project
readme: Option<ReadMe>
The full description of the project (i.e. the README)
requires_python: Option<VersionSpecifiers>
The Python version requirements of the project
license: Option<License>
The license under which the project is distributed
Supports both the current standard and the provisional PEP 639
license_files: Option<Vec<String>>
The paths to files containing licenses and other legal notices to be distributed with the project.
Use parse_pep639_glob
from the optional pep639-glob
feature to find the matching files.
Note that this doesn’t check the PEP 639 rules for combining license_files
and license
.
From the provisional PEP 639
The people or organizations considered to be the “authors” of the project
maintainers: Option<Vec<Contact>>
Similar to “authors” in that its exact meaning is open to interpretation
keywords: Option<Vec<String>>
The keywords for the project
classifiers: Option<Vec<String>>
Trove classifiers which apply to the project
urls: Option<IndexMap<String, String>>
A table of URLs where the key is the URL label and the value is the URL itself
entry_points: Option<IndexMap<String, IndexMap<String, String>>>
Entry points
scripts: Option<IndexMap<String, String>>
Corresponds to the console_scripts group in the core metadata
gui_scripts: Option<IndexMap<String, String>>
Corresponds to the gui_scripts group in the core metadata
dependencies: Option<Vec<Requirement>>
Project dependencies
optional_dependencies: Option<IndexMap<String, Vec<Requirement>>>
Optional dependencies
dynamic: Option<Vec<String>>
Specifies which fields listed by PEP 621 were intentionally unspecified so another tool can/will provide such metadata dynamically.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Project
impl<'de> Deserialize<'de> for Project
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for Project
impl StructuralPartialEq for Project
Auto Trait Implementations§
impl Freeze for Project
impl RefUnwindSafe for Project
impl Send for Project
impl Sync for Project
impl Unpin for Project
impl UnwindSafe for Project
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more