pprocess

Changeset

166:c5c3cddeabcc
2014-01-05 Paul Boddie raw files shortlog changelog graph Added IOError handling when processes exit apparently without warning. rel-0-5-1
PKG-INFO (file) README.txt (file) docs/COPYING.txt (file) pprocess.py (file) setup.py (file)
     1.1 --- a/PKG-INFO	Fri Jul 17 00:48:26 2009 +0200
     1.2 +++ b/PKG-INFO	Sun Jan 05 00:56:23 2014 +0100
     1.3 @@ -1,12 +1,12 @@
     1.4  Metadata-Version: 1.1
     1.5  Name: pprocess
     1.6 -Version: 0.5
     1.7 +Version: 0.5.1
     1.8  Author: Paul Boddie
     1.9  Author-email: paul at boddie org uk
    1.10  Maintainer: Paul Boddie
    1.11  Maintainer-email: paul at boddie org uk
    1.12  Home-page: http://www.boddie.org.uk/python/pprocess.html
    1.13 -Download-url: http://www.boddie.org.uk/python/downloads/pprocess-0.5.tar.gz
    1.14 +Download-url: http://www.boddie.org.uk/python/downloads/pprocess-0.5.1.tar.gz
    1.15  Summary: Elementary parallel programming for Python
    1.16  License: LGPL (version 3 or later)
    1.17  Description: The pprocess module provides elementary support for parallel
     2.1 --- a/README.txt	Fri Jul 17 00:48:26 2009 +0200
     2.2 +++ b/README.txt	Sun Jan 05 00:56:23 2014 +0100
     2.3 @@ -167,6 +167,11 @@
     2.4  available only on "UNIX"; it has only been tested repeatedly on a GNU/Linux
     2.5  system, and occasionally on systems running OpenSolaris.
     2.6  
     2.7 +New in pprocess 0.5.1 (Changes since pprocess 0.5)
     2.8 +--------------------------------------------------
     2.9 +
    2.10 +  * Added IOError handling when processes exit apparently without warning.
    2.11 +
    2.12  New in pprocess 0.5 (Changes since pprocess 0.4)
    2.13  ------------------------------------------------
    2.14  
     3.1 --- a/docs/COPYING.txt	Fri Jul 17 00:48:26 2009 +0200
     3.2 +++ b/docs/COPYING.txt	Sun Jan 05 00:56:23 2014 +0100
     3.3 @@ -1,7 +1,8 @@
     3.4  Licence Agreement for parallel/pprocess
     3.5  ---------------------------------------
     3.6  
     3.7 -Copyright (C) 2005, 2006, 2007, 2008, 2009 Paul Boddie <paul@boddie.org.uk>
     3.8 +Copyright (C) 2005, 2006, 2007, 2008, 2009, 2013 Paul Boddie <paul@boddie.org.uk>
     3.9 +Copyright (C) 2013 Yaroslav Halchenko <debian@onerussian.com>
    3.10  
    3.11  This program is free software; you can redistribute it and/or modify it under
    3.12  the terms of the GNU Lesser General Public License as published by the Free
     4.1 --- a/pprocess.py	Fri Jul 17 00:48:26 2009 +0200
     4.2 +++ b/pprocess.py	Sun Jan 05 00:56:23 2014 +0100
     4.3 @@ -4,7 +4,8 @@
     4.4  A simple parallel processing API for Python, inspired somewhat by the thread
     4.5  module, slightly less by pypar, and slightly less still by pypvm.
     4.6  
     4.7 -Copyright (C) 2005, 2006, 2007, 2008, 2009 Paul Boddie <paul@boddie.org.uk>
     4.8 +Copyright (C) 2005, 2006, 2007, 2008, 2009, 2013 Paul Boddie <paul@boddie.org.uk>
     4.9 +Copyright (C) 2013 Yaroslav Halchenko <debian@onerussian.com>
    4.10  
    4.11  This program is free software; you can redistribute it and/or modify it under
    4.12  the terms of the GNU Lesser General Public License as published by the Free
    4.13 @@ -20,7 +21,7 @@
    4.14  with this program.  If not, see <http://www.gnu.org/licenses/>.
    4.15  """
    4.16  
    4.17 -__version__ = "0.5"
    4.18 +__version__ = "0.5.1"
    4.19  
    4.20  import os
    4.21  import sys
    4.22 @@ -28,6 +29,8 @@
    4.23  import socket
    4.24  import platform
    4.25  
    4.26 +from warnings import warn
    4.27 +
    4.28  try:
    4.29      import cPickle as pickle
    4.30  except ImportError:
    4.31 @@ -396,8 +399,12 @@
    4.32  
    4.33          if self.active():
    4.34              for channel in self.ready(timeout):
    4.35 -                self.store_data(channel)
    4.36 -                self.start_waiting(channel)
    4.37 +                try:
    4.38 +                    self.store_data(channel)
    4.39 +                    self.start_waiting(channel)
    4.40 +                except IOError, exc:
    4.41 +                    self.remove(channel)
    4.42 +                    warn("Removed channel %r due to IOError: %s" % (channel, exc))
    4.43  
    4.44          # Or schedule new processes and channels.
    4.45  
     5.1 --- a/setup.py	Fri Jul 17 00:48:26 2009 +0200
     5.2 +++ b/setup.py	Sun Jan 05 00:56:23 2014 +0100
     5.3 @@ -8,6 +8,6 @@
     5.4      author       = "Paul Boddie",
     5.5      author_email = "paul@boddie.org.uk",
     5.6      url          = "http://www.boddie.org.uk/python/pprocess.html",
     5.7 -    version      = "0.5",
     5.8 +    version      = "0.5.1",
     5.9      py_modules   = ["pprocess"]
    5.10      )