aboutsummaryrefslogtreecommitdiff
BranchCommit messageAuthorAge
keyringAdd key for arunisaac.Arun Isaac5 months
maincommand-line-tool: Handle G-exp args when joining with item separator.Arun Isaac12 hours
 
 
AgeCommit messageAuthor
12 hourscommand-line-tool: Handle G-exp args when joining with item separator.•••* ravanan/command-line-tool.scm (command-line-binding->args): Handle G-exp args when joining with item separator. HEADmainArun Isaac
12 hoursworkflow: Handle exceptions in run-workflow.•••Since our scheduler is now state-monadic, the exception handler must guard the context in which the monad is actually run. * ravanan/workflow.scm (workflow-scheduler): Move exception handler to ... (run-workflow): ... here. Arun Isaac
13 hoursslurm-api: Bind return value of slurm-http-get in the state monad.•••* ravanan/slurm-api.scm (job-state): Bind return value of slurm-http-get in the state monad. Arun Isaac
14 hoursreader: Normalize File array type formals too.•••* ravanan/reader.scm: Import (ravanan work types). (some-file-type?): New function. (normalize-formal-input, normalize-formal-output): Normalize File array type formals too. * tests/reader.scm: Import (srfi srfi-1) and (ice-9 match). (normalize-formal-input, normalize-formal-output): New variables. (json=?): New function. ("Normalize File type formal input", "Normalize File array type formal input", "Normalize array of File arrays type formal input", "Normalize File type formal output", "Normalize File array type formal output", "Normalize array of File arrays type formal output"): New tests. Arun Isaac
14 hoursreader: Promote normalize functions to top level.•••It is easier to test top-level functions. * ravanan/reader.scm (normalize-workflow)[normalize-secondary-files, normalize-formal-input, normalize-formal-output, normalize-base-command, normalize-arguments, normalize-steps]: Promote to top level. Arun Isaac
37 hoursworkflow: Return correct updated state when polling list states.•••We were returning the original input state. That was obviously a catastrophe! I have spent the better part of the day debugging this. I am tired. * ravanan/workflow.scm (workflow-scheduler)[poll]: Return correct updated state when polling list states. Arun Isaac
47 hourscommand-line-tool: Write output JSON atomically to the store.•••* ravanan/command-line-tool.scm (run-command-line-tool, build-command-line-tool-script): Write output JSON atomically to the store. Arun Isaac
47 hourswork/utils: Add call-with-atomic-output-file.•••* ravanan/work/utils.scm: Import (srfi srfi-71), (system foreign) and (system foreign-library). (fsync): New function. (call-with-atomic-output-file): New public function. Arun Isaac
47 hoursutils: Delete unused call-with-temporary-file.•••* ravanan/utils.scm (call-with-temporary-file): Delete function. Arun Isaac
3 dayspropnet: Make interface state-monadic.•••* ravanan/job-state.scm (job-state-status): Return a state-monadic value. * ravanan/propnet.scm: Import (srfi srfi-26). (schedule-propnet, poll-propnet, capture-propnet-output): Return a state-monadic value. * ravanan/workflow.scm (workflow-scheduler)[schedule, poll, capture-output]: Return a state-monadic value. (run-workflow): Accept state-monadic values from schedule, poll and capture-output. Arun Isaac
[...]