Skip to content

gh-136728: Refactor build.yml CI config and multissltests.py #136729

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 12 commits into
base: main
Choose a base branch
from
Open
Prev Previous commit
Next Next commit
Adjust compatibility comment
  • Loading branch information
WillChilds-Klein committed Jul 16, 2025
commit 1a90e0c3414f9c77607658e5a9c5450ea3de05d9
3 changes: 2 additions & 1 deletion Tools/ssl/multissltests.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@
search paths for header files and shared libraries. It's known to work on
Linux with GCC and clang.

Please keep this script compatible with Python 2.7, and 3.4 to 3.7.
Please keep this script compatible with all currently-maintained Python
versions.
Comment on lines +21 to +22
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we care about Python 3.9 at this point? Frequently for in-tree tools we use python_for_regen as the base version, or the previous stable release (e.g. 3.12 at present).

Copy link
Member

@picnixz picnixz Aug 5, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, we care because of security branches I'd say. Also, there are still distros with Pyhton 3.9 as its default I think (I mean, my default Python in OpenSUSE was Python 3.6!). But generally, it's to limit to "simple" Python when possible.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

True, but e.g. for backports to 3.9 we would run against the version of Tools/ssl/multissltests.py in the 3.9 branch? We should add a comment explaining why we care about all non EOL versions, though.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

True, but e.g. for backports to 3.9 we would run against the version of Tools/ssl/multissltests.py in the 3.9 branch?

That's... a good question. I would have said "yes", but now I'm not entirely sure. Maybe not?

Copy link
Member

@picnixz picnixz Aug 5, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah actually, we do:

    def run_python_tests(self, tests, network=True):
        if not tests:
            cmd = [
                sys.executable,
                os.path.join(PYTHONROOT, 'Lib/test/ssltests.py'),
                '-j0'
            ]
        elif sys.version_info < (3, 3):
            cmd = [sys.executable, '-m', 'test.regrtest']
        else:
            cmd = [sys.executable, '-m', 'test', '-j0']
        if network:
            cmd.extend(['-u', 'network', '-u', 'urlfetch'])
        cmd.extend(['-w', '-r'])
        cmd.extend(tests)
self._subprocess_call(cmd, stdout=None)

So for executing the tests, we're really re-using the python interpreter that was used to generate the scripts, so we need to run the tests against the correct interpreter version.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@WillChilds-Klein could you update run_python_tests() in this PR to remove the 3.3 block & use long options to regrtest? -w -> --rerun & -r -> --randomize


(c) 2013-2017 Christian Heimes <christian@python.org>
"""
Expand Down
Loading
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy