summaryrefslogtreecommitdiff
AgeCommit message (Expand)Author
2021-04-16Add .dir-locals.el for emacs.•••* .dir-locals.el: New file. Arun Isaac
2021-04-16Implement lambda** n-ary keyword function.•••* ccwl/utils.scm: Export lambda** instead of group-arguments. (group-arguments): Delete function. (lambda**): New macro. Arun Isaac
2021-04-16Make unary-keywords argument of group-keyword-arguments optional.•••* ccwl/utils.scm (group-keyword-arguments): Make unary-keywords optional. Arun Isaac
2021-04-16Add plist-ref utility.•••* ccwl/utils.scm: Import (srfi srfi-26). (plist-ref): New function. Arun Isaac
2021-04-12Support n-ary keyword arguments.•••* ccwl/utils.scm: New file. Arun Isaac
2021-03-26Add README.•••* README.org: New file. Arun Isaac
2021-03-26Add copy of GPLv3.•••* COPYING: New file. Arun Isaac
2021-03-22List additional-inputs while generating CWL.•••* ccwl/ccwl.scm (command->cwl): List additional-inputs in inputs array. Arun Isaac
2021-03-22Add additional-inputs field to <command> type.•••* ccwl/ccwl.scm (<command>): Add additional-inputs field. (command): Initialize additional-inputs field. Arun Isaac
2021-03-22Remove input->tree abstraction.•••<input> objects need to be expanded into CWL in context sensitive ways. There is no simple generalization. * ccwl/ccwl.scm (input->tree): Delete function. (workflow): Expand input->tree. Arun Isaac
2021-03-22Delete input field of <command> object.•••* ccwl/ccwl.scm (<command>): Delete input field. (command): Do not set inputs field. Arun Isaac
2021-03-21Print steps enclosing <command> objects correctly.•••* ccwl/ccwl.scm (write-cwl): Invoke command->cwl if step encloses <command> object. Arun Isaac
2021-03-21Use both CWL arguments and inputs arrays.•••* ccwl/ccwl.scm (<cli-element>): New type. (command->cwl): Put string and expression arguments into the arguments array. Put <input> arguments into the inputs array. Arun Isaac
2021-03-21Add alist filtering utility function.•••* ccwl/ccwl.scm (filter-alist): New function. (input->tree): Use filter-alist. Arun Isaac
2021-03-21Set the default output of a pipeline.•••* ccwl/ccwl.scm (pipeline): Set the stdout of the last command to be the default output of the pipeline. Arun Isaac
2021-03-21Pull out cwl-version as a separate variable.•••* ccwl/ccwl.scm (%cwl-version): New variable. (workflow, command->cwl): Use %cwl-version. Arun Isaac
2021-03-21Add prefix field to <input> object.•••* ccwl/ccwl.scm (<input>): Add prefix field. (input): Initialize prefix field. (input-with-prefix): New public function. Arun Isaac
2021-03-21Remove appender for inputs field of <command>.•••* ccwl/ccwl.scm (append-command-inputs): Delete function. Arun Isaac
2021-03-17Set default type of outputs to File.•••* ccwl/ccwl.scm (output): Set default type to File. Arun Isaac
2021-03-17Set default type of inputs to File.•••* ccwl/ccwl.scm (input): Set default type to File. Arun Isaac
2021-03-07Add write-cwl function to write generated CWL to a file.•••* ccwl/ccwl.scm: Import (srfi srfi-26) and (ccwl yaml). (write-cwl): New public function. Arun Isaac
2021-03-07Remove field binding from constructor of the <input> type.•••* ccwl/ccwl.scm (<input>): Remove field binding from constructor. Arun Isaac
2021-03-07Escape YAML strings that contain the hyphen character.•••* ccwl/yaml.scm (display-atom): Escape string if it contains the hyphen character. Arun Isaac
2021-03-06Auto-connect steps by matching identifiers.•••* ccwl/ccwl.scm (auto-connect): New function. (workflow): Auto-connect step inputs and outputs before generating <step> record. Arun Isaac
2021-03-06Implement pipeline support.•••* ccwl/ccwl.scm (%stdin, %stdout): New variables. (pipeline): New function. Arun Isaac
2021-03-06Rewrite workflow function to output a <step> record.•••All user exposed functions should output a <step> record so that they are composable. * ccwl/ccwl.scm (workflow): Rewrite workflow function to output a <step> record. Arun Isaac
2021-03-06Define input=? predicate.•••* ccwl/ccwl.scm (input=?): New function. Arun Isaac
2021-03-06Add source field to <input> type.•••* ccwl/ccwl.scm (<input>): Add source field. (input): Initialize source field to #f in constructor. Arun Isaac
2021-03-06Remove clitool functions.•••* ccwl/ccwl.scm (clitool, clitool-step): Delete functions. Arun Isaac
2021-03-06Add command->cwl rendering function.•••* ccwl/ccwl.scm (output->cwl, command->cwl): New functions. Arun Isaac
2021-03-06Add modifier for run field of <step> object.•••* ccwl/ccwl.scm (modify-step-run): New function. Arun Isaac
2021-03-06Add field appenders.•••* ccwl/ccwl.scm (field-appender, append-step-in, append-step-out, append-command-inputs, append-command-outputs): New functions. Arun Isaac
2021-03-06Introduce <command> type.•••* ccwl/ccwl.scm (<command>): New type. (command): New function. Arun Isaac
2021-03-06Delete command parsing functions.•••We will not auto-parse commands and try to associate a binding to inputs. If we specify the command using the arguments field of the CWL specification, we don't need to know the base command or the bindings. * ccwl/ccwl.scm: Do not import (srfi srfi-71). (parse-arguments, break-pair, parse-command): Delete functions. Arun Isaac
2021-03-06Remove <intermediate> type.•••We will auto-connect inputs and outputs by matching their unique identifiers. * ccwl/ccwl.scm (<intermediate>): Delete type. Arun Isaac
2021-03-06Re-order fields of <input> type.•••* ccwl/ccwl.scm (<input>): Re-order <input> fields to be consistent with its constructor. Arun Isaac
2021-03-06Combine <workflow-output> type into <output> type.•••The user should not have to distinguish between regular outputs and workflow outputs. * ccwl/ccwl.scm (<output>): Add source field. (output): Add source field to constructor. (<workflow-output>): Delete type. (workflow-output): Delete function. Arun Isaac
2021-03-06Migrate to SRFI-9 records.•••Functional setters from (srfi srfi-9 gnu) are very useful. * ccwl/ccwl.scm (<input>, unspecified-default, <output>, <intermediate>, <workflow-output>, <step>): Redefine using SRFI-9 records. Arun Isaac
2021-02-27Rewrite parse-command using break-pair.•••* ccwl/ccwl.scm (parse-command): Rewrite using break-pair. Arun Isaac
2021-02-27Add break-pair utility.•••* ccwl/ccwl.scm (break-pair): New function. * tests/ccwl.scm: New file. * tests/ccwl.scm ("break-pair", "break-pair: check last elemet handling"): New test cases. Arun Isaac
2021-02-27Display dictionary entries with empty values on the same line.•••* ccwl/yaml.scm (display-dictionary-entry): If value is an empty array or dictionary, display it on the same line. (scm->yaml): Go to next line after printing empty array. * tests/yaml.scm: New file. * tests/yaml.scm ("dictionary entries with empty arrays and dictionaries for values must render on the same line"): New test case. Arun Isaac
2021-02-27Add scm->yaml-string.•••* ccwl/yaml.scm (scm->yaml-string): New function. Arun Isaac
2021-02-27Rename project to ccwl.•••ccwl stands for Concise Common Workflow Language. * generate-cwl/ccwl.scm: Move to ccwl/ccwl.scm. * generate-cwl/yaml.scm: Move to ccwl/yaml.scm. Arun Isaac
2021-02-25Support embedding clitool into a workflow step.•••* generate-cwl/generate-cwl.scm: Export intermediate and clitool-step. (<intermediate>): New type. (clitool-step): New function. (workflow): Pull out inputs and intermediate put into <step> objects by clitool-step. Arun Isaac
2021-02-23Initial commitArun Isaac