classification
Title: Drop support for dynload_aix
Type: Stage: resolved
Components: Interpreter Core Versions:
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: Nosy List: BTaskaya, David.Edelsohn, Michael.Felt, benjamin.peterson, kadler, pablogsal
Priority: normal Keywords: patch

Created on 2020-10-14 00:08 by kadler, last changed 2020-10-16 18:03 by benjamin.peterson. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 22717 merged kadler, 2020-10-16 02:58
Messages (6)
msg378588 - (view) Author: Kevin (kadler) * Date: 2020-10-14 00:08
Python has supported using dynload_shlib (using dlopen) on AIX since https://github.com/python/cpython/commit/c19c5a62aef7dce0e8147655b0d2f087965fae75 in 2003. While I have not found a definitive timeline of when AIX gained support for dlopen, I have found references going back to at least 2000. Considering this is now 20 years later and all supported AIX versions support dlopen, I suspect nobody has used or tested this code path in quite some time. I propose removing this support under PEP 11.
msg378700 - (view) Author: David Edelsohn (David.Edelsohn) * Date: 2020-10-16 00:44
If Python has been defaulting to dlopen() on AIX systems that support it, there is no reason to maintain the historical, AIX-specific load() support in dynload_aix.c

I believe that dlopen() was introduced on AIX in release 4.3.  The official end of support for AIX 4.3 was 2003, so I doubt there are any customers on extended support, or at least those customers are unlikely to install Python 3.11.
msg378701 - (view) Author: Kevin (kadler) * Date: 2020-10-16 03:06
I've opened a PR to disable support in 3.10 with removal in 3.11 according to the guidelines outline in PEP 11. Given the unlikeliness that anyone is actually still using this feature (and are possibly already broken by a bunch of other things), would it make more sense to do the removal in one go? I do see that systems without multithreading support were both unsupported and removed in 3.7, though I do not know the particulars of why that is the case since most other entries have a 1 version gap.
msg378721 - (view) Author: Benjamin Peterson (benjamin.peterson) * (Python committer) Date: 2020-10-16 17:06
I think we should just axe it.
msg378726 - (view) Author: Kevin (kadler) * Date: 2020-10-16 17:42
Ok, I have updated the PR to remove it completely.
msg378728 - (view) Author: Benjamin Peterson (benjamin.peterson) * (Python committer) Date: 2020-10-16 18:03
New changeset 1dd6d956a3ddf2cf6d4a69241dba8cd1379421b9 by Kevin Adler in branch 'master':
closes bpo-42030: Remove legacy AIX dynload support (GH-22717)
https://github.com/python/cpython/commit/1dd6d956a3ddf2cf6d4a69241dba8cd1379421b9
History
Date User Action Args
2020-10-16 18:03:36benjamin.petersonsetstatus: open -> closed
resolution: fixed
messages: + msg378728

stage: patch review -> resolved
2020-10-16 17:42:52kadlersetmessages: + msg378726
2020-10-16 17:06:47benjamin.petersonsetnosy: + benjamin.peterson
messages: + msg378721
2020-10-16 14:54:08BTaskayasetnosy: + pablogsal, BTaskaya
2020-10-16 03:06:55kadlersetmessages: + msg378701
2020-10-16 02:58:54kadlersetkeywords: + patch
stage: patch review
pull_requests: + pull_request21685
2020-10-16 00:44:00David.Edelsohnsetmessages: + msg378700
2020-10-15 04:26:51methanesetnosy: + Michael.Felt
2020-10-15 04:23:15methanesetnosy: + David.Edelsohn
2020-10-14 00:08:54kadlercreate