We are pleased to announce the release of the GNU Guix Workflow Language version 0.5.0, representing 46 commits by two people, incorporating the results of productive discussions among a number of helpful people on the #guix and #guix-hpc IRC channels on libera.chat and on the gwl-devel@gnu.org mailing list. This is a maintenance release with a number of bug fixes. For details see the NEWS excerpt below. • About The Guix Workflow Language (GWL) provides an extension to GNU Guix's declarative language for package management to automate the execution of programs in scientific workflows. The GWL can use process engines to integrate with various computing environments. See the manual for details: https://workflows.guix.info/manual/ • Download Here are the compressed sources and a GPG detached signature[*]: https://ftpmirror.gnu.org/gwl/gwl-0.5.0.tar.gz https://ftpmirror.gnu.org/gwl/gwl-0.5.0.tar.gz.sig Use a mirror for higher download bandwidth: https://www.gnu.org/order/ftp.html [*] Use a .sig file to verify that the corresponding file (without the .sig suffix) is intact. First, be sure to download both the .sig file and the corresponding tarball. Then, run a command like this: gpg --verify gwl-0.5.0.tar.gz.sig If that command fails because you don't have the required public key, then run this command to import it: gpg --keyserver keys.gnupg.net --recv-keys BCA689B636553801C3C62150197A5888235FACAC and rerun the 'gpg --verify' command. This release was bootstrapped with the following tools: Autoconf 2.69 Automake 1.16.3 Gnulib v0.1-3269-g03d7a6b1f NEWS * Changes in 0.5.0 (since 0.4.0) ** Package handling - Package specifications may also contain outputs. ** Testing - Integration tests verify that all examples from the documentation can be executed correctly. - Integration tests include submission of jobs to a local Slurm cluster via DRMAA. ** Bug fixes - Processes comparisons are now performed with an identity comparison. This was always intended in cache table lookups, but the wrong comparison procedure was used. - Custom interpreters in code snippets would be miscompiled due to a regression. =compile-procedure= was modified to address this regression. - With containerized execution, the contained script was not passed its arguments for inputs, outputs, and values. Now the arguments are passed through. - The container scripts were compiled with fixed values for process inputs and outputs; now they read these values from their arguments as in other execution modes. - Set the job’s working directory when launching a DRMAA job. -- Ricardo