From 8737a73ce3335f46007b241f3beea61e74d04e5c Mon Sep 17 00:00:00 2001 From: th3nn3ss Date: Thu, 17 Mar 2022 03:13:34 +0100 Subject: [PATCH 01/10] initial draft for joss paper --- paper/paper.bib | 29 +++++++++++++++++++++++++++ paper/paper.md | 53 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 82 insertions(+) create mode 100644 paper/paper.bib create mode 100644 paper/paper.md diff --git a/paper/paper.bib b/paper/paper.bib new file mode 100644 index 00000000..fc0ec9a6 --- /dev/null +++ b/paper/paper.bib @@ -0,0 +1,29 @@ +@article{cwl: 2021, + url = {https://arxiv.org/pdf/2105.07028.pdf}, + Archiveprefix = {arXiv}, + Author = {{Michael} R. C., {Peter} Amstutz,{Sanne} Abeln, {Alexandru} Iosup, {John} Chiltole, and the {CWL} community} + Eprint = {arXiv:2105.07028v2}, + Journal = {ArXiv e-prints}, + Keywords = {Standazing Computational language, common workflow language}, + Month = Aug, + Title = {{Method included: Standardizing Computational Reuse and Portability with the common workflow lanauge}}, + Year = 2021 +} + +@misc{wdl, + author = {WDL Community}, + title = {Workflow Description Language (WDL)}, + year = {2017}, + publisher = {GitHub}, + journal = {GitHub repository}, + url = {https://github.com/openwdl/wdl} +} + +@misc{miniwdl, + author = {miniwdl Community}, + title = {miniwdl}, + year = {2018}, + publisher = {GitHub}, + journal = {GitHub repository}, + url = {https://github.com/chanzuckerberg/miniwdl/} +} \ No newline at end of file diff --git a/paper/paper.md b/paper/paper.md new file mode 100644 index 00000000..050da82e --- /dev/null +++ b/paper/paper.md @@ -0,0 +1,53 @@ +--- +title: 'wdl2cwl: A Python tool for converting WDL workflow files to CWL workflows' +tags: + - Python + - workflow + - workflow description language + - common workflow language + - Language +date: August 2022 +bibliography: paper.bib +--- + +# Summary + +Computational workflows are used in data analysis, enabling innovation and +decision-making in various fields of science. There are several competing workflow description languages, +WDL (Workflow description Language) and CWL (Common Workflow Languaage) are two examples +of popularly used systems. WDL is a way to specify data processiing workflows with +a human-readable and writeable syntax. WDL makes it straightforward to define +complex analysis tasks, chain them together in workflows, and parallelize their execution [@wdl]. +CWL is a way to describe command line tools and connect +the together to create workflows. Because CWL is a specification and not a +specific piece of software, tools and workflows described using CWL are portable acroos +a variety of platforms that support the CWL standard [@cwl:2021]. + +It can be hard learning and adapting to the various knowledge requirements and +specifications of a workflow language. This complication makes it hard for analysts and scientists +share their work and collaborate efficiently with others who are use to working with different language. + +``wdl2cwl`` is a Python package for converting workflow files written in WDL to workflows in CWL. Python +allows flexibility and the ability to import other Python packages. +The ``wdl2cwl`` package uses the ``miniwdl`` package [@miniwdl], an open-source, Python package, +developer toolkit and local runner for running wdl files. The ``wdl2cwl`` package was +designed to provide a class-based and developer-friendly interface for extracting +the various sections of a wdl file, dynamically create the various objects +needed to create a valid cwl file ( this is done using the ``cwl.utils`` package [@cwl.utils], +an open-source, Python package for parsing cwl files) and performing error checking +for valid imports, input declarations, expressions etc. + +``wdl2cwl`` was designed to be used by both cwl and wdl professionals and researchers, as well +students in courses on bioinformatics and data analytics. It has already been +used to convert a number of wdl workflows. This tool makes it easier +to translate your favourite WDL workflows into CWL. This could be because of platform +dependency issues (like trying to reproduce a WDL workflow on a platform that only allows CWL), +or it could be to eliminate the need for an anylyst who undersnd and writes CWL to learn WDL language +in other to quickly use a WDL workflow or it could be to create a more widely available workflow +that can be used by users of either languages and so much more. + +# Acknowledgements + +We acknowledge the work by tthe developers of miniwdl, cwl, wdl + +# References \ No newline at end of file From a2c96c631b47930176a84f6a6971d56ee54afe28 Mon Sep 17 00:00:00 2001 From: th3nn3ss Date: Thu, 17 Mar 2022 03:28:31 +0100 Subject: [PATCH 02/10] add reference to cwl-utils and fix typos in paper.md --- paper/paper.bib | 9 +++++++++ paper/paper.md | 4 ++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/paper/paper.bib b/paper/paper.bib index fc0ec9a6..ac3da2e4 100644 --- a/paper/paper.bib +++ b/paper/paper.bib @@ -26,4 +26,13 @@ @misc{miniwdl publisher = {GitHub}, journal = {GitHub repository}, url = {https://github.com/chanzuckerberg/miniwdl/} +} + +@misc{cwl_utils, + author = {CWL Community}, + title = {cwl-utils}, + year = {2019}, + publisher = {GitHub}, + journal = {GitHub repository}, + url = {https://github.com/common-workflow-language/cwl-utils} } \ No newline at end of file diff --git a/paper/paper.md b/paper/paper.md index 050da82e..afe03378 100644 --- a/paper/paper.md +++ b/paper/paper.md @@ -33,7 +33,7 @@ The ``wdl2cwl`` package uses the ``miniwdl`` package [@miniwdl], an open-source, developer toolkit and local runner for running wdl files. The ``wdl2cwl`` package was designed to provide a class-based and developer-friendly interface for extracting the various sections of a wdl file, dynamically create the various objects -needed to create a valid cwl file ( this is done using the ``cwl.utils`` package [@cwl.utils], +needed to create a valid cwl file ( this is done using the ``cwl.utils`` package [@cwl_utils], an open-source, Python package for parsing cwl files) and performing error checking for valid imports, input declarations, expressions etc. @@ -48,6 +48,6 @@ that can be used by users of either languages and so much more. # Acknowledgements -We acknowledge the work by tthe developers of miniwdl, cwl, wdl +We acknowledge the work by the developers of miniwdl, CWL and WDL. # References \ No newline at end of file From 5904bb1c406d374256fdab1604285a1c9df8822a Mon Sep 17 00:00:00 2001 From: "Michael R. Crusoe" Date: Thu, 17 Mar 2022 13:07:05 +0100 Subject: [PATCH 03/10] build the paper --- .github/workflows/draft-pdf.yml | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 .github/workflows/draft-pdf.yml diff --git a/.github/workflows/draft-pdf.yml b/.github/workflows/draft-pdf.yml new file mode 100644 index 00000000..76310246 --- /dev/null +++ b/.github/workflows/draft-pdf.yml @@ -0,0 +1,23 @@ +on: [push] + +jobs: + paper: + runs-on: ubuntu-latest + name: Paper Draft + steps: + - name: Checkout + uses: actions/checkout@v2 + - name: Build draft PDF + uses: openjournals/openjournals-draft-action@master + with: + journal: joss + # This should be the path to the paper within your repo. + paper-path: paper/paper.md + - name: Upload + uses: actions/upload-artifact@v1 + with: + name: paper + # This is the output path where Pandoc will write the compiled + # PDF. Note, this should be the same directory as the input + # paper.md + path: paper/paper.pdf From c4e7e002f081ff06ea68c32c6e9a4cef3339c6d6 Mon Sep 17 00:00:00 2001 From: "Michael R. Crusoe" Date: Thu, 17 Mar 2022 13:38:19 +0100 Subject: [PATCH 04/10] fix the bibliography --- paper/paper.bib | 18 +++++++----------- paper/paper.md | 13 +++++++++++-- 2 files changed, 18 insertions(+), 13 deletions(-) diff --git a/paper/paper.bib b/paper/paper.bib index ac3da2e4..3d4f1a5e 100644 --- a/paper/paper.bib +++ b/paper/paper.bib @@ -1,13 +1,9 @@ -@article{cwl: 2021, - url = {https://arxiv.org/pdf/2105.07028.pdf}, - Archiveprefix = {arXiv}, - Author = {{Michael} R. C., {Peter} Amstutz,{Sanne} Abeln, {Alexandru} Iosup, {John} Chiltole, and the {CWL} community} - Eprint = {arXiv:2105.07028v2}, - Journal = {ArXiv e-prints}, - Keywords = {Standazing Computational language, common workflow language}, - Month = Aug, - Title = {{Method included: Standardizing Computational Reuse and Portability with the common workflow lanauge}}, - Year = 2021 +@article{cwl, +Author = {Michael R. Crusoe and Sanne Abeln and Alexandru Iosup and Peter Amstutz and John Chilton and Nebojša Tijanić and Hervé Ménager and Stian Soiland-Reyes and Bogdan Gavrilovic and Carole Goble and The CWL Community}, +Title = {Methods Included: Standardizing Computational Reuse and Portability with the Common Workflow Language}, +Year = {2021}, +Eprint = {arXiv:2105.07028}, +Doi = {10.1145/3486897}, } @misc{wdl, @@ -35,4 +31,4 @@ @misc{cwl_utils publisher = {GitHub}, journal = {GitHub repository}, url = {https://github.com/common-workflow-language/cwl-utils} -} \ No newline at end of file +} diff --git a/paper/paper.md b/paper/paper.md index afe03378..51f9083d 100644 --- a/paper/paper.md +++ b/paper/paper.md @@ -6,6 +6,15 @@ tags: - workflow description language - common workflow language - Language +authors: + - name: Dinithi Wickramaratne + - name: Dennis Chukwunta + - name: Michael R. Crusoe + orcid: 0000-0002-2961-9670 + - name: Bruno P. Kinoshita + orcid: 0000-0001-8250-4074 + - name: Peter Amstutz + orcid: 0000-0003-3566-7705 date: August 2022 bibliography: paper.bib --- @@ -21,7 +30,7 @@ complex analysis tasks, chain them together in workflows, and parallelize their CWL is a way to describe command line tools and connect the together to create workflows. Because CWL is a specification and not a specific piece of software, tools and workflows described using CWL are portable acroos -a variety of platforms that support the CWL standard [@cwl:2021]. +a variety of platforms that support the CWL standard [@cwl]. It can be hard learning and adapting to the various knowledge requirements and specifications of a workflow language. This complication makes it hard for analysts and scientists @@ -50,4 +59,4 @@ that can be used by users of either languages and so much more. We acknowledge the work by the developers of miniwdl, CWL and WDL. -# References \ No newline at end of file +# References From 3e8ab181693c62439de0b201c582e4120b0ec513 Mon Sep 17 00:00:00 2001 From: th3nn3ss Date: Fri, 18 Mar 2022 14:57:30 +0100 Subject: [PATCH 05/10] fix typos and improve paper.md --- paper/paper.md | 48 ++++++++++++++++++++++-------------------------- 1 file changed, 22 insertions(+), 26 deletions(-) diff --git a/paper/paper.md b/paper/paper.md index afe03378..09fdbcac 100644 --- a/paper/paper.md +++ b/paper/paper.md @@ -1,11 +1,11 @@ --- -title: 'wdl2cwl: A Python tool for converting WDL workflow files to CWL workflows' +title: 'wdl2cwl: A Python tool for converting WDL workflows to CWL' tags: - Python - workflow - workflow description language - common workflow language - - Language + - workflow language date: August 2022 bibliography: paper.bib --- @@ -14,37 +14,33 @@ bibliography: paper.bib Computational workflows are used in data analysis, enabling innovation and decision-making in various fields of science. There are several competing workflow description languages, -WDL (Workflow description Language) and CWL (Common Workflow Languaage) are two examples -of popularly used systems. WDL is a way to specify data processiing workflows with +WDL (Workflow description Language) and CWL (Common Workflow Language) are two examples +of popularly used systems. WDL offers a way to specify data processiing workflows with a human-readable and writeable syntax. WDL makes it straightforward to define complex analysis tasks, chain them together in workflows, and parallelize their execution [@wdl]. CWL is a way to describe command line tools and connect -the together to create workflows. Because CWL is a specification and not a -specific piece of software, tools and workflows described using CWL are portable acroos +them together to create workflows. Because CWL is a specification and not a +specific piece of software, tools and workflows described using CWL are portable across a variety of platforms that support the CWL standard [@cwl:2021]. -It can be hard learning and adapting to the various knowledge requirements and -specifications of a workflow language. This complication makes it hard for analysts and scientists -share their work and collaborate efficiently with others who are use to working with different language. +Groups using WDL or CWL can find it difficult to learn the other workflow definition language if they need to run their workflows in other platforms. It becomes even harder when the workflows contain domain specific knowledge mixed with the definitions, and when analysts and scientists need to consider future collaboration of other groups on the workflows definitions. -``wdl2cwl`` is a Python package for converting workflow files written in WDL to workflows in CWL. Python -allows flexibility and the ability to import other Python packages. -The ``wdl2cwl`` package uses the ``miniwdl`` package [@miniwdl], an open-source, Python package, -developer toolkit and local runner for running wdl files. The ``wdl2cwl`` package was +``wdl2cwl`` is a Python package for converting workflow written in WDL to workflows in CWL. +The ``wdl2cwl`` package uses the ``miniwdl`` package [@miniwdl], an open source, Python package, +developer toolkit and local runner for running WDL files. The ``wdl2cwl`` package was designed to provide a class-based and developer-friendly interface for extracting -the various sections of a wdl file, dynamically create the various objects -needed to create a valid cwl file ( this is done using the ``cwl.utils`` package [@cwl_utils], -an open-source, Python package for parsing cwl files) and performing error checking -for valid imports, input declarations, expressions etc. - -``wdl2cwl`` was designed to be used by both cwl and wdl professionals and researchers, as well -students in courses on bioinformatics and data analytics. It has already been -used to convert a number of wdl workflows. This tool makes it easier -to translate your favourite WDL workflows into CWL. This could be because of platform -dependency issues (like trying to reproduce a WDL workflow on a platform that only allows CWL), -or it could be to eliminate the need for an anylyst who undersnd and writes CWL to learn WDL language -in other to quickly use a WDL workflow or it could be to create a more widely available workflow -that can be used by users of either languages and so much more. +the various sections of a WDL file, dynamically create the various objects +needed to create a valid CWL file ( this is done using the ``cwl-utils`` package [@cwl_utils], +an open source, Python package for parsing CWL files) and performing error checking +for valid imports, input declarations, expressions and other useful operations on CWL files. + +``wdl2cwl`` was designed to be used by both CWL/WDL professionals and researchers, as well +as students in courses on bioinformatics and data analytics. It has already been +used to convert a number of WDL workflows. Some reasons why an analyst might want to use the tool are: +- It can help an analyst to avoid platform dependency issues (like trying to reproduce a WDL workflow on a platform that only allows CWL). +- It can be used to eliminate the need for an CWL analysts to learn the WDL language in order to use a workflow written in WDL. +- It can be used to create a more widely available workflow that can be used by users +of either languages. # Acknowledgements From 751a27f3f9aec45462947a219f2d627eb41dbc07 Mon Sep 17 00:00:00 2001 From: th3nn3ss Date: Fri, 18 Mar 2022 15:02:14 +0100 Subject: [PATCH 06/10] merge conflict with remote --- paper/paper.md | 46 +++++++++++++++++++++------------------------- 1 file changed, 21 insertions(+), 25 deletions(-) diff --git a/paper/paper.md b/paper/paper.md index 51f9083d..4460da8f 100644 --- a/paper/paper.md +++ b/paper/paper.md @@ -1,5 +1,5 @@ --- -title: 'wdl2cwl: A Python tool for converting WDL workflow files to CWL workflows' +title: 'wdl2cwl: A Python tool for converting WDL workflows to CWL' tags: - Python - workflow @@ -23,37 +23,33 @@ bibliography: paper.bib Computational workflows are used in data analysis, enabling innovation and decision-making in various fields of science. There are several competing workflow description languages, -WDL (Workflow description Language) and CWL (Common Workflow Languaage) are two examples -of popularly used systems. WDL is a way to specify data processiing workflows with +WDL (Workflow description Language) and CWL (Common Workflow Language) are two examples +of popularly used systems. WDL offers a way to specify data processiing workflows with a human-readable and writeable syntax. WDL makes it straightforward to define complex analysis tasks, chain them together in workflows, and parallelize their execution [@wdl]. CWL is a way to describe command line tools and connect -the together to create workflows. Because CWL is a specification and not a -specific piece of software, tools and workflows described using CWL are portable acroos +them together to create workflows. Because CWL is a specification and not a +specific piece of software, tools and workflows described using CWL are portable across a variety of platforms that support the CWL standard [@cwl]. -It can be hard learning and adapting to the various knowledge requirements and -specifications of a workflow language. This complication makes it hard for analysts and scientists -share their work and collaborate efficiently with others who are use to working with different language. +Groups using WDL or CWL can find it difficult to learn the other workflow definition language if they need to run their workflows in other platforms. It becomes even harder when the workflows contain domain specific knowledge mixed with the definitions, and when analysts and scientists need to consider future collaboration of other groups on the workflows definitions. -``wdl2cwl`` is a Python package for converting workflow files written in WDL to workflows in CWL. Python -allows flexibility and the ability to import other Python packages. -The ``wdl2cwl`` package uses the ``miniwdl`` package [@miniwdl], an open-source, Python package, -developer toolkit and local runner for running wdl files. The ``wdl2cwl`` package was +``wdl2cwl`` is a Python package for converting workflow written in WDL to workflows in CWL. +The ``wdl2cwl`` package uses the ``miniwdl`` package [@miniwdl], an open source, Python package, +developer toolkit and local runner for running WDL files. The ``wdl2cwl`` package was designed to provide a class-based and developer-friendly interface for extracting -the various sections of a wdl file, dynamically create the various objects -needed to create a valid cwl file ( this is done using the ``cwl.utils`` package [@cwl_utils], -an open-source, Python package for parsing cwl files) and performing error checking -for valid imports, input declarations, expressions etc. - -``wdl2cwl`` was designed to be used by both cwl and wdl professionals and researchers, as well -students in courses on bioinformatics and data analytics. It has already been -used to convert a number of wdl workflows. This tool makes it easier -to translate your favourite WDL workflows into CWL. This could be because of platform -dependency issues (like trying to reproduce a WDL workflow on a platform that only allows CWL), -or it could be to eliminate the need for an anylyst who undersnd and writes CWL to learn WDL language -in other to quickly use a WDL workflow or it could be to create a more widely available workflow -that can be used by users of either languages and so much more. +the various sections of a WDL file, dynamically create the various objects +needed to create a valid CWL file ( this is done using the ``cwl-utils`` package [@cwl_utils], +an open source, Python package for parsing CWL files) and performing error checking +for valid imports, input declarations, expressions and other useful operations on CWL files. + +``wdl2cwl`` was designed to be used by both CWL/WDL professionals and researchers, as well +as students in courses on bioinformatics and data analytics. It has already been +used to convert a number of WDL workflows. Some reasons why an analyst might want to use the tool are: +- It can help an analyst to avoid platform dependency issues (like trying to reproduce a WDL workflow on a platform that only allows CWL). +- It can be used to eliminate the need for an CWL analysts to learn the WDL language in order to use a workflow written in WDL. +- It can be used to create a more widely available workflow that can be used by users +of either languages. # Acknowledgements From 63d6aa6feb352bd02f7aeae433444b084bd49c6b Mon Sep 17 00:00:00 2001 From: th3nn3ss Date: Fri, 18 Mar 2022 16:01:35 +0100 Subject: [PATCH 07/10] fix tool benefit description --- paper/paper.md | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/paper/paper.md b/paper/paper.md index 4460da8f..e2e7a70a 100644 --- a/paper/paper.md +++ b/paper/paper.md @@ -5,7 +5,6 @@ tags: - workflow - workflow description language - common workflow language - - Language authors: - name: Dinithi Wickramaratne - name: Dennis Chukwunta @@ -44,12 +43,11 @@ an open source, Python package for parsing CWL files) and performing error check for valid imports, input declarations, expressions and other useful operations on CWL files. ``wdl2cwl`` was designed to be used by both CWL/WDL professionals and researchers, as well -as students in courses on bioinformatics and data analytics. It has already been -used to convert a number of WDL workflows. Some reasons why an analyst might want to use the tool are: -- It can help an analyst to avoid platform dependency issues (like trying to reproduce a WDL workflow on a platform that only allows CWL). -- It can be used to eliminate the need for an CWL analysts to learn the WDL language in order to use a workflow written in WDL. -- It can be used to create a more widely available workflow that can be used by users -of either languages. +as students of bioinformatics and data analytics. It can help CWL analysts to avoid +platform dependency issues (like trying to reproduce a WDL workflow on a platform that +only allows CWL). It can help analysts by eliminating the difficulty of learning a new +workflow language before they an use a WDL worflow. It can be used to create a more +widely available workflow that can be used by analysts of either languages. # Acknowledgements From 8a3cbe264cfb919e70ed389a648ee560aba8aae3 Mon Sep 17 00:00:00 2001 From: th3nn3ss Date: Fri, 18 Mar 2022 16:20:07 +0100 Subject: [PATCH 08/10] fix merge conflict --- paper/paper.md | 27 +++++++-------------------- 1 file changed, 7 insertions(+), 20 deletions(-) diff --git a/paper/paper.md b/paper/paper.md index 6c6ddcf6..5ecd4b61 100644 --- a/paper/paper.md +++ b/paper/paper.md @@ -5,9 +5,6 @@ tags: - workflow - workflow description language - common workflow language -<<<<<<< HEAD - - workflow language -======= authors: - name: Dinithi Wickramaratne - name: Dennis Chukwunta @@ -17,7 +14,6 @@ authors: orcid: 0000-0001-8250-4074 - name: Peter Amstutz orcid: 0000-0003-3566-7705 ->>>>>>> temp date: August 2022 bibliography: paper.bib --- @@ -25,21 +21,21 @@ bibliography: paper.bib # Summary Computational workflows are used in data analysis, enabling innovation and -decision-making in various fields of science. There are several competing workflow description languages, +decision-making in various fields of science. There are several competing workflow description systems, WDL (Workflow description Language) and CWL (Common Workflow Language) are two examples of popularly used systems. WDL offers a way to specify data processiing workflows with a human-readable and writeable syntax. WDL makes it straightforward to define complex analysis tasks, chain them together in workflows, and parallelize their execution [@wdl]. -CWL is a way to describe command line tools and connect +CWL on the other hand, is a way to describe command line tools and connect them together to create workflows. Because CWL is a specification and not a specific piece of software, tools and workflows described using CWL are portable across -<<<<<<< HEAD -a variety of platforms that support the CWL standard [@cwl:2021]. -======= a variety of platforms that support the CWL standard [@cwl]. ->>>>>>> temp -Groups using WDL or CWL can find it difficult to learn the other workflow definition language if they need to run their workflows in other platforms. It becomes even harder when the workflows contain domain specific knowledge mixed with the definitions, and when analysts and scientists need to consider future collaboration of other groups on the workflows definitions. +Groups using WDL or CWL can find it difficult to learn the other workflow definition +language if they need to run their workflows in other platforms. It becomes even harder +when the workflows contain domain specific knowledge mixed with the definitions, and +when analysts and scientists need to consider future collaboration of other groups on +the workflows definitions. ``wdl2cwl`` is a Python package for converting workflow written in WDL to workflows in CWL. The ``wdl2cwl`` package uses the ``miniwdl`` package [@miniwdl], an open source, Python package, @@ -51,20 +47,11 @@ an open source, Python package for parsing CWL files) and performing error check for valid imports, input declarations, expressions and other useful operations on CWL files. ``wdl2cwl`` was designed to be used by both CWL/WDL professionals and researchers, as well -<<<<<<< HEAD -as students in courses on bioinformatics and data analytics. It has already been -used to convert a number of WDL workflows. Some reasons why an analyst might want to use the tool are: -- It can help an analyst to avoid platform dependency issues (like trying to reproduce a WDL workflow on a platform that only allows CWL). -- It can be used to eliminate the need for an CWL analysts to learn the WDL language in order to use a workflow written in WDL. -- It can be used to create a more widely available workflow that can be used by users -of either languages. -======= as students of bioinformatics and data analytics. It can help CWL analysts to avoid platform dependency issues (like trying to reproduce a WDL workflow on a platform that only allows CWL). It can help analysts by eliminating the difficulty of learning a new workflow language before they an use a WDL worflow. It can be used to create a more widely available workflow that can be used by analysts of either languages. ->>>>>>> temp # Acknowledgements From 458aed40bd539d1cec77cbbedfe5c7d4cfe42fc3 Mon Sep 17 00:00:00 2001 From: Dennis Chukwunta Date: Thu, 24 Mar 2022 18:02:59 +0100 Subject: [PATCH 09/10] Update paper/paper.md Co-authored-by: Bruno P. Kinoshita --- paper/paper.md | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/paper/paper.md b/paper/paper.md index 5ecd4b61..ea22dbee 100644 --- a/paper/paper.md +++ b/paper/paper.md @@ -46,12 +46,8 @@ needed to create a valid CWL file ( this is done using the ``cwl-utils`` package an open source, Python package for parsing CWL files) and performing error checking for valid imports, input declarations, expressions and other useful operations on CWL files. -``wdl2cwl`` was designed to be used by both CWL/WDL professionals and researchers, as well -as students of bioinformatics and data analytics. It can help CWL analysts to avoid -platform dependency issues (like trying to reproduce a WDL workflow on a platform that -only allows CWL). It can help analysts by eliminating the difficulty of learning a new -workflow language before they an use a WDL worflow. It can be used to create a more -widely available workflow that can be used by analysts of either languages. +``wdl2cwl`` was designed for users familiar with CWL or WDL, and can be used in different domains such as data analytics, bioinformatics, GIS, and more. Users that have CWL workflows, for instance, will not have to worry +about installing the dependencies for running a WDL workflow. It also eases the learning curve when one knows CWL and needs to use WDL and vice-versa. # Acknowledgements From 989548646ae32d2895d2aeb96097f39f5ce22745 Mon Sep 17 00:00:00 2001 From: th3nn3ss Date: Thu, 28 Apr 2022 10:54:42 +0100 Subject: [PATCH 10/10] update paper.md --- paper/paper.md | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/paper/paper.md b/paper/paper.md index ea22dbee..767eb5bc 100644 --- a/paper/paper.md +++ b/paper/paper.md @@ -23,12 +23,12 @@ bibliography: paper.bib Computational workflows are used in data analysis, enabling innovation and decision-making in various fields of science. There are several competing workflow description systems, WDL (Workflow description Language) and CWL (Common Workflow Language) are two examples -of popularly used systems. WDL offers a way to specify data processiing workflows with -a human-readable and writeable syntax. WDL makes it straightforward to define +of popularly used systems. WDL offers a way to specify data processing workflows with +a human-readable and writable syntax. WDL makes it straightforward to define complex analysis tasks, chain them together in workflows, and parallelize their execution [@wdl]. CWL on the other hand, is a way to describe command line tools and connect them together to create workflows. Because CWL is a specification and not a -specific piece of software, tools and workflows described using CWL are portable across +specific pieces of software, tools and workflows described using CWL are portable across a variety of platforms that support the CWL standard [@cwl]. Groups using WDL or CWL can find it difficult to learn the other workflow definition @@ -37,7 +37,7 @@ when the workflows contain domain specific knowledge mixed with the definitions, when analysts and scientists need to consider future collaboration of other groups on the workflows definitions. -``wdl2cwl`` is a Python package for converting workflow written in WDL to workflows in CWL. +``wdl2cwl`` is a Python package for converting workflows written in WDL to workflows in CWL. The ``wdl2cwl`` package uses the ``miniwdl`` package [@miniwdl], an open source, Python package, developer toolkit and local runner for running WDL files. The ``wdl2cwl`` package was designed to provide a class-based and developer-friendly interface for extracting @@ -46,11 +46,15 @@ needed to create a valid CWL file ( this is done using the ``cwl-utils`` package an open source, Python package for parsing CWL files) and performing error checking for valid imports, input declarations, expressions and other useful operations on CWL files. -``wdl2cwl`` was designed for users familiar with CWL or WDL, and can be used in different domains such as data analytics, bioinformatics, GIS, and more. Users that have CWL workflows, for instance, will not have to worry -about installing the dependencies for running a WDL workflow. It also eases the learning curve when one knows CWL and needs to use WDL and vice-versa. +``wdl2cwl`` was designed to be used by both CWL/WDL professionals and researchers, as well +as students of bioinformatics and data analytics. It can help CWL analysts to avoid +platform dependency issues (like trying to reproduce a WDL workflow on a platform that +only allows CWL). It can help analysts by eliminating the difficulty of learning a new +workflow language before they can use a WDL workflow. It can be used to create a more +widely available workflow that can be used by analysts of either language. # Acknowledgements -We acknowledge the work by the developers of miniwdl, CWL and WDL. +We acknowledge the Chan Zuckerberg Initiative (CZI) for supporting this work through their EOSS - Diversity & Inclusion grant. We are grateful to Outreachy and their internship program for organizing and providing support for two internships (six months) focused on building this project. Additionally, we acknowledge the work by the developers of miniwdl, CWL and WDL. # References