svn+ssh://bugman@.../svn/relax/1.3
........
r15400 | bugman | 2012-02-29 10:49:46 +0100 (Wed, 29 Feb 2012) | 5 lines
  Eliminated all usage of sys.__stdout__ and sys.__stderr__ in the multi-processor package.
  This returns full control of IO streams to the parent program.
........
r15401 | bugman | 2012-02-29 10:54:11 +0100 (Wed, 29 Feb 2012) | 6 lines
  Clean up of the processor IO module.
  The now unused IO_filter and PrependStringIO classes have been eliminated and the imports all
  removed.
........
r15402 | bugman | 2012-02-29 11:03:48 +0100 (Wed, 29 Feb 2012) | 5 lines
  Fix for the Immediate_result_queue class.
  The __init__() method was broken!
........
r15403 | bugman | 2012-02-29 11:06:20 +0100 (Wed, 29 Feb 2012) | 3 lines
  Newline cleanup.
........
r15404 | bugman | 2012-02-29 11:13:17 +0100 (Wed, 29 Feb 2012) | 3 lines
  Import fix for the recently deleted IO classes.
........
r15405 | bugman | 2012-02-29 13:31:43 +0100 (Wed, 29 Feb 2012) | 6 lines
  The load_multiprocessor() function is no longer a static method of the Processor base class.
  This function loads the correct Processor class, so doesn't need to be a method of the base class
  and operates cleanly and more clearly as a stand alone function.
........
r15406 | bugman | 2012-02-29 13:37:57 +0100 (Wed, 29 Feb 2012) | 8 lines
  Shifted the main interface of the multi-processor package into the __init__ module.
  The two main interfaces, or the API with the calling program, are the load_multiprocessor() function
  and the Processor_box class.  These have been shifted from the multi.processor module as this is
  mainly a base class.  The import_module() function has also been shifted into __init__ and been made
  a private function, removing it from the API.
........
r15407 | bugman | 2012-02-29 13:42:09 +0100 (Wed, 29 Feb 2012) | 6 lines
  Removed the RelaxError import.
  This was supposed to be only temporary.  Now the multi-processor package is 100% independent of
  relax again.
........
r15408 | bugman | 2012-02-29 13:54:29 +0100 (Wed, 29 Feb 2012) | 7 lines
  Shifted the Application_callback class into the multi.__init__ module to shift it into the API.
  The __init__ module now hopefully contains the entirety of the public interface or API of the
  multi-processor package.  This should simplify the interaction of the package with the importing
  program.
........
r15409 | bugman | 2012-02-29 14:42:35 +0100 (Wed, 29 Feb 2012) | 17 lines
  Another big redesign of the multi-processor package public API.
  The processor module has been split into two.  It now only contains the Processor base class.
  All other functions and classes have been shifted into the api module.  The actual API is in the
  __init__ module which, via imports from the api module, presents the following to the user:
      - Memo
      - Result_command
      - Slave_command
      - load_multiprocessor
      - Application_callback
      - Processor_box
  The API will still require significant simplification and abstraction to increase the usability
  of the multi-processor by the parent program.
........
r15410 | bugman | 2012-02-29 14:43:28 +0100 (Wed, 29 Feb 2012) | 3 lines
  Import clean up.
........
r15411 | bugman | 2012-02-29 14:51:27 +0100 (Wed, 29 Feb 2012) | 5 lines
  Created a new module for holding miscellaneous functions used throughout the package.
  This includes import_module() and raise_unimplemented() functions.
........
r15412 | bugman | 2012-02-29 16:16:59 +0100 (Wed, 29 Feb 2012) | 7 lines
  Simplification and abstraction of the Slave_command.run() method.
  The Processor now calls the _run() method of the Slave_command base class.  This is a wrapper for
  run() which performs the exception handling.  Therefore the program code, such as
  MF_minimise_command, is no longer required to handle the multi-processor specific error handling.
........
r15413 | bugman | 2012-02-29 16:23:41 +0100 (Wed, 29 Feb 2012) | 3 lines
  Shifted the Memo object into its own module.
........
r15414 | bugman | 2012-02-29 16:32:05 +0100 (Wed, 29 Feb 2012) | 3 lines
  Shifted the Capturing_exception class into the misc module.
........
r15415 | bugman | 2012-03-01 10:10:36 +0100 (Thu, 01 Mar 2012) | 3 lines
  Updated the Slave_command.run() docstring to state that this must be overridden.
........
r15416 | bugman | 2012-03-01 10:45:50 +0100 (Thu, 01 Mar 2012) | 21 lines
  Reverted r15412 as this was triggering a locking condition and no allowing the program to terminate.
  The command used was:
  svn merge -r15412:r15411 .
  .....
r15412 | bugman | 2012-02-29 16:16:59 +0100 (Wed, 29 Feb 2012) | 7 lines
      Changed paths:
         M /1.3/multi/api.py
         M /1.3/multi/multi_processor_base.py
         M /1.3/multi/uni_processor.py
         M /1.3/specific_fns/model_free/multi_processor_commands.py
      Simplification and abstraction of the Slave_command.run() method.
      The Processor now calls the _run() method of the Slave_command base class.  This is a wrapper for
      run() which performs the exception handling.  Therefore the program code, such as
      MF_minimise_command, is no longer required to handle the multi-processor specific error handling.
  .....
........
r15417 | bugman | 2012-03-01 10:47:34 +0100 (Thu, 01 Mar 2012) | 6 lines
  Removed the try statement in the model-free Slave_command.run() method.
  After testing, this appears to not be needed anyway.  Exception handling is correctly performed on
  the slave and master.
........
r15418 | bugman | 2012-03-01 10:57:22 +0100 (Thu, 01 Mar 2012) | 7 lines
  Future proofed the relax codebase by replacing all ''' with """ in the docstrings.
  According to the Python convention PEP 257 (http://www.python.org/dev/peps/pep-0257/), it is stated
  that, "[f]or consistency, always use """triple double quotes""" around docstrings".  As this is a
  convention, it may be enforced in future Python versions.
........
r15419 | bugman | 2012-03-01 13:36:46 +0100 (Thu, 01 Mar 2012) | 11 lines
  Created a special Verbosity singleton for controlling the multi-processor package print outs.
  This controls the text prepended to the output from the slaves, as well as all print outs from the
  master processor.  If the verbosity level is set to 0, then nothing but warnings and errors are
  printed.  The level of 1 prepends text to the slave IO streams and the print out of from the master
  of the active slave set.
  This will be important for very fine grained parallelisation whereby the multi-processor is used at
  the level of the basic function call or lower.
........
r15420 | bugman | 2012-03-01 14:08:02 +0100 (Thu, 01 Mar 2012) | 5 lines
  The relax --debug command line option now turns the multi-processor package verbosity to 1.
  The default is currently 0, but the debugging flag changes this.
........