about summary refs log tree commit diff
AgeCommit message (Collapse)Author
37 hourswork/command-line-tool: Recurse with command-line bindings.Arun Isaac
command-line-binding->args must recursively call itself with <command-line-binding> objects.
37 hourswork/command-line-tool: Convert array command-line bindings to list.Arun Isaac
38 hoursjavascript: Trim whitespace characters.Arun Isaac
40 hoursjavascript: Use parser to detect javascript expression.Arun Isaac
This is expensive, but much more robust. False positives due to a stray unmatched "$(" are avoided.
41 hourswork/command-line-tool: Do not assume valueFrom evaluate to strings.Arun Isaac
valueFrom can have expressions that evaluate to numbers, booleans, arrays, or indeed any other type.
41 hourstests: Add boolean javascript expression evaluation tests.Arun Isaac
41 hoursjavascript: Short circuit trivial null, true and false expressions.Arun Isaac
We can handle these without falling back to node.
41 hoursjavascript: Do not treat null as a special case.Arun Isaac
Restrict parameter reference symbol at the parser level. Do not treat null as a special case. Let it drop to node as a javascript expression.
41 hourstests: Add parameter reference missing key test.Arun Isaac
43 hourswork/utils: Error out on missing keys to json-ref.Arun Isaac
45 hoursstore: Do not attempt to predict when hard linking will fail.Arun Isaac
Do not attempt to predict the exact conditions when hard linking will fail. Just try to hard link first, and fall back to copying when it fails. Predicting the exact conditions is complicated, and may not port well.
47 hoursjavascript: Implement function body expressions.Arun Isaac
47 hoursjavascript: Tokenize using PEG grammar.Arun Isaac
Javascript expressions may contain recursively nested parentheses. Matching these parentheses and tokenizing correctly requires a real parser.
2 daystests: Canonicalize JSON trees before comparing them.Arun Isaac
We must canonicalize JSON trees before comparing them since the order of keys in JSON objects is insignificant.
2 daystests: Add null parameter reference tests.Arun Isaac
3 daysjavascript: Provide evaluate-javascript-expression as the interface.Arun Isaac
Rename evaluate-parameter-reference to evaluate-javascript-expression. Adjust invocations and tests. Javascript expressions are more general than parameter references. Hence, it makes sense that the public interface is named after them.
3 dayswork/command-line-tool: Evaluate javascript in strict mode.Arun Isaac
The CWL standard requires us to evaluate javascript in strict mode.
3 daysjavascript: Declare variables using var.Arun Isaac
3 daysMakefile: Add ares target.Arun Isaac
3 daysmanifest: Add guile-ares-rs.Arun Isaac
3 daysgitignore: Add .nrepl-port.Arun Isaac
10 daysmanifest: Use ccwl from (e2e-tests).Arun Isaac
2025-12-02guix: Use compile to output file feature from latest ccwl.Arun Isaac
2025-11-30README: Move ravanan options before workflow and inputs files.Arun Isaac
This order is more conventional.
2025-11-30README: Describe Hello World example in doc directory.Arun Isaac
2025-11-30README: Replace JSON inputs file with YAML inputs file.Arun Isaac
This was missed out in 1e8709f7a1b2a8c4faf4342691cd1fe05712c5a6.
2025-11-30e2e-tests: Add example Hello World workflow from the documentation.Arun Isaac
We want to ensure that the Hello World workflow in our README docs always works!
2025-11-30command-line-tool: Handle absent arguments field.Arun Isaac
2025-11-30guix: Copy CWL files in E2E tests.Arun Isaac
So far, we only supported ccwl sources to be compiled in E2E tests. Now, we also support CWL files that must simply be copied.
2025-11-30doc: Use YAML inputs file in Hello World example.Arun Isaac
2025-11-30store: Create store subdirectories if they don't exist.Arun Isaac
2025-11-29work/command-line-tool: Avoid infinite recursion in matching floats.Arun Isaac
2025-11-29work/command-line-tool: Accept ints as floats too.Arun Isaac
2025-11-29store: Spin out link-or-copy function.Arun Isaac
2025-11-29guix: Use latest ccwl in E2E tests.Arun Isaac
2025-11-29workflow: Handle boolean false input and default value.Arun Isaac
2025-11-29work/command-line-tool: Do not add defaults.Arun Isaac
Defaults have already been added by the scheduler.
2025-11-29workflow: Combine add-defaults into resolve-inputs.Arun Isaac
Combine adding defaults and checking types into input resolution. These functions belong together and combining them avoids an unnecessary repeated checking of types.
2025-11-29workflow: Identify optional inputs with a boolean #f default.Arun Isaac
2025-11-29workflow: Clarify that optional-input? only returns a truthy value.Arun Isaac
optional-input? returns a truthy value, not #t itself.
2025-11-29workflow: Let optional-input? be a true predicate.Arun Isaac
optional-input? must be a predicate that returns #t or #f. It must not return the id of the input.
2025-11-29command-line-tool: Remove unused build-command function.Arun Isaac
The build-command function was moved to (ravanan work command-line-tool), but somehow an unused copy remained in (ravanan command-line-tool).
2025-11-29workflow: Do not validate in run-workflow.Arun Isaac
2025-11-27tests: Test reader end-to-end, don't test specific functions.Arun Isaac
This makes the tests less fragile—that is, less subject to breakage due to code refactoring. And, we can be more confident that the reader actually works end-to-end.
2025-11-27reader: Resolve type ambiguities in default inputs.Arun Isaac
2025-11-27reader: Normalize all formals, not just File type formals.Arun Isaac
2025-11-27workflow: Add defaults to inputs even with Workflow class workflows.Arun Isaac
Earlier, we were adding defaults only with CommandLineTool class workflows, and ignoring defaults in Workflow class workflows.
2025-11-27workflow: Do not require user to provide inputs with a default.Arun Isaac
It is ok for the user to not provide inputs that have a default value.
2025-11-26guix: Do not require listing E2E test files.Arun Isaac
It is not worth the trouble listing each E2E test file individually and compling them in separate derivations.
2025-11-24HACKING: Add release instructions.Arun Isaac