{"action":"created","issue":{"url":"https://api.github.com/repos/yarnpkg/yarn/issues/5042","repository_url":"https://api.github.com/repos/yarnpkg/yarn","labels_url":"https://api.github.com/repos/yarnpkg/yarn/issues/5042/labels{/name}","comments_url":"https://api.github.com/repos/yarnpkg/yarn/issues/5042/comments","events_url":"https://api.github.com/repos/yarnpkg/yarn/issues/5042/events","html_url":"https://github.com/yarnpkg/yarn/pull/5042","id":279422057,"number":5042,"title":"feat(checksums): add integrity field with sha512 authentication to yarn.lock","user":{"login":"imsnif","id":795598,"avatar_url":"https://avatars3.githubusercontent.com/u/795598?v=4","gravatar_id":"","url":"https://api.github.com/users/imsnif","html_url":"https://github.com/imsnif","followers_url":"https://api.github.com/users/imsnif/followers","following_url":"https://api.github.com/users/imsnif/following{/other_user}","gists_url":"https://api.github.com/users/imsnif/gists{/gist_id}","starred_url":"https://api.github.com/users/imsnif/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/imsnif/subscriptions","organizations_url":"https://api.github.com/users/imsnif/orgs","repos_url":"https://api.github.com/users/imsnif/repos","events_url":"https://api.github.com/users/imsnif/events{/privacy}","received_events_url":"https://api.github.com/users/imsnif/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"BYK","id":126780,"avatar_url":"https://avatars3.githubusercontent.com/u/126780?v=4","gravatar_id":"","url":"https://api.github.com/users/BYK","html_url":"https://github.com/BYK","followers_url":"https://api.github.com/users/BYK/followers","following_url":"https://api.github.com/users/BYK/following{/other_user}","gists_url":"https://api.github.com/users/BYK/gists{/gist_id}","starred_url":"https://api.github.com/users/BYK/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BYK/subscriptions","organizations_url":"https://api.github.com/users/BYK/orgs","repos_url":"https://api.github.com/users/BYK/repos","events_url":"https://api.github.com/users/BYK/events{/privacy}","received_events_url":"https://api.github.com/users/BYK/received_events","type":"User","site_admin":false},"assignees":[{"login":"BYK","id":126780,"avatar_url":"https://avatars3.githubusercontent.com/u/126780?v=4","gravatar_id":"","url":"https://api.github.com/users/BYK","html_url":"https://github.com/BYK","followers_url":"https://api.github.com/users/BYK/followers","following_url":"https://api.github.com/users/BYK/following{/other_user}","gists_url":"https://api.github.com/users/BYK/gists{/gist_id}","starred_url":"https://api.github.com/users/BYK/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/BYK/subscriptions","organizations_url":"https://api.github.com/users/BYK/orgs","repos_url":"https://api.github.com/users/BYK/repos","events_url":"https://api.github.com/users/BYK/events{/privacy}","received_events_url":"https://api.github.com/users/BYK/received_events","type":"User","site_admin":false}],"milestone":null,"comments":9,"created_at":"2017-12-05T15:41:33Z","updated_at":"2018-02-25T18:24:11Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/yarnpkg/yarn/pulls/5042","html_url":"https://github.com/yarnpkg/yarn/pull/5042","diff_url":"https://github.com/yarnpkg/yarn/pull/5042.diff","patch_url":"https://github.com/yarnpkg/yarn/pull/5042.patch"},"body":"**Summary**\r\nContinuing the discussion in: https://github.com/yarnpkg/yarn/issues/816\r\nThis turned out to be a feature that touched quite a few parts of the code base. The diff is a little big, mostly because this required (minor) changes in a lot of the tests and fixtures (since we've added a new field to yarn.lock).\r\n\r\nI tried to adjust the commits to \"tell a story\", to make this PR easier to follow. That being said, if anything is unclear, I would be happy to explain or adjust it to make it more understandable (I have made an effort to do so in the code as much as possible).\r\n\r\nSince this is not a trivial change, what guided me through it is the will to concentrate on it as much as possible without changing other things. Thus for example, I did not change the `validationStream` in other non-tarball fetchers to use the `ssri` module, even though it creates an inconsistency, so as not to distract from the feature at hand. I think this PR does introduce some wanted changes (such as the stream example) but I believe they are all very minor, and would be best fixed in additional refactoring PRs (that I or someone else will perform once this is approved and merged).\r\n\r\n**Test plan**\r\nI added both integration and unit tests where appropriate.\r\nPlease note though: since there are no tests for `publish` (unless I missed them!) I did not add tests, because I felt it would be out of scope. I tested this manually with `verdaccio` and it worked. I would urge the reviewer to do the same to make sure I was not mistaken!\r\n"},"comment":{"url":"https://api.github.com/repos/yarnpkg/yarn/issues/comments/368331819","html_url":"https://github.com/yarnpkg/yarn/pull/5042#issuecomment-368331819","issue_url":"https://api.github.com/repos/yarnpkg/yarn/issues/5042","id":368331819,"user":{"login":"bestander","id":2121048,"avatar_url":"https://avatars3.githubusercontent.com/u/2121048?v=4","gravatar_id":"","url":"https://api.github.com/users/bestander","html_url":"https://github.com/bestander","followers_url":"https://api.github.com/users/bestander/followers","following_url":"https://api.github.com/users/bestander/following{/other_user}","gists_url":"https://api.github.com/users/bestander/gists{/gist_id}","starred_url":"https://api.github.com/users/bestander/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bestander/subscriptions","organizations_url":"https://api.github.com/users/bestander/orgs","repos_url":"https://api.github.com/users/bestander/repos","events_url":"https://api.github.com/users/bestander/events{/privacy}","received_events_url":"https://api.github.com/users/bestander/received_events","type":"User","site_admin":false},"created_at":"2018-02-25T18:24:11Z","updated_at":"2018-02-25T18:24:11Z","author_association":"OWNER","body":"@imsnif, thanks for pinging, this is a right thing to do, no need to apologize.\r\nCould you rebase the PR to merge conflicts"}}
{"actor":{"display_login":"bestander"}}