Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Port IsolatedProcess implementation from Python to Rust - Split 1 #5239
From #4397 - Isolated processes currently work for the purposes of testing, but there are lots of abstraction leaks: in particular, a _Snapshots snapshots object is exposed which the python code uses to reverse engineer the location of snapshots.
Instead, process execution should be ported to rust (maybe using duct?) to remove that leak.
Additionally, the outcome of discussion around https://docs.google.com/document/d/1jGq34ds_fhRLPDnmHNV_FHcJiJnbhmk2XEwOf9-w5To/edit#heading=h.ylneg9wnwxcs was that we should adapt the process execution model (which is implicitly also a "remote process execution" model) more closely with the draft of bazel's process execution model.
This is the first split of the bigger branch (master...ity:ity/cloc_rules) that ports the implementation to Rust. This PR can go in independently and will make it easier to work with smaller branches.
This PR will follow with:
left a comment
Exciting progress! I can run
Comments are a big handful of really small things to clean up, and a couple of non-PR-blocking things that probably require a little thought/discussion :)
referenced this pull request
Jan 17, 2018
Jan 20, 2018
1 check passed
added a commit
this pull request
Jan 24, 2018
This broke cloc.py. For example, this line references
Presumably the tests pass because that branch is not reached in practice, but this needs fixing.
Also, I'm not keen on a task reaching in to private state of Context (