From ace9944d1c0f7eb9fa5744811e2391effffb2c82 Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Wed, 19 Feb 2025 14:16:36 -0400 Subject: [PATCH] add REPRODUCIBLE --- doc/design/compute_special_remote_interface.mdwn | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/doc/design/compute_special_remote_interface.mdwn b/doc/design/compute_special_remote_interface.mdwn index e70c63db1a..f82fdc22c5 100644 --- a/doc/design/compute_special_remote_interface.mdwn +++ b/doc/design/compute_special_remote_interface.mdwn @@ -10,7 +10,7 @@ When an compute special remote is initremoted, a program is specified: The user adds an annexed file that is computed by the program by running a command like this: - git-annex addcomputed --with myremote \ + git-annex addcomputed --to myremote \ --input raw=file.raw --value passes=10 \ --output photo=file.jpeg @@ -72,7 +72,7 @@ supports. This allows `git-annex addcomputed` and `git-annex initremote` to list inputs and outputs, and also lets them reject invalid inputs and outputs. -In this mode, the program is run a paramter "list". +In this mode, the program is run with a "list" parameter. It should output lines, in the form: INPUT[?] Name Description @@ -83,6 +83,12 @@ Use "INPUT" when a file is an input to the computation, and "VALUE" for all other input values. Use "INPUT?" and "VALUE?" for optional inputs and values. +The program can also optionally output a "REPRODUCIBLE" line. +That indicates that the results of its computations are +expected to be bit-for-bit reproducible. +That makes `git-annex addcomputed` behave as if the `--reproducible` +option is set. + An example `git-annex-compute-foo` shell script follows: #!/bin/sh @@ -91,6 +97,7 @@ An example `git-annex-compute-foo` shell script follows: echo "INPUT raw A photo in RAW format" echo "VALUE? passes Number of passes" echo "OUTPUT photo Computed JPEG" + echo "REPRODUCIBLE" exit 0 fi if [ -z "$ANNEX_COMPUTE_VALUE_passes" ]; then