First, please keep in mind that in principle, Mercurial is backwards compatible with older versions and older repository layouts. In general, Mercurial tries very hard not to break a repository layout, and if you want to take advantage of newer features, you can do `hg clone --uncompressed`, otherwise your Mercurial should limit itself to features of the repository format from when the repository was created. Unfortunately, occasionally an experimental feature may not be sufficiently forward looking. Obsolete markers was one such experiment. The usual symptom is the error message abort: parsing obsolete marker: unknown version 1 To work around this, you have a couple of options: 1. Upgrade all Mercurial binaries to use a version greater than (??) which doesn't have this bug. 1. Have two repositories, one which is only used by the old mercurial and for which all operations to the other are done via bundles (instead of letting the newer mercurial make the old repository incompatible w/ the older mercurial). 1. Periodically delete the obsstore (located at {{{.hg/store/obsstore}}}) from the old repositories to "fix" the error. To understand this problem technically, you can look at Mercurial as of [[https://www.mercurial-scm.org/repo/hg-all/file/974389427e5f|974389427e5f]][[https://www.mercurial-scm.org/repo/hg-all/file/974389427e5f/mercurial/localrepo.py#l402|localrepo.obstore]] first tries to establish [[https://www.mercurial-scm.org/repo/hg-all/file/974389427e5f/mercurial/obsolete.py#l435|obsolete.obsstore]]() then it checks [[https://www.mercurial-scm.org/repo/hg-all/file/974389427e5f/mercurial/obsolete.py#l82|obsolete._enabled]] Unfortunately, [[https://www.mercurial-scm.org/repo/hg-all/file/974389427e5f/mercurial/obsolete.py#l453|obsolete.obstore.__init__]] calls [[https://www.mercurial-scm.org/repo/hg-all/file/974389427e5f/mercurial/obsolete.py#l374|_readmarkers]], and that calls [[https://www.mercurial-scm.org/repo/hg-all/file/974389427e5f/mercurial/obsolete.py#l380|Abort]]() So, if you use an old version of hg with a repo that isn't officially incompatible with that version of hg, then it may be locked out anyway.