Skip to content

Releases: Hyperfoil/qDup

0.11.2

Choose a tag to compare

@willr3 willr3 released this 29 May 13:55

Fixes

  • fixed fast stages skipping the next stage
  • fixed invalid HOST state sharing for containers on the same base host
  • fixed stuck queue-downloads when downloading folders with lots of files

0.11.1

Choose a tag to compare

@willr3 willr3 released this 28 Apr 14:27

Fixes:

  • fixed an issue where command line parameters would auto convert to numbers causing 3.10 to become 3.1 and break version number variables
  • Fixed an issue where sh commands would always wait 100ms after completion despite faster connection speeds
  • Fixed an issue where shell exit codes were being checked even when exit code checking was not in use

Other Changes

  • queue-download, download and upload now work when observing a command (e.g. in a watch) by deferring any remote shell interaction to after the observed command completes (if it is using the terminal). This allows for relative paths (./) or home folder aliases (~/) to work for all 3 commands.
  • Add a qDup language server protocol module that can help with writing scripts. readme
  • Add the option to build qDup as a native executable. instructions

0.11.0

Choose a tag to compare

@willr3 willr3 released this 06 Feb 15:21

Breaking Changes

  • then now forces input from the "parent" command not the previous command except where required (e.g. repeat-until and for-each). See details below

Fixes:

  • fixed --stream-logging which did not work in 0.10.8
  • fixed issue where data from the remote terminal during prompt detection would cause an invalid index.

Then input/output changes:

qDup passses the output of one command as the input of the next command:

- sh: doSomething.sh
  regex: findInOutput

The then keyword is used to interrupt the default flow so that multiple commands can receive the input from the parent command without effecting each other. this is necessary for commands that create output (e.g. json)

- sh: makeJson.sh
  then:
  - json: $.first.path
    then:
    - set-state: firstPath
 - json: $.second.path
   then:
   - set-state: secondPath

Previouslly the json: $.second.path would work on the output of json: $.first.path instead of the output from makeJson.sh. Now, the output from makeJson.sh will be passed to both json. This change could potentially break scripts that relied on the default output flow for multipel commands under a then. The fix is to introduce another then so that the previous command becomes the parent command. For example:

- sh: doSomething.sh
  then:
  - sh: doAnotherThing.sh
  - regex: findInAnotherThing

would change to

- sh: doSomething.sh
  then:
  - sh: doAnotherThing.sh
    then:
    - regex: findInAnotherThing

NOTE: this will also impact commands under an else

0.10.8

Choose a tag to compare

@willr3 willr3 released this 24 Nov 14:28

Changes

  • move --trace files to the same folder as run.json and run.log
  • add support for ${{ENV.QDUP_PROMPT}} global variable

This is an early release to facilitate problem determination for some invalid buffer states during some performance tests and to investigate stuck commands.

0.10.7

Choose a tag to compare

@willr3 willr3 released this 07 Nov 14:38

Changes:

  • Users can now override host aliases based on yaml load order (same as a script and state). This was previously an error that prevented qDup from running.
  • Add support to detect CR injection due to column width limits (fixes really long commands)
  • Change to podman for testing (from docker)
  • Add error message about unexpected characters when checking shell exit code
  • Add support for zsh based remote shell (most commonly encountered when using LOCAL and zsh is the default user shell)

Fixes:

  • Set LOCAL console width to match the width of remote ssh connections.
  • fix stream logging including background commands in shell based connections (e.g. getting pwd and exit code)

0.10.6

Choose a tag to compare

@willr3 willr3 released this 19 Sep 02:07

0.10.6

New artifact names! The core qDup library is now qDup-core and the cli uber jar is once again published as qDup.jar in maven central.

Whats new

  • add -V, --version to cli
  • change idle script message to WARN from INFO.

Fixes

  • fix missing hosts in run.json hosts section
  • fix tracing for remote shell connections
  • fix missing console output for yaml parsing errors

0.10.4

Choose a tag to compare

@willr3 willr3 released this 31 Jul 02:12

New Features:

  • added hosts list to run.json
  • improved error message for connection errors with container hosts

Fixes:

  • fixed default scheduled and callback thread count (back to 24)
  • remove unused log4j dependencies

0.10.3

Choose a tag to compare

@willr3 willr3 released this 28 Jul 03:50

0.10.3

Changes

  • download paths are now based on host alias, not host names
  • run.json profile data is an array rather than a map with keys for each profile
  • separate cli and api jars
  • use quarkus for cli jar
  • improve container creating and management - expect more changes to the host syntax soon

0.9.1

Choose a tag to compare

@willr3 willr3 released this 27 Jun 14:33

Bug Fixes:

  • fix issue where qDup process would not exit after using a local containerized host

Internal Changes:

  • change to use new central artifact publishing

0.9.0

Choose a tag to compare

@willr3 willr3 released this 30 Apr 15:01

Changed behavior

  • Download now returns the path to the file in the qDup output folder
  • Upload now returns the path to the file created on the remote host

Fixes

  • correctly detect wait-for and signal ordering across phases
  • add shift in and shift out control sequence detection