(
   ^
[ headless ]:1: Unexpected EOF while parsing command
  zzZZ
  ^~~~
[ headless ]:1: 'zzZZ' not found (OILS-ERR-100)
  declare -X
          ^~
[ headless ]:1: 'declare' doesn't accept flag -X
  break
  ^~~~~
[ headless ]:1: warning: Invalid control flow at top level
  continue
  ^~~~~~~~
[ headless ]:1: warning: Invalid control flow at top level
d
install
libc.so
line_input.so
metrics
mycpp
oils-version.txt
opy
osh
pea
pgen2
posix_.so
prebuilt
pyext
pylib
shell.nix
soil
spec
stdlib
test
testdata
tools
trees
uninstall
vendor
web
yaks
ysh
x: mystdin
PS1=osh-0.27$
0 /home/uke/oil
ome/uke/oil/_tmp/soil/logs/headless.txt
l-wx------ 1 uke uke 64 Feb 24 11:34 2 -> /home/uke/oil/_tmp/soil/logs/headless.txt
l-wx------ 1 uke uke 64 Feb 24 11:34 3 -> /home/uke/oil/_tmp/soil/INDEX.tsv
lrwx------ 1 uke uke 64 Feb 24 11:34 4 -> socket:[36579]
[headless_demo.py] stdout_fd = 6
child/server (PID 6761)
total 0
lrwx------ 1 uke uke 64 Feb 24 11:34 0 -> socket:[36580]
lrwx------ 1 uke uke 64 Feb 24 11:34 1 -> socket:[36580]
l-wx------ 1 uke uke 64 Feb 24 11:34 2 -> /home/uke/oil/_tmp/soil/logs/headless.txt
l-wx------ 1 uke uke 64 Feb 24 11:34 3 -> /home/uke/oil/_tmp/soil/INDEX.tsv
[FANOS] Connect stdin and stdout to one end of socketpair() and send control messages.  osh writes debug messages (like this one) to stderr.
[FANOS] received blob 'GETPID'
[headless_demo.py] reply b'OK 6761'
[FANOS] received blob 'EVAL echo hi'
[FANOS] received descriptor 7
[FANOS] received descriptor 8
[FANOS] received descriptor 9
[headless_demo.py] reply b'OK '
[FANOS] received blob 'EVAL echo !!'
[FANOS] received descriptor 7
[FANOS] received descriptor 8
[FANOS] received descriptor 9
[headless_demo.py] reply b'OK '
[FANOS] received blob 'EVAL echo one\necho two\necho three\n'
[FANOS] received descriptor 7
[FANOS] received descriptor 8
[FANOS] received descriptor 9
[headless_demo.py] reply b'OK '
[FANOS] received blob 'EVAL echo 1;\necho 2;\necho 3\n'
[FANOS] received descriptor 7
[FANOS] received descriptor 8
[FANOS] received descriptor 9
[headless_demo.py] reply b'OK '
[FANOS] received blob 'EVAL ( \necho subshell\n)\n'
[FANOS] received descriptor 7
[FANOS] received descriptor 8
[FANOS] received descriptor 9
[headless_demo.py] reply b'OK '
[FANOS] received blob 'EVAL ls --color=auto'
[FANOS] received descriptor 7
[FANOS] received descriptor 8
[FANOS] received descriptor 9
[headless_demo.py] reply b'OK '
[FANOS] received blob 'EVAL read x'
[FANOS] received descriptor 7
[FANOS] received descriptor 8
[FANOS] received descriptor 9
[headless_demo.py] reply b'OK '
[FANOS] received blob 'EVAL echo "x: $x"'
[FANOS] received descriptor 7
[FANOS] received descriptor 8
[FANOS] received descriptor 9
[headless_demo.py] reply b'OK '
[FANOS] received blob 'EVAL ('
[FANOS] received descriptor 7
[FANOS] received descriptor 8
[FANOS] received descriptor 9
[headless_demo.py] reply b'OK '
[FANOS] received blob 'EVAL zzZZ'
[FANOS] received descriptor 7
[FANOS] received descriptor 8
[FANOS] received descriptor 9
[headless_demo.py] reply b'OK '
[FANOS] received blob 'EVAL declare -X'
[FANOS] received descriptor 7
[FANOS] received descriptor 8
[FANOS] received descriptor 9
[headless_demo.py] reply b'OK '
[FANOS] received blob 'EVAL echo PS1=${PS1@P}'
[FANOS] received descriptor 7
[FANOS] received descriptor 8
[FANOS] received descriptor 9
[headless_demo.py] reply b'OK '
[FANOS] received blob 'EVAL echo $? $PWD'
[FANOS] received descriptor 7
[FANOS] received descriptor 8
[FANOS] received descriptor 9
[headless_demo.py] reply b'OK '
[FANOS] received blob 'EVAL break'
[FANOS] received descriptor 7
[FANOS] received descriptor 8
[FANOS] received descriptor 9
[headless_demo.py] reply b'OK '
[FANOS] received blob 'EVAL continue'
[FANOS] received descriptor 7
[FANOS] received descriptor 8
[FANOS] received descriptor 9
[headless_demo.py] reply b'OK '
[FANOS] received blob 'EVAL return'
[FANOS] received descriptor 7
[FANOS] received descriptor 8
[FANOS] received descriptor 9
[headless_demo.py] reply b'OK '
[FANOS] received blob 'EVAL exit'
[FANOS] received descriptor 7
[FANOS] received descriptor 8
[FANOS] received descriptor 9
[headless_demo.py] reply None

parent/client BEFORE (PID 6770)
total 0
lr-x------ 1 uke uke 64 Feb 24 11:34 0 -> /dev/null
l-wx------ 1 uke uke 64 Feb 24 11:34 1 -> /home/uke/oil/_tmp/soil/logs/headless.txt
l-wx------ 1 uke uke 64 Feb 24 11:34 2 -> /home/uke/oil/_tmp/soil/logs/headless.txt
l-wx------ 1 uke uke 64 Feb 24 11:34 3 -> /home/uke/oil/_tmp/soil/INDEX.tsv
lrwx------ 1 uke uke 64 Feb 24 11:34 4 -> socket:[37166]
lrwx------ 1 uke uke 64 Feb 24 11:34 5 -> socket:[37167]
parent/client AFTER (PID 6770)
total 0
lr-x------ 1 uke uke 64 Feb 24 11:34 0 -> /dev/null
l-wx------ 1 uke uke 64 Feb 24 11:34 1 -> /home/uke/oil/_tmp/soil/logs/headless.txt
l-wx------ 1 uke uke 64 Feb 24 11:34 2 -> /home/uke/oil/_tmp/soil/logs/headless.txt
l-wx------ 1 uke uke 64 Feb 24 11:34 3 -> /home/uke/oil/_tmp/soil/INDEX.tsv
lrwx------ 1 uke uke 64 Feb 24 11:34 4 -> socket:[37166]
[headless_demo.py] stdout_fd = 6
child/server (PID 6773)
total 0
lrwx------ 1 uke uke 64 Feb 24 11:34 0 -> socket:[37167]
lrwx------ 1 uke uke 64 Feb 24 11:34 1 -> socket:[37167]
l-wx------ 1 uke uke 64 Feb 24 11:34 2 -> /home/uke/oil/_tmp/soil/logs/headless.txt
l-wx------ 1 uke uke 64 Feb 24 11:34 3 -> /home/uke/oil/_tmp/soil/INDEX.tsv
[FANOS] Connect stdin and stdout to one end of socketpair() and send control messages.  osh writes debug messages (like this one) to stderr.
[FANOS] protocol error: Expected netstring length
[headless_demo.py] reply b'ERROR Expected netstring length'
status=1
parent/client BEFORE (PID 6780)
total 0
lr-x------ 1 uke uke 64 Feb 24 11:34 0 -> /dev/null
l-wx------ 1 uke uke 64 Feb 24 11:34 1 -> /home/uke/oil/_tmp/soil/logs/headless.txt
l-wx------ 1 uke uke 64 Feb 24 11:34 2 -> /home/uke/oil/_tmp/soil/logs/headless.txt
l-wx------ 1 uke uke 64 Feb 24 11:34 3 -> /home/uke/oil/_tmp/soil/INDEX.tsv
lrwx------ 1 uke uke 64 Feb 24 11:34 4 -> socket:[37168]
lrwx------ 1 uke uke 64 Feb 24 11:34 5 -> socket:[37169]
parent/client AFTER (PID 6780)
total 0
lr-x------ 1 uke uke 64 Feb 24 11:34 0 -> /dev/null
l-wx------ 1 uke uke 64 Feb 24 11:34 1 -> /home/uke/oil/_tmp/soil/logs/headless.txt
l-wx------ 1 uke uke 64 Feb 24 11:34 2 -> /home/uke/oil/_tmp/soil/logs/headless.txt
l-wx------ 1 uke uke 64 Feb 24 11:34 3 -> /home/uke/oil/_tmp/soil/INDEX.tsv
lrwx------ 1 uke uke 64 Feb 24 11:34 4 -> socket:[37168]
[headless_demo.py] stdout_fd = 6
child/server (PID 6783)
total 0
lrwx------ 1 uke uke 64 Feb 24 11:34 0 -> socket:[37169]
lrwx------ 1 uke uke 64 Feb 24 11:34 1 -> socket:[37169]
l-wx------ 1 uke uke 64 Feb 24 11:34 2 -> /home/uke/oil/_tmp/soil/logs/headless.txt
l-wx------ 1 uke uke 64 Feb 24 11:34 3 -> /home/uke/oil/_tmp/soil/INDEX.tsv
[FANOS] Connect stdin and stdout to one end of socketpair() and send control messages.  osh writes debug messages (like this one) to stderr.
[FANOS] received blob 'foo'
[FANOS] Invalid command 'foo'
[headless_demo.py] reply b"ERROR Invalid command 'foo'"
status=1
parent/client BEFORE (PID 6790)
total 0
lr-x------ 1 uke uke 64 Feb 24 11:34 0 -> /dev/null
l-wx------ 1 uke uke 64 Feb 24 11:34 1 -> /home/uke/oil/_tmp/soil/logs/headless.txt
l-wx------ 1 uke uke 64 Feb 24 11:34 2 -> /home/uke/oil/_tmp/soil/logs/headless.txt
l-wx------ 1 uke uke 64 Feb 24 11:34 3 -> /home/uke/oil/_tmp/soil/INDEX.tsv
lrwx------ 1 uke uke 64 Feb 24 11:34 4 -> socket:[37170]
lrwx------ 1 uke uke 64 Feb 24 11:34 5 -> socket:[37171]
parent/client AFTER (PID 6790)
total 0
lr-x------ 1 uke uke 64 Feb 24 11:34 0 -> /dev/null
l-wx------ 1 uke uke 64 Feb 24 11:34 1 -> /home/uke/oil/_tmp/soil/logs/headless.txt
l-wx------ 1 uke uke 64 Feb 24 11:34 2 -> /home/uke/oil/_tmp/soil/logs/headless.txt
l-wx------ 1 uke uke 64 Feb 24 11:34 3 -> /home/uke/oil/_tmp/soil/INDEX.tsv
lrwx------ 1 uke uke 64 Feb 24 11:34 4 -> socket:[37170]
[headless_demo.py] stdout_fd = 6
child/server (PID 6793)
total 0
lrwx------ 1 uke uke 64 Feb 24 11:34 0 -> socket:[37171]
lrwx------ 1 uke uke 64 Feb 24 11:34 1 -> socket:[37171]
l-wx------ 1 uke uke 64 Feb 24 11:34 2 -> /home/uke/oil/_tmp/soil/logs/headless.txt
l-wx------ 1 uke uke 64 Feb 24 11:34 3 -> /home/uke/oil/_tmp/soil/INDEX.tsv
[FANOS] Connect stdin and stdout to one end of socketpair() and send control messages.  osh writes debug messages (like this one) to stderr.
[FANOS] received blob 'ECMD'
[FANOS] Invalid command 'ECMD'
[headless_demo.py] reply b"ERROR Invalid command 'ECMD'"
status=1