wiki:access/ScottWalesEmail20Mar2012

Cylc on Vayu has been updated to version 4.2.2, this is now the default. To use a previous version run e.g.

$ module use ~access/rose/modules $ module load cylc/4.2.1

Scott.

CHANGES

4.2.2

+ Implemented start triggers (Issue #27):

graph = "A:start => B"

B triggers when A starts executing; previously this required use of special internal task outputs.

+ Implemented finish trigger shorthand:

graph = "A:finish => B"

is equivalent to:

graph = "A | A:fail => B"

B triggers once A is finished, whether by success or failure.

+ Disallowed non-standard argument order in the register command.

+ Bug fix: the register command was aborting without unlocking the suite database if the suite.rc file was unreadable (broken since cross-version compatibility introduced in 4.2.0).

+ Bug fix: runtime inheritance of boolean config items was broken - "False" values were inadvertantly caught in by a test designed to avoid undefined values and empty lists.

+ New standard task execution environment variables:

$CYLC_SUITE_INITIAL_CYCLE_TIME $CYLC_SUITE_FINAL_CYCLE_TIME

This allows tasks to determine if they are in the first or final cycle.

+ Simulation mode now works for any suite without any modification of the suite.rc file. Previously some config items such as initial scripting and user environment could break simulation mode by referencing scripts or variables that are missing or undefined outside of the suite's normal operating setting (these, along with any other config items that are not needed in simulation mode are now omitted from simulation mode job scripts).

+ Duplicate prerequisites are no longer treated as an error. This change also fixes a recently introduced simulation mode bug: internal outputs are ignored in simulation mode (because the dummy tasks do not report internal outputs) so foo:fail, in simulation mode, was treated as foo:succeeded, resulting in "duplicate prerequisite" errors from expressions like "foo | foo:fail => bar".

+ Bug fix: Override of $CYLC_DIR and $CYLC_SUITE_DEF_PATH for remotely hosted tasks used a common data structure instead of a task-specific one, which resulted in subsequent local tasks getting the overridden values too.

+ Bug fix: restored the ability to scan, and display port number in gcylc, your own running secure suites (i.e. suites using secure passphrases).

+ Bug fix: in dummy tasks (i.e. tasks with no runtime config, which are defined only by their presence in the graph) '<TASK>' was being replaced by "root" because dummy tasks were inheriting the root namespace after the interpolation of <TASK> in non-dummy namespaces.

+ Validation now detects invalid conditional trigger expressions, such as unbalanced parentheses, in the graph string.

+ Restored the ability to submit single tasks that have defined runtime config but do not currently appear in the suite graph. Task type (cycling or asynchronous) and validity (valid hours of the day for the task) are normally defined by the graph. In the absence of that information we just assume that the cycle time given on the command line is valid for the task.

+ Added CommsTest simple Pyro client/server programs to demonstrate how network communication is handled in cylc.

+ Validation now detects possible task name case errors (myFoo vs MyFoo).

+ A "task failed" output is now recorded when a task is manually reset to the failed state, to allow downstream tasks to trigger off the failure.

+ Tasks now spawn on failure as well as success, if they haven't done so already. So, for instance, if a waiting task is forced to the failed state, it will spawn a successor.

Last modified 4 years ago Last modified on Oct 20, 2016 2:36:40 PM