[Django] #21172: have LiveServerThread follow the semantics of threading.Thread.join()

6 views
Skip to first unread message

Django

unread,
Sep 26, 2013, 9:29:27 AM9/26/13
to django-...@googlegroups.com
#21172: have LiveServerThread follow the semantics of threading.Thread.join()
-----------------------------------+--------------------
Reporter: ldd | Owner: nobody
Type: Bug | Status: new
Component: Testing framework | Version: master
Severity: Normal | Keywords:
Triage Stage: Unreviewed | Has patch: 0
Easy pickings: 1 | UI/UX: 0
-----------------------------------+--------------------
File: `django/test/testcases.py`

The semantics of `threading.Thread.join()` are "wait for this thread to
end" and nothing more.

However, `LiveServerThread` redefines these semantics to **first cause
this thread to end** and then wait for this thread to end.

This harms reusability, because someone calling `join()` on this object
would expect the regular semantics and not the Django-specific
redefinition. I've encountered this bug in 1.5 but visual inspection of
`master` shows that at the time of writing this ticket it is present there
too.

--
Ticket URL: <https://code.djangoproject.com/ticket/21172>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

Django

unread,
Oct 2, 2013, 9:25:50 AM10/2/13
to django-...@googlegroups.com
#21172: have LiveServerThread follow the semantics of threading.Thread.join()
-------------------------------------+-------------------------------------
Reporter: ldd | Owner:
Type: Bug | unaizalakain
Component: Testing framework | Status: assigned
Severity: Normal | Version: master
Keywords: | Resolution:
Has patch: 0 | Triage Stage: Accepted
Needs tests: 0 | Needs documentation: 0
Easy pickings: 1 | Patch needs improvement: 0
| UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by unaizalakain):

* status: new => assigned
* cc: unai@… (added)
* needs_better_patch: => 0
* needs_tests: => 0
* owner: nobody => unaizalakain
* needs_docs: => 0
* stage: Unreviewed => Accepted


--
Ticket URL: <https://code.djangoproject.com/ticket/21172#comment:1>

Django

unread,
Oct 2, 2013, 9:26:56 AM10/2/13
to django-...@googlegroups.com
#21172: have LiveServerThread follow the semantics of threading.Thread.join()
-------------------------------------+-------------------------------------
Reporter: ldd | Owner:
Type: Bug | unaizalakain
Component: Testing framework | Status: assigned
Severity: Normal | Version: master
Keywords: live server, test | Resolution:
server, live wsgi | Triage Stage: Accepted
Has patch: 0 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0

Easy pickings: 1 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by unaizalakain):

* keywords: => live server, test server, live wsgi


--
Ticket URL: <https://code.djangoproject.com/ticket/21172#comment:2>

Django

unread,
Oct 2, 2013, 1:38:34 PM10/2/13
to django-...@googlegroups.com
#21172: have LiveServerThread follow the semantics of threading.Thread.join()
-------------------------------------+-------------------------------------
Reporter: ldd | Owner:
Type: Bug | unaizalakain
Component: Testing framework | Status: assigned
Severity: Normal | Version: master
Keywords: live server, test | Resolution:
server, live wsgi | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0

Easy pickings: 1 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by unaizalakain):

* has_patch: 0 => 1


Comment:

Patch: [https://github.com/unaizalakain/django/tree/ticket_21172]

--
Ticket URL: <https://code.djangoproject.com/ticket/21172#comment:3>

Django

unread,
Oct 7, 2013, 6:35:26 PM10/7/13
to django-...@googlegroups.com
#21172: have LiveServerThread follow the semantics of threading.Thread.join()
-------------------------------------+-------------------------------------
Reporter: ldd | Owner:
Type: Bug | unaizalakain
Component: Testing framework | Status: assigned
Severity: Normal | Version: master
Keywords: live server, test | Resolution:
server, live wsgi | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by timo):

* easy: 1 => 0


--
Ticket URL: <https://code.djangoproject.com/ticket/21172#comment:4>

Django

unread,
Oct 14, 2013, 6:46:41 PM10/14/13
to django-...@googlegroups.com
#21172: have LiveServerThread follow the semantics of threading.Thread.join()
-------------------------------------+-------------------------------------
Reporter: ldd | Owner:
Type: Bug | unaizalakain
Component: Testing framework | Status: assigned
Severity: Normal | Version: master
Keywords: live server, test | Resolution:
server, live wsgi | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------

Comment (by unaizalakain):

Pull request: https://github.com/django/django/pull/1743

--
Ticket URL: <https://code.djangoproject.com/ticket/21172#comment:5>

Django

unread,
Oct 19, 2013, 6:54:38 AM10/19/13
to django-...@googlegroups.com
#21172: have LiveServerThread follow the semantics of threading.Thread.join()
-------------------------------------+-------------------------------------
Reporter: ldd | Owner:
Type: Bug | unaizalakain
Component: Testing framework | Status: assigned
Severity: Normal | Version: master
Keywords: live server, test | Resolution:
server, live wsgi | Triage Stage: Ready for
Has patch: 1 | checkin

Needs tests: 0 | Needs documentation: 0
Easy pickings: 0 | Patch needs improvement: 0
| UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by unaizalakain):

* stage: Accepted => Ready for checkin


--
Ticket URL: <https://code.djangoproject.com/ticket/21172#comment:6>

Django

unread,
Oct 22, 2013, 1:55:37 PM10/22/13
to django-...@googlegroups.com
#21172: have LiveServerThread follow the semantics of threading.Thread.join()
-------------------------------------+-------------------------------------
Reporter: ldd | Owner:
Type: Bug | unaizalakain
Component: Testing framework | Status: assigned
Severity: Normal | Version: master
Keywords: live server, test | Resolution:
server, live wsgi | Triage Stage: Accepted
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 0 | UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by unaizalakain):

* stage: Ready for checkin => Accepted


--
Ticket URL: <https://code.djangoproject.com/ticket/21172#comment:7>

Django

unread,
Nov 8, 2013, 11:16:17 PM11/8/13
to django-...@googlegroups.com
#21172: have LiveServerThread follow the semantics of threading.Thread.join()
-------------------------------------+-------------------------------------
Reporter: ldd | Owner:
Type: Bug | unaizalakain
Component: Testing framework | Status: assigned
Severity: Normal | Version: master
Keywords: live server, test | Resolution:
server, live wsgi | Triage Stage: Ready for
Has patch: 1 | checkin
Needs tests: 0 | Needs documentation: 0
Easy pickings: 0 | Patch needs improvement: 0
| UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by loic84):

* stage: Accepted => Ready for checkin


Comment:

Other than the comment I left which can be addressed at commit time, LGTM.

--
Ticket URL: <https://code.djangoproject.com/ticket/21172#comment:8>

Django

unread,
Nov 9, 2013, 3:41:36 AM11/9/13
to django-...@googlegroups.com
#21172: have LiveServerThread follow the semantics of threading.Thread.join()
-------------------------------------+-------------------------------------
Reporter: ldd | Owner:
Type: Bug | unaizalakain
Component: Testing framework | Status: closed
Severity: Normal | Version: master
Keywords: live server, test | Resolution: fixed

server, live wsgi | Triage Stage: Ready for
Has patch: 1 | checkin
Needs tests: 0 | Needs documentation: 0
Easy pickings: 0 | Patch needs improvement: 0
| UI/UX: 0
-------------------------------------+-------------------------------------
Changes (by Anssi Kääriäinen <akaariai@…>):

* status: assigned => closed
* resolution: => fixed


Comment:

In [changeset:"1830f50493cae042dac11957af986b0fd84f889f"]:
{{{
#!CommitTicketReference repository=""
revision="1830f50493cae042dac11957af986b0fd84f889f"
Merge pull request #1743 from unaizalakain/ticket_21172

Fixed #21172 -- have LiveServerThread follow the semantics of
threading.Thread.join()
}}}

--
Ticket URL: <https://code.djangoproject.com/ticket/21172#comment:9>

Django

unread,
Nov 9, 2013, 3:51:41 AM11/9/13
to django-...@googlegroups.com
#21172: have LiveServerThread follow the semantics of threading.Thread.join()
-------------------------------------+-------------------------------------
Reporter: ldd | Owner:
Type: Bug | unaizalakain
Component: Testing framework | Status: closed
Severity: Normal | Version: master
Keywords: live server, test | Resolution: fixed
server, live wsgi | Triage Stage: Ready for
Has patch: 1 | checkin
Needs tests: 0 | Needs documentation: 0
Easy pickings: 0 | Patch needs improvement: 0
| UI/UX: 0
-------------------------------------+-------------------------------------

Comment (by Anssi Kääriäinen <akaariai@…>):

In [changeset:"3c10d1e64faeb67b41e7aa501b21252e357a4564"]:
{{{
#!CommitTicketReference repository=""
revision="3c10d1e64faeb67b41e7aa501b21252e357a4564"
Removed useless comment. Refs #21172
}}}

--
Ticket URL: <https://code.djangoproject.com/ticket/21172#comment:10>

Reply all
Reply to author
Forward
0 new messages