classification
Title: PEP 3121, 384 Refactoring applied to ssl module
Type: resource usage Stage: resolved
Components: Extension Modules, SSL Versions: Python 3.8
process
Status: closed Resolution: duplicate
Dependencies: Superseder: Port ssl module to heap types and module state (PEP 573)
View: 42333
Assigned To: Nosy List: Robin.Schreiber, alex, asvetlov, christian.heimes, dstufft, janssen, pitrou, vstinner
Priority: normal Keywords: pep3121

Created on 2012-08-15 14:30 by Robin.Schreiber, last changed 2020-11-19 14:04 by vstinner. This issue is now closed.

Files
File name Uploaded Description Edit
_ssl_pep3121-384_v0.patch Robin.Schreiber, 2012-08-15 14:30
Messages (6)
msg168300 - (view) Author: Robin Schreiber (Robin.Schreiber) * (Python triager) Date: 2012-08-15 14:30
Changes proposed in PEP3121 and PEP384 have now been applied to the ssl module!
msg301617 - (view) Author: Christian Heimes (christian.heimes) * (Python committer) Date: 2017-09-07 19:31
Is anybody interested to port Robin's patch to 3.7?
msg301686 - (view) Author: Andrew Svetlov (asvetlov) * (Python committer) Date: 2017-09-08 08:40
The patch consists from two changes: replacing static vars with module state and using slot based way for constructing classes.

The first change is obvious but I not sure if we need second transformation.
msg301695 - (view) Author: Antoine Pitrou (pitrou) * (Python committer) Date: 2017-09-08 12:05
PyType_FromSpec provides a rather neat way to initialize C extension types.  However, there are a couple of pitfalls to look out for:

https://bugs.python.org/issue16690
https://bugs.python.org/issue26979
msg321540 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2018-07-12 10:52
Honestly, the ssl module is complex, and the conversion to PEP 3121 and PEP 384 are not straighforward, so I removed the "easy (C)" keyword.
msg381418 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2020-11-19 14:04
Marked as a duplicate of bpo-42333.

See also bpo-41111 "Convert a few stdlib extensions to the limited C API (PEP 384)".
History
Date User Action Args
2020-11-19 14:04:14vstinnersetstatus: open -> closed
superseder: Port ssl module to heap types and module state (PEP 573)
messages: + msg381418

resolution: duplicate
stage: needs patch -> resolved
2018-07-12 10:52:06vstinnersetkeywords: - easy (C)
nosy: + vstinner
messages: + msg321540

2018-02-26 08:53:58christian.heimessetversions: + Python 3.8, - Python 3.7
2017-09-08 12:05:43pitrousetnosy: + pitrou
messages: + msg301695
2017-09-08 08:40:07asvetlovsetmessages: + msg301686
2017-09-07 19:31:40christian.heimessetkeywords: + easy (C)
assignee: christian.heimes ->
messages: + msg301617
2016-09-15 08:33:06giampaolo.rodolasetnosy: - giampaolo.rodola
2016-09-15 08:00:56christian.heimessetassignee: christian.heimes
components: + SSL
versions: - Python 3.6
2016-09-08 14:33:07christian.heimessetnosy: + janssen, giampaolo.rodola, christian.heimes, alex, dstufft
stage: needs patch

versions: + Python 3.6, Python 3.7, - Python 3.4
2012-11-08 13:36:58Robin.Schreibersetkeywords: + pep3121, - patch
2012-08-27 03:42:36belopolskylinkissue15787 dependencies
2012-08-17 16:41:04asvetlovsetnosy: + asvetlov
2012-08-15 14:30:29Robin.Schreibercreate