| Age | Commit message (Collapse) | Author | 
|---|
|  | * ravanan/work/command-line-tool.scm (match-type): Comment on cond
ladder clauses. | 
|  | * ravanan/work/command-line-tool.scm (formal-parameter-type): Comment
on cond ladder clauses. | 
|  | * ravanan/vectors.scm: Move to ravanan/work/vectors.scm.
* ravanan/command-line-tool.scm, ravanan/job-state.scm,
ravanan/reader.scm, ravanan/workflow.scm: Import (ravanan work
vectors) instead of (ravanan vectors). | 
|  | * ravanan/monads.scm: Move to ravanan/work/monads.scm.
* ravanan/command-line-tool.scm, ravanan/propnet.scm,
ravanan/reader.scm, ravanan/workflow.scm: Import (ravanan work
vectors) instead of (ravanan vectors). | 
|  | * ravanan/utils.scm: Do not import (rnrs base). Move assoc-ref* to ...
* ravanan/work/utils.scm: ... here. Import assertion-violation
from (rnrs base).
* ravanan/command-line-tool.scm, ravanan/workflow.scm: Do not
import (ravanan utils). | 
|  | * ravanan/command-line-tool.scm (intern-file): Intern file only if it
is not already in the store. | 
|  | * ravanan/command-line-tool.scm (copy-input-files-gexp): Make
G-expression singular. | 
|  | * ravanan/command-line-tool.scm (build-command-line-tool-script):
Coerce expressions in glob patterns. | 
|  | * ravanan/command-line-tool.scm (build-command-line-tool-script):
Import (ravanan work ui) into G-expression. | 
|  | * ravanan/ui.scm: Move to ravanan/work/ui.scm.
* ravanan/command-line-tool.scm, ravanan/workflow.scm: Import (ravanan
work ui) instead of (ravanan ui). | 
|  | * ravanan/reader.scm (normalize-workflow)[normalize-secondary-files]:
New function.
[normalize-formal-input]: Use normalize-secondary-files.
[normalize-formal-output]: New function.
Call normalie-formal-output from main body. | 
|  | * ravanan/vectors.scm (vector-append-map): New public function. | 
|  | * ravanan/reader.scm (normalize-formals): Refactor type normalization
into ...
[normalize-type]: ... new function. | 
|  | This resolves the warning about importing (ice-9 filesystem) from the
host.
* ravanan/command-line-tool.scm: Import guile-filesystem from (gnu
packages guile-xyz).
(build-command-line-tool-script): Use with-extensions, not
with-imported-modules, to import guile-filesystem. | 
|  | * ravanan/command-line-tool.scm (build-command-line-tool-script):
Support File type staging entries. | 
|  | * ravanan/command-line-tool.scm (javascript-expression?): Return #t
even for parameter references mixed with literals.
(interpolate-parameter-references): New function.
(strip-javascript-expression): Delete function.
(coerce-expression): Use interpolate-parameter-references instead of
strip-javascript-expression. | 
|  | * ravanan/command-line-tool.scm (build-command-line-tool-script):
Import (rnrs io ports). | 
|  | * ravanan/command-line-tool.scm (build-command-line-tool-script):
Replace call-with-output-file with call-with-input-file. | 
|  | *
ravanan/command-line-tool.scm (build-command-line-tool-script)[files-to-stage]:
Use coerce-expression.
Adapt calling expression. | 
|  | * ravanan/command-line-tool.scm (build-command-line-tool-script):
Wrap result of files-to-stage in a maybe monad. | 
|  | *
ravanan/command-line-tool.scm (build-command-line-tool-script)[files-to-stage]:
Use vector-map->list. | 
|  | * ravanan/ui.scm (warning, user-error): Add docstrings. | 
|  | * ravanan/workflow.scm: Import (ravanan ui).
(run-workflow): Error out when required inputs are not specified. | 
|  | * ravanan/workflow.scm (optional-input?): New function.
(command-line-tool->propagator): Use optional-input?. | 
|  | error collides with a core binding.
* ravanan/ui.scm (error): Rename to user-error.
* ravanan/command-line-tool.scm: Import error without renaming to
raise-error. Replace calls to error with user-error, and calls to
raise-error with error. | 
|  | * ravanan/command-line-tool.scm: Import (ravanan ui).
(warning, error): Move to (ravanan ui).
* ravanan/ui.scm: New file. | 
|  | * ravanan/job-state.scm: New file.
* ravanan/command-line-tool.scm: Import (ravanan job-state).
(<single-machine-job-state>, <slurm-job-state>): Move to (ravanan
job-state).
(command-line-tool-scheduler): Use job-state-status and
job-state-script. | 
|  | * ravanan/slurm-api.scm (submit-job): Accept name argument and set it
as the job name.
* ravanan/command-line-tool.scm (run-command-line-tool): Pass name to
submit-job. | 
|  | * ravanan/propnet.scm (run-propnet): Pre-schedule all propagators.
* tests/propnet.scm: New file. | 
|  | * ravanan/workflow.scm (%supported-requirements): Add
ScatterFeatureRequirement. | 
|  | * .dir-locals.el (scheme-mode): Do not set scheme-indent-function on
call-with-temporary-directory. | 
|  | For other major modes, especially in magit commit message buffers, we
want the default fill-column of 70.
* .dir-locals.el (nil)[fill-column]: Move to scheme-mode. | 
|  | * tests/work/command-line-tool.scm: New file. | 
|  | log files are generated by tests.
* .gitignore: Add *.log. | 
|  | * Makefile (GUILE, tests): New variable.
(check): New target.
* guix.scm (ravanan)[arguments]: Enable tests. | 
|  | * bin/ravanan: Import (guix profiles). | 
|  | *
ravanan/command-line-tool.scm (command-line-tool-scheduler)[schedule,
poll, capture-output]: Implement scatter steps. | 
|  | * ravanan/command-line-tool.scm (<scheduler-proc>)[scatter,
scatter-method]: New fields.
* ravanan/workflow.scm (command-line-tool->propagator,
workflow-class->propagators): Initialize scatter and scatter-method in
scheduler-proc object. | 
|  | * ravanan/vectors.scm: Import vector-every from (srfi srfi-43) and
re-export it. | 
|  | * ravanan/command-line-tool.scm (command-line-tool-scheduler):
Refactor scheduler into separate named functions. | 
|  | The job state records must not be inspected from other modules. They
may only be passed around as opaque blobs.
* ravanan/command-line-tool.scm: Do not export
single-machine-job-state, single-machine-job-state?,
single-machine-job-state-script, slurm-job-state, slurm-job-state?,
slurm-job-state-script and slurm-job-state-job-id. | 
|  | * ravanan/command-line-tool.scm (<scheduler-proc>): New record type.
(command-line-tool-scheduler): Use <scheduler-proc> records.
* ravanan/workflow.scm (command-line-tool->propagator): Use
<scheduler-proc> records. | 
|  | * ravanan/propnet.scm (<propagator>)[optional-inputs]: New field.
* ravanan/propnet.scm (activate-propagator): Activate propagator even
when optional inputs are absent.
* ravanan/workflow.scm: Import (ravanan work utils).
(command-line-tool->propagator, workflow-class->propagators): Specify
optional inputs of propagators.
(workflow->command-line-tool-steps): Inherit defaults down to the steps from the
containing workflow.
[inherit-defaults]: New function. | 
|  | * ravanan/work/command-line-tool.scm (match-type): Handle matching
null objects to array types. | 
|  | * ravanan/work/command-line-tool.scm (vector-empty?): Delete function.
(match-type): Match null type using pattern matching. | 
|  | * ravanan/workflow.scm (run-workflow)[capture-output]: Do not error
out on optional outputs (that is, of the null type). | 
|  | * ravanan/vectors.scm: Import (srfi srfi-1).
(vector-filter-map->list): New public function. | 
|  | * ravanan/workflow.scm (run-workflow)[capture-output]: New function.
Use capture-output. | 
|  | *
ravanan/command-line-tool.scm (build-command)[input+type-tree+binding->command-line-binding]:
Remove mutual recursion with collect-bindings. | 
|  | *
ravanan/command-line-tool.scm (build-command-line-tool-script)[output-binding-glob]:
Require glob only for File and Directory types. |