[issue41149] Threads can fail to start

2021-02-02 Thread Pablo Galindo Salgado


Change by Pablo Galindo Salgado :


--
resolution:  -> fixed
stage: patch review -> resolved
status: open -> closed

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41149] Threads can fail to start

2021-02-02 Thread Pablo Galindo Salgado


Pablo Galindo Salgado  added the comment:


New changeset 01c4fddc4b2ac707f226e0bd92679588d2252cc4 by BarneyStratford in 
branch 'master':
bpo-41149: Fix a bug in threading that causes fals-y threads callables to fail 
to start. (GH-21201)
https://github.com/python/cpython/commit/01c4fddc4b2ac707f226e0bd92679588d2252cc4


--
nosy: +pablogsal

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41149] Threads can fail to start

2020-06-28 Thread Roundup Robot


Change by Roundup Robot :


--
keywords: +patch
nosy: +python-dev
nosy_count: 1.0 -> 2.0
pull_requests: +20356
stage:  -> patch review
pull_request: https://github.com/python/cpython/pull/21201

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue41149] Threads can fail to start

2020-06-28 Thread Barney Stratford


New submission from Barney Stratford :

>>> import threading
>>> class foo (object):
... def __bool__ (self):
... return False
... def __call__ (self):
... print ("Running")
...
>>> threading.Thread (target = foo ()).start ()

The expected result of these commands would be for the thread to print
"Running". However, in actual fact it prints nothing at all. This is
because threading.Thread.run only runs the target if it is True as a
boolean. This is presumably to make the thread do nothing at all if
the target is None. In this case, I have a legitimate target that is
False as a boolean.

I propose to remove the test altogether. The effect of this is that
failure to set the target of the thread, or setting a non-callable
target, will cause the thread to raise a TypeError as soon as it is
started. Forgetting to set the target is in almost every case a bug,
and bugs should never be silent.

PR to follow.

--
components: Library (Lib)
messages: 372521
nosy: BarneyStratford
priority: normal
severity: normal
status: open
title: Threads can fail to start
type: behavior
versions: Python 3.10

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com