Mercurial 5.0 release

This is an overview of the 5.0 release.

1. Security Fixes

2. New Features

2.1. Updated Windows Installers

Windows installer packaging has been transitioned away from ad-hoc processes employed on individual contributors' personal machines to occurring in reproducible infrastructure driven by code in the Mercurial repository itself. This transition should enable Windows packaging and releasing to be more reliable and reproducible.

As part of this transition, there are changes to the Windows installers.

2.1.1. Inno Setup .exe Installer Changes

* Python has been upgraded from 2.7.15 to 2.7.16 * add_path.exe has been removed and the Inno installer now updates PATH via a Pascal script that is part of the installer * The dulwich package has been upgraded from version 0.18.3 to 0.19.11 * The keyring package has been upgraded to version 18.0.0 * The pygments package has been upgraded to version 2.3.1 * The urllib3 package is now included * The MSVC Runtime DLLs (msvcm90.dll, msvcp90.dll, and msvcr90.dll) have been upgraded from version 9.0.21022.8 to 9.0.30729.9518 * Various tcl/tk Python packages are now included (making the Python distribution more complete) * The pywin32 package is no longer included (pywin32 has not been required by Mercurial for years) * Known issue: the distutils package is broken

3. New Experimental Features

4. Other Notable Features

5. Bug Fixes

6. Backwards Compatibility Changes

7. Internal API Changes