summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--paste/auth/digest.py2
-rwxr-xr-xpaste/httpserver.py6
-rw-r--r--tests/test_fileapp.py2
-rw-r--r--tox.ini2
4 files changed, 8 insertions, 4 deletions
diff --git a/paste/auth/digest.py b/paste/auth/digest.py
index 85e0362..553bd88 100644
--- a/paste/auth/digest.py
+++ b/paste/auth/digest.py
@@ -57,7 +57,7 @@ def _split_auth_string(auth_string):
prev = item
yield prev.strip()
- raise StopIteration
+ return
def _auth_to_kv_pairs(auth_string):
""" split a digest auth string into key, value pairs """
diff --git a/paste/httpserver.py b/paste/httpserver.py
index 035d818..11489b0 100755
--- a/paste/httpserver.py
+++ b/paste/httpserver.py
@@ -734,7 +734,11 @@ class ThreadPool(object):
raise RuntimeError(
"Cannot kill worker; killthread/ctypes not available")
thread_obj = threading._active.get(thread_id)
- killthread.async_raise(thread_id, SystemExit)
+ try:
+ killthread.async_raise(thread_id, SystemExit)
+ except ValueError:
+ # invalid thread id -- the thread has died in the mean time
+ pass
try:
del self.worker_tracker[thread_id]
except KeyError:
diff --git a/tests/test_fileapp.py b/tests/test_fileapp.py
index bdd7510..ee7da6a 100644
--- a/tests/test_fileapp.py
+++ b/tests/test_fileapp.py
@@ -95,7 +95,7 @@ def test_modified():
assert 400 == res.status and b"ill-formed timestamp" in res.body
res = harness.get("/",status=400,
headers={'if-modified-since':
- 'Thu, 22 Dec 2030 01:01:01 GMT'})
+ 'Thu, 22 Dec 3030 01:01:01 GMT'})
assert 400 == res.status and b"check your system clock" in res.body
def test_file():
diff --git a/tox.ini b/tox.ini
index d1c8978..5e34c30 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,5 +1,5 @@
[tox]
-envlist = py26, py27, py34, py35, pypy
+envlist = py26, py27, py34, py35, py36, py37, pypy
[testenv]
deps =