Skip to content

3.14.0-5: Support building against OpenSSL 4#3463

Merged
native-api merged 2 commits into
pyenv:masterfrom
native-api:3.14_openssl_4_r2
May 31, 2026
Merged

3.14.0-5: Support building against OpenSSL 4#3463
native-api merged 2 commits into
pyenv:masterfrom
native-api:3.14_openssl_4_r2

Conversation

@native-api

@native-api native-api commented May 30, 2026

Copy link
Copy Markdown
Member

Make sure you have checked all steps below.

Prerequisite

  • Please consider implementing the feature as a hook script or plugin as a first step.
    • pyenv has some powerful support for plugins and hook scripts. Please refer to Authoring plugins for details and try to implement it as a plugin if possible.
  • Please consider contributing the patch upstream to rbenv, since we have borrowed most of the code from that project.
    • We occasionally import the changes from rbenv. In general, you can expect changes made in rbenv will be imported to pyenv too, eventually.
    • Generally speaking, we prefer not to make changes in the core in order to keep compatibility with rbenv.
  • My PR addresses the following pyenv issue (if any)
    • N/A

Description

  • Here are some details about my PR

As per python/cpython#148600 (comment), CPython devs have prepared a backport to 3.14 but did not apply it yet.

Tests

  • My PR adds the following unit tests (if any)
    N/A

Summary by cubic

Add OpenSSL 4 build support for Python 3.14.0–3.14.5 in python-build. Lets pyenv build 3.14.x against openssl@4 on macOS and MacPorts, while still defaulting to openssl@3 with fallbacks.

  • New Features

    • Added prefer_openssl3_to_4 to set selection order: openssl@3, openssl@4, openssl@1.1, openssl (openssl3, openssl4, openssl, openssl11 on MacPorts).
    • Updated 3.14.0–3.14.5 definitions to use prefer_openssl3_to_4.
    • Backported CPython patches: ASN1_STRING accessor fix (3.14.0) and “Add OpenSSL 4 support” for 3.14.0–3.14.5.
  • Bug Fixes

    • CI: rebuild t-suffixed versions when base patches change.
    • Added patches/3.14.*t markers so t builds apply the same backports.

Written for commit bfc595b. Summary will update on new commits.

Review in cubic

@native-api native-api requested review from a team as code owners May 30, 2026 14:00

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

5 issues found across 14 files

Tip: cubic can generate docs of your entire codebase and keep them up to date. Try it here.

Re-trigger cubic

Comment thread plugins/python-build/share/python-build/3.14.4 Outdated
Comment thread plugins/python-build/share/python-build/3.14.5 Outdated
Comment thread plugins/python-build/share/python-build/3.14.2 Outdated
Comment thread plugins/python-build/share/python-build/3.14.1 Outdated
Comment thread plugins/python-build/share/python-build/3.14.3 Outdated
@native-api native-api force-pushed the 3.14_openssl_4_r2 branch from 9d30a18 to bfc595b Compare May 30, 2026 19:00
@native-api native-api merged commit 23eb9a9 into pyenv:master May 31, 2026
137 checks passed
@native-api native-api deleted the 3.14_openssl_4_r2 branch May 31, 2026 02:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant