anon-iclr-submission/benchname-bug-localization huggingface dataset:
Repository: scratchfoundation/scratch-blocks
Issue: Can't run build.py from the command line

### Expected Behavior

Running `build.py` from the command line should build the various uncompressed and compressed versions of scratch blocks.

It should use the local compiler if possible, and otherwise fall back to the remote compiler.

### Actual Behavior

Before running `npm install` (so no npm package for google-closure-compiler), or after deleting the contents of `node_modules`:
There are two bugs, fixed by #1512 and #1513

After running `npm install`:
```
./build.py
Traceback (most recent call last):
  File "./build.py", line 595, in <module>
    test_proc = subprocess.Popen(test_args, stdin=subprocess.PIPE, stdout=subprocess.PIPE)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 710, in __init__
    errread, errwrite)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 1335, in _execute_child
    raise child_exception
OSError: [Errno 2] No such file or directory
```

Note that it works as part of the `npm prepublish` command.

I will add more information as I have it.

Changed files:
build.py

diff --git a/build.py b/build.py
index c153ae23..c5682fe1 100755
--- a/build.py
+++ b/build.py
@@ -323,7 +323,7 @@ class Gen_compressed(threading.Thread):
       for group in [["google-closure-compiler"], dash_args]:
         args.extend(filter(lambda item: item, group))
 
-      proc = subprocess.Popen(args, stdin=subprocess.PIPE, stdout=subprocess.PIPE)
+      proc = subprocess.Popen(args, stdin=subprocess.PIPE, stdout=subprocess.PIPE, shell=True)
       (stdout, stderr) = proc.communicate()
 
       # Build the JSON response.
@@ -566,7 +566,7 @@ if __name__ == "__main__":
 
     # Sanity check the local compiler
     test_args = [closure_compiler, os.path.join("build", "test_input.js")]
-    test_proc = subprocess.Popen(test_args, stdin=subprocess.PIPE, stdout=subprocess.PIPE)
+    test_proc = subprocess.Popen(test_args, stdin=subprocess.PIPE, stdout=subprocess.PIPE, shell=True)
     (stdout, _) = test_proc.communicate()
     assert stdout == read(os.path.join("build", "test_expect.js"))