Payu: a workflow manager for some ACCESS models

20/07/2026

:rocket: Release: 1.3.3 & 1.3.4

Payu 1.3.3 introduced new features and usability improvements. Shortly after its release, an upstream change in the filelock package required a small compatibility fix, which is included in payu 1.3.4. We therefore recommend that all users load payu/1.3.4.

https://github.com/payu-org/payu/releases/tag/1.3.3
https://github.com/payu-org/payu/releases/tag/1.3.4

Getting Started

This version of payu is now available on gadi:

module use /g/data/vk83/modules
module load payu/1.3.4

Updates

For a full list of pull requests that includes additional bug fixes, please see Payu Github 1.3.4 release.

Notes

1. :warning: Change of behavior :warning:: Confirmation required before creating a new UUID

Previously, payu would automatically generate a new experiment UUID whenever the archive directory could not be found. This default behaviour could be risky. For example, if you changed the short path after running a multi-run experiment, payu would silently create a new UUID and restart the experiment from Run 0 instead of continuing from the existing restart.

Now, payu instead raises an error, unless the user explicitly confirms that a new UUID should be created by supplying the --new-uuid flag to payu setup, payu run, or payu checkout.

This confirmation is not required for payu clone or payu checkout -b, where creating a new experiment is the expected behaviour.

2. Improved error messages formatting and logging

From payu 1.3.3, payu-specific exceptions (for example, PayuConfigError and PayuRuntimeError) are displayed as formatted log messages without stack trace by default. Details of logging are controlled with the --log-level option. To display the full stack trace for these exceptions, please use the --stacktrace flag. Unexpected exceptions (such as ValueError) continue to display the full stack trace.

3. Check project access before PBS job submission

Before submitting a PBS job, payu now verifies that the user has access to the nominated project and the projects associated with the required files such as inputs, executables and restarts. This avoids waiting in the queue only to find out the job failed. If access is blocked, payu reports the problematic project(s) in the error message.

4. Easier access to experiment paths

The new payu status --paths command displays all important experiment directories, for example:

========================================
Experiment Paths:
  Experiment UUID:   oo11000
  Experiment Name:   mom6-777eeee
  Control Directory: /home/$USER/mom6
                      (Where model configuration is stored)
  Work Directory:    /scratch/$PROJECT/$USER/mom6/work/mom6-777eeee
                      (Temporary directory for experiment runs)
  Archive Directory: /scratch/$PROJECT/$USER/mom6/archive/mom6-777eeee
                      (Where all experiment outputs are stored)
  Sync Destination:  /path/to/sync
                      (Remote directory to sync outputs to)
========================================

For scripting and other machine-readable workflows, please use:

payu status --paths --json

For easier navigation, payu setup now creates symbolic links to both the work and archive directories in the control directory, if they do not already exist.

5. Shortcut for assigning a parent experiment in payu checkout -b

When a new branch (New_B) is created from a specific Git reference (git_ref_A):

payu checkout -b New_B git_ref_A

it is now possible to use BASE to automatically look up the UUID associated with git_ref_A and assign it as the parent experiment in metadata.yaml:

payu checkout -b New_B -p BASE git_ref_A

Having this information stored in the metadata improves experiment provenance by establishing clear links between experiments.

Previously, assigning parent experiment in metadata.yaml required manually specifying the parent UUID:

payu checkout -b New_B -p <parent_uuid> git_ref_A

This change saves users the effort to look up the UUID, and is less error prone.

Support

Replies to this topic are disabled.

If you have specific questions about this release follow the guidelines for requesting help from ACCESS-NRI.

If you have questions about payu create a topic in a category that best matches the model you are using, or in the Technical category and tag it with payu. If you require assistance follow the guidelines for requesting help from ACCESS-NRI.

Credits

Developments was by @Qianhui_Chen, @jasmeen_kaur, @atteggiani.

Reviewers included @jo-basevi, @Aidan.