MarsSeed: You are correct and we should at least attempt a clean custom build instead of using pip packages. It may however cause even more issues with upstream's specific version requirements because we would then not only get issues with new Python releases but also with new releases of sslyze's dependencies.
There will be a first quick update later today, updating the package and making it work with Python 3.11. A better build process than using pip needs a bit more time and testing.
Update (2023/11/02): I've now looked into this more closely. Building sslyze "properly" is easily possible. However, creating a python-nassl package, which would be a dependency, is not that easy. Nassl still depends on OpenSSL 1.1 (https://github.com/nabla-c0d3/nassl/issues/114) and building against an already installed version of OpenSSL does not seem to be straightforward. So for now, I think sticking to an isolated installation in /opt using pip is the best we can do. If people disagree, I would be interested in concrete proposals for a proper python-nassl package.
Pinned Comments
Bevan commented on 2023-10-09 12:34 (UTC) (edited on 2023-11-02 19:35 (UTC) by Bevan)
MarsSeed: You are correct and we should at least attempt a clean custom build instead of using pip packages. It may however cause even more issues with upstream's specific version requirements because we would then not only get issues with new Python releases but also with new releases of sslyze's dependencies.
There will be a first quick update later today, updating the package and making it work with Python 3.11. A better build process than using pip needs a bit more time and testing.
Update (2023/11/02): I've now looked into this more closely. Building sslyze "properly" is easily possible. However, creating a python-nassl package, which would be a dependency, is not that easy. Nassl still depends on OpenSSL 1.1 (https://github.com/nabla-c0d3/nassl/issues/114) and building against an already installed version of OpenSSL does not seem to be straightforward. So for now, I think sticking to an isolated installation in /opt using pip is the best we can do. If people disagree, I would be interested in concrete proposals for a proper python-nassl package.