Skip to content

Releases: fleipold/jproc

Release 2.8.1

05 Sep 08:22
Compare
Choose a tag to compare

Bugfix to avoid occasional stacktrace on timeout of command.

Release 2.8.0

23 Jan 23:07
Compare
Choose a tag to compare

Allow clear environment of inherited variables (#28).

Release 2.7.0

23 Jan 23:04
Compare
Choose a tag to compare

Add method to pass env map with multiple variables to the process's environment.

Release 2.6.2

06 May 20:46
Compare
Choose a tag to compare

Fixing license entry in the pom.

Release 2.6.1

02 May 21:20
Compare
Choose a tag to compare

Bugfix to kill process on thread interruption.

Release 2.6.0

11 Apr 19:47
Compare
Choose a tag to compare

OutputConsumer Support for Standard Error

Now the OutputConsumer abstraction can also be used for standard error.

Improved Handling and Message

We get a real error message when two mutually exclusive
methods are called on the builder. The exception also gets
thrown as soon as the second method is called, i.e. it
is now in the place where the offence happens.

Release 2.5.1

21 Feb 13:36
Compare
Choose a tag to compare

Re-releasing 2.5 with proper version number.

Release 2.5

21 Feb 13:21
Compare
Choose a tag to compare

Rework Exception Message

Now we also include STDOUT into the ExcptionMessage when a process terminates
with an unexpected status code.

This helps with programs that return error messages on STDOUT rather than
STDERR.

To make the output clearer, the overall format of the message was reworked:

  • It now includes the full commandline string prefixed with a $-sign.
  • The lines after the first line are indented to make clear that they belong to the exception.
  • If present and available standard out and standard error are included and prefixed with
    "STDOUT:" and "STDERR:" respectively.

Here is an example invoking git commit with no staged changes:

Exception in thread "main" org.buildobjects.process.ExternalProcessFailureException: External process `git` terminated with unexpected exit status 1 after 39ms:
  $ git commit -m '1st commit'
  STDOUT: On branch master
  STDOUT:
  STDOUT: Initial commit
  STDOUT:
  STDOUT: nothing to commit (create/copy files and use "git add" to track)

Renamed ProcString to CommandLine

The command line representation of the invocation has previously been
called procString. It was now renamed to commandLine and the old
methods have been deprecated.

Make getProcString available on Builder

01 Feb 21:05
Compare
Choose a tag to compare

This makes getProcString which is currently only on ProcResult available on ProcBuilder.

Also, it fixes escaping for arguments. Now it is safer to paste the output of getProcString straight into the shell. Note that the escaping is really naïve and only works for whitespace and the delimiter character.

This fix introduces an incompatibility, because the ProcResult#getProcString now
uses single quotes for escaping arguments containing whitespace.

Fixing API Visibility

24 Mar 21:26
Compare
Choose a tag to compare

In previous versions ProcBuilder#withInput(String) and
ProcBuilder#withInput(byte[]) were not public. This has now been fixed.