Derrick Stolee <stolee@xxxxxxxxx> writes: > Hm. That is a good point. Can we assume that our version of grep has > a "-F" or "--fixed-strings" option? ([1] seems to say that "-F" would > work.) $ git grep "grep -F" -- \*.sh is your friend ;-) And never use https://www.gnu.org/ manual as a yardstick---you will end up using GNUism that is not unavailable elsewhere pretty easily. > [1] https://www.gnu.org/savannah-checkouts/gnu/grep/manual/grep.html#index-grep-programs > >> What are these stripping of ", and " about? Could you tell readers >> how a typical output from the program we are reading from looks like >> perhaps in the log message or in-code comment around here? > > Watchman outputs its list of paths in JSON format. Luckily, it formats > the output so the path lines are on separate lines, each quoted. > > For example: > > { > "version": "4.9.0", > "roots": [ > "<path1>", > "<path2>", > "<path3>" > ] > } Yeek; how is a dq in path represented? by doubling? by backslash-quoting (if so how is a backslash in path represented)? By something else? It's OK at least for now to declare that our test repository does not contain any funny paths, but in the longer run does the above mean that we somehow need to be able to grok JSON reliably in our tests? It may not be such a bad thing especially for longer term, as there are other parts of the system that may benefit from having JSON capable output readers in our tests (e.g. trace2 code can do JSON, right?)..