{"action":"created","issue":{"url":"https://api.github.com/repos/apple/swift/issues/15013","repository_url":"https://api.github.com/repos/apple/swift","labels_url":"https://api.github.com/repos/apple/swift/issues/15013/labels{/name}","comments_url":"https://api.github.com/repos/apple/swift/issues/15013/comments","events_url":"https://api.github.com/repos/apple/swift/issues/15013/events","html_url":"https://github.com/apple/swift/pull/15013","id":302576597,"number":15013,"title":"[Batch mode] Write supplementary output file map. rdar://problem/38157859","user":{"login":"davidungar","id":461264,"avatar_url":"https://avatars1.githubusercontent.com/u/461264?v=4","gravatar_id":"","url":"https://api.github.com/users/davidungar","html_url":"https://github.com/davidungar","followers_url":"https://api.github.com/users/davidungar/followers","following_url":"https://api.github.com/users/davidungar/following{/other_user}","gists_url":"https://api.github.com/users/davidungar/gists{/gist_id}","starred_url":"https://api.github.com/users/davidungar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidungar/subscriptions","organizations_url":"https://api.github.com/users/davidungar/orgs","repos_url":"https://api.github.com/users/davidungar/repos","events_url":"https://api.github.com/users/davidungar/events{/privacy}","received_events_url":"https://api.github.com/users/davidungar/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":33,"created_at":"2018-03-06T06:14:29Z","updated_at":"2018-03-16T05:09:27Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/apple/swift/pulls/15013","html_url":"https://github.com/apple/swift/pull/15013","diff_url":"https://github.com/apple/swift/pull/15013.diff","patch_url":"https://github.com/apple/swift/pull/15013.patch"},"body":"<!-- What's in this pull request? -->\r\nWhen there are lots of supplementary outputs (only happens in batch mode, but the code is simpler if it does not care), use a filemap to communicate them from driver to frontend.\r\n\r\nThere are many changes here:\r\n\r\n- OutputFileMap.* and Types.h move from the driver into the frontEnd so that frontEnd can reuse the file map format and parsing logic.\r\n- `OutputFileMap` parsing reports more information about errors.\r\n- Some behavior about using various filelists and adding corresponding arguments moves to `JobContext`, where all the information already resides.\r\n- The driver gains a new kind of `FileListInfo`, `SupplementaryOutput`.\r\n- The existing driver code to repartition a batch if the command line is too big is kept as a recovery mechanism in case the heuristic used to decide whether to employ a supplementary output file map reports a false negative. In that case, a message is output to `stderr` in debug mode.\r\n- The invocation creation code for compile jobs is unified across single-, batch-, and standard-compiles.\r\n\r\n<!--\r\nBefore merging this pull request, you must run the Swift continuous integration tests.\r\nFor information about triggering CI builds via @swift-ci, see:\r\nhttps://github.com/apple/swift/blob/master/docs/ContinuousIntegration.md#swift-ci\r\n\r\nThank you for your contribution to Swift!\r\n-->\r\n"},"comment":{"url":"https://api.github.com/repos/apple/swift/issues/comments/373605139","html_url":"https://github.com/apple/swift/pull/15013#issuecomment-373605139","issue_url":"https://api.github.com/repos/apple/swift/issues/15013","id":373605139,"user":{"login":"davidungar","id":461264,"avatar_url":"https://avatars1.githubusercontent.com/u/461264?v=4","gravatar_id":"","url":"https://api.github.com/users/davidungar","html_url":"https://github.com/davidungar","followers_url":"https://api.github.com/users/davidungar/followers","following_url":"https://api.github.com/users/davidungar/following{/other_user}","gists_url":"https://api.github.com/users/davidungar/gists{/gist_id}","starred_url":"https://api.github.com/users/davidungar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/davidungar/subscriptions","organizations_url":"https://api.github.com/users/davidungar/orgs","repos_url":"https://api.github.com/users/davidungar/repos","events_url":"https://api.github.com/users/davidungar/events{/privacy}","received_events_url":"https://api.github.com/users/davidungar/received_events","type":"User","site_admin":false},"created_at":"2018-03-16T05:09:27Z","updated_at":"2018-03-16T05:09:27Z","author_association":"CONTRIBUTOR","body":"@graydon I think I've incorporated the fix to writing OutputFileMap that you pointed out today."}}
{"actor":{"display_login":"davidungar"}}