[SOLVED] Mercurial broke recently?

A new install of nightly Haiku and the pkgman install of mercurial is no longer working for me. Ie hg clone …. The error in the stack trace is:

  File "/boot/system/lib/python3.10/vendor-packages/mercurial/sslutil.py", line 105, in _hostsettings
    assert supportedprotocols - {b'tls1.0'}

I then try running from source…

So I installed python 3.14 using pkgman:

> python -V
Python 3.14.0

However it doesn’t have ssl?

> python ./get-pip.py 
WARNING: Disabling truststore since ssl support is missing
WARNING: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.

Weird… cause I have openssl 1.1.1 and 3 installed…

AFAIK, openssl 1.x should not be in use for any (up-to-date/rebuilt) package (that version got EOL’ed in 2023).

I’d try first uninstalling openssl 1.1.1, and see if that helps (take notes of any package that gets uninstalled along with that old openssl, if any, we should try rebuilding it against openssl 3.x).

That hasn’t helped. But thanks for trying.

The issue is that Python doesn’t have ssl support anymore:

...however the ssl module in Python is not available.

Seems like it needs to be baked in at the compile stage? Or maybe it’s depending on a dynamic library that’s not loading?

I’m going to try a pkgman full-sync and see if it fixes the issue…

Edit: Oh… yeah well that DID fix it. Fresh install of nightly… and forgot to update it all first.

2 Likes

Specifically updating openssl3 is the fix for this. A full-sync is not totally necessary.

I wonder how hard it is to have the updated package installing by default into the nightly build… hmmm.