purescript-contrib / pulp Goto Github PK
View Code? Open in Web Editor NEWA build tool for PureScript projects
License: GNU Lesser General Public License v3.0
A build tool for PureScript projects
License: GNU Lesser General Public License v3.0
The following line: https://github.com/bodil/pulp/blob/master/server.js#L26 generates require('.\Main.purs').main();
which is later attempted to be resolved as .Main.purs
.
Just replacing path.sep
with /
seems to be working, but I don't know if it's correct solution (especially when path.sep
is used elsewhere in code), so I am just filing an issue.
psc "bower_components/purescript-/src/__/.purs" "src//*.purs" --ffi "src//.js" --ffi "bower_components/purescript-/src/*/.js"
~2 second
pulp build
~10 seconds
I noticed the difference when I added bunch of dependencies
"purescript-functions": "~0.1.0",
"purescript-control": "~0.3.0",
"purescript-foldable-traversable": "~0.4.0",
"purescript-exceptions": "~0.3.0",
"purescript-transformers": "~0.6.1"
Binaries generated for Node on windows have the cmd extension, but pulp only searches for the binaries with no extension. A solution could be to use the programmatic API instead of the binary.
The browserify command works for me, using either the defaults or the --to
option. However, if I include the -O
or --optimise
option, I get the following error:
* Browserifying project in /home/dan/Code/purescript-puzzler
* Compiling...
psc: Main: openBinaryFile: does not exist (No such file or directory)
* ERROR: Subcommand terminated with error code 1
I am using pulp 2.0.0.
If you tack on some import ...
commands at the end of your .psci
file, the next time you run pulp psci
it will redo your :m
commands and tack them on at the end. This results in imports being first, breaking your session.
$ pulp init
blah\npm\node_modules\pulp\validate.js:7
ver = ver.trim();
^
TypeError: Cannot read property 'trim' of undefined
at blah\npm\node_modules\pulp\validate.js:7:14
at ChildProcess.<anonymous> (blah\npm\node_modules
\pulp\exec.js:31:7)
at ChildProcess.emit (events.js:107:17)
at Process.ChildProcess._handle.onexit (child_process.js:1072:12)
at child_process.js:1144:20
at process._tickCallback (node.js:355:11)
at Function.Module.runMain (module.js:503:11)
at startup (node.js:129:16)
at node.js:814:3
$ psc --version
0.7.0.0
$ pulp --version
4.0.2
I started using pulp and browserify recently and have noticed that browserify is kind of slow. At least, I'm pretty sure it could be faster at what it does by doing incremental builds.
I saw online that webpack did incremental builds and does the same thing browserify does.
Thoughts on using webpack? I'm new to frontend stuff, so I'm not sure if there's a hidden advantage to browserify.
Thanks
If psc
is killed (for example with pkill -9 psc
) while pulp build
runs, pulp happily reports "Build successful".
I didn't check what happens in case of OOM, but you might want to make sure that it fails pulp
. It would be very confusing and hard to debug if you get "Build successful" when the compiler runs out of memory.
Regarding issue purescript/purescript#749, in your comment where you mention:
basically, npm install purescript needs to be possible
I am wondering if you might entertain a PR for pulp that pulls the binary releases of purescript and installs them locally. This could potentially provide an alternative for npm install purescript
.
I whipped up psc-release (albeit rough at the moment) that will install the psc binaries to node_modules/.bin
for a project. Do you think this could be useful to leverage in pupl's install command?
Perhaps pulp could detect if psc was installed globally, and if not, use the psc-release library to fetch the bins. Or it could maintain a local version of psc even if there is a global one installed.
I admit I've just started thinking about this, so perhaps psc-release is not a good fit or worth taking further, but I thought I would open a dialog.
Cheers.
Earlier I was using pulp build --to output.js
and it was giving me an output.js file. Now it doesn't seem to be... so I'm confused. Here is a shell session demonstrating it:
cody@cody-G46VW:~$ cd /tmp
cody@cody-G46VW:/tmp$ mkdir hello-sailor
cody@cody-G46VW:/tmp$ cd hello-sailor/
cody@cody-G46VW:/tmp/hello-sailor$ pulp init
* Generating project skeleton in /tmp/hello-sailor
cody@cody-G46VW:/tmp/hello-sailor$ pulp run
* Building project in /tmp/hello-sailor
* Build successful.
Hello sailor!
cody@cody-G46VW:/tmp/hello-sailor$ pulp build
* Building project in /tmp/hello-sailor
* Build successful.
cody@cody-G46VW:/tmp/hello-sailor$ pulp build --to output.js
* Building project in /tmp/hello-sailor
* Build successful.
cody@cody-G46VW:/tmp/hello-sailor$ ls
bower.json output src test
cody@cody-G46VW:/tmp/hello-sailor$ # ????
cody@cody-G46VW:/tmp/hello-sailor$ pulp build -t output.js
* Building project in /tmp/hello-sailor
* Build successful.
cody@cody-G46VW:/tmp/hello-sailor$ ls
bower.json output src test
Maybe this strace will be helpful:
cody@cody-G46VW:/tmp/hello-sailor$ strace pulp build -t output.js
execve("/home/cody/.nvm/versions/node/v0.12.5/bin/pulp", ["pulp", "build", "-t", "output.js"], [/* 59 vars */]) = 0
brk(0) = 0x1495000
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f80418b8000
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=189451, ...}) = 0
mmap(NULL, 189451, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f8041889000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0`\v\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1869392, ...}) = 0
mmap(NULL, 3972864, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f80412cd000
mprotect(0x7f804148d000, 2097152, PROT_NONE) = 0
mmap(0x7f804168d000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1c0000) = 0x7f804168d000
mmap(0x7f8041693000, 16128, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f8041693000
close(3) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f8041888000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f8041887000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f8041886000
arch_prctl(ARCH_SET_FS, 0x7f8041887700) = 0
mprotect(0x7f804168d000, 16384, PROT_READ) = 0
mprotect(0x606000, 4096, PROT_READ) = 0
mprotect(0x7f80418ba000, 4096, PROT_READ) = 0
munmap(0x7f8041889000, 189451) = 0
brk(0) = 0x1495000
brk(0x14b6000) = 0x14b6000
open("/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=2919792, ...}) = 0
mmap(NULL, 2919792, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f8041004000
close(3) = 0
execve("/home/cody/.nvm/versions/node/v0.12.5/bin/node", ["node", "/home/cody/.nvm/versions/node/v0"..., "build", "-t", "output.js"], [/* 59 vars */]) = 0
brk(0) = 0x197c000
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f527cde1000
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=189451, ...}) = 0
mmap(NULL, 189451, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f527cdb2000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/librt.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220!\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=31680, ...}) = 0
mmap(NULL, 2128864, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f527c9b8000
mprotect(0x7f527c9bf000, 2093056, PROT_NONE) = 0
mmap(0x7f527cbbe000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x7f527cbbe000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0`\16\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=14592, ...}) = 0
mmap(NULL, 2109712, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f527c7b4000
mprotect(0x7f527c7b7000, 2093056, PROT_NONE) = 0
mmap(0x7f527c9b6000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f527c9b6000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/usr/lib/x86_64-linux-gnu/libstdc++.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240\271\5\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=1024504, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f527cdb1000
mmap(NULL, 3204768, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f527c4a5000
mprotect(0x7f527c595000, 2097152, PROT_NONE) = 0
mmap(0x7f527c795000, 40960, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xf0000) = 0x7f527c795000
mmap(0x7f527c79f000, 83616, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f527c79f000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240U\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=1084840, ...}) = 0
mmap(NULL, 3174760, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f527c19d000
mprotect(0x7f527c2a4000, 2093056, PROT_NONE) = 0
mmap(0x7f527c4a3000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x106000) = 0x7f527c4a3000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260*\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=89616, ...}) = 0
mmap(NULL, 2185440, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f527bf87000
mprotect(0x7f527bf9d000, 2093056, PROT_NONE) = 0
mmap(0x7f527c19c000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x15000) = 0x7f527c19c000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\340`\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=142080, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f527cdb0000
mmap(NULL, 2217232, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f527bd69000
mprotect(0x7f527bd81000, 2097152, PROT_NONE) = 0
mmap(0x7f527bf81000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x18000) = 0x7f527bf81000
mmap(0x7f527bf83000, 13584, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f527bf83000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0`\v\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1869392, ...}) = 0
mmap(NULL, 3972864, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f527b99f000
mprotect(0x7f527bb5f000, 2097152, PROT_NONE) = 0
mmap(0x7f527bd5f000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1c0000) = 0x7f527bd5f000
mmap(0x7f527bd65000, 16128, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f527bd65000
close(3) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f527cdaf000
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f527cdad000
arch_prctl(ARCH_SET_FS, 0x7f527cdad740) = 0
mprotect(0x7f527bd5f000, 16384, PROT_READ) = 0
mprotect(0x7f527bf81000, 4096, PROT_READ) = 0
mprotect(0x7f527c4a3000, 4096, PROT_READ) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f527cdac000
mprotect(0x7f527c795000, 32768, PROT_READ) = 0
mprotect(0x7f527c9b6000, 4096, PROT_READ) = 0
mprotect(0x7f527cbbe000, 4096, PROT_READ) = 0
mprotect(0x7f527cde3000, 4096, PROT_READ) = 0
munmap(0x7f527cdb2000, 189451) = 0
set_tid_address(0x7f527cdada10) = 27894
set_robust_list(0x7f527cdada20, 24) = 0
rt_sigaction(SIGRTMIN, {0x7f527bd6ebb0, [], SA_RESTORER|SA_SIGINFO, 0x7f527bd79d10}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {0x7f527bd6ec40, [], SA_RESTORER|SA_RESTART|SA_SIGINFO, 0x7f527bd79d10}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=8720000, rlim_max=RLIM64_INFINITY}) = 0
rt_sigaction(SIGUSR1, {0xc93d20, [], SA_RESTORER, 0x7f527bd79d10}, NULL, 8) = 0
brk(0) = 0x197c000
brk(0x199d000) = 0x199d000
pipe2([3, 4], O_CLOEXEC) = 0
write(4, "*", 1) = 1
futex(0x15ed5b0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
clock_getres(CLOCK_MONOTONIC_COARSE, {0, 4000000}) = 0
epoll_create1(EPOLL_CLOEXEC) = 5
pipe2([6, 7], O_NONBLOCK|O_CLOEXEC) = 0
eventfd2(0, O_NONBLOCK|O_CLOEXEC) = 8
ioctl(0, FIOCLEX) = 0
ioctl(1, FIOCLEX) = 0
ioctl(2, FIOCLEX) = 0
ioctl(3, FIOCLEX) = 0
ioctl(4, FIOCLEX) = 0
ioctl(5, FIOCLEX) = 0
ioctl(6, FIOCLEX) = 0
ioctl(7, FIOCLEX) = 0
ioctl(8, FIOCLEX) = 0
ioctl(9, FIOCLEX) = -1 EBADF (Bad file descriptor)
ioctl(10, FIOCLEX) = -1 EBADF (Bad file descriptor)
ioctl(11, FIOCLEX) = -1 EBADF (Bad file descriptor)
ioctl(12, FIOCLEX) = -1 EBADF (Bad file descriptor)
ioctl(13, FIOCLEX) = -1 EBADF (Bad file descriptor)
ioctl(14, FIOCLEX) = -1 EBADF (Bad file descriptor)
ioctl(15, FIOCLEX) = -1 EBADF (Bad file descriptor)
ioctl(16, FIOCLEX) = -1 EBADF (Bad file descriptor)
getrlimit(RLIMIT_NOFILE, {rlim_cur=1024, rlim_max=64*1024}) = 0
setrlimit(RLIMIT_NOFILE, {rlim_cur=64*1024, rlim_max=64*1024}) = 0
rt_sigaction(SIGPIPE, {SIG_IGN, ~[RTMIN RT_1], SA_RESTORER, 0x7f527bd79d10}, NULL, 8) = 0
rt_sigaction(SIGINT, {0xc940b0, ~[RTMIN RT_1], SA_RESTORER|SA_RESETHAND, 0x7f527bd79d10}, NULL, 8) = 0
rt_sigaction(SIGTERM, {0xc940b0, ~[RTMIN RT_1], SA_RESTORER|SA_RESETHAND, 0x7f527bd79d10}, NULL, 8) = 0
rt_sigaction(SIGUSR1, {0xc94070, ~[RTMIN RT_1], SA_RESTORER, 0x7f527bd79d10}, NULL, 8) = 0
open("/dev/urandom", O_RDONLY|O_NOCTTY|O_NONBLOCK) = 9
fstat(9, {st_mode=S_IFCHR|0666, st_rdev=makedev(1, 9), ...}) = 0
poll([{fd=9, events=POLLIN}], 1, 10) = 1 ([{fd=9, revents=POLLIN}])
read(9, "3\252>5\356\312\300\20\211\253\2255\350\217\302nb\233\252a\325\241q\31}A\373\4k\34?\2", 32) = 32
close(9) = 0
getuid() = 1000
mmap(0x197815931000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x197815931000
mprotect(0x197815931000, 4096, PROT_READ|PROT_EXEC) = 0
brk(0x19c7000) = 0x19c7000
mmap(0x2505b8e91000, 67108864, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x2505b8e91000
munmap(0x2505b8e91000, 18280448) = 0
munmap(0x2505bc000000, 15273984) = 0
mmap(0x2505ba000000, 1048576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x2505ba000000
mmap(0x1d806e5c1000, 536870912, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x1d806e5c1000
mmap(0x239f48a94000, 393216, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x239f48a94000
mmap(0x331dba5db000, 2097152, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x331dba5db000
mmap(0x331dba5db000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x331dba5db000
mmap(0x239f48ac0000, 131072, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x239f48ac0000
mmap(0x1d806e600000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x1d806e600000
mprotect(0x1d806e605000, 4096, PROT_NONE) = 0
mmap(0x1d806e606000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x1d806e606000
mprotect(0x1d806e6ff000, 4096, PROT_NONE) = 0
mmap(0x1d806e700000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x1d806e700000
mprotect(0x1d806e705000, 4096, PROT_NONE) = 0
mmap(0x1d806e706000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x1d806e706000
mprotect(0x1d806e7ff000, 4096, PROT_NONE) = 0
mmap(0x1d806e800000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x1d806e800000
mprotect(0x1d806e805000, 4096, PROT_NONE) = 0
mmap(0x1d806e806000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x1d806e806000
mprotect(0x1d806e8ff000, 4096, PROT_NONE) = 0
mmap(0x394dab7c9000, 1200128, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x394dab7c9000
munmap(0x394dab7c9000, 225280) = 0
munmap(0x394dab825000, 823296) = 0
mmap(0x394dab800000, 151552, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x394dab800000
mmap(0x2470d7f71000, 1265664, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x2470d7f71000
munmap(0x2470d7f71000, 585728) = 0
munmap(0x2470d8035000, 462848) = 0
mmap(0x2470d8000000, 217088, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x2470d8000000
mmap(0x1e100f3e3000, 1986560, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x1e100f3e3000
munmap(0x1e100f3e3000, 118784) = 0
munmap(0x1e100f4e5000, 929792) = 0
mmap(0x1e100f400000, 937984, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x1e100f400000
mmap(0x1d806e900000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x1d806e900000
mprotect(0x1d806e905000, 4096, PROT_NONE) = 0
mmap(0x1d806e906000, 1019904, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x1d806e906000
mprotect(0x1d806e9ff000, 4096, PROT_NONE) = 0
brk(0x19ea000) = 0x19ea000
brk(0x19e4000) = 0x19e4000
mmap(0x13a4567bb000, 1200128, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x13a4567bb000
munmap(0x13a4567bb000, 282624) = 0
munmap(0x13a456825000, 765952) = 0
mmap(0x13a456800000, 151552, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x13a456800000
open("/sys/devices/system/cpu/online", O_RDONLY|O_CLOEXEC) = 9
read(9, "0-3\n", 8192) = 4
close(9) = 0
mmap(NULL, 8720384, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7f527b14e000
mprotect(0x7f527b14e000, 4096, PROT_NONE) = 0
clone(child_stack=0x7f527b99dfb0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7f527b99e9d0, tls=0x7f527b99e700, child_tidptr=0x7f527b99e9d0) = 27895
futex(0x19c3588, FUTEX_WAKE_PRIVATE, 1) = 1
mmap(NULL, 69632, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7f527cdd0000
mprotect(0x7f527cdd0000, 4096, PROT_NONE) = 0
clone(child_stack=0x7f527cddffb0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7f527cde09d0, tls=0x7f527cde0700, child_tidptr=0x7f527cde09d0) = 27896
futex(0x19c3768, FUTEX_WAKE_PRIVATE, 1) = 1
mmap(NULL, 69632, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7f527cdbf000
mprotect(0x7f527cdbf000, 4096, PROT_NONE) = 0
clone(child_stack=0x7f527cdcefb0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7f527cdcf9d0, tls=0x7f527cdcf700, child_tidptr=0x7f527cdcf9d0) = 27897
futex(0x19c37a8, FUTEX_WAKE_PRIVATE, 1) = 1
mmap(NULL, 69632, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7f527cd9b000
mprotect(0x7f527cd9b000, 4096, PROT_NONE) = 0
clone(child_stack=0x7f527cdaafb0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7f527cdab9d0, tls=0x7f527cdab700, child_tidptr=0x7f527cdab9d0) = 27898
mmap(0x1cdec5cb000, 1134592, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x1cdec5cb000
munmap(0x1cdec5cb000, 217088) = 0
munmap(0x1cdec615000, 831488) = 0
mmap(0x1cdec600000, 86016, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x1cdec600000
brk(0x1a09000) = 0x1a09000
mmap(NULL, 135168, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f527cd7a000
mmap(NULL, 266240, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f527cd39000
munmap(0x7f527cd39000, 266240) = 0
munmap(0x7f527cd7a000, 135168) = 0
brk(0x1a2d000) = 0x1a2d000
mmap(NULL, 270336, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f527cd59000
mmap(NULL, 536576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f527ccd6000
munmap(0x7f527ccd6000, 536576) = 0
munmap(0x7f527cd59000, 270336) = 0
brk(0x1a6e000) = 0x1a6e000
brk(0x1af3000) = 0x1af3000
brk(0x19ef000) = 0x19ef000
brk(0x1a11000) = 0x1a11000
brk(0x1a70000) = 0x1a70000
brk(0x1afd000) = 0x1afd000
brk(0x19ef000) = 0x19ef000
brk(0x1a2e000) = 0x1a2e000
brk(0x1a6f000) = 0x1a6f000
brk(0x1af3000) = 0x1af3000
mmap(NULL, 1052672, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f527cc9a000
munmap(0x7f527cc9a000, 1052672) = 0
readlink("/proc/self/exe", "/home/cody/.nvm/versions/node/v0"..., 8191) = 46
mmap(0x2505bb000000, 1048576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x2505bb000000
mmap(0x331dba5dc000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x331dba5dc000
mmap(0x331dba5dd000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x331dba5dd000
mmap(0x331dba5df000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x331dba5df000
mmap(0x35f02148d000, 2097152, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x35f02148d000
munmap(0x35f02148d000, 471040) = 0
munmap(0x35f021600000, 577536) = 0
mmap(0x35f021500000, 1048576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x35f021500000
getcwd("/tmp/hello-sailor", 4096) = 18
brk(0x1b33000) = 0x1b33000
mmap(0x9128531e000, 2097152, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x9128531e000
munmap(0x9128531e000, 925696) = 0
munmap(0x91285500000, 122880) = 0
mmap(0x91285400000, 1048576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x91285400000
brk(0x1bb4000) = 0x1bb4000
brk(0x1cb5000) = 0x1cb5000
mmap(0x2505ba100000, 1048576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x2505ba100000
mmap(0x2505bb100000, 1048576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x2505bb100000
stat("/home/cody/.nvm/versions/node/v0.12.5/bin/pulp", {st_mode=S_IFREG|0775, st_size=4701, ...}) = 0
lstat("/home", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat("/home/cody", {st_mode=S_IFDIR|0700, st_size=20480, ...}) = 0
lstat("/home/cody/.nvm", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/bin", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/bin/pulp", {st_mode=S_IFLNK|0777, st_size=33, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/bin/pulp", {st_mode=S_IFREG|0775, st_size=4701, ...}) = 0
readlink("/home/cody/.nvm/versions/node/v0.12.5/bin/pulp", "../lib/node_modules/pulp/index.j"..., 4096) = 33
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/index.js", {st_mode=S_IFREG|0775, st_size=4701, ...}) = 0
mmap(0x1ee16ed3c000, 2097152, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x1ee16ed3c000
munmap(0x1ee16ed3c000, 802816) = 0
munmap(0x1ee16ef00000, 245760) = 0
mmap(0x1ee16ee00000, 1048576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x1ee16ee00000
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/index.js", O_RDONLY) = 9
ioctl(9, FIOCLEX) = 0
fstat(9, {st_mode=S_IFREG|0775, st_size=4701, ...}) = 0
read(9, "#!/usr/bin/env node\n\nvar args = "..., 4701) = 4701
close(9) = 0
getcwd("/tmp/hello-sailor", 4096) = 18
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/args", 0x7ffcd87adee0) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/args.js", {st_mode=S_IFREG|0664, st_size=6242, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/args.js", {st_mode=S_IFREG|0664, st_size=6242, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/args.js", O_RDONLY) = 9
ioctl(9, FIOCLEX) = 0
fstat(9, {st_mode=S_IFREG|0664, st_size=6242, ...}) = 0
read(9, "var merge = require(\"merge\");\n\nf"..., 6242) = 6242
close(9) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/merge", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/merge.js", 0x7ffcd87adb80) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/merge.json", 0x7ffcd87adb80) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/merge.node", 0x7ffcd87adb80) = -1 ENOENT (No such file or directory)
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/merge/package.json", O_RDONLY) = 9
ioctl(9, FIOCLEX) = 0
fstat(9, {st_mode=S_IFREG|0664, st_size=1369, ...}) = 0
read(9, "{\n \"name\": \"merge\",\n \"version\""..., 1369) = 1369
close(9) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/merge/merge.js", {st_mode=S_IFREG|0664, st_size=2872, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/merge", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/merge/merge.js", {st_mode=S_IFREG|0664, st_size=2872, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/merge/merge.js", O_RDONLY) = 9
ioctl(9, FIOCLEX) = 0
fstat(9, {st_mode=S_IFREG|0664, st_size=2872, ...}) = 0
read(9, "/*!\r\n * @name JavaScript/NodeJS "..., 2872) = 2872
close(9) = 0
getcwd("/tmp/hello-sailor", 4096) = 18
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/log", 0x7ffcd87adee0) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/log.js", {st_mode=S_IFREG|0664, st_size=454, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/log.js", {st_mode=S_IFREG|0664, st_size=454, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/log.js", O_RDONLY) = 9
ioctl(9, FIOCLEX) = 0
fstat(9, {st_mode=S_IFREG|0664, st_size=454, ...}) = 0
read(9, "var c = require(\"ansi\")(process."..., 454) = 454
close(9) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/ansi", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/ansi.js", 0x7ffcd87adb80) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/ansi.json", 0x7ffcd87adb80) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/ansi.node", 0x7ffcd87adb80) = -1 ENOENT (No such file or directory)
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/ansi/package.json", O_RDONLY) = 9
ioctl(9, FIOCLEX) = 0
fstat(9, {st_mode=S_IFREG|0664, st_size=1298, ...}) = 0
read(9, "{\n \"name\": \"ansi\",\n \"descripti"..., 1298) = 1298
close(9) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/ansi/lib/ansi.js", {st_mode=S_IFREG|0664, st_size=7964, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/ansi", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/ansi/lib", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/ansi/lib/ansi.js", {st_mode=S_IFREG|0664, st_size=7964, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/ansi/lib/ansi.js", O_RDONLY) = 9
ioctl(9, FIOCLEX) = 0
fstat(9, {st_mode=S_IFREG|0664, st_size=7964, ...}) = 0
read(9, "\n/**\n * References:\n *\n * - ht"..., 7964) = 7964
close(9) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/ansi/lib/newlines", 0x7ffcd87ad8e0) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/ansi/lib/newlines.js", {st_mode=S_IFREG|0664, st_size=1528, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/ansi/lib/newlines.js", {st_mode=S_IFREG|0664, st_size=1528, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/ansi/lib/newlines.js", O_RDONLY) = 9
ioctl(9, FIOCLEX) = 0
fstat(9, {st_mode=S_IFREG|0664, st_size=1528, ...}) = 0
read(9, "\n/**\n * Accepts any node Stream "..., 1528) = 1528
close(9) = 0
ioctl(2, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, {B38400 opost isig icanon -echo ...}) = 0
open("/etc/resolv.conf", O_RDONLY) = 9
fstat(9, {st_mode=S_IFREG|0644, st_size=184, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f527cdbe000
read(9, "# Dynamic resolv.conf(5) file fo"..., 4096) = 184
read(9, "", 4096) = 0
close(9) = 0
munmap(0x7f527cdbe000, 4096) = 0
open("/etc/nsswitch.conf", O_RDONLY) = 9
fstat(9, {st_mode=S_IFREG|0644, st_size=513, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f527cdbe000
read(9, "# /etc/nsswitch.conf\n#\n# Example"..., 4096) = 513
read(9, "", 4096) = 0
close(9) = 0
munmap(0x7f527cdbe000, 4096) = 0
open("/dev/urandom", O_RDONLY) = 9
fstat(9, {st_mode=S_IFCHR|0666, st_rdev=makedev(1, 9), ...}) = 0
ioctl(9, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, 0x7ffcd87ace60) = -1 EINVAL (Invalid argument)
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f527cdbe000
read(9, "'\2347\33Y\373\222?EB\241\214S\350\246\206\247\260\342\255f\204\257WY\326\360\344\333\331P\f"..., 4096) = 4096
close(9) = 0
munmap(0x7f527cdbe000, 4096) = 0
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
ioctl(2, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, {B38400 opost isig icanon -echo ...}) = 0
open("/dev/null", O_RDONLY|O_CLOEXEC) = 9
open("/dev/tty", O_RDWR|O_CLOEXEC) = 10
dup3(10, 2, O_CLOEXEC) = 2
ioctl(10, FIONBIO, [1]) = 0
ioctl(10, TIOCGWINSZ, {ws_row=0, ws_col=0, ws_xpixel=0, ws_ypixel=0}) = 0
getcwd("/tmp/hello-sailor", 4096) = 18
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/project", 0x7ffcd87adee0) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/project.js", {st_mode=S_IFREG|0664, st_size=1036, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/project.js", {st_mode=S_IFREG|0664, st_size=1036, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/project.js", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=1036, ...}) = 0
read(11, "var fs = require(\"fs\");\nvar p = "..., 1036) = 1036
close(11) = 0
getcwd("/tmp/hello-sailor", 4096) = 18
mmap(NULL, 8720384, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7f527a8fd000
mprotect(0x7f527a8fd000, 4096, PROT_NONE) = 0
clone(child_stack=0x7f527b14cfb0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7f527b14d9d0, tls=0x7f527b14d700, child_tidptr=0x7f527b14d9d0) = 27899
mmap(NULL, 8720384, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7f527a0ac000
mprotect(0x7f527a0ac000, 4096, PROT_NONE) = 0
clone(child_stack=0x7f527a8fbfb0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7f527a8fc9d0, tls=0x7f527a8fc700, child_tidptr=0x7f527a8fc9d0) = 27900
mmap(NULL, 8720384, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7f527985b000
mprotect(0x7f527985b000, 4096, PROT_NONE) = 0
clone(child_stack=0x7f527a0aafb0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7f527a0ab9d0, tls=0x7f527a0ab700, child_tidptr=0x7f527a0ab9d0) = 27901
mmap(NULL, 8720384, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS|MAP_STACK, -1, 0) = 0x7f527900a000
mprotect(0x7f527900a000, 4096, PROT_NONE) = 0
clone(child_stack=0x7f5279859fb0, flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID, parent_tidptr=0x7f527985a9d0, tls=0x7f527985a700, child_tidptr=0x7f527985a9d0) = 27902
futex(0x15ed120, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x15ed144, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x15ed140, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1
futex(0x15ed180, FUTEX_WAKE_PRIVATE, 1) = 1
epoll_ctl(5, EPOLL_CTL_ADD, 6, {EPOLLIN, {u32=6, u64=6}}) = 0
epoll_ctl(5, EPOLL_CTL_ADD, 8, {EPOLLIN, {u32=8, u64=8}}) = 0
epoll_wait(5, {{EPOLLIN, {u32=8, u64=8}}}, 1024, -1) = 1
read(8, "\1\0\0\0\0\0\0\0", 1024) = 8
futex(0x15ed144, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x15ed140, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1
futex(0x15ed180, FUTEX_WAKE_PRIVATE, 1) = 1
epoll_wait(5, {{EPOLLIN, {u32=8, u64=8}}}, 1024, -1) = 1
read(8, "\1\0\0\0\0\0\0\0", 1024) = 8
futex(0x15ed144, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x15ed140, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1
futex(0x15ed180, FUTEX_WAKE_PRIVATE, 1) = 1
epoll_wait(5, {{EPOLLIN, {u32=8, u64=8}}}, 1024, -1) = 1
read(8, "\1\0\0\0\0\0\0\0", 1024) = 8
futex(0x15ed144, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x15ed140, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1
futex(0x15ed180, FUTEX_WAKE_PRIVATE, 1) = 1
epoll_wait(5, {{EPOLLIN, {u32=8, u64=8}}}, 1024, -1) = 1
read(8, "\1\0\0\0\0\0\0\0", 1024) = 8
futex(0x15ed144, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x15ed140, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1
futex(0x15ed180, FUTEX_WAKE_PRIVATE, 1) = 1
epoll_wait(5, {{EPOLLIN, {u32=8, u64=8}}}, 1024, -1) = 1
read(8, "\1\0\0\0\0\0\0\0", 1024) = 8
chdir("/tmp/hello-sailor") = 0
getcwd("/tmp/hello-sailor", 4096) = 18
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/build", 0x7ffcd87aa9c0) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/build.js", {st_mode=S_IFREG|0664, st_size=912, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/build.js", {st_mode=S_IFREG|0664, st_size=912, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/build.js", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=912, ...}) = 0
read(11, "var exec = require(\"./exec\");\nva"..., 912) = 912
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/exec", 0x7ffcd87aa6d0) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/exec.js", {st_mode=S_IFREG|0664, st_size=1592, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/exec.js", {st_mode=S_IFREG|0664, st_size=1592, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/exec.js", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=1592, ...}) = 0
read(11, "var files = require(\"./files\");\n"..., 1592) = 1592
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/files", 0x7ffcd87aa3d0) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/files.js", {st_mode=S_IFREG|0664, st_size=708, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/files.js", {st_mode=S_IFREG|0664, st_size=708, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/files.js", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=708, ...}) = 0
read(11, "var glob = require(\"glob\");\n\nfun"..., 708) = 708
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob.js", 0x7ffcd87aa070) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob.json", 0x7ffcd87aa070) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob.node", 0x7ffcd87aa070) = -1 ENOENT (No such file or directory)
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/package.json", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=1784, ...}) = 0
read(11, "{\n \"author\": {\n \"name\": \"Isa"..., 1784) = 1784
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/glob.js", {st_mode=S_IFREG|0664, st_size=18343, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/glob.js", {st_mode=S_IFREG|0664, st_size=18343, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/glob.js", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=18343, ...}) = 0
read(11, "// Approach:\n//\n// 1. Get the mi"..., 18343) = 18343
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch.js", 0x7ffcd87a9d50) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch.json", 0x7ffcd87a9d50) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch.node", 0x7ffcd87a9d50) = -1 ENOENT (No such file or directory)
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/package.json", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=1578, ...}) = 0
read(11, "{\n \"author\": {\n \"name\": \"Isa"..., 1578) = 1578
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/minimatch.js", {st_mode=S_IFREG|0664, st_size=23562, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/minimatch.js", {st_mode=S_IFREG|0664, st_size=23562, ...}) = 0
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/minimatch.js", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
fstat(11, {st_mode=S_IFREG|0664, st_size=23562, ...}) = 0
read(11, "module.exports = minimatch\nminim"..., 23562) = 23562
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion.js", 0x7ffcd87a9a20) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion.json", 0x7ffcd87a9a20) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion.node", 0x7ffcd87a9a20) = -1 ENOENT (No such file or directory)
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/package.json", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=1962, ...}) = 0
read(11, "{\n \"name\": \"brace-expansion\",\n "..., 1962) = 1962
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/index.js", {st_mode=S_IFREG|0664, st_size=4335, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/index.js", {st_mode=S_IFREG|0664, st_size=4335, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/index.js", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=4335, ...}) = 0
read(11, "var concatMap = require('concat-"..., 4335) = 4335
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map.js", 0x7ffcd87a9720) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map.json", 0x7ffcd87a9720) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map.node", 0x7ffcd87a9720) = -1 ENOENT (No such file or directory)
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/package.json", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=1677, ...}) = 0
read(11, "{\n \"name\": \"concat-map\",\n \"des"..., 1677) = 1677
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/index.js", {st_mode=S_IFREG|0664, st_size=345, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/index.js", {st_mode=S_IFREG|0664, st_size=345, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/concat-map/index.js", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=345, ...}) = 0
read(11, "module.exports = function (xs, f"..., 345) = 345
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match.js", 0x7ffcd87a9720) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match.json", 0x7ffcd87a9720) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match.node", 0x7ffcd87a9720) = -1 ENOENT (No such file or directory)
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/package.json", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=1859, ...}) = 0
read(11, "{\n \"name\": \"balanced-match\",\n "..., 1859) = 1859
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/index.js", {st_mode=S_IFREG|0664, st_size=902, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/index.js", {st_mode=S_IFREG|0664, st_size=902, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/minimatch/node_modules/brace-expansion/node_modules/balanced-match/index.js", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=902, ...}) = 0
read(11, "module.exports = balanced;\nfunct"..., 902) = 902
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inherits", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inherits.js", 0x7ffcd87a9d50) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inherits.json", 0x7ffcd87a9d50) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inherits.node", 0x7ffcd87a9d50) = -1 ENOENT (No such file or directory)
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inherits/package.json", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=1235, ...}) = 0
read(11, "{\n \"name\": \"inherits\",\n \"descr"..., 1235) = 1235
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inherits/inherits.js", {st_mode=S_IFREG|0664, st_size=42, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inherits", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inherits/inherits.js", {st_mode=S_IFREG|0664, st_size=42, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inherits/inherits.js", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=42, ...}) = 0
read(11, "module.exports = require('util')"..., 42) = 42
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/sync.js", {st_mode=S_IFREG|0664, st_size=11365, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/sync.js", {st_mode=S_IFREG|0664, st_size=11365, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/sync.js", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=11365, ...}) = 0
read(11, "module.exports = globSync\nglobSy"..., 11365) = 11365
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/glob.js", {st_mode=S_IFREG|0664, st_size=18343, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/common.js", {st_mode=S_IFREG|0664, st_size=5901, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/common.js", {st_mode=S_IFREG|0664, st_size=5901, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/common.js", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=5901, ...}) = 0
read(11, "exports.alphasort = alphasort\nex"..., 5901) = 5901
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight.js", 0x7ffcd87a9d50) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight.json", 0x7ffcd87a9d50) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight.node", 0x7ffcd87a9d50) = -1 ENOENT (No such file or directory)
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight/package.json", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=1493, ...}) = 0
read(11, "{\n \"name\": \"inflight\",\n \"versi"..., 1493) = 1493
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight/inflight.js", {st_mode=S_IFREG|0664, st_size=897, ...}) = 0
mmap(0x331dba5e3000, 32768, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x331dba5e3000
mmap(0x3314ed622000, 2097152, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0x3314ed622000
munmap(0x3314ed622000, 909312) = 0
munmap(0x3314ed800000, 139264) = 0
mmap(0x3314ed700000, 1048576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x3314ed700000
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight/inflight.js", {st_mode=S_IFREG|0664, st_size=897, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight/inflight.js", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=897, ...}) = 0
read(11, "var wrappy = require('wrappy')\nv"..., 897) = 897
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight/node_modules/wrappy", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight/node_modules/wrappy.js", 0x7ffcd87a9a50) = -1 ENOENT (No such file or directory)
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight/node_modules/wrappy.json", 0x7ffcd87a9a50) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight/node_modules/wrappy.node", 0x7ffcd87a9a50) = -1 ENOENT (No such file or directory)
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x1981390, FUTEX_WAIT_PRIVATE, 2, NULL) = -1 EAGAIN (Resource temporarily unavailable)
futex(0x1981390, FUTEX_WAKE_PRIVATE, 1) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight/node_modules/wrappy/package.json", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=1256, ...}) = 0
read(11, "{\n \"name\": \"wrappy\",\n \"version"..., 1256) = 1256
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight/node_modules/wrappy/wrappy.js", {st_mode=S_IFREG|0664, st_size=905, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight/node_modules", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight/node_modules/wrappy", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight/node_modules/wrappy/wrappy.js", {st_mode=S_IFREG|0664, st_size=905, ...}) = 0
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight/node_modules/wrappy/wrappy.js", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=905, ...}) = 0
read(11, "// Returns a wrapper function th"..., 905) = 905
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight/node_modules/once", 0x7ffcd87a9aa0) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight/node_modules/once.js", 0x7ffcd87a9a50) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight/node_modules/once.json", 0x7ffcd87a9a50) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight/node_modules/once.node", 0x7ffcd87a9a50) = -1 ENOENT (No such file or directory)
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight/node_modules/once/package.json", O_RDONLY) = -1 ENOENT (No such file or directory)
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight/node_modules/once/index.js", 0x7ffcd87a9a50) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight/node_modules/once/index.json", 0x7ffcd87a9a50) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/inflight/node_modules/once/index.node", 0x7ffcd87a9a50) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once.js", 0x7ffcd87a9a50) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once.json", 0x7ffcd87a9a50) = -1 ENOENT (No such file or directory)
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once.node", 0x7ffcd87a9a50) = -1 ENOENT (No such file or directory)
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once/package.json", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=1349, ...}) = 0
read(11, "{\n \"name\": \"once\",\n \"version\":"..., 1349) = 1349
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once/once.js", {st_mode=S_IFREG|0664, st_size=417, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once/once.js", {st_mode=S_IFREG|0664, st_size=417, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once/once.js", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=417, ...}) = 0
read(11, "var wrappy = require('wrappy')\nm"..., 417) = 417
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once/node_modules/wrappy", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once/node_modules/wrappy.js", 0x7ffcd87a9750) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once/node_modules/wrappy.json", 0x7ffcd87a9750) = -1 ENOENT (No such file or directory)
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once/node_modules/wrappy.node", 0x7ffcd87a9750) = -1 ENOENT (No such file or directory)
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once/node_modules/wrappy/package.json", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=1256, ...}) = 0
read(11, "{\n \"name\": \"wrappy\",\n \"version"..., 1256) = 1256
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once/node_modules/wrappy/wrappy.js", {st_mode=S_IFREG|0664, st_size=905, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once/node_modules", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once/node_modules/wrappy", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once/node_modules/wrappy/wrappy.js", {st_mode=S_IFREG|0664, st_size=905, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once/node_modules/wrappy/wrappy.js", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=905, ...}) = 0
read(11, "// Returns a wrapper function th"..., 905) = 905
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once.js", 0x7ffcd87a9d50) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once.json", 0x7ffcd87a9d50) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once.node", 0x7ffcd87a9d50) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/glob/node_modules/once/once.js", {st_mode=S_IFREG|0664, st_size=417, ...}) = 0
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/q", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/q.js", 0x7ffcd87aa380) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/q.json", 0x7ffcd87aa380) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/q.node", 0x7ffcd87aa380) = -1 ENOENT (No such file or directory)
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/q/package.json", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=2784, ...}) = 0
read(11, "{\n \"name\": \"q\",\n \"version\": \"1"..., 2784) = 2784
close(11) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/q/q.js", {st_mode=S_IFREG|0664, st_size=62792, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/q", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/q/q.js", {st_mode=S_IFREG|0664, st_size=62792, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/q/q.js", O_RDONLY) = 11
ioctl(11, FIOCLEX) = 0
fstat(11, {st_mode=S_IFREG|0664, st_size=62792, ...}) = 0
read(11, "// vim:ts=4:sts=4:sw=4:\n/*!\n *\n "..., 62792) = 62792
close(11) = 0
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
getcwd("/tmp/hello-sailor", 4096) = 18
write(10, "\33[32m", 5) = 5
mmap(0x1d806ea00000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x1d806ea00000
mprotect(0x1d806ea05000, 4096, PROT_NONE) = 0
mmap(0x1d806ea06000, 1019904, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x1d806ea06000
mprotect(0x1d806eaff000, 4096, PROT_NONE) = 0
write(10, "\33[1m", 4) = 4
write(10, "*", 1*) = 1
write(10, "\33[0m", 4) = 4
write(10, " ", 1 ) = 1
ioctl(1, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, {B38400 opost isig icanon -echo ...}) = 0
ioctl(1, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, {B38400 opost isig icanon -echo ...}) = 0
open("/dev/tty", O_RDWR|O_CLOEXEC) = 11
dup3(11, 1, O_CLOEXEC) = 1
ioctl(11, FIONBIO, [1]) = 0
ioctl(11, TIOCGWINSZ, {ws_row=0, ws_col=0, ws_xpixel=0, ws_ypixel=0}) = 0
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
read(3, "*", 1) = 1
rt_sigaction(SIGWINCH, {0xe12810, ~[RTMIN RT_1], SA_RESTORER, 0x7f527bd79d10}, NULL, 8) = 0
write(4, "*", 1) = 1
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
write(10, "Building project in /tmp/hello-s"..., 38Building project in /tmp/hello-sailor
) = 38
getcwd("/tmp/hello-sailor", 4096) = 18
futex(0x15ed144, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x15ed140, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1
futex(0x15ed180, FUTEX_WAKE_PRIVATE, 1) = 1
epoll_wait(5, {{EPOLLIN, {u32=8, u64=8}}}, 1024, 0) = 1
read(8, "\1\0\0\0\0\0\0\0", 1024) = 8
futex(0x15ed144, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x15ed140, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1
futex(0x15ed180, FUTEX_WAKE_PRIVATE, 1) = 1
epoll_wait(5, {{EPOLLIN, {u32=8, u64=8}}}, 1024, -1) = 1
read(8, "\1\0\0\0\0\0\0\0", 1024) = 8
getcwd("/tmp/hello-sailor", 4096) = 18
futex(0x15ed144, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x15ed140, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1
futex(0x15ed180, FUTEX_WAKE_PRIVATE, 1) = 1
epoll_wait(5, {{EPOLLIN, {u32=8, u64=8}}}, 1024, -1) = 1
read(8, "\1\0\0\0\0\0\0\0", 1024) = 8
ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, {B38400 opost isig icanon -echo ...}) = 0
ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, {B38400 opost isig icanon -echo ...}) = 0
open("/dev/tty", O_RDWR|O_CLOEXEC) = 12
dup3(12, 0, O_CLOEXEC) = 0
ioctl(12, FIONBIO, [1]) = 0
socketpair(PF_LOCAL, SOCK_STREAM|SOCK_CLOEXEC, 0, [13, 14]) = 0
pipe2([15, 16], O_CLOEXEC) = 0
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
read(3, "*", 1) = 1
rt_sigaction(SIGCHLD, {0xe12810, ~[RTMIN RT_1], SA_RESTORER, 0x7f527bd79d10}, NULL, 8) = 0
write(4, "*", 1) = 1
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x7f527cdada10) = 27903
close(16) = 0
read(15, "", 4) = 0
close(15) = 0
close(14) = 0
ioctl(13, FIONBIO, [1]) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream.js", 0x7ffcd87aa430) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream.json", 0x7ffcd87aa430) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream.node", 0x7ffcd87aa430) = -1 ENOENT (No such file or directory)
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/package.json", O_RDONLY) = 14
ioctl(14, FIOCLEX) = 0
fstat(14, {st_mode=S_IFREG|0664, st_size=1986, ...}) = 0
read(14, "{\n \"name\": \"concat-stream\",\n \""..., 1986) = 1986
close(14) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/index.js", {st_mode=S_IFREG|0664, st_size=3580, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/index.js", {st_mode=S_IFREG|0664, st_size=3580, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/index.js", O_RDONLY) = 14
ioctl(14, FIOCLEX) = 0
fstat(14, {st_mode=S_IFREG|0664, st_size=3580, ...}) = 0
read(14, "var Writable = require('readable"..., 3580) = 3580
close(14) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream.js", 0x7ffcd87aa130) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream.json", 0x7ffcd87aa130) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream.node", 0x7ffcd87aa130) = -1 ENOENT (No such file or directory)
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/package.json", O_RDONLY) = 14
ioctl(14, FIOCLEX) = 0
fstat(14, {st_mode=S_IFREG|0664, st_size=1954, ...}) = 0
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
read(14, "{\n \"name\": \"readable-stream\",\n "..., 1954) = 1954
close(14) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/readable.js", {st_mode=S_IFREG|0664, st_size=521, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/readable.js", {st_mode=S_IFREG|0664, st_size=521, ...}) = 0
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/readable.js", O_RDONLY) = 14
ioctl(14, FIOCLEX) = 0
fstat(14, {st_mode=S_IFREG|0664, st_size=521, ...}) = 0
read(14, "var Stream = (function (){\n try"..., 521) = 521
close(14) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_readable.js", {st_mode=S_IFREG|0664, st_size=25350, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_readable.js", {st_mode=S_IFREG|0664, st_size=25350, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_readable.js", O_RDONLY) = 14
ioctl(14, FIOCLEX) = 0
fstat(14, {st_mode=S_IFREG|0664, st_size=25350, ...}) = 0
read(14, "'use strict';\n\nmodule.exports = "..., 25350) = 25350
close(14) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/process-nextick-args", 0x7ffcd87a9b90) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/process-nextick-args.js", 0x7ffcd87a9b40) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/process-nextick-args.json", 0x7ffcd87a9b40) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/process-nextick-args.node", 0x7ffcd87a9b40) = -1 ENOENT (No such file or directory)
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/process-nextick-args/package.json", O_RDONLY) = -1 ENOENT (No such file or directory)
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/process-nextick-args/index.js", 0x7ffcd87a9b40) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/process-nextick-args/index.json", 0x7ffcd87a9b40) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/process-nextick-args/index.node", 0x7ffcd87a9b40) = -1 ENOENT (No such file or directory)
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/process-nextick-args", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/process-nextick-args.js", 0x7ffcd87a9b40) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/process-nextick-args.json", 0x7ffcd87a9b40) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/process-nextick-args.node", 0x7ffcd87a9b40) = -1 ENOENT (No such file or directory)
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/process-nextick-args/package.json", O_RDONLY) = 14
ioctl(14, FIOCLEX) = 0
fstat(14, {st_mode=S_IFREG|0664, st_size=1297, ...}) = 0
read(14, "{\n \"name\": \"process-nextick-arg"..., 1297) = 1297
close(14) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/process-nextick-args/index.js", {st_mode=S_IFREG|0664, st_size=268, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/process-nextick-args", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/process-nextick-args/index.js", {st_mode=S_IFREG|0664, st_size=268, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/process-nextick-args/index.js", O_RDONLY) = 14
ioctl(14, FIOCLEX) = 0
fstat(14, {st_mode=S_IFREG|0664, st_size=268, ...}) = 0
read(14, "'use strict';\nmodule.exports = n"..., 268) = 268
close(14) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/isarray", 0x7ffcd87a9b90) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/isarray.js", 0x7ffcd87a9b40) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/isarray.json", 0x7ffcd87a9b40) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/isarray.node", 0x7ffcd87a9b40) = -1 ENOENT (No such file or directory)
mmap(0x331dba5eb000, 65536, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x331dba5eb000
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/isarray/package.json", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/isarray/index.js", 0x7ffcd87a9b40) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/isarray/index.json", 0x7ffcd87a9b40) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/isarray/index.node", 0x7ffcd87a9b40) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray.js", 0x7ffcd87a9b40) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray.json", 0x7ffcd87a9b40) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray.node", 0x7ffcd87a9b40) = -1 ENOENT (No such file or directory)
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/package.json", O_RDONLY) = 14
ioctl(14, FIOCLEX) = 0
fstat(14, {st_mode=S_IFREG|0664, st_size=1288, ...}) = 0
read(14, "{\n \"name\": \"isarray\",\n \"descri"..., 1288) = 1288
close(14) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/index.js", {st_mode=S_IFREG|0664, st_size=120, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/index.js", {st_mode=S_IFREG|0664, st_size=120, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/isarray/index.js", O_RDONLY) = 14
ioctl(14, FIOCLEX) = 0
fstat(14, {st_mode=S_IFREG|0664, st_size=120, ...}) = 0
read(14, "module.exports = Array.isArray |"..., 120) = 120
close(14) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/core-util-is", 0x7ffcd87a9b90) = -1 ENOENT (No such file or directory)
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/core-util-is.js", 0x7ffcd87a9b40) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/core-util-is.json", 0x7ffcd87a9b40) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/core-util-is.node", 0x7ffcd87a9b40) = -1 ENOENT (No such file or directory)
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/core-util-is/package.json", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/core-util-is/index.js", 0x7ffcd87a9b30) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/core-util-is/index.json", 0x7ffcd87a9b30) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/core-util-is/index.node", 0x7ffcd87a9b30) = -1 ENOENT (No such file or directory)
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is.js", 0x7ffcd87a9b30) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is.json", 0x7ffcd87a9b30) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is.node", 0x7ffcd87a9b30) = -1 ENOENT (No such file or directory)
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is/package.json", O_RDONLY) = 14
ioctl(14, FIOCLEX) = 0
fstat(14, {st_mode=S_IFREG|0664, st_size=1350, ...}) = 0
read(14, "{\n \"name\": \"core-util-is\",\n \"v"..., 1350) = 1350
close(14) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is/lib/util.js", {st_mode=S_IFREG|0664, st_size=3040, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is/lib", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is/lib/util.js", {st_mode=S_IFREG|0664, st_size=3040, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/core-util-is/lib/util.js", O_RDONLY) = 14
ioctl(14, FIOCLEX) = 0
fstat(14, {st_mode=S_IFREG|0664, st_size=3040, ...}) = 0
read(14, "// Copyright Joyent, Inc. and ot"..., 3040) = 3040
close(14) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/inherits", 0x7ffcd87a9b80) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/inherits.js", 0x7ffcd87a9b20) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/inherits.json", 0x7ffcd87a9b20) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/inherits.node", 0x7ffcd87a9b20) = -1 ENOENT (No such file or directory)
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/inherits/package.json", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/inherits/index.js", 0x7ffcd87a9b20) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/inherits/index.json", 0x7ffcd87a9b20) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/inherits/index.node", 0x7ffcd87a9b20) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/inherits", 0x7ffcd87a9b80) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/inherits.js", 0x7ffcd87a9b20) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/inherits.json", 0x7ffcd87a9b20) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/inherits.node", 0x7ffcd87a9b20) = -1 ENOENT (No such file or directory)
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/inherits/package.json", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/inherits/index.js", 0x7ffcd87a9b20) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/inherits/index.json", 0x7ffcd87a9b20) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/inherits/index.node", 0x7ffcd87a9b20) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/inherits", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/inherits.js", 0x7ffcd87a9b20) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/inherits.json", 0x7ffcd87a9b20) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/inherits.node", 0x7ffcd87a9b20) = -1 ENOENT (No such file or directory)
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/inherits/package.json", O_RDONLY) = 14
ioctl(14, FIOCLEX) = 0
fstat(14, {st_mode=S_IFREG|0664, st_size=1235, ...}) = 0
read(14, "{\n \"name\": \"inherits\",\n \"descr"..., 1235) = 1235
close(14) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/inherits/inherits.js", {st_mode=S_IFREG|0664, st_size=42, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/inherits", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/inherits/inherits.js", {st_mode=S_IFREG|0664, st_size=42, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/inherits/inherits.js", O_RDONLY) = 14
ioctl(14, FIOCLEX) = 0
fstat(14, {st_mode=S_IFREG|0664, st_size=42, ...}) = 0
read(14, "module.exports = require('util')"..., 42) = 42
close(14) = 0
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_writable.js", {st_mode=S_IFREG|0664, st_size=13566, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_writable.js", {st_mode=S_IFREG|0664, st_size=13566, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_writable.js", O_RDONLY) = 14
ioctl(14, FIOCLEX) = 0
fstat(14, {st_mode=S_IFREG|0664, st_size=13566, ...}) = 0
read(14, "// A bit simpler than readable s"..., 13566) = 13566
close(14) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/util-deprecate", 0x7ffcd87a9b00) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/util-deprecate.js", 0x7ffcd87a9ab0) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/util-deprecate.json", 0x7ffcd87a9ab0) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/util-deprecate.node", 0x7ffcd87a9ab0) = -1 ENOENT (No such file or directory)
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/util-deprecate/package.json", O_RDONLY) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/util-deprecate/index.js", 0x7ffcd87a9ab0) = -1 ENOENT (No such file or directory)
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/util-deprecate/index.json", 0x7ffcd87a9ab0) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/node_modules/util-deprecate/index.node", 0x7ffcd87a9ab0) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate.js", 0x7ffcd87a9ab0) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate.json", 0x7ffcd87a9ab0) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate.node", 0x7ffcd87a9ab0) = -1 ENOENT (No such file or directory)
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate/package.json", O_RDONLY) = 14
ioctl(14, FIOCLEX) = 0
fstat(14, {st_mode=S_IFREG|0664, st_size=1459, ...}) = 0
read(14, "{\n \"name\": \"util-deprecate\",\n "..., 1459) = 1459
close(14) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate/node.js", {st_mode=S_IFREG|0664, st_size=123, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate/node.js", {st_mode=S_IFREG|0664, st_size=123, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/node_modules/util-deprecate/node.js", O_RDONLY) = 14
ioctl(14, FIOCLEX) = 0
fstat(14, {st_mode=S_IFREG|0664, st_size=123, ...}) = 0
read(14, "\n/**\n * For Node.js, simply re-e"..., 123) = 123
close(14) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_duplex.js", {st_mode=S_IFREG|0664, st_size=1868, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_duplex.js", {st_mode=S_IFREG|0664, st_size=1868, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_duplex.js", O_RDONLY) = 14
ioctl(14, FIOCLEX) = 0
fstat(14, {st_mode=S_IFREG|0664, st_size=1868, ...}) = 0
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
read(14, "// a duplex stream is just a str"..., 1868) = 1868
close(14) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_readable", 0x7ffcd87a9b60) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_readable.js", {st_mode=S_IFREG|0664, st_size=25350, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_writable", 0x7ffcd87a9b60) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_writable.js", {st_mode=S_IFREG|0664, st_size=13566, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_transform.js", {st_mode=S_IFREG|0664, st_size=6413, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_transform.js", {st_mode=S_IFREG|0664, st_size=6413, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_transform.js", O_RDONLY) = 14
ioctl(14, FIOCLEX) = 0
fstat(14, {st_mode=S_IFREG|0664, st_size=6413, ...}) = 0
read(14, "// a transform stream is a reada"..., 6413) = 6413
close(14) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_duplex", 0x7ffcd87a9b80) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_duplex.js", {st_mode=S_IFREG|0664, st_size=1868, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_passthrough.js", {st_mode=S_IFREG|0664, st_size=608, ...}) = 0
lstat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_passthrough.js", {st_mode=S_IFREG|0664, st_size=608, ...}) = 0
open("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_passthrough.js", O_RDONLY) = 14
ioctl(14, FIOCLEX) = 0
fstat(14, {st_mode=S_IFREG|0664, st_size=608, ...}) = 0
read(14, "// a passthrough stream.\n// basi"..., 608) = 608
close(14) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_transform", 0x7ffcd87a9b80) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/readable-stream/lib/_stream_transform.js", {st_mode=S_IFREG|0664, st_size=6413, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/inherits", {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/inherits.js", 0x7ffcd87aa120) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/inherits.json", 0x7ffcd87aa120) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/inherits.node", 0x7ffcd87aa120) = -1 ENOENT (No such file or directory)
stat("/home/cody/.nvm/versions/node/v0.12.5/lib/node_modules/pulp/node_modules/concat-stream/node_modules/inherits/inherits.js", {st_mode=S_IFREG|0664, st_size=42, ...}) = 0
epoll_ctl(5, EPOLL_CTL_ADD, 13, {EPOLLIN, {u32=13, u64=13}}) = 0
epoll_wait(5, {{EPOLLIN, {u32=13, u64=13}}}, 1024, -1) = 1
read(13, "Reading ./output/Prelude/externs"..., 65536) = 354
futex(0x19c34c8, FUTEX_WAKE_PRIVATE, 1) = 1
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=27903, si_status=0, si_utime=14, si_stime=0} ---
read(3, "*", 1) = 1
write(7, "\210\324^\1\0\0\0\0\21\0\0\0\0\0\0\0", 16) = 16
write(4, "*", 1) = 1
rt_sigreturn() = 0
epoll_wait(5, {{EPOLLIN|EPOLLHUP, {u32=13, u64=13}}, {EPOLLIN, {u32=6, u64=6}}}, 1024, -1) = 2
read(13, "", 65536) = 0
epoll_ctl(5, EPOLL_CTL_DEL, 13, {0, {u32=0, u64=0}}) = 0
close(13) = 0
read(6, "\210\324^\1\0\0\0\0\21\0\0\0\0\0\0\0", 512) = 16
wait4(27903, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], WNOHANG, NULL) = 27903
rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
read(3, "*", 1) = 1
rt_sigaction(SIGCHLD, {SIG_DFL, [], SA_RESTORER, 0x7f527bd79d10}, NULL, 8) = 0
write(4, "*", 1) = 1
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
write(10, "\33[32m", 5) = 5
write(10, "\33[1m", 4) = 4
write(10, "*", 1*) = 1
write(10, "\33[0m", 4) = 4
write(10, " ", 1 ) = 1
write(10, "Build successful.\n", 18Build successful.
) = 18
futex(0x15ed144, FUTEX_WAKE_OP_PRIVATE, 1, 1, 0x15ed140, {FUTEX_OP_SET, 0, FUTEX_OP_CMP_GT, 1}) = 1
futex(0x15ed180, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x7f527985a9d0, FUTEX_WAIT, 27902, NULL) = -1 EAGAIN (Resource temporarily unavailable)
exit_group(0) = ?
+++ exited with 0 +++
I see a few ENOENT's, do you know if these are problems?
Just ran into this - the issue is that purescript-events
has an examples/
subdirectory which contains a Main module. So the pulp build
command ends up pulling in two Mains, causing the failure.
ย cschneidย ๎ฐย โฏย ๎ฑย Projectsย ๎ฑย Purescriptย ๎ฑย pulptestย ๎ฐย pulp build
* Building project in /Users/cschneid/Dropbox/Projects/Purescript/pulptest
* Build successful.
ย cschneidย ๎ฐย โฏย ๎ฑย Projectsย ๎ฑย Purescriptย ๎ฑย pulptestย ๎ฐย bower install purescript-events
bower purescript-events#* cached git://github.com/CapillarySoftware/purescript-events.git#0.0.3
bower purescript-events#* validate 0.0.3 against git://github.com/CapillarySoftware/purescript-events.git#*
bower purescript-events#* cached git://github.com/CapillarySoftware/purescript-events.git#0.0.3
bower purescript-events#* validate 0.0.3 against git://github.com/CapillarySoftware/purescript-events.git#*
bower purescript-reactive#* not-cached git://github.com/purescript/purescript-reactive.git#*
bower purescript-reactive#* resolve git://github.com/purescript/purescript-reactive.git#*
bower purescript-reactive#* checkout master
bower purescript-reactive#* invalid-meta purescript-reactive is missing "main" entry in bower.json
bower purescript-reactive#* resolved git://github.com/purescript/purescript-reactive.git#de96537c89
bower purescript-events#* install purescript-events#0.0.3
bower purescript-reactive#* install purescript-reactive#de96537c89
purescript-events#0.0.3 bower_components/purescript-events
โโโ purescript-easy-ffi#1.0.1
โโโ purescript-reactive#de96537c89
purescript-reactive#de96537c89 bower_components/purescript-reactive
โโโ purescript-monoid#0.1.4
โโโ purescript-refs#0.1.1
ย cschneidย ๎ฐย โฏย ๎ฑย Projectsย ๎ฑย Purescriptย ๎ฑย pulptestย ๎ฐย pulp build
* Building project in /Users/cschneid/Dropbox/Projects/Purescript/pulptest
Reading ./output/Prelude/externs.purs
Reading ./output/Prelude.Unsafe/externs.purs
Reading ./output/Data.Function/externs.purs
Reading ./output/Data.Foreign.EasyFFI/externs.purs
Reading ./output/Data.Eq/externs.purs
Reading ./output/Control.Monad.Eff/externs.purs
Reading ./output/Control.Monad.Eff.Ref/externs.purs
Reading ./output/Control.Monad.Eff.Ref.Unsafe/externs.purs
Reading ./output/Control.Monad.Eff.Unsafe/externs.purs
Reading ./output/Control.Monad.ST/externs.purs
Reading ./output/Debug.Trace/externs.purs
Reading ./output/Main/externs.purs
Reading ./output/Control.Monad/externs.purs
Reading ./output/Control.Lazy/externs.purs
Reading ./output/Control.Extend/externs.purs
Reading ./output/Control.Comonad/externs.purs
Reading ./output/Control.Bind/externs.purs
Reading ./output/Control.Apply/externs.purs
Reading ./output/Control.Alt/externs.purs
Reading ./output/Control.Plus/externs.purs
Reading ./output/Control.Alternative/externs.purs
Reading ./output/Control.MonadPlus/externs.purs
Reading ./output/Data.Maybe/externs.purs
Reading ./output/Data.Array/externs.purs
Reading ./output/Data.Maybe.Unsafe/externs.purs
Reading ./output/Data.Array.Unsafe/externs.purs
Reading ./output/Data.Monoid/externs.purs
Reading ./output/Data.Monoid.All/externs.purs
Reading ./output/Data.Monoid.Any/externs.purs
Reading ./output/Data.Monoid.Dual/externs.purs
Reading ./output/Data.Monoid.Endo/externs.purs
Reading ./output/Data.Monoid.Product/externs.purs
Reading ./output/Data.Monoid.Sum/externs.purs
Reading ./output/Data.Monoid.First/externs.purs
Reading ./output/Data.Monoid.Last/externs.purs
Module 'Main' has been defined more than once
* ERROR: Subcommand terminated with error code 1
ย cschneidย ๎ฐย โฏย ๎ฑย Projectsย ๎ฑย Purescriptย ๎ฑย pulptestย ๎ฐย grep -ri "Main" bower_components ย ๎ฒย 1ย
bower_components/purescript-easy-ffi/.bower.json: "main": "src/EasyFFI.purs",
bower_components/purescript-easy-ffi/bower.json: "main": "src/EasyFFI.purs",
bower_components/purescript-events/.bower.json: "main": "src/Control/Reactive/Event.purs",
bower_components/purescript-events/bower.json: "main": "src/Control/Reactive/Event.purs",
bower_components/purescript-reactive/examples/Test.purs:module Main where
bower_components/purescript-reactive/examples/Test.purs:main = do
bower_components/purescript-reactive/Makefile: --main --module Main --tco --magic-do
Hi,
I released https://github.com/owickstrom/purescript-spec last week. Just wondering if it would be interesting to have a have a flag, e.g. pulp init --with-spec
, to include it in the generated Test.Main.main
? I can submit a pull request if so.
Thanks!
We should be able to pass arguments to tell pulp which js engine to utilize.
A place for me to track thoughts on supporting multiple projects.
Simple project:
src/
test/
bower.json
Multiple projects:
project1/
project1/src/
project1/test/
project1/bower.json
project2/
project2/src/
project2/test/
project2/bower.json
A subproject A depends on a subproject B by referencing "B": "../B"
in its bower file (need to test to make sure this works, seems like it's supported).
Outstanding issues:
Probably other stuff.
To reproduce just do pulp init
in any existing repo. Your bower.json
and src/Main.purs
would be overwritten.
This might end up very sad for someone. It's not just about being fool-proof, first writing something in src/Main.purs
and only then initiating the project is quite a common scenario (at least for me).
Hi,
I've been using the pulp browserify to build my project. I've been using dummy data for a main, but in reality, my project's entry point is a single function that takes a configuration. Is there any way to get the DCE and bundling functionality of browserify here with the ability to specify a your library entry points rather than just main? It makes sense that I should need to specify the API surface area or DCE can't do its job, but I need the user in jsland to build a config and pass it in rather than the code running as soon as it is loaded with no input. Any suggestions?
Just created my first pulp
project and ran pulp build
โ ~/repos/purescript-projs/tryit
10:58 $ pulp build
* Building project in /Users/kristianmandrup/repos/purescript-projs/tryit
psc: No files found using pattern: src/**/*.js
* Build successful.
Same issue running test:
$ pulp test
* Building project in /Users/kristianmandrup/repos/purescript-projs/tryit
psc: No files found using pattern: src/**/*.js
psc: No files found using pattern: test/**/*.js
* Build successful. Running tests...
You should add some tests.
* Tests OK.
It works just fine, just curious about the message: No files found using pattern: src/**/*.js
Feels like a warning to me?
PS: How do I use the psc-ide
? It contains a server as well? https://github.com/kRITZCREEK/psc-ide
I need stack, cabal, ... Don't know the Haskell environment.
For now I'm using the Atom plugin.
Thanks :)
I'm wondering if there's a best practice we could build into pulp test
that runs tests in a browser environment instead of just injecting it into node. I've got some DOM manipulation code I want to test and of course that stuff isn't available in node out of the box.
One way could be to still do it in node and use something like:
https://github.com/tmpvar/jsdom
You'd probably need your main function to specify any dependencies as you can see in the examples, and then it could execute the test suite inside of a jsdom.env
. The other approach is to write a test runner and actually open a headless webkit with phantomjs or something and get your tests that way.
Would love to know your thoughts on this.
I'd like to pass ARGV
to my process like:
$ pulp run foo bar baz
Instead I get Unknown command 'run,foo,bar,baz'
pulp install
fails with my setup but bower install
with the latest version of bower works fine. I tried downgrading my bower to 1.3.4
(pulp version) and it failed as well.
I think that since psc 0.7.0, the psc
tool has nothing to do with dead code elimination; it just writes CommonJS modules into the output directory. Additionally, psc
no longer recognises --module
or --main
options; it exits immediately with an error if they are supplied.
pulp browserify -O
calls psc
with both --module
and --main
, and so I am pretty sure that with psc 0.7.x, this will always result in an immediate error from psc
because of these unrecognised options. So perhaps we should remove the -O
option from pulp browserify
. If people want DCE they can use uglifyify or just pulp build -O
.
/cc @paf31 @garyb because I am not 100% sure that the above is correct.
I'm going to start adding things like Arbitrary
instances for core libraries, under test-src
in each package. Using the command line, or gulp
or whatever, it's possible to include files under test-src
in the build script, but in pulp
, everything works by convention.
I suggest the convention be extended so that the test build includes files under bower_components/**/test-src/
.
This shouldn't affect any existing libraries.
When including Javascript dependencies (e.g. "dependencies": { "zm-event-kit": "^1.0.0" }
), they are not exposed to the build or test execution environments (e.g. you cannot require the module).
What is the correct way to depend on Javascript dependencies via Bower?
Hello!
Which is the best way to help maintain Pulp?
I see Pulp is currently written in Javascript, but is also being re-written in PureScript.
Is there still a need to actively refactor/test/support the Javascript portions?
Or should I focus on helping out the PureScript re-write?
The README does not make specific mention of it but am I correct to assume that a pulp init && pulp run
should work without errors?
I am getting:
...
on (exports, require, module, __filename, __dirname) { require('Main').main();
^
TypeError: Object #<Object> has no method 'main'
...
It might be nice to allow a --verbose option to the 'build' command, and potentially some others too, which prints all the commands executed.
Available commands don't line up nicely:
init - Generate an example PureScript project
dep - Invoke Bower for package management
build - Build the project
test - Run project tests
browserify - Produce a deployable bundle using Browserify
run - Compile and run the project
docs - Generate project documentation
psci - Launch a PureScript REPL configured for the project
It seems that using \t
for this wasn't a good choice.
pulp browserify
works fine.
pulp browserify --optimise
results in psc: Main: openFile: does not exist (No such file or directory)
pulp browserify --optimise -m "src/Main.purs"
results in
Module 'Main' has been defined more than once
after trying to exec psc
with an argument list like
[ '--module',
'src/Main.purs',
'--main',
'src/Main.purs',
...
'src/Main.purs',
...
Maybe I am just being paranoid, but it seems like 65c3c6b#diff-f9ab28ae135f8c6a15981c24670cc941R9 might be too ambiguous of a convention. I can imagine that other bower dependencies that rely on other compilers might have components that match that pattern, and those files would inadvertently get copied/baked into psc output with strange hard to debug results.
Supposing that it actually is a problem, I propose that the convention needs to change to something like bower_components/*/src/**/*.purs.js
I'm not able to run pulp
as root because bower
gives an error:
$ id
uid=0(root) gid=0(root) groups=0(root)
$ pulp init --force --allow-root
* Generating project skeleton in /opt/what
bower ESUDO Cannot be run with sudo
Additional error details:
Since bower is a user command, there is no need to execute it with superuser permissions.
If you're having permission errors when using bower without sudo, please spend a few minutes learning more about how your system should work and make any necessary repairs.
http://www.joyent.com/blog/installing-node-and-npm
https://gist.github.com/isaacs/579814
You can however run a command with sudo using --allow-root option
* ERROR: Subcommand terminated with error code 1
It looks like bower
has a flag --allow-root
. pulp
should support this flag as well.
I'm using purescript to build a UI for an app. I've been using pulp as a build tool as it really simplifies things nicely, but today when I tried to switch my purescript-react dependency to joneshf/purescript-react#simplify
, running pulp install
failed
* Installing dependencies...
bower not-cached git://github.com/joneshf/purescript-react.git#simplify
bower resolve git://github.com/joneshf/purescript-react.git#simplify
bower checkout purescript-react#simplify
bower not-cached git://github.com/purescript/purescript-either.git#~0.1.4
bower resolve git://github.com/purescript/purescript-either.git#~0.1.4
bower not-cached git://github.com/facebook/react-bower.git#~0.11.2
bower resolve git://github.com/facebook/react-bower.git#~0.11.2
bower not-cached git://github.com/purescript-contrib/purescript-react.git#*
bower resolve git://github.com/purescript-contrib/purescript-react.git#*
bower not-cached git://github.com/purescript/purescript-either.git#*
bower resolve git://github.com/purescript/purescript-either.git#*
bower not-cached git://github.com/facebook/react-bower.git#*
bower resolve git://github.com/facebook/react-bower.git#*
bower download https://github.com/purescript/purescript-either/archive/v0.1.4.tar.gz
bower download https://github.com/purescript/purescript-either/archive/v0.1.4.tar.gz
bower download https://github.com/purescript-contrib/purescript-react/archive/v0.0.5.tar.gz
bower download https://github.com/facebook/react-bower/archive/v0.11.2.tar.gz
bower download https://github.com/facebook/react-bower/archive/v0.12.1.tar.gz
bower invalid-meta purescript-react is missing "main" entry in bower.json
bower resolved git://github.com/joneshf/purescript-react.git#41f09d44b6
bower not-cached git://github.com/joneshf/purescript-dom.git#~0.1.0
bower resolve git://github.com/joneshf/purescript-dom.git#~0.1.0
bower extract purescript-either#~0.1.4 archive.tar.gz
bower extract purescript-either#* archive.tar.gz
bower invalid-meta purescript-either is missing "main" entry in bower.json
bower invalid-meta purescript-either is missing "main" entry in bower.json
bower resolved git://github.com/purescript/purescript-either.git#0.1.4
bower download https://github.com/joneshf/purescript-dom/archive/v0.1.1.tar.gz
bower resolved git://github.com/purescript/purescript-either.git#0.1.4
bower extract purescript-react#* archive.tar.gz
bower invalid-meta purescript-react is missing "main" entry in bower.json
bower resolved git://github.com/purescript-contrib/purescript-react.git#0.0.5
bower not-cached git://github.com/purescript/purescript-control.git#~0.2.0
bower resolve git://github.com/purescript/purescript-control.git#~0.2.0
bower download https://github.com/purescript/purescript-control/archive/v0.2.1.tar.gz
bower extract purescript-dom#~0.1.0 archive.tar.gz
bower mismatch Version declared in the json (0.1.0) is different than the resolved one (0.1.1)
bower invalid-meta purescript-dom is missing "main" entry in bower.json
bower invalid-meta purescript-dom is missing "ignore" entry in bower.json
bower resolved git://github.com/joneshf/purescript-dom.git#0.1.1
bower extract purescript-control#~0.2.0 archive.tar.gz
bower invalid-meta purescript-control is missing "main" entry in bower.json
bower resolved git://github.com/purescript/purescript-control.git#0.2.1
bower extract react#~0.11.2 archive.tar.gz
bower resolved git://github.com/facebook/react-bower.git#0.11.2
bower extract react#* archive.tar.gz
bower resolved git://github.com/facebook/react-bower.git#0.12.1
* ERROR: Unable to find suitable version for purescript-react
Not sure why it is still getting purescript-react 0.0.5. I've cleared the bower cache and removed bower_components, to no avail. But, if I use bower directly, ./node_modules/pulp/node_modules/bower/bin/bower install
, then everything gets installed properly.
Here's my full bower.json
file.
{ "name": "hiberico"
, "version": "1.0.0"
, "private": true
, "ignore":
[ "**/.*"
, "node_modules"
, "bower_components"
, "output"
]
, "dependencies":
{ "purescript-either": "~0.1.4"
, "purescript-react": "joneshf/purescript-react#simplify"
, "react": "~0.11.2"
}
}
Any help you can provide would be very appreciated.
Pulp currently does not display any warnings that psc
raises. This is probably because psc
used to be rather verbose in its output, so the output was hidden except in the case of errors. I think it should be fine to pipe the output regardless now, as unless the -v
flag is used psc
doesn't print messages about reading/writing files, etc.
Thanks for making this great tool! It really makes the PS setup process painless. I'm a relatively new user, but I don't think I'm ever going back to grunt...
One thing I'd like to see is greater customization in color options beyond the --monochrome
flag. I'm using the solarized shell color scheme, and the "green" asterisks for status messages show up as a gray slightly darker than the message text color, so the difference is minimal. I'd like to be able to customize the colors to work around this.
I think a reasonable solution to this would be one or more additional command line flags to define:
I don't think it's necessary to have fine-grained control over what shade is used; being able to select from among a set of supported colors would be fine for me. I would just choose the ones that worked best for my environment.
A nice-to-have on top of those is to capture and colorize messages from underlying tasks, so build error and runtime error text is shown in e.g. red and not just * ERROR: Subcommand terminated with error code 8
.
Essentially, when I see a long list of build tasks printing to the screen, followed by program/test output, followed by errors, liberal use of color helps me to more easily identify the messages that are most important to me. Thanks!
Running pulp psci
on windows, in the Git Bash shell, causes pulp to hang indefinitely, never starting psci:
$ pulp psci
psci
is in my path at /c/ProgramData/chocolatey/bin/psci
, and running psci
works fine.
Currently the bower.json
generated is less than ideal as it's missing a few fields that probably should be there: license
, and more importantly, repository
. Without the repository
field purescript libraries cannot be published to pursuit, and it's an easy thing to forget.
Perhaps we should use an interactive init like npm
and bower
so these fields along with other common things like description
, homepage
, etc. can be set?
I often forget to bower i
before I pulp build
. It might be nice if pulp checked that the dependencies listed in bower.json were coherent with what is installed in bower_components
before it invoked any of the compiler programs (psc
, psc-bundle
, etc).
When running pulp server
inside a docker container, it doesn't exit when pressing Ctrl-C. According to this docker issue (moby/moby#12228), it is caused by applications not exiting by default when they are PID 1 and receive a SIGINT.
It would be nice if pulp
exited even when PID 1 and received a SIGINT.
It would be great to have support for generating tags in pulp so that a 'go-to-definition' feature can be used in editors like emacs/vi. This is the PR implementing tags generation in psc-docs:
If I have some library not for the purescript- ecosystem it is strange I have to call it purescript-*
I'm working on support for running tests in the browser using https://github.com/owickstrom/purescript-spec, first off will be Karma I think. I'll just call mocha's describe
, it
, etc and let Karma do the heavy lifting, so nothing fancy.
It would be very nice if pulp could do what it does in pulp browserify
but for the tests/Main.purs
file, i.e. create a browserify bundle for the test suite. Should I create a pull request (when I get the time)? I'm thinking something like pulp browserify --test
.
By the way, I think pulp is a great tool for purescript, keep up the good work!
It would be nice to be able to release a new version of a package with minimum fuss.
After our IRC discussion (http://ircbrowse.net/browse/purescript?events_page=3976 and the following two pages) I think the design currently looks a bit like:
psc-publish --dry-run
, and exit 1 if it fails (the --dry-run
option is not implemented yet, but will be soon)bower version
to bump the version in bower.json, commit, and tag. I think we can just pass all command line arguments supplied to pulp
after the "release" argument straight through to bower version
? so for example, pulp release patch -m "Release v%s"
git push && git push --tags
psc-publish
for real to create data for PursuitOne unresolved problem is how we authenticate to Pursuit. We could prompt for a GitHub username and password, use these to create a GitHub token using GitHub's HTTP API, and then save that into ~/.pulp/github-api-token
or something, with mode 0600. We could also provide a way of supplying a token directly for people who don't want to enter their password.
I installed pulp from npm in Ubuntu 14 and /usr/bin/pulp refused to run with some "file not found" nonsense.
Turns out that the file has CR-LF line endings and those manage to confuse the shebang at the top into trying to run the inexistent "node^M" interpreter.
Output from pulp build
/pulp run
appears to be being inappropriately retained; changing module names (or removing modules entirely) and then pulp run
-ing or build
-ing the project still produces the same result, as if the rename/delete had never happened, until the module's output/ModuleNameHere/
cache files are manually removed.
To reproduce:
$ pulp init
$ pulp run
...
Hello sailor!
## Rename the module file and definition. Just running "rm src/Main.purs"
## produces the same result below.
$ mv src/Main.purs src/NotMain.purs
$ sed -i '' -e 's/module Main/module NotMain/g' src/NotMain.purs
$ pulp run
...
Hello sailor!
$ rm -rf output/Main
$ pulp run
* Building project in /Users/damncabbage/example
* Build successful.
module.js:338
throw err;
^
Error: Cannot find module 'Main'
at Function.Module._resolveFilename (module.js:336:15)
at Function.Module._load (module.js:278:25)
at Module.require (module.js:365:17)
at require (module.js:384:17)
at Object.<anonymous> (/private/var/folders/dv/x_g...gn/T/pulp-run115...vo.js:1:63)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (module.js:478:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Function.Module.runMain (module.js:501:10)
* ERROR: Subcommand terminated with error code 1
(Pulp version 4.0.2, just installed from npm.)
As of 0.7.0, psc (and the rest of the command line tools) will now interpret file globs for files which get passed on the command line. See purescript/purescript#1152
This was added because there is a limit on command line length on windows, and if you try to compile slamdata on windows, you reach that limit. Presumably pulp will now fail to compile projects on Windows with enough files in them, too (although I haven't tested this). So perhaps pulp should stop expanding globs?
/cc @garyb
Would we be open to using Yargs for our command line parsing logic?
Has this or any other modules been considered before for this? If so were there any issues with using them?
I went to try and install this but ran into a python version error:
โ ~ _ npm i -g pulp
[sudo] password for joneshf:
> [email protected] install /usr/lib/node_modules/pulp/node_modules/gaze
> node-gyp rebuild
gyp ERR! configure error
gyp ERR! stack Error: Python executable "python" is v3.4.1, which is not supported by gyp.
gyp ERR! stack You can pass the --python switch to point to Python >= v2.5.0 & < 3.0.0.
gyp ERR! stack at failPythonVersion (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:108:14)
gyp ERR! stack at /usr/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:97:9
gyp ERR! stack at ChildProcess.exithandler (child_process.js:646:7)
gyp ERR! stack at ChildProcess.emit (events.js:98:17)
gyp ERR! stack at maybeClose (child_process.js:756:16)
gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:823:5)
gyp ERR! System Linux 3.16.3-1-ARCH
gyp ERR! command "node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/lib/node_modules/pulp/node_modules/gaze
gyp ERR! node -v v0.10.32
gyp ERR! node-gyp -v v1.0.2
gyp ERR! not ok
npm ERR! Linux 3.16.3-1-ARCH
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "i" "-g" "pulp"
npm ERR! node v0.10.32
npm ERR! npm v2.1.0
npm ERR! code ELIFECYCLE
npm ERR! [email protected] install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script.
npm ERR! This is most likely a problem with the gaze package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node-gyp rebuild
npm ERR! You can get their info via:
npm ERR! npm owner ls gaze
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /home/joneshf/npm-debug.log
Looks like this is known: shama/gaze#102 and apparently versions before 0.6.x
don't have this problem.
Can the version go down a minor? Or can a different watch tool be used?
I wrote some purescript that I'd like to compile into a javascript library. However, I believe pulp build -O
currently requires Main.main
to be defined.
I suggest we write up docs for the -O
option (I had to ask about this in #purescript
) and extend its functionality to include "library builds" and maybe something similar to the .cabal
file exposed-modules
field. Is there a clean way to selectively expose modules currently? I'm thinking no, given the current .js
output format. Thoughts?
purescript $ pulp init
* Generating project skeleton in /Users/francesco/experiments/purescript
* ERROR: `/Users/francesco/node_modules/pulp/node_modules/.bin/bower` executable not found.
I experience the error above. Could it be that bower
was not installed under pulp
because i already have it installed globally?
I was working through
purescript-book/chapter2
from github and I couldn't figure out the moral equivalent of cabal install. Eventually I figured out (by reading the purescript book) I need to run
pulp dep update
as a first step.
Neither
pulp dep --help
nor the pulp home page (https://github.com/bodil/pulp) gives any indication that there is a
pulp dep update
action.
The home page does say
Thus, pulp dep install foo --save is the equivalent of bower install foo --save except you don't need to install Bower globally.
I would add to this
See pulp dep help for a listing of bower commands that can be passed to pulp.
(Note this is pulp dep help, not pulp dep --help, which displays current text.)
assuming the above is true. Maybe also some additional breadcrumbs for common usage might also be helpful such as adding that pulp dep update is a good idea, but I'm not sure where to draw the line here.
But I think at least we need a pointer that pulp bower help.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.