+* bkgpslog task list
+** DONE Add job control for short buffer length
+ CLOSED: [2020-07-02 Thu 16:04]
+2020-07-02T14:56Z; bktei> File write operations were bundled into a
+magicWriteBuffer function that is called then detached from the script
+shell (job control), but the detached job is not tracked by the main
+script. A problem may arise if two instances of magicWriteBuffer
+attempt to write to the same tar simultaneously. Two instances of
+magicWriteBuffer may exist if the buffer length is low (ex: 1 second);
+the default buffer length of 60 seconds should reduce the probability
+of a collision but it should be possible for the main script to track
+the process ID of a magicWriteBuffer() as soon as it detaches and then
+checking (via ~$!~ as described [[https://bashitout.com/2013/05/18/Ampersands-on-the-command-line.html][here]]) that the process is still alive.
+2020-07-02T15:23Z; bktei> I found that the Bash ~wait~ built-in can be
+used to delay processing until a specified job completes. The ~wait~
+command will pause script execution until all backgrounded processes
+complete.
+2020-07-02T16:03Z; bktei> Added ~wait~.
+** DONE Rewrite tar initialization function
+ CLOSED: [2020-07-02 Thu 17:23]
+2020-07-02T17:23Z; bktei> Simplify tar initialization function so
+VERSION file is used to test appendability of tar as well as to mark
+when a new session is started.
+** DONE Consolidate tar checking/creation into function
+ CLOSED: [2020-07-02 Thu 18:33]
+2020-07-02T18:33Z; bktei> Simplify how the output tar file's existence
+is checked and its status as a valid tar file is validated. This was
+done using a new function ~checkMakeTar~.
+** DONE Add VERSION if output tar deleted between writes
+
+ CLOSED: [2020-07-02 Thu 20:22]
+2020-07-02T20:21Z; bktei> Added bkgpslog-specified function
+magicWriteVersion() to be called whenever a new time-stamped ~VERSION~
+file needs to be generated and appended to the output tar file
+~PATHOUT_TAR~.
+** TODO Rewrite buffer loop to reduce lag between gpspipe runs
+2020-07-03T17:10Z; bktei> As is, there is still a 5-6 second lag
+between when ~gpspipe~ times out at the end of a buffer round and when
+~gpspipe~ is called by the subsequent buffer round. I believe this can
+be reduced by moving variable manipulations inside the
+asynchronously-executed magicWriteBuffer() function. Ideally, the
+while loop should look like:
+
+#+BEGIN_EXAMPLE
+while( $SECONDS < $SCRIPT_TTL); do
+ gpspipe-r > "$DIR_TMP"/buffer.nmea
+ writeBuffer &
+done
+#+END_EXAMPLE
+
* bkgpslog narrative
** Initialize environment
*** Init variables