Skip to content

Releases: dbohdan/recur

v3.3.0

14 May 20:27
v3.3.0
df5dc44

Choose a tag to compare

  • Added -C/--condition-file option for loading full-program conditions from a external file.
  • Added -T/--date-time option to display RFC 3339 timestamps in verbose mode.

v3.2.0

28 Feb 12:33
v3.2.0
dd80960

Choose a tag to compare

  • Added the -u/--unlimited option as a more clear alternative to -f/--forever. -f/--forever will remain available but is not recommended in new usage.
  • In the internal retryConfig struct, split the FixedDelay interval into more logical ConstantDelay and MaxDelay. This affects the config output shown for debugging with -vvv.
  • Added a new verbosity level -vvvv that includes zero values in the config output.

v3.1.0

15 Dec 20:40
v3.1.0
d63dc5a

Choose a tag to compare

  • Added a new CLI option -R/--report.
  • Fixed a race condition when checking for the command's existence.
  • Switched to a GOOS/GOARCH naming scheme for prebuilt binaries.

v3.0.0

15 Nov 11:01
v3.0.0

Choose a tag to compare

This release includes several relatively small breaking changes. The breaking changes to Starlark conditions were made to better introduce a new feature, regular-expression search on standard input/output/error.

Breaking changes

  • The Starlark condition can be any truthy or falsy value, not just a boolean.
  • Replaced the Starlark function flush_stdout() with the method stdout.flush().
  • Changed error exit codes:
    • Command not found: from 255 to 127 (like POSIX shell)
    • Timeout: from 255 to 124 (like GNU and BSD timeout)
    • Unknown error: from -1 to 255 (for consistency between POSIX and Windows because Windows allows negative exit codes)
  • Required Go 1.22 to build (was 1.19).

Features

  • Implemented an object-oriented approach to standard input/output/error in Starlark condition expressions.
  • Added a new CLI option -E/--hold-stderr that works like -O/--hold-stdout but for standard error. Added stderr.flush() in condition expressions.
  • Added a new CLI option -s/--seed to set the random seed for reproducible jitter.
  • Added regular-expression search on buffers: stdin.search(), stdout.search(), and stderr.search()
  • Improved the option -j/--jitter to allow spaces around the comma in the value. For example, 1ms, 5ms is now valid.

v2.5.0

04 Sep 15:31

Choose a tag to compare

  • Added a new CLI option -O/--hold-stdout.

v2.4.0

09 Aug 08:09

Choose a tag to compare

  • Added a new CLI option -I/--replay-stdin.

v2.3.0

01 Jun 05:49

Choose a tag to compare

  • Fixed the delay being reset with every attempt when no -r/--reset option was given.
  • Added a new CLI option -F/--fib.

v2.2.0

12 May 11:46

Choose a tag to compare

  • Added a new CLI option -r/--reset.

v2.1.0

06 May 20:04

Choose a tag to compare

  • Fixed time, total_time not being properly converted to seconds in Starlark conditions.
  • Added a new Starlark function inspect for debugging conditions.
  • Changed the log message "waiting 1s after attempt 2" to "waiting 1s before attempt 3". This is consistent with how exit codes are announced.

Full changelog: v2.0.4...v2.1.0.

v2.0.4

28 Dec 18:32

Choose a tag to compare

  • Added ARM64 Windows binaries.
  • Changed the build and the repository structure.
  • Changed the module path to dbohdan.com/recur/v2.