payload: {"action":"created","issue":{"url":"https://api.github.com/repos/apple/swift-corelibs-foundation/issues/2228","repository_url":"https://api.github.com/repos/apple/swift-corelibs-foundation","labels_url":"https://api.github.com/repos/apple/swift-corelibs-foundation/issues/2228/labels{/name}","comments_url":"https://api.github.com/repos/apple/swift-corelibs-foundation/issues/2228/comments","events_url":"https://api.github.com/repos/apple/swift-corelibs-foundation/issues/2228/events","html_url":"https://github.com/apple/swift-corelibs-foundation/pull/2228","id":441934295,"node_id":"MDExOlB1bGxSZXF1ZXN0Mjc3MTU2Mjk2","number":2228,"title":"[android] Implement Process and modify TestProcess to pass.","user":{"login":"drodriguez","id":6338,"node_id":"MDQ6VXNlcjYzMzg=","avatar_url":"https://avatars0.githubusercontent.com/u/6338?v=4","gravatar_id":"","url":"https://api.github.com/users/drodriguez","html_url":"https://github.com/drodriguez","followers_url":"https://api.github.com/users/drodriguez/followers","following_url":"https://api.github.com/users/drodriguez/following{/other_user}","gists_url":"https://api.github.com/users/drodriguez/gists{/gist_id}","starred_url":"https://api.github.com/users/drodriguez/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/drodriguez/subscriptions","organizations_url":"https://api.github.com/users/drodriguez/orgs","repos_url":"https://api.github.com/users/drodriguez/repos","events_url":"https://api.github.com/users/drodriguez/events{/privacy}","received_events_url":"https://api.github.com/users/drodriguez/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2019-05-08T21:12:52Z","updated_at":"2019-05-08T21:14:57Z","closed_at":null,"author_association":"COLLABORATOR","pull_request":{"url":"https://api.github.com/repos/apple/swift-corelibs-foundation/pulls/2228","html_url":"https://github.com/apple/swift-corelibs-foundation/pull/2228","diff_url":"https://github.com/apple/swift-corelibs-foundation/pull/2228.diff","patch_url":"https://github.com/apple/swift-corelibs-foundation/pull/2228.patch"},"body":"Until recent API levels, Android haven't provide posix_spawn and other\r\nfunctions from that family, so Process was not going to work with the\r\npath used for the POSIX OS.\r\n\r\nInstead of creating an specific path for Android, which will probably be\r\nforgotten by other changes, we implement a subset of the posix_spawn\r\nfamily of functions for Android, using fork and exec underneath, and\r\nother functions from the POSIX APIs. The already code in Process do not\r\nhave to be modified.\r\n\r\nThe tests have to be modified slightly for working on Android. Many\r\nchanges are related to the environment needing the key LD_LIBRARY_PATH,\r\nor the xdgTestHelper will not be able to start in some of the tests. The\r\nother change is using NSTemporaryDirectory() instead of a hardcoded\r\n`/tmp`, which doesn't exist in Android (the code also removes the last\r\nslash, to match the original code expectations).\r\n\r\nIt also includes a small fix for when launch() is used and a error is\r\nthrown which is not related to the current working directory. Before the\r\nerror was ignored silently, and now it will fatalError.\r\n\r\nSpecial thanks to @spevans because without the recent changes to use exclusively xdgTestHelper, the changes in the tests would have been more complicated."},"comment":{"url":"https://api.github.com/repos/apple/swift-corelibs-foundation/issues/comments/490653482","html_url":"https://github.com/apple/swift-corelibs-foundation/pull/2228#issuecomment-490653482","issue_url":"https://api.github.com/repos/apple/swift-corelibs-foundation/issues/2228","id":490653482,"node_id":"MDEyOklzc3VlQ29tbWVudDQ5MDY1MzQ4Mg==","user":{"login":"drodriguez","id":6338,"node_id":"MDQ6VXNlcjYzMzg=","avatar_url":"https://avatars0.githubusercontent.com/u/6338?v=4","gravatar_id":"","url":"https://api.github.com/users/drodriguez","html_url":"https://github.com/drodriguez","followers_url":"https://api.github.com/users/drodriguez/followers","following_url":"https://api.github.com/users/drodriguez/following{/other_user}","gists_url":"https://api.github.com/users/drodriguez/gists{/gist_id}","starred_url":"https://api.github.com/users/drodriguez/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/drodriguez/subscriptions","organizations_url":"https://api.github.com/users/drodriguez/orgs","repos_url":"https://api.github.com/users/drodriguez/repos","events_url":"https://api.github.com/users/drodriguez/events{/privacy}","received_events_url":"https://api.github.com/users/drodriguez/received_events","type":"User","site_admin":false},"created_at":"2019-05-08T21:14:57Z","updated_at":"2019-05-08T21:14:57Z","author_association":"COLLABORATOR","body":"@swift-ci please test"}}
other: {"actor":{"display_login":"drodriguez"}}