Compatibility Rules

Mercurial has been used in production by major software projects since a couple months after its initial release. Thus, Mercurial has always made a serious effort to be backward compatible from release to release with a minimum of surprises. Here's an attempt to distill what our rules are:

0.1. File formats and layout:

0.2. Commands:

0.3. Hooks:

0.4. Wire protocol:

0.5. Web interface:

0.6. Internal API: