dirstate: better error messages when dirstate is corrupted
The current error message "Overflow in dirstate" sounds confusing
because it suggests either a certain size limit that's being exceeded,
or integer arithmetic overflowing. The reality is just a file being shorter
than expected.
stream-clone: support streamv3 on the cli [hg bundle]
We add support and test for this. The support is still experimental, so the
various name and identifier will eventually need to be renamed when stream-v3
gets out of experimental.
stream-clone: add the `-exp` prefix to the bundle part
We forget to do so in
58adcabc295f, however this is important to prevent
"current" client to send incompatible version to future client.
zstd: hack include order to ensure that our zstd.h is found
If the regular Python CFLAGS include directories that already have the
zstd headers available, a different and possible incompatible version
can be picked up otherwise. Sadly, it seems like Python has no easy way
to prefix flags before the rest.
exchange: allow passing no includes/excludes to `pull()`
I would expect that `exchange.pull(includepats=[])` results in an empty list of
include patterns to be passed to the remote, but it doesn't currently because we
check for any truthy value instead of checking specifically for `not None`.
stabletailgraph: add test cases challenging the open merge stack
This adds three more complex test cases with situations requiring tricky
state update in the stack-based iteration (arriving soon).
stabletailgraph: naive version of leap computation
This adds a naive reference implementation of the computation of leap and
specific leap sets (described in the code documentation).
The existing tests are enriched accordingly.