All about handling unknown feature in bundle.
Mercurial can store history information into "bundle file" for sharing or backup purpose. The format and feature of these bundle evolve over time in a way that can make new client produce bundle that and older client cannot read.
1. Known Feature
the good old historical format for mercurial bundles
A more extensible bundle format
compression for HG20 bundle
2. Producing Compatible Bundle
You can convert bundle from one format to another using:
cd yourepository/ hg bundle --rev 'bundle()' --base 'parents(roots(bundle()))' -R EXISTINGBUNDLE NEWBUNDLE --type NEWFORMAT
(Yep, this is awful and we should improve that command line ergonomic)
Here is a list of useful type of bundle as in latest Mercurial release. See hg help bundle for details about the --type argument.