classification
Title: socket.SO_PRIORITY is missing
Type: enhancement Stage: resolved
Components: Tests Versions: Python 3.5
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: Nosy List: Claudiu.Popa, Sworddragon, haypo, larry, python-dev, r.david.murray, vajrasky
Priority: normal Keywords: easy, patch

Created on 2013-11-26 17:06 by Sworddragon, last changed 2013-11-27 15:19 by python-dev. This issue is now closed.

Files
File name Uploaded Description Edit
socket.patch Claudiu.Popa, 2013-11-26 17:59 review
Messages (8)
msg204506 - (view) Author: (Sworddragon) Date: 2013-11-26 17:06
socket(7) does contain SO_PRIORITY but trying to use this value will result in this error: AttributeError: 'module' object has no attribute 'SO_PRIORITY'
msg204509 - (view) Author: R. David Murray (r.david.murray) * (Python committer) Date: 2013-11-26 17:35
For the record, a little googling indicates this may be a linux-only option (FreeBSD 6.4, for example, does not support it, nor does OS X 10.8, which are two systems to which I currently have access).  That doesn't mean it shouldn't be added.
msg204511 - (view) Author: Claudiu Popa (Claudiu.Popa) * Date: 2013-11-26 17:59
Here's a simple patch which adds this flag. It has no tests, because I noticed that there are no tests for per-platform flags in test_socket.py (only for CAN, RDS and general flags).
msg204512 - (view) Author: R. David Murray (r.david.murray) * (Python committer) Date: 2013-11-26 18:08
Yeah, I'm not sure how you'd write a test in such a way that it would test anything meaningful.  Parse the .h file in the test?  Seems like overkill.
msg204547 - (view) Author: Vajrasky Kok (vajrasky) * Date: 2013-11-27 02:13
I agree. The test is not that meaningful. But hey, we have the test that tests this kind of constant.

http://hg.python.org/cpython/rev/513da56d28de
msg204586 - (view) Author: STINNER Victor (haypo) * (Python committer) Date: 2013-11-27 14:20
You should also modify Doc/library/socket.rst to mention the new constant in the documentation (don't forget the ".. versionadded::" flag).

Adding a new constant cannot break anything in Python, so I propose to it in Python 3.4.

@Larry (our release manager): Do you agree?
msg204593 - (view) Author: Larry Hastings (larry) * (Python committer) Date: 2013-11-27 14:58
It's *possible* but I'm willing to risk it.  You have my permission to apply that patch.
msg204598 - (view) Author: Roundup Robot (python-dev) Date: 2013-11-27 15:19
New changeset 9bbada125b3f by Benjamin Peterson in branch 'default':
add SO_PRIORITY (closes #19802)
http://hg.python.org/cpython/rev/9bbada125b3f
History
Date User Action Args
2013-11-27 15:19:44python-devsetstatus: open -> closed

nosy: + python-dev
messages: + msg204598

resolution: fixed
stage: resolved
2013-11-27 14:58:38larrysetmessages: + msg204593
2013-11-27 14:20:44hayposetnosy: + larry
messages: + msg204586
2013-11-27 13:46:19pitrousetnosy: + haypo
2013-11-27 02:13:47vajraskysetnosy: + vajrasky
messages: + msg204547
2013-11-26 18:08:45r.david.murraysetmessages: + msg204512
2013-11-26 17:59:43Claudiu.Popasetfiles: + socket.patch

nosy: + Claudiu.Popa
messages: + msg204511

keywords: + patch
2013-11-26 17:35:14r.david.murraysetnosy: + r.david.murray
messages: + msg204509

components: + Tests, - Library (Lib)
type: behavior -> enhancement
2013-11-26 17:21:01benjamin.petersonsetkeywords: + easy
versions: + Python 3.5, - Python 2.7, Python 3.3
2013-11-26 17:06:19Sworddragoncreate