shelve: drop pickle usage
Pickle was used to the `shelvedstate` file. However the content of the file is
very simple and we can handle serialisation ourself. Not using pickle is a net
win.
Note incrementing the format version as no releases have been done so far.
$ "$TESTDIR/hghave" inotify || exit 80
$ hg init
$ echo "[extensions]" >> $HGRCPATH
$ echo "inotify=" >> $HGRCPATH
inserve
$ hg inserve -d --pid-file=hg.pid
$ cat hg.pid >> "$DAEMON_PIDS"
let the daemon finish its stuff
$ sleep 1
empty
$ hg debuginotify
directories being watched:
/
.hg/
$ mkdir a
$ sleep 1
only 'a
$ hg debuginotify
directories being watched:
/
.hg/
a/
$ rmdir a
$ sleep 1
empty again
$ hg debuginotify
directories being watched:
/
.hg/
$ "$TESTDIR/killdaemons.py" hg.pid