prune: wrap mercurial internal to add parent information in prune marker
We store as a p1 (and p2) key in the extra dict for marker. This allow us to
record this information for future use without requiering a format change.
$ fastobs="$TESTDIR"/../hgfastobs.py
$ echo 'from mercurial import obsolete ; obsolete._enabled = True' > enableobs.py
$ cat >> $HGRCPATH <<EOF
> [obsolete]
> syncstrategy = boxfill
> [extensions]
> EOF
$ echo "enable-obsolete = $PWD/enableobs.py" >> $HGRCPATH
$ echo "fastobs = $fastobs" >> $HGRCPATH
$ hg init alice
$ hg init bob
$ hg init trent
$ cd alice
$ echo a > a
$ hg addr && hg ci -m 'add a'
adding a
$ echo aa >> a
$ hg ci -m 'edit a'
$ echo aa > a
$ hg ci --amend -m 'edit a'
$ hg debugobsolete
e772e827cd64564621e7e5af15c9f848e3b92c8e efa8cd969bc37e6a1330c29f4234fe9e9be681b3 0 {'date': '* 0', 'user': 'test'} (glob)
5ccfcbc00f2a19cd7affedce5ff087e68e67c6cc 0 {'date': '* 0', 'user': 'test'} (glob)
$ hg push ../trent
pushing to ../trent
searching for changes
adding changesets
adding manifests
adding file changes
added 2 changesets with 2 changes to 1 files
boxpush: about to transmit 2 obsolete markers (2 markers total)
$ cd ../bob
$ hg pull ../trent
pulling from ../trent
requesting all changes
adding changesets
adding manifests
adding file changes
added 2 changesets with 2 changes to 1 files
(run 'hg update' to get a working copy)
$ hg debugobsolete | sort
5ccfcbc00f2a19cd7affedce5ff087e68e67c6cc 0 {'date': '* 0', 'user': 'test'} (glob)
e772e827cd64564621e7e5af15c9f848e3b92c8e efa8cd969bc37e6a1330c29f4234fe9e9be681b3 0 {'date': '* 0', 'user': 'test'} (glob)