Removed root related flags
authorRay Tung <raytung@users.noreply.github.com>
Tue, 3 Oct 2017 13:50:33 +0000 (00:50 +1100)
committerRay Tung <raytung@users.noreply.github.com>
Tue, 3 Oct 2017 13:50:33 +0000 (00:50 +1100)
src/cargo/core/resolver/encode.rs
src/cargo/ops/lockfile.rs

index 344082bf60eed1b36d10fa4e4c074a98315537ae..2ccb1a7c95c33d37b78b416ac66ee14c1969983d 100644 (file)
@@ -14,8 +14,6 @@ use super::Resolve;
 #[derive(Serialize, Deserialize, Debug)]
 pub struct EncodableResolve {
     package: Option<Vec<EncodableDependency>>,
-    /// `root` is optional to allow forward compatibility.
-    root: Option<EncodableDependency>,
     metadata: Option<Metadata>,
 
     #[serde(default, skip_serializing_if = "Patch::is_empty")]
@@ -33,13 +31,7 @@ impl EncodableResolve {
     pub fn into_resolve(self, ws: &Workspace) -> CargoResult<Resolve> {
         let path_deps = build_path_deps(ws);
 
-        let packages = {
-            let mut packages = self.package.unwrap_or_default();
-            if let Some(root) = self.root {
-                packages.insert(0, root);
-            }
-            packages
-        };
+        let packages = self.package.unwrap_or_default();
 
         // `PackageId`s in the lock file don't include the `source` part
         // for workspace members, so we reconstruct proper ids.
@@ -311,7 +303,6 @@ impl<'de> de::Deserialize<'de> for EncodablePackageId {
 pub struct WorkspaceResolve<'a, 'cfg: 'a> {
     pub ws: &'a Workspace<'cfg>,
     pub resolve: &'a Resolve,
-    pub use_root_key: bool,
 }
 
 impl<'a, 'cfg> ser::Serialize for WorkspaceResolve<'a, 'cfg> {
@@ -321,15 +312,7 @@ impl<'a, 'cfg> ser::Serialize for WorkspaceResolve<'a, 'cfg> {
         let mut ids: Vec<&PackageId> = self.resolve.graph.iter().collect();
         ids.sort();
 
-        let root = self.ws.members().max_by_key(|member| {
-            member.name()
-        }).map(Package::package_id);
-
         let encodable = ids.iter().filter_map(|&id| {
-            if self.use_root_key && root.unwrap() == id {
-                return None
-            }
-
             Some(encodable_resolve_node(id, self.resolve))
         }).collect::<Vec<_>>();
 
@@ -347,11 +330,6 @@ impl<'a, 'cfg> ser::Serialize for WorkspaceResolve<'a, 'cfg> {
 
         let metadata = if metadata.is_empty() { None } else { Some(metadata) };
 
-        let root = match root {
-            Some(root) if self.use_root_key => Some(encodable_resolve_node(root, self.resolve)),
-            _ => None,
-        };
-
         let patch = Patch {
             unused: self.resolve.unused_patches().iter().map(|id| {
                 EncodableDependency {
@@ -365,7 +343,6 @@ impl<'a, 'cfg> ser::Serialize for WorkspaceResolve<'a, 'cfg> {
         };
         EncodableResolve {
             package: Some(encodable),
-            root: root,
             metadata: metadata,
             patch: patch,
         }.serialize(s)
index 6fa4e2f7143bdbcdbf7c638275d6ea3e24b074e0..8dc5b45672e2c08fae0efa2efca1fddb87730d8c 100644 (file)
@@ -43,7 +43,6 @@ pub fn write_pkg_lockfile(ws: &Workspace, resolve: &Resolve) -> CargoResult<()>
     let toml = toml::Value::try_from(WorkspaceResolve {
         ws: ws,
         resolve: resolve,
-        use_root_key: false,
     }).unwrap();
 
     let mut out = String::new();