From ab493a17d0eb5d148f4bc504408c7071c12a438b Mon Sep 17 00:00:00 2001 From: Robert Vally Date: Thu, 2 Feb 2017 15:59:34 +0800 Subject: [PATCH 1/2] Metadata response now also contains package description. --- src/cargo/core/package.rs | 3 +++ tests/metadata.rs | 9 +++++++++ 2 files changed, 12 insertions(+) diff --git a/src/cargo/core/package.rs b/src/cargo/core/package.rs index 58135fda..6b4cd283 100644 --- a/src/cargo/core/package.rs +++ b/src/cargo/core/package.rs @@ -31,6 +31,7 @@ struct SerializedPackage<'a> { id: &'a PackageId, license: Option<&'a str>, license_file: Option<&'a str>, + description: Option<&'a str>, source: &'a SourceId, dependencies: &'a [Dependency], targets: &'a [Target], @@ -45,6 +46,7 @@ impl Encodable for Package { let manmeta = self.manifest.metadata(); let license = manmeta.license.as_ref().map(String::as_ref); let license_file = manmeta.license_file.as_ref().map(String::as_ref); + let description = manmeta.description.as_ref().map(String::as_ref); SerializedPackage { name: &package_id.name(), @@ -52,6 +54,7 @@ impl Encodable for Package { id: package_id, license: license, license_file: license_file, + description: description, source: summary.source_id(), dependencies: summary.dependencies(), targets: &self.manifest.targets(), diff --git a/tests/metadata.rs b/tests/metadata.rs index e65beb7e..349de9fc 100644 --- a/tests/metadata.rs +++ b/tests/metadata.rs @@ -22,6 +22,7 @@ fn cargo_metadata_simple() { "dependencies": [], "license": null, "license_file": null, + "description": null, "targets": [ { "kind": [ @@ -86,6 +87,7 @@ fn cargo_metadata_with_deps_and_version() { "source": "registry+[..]", "license": null, "license_file": null, + "description": null, "targets": [ { "kind": [ @@ -117,6 +119,7 @@ fn cargo_metadata_with_deps_and_version() { "source": "registry+[..]", "license": null, "license_file": null, + "description": null, "targets": [ { "kind": [ @@ -148,6 +151,7 @@ fn cargo_metadata_with_deps_and_version() { "source": null, "license": "MIT", "license_file": null, + "description": "foo", "targets": [ { "kind": [ @@ -210,6 +214,7 @@ fn workspace_metadata() { "dependencies": [], "license": null, "license_file": null, + "description": null, "targets": [ { "kind": [ "lib" ], @@ -228,6 +233,7 @@ fn workspace_metadata() { "dependencies": [], "license": null, "license_file": null, + "description": null, "targets": [ { "kind": [ "lib" ], @@ -281,6 +287,7 @@ fn workspace_metadata_no_deps() { "dependencies": [], "license": null, "license_file": null, + "description": null, "targets": [ { "kind": [ "lib" ], @@ -299,6 +306,7 @@ fn workspace_metadata_no_deps() { "dependencies": [], "license": null, "license_file": null, + "description": null, "targets": [ { "kind": [ "lib" ], @@ -340,6 +348,7 @@ const MANIFEST_OUTPUT: &'static str= "dependencies":[], "license": null, "license_file": null, + "description": null, "targets":[{ "kind":["bin"], "name":"foo", -- 2.11.1