Age | Commit message (Expand) | Author |
2022-01-16 | ccwl: Indent lambda** docstring examples correctly.•••* ccwl/utils.scm (lambda**): Indent docstring examples correctly.
| Arun Isaac |
2022-01-10 | dir-locals: Allows tabs in Makefiles.•••* .dir-locals.el (makefile-gmake-mode): Set indent-tabs-mode to t.
| Arun Isaac |
2022-01-10 | Migrate to hand-written Makefiles.•••The autotools are really overkill for a simple Guile project like
ccwl.
* .gitignore: Delete autotool generated files. Add Makefile.include.
* Makefile.am, Makefile, build-aux/distcheck.scm, configure,
configure.ac, configure.scm: New files.
* NEWS: Rename to NEWS.org. Remove Emacs file-local variable to use
org mode.
* bootstrap.sh: Delete file.
* build-aux/generate-cwl-output.sh.in: Rename to ...
* build-aux/generate-cwl-output.sh: ... this. Replace autoconf
variables for cwltool and sed.
* build-aux/test-driver.scm.in: Rename to ...
* build-aux/test-driver.scm: ... this. Do not import (ice-9
getopt-long).
(%options): Delete variable.
(my-gnu-runner): Do not write to log or trs ports.
Accept test files as command-line arguments. Update invocation of
my-gnu-runner. Print summary of results.
* guix.scm (ccwl)[native-inputs]: Remove autoconf and automake.
* pre-inst-env.in: Rename to ...
* pre-inst-env: ... this. Replace autoconf variables for guile,
abs_top_builddir and abs_top_srcdir.
* scripts/ccwl.in: Rename to ...
* scripts/ccwl: ... this. Replace autoconf variable for guile.
| Arun Isaac |
2021-12-17 | Create specialized type for graphviz edge.•••* ccwl/graphviz.scm (<graph-edge>): New type.
(graph-edge): New function.
(graph->dot): Support specification of edges using the <graph-edge>
type.
| Arun Isaac |
2021-12-17 | Abstract out serialization of graphviz properties.•••* ccwl/graphviz.scm (serialize-properties): New function.
(graph->dot): Use serialize-properties.
| Arun Isaac |
2021-12-13 | ccwl: Support graphviz node ports.•••* ccwl/graphviz.scm (<graph-port>): New type.
(serialize): Support <graph-port> objects.
* tests/graphviz.scm (graph-port): New function.
("serialize ports correctly"): New test case.
| Arun Isaac |
2021-12-13 | ccwl: Organize serialize into a generic function.•••* ccwl/graphviz.scm (serialize): Organize into a generic function that
dispatches on input type.
| Arun Isaac |
2021-12-13 | ccwl: Escape only the double quote character in graphviz output.•••* ccwl/graphviz.scm: Import (ice-9 string-fun).
(serialize): When quoting strings, escape only the double quote
character.
* tests/graphviz.scm ("do not escape backslashes"): New test case.
| Arun Isaac |
2021-12-13 | ccwl: Support graphviz HTML strings.•••* ccwl/graphviz.scm (<html-string>): New type.
(escape-id): Delete function.
(serialize): New function.
(graph->dot): Use serialize instead of escape-id.
* tests/graphviz.scm: New file.
("serialize HTML strings correctly"): New test case.
* Makefile.am (SCM_TESTS): Register it.
| Arun Isaac |
2021-12-10 | guix.scm: Base ccwl package off upstream Guix package.•••* guix.scm: Do not import (gnu packages graphviz), (gnu packages
guile), (gnu packages guile-xyz), (gnu packages pkg-config), (gnu
packages skribilo), (gnu packages texinfo), (guix build-system
gnu), (guix licenses) and (guix utils). Import (gnu packages
bioinformatics) with the guix: prefix.
(ccwl): Base off upstream Guix package.
| Arun Isaac |
2021-12-10 | README: Recommend Guix to set up a development environment.•••* README.org (Contributing): Recommend Guix to set up a development
environment.
| Arun Isaac |
2021-12-10 | README: Recommend upstream Guix package for installation.•••* README.org (Installation)[Using Guix]: Recommend upstream Guix
package.
| Arun Isaac |
2021-12-09 | contrib: Add pggb workflow.•••* contrib/pggb.scm: New file.
| Arun Isaac |
2021-11-29 | README: Emphasize that manual installation is from source.•••* README.org (Installation)[Manually]: Rename to "Manually from
source".
| Arun Isaac |
2021-11-29 | README: Add instructions for installation using software bundles.•••* README.org (Installation)[Using binary software bundles]: New
subsection.
| Arun Isaac |
2021-11-29 | Makefile: Build software bundles.•••* Makefile.am (docker, pack): New targets.
| Arun Isaac |
2021-11-29 | guix.scm: Add a wrap phase.•••* guix.scm (ccwl)[arguments]: Import target-guile-effective-version
from (guix build guile-build-system). Add a wrap phase.
| Arun Isaac |
2021-11-25 | guix.scm: Bump version.•••* guix.scm (ccwl)[version]: Set to 0.2.0.
| Arun Isaac |
2021-11-25 | guix.scm: Use the upstream Guix guile-libyaml package.•••* guix.scm: Do not prefix import of (gnu packages guile-xyz) with
guix:
(guile-libyaml): Delete variable.
| Arun Isaac |
2021-11-19 | README: Add installation instructions.•••* README.org (Installation): New section.
| Arun Isaac |
2021-11-19 | guix.scm: Replace guix environment with guix shell.•••guix environment has been superseded by guix shell.
* guix.scm: Replace guix environment with guix shell.
| Arun Isaac |
2021-11-06 | Release version 0.2.0.•••* configure.ac: Bump version.
* NEWS: Update news.
* website/releases/ccwl-0.2.0.tar.lz,
website/releases/ccwl-0.2.0.tar.lz.asc: New files.
v0.2.0 | Arun Isaac |
2021-11-05 | doc: Search source-path in scheme-source-form.•••* doc/skribilo.scm (scheme-source-form): Search source-path.
| Arun Isaac |
2021-11-05 | build-aux: Extract dependencies from scheme-source-form.•••* build-aux/find-dependencies.scm (find-dependencies): Extract
dependencies from scheme-source-form.
| Arun Isaac |
2021-11-05 | build-aux: Delete duplicates in dependencies.•••* build-aux/find-dependencies.scm: Delete duplicates before printing
out dependencies.
| Arun Isaac |
2021-11-05 | gitignore: Ignore dot files.•••* .gitignore: Add doc/*.dot.
| Arun Isaac |
2021-11-05 | doc: Add spell check workflow to tutorial.•••* doc/ccwl.skb (Tutorial)[Let's write a spell check workflow]: New
section.
* Makefile.am (doc/spell-check.out): New target.
(EXTRA_DIST): Add doc/spell-check-text.txt and doc/dictionary.
* doc/dictionary, doc/spell-check-text.txt,
doc/spell-check-workflow-1.scm, doc/spell-check-workflow-2.scm,
doc/spell-check.scm: New files.
| Arun Isaac |
2021-11-05 | doc: Support extracting specific forms from a scheme file.•••* doc/skribilo.scm (scheme-source-form): New public function.
| Arun Isaac |
2021-11-05 | build-aux: Hide doc/cwl-output in the manual output snippets.•••* build-aux/generate-cwl-output.sh.in: In the sed invocation, replace
doc/cwl-output too.
| Arun Isaac |
2021-11-05 | website: Do not specify line-height on h1, h2 and h3.•••* website/style.css (h1, h2, h3): Delete line-height CSS property.
| Arun Isaac |
2021-11-05 | Makefile: Copy images without recursion.•••* Makefile.am (doc/ccwl.html): Copy images without recursion.
| Arun Isaac |
2021-11-05 | Makefile: Delete target if recipe fails.•••Without this, when recipes involving output redirection fail, their
targets are not deleted.
* Makefile.am (.DELETE_ON_ERROR): New target.
| Arun Isaac |
2021-11-05 | Makefile: Create doc directory before populating it.•••* Makefile.am (doc/.dirstamp): New target.
($(DOC_IMAGES:.png=.dot), $(DOC_OUT)): Depend on doc/.dirstamp.
(CLEAN_DIRECTORIES): Add doc/.dirstamp.
| Arun Isaac |
2021-11-05 | Makefile: Do not clean files based on extension.•••* Makefile.am (CLEANFILES): Replace doc/*.cwl, doc/*.dot, doc/*.out
and doc/*.png with DOC_SCM, DOC_IMAGES and DOC_OUT variables.
| Arun Isaac |
2021-11-05 | Makefile: Distinguish DOC_OTHER from DOC_OUT.•••DOC_OTHER includes dependencies that are neither scm files nor out
files, but are primary sources required for the build.
* Makefile.am (EXTRA_DIST): Add DOC_OTHER.
(doc/ccwl.info, doc/ccwl.html): Depend on DOC_OTHER.
* build-aux/find-dependencies.scm: Output DOC_OTHER.
(find-dependencies): Classify source forms as type 'out or type 'other
based on extension.
| Arun Isaac |
2021-11-05 | doc: Document reuse of external CWL workflows.•••* doc/ccwl.skb (Cookbook): New chapter.
* doc/external-cwl-workflow.scm, doc/echo.cwl: New files.
* .gitignore: Add !doc/echo.cwl.
| Arun Isaac |
2021-11-04 | Makefile: Distribute doc/hello.c.gz. and doc/hello.txt.•••These files are source files required for the build. They were missed
out in an earlier commit.
* Makefile.am (EXTRA_DIST): Add doc/hello.c.gz and doc/hello.txt.
| Arun Isaac |
2021-11-04 | Makefile: Pass auxiliary dependencies from automatic variables.•••This is required to support VPATH builds.
* Makefile.am (doc/capture-output-file.out,
doc/capture-output-file-with-parameter-reference.out,
doc/checksum.out, doc/decompress-compile-run.out, doc/pass-stdin.out):
Pass auxiliary dependencies from automatic variables.
| Arun Isaac |
2021-11-04 | build-aux: Use paths relative to top-level in generate-cwl-output.sh.•••This removes the assumption that the source tree and the build tree
are the same, and is required to support VPATH builds.
* build-aux/generate-cwl-output.sh.in: Accept and write to paths
relative to the top-level directory. Do not change directory.
* Makefile.am (doc/capture-output-file.out,
doc/capture-output-file-with-parameter-reference.out,
doc/checksum.out, doc/decompress-compile-run.out, doc/pass-stdin.out):
Pass relative paths in input arguments.
| Arun Isaac |
2021-11-02 | configure: Check for (yaml) guile module.•••* configure.ac: Check for (yaml) guile module.
| Arun Isaac |
2021-11-02 | Makefile: Distribute doc/hello.tar.•••doc/hello.tar is used to build doc/hello.tar.out.
* Makefile.am (EXTRA_DIST): Add doc/hello.tar.
| Arun Isaac |
2021-11-02 | Makefile: Do not distribute *.out files.•••The *.out files are generated by running ccwl workflows. They need not
be distributed.
* build-aux/find-dependencies.scm (find-dependencies): Return *.out
files and *.scm files as different kinds of dependencies.
Output *.out and *.scm files separately as DOC_OUT and DOC_SCM instead
of together as DOC_OTHER.
* Makefile.am (doc/ccwl.info, doc/ccwl.html): Depend on DOC_SCM and
DOC_OUT instead of DOC_OTHER.
(EXTRA_DIST): Remove DOT_OTHER. Add DOC_SCM.
| Arun Isaac |
2021-11-02 | tests: Add input-output-parameters.cwl.•••This is a follow-up to 0b359cf2c32cde81b4311d55273c8f6c14ca6b93 where
this file should have been included.
* tests/input-output-parameters.cwl: New file.
* Makefile.am (EXTRA_DIST): Register it.
| Arun Isaac |
2021-11-02 | ccwl: Support external CWL workflows.•••* ccwl/ccwl.scm: Import (yaml). Export cwl-workflow?, cwl-workflow,
cwl-workflow-file, cwl-workflow-inputs and cwl-workflow-outputs.
(<cwl-workflow>): New type.
(cwl-workflow, function-input-keys, function-outputs,
function-object): New functions.
(command-input-keys, command-object): Delete functions.
(collect-steps): Replace command-object with function-object,
command-input-keys with function-input-keys and command-outputs with
function-outputs.
* ccwl/cwl.scm (workflow->cwl-scm): Handle <cwl-workflow> objects.
* tests/ccwl.scm ("read all forms of inputs and outputs from a CWL
workflow"): New test.
* guix.scm: Import (gnu packages guile-xyz) and (guix utils).
(guile-libyaml): New variable.
(ccwl)[inputs]: Add guile-libyaml.
| Arun Isaac |
2021-11-02 | guix.scm: Define ccwl as a separate variable.•••This make it easier to refer to it in the changelog.
* guix.scm (ccwl): New variable.
Return ccwl.
| Arun Isaac |
2021-11-02 | ccwl: Rename graphviz to dot.•••What we call "graphviz syntax" is actually the "graphviz dot
language". Rename accordingly.
* ccwl/graphviz.scm (workflow->graphviz): Rename to
workflow->dot. Call graph->dot instead of graph->graphviz.
(escape-id): Update docstring to mention dot.
(graph->graphviz): Rename to graph->dot. Update docstring to mention
dot.
* scripts/ccwl.in (main): Accept --to=dot instead of
--to=graphviz. Update --help usage information.
* Makefile.am (%.dot): Pass --to=dot instead of --to=graphviz.
| Arun Isaac |
2021-10-19 | configure: Warn if emacs is not found.•••* configure.ac (OPTIONAL_PROGRAM): New macro.
Use OPTIONAL_PROGRAM to check for emacs.
| Arun Isaac |
2021-10-19 | configure: Error out if required programs are not found.•••* configure.ac (CHECK_FOR_PROGRAM, REQUIRED_PROGRAM): New macros.
Use REQUIRED_PROGRAM to check for dot, cwltool and skribilo.
| Arun Isaac |
2021-10-19 | guix.scm: Use git-predicate from (guix git-download).•••* guix.scm: Do not import (srfi srfi-1), (srfi srfi-26), (ice-9
match), (ice-9 popen), (ice-9 rdelim) and (guix build
utils). Import (guix git-download).
(git-file?): Delete function.
Use git-predicate from (guix git-download) instead of git-file?.
| Arun Isaac |
2021-10-18 | doc: Say that inputs, not workflow inputs, come into pipe and tee.•••Workflow inputs are now global. It is misleading to say that they come
into the first expression, namely pipe and tee, in these examples.
* doc/ccwl.skb (Tutorial)[Workflow with multiple steps]: Say that
inputs, not workflow inputs, come into pipe and tee.
| Arun Isaac |