{"push_id":1218724559,"size":2,"distinct_size":2,"ref":"refs/heads/stable","head":"e10506ae1c9a29193a18aea7c89e35d3f4ad3511","before":"f8606ef4b83aae481e030024f7ccbff7532664ae","commits":[{"sha":"14c3e2c0faf10b4a370ae780b50dc1eacbe21b59","author":{"name":"Bruno Cardoso Lopes","email":"aa5b4b0fe96f40a92b197547f2a96952081c3ea1@gmail.com"},"message":"[VFS] Skip non existent files from the VFS tree\n\nWhen the VFS is described through a YAML file, the real file path for a\nvirtual file is present in the \"external-contents\" field. Example:\n\n  ...\n  {\n     'type': 'file',\n     'name': 'a.h',\n     'external-contents': '/a/b/c/a.h'\n  }\n\nCurrently, when parsing umbrella directories, we use\nvfs::recursive_directory_iterator to gather the header files to generate the\nequivalent modules for. If the external contents for a header does not exist,\nwe currently are unable to build a module, since the VFS\nvfs::recursive_directory_iterator will fail when it finds an entry without a\nreliable real path.\n\nTurns out that Xcode emit YAML files with real paths that do not necessarily\nexist until some point in the build process. This makes umbrella module builds\nto fail if YAML files are used in compiler invocation prior to such points.\n\nFix the issue during VFS dir iteration by skipping entries that do not contain\nreliable external contents.\n\nrdar://problem/26600868","distinct":true,"url":"https://api.github.com/repos/bob-wilson/swift-clang/commits/14c3e2c0faf10b4a370ae780b50dc1eacbe21b59"},{"sha":"e10506ae1c9a29193a18aea7c89e35d3f4ad3511","author":{"name":"swift-ci","email":"ba4463bdeeb747bfa14a6c06d0b8d74a99982bde@users.noreply.github.com"},"message":"Merge remote-tracking branch 'origin/swift-3.0-branch' into stable\n\n* origin/swift-3.0-branch:\n  [VFS] Skip non existent files from the VFS tree","distinct":true,"url":"https://api.github.com/repos/bob-wilson/swift-clang/commits/e10506ae1c9a29193a18aea7c89e35d3f4ad3511"}]}
{"actor":{"display_login":"bob-wilson"}}