summaryrefslogtreecommitdiff
AgeCommit message (Expand)Author
2021-06-01In pipe, pass through input keys to all expressions.•••Earlier, the input keys would only be passed to the first expression. The second expression would only receive the output keys from the first expression. Passing input keys through to all expressions is a common use case, since expressions often need to access global inputs. If the original behavior is desired, we can always introduce a new construct, say `pipe-strict'. * ccwl/ccwl.scm (workflow-steps): In pipe, pass through input keys to all expressions. Arun Isaac
2021-06-01Filter out global workflow inputs from workflow outputs.•••* ccwl/ccwl.scm (key->output): New function. (workflow-steps): Filter out global workflow inputs from workflow-outputs. Arun Isaac
2021-06-01Add filter-mapi.•••* ccwl/utils.scm (filter-mapi): New public function. Arun Isaac
2021-06-01Add syntax-lambda**.•••* ccwl/utils.scm (syntax-lambda**): New public macro. Arun Isaac
2021-06-01Avoid datum->syntax.•••* ccwl/utils.scm (lambda**): Avoid using datum->syntax whenever possible. Arun Isaac
2021-06-01Add unsyntax-keywords.•••* ccwl/utils.scm (unsyntax-keywords): New function. Arun Isaac
2021-05-25Git ignore auto-generated doc files.•••* .gitignore: Add doc/*.html, doc/*.info, doc/.dirstamp and doc/stamp-vti. Arun Isaac
2021-05-25Add texinfo as a build dependency.•••* guix.scm: Import (gnu packages texinfo). Add texinfo to native-inputs. Arun Isaac
2021-05-25Add table of contents to manual.•••* doc/ccwl.texi: Add table of contents. Arun Isaac
2021-05-25Add title and copyright pages to manual.•••* doc/ccwl.texi: Add title and copyright pages. Arun Isaac
2021-05-25Hide Top node introduction in printed manual.•••* doc/ccwl.texi (Top): Move introduction into ifnottex block. Arun Isaac
2021-05-25Mention version in manual.•••* doc/ccwl.texi: Include version.texi. (Top): Mention version. Arun Isaac
2021-05-24Mention documentation in the README.•••* README.org (Documentation): New section. Arun Isaac
2021-05-24Rewrite the README introduction to ccwl.•••* README.org: Rewrite introduction. Arun Isaac
2021-05-24Add HTML manual to website.•••* Makefile.am (website/manual/dev/en): New target. (website): Require website/manual/dev/en. (AM_MAKEINFOHTMLFLAGS): Add --css-ref=/style.css to include CSS. Arun Isaac
2021-05-24Add CSS to website.•••* Makefile.am (website/style.css): New target. (website): Require website/style.css. * style.css: New file. Arun Isaac
2021-05-24Build website from README.org.•••* Makefile.am (website, website/index.html, clean-local): New targets. * build-aux/build-home-page.el: New file. Arun Isaac
2021-05-24Add Contributing section to README.•••* README.org (Contributing): New section. Arun Isaac
2021-05-24Downcase ccwl.•••* README.org: Downcase ccwl. Arun Isaac
2021-05-24Do not compile pre-inst-env.•••* pre-inst-env.in: Add --no-auto-compile flag to shebang. Arun Isaac
2021-05-24Remove unnecessary -s flag from shebang.•••* pre-inst-env.in, scripts/ccwl.in: Remove unnecessary -s flag from shebang. Arun Isaac
2021-05-24Replace suffix rule with pattern rule.•••Suffix rules are deprecated and should not be used. Pattern rules are clearer and more general. * Makefile.am: Replace suffix rule to build scheme files with pattern rule. Arun Isaac
2021-05-24Do not bind command line argument 0 in pre-inst-env.•••* pre-inst-env.in: Do not bind command line argument 0 to a variable. Arun Isaac
2021-05-24Set PATH in pre-inst-env.•••* pre-inst-env.in: Append scripts directory to PATH. Arun Isaac
2021-05-24Add "Workflow with multiple steps" to tutorial.•••* doc/ccwl.texi (Workflow with multiple steps): New node. (Tutorial): Link to "Workflow with multiple steps" node from menu. Arun Isaac
2021-05-24Install ccwl script.•••* Makefile.am (bin_SCRIPTS): Add scripts/ccwl. Arun Isaac
2021-05-24Add "Capturing output files" to tutorial.•••* doc/ccwl.texi (Capturing output files): New section. (Tutorial): Link to "Capturing output files" node from menu. Arun Isaac
2021-05-24Add "Capturing stdout" section to tutorial.•••* doc/ccwl.texi (Capturing the standard output stream of a command): New section. * doc/ccwl.texi (Tutorial): Link to "Capturing stdout" node from menu. Arun Isaac
2021-05-24Add "First example" section to tutorial.•••* doc/ccwl.texi (First example): New section. (Tutorial): Link to "First example" node from menu. Arun Isaac
2021-05-24Add tutorial.•••* doc/ccwl.texi (Tutorial): New chapter. (Top): Link to "Tutorial" node from menu. Arun Isaac
2021-05-23Unify command variable reference.•••* ccwl/ccwl.scm (command-variable, command-syntax->object): Delete functions. (command-object): New function. (workflow-steps): Use command-object instead of command-variable and command-syntax->object. Arun Isaac
2021-05-23Add manual.•••* doc/ccwl.texi: New file. * Makefile.am (bin_SCRIPTS): Add doc/ccwl.texi. Arun Isaac
2021-05-17Support simpler syntax for inputs with no properties.•••* ccwl/ccwl.scm (workflow): When input has no properties, support only specifying the symbol. Arun Isaac
2021-05-17Support implicit key pairing.•••* ccwl/ccwl.scm (command-syntax->object): When command accepts only a single input and there is only a single key available, support implicit key pairing. Arun Isaac
2021-05-17Support commands with implicit step identifier.•••* ccwl/ccwl.scm (workflow-steps): When command does not specify step identifier, assume the step identifier is the same as the command symbol. Arun Isaac
2021-05-17Abstract out command variable reflection.•••* ccwl/ccwl.scm (command-variable, command-syntax->object): New functions. (workflow-steps): Use command-variable and command-syntax->object. Arun Isaac
2021-05-17Remove deprecated %stdin and %stdout variables.•••* ccwl/ccwl.scm (%stdin, %stdout): Delete variables. Arun Isaac
2021-05-17Indent workflow macro correctly.•••* .dir-locals.el (scheme-mode): Set scheme-indent-function of workflow to 1. Arun Isaac
2021-05-17Support general DAG workflows.•••* ccwl/ccwl.scm: Import (srfi srfi-71). (command-input-keys, workflow-steps): New function. (workflow): Support general Directed Acyclic Graph (DAG) workflows. Arun Isaac
2021-05-15Implement <key> type and utilities.•••* ccwl/ccwl.scm (<key>): New type. (key, cwl-key-address): New functions. Arun Isaac
2021-05-15Pass inputs explicitly to make-workflow.•••* ccwl/ccwl.scm (make-workflow): Accept inputs explicitly. Arun Isaac
2021-05-15Use symbols as input identifiers instead of strings.•••* ccwl/ccwl.scm (input=?): Compare using eq? instead of string=?. (command->cwl, write-cwl): Convert input-id to string before appending. Arun Isaac
2021-05-15Make stdin a unary key of command.•••* ccwl/ccwl.scm (command): Make stdin a unary key. Arun Isaac
2021-05-15Do not convert YAML symbols from kebab case to camel case.•••Doing this conversion effectively forbids kebab case symbols in YAML. * ccwl/yaml.scm (kebab->camel): Delete function. (display-atom): Do not convert symbols from kebab case to camel case. * ccwl/ccwl.scm (make-workflow, output->cwl, command->cwl): Write camel case explicitly. Arun Isaac
2021-05-15Add list functions for multi-valued functions.•••* ccwl/utils.scm (mapn, append-mapn, foldn): New public functions. Arun Isaac
2021-05-14Rewrite pre-inst-env in scheme.•••Scheme code is more readable than arcane bash. * pre-inst-env.in: Rewrite in scheme. Arun Isaac
2021-04-26Remove deprecated pipeline function.•••* ccwl/ccwl.scm (pipeline): Delete function. Arun Isaac
2021-04-26Escape asterisk characters in scm->yaml.•••* ccwl/yaml.scm (display-atom): Escape asterisk characters. * tests/yaml.scm ("strings with asterisk characters should be escaped"): New test. Arun Isaac
2021-04-26Test if scm->yaml escapes hyphen characters.•••* tests/yaml.scm ("strings with hyphen characters should be escaped"): New test. Arun Isaac
2021-04-26Add .gitignore.•••* .gitignore: New file. Arun Isaac