park v1.1.0: syncing between machines
Park support sync now, so you can totally use it as a private decentralised issue tracker.
It keeps parked work context in a SQLite database, and until now the way to use it on two machines was to point PARK_DB at a synced folder, this can cause corruption: SQLite writes a database as several files that have to stay in step, a syncer copies them one at a time, and eventually you get a half-copied set that will not open at all.
So park no longer shares the database. Each machine appends its changes to its own <hostname>.jsonl in the shared folder, reads every log it finds, and folds them into a local database that you can delete and rebuild whenever you like. No file has two writers, so there is nothing for the syncer to get wrong.
Two environment variables and a one-time seed:
export PARK_DB="$HOME/.local/share/park/park.db"
export PARK_SYNC_DIR="$HOME/sync/park"
park sync-seed --i-understand-this-runs-once
then park rebuild --yes on your other machines.
Also in this one: park serve reads a snapshot rather than holding the database open, search indexing stopped rebuilding the whole index on every write, and park version exists.