This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: regression: BaseEventLoop.create_server does not accept port=None
Type: behavior Stage: resolved
Components: asyncio Versions: Python 3.4, Python 3.5
process
Status: closed Resolution: out of date
Dependencies: Superseder:
Assigned To: Nosy List: berker.peksag, gvanrossum, mcobden, vstinner, yselivanov
Priority: normal Keywords:

Created on 2016-06-29 14:46 by mcobden, last changed 2022-04-11 14:58 by admin. This issue is now closed.

Messages (6)
msg269507 - (view) Author: Marcus Cobden (mcobden) Date: 2016-06-29 14:46
With the most recent 3.4 bugfix, calling create_server with port=None stopped working.
This also affects 3.5, and I would imagine also 3.6, but haven't checked that.

Test case:

import asyncio; l = asyncio.get_event_loop(); l.run_until_complete(l.create_server(lambda: None, host='0.0.0.0', port=None))

Expected result: a socket object
Broken result: "TypeError: an integer is required (got type NoneType)"
msg269619 - (view) Author: Marcus Cobden (mcobden) Date: 2016-06-30 19:12
I should add that port=0 is an acceptable workaround
msg276627 - (view) Author: Yury Selivanov (yselivanov) * (Python committer) Date: 2016-09-15 21:49
Looks like this is fixed now.
msg276690 - (view) Author: Marcus Cobden (mcobden) Date: 2016-09-16 10:25
Still doesn't work in Python 3.4.5; I can confirm it's fixed in Python 3.5.2.
msg276691 - (view) Author: Berker Peksag (berker.peksag) * (Python committer) Date: 2016-09-16 10:37
3.4 is in security-fix-only mode so it doesn't get bugfix updates anymore.
msg276692 - (view) Author: Marcus Cobden (mcobden) Date: 2016-09-16 10:43
Ah thanks, that's fair.
It seems a shame since this regression was introduced to 3.4 by a security/bugfix release.
Since there's a workaround it's not a big deal.
History
Date User Action Args
2022-04-11 14:58:33adminsetgithub: 71602
2016-09-16 10:43:58mcobdensetmessages: + msg276692
2016-09-16 10:37:57berker.peksagsetstatus: open -> closed
versions: + Python 3.5
nosy: + berker.peksag

messages: + msg276691

resolution: out of date
2016-09-16 10:25:51mcobdensetstatus: closed -> open
resolution: works for me -> (no value)
messages: + msg276690

versions: - Python 3.5
2016-09-15 21:49:05yselivanovsetstatus: open -> closed
resolution: works for me
messages: + msg276627

stage: resolved
2016-07-12 19:34:27mcobdensettitle: BaseEventLoop.create_server does not accept port=None -> regression: BaseEventLoop.create_server does not accept port=None
2016-06-30 19:12:25mcobdensettype: behavior
messages: + msg269619
2016-06-29 14:46:01mcobdencreate