{"action":"created","issue":{"url":"https://api.github.com/repos/rust-lang-nursery/rls/issues/524","repository_url":"https://api.github.com/repos/rust-lang-nursery/rls","labels_url":"https://api.github.com/repos/rust-lang-nursery/rls/issues/524/labels{/name}","comments_url":"https://api.github.com/repos/rust-lang-nursery/rls/issues/524/comments","events_url":"https://api.github.com/repos/rust-lang-nursery/rls/issues/524/events","html_url":"https://github.com/rust-lang-nursery/rls/issues/524","id":266198833,"number":524,"title":"Running tests in parallel","user":{"login":"DSpeckhals","id":3310769,"avatar_url":"https://avatars0.githubusercontent.com/u/3310769?v=4","gravatar_id":"","url":"https://api.github.com/users/DSpeckhals","html_url":"https://github.com/DSpeckhals","followers_url":"https://api.github.com/users/DSpeckhals/followers","following_url":"https://api.github.com/users/DSpeckhals/following{/other_user}","gists_url":"https://api.github.com/users/DSpeckhals/gists{/gist_id}","starred_url":"https://api.github.com/users/DSpeckhals/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DSpeckhals/subscriptions","organizations_url":"https://api.github.com/users/DSpeckhals/orgs","repos_url":"https://api.github.com/users/DSpeckhals/repos","events_url":"https://api.github.com/users/DSpeckhals/events{/privacy}","received_events_url":"https://api.github.com/users/DSpeckhals/received_events","type":"User","site_admin":false},"labels":[{"id":433856097,"url":"https://api.github.com/repos/rust-lang-nursery/rls/labels/bug","name":"bug","color":"ee0701","default":true},{"id":452360476,"url":"https://api.github.com/repos/rust-lang-nursery/rls/labels/P-high","name":"P-high","color":"b60205","default":false},{"id":692060364,"url":"https://api.github.com/repos/rust-lang-nursery/rls/labels/testing","name":"testing","color":"e99695","default":false}],"state":"open","locked":false,"assignee":{"login":"Xanewok","id":3093213,"avatar_url":"https://avatars2.githubusercontent.com/u/3093213?v=4","gravatar_id":"","url":"https://api.github.com/users/Xanewok","html_url":"https://github.com/Xanewok","followers_url":"https://api.github.com/users/Xanewok/followers","following_url":"https://api.github.com/users/Xanewok/following{/other_user}","gists_url":"https://api.github.com/users/Xanewok/gists{/gist_id}","starred_url":"https://api.github.com/users/Xanewok/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Xanewok/subscriptions","organizations_url":"https://api.github.com/users/Xanewok/orgs","repos_url":"https://api.github.com/users/Xanewok/repos","events_url":"https://api.github.com/users/Xanewok/events{/privacy}","received_events_url":"https://api.github.com/users/Xanewok/received_events","type":"User","site_admin":false},"assignees":[{"login":"Xanewok","id":3093213,"avatar_url":"https://avatars2.githubusercontent.com/u/3093213?v=4","gravatar_id":"","url":"https://api.github.com/users/Xanewok","html_url":"https://github.com/Xanewok","followers_url":"https://api.github.com/users/Xanewok/followers","following_url":"https://api.github.com/users/Xanewok/following{/other_user}","gists_url":"https://api.github.com/users/Xanewok/gists{/gist_id}","starred_url":"https://api.github.com/users/Xanewok/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Xanewok/subscriptions","organizations_url":"https://api.github.com/users/Xanewok/orgs","repos_url":"https://api.github.com/users/Xanewok/repos","events_url":"https://api.github.com/users/Xanewok/events{/privacy}","received_events_url":"https://api.github.com/users/Xanewok/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/rust-lang-nursery/rls/milestones/7","html_url":"https://github.com/rust-lang-nursery/rls/milestone/7","labels_url":"https://api.github.com/repos/rust-lang-nursery/rls/milestones/7/labels","id":2873245,"number":7,"title":"1.0","description":"","creator":{"login":"nrc","id":762626,"avatar_url":"https://avatars0.githubusercontent.com/u/762626?v=4","gravatar_id":"","url":"https://api.github.com/users/nrc","html_url":"https://github.com/nrc","followers_url":"https://api.github.com/users/nrc/followers","following_url":"https://api.github.com/users/nrc/following{/other_user}","gists_url":"https://api.github.com/users/nrc/gists{/gist_id}","starred_url":"https://api.github.com/users/nrc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nrc/subscriptions","organizations_url":"https://api.github.com/users/nrc/orgs","repos_url":"https://api.github.com/users/nrc/repos","events_url":"https://api.github.com/users/nrc/events{/privacy}","received_events_url":"https://api.github.com/users/nrc/received_events","type":"User","site_admin":false},"open_issues":11,"closed_issues":0,"state":"open","created_at":"2017-10-30T02:40:33Z","updated_at":"2017-10-30T04:38:40Z","due_on":null,"closed_at":null},"comments":3,"created_at":"2017-10-17T16:41:20Z","updated_at":"2017-10-31T21:47:14Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"When running the RLS test suite in the rust-lang/rust submodule for `rls` (`./x.py test src/tools/rls`), tests are run in parallel by default. However, failures almost always occur with recent RLS commits (e.g. 96d7461403fb738040635f466441abb633726d39).\r\n\r\nThe failures happen in either `test_bin_lib_project` or `test_bin_lib_project_no_cfg_test` (it changes across test runs). Sometimes one of the tests lags until it times out, and other times the wrong configuration is set up in the environment for `test_data/bin_lib` (messages sent out of order, or the wrong message).\r\n\r\nI'm unable to reproduce the failures by running `cargo test` specifically for the RLS; it's only when testing the submodule in `rustc`. I _can_ make the tests pass, though, if I run `./x.py test src/tools/rls -j 1` (only one test at a time), which indicates even more that this is a issue with separate threads using the same test data directory."},"comment":{"url":"https://api.github.com/repos/rust-lang-nursery/rls/issues/comments/340917536","html_url":"https://github.com/rust-lang-nursery/rls/issues/524#issuecomment-340917536","issue_url":"https://api.github.com/repos/rust-lang-nursery/rls/issues/524","id":340917536,"user":{"login":"DSpeckhals","id":3310769,"avatar_url":"https://avatars0.githubusercontent.com/u/3310769?v=4","gravatar_id":"","url":"https://api.github.com/users/DSpeckhals","html_url":"https://github.com/DSpeckhals","followers_url":"https://api.github.com/users/DSpeckhals/followers","following_url":"https://api.github.com/users/DSpeckhals/following{/other_user}","gists_url":"https://api.github.com/users/DSpeckhals/gists{/gist_id}","starred_url":"https://api.github.com/users/DSpeckhals/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DSpeckhals/subscriptions","organizations_url":"https://api.github.com/users/DSpeckhals/orgs","repos_url":"https://api.github.com/users/DSpeckhals/repos","events_url":"https://api.github.com/users/DSpeckhals/events{/privacy}","received_events_url":"https://api.github.com/users/DSpeckhals/received_events","type":"User","site_admin":false},"created_at":"2017-10-31T21:47:14Z","updated_at":"2017-10-31T21:47:14Z","author_association":"CONTRIBUTOR","body":"I was just looking at how Cargo tests projects, and was curious as to whether this would be a reasonable idea for the RLS: https://github.com/rust-lang/cargo/blob/d2d7b3008220d37d6960368954c274d826ca9437/tests/workspaces.rs#L15-L34\r\n\r\nThey essentially have a \"project builder\" that lays out whole projects in code, build the directory and file tree, then tests on it. The RLS has the test data in actual files in the repo, which either leads to duplication of test data or tests stomping on one another.\r\n\r\nDoes the Cargo approach seem reasonable for the RLS? If it does, I think we could incrementally move tests to the new format, perhaps starting with the ones that are giving us problems here. Or does this seem like an overkill?"}}
{"actor":{"display_login":"DSpeckhals"}}