Age | Commit message (Expand) | Author |
2021-06-01 | In 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-01 | Filter 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-01 | Add filter-mapi.•••* ccwl/utils.scm (filter-mapi): New public function.
| Arun Isaac |
2021-06-01 | Add syntax-lambda**.•••* ccwl/utils.scm (syntax-lambda**): New public macro.
| Arun Isaac |
2021-06-01 | Avoid datum->syntax.•••* ccwl/utils.scm (lambda**): Avoid using datum->syntax whenever
possible.
| Arun Isaac |
2021-06-01 | Add unsyntax-keywords.•••* ccwl/utils.scm (unsyntax-keywords): New function.
| Arun Isaac |
2021-05-25 | Git ignore auto-generated doc files.•••* .gitignore: Add doc/*.html, doc/*.info, doc/.dirstamp and
doc/stamp-vti.
| Arun Isaac |
2021-05-25 | Add texinfo as a build dependency.•••* guix.scm: Import (gnu packages texinfo).
Add texinfo to native-inputs.
| Arun Isaac |
2021-05-25 | Add table of contents to manual.•••* doc/ccwl.texi: Add table of contents.
| Arun Isaac |
2021-05-25 | Add title and copyright pages to manual.•••* doc/ccwl.texi: Add title and copyright pages.
| Arun Isaac |
2021-05-25 | Hide Top node introduction in printed manual.•••* doc/ccwl.texi (Top): Move introduction into ifnottex block.
| Arun Isaac |
2021-05-25 | Mention version in manual.•••* doc/ccwl.texi: Include version.texi.
(Top): Mention version.
| Arun Isaac |
2021-05-24 | Mention documentation in the README.•••* README.org (Documentation): New section.
| Arun Isaac |
2021-05-24 | Rewrite the README introduction to ccwl.•••* README.org: Rewrite introduction.
| Arun Isaac |
2021-05-24 | Add 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-24 | Add CSS to website.•••* Makefile.am (website/style.css): New target.
(website): Require website/style.css.
* style.css: New file.
| Arun Isaac |
2021-05-24 | Build 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-24 | Add Contributing section to README.•••* README.org (Contributing): New section.
| Arun Isaac |
2021-05-24 | Downcase ccwl.•••* README.org: Downcase ccwl.
| Arun Isaac |
2021-05-24 | Do not compile pre-inst-env.•••* pre-inst-env.in: Add --no-auto-compile flag to shebang.
| Arun Isaac |
2021-05-24 | Remove unnecessary -s flag from shebang.•••* pre-inst-env.in, scripts/ccwl.in: Remove unnecessary -s flag from
shebang.
| Arun Isaac |
2021-05-24 | Replace 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-24 | Do 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-24 | Set PATH in pre-inst-env.•••* pre-inst-env.in: Append scripts directory to PATH.
| Arun Isaac |
2021-05-24 | Add "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-24 | Install ccwl script.•••* Makefile.am (bin_SCRIPTS): Add scripts/ccwl.
| Arun Isaac |
2021-05-24 | Add "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-24 | Add "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-24 | Add "First example" section to tutorial.•••* doc/ccwl.texi (First example): New section.
(Tutorial): Link to "First example" node from menu.
| Arun Isaac |
2021-05-24 | Add tutorial.•••* doc/ccwl.texi (Tutorial): New chapter.
(Top): Link to "Tutorial" node from menu.
| Arun Isaac |
2021-05-23 | Unify 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-23 | Add manual.•••* doc/ccwl.texi: New file.
* Makefile.am (bin_SCRIPTS): Add doc/ccwl.texi.
| Arun Isaac |
2021-05-17 | Support 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-17 | Support 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-17 | Support 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-17 | Abstract 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-17 | Remove deprecated %stdin and %stdout variables.•••* ccwl/ccwl.scm (%stdin, %stdout): Delete variables.
| Arun Isaac |
2021-05-17 | Indent workflow macro correctly.•••* .dir-locals.el (scheme-mode): Set scheme-indent-function of workflow
to 1.
| Arun Isaac |
2021-05-17 | Support 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-15 | Implement <key> type and utilities.•••* ccwl/ccwl.scm (<key>): New type.
(key, cwl-key-address): New functions.
| Arun Isaac |
2021-05-15 | Pass inputs explicitly to make-workflow.•••* ccwl/ccwl.scm (make-workflow): Accept inputs explicitly.
| Arun Isaac |
2021-05-15 | Use 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-15 | Make stdin a unary key of command.•••* ccwl/ccwl.scm (command): Make stdin a unary key.
| Arun Isaac |
2021-05-15 | Do 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-15 | Add list functions for multi-valued functions.•••* ccwl/utils.scm (mapn, append-mapn, foldn): New public functions.
| Arun Isaac |
2021-05-14 | Rewrite pre-inst-env in scheme.•••Scheme code is more readable than arcane bash.
* pre-inst-env.in: Rewrite in scheme.
| Arun Isaac |
2021-04-26 | Remove deprecated pipeline function.•••* ccwl/ccwl.scm (pipeline): Delete function.
| Arun Isaac |
2021-04-26 | Escape 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-26 | Test if scm->yaml escapes hyphen characters.•••* tests/yaml.scm ("strings with hyphen characters should be escaped"):
New test.
| Arun Isaac |
2021-04-26 | Add .gitignore.•••* .gitignore: New file.
| Arun Isaac |