{"action":"created","comment":{"url":"https://api.github.com/repos/rust-lang/cargo/pulls/comments/30654164","id":30654164,"diff_hunk":"@@ -89,6 +89,21 @@ pub fn update_lockfile(manifest_path: &Path,\n                                                   Method::Everything,\n                                                   Some(&previous_resolve),\n                                                   Some(&to_avoid)));\n+    for dep in compare_dependency_graphs(&previous_resolve, &resolve) {\n+        try!(match dep {\n+            (None, Some(pkg)) => opts.config.shell().status(\"Adding\",\n+                format!(\"{} v{}\", pkg.name(), pkg.version())),\n+            (Some(pkg), None) => opts.config.shell().status(\"Removing\",\n+                format!(\"{} v{}\", pkg.name(), pkg.version())),\n+            (Some(pkg1), Some(pkg2)) => {\n+                if pkg1.version() != pkg2.version() {\n+                    opts.config.shell().status(\"Updating\",\n+                        format!(\"{} v{} -> v{}\", pkg1.name(), pkg1.version(), pkg2.version()))\n+                } else {Ok(())}\n+            }\n+            (None, None) => unreachable!(),\n+        });","path":"src/cargo/ops/cargo_generate_lockfile.rs","position":23,"original_position":23,"commit_id":"a62b3a947fff681709ac977e5c7faa35a6877297","original_commit_id":"a62b3a947fff681709ac977e5c7faa35a6877297","user":{"login":"alexcrichton","id":64996,"avatar_url":"https://avatars.githubusercontent.com/u/64996?v=3","gravatar_id":"","url":"https://api.github.com/users/alexcrichton","html_url":"https://github.com/alexcrichton","followers_url":"https://api.github.com/users/alexcrichton/followers","following_url":"https://api.github.com/users/alexcrichton/following{/other_user}","gists_url":"https://api.github.com/users/alexcrichton/gists{/gist_id}","starred_url":"https://api.github.com/users/alexcrichton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexcrichton/subscriptions","organizations_url":"https://api.github.com/users/alexcrichton/orgs","repos_url":"https://api.github.com/users/alexcrichton/repos","events_url":"https://api.github.com/users/alexcrichton/events{/privacy}","received_events_url":"https://api.github.com/users/alexcrichton/received_events","type":"User","site_admin":false},"body":"This may be better structured like:\r\n\r\n```rust\r\nlet (status, msg) = match dep {\r\n    (None, Some(pkg)) => (\"Adding\", format!(...)),\r\n    (Some(pkg), None) => (\"Removing\", format!(...)),\r\n    (Some(pkg1), Some(pkg2)) => {\r\n        if pkg1.version() == pkg2.version() { continue }\r\n        (\"Updating\", format!(...))\r\n    }\r\n    (None, None) => continue,\r\n};\r\ntry!(opts.config.shell().status(...))\r\n```","created_at":"2015-05-19T22:19:30Z","updated_at":"2015-05-19T22:19:30Z","html_url":"https://github.com/rust-lang/cargo/pull/1621#discussion_r30654164","pull_request_url":"https://api.github.com/repos/rust-lang/cargo/pulls/1621","_links":{"self":{"href":"https://api.github.com/repos/rust-lang/cargo/pulls/comments/30654164"},"html":{"href":"https://github.com/rust-lang/cargo/pull/1621#discussion_r30654164"},"pull_request":{"href":"https://api.github.com/repos/rust-lang/cargo/pulls/1621"}}},"pull_request":{"url":"https://api.github.com/repos/rust-lang/cargo/pulls/1621","id":35589807,"html_url":"https://github.com/rust-lang/cargo/pull/1621","diff_url":"https://github.com/rust-lang/cargo/pull/1621.diff","patch_url":"https://github.com/rust-lang/cargo/pull/1621.patch","issue_url":"https://api.github.com/repos/rust-lang/cargo/issues/1621","number":1621,"state":"open","locked":false,"title":"Print information about updated packages on cargo update.","user":{"login":"pyfisch","id":2781017,"avatar_url":"https://avatars.githubusercontent.com/u/2781017?v=3","gravatar_id":"","url":"https://api.github.com/users/pyfisch","html_url":"https://github.com/pyfisch","followers_url":"https://api.github.com/users/pyfisch/followers","following_url":"https://api.github.com/users/pyfisch/following{/other_user}","gists_url":"https://api.github.com/users/pyfisch/gists{/gist_id}","starred_url":"https://api.github.com/users/pyfisch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pyfisch/subscriptions","organizations_url":"https://api.github.com/users/pyfisch/orgs","repos_url":"https://api.github.com/users/pyfisch/repos","events_url":"https://api.github.com/users/pyfisch/events{/privacy}","received_events_url":"https://api.github.com/users/pyfisch/received_events","type":"User","site_admin":false},"body":"Solves #984","created_at":"2015-05-17T16:53:56Z","updated_at":"2015-05-19T22:19:30Z","closed_at":null,"merged_at":null,"merge_commit_sha":"5c4f742bb8cd43dbabbe643c174c3b4412c51b3b","assignee":{"login":"wycats","id":4,"avatar_url":"https://avatars.githubusercontent.com/u/4?v=3","gravatar_id":"","url":"https://api.github.com/users/wycats","html_url":"https://github.com/wycats","followers_url":"https://api.github.com/users/wycats/followers","following_url":"https://api.github.com/users/wycats/following{/other_user}","gists_url":"https://api.github.com/users/wycats/gists{/gist_id}","starred_url":"https://api.github.com/users/wycats/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wycats/subscriptions","organizations_url":"https://api.github.com/users/wycats/orgs","repos_url":"https://api.github.com/users/wycats/repos","events_url":"https://api.github.com/users/wycats/events{/privacy}","received_events_url":"https://api.github.com/users/wycats/received_events","type":"User","site_admin":false},"milestone":null,"commits_url":"https://api.github.com/repos/rust-lang/cargo/pulls/1621/commits","review_comments_url":"https://api.github.com/repos/rust-lang/cargo/pulls/1621/comments","review_comment_url":"https://api.github.com/repos/rust-lang/cargo/pulls/comments{/number}","comments_url":"https://api.github.com/repos/rust-lang/cargo/issues/1621/comments","statuses_url":"https://api.github.com/repos/rust-lang/cargo/statuses/a62b3a947fff681709ac977e5c7faa35a6877297","head":{"label":"pyfisch:issue984","ref":"issue984","sha":"a62b3a947fff681709ac977e5c7faa35a6877297","user":{"login":"pyfisch","id":2781017,"avatar_url":"https://avatars.githubusercontent.com/u/2781017?v=3","gravatar_id":"","url":"https://api.github.com/users/pyfisch","html_url":"https://github.com/pyfisch","followers_url":"https://api.github.com/users/pyfisch/followers","following_url":"https://api.github.com/users/pyfisch/following{/other_user}","gists_url":"https://api.github.com/users/pyfisch/gists{/gist_id}","starred_url":"https://api.github.com/users/pyfisch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pyfisch/subscriptions","organizations_url":"https://api.github.com/users/pyfisch/orgs","repos_url":"https://api.github.com/users/pyfisch/repos","events_url":"https://api.github.com/users/pyfisch/events{/privacy}","received_events_url":"https://api.github.com/users/pyfisch/received_events","type":"User","site_admin":false},"repo":{"id":35770175,"name":"cargo","full_name":"pyfisch/cargo","owner":{"login":"pyfisch","id":2781017,"avatar_url":"https://avatars.githubusercontent.com/u/2781017?v=3","gravatar_id":"","url":"https://api.github.com/users/pyfisch","html_url":"https://github.com/pyfisch","followers_url":"https://api.github.com/users/pyfisch/followers","following_url":"https://api.github.com/users/pyfisch/following{/other_user}","gists_url":"https://api.github.com/users/pyfisch/gists{/gist_id}","starred_url":"https://api.github.com/users/pyfisch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pyfisch/subscriptions","organizations_url":"https://api.github.com/users/pyfisch/orgs","repos_url":"https://api.github.com/users/pyfisch/repos","events_url":"https://api.github.com/users/pyfisch/events{/privacy}","received_events_url":"https://api.github.com/users/pyfisch/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/pyfisch/cargo","description":"The Rust package manager","fork":true,"url":"https://api.github.com/repos/pyfisch/cargo","forks_url":"https://api.github.com/repos/pyfisch/cargo/forks","keys_url":"https://api.github.com/repos/pyfisch/cargo/keys{/key_id}","collaborators_url":"https://api.github.com/repos/pyfisch/cargo/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/pyfisch/cargo/teams","hooks_url":"https://api.github.com/repos/pyfisch/cargo/hooks","issue_events_url":"https://api.github.com/repos/pyfisch/cargo/issues/events{/number}","events_url":"https://api.github.com/repos/pyfisch/cargo/events","assignees_url":"https://api.github.com/repos/pyfisch/cargo/assignees{/user}","branches_url":"https://api.github.com/repos/pyfisch/cargo/branches{/branch}","tags_url":"https://api.github.com/repos/pyfisch/cargo/tags","blobs_url":"https://api.github.com/repos/pyfisch/cargo/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/pyfisch/cargo/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/pyfisch/cargo/git/refs{/sha}","trees_url":"https://api.github.com/repos/pyfisch/cargo/git/trees{/sha}","statuses_url":"https://api.github.com/repos/pyfisch/cargo/statuses/{sha}","languages_url":"https://api.github.com/repos/pyfisch/cargo/languages","stargazers_url":"https://api.github.com/repos/pyfisch/cargo/stargazers","contributors_url":"https://api.github.com/repos/pyfisch/cargo/contributors","subscribers_url":"https://api.github.com/repos/pyfisch/cargo/subscribers","subscription_url":"https://api.github.com/repos/pyfisch/cargo/subscription","commits_url":"https://api.github.com/repos/pyfisch/cargo/commits{/sha}","git_commits_url":"https://api.github.com/repos/pyfisch/cargo/git/commits{/sha}","comments_url":"https://api.github.com/repos/pyfisch/cargo/comments{/number}","issue_comment_url":"https://api.github.com/repos/pyfisch/cargo/issues/comments{/number}","contents_url":"https://api.github.com/repos/pyfisch/cargo/contents/{+path}","compare_url":"https://api.github.com/repos/pyfisch/cargo/compare/{base}...{head}","merges_url":"https://api.github.com/repos/pyfisch/cargo/merges","archive_url":"https://api.github.com/repos/pyfisch/cargo/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/pyfisch/cargo/downloads","issues_url":"https://api.github.com/repos/pyfisch/cargo/issues{/number}","pulls_url":"https://api.github.com/repos/pyfisch/cargo/pulls{/number}","milestones_url":"https://api.github.com/repos/pyfisch/cargo/milestones{/number}","notifications_url":"https://api.github.com/repos/pyfisch/cargo/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/pyfisch/cargo/labels{/name}","releases_url":"https://api.github.com/repos/pyfisch/cargo/releases{/id}","created_at":"2015-05-17T14:56:06Z","updated_at":"2015-05-17T14:56:09Z","pushed_at":"2015-05-19T19:41:32Z","git_url":"git://github.com/pyfisch/cargo.git","ssh_url":"git@github.com:pyfisch/cargo.git","clone_url":"https://github.com/pyfisch/cargo.git","svn_url":"https://github.com/pyfisch/cargo","homepage":"http://crates.io/","size":6232,"stargazers_count":0,"watchers_count":0,"language":"Rust","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"rust-lang:master","ref":"master","sha":"a48358155c90467ed9c897930dd0da4614605dac","user":{"login":"rust-lang","id":5430905,"avatar_url":"https://avatars.githubusercontent.com/u/5430905?v=3","gravatar_id":"","url":"https://api.github.com/users/rust-lang","html_url":"https://github.com/rust-lang","followers_url":"https://api.github.com/users/rust-lang/followers","following_url":"https://api.github.com/users/rust-lang/following{/other_user}","gists_url":"https://api.github.com/users/rust-lang/gists{/gist_id}","starred_url":"https://api.github.com/users/rust-lang/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rust-lang/subscriptions","organizations_url":"https://api.github.com/users/rust-lang/orgs","repos_url":"https://api.github.com/users/rust-lang/repos","events_url":"https://api.github.com/users/rust-lang/events{/privacy}","received_events_url":"https://api.github.com/users/rust-lang/received_events","type":"Organization","site_admin":false},"repo":{"id":17420913,"name":"cargo","full_name":"rust-lang/cargo","owner":{"login":"rust-lang","id":5430905,"avatar_url":"https://avatars.githubusercontent.com/u/5430905?v=3","gravatar_id":"","url":"https://api.github.com/users/rust-lang","html_url":"https://github.com/rust-lang","followers_url":"https://api.github.com/users/rust-lang/followers","following_url":"https://api.github.com/users/rust-lang/following{/other_user}","gists_url":"https://api.github.com/users/rust-lang/gists{/gist_id}","starred_url":"https://api.github.com/users/rust-lang/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rust-lang/subscriptions","organizations_url":"https://api.github.com/users/rust-lang/orgs","repos_url":"https://api.github.com/users/rust-lang/repos","events_url":"https://api.github.com/users/rust-lang/events{/privacy}","received_events_url":"https://api.github.com/users/rust-lang/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/rust-lang/cargo","description":"The Rust package manager","fork":false,"url":"https://api.github.com/repos/rust-lang/cargo","forks_url":"https://api.github.com/repos/rust-lang/cargo/forks","keys_url":"https://api.github.com/repos/rust-lang/cargo/keys{/key_id}","collaborators_url":"https://api.github.com/repos/rust-lang/cargo/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/rust-lang/cargo/teams","hooks_url":"https://api.github.com/repos/rust-lang/cargo/hooks","issue_events_url":"https://api.github.com/repos/rust-lang/cargo/issues/events{/number}","events_url":"https://api.github.com/repos/rust-lang/cargo/events","assignees_url":"https://api.github.com/repos/rust-lang/cargo/assignees{/user}","branches_url":"https://api.github.com/repos/rust-lang/cargo/branches{/branch}","tags_url":"https://api.github.com/repos/rust-lang/cargo/tags","blobs_url":"https://api.github.com/repos/rust-lang/cargo/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/rust-lang/cargo/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/rust-lang/cargo/git/refs{/sha}","trees_url":"https://api.github.com/repos/rust-lang/cargo/git/trees{/sha}","statuses_url":"https://api.github.com/repos/rust-lang/cargo/statuses/{sha}","languages_url":"https://api.github.com/repos/rust-lang/cargo/languages","stargazers_url":"https://api.github.com/repos/rust-lang/cargo/stargazers","contributors_url":"https://api.github.com/repos/rust-lang/cargo/contributors","subscribers_url":"https://api.github.com/repos/rust-lang/cargo/subscribers","subscription_url":"https://api.github.com/repos/rust-lang/cargo/subscription","commits_url":"https://api.github.com/repos/rust-lang/cargo/commits{/sha}","git_commits_url":"https://api.github.com/repos/rust-lang/cargo/git/commits{/sha}","comments_url":"https://api.github.com/repos/rust-lang/cargo/comments{/number}","issue_comment_url":"https://api.github.com/repos/rust-lang/cargo/issues/comments{/number}","contents_url":"https://api.github.com/repos/rust-lang/cargo/contents/{+path}","compare_url":"https://api.github.com/repos/rust-lang/cargo/compare/{base}...{head}","merges_url":"https://api.github.com/repos/rust-lang/cargo/merges","archive_url":"https://api.github.com/repos/rust-lang/cargo/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/rust-lang/cargo/downloads","issues_url":"https://api.github.com/repos/rust-lang/cargo/issues{/number}","pulls_url":"https://api.github.com/repos/rust-lang/cargo/pulls{/number}","milestones_url":"https://api.github.com/repos/rust-lang/cargo/milestones{/number}","notifications_url":"https://api.github.com/repos/rust-lang/cargo/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/rust-lang/cargo/labels{/name}","releases_url":"https://api.github.com/repos/rust-lang/cargo/releases{/id}","created_at":"2014-03-04T23:20:42Z","updated_at":"2015-05-19T17:32:08Z","pushed_at":"2015-05-19T22:07:46Z","git_url":"git://github.com/rust-lang/cargo.git","ssh_url":"git@github.com:rust-lang/cargo.git","clone_url":"https://github.com/rust-lang/cargo.git","svn_url":"https://github.com/rust-lang/cargo","homepage":"http://crates.io/","size":29357,"stargazers_count":1073,"watchers_count":1073,"language":"Rust","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":230,"mirror_url":null,"open_issues_count":163,"forks":230,"open_issues":163,"watchers":1073,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/rust-lang/cargo/pulls/1621"},"html":{"href":"https://github.com/rust-lang/cargo/pull/1621"},"issue":{"href":"https://api.github.com/repos/rust-lang/cargo/issues/1621"},"comments":{"href":"https://api.github.com/repos/rust-lang/cargo/issues/1621/comments"},"review_comments":{"href":"https://api.github.com/repos/rust-lang/cargo/pulls/1621/comments"},"review_comment":{"href":"https://api.github.com/repos/rust-lang/cargo/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/rust-lang/cargo/pulls/1621/commits"},"statuses":{"href":"https://api.github.com/repos/rust-lang/cargo/statuses/a62b3a947fff681709ac977e5c7faa35a6877297"}}}}