Archive | Mercurial RSS for this section

Fixing an SSLv3 Error Connecting to Bitbucket from SourceTree with Mercurial

I started receiving an SSLv3 Handshake error message when using SourceTree to synchronize a Mercurial repository to Bitbucket. In this post, I’ll show how the issue can be resolved.

The Error

The error message is a bit cryptic:

abort:error:_ssl.c:504:error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure

SourceTree SSL Error

The Cause

Atlassian’s Head of Security announced that they removed SSL V3 support from cloud platforms due to the POODLE vulnerability.

Earlier versions of Mercurial used SSL V3.0 and are now failing when connecting to Bitbucket as a result.

The Solution

My SourceTree application is up-to-date, but that doesn’t take care of the problem. The issue is that the underlying version of Mercurial needed to be updated.

Fortunately, the solution is an easy one.

You can check the version of Mercurial being used by SourceTree by selecting Tools > Options and then clicking on the Mercurial tab.

SourceTree - Mercurial version - Before

In my configuration, SourceTree is set up to use the system version of Mercurial, which was at version 2.7.1. I switched to the embedded version and ran the update via the button on the right of the screen, but the embedded version was only updated to Mercurial 2.6.1.

Ultimately, I had to download the latest version of Mercurial from Selenic’s site.

After I ran the installation, the problem was fixed.

SourceTree - Mercurial Version - After