Skip to content

Releases: Ferdi265/pipectl

pipectl v0.5.0

26 Jun 18:04
Compare
Choose a tag to compare

This release rewrites the piping code to fix a longstanding issue with pipectl not exiting after the process on the other side of the output pipe (pipectl -o) ends.

Bugfixes

  • Fixed pipectl not exiting after the process on the other side of the output pipe (pipectl -o) ends (#1)

Changes

  • Changed the core piping code to buffer up to 4 kilobytes of data between stdin and the pipe for -i, and between the pipe and stdout for -o. This fixes a potential issue where bytes could have been lost if a write() call returns with fewer bytes written than expected.
  • Changed the core piping code to use poll() correctly and only perform one non-blocking read or write per file descriptor per poll. This fixes pipectl never returning to the core polling loop in some cases and was the root cause for #1.

pipectl v0.4.2

03 Mar 02:19
Compare
Choose a tag to compare

This patch release contains a minor refactor in the way the nonblocking flag is set on pipes. This release also clarifies the License as GPL-3.0-or-later in the README.

Changes

  • The setting of the O_NONBLOCK flag was refactored into the open_pipe() function instead of being duplicated in the code
  • A release.sh script was added to generate signed release tarballs.

pipectl v0.4.1

20 Jul 08:25
Compare
Choose a tag to compare

This bugfix release fixes a missing CMake include in 0.4.0 causing man pages to be installed in the wrong location.

Bugfixes

  • fixed CMAKE_INSTALL_MANDIR not being set by including GNUInstallDirs
  • fixed hardcoded CMAKE_INSTALL_PREFIX/bin path by switching to CMAKE_INSTALL_BINDIR

pipectl v0.4.0

19 Jul 13:51
Compare
Choose a tag to compare

This documentation release adds a manual page for pipectl. This release increments a minor version number despite no actual features being added because an optional dependency was added.

New Features

  • pipectl now has a manual page that is built using scdoc if available.

Upgrading

This release adds a CMake option, INSTALL_DOCUMENTATION that is OFF by default. Users that wish to install the manual pages should compile with -DINSTALL_DOCUMENTATION=ON. Note that turning this option on makes scdoc a required dependency.

pipectl v0.3.0

17 Jan 01:02
Compare
Choose a tag to compare

This release contains a few bugfixes and two new features: custom pipe paths and environment variables for discovery of the preferred temporary directory for the pipe

New Features

  • Add an option to create a named pipe at a custom path by using --path or -p
  • pipectl now discovers the directory to place pipes in by checking XDG_RUNTIME_DIR, TMPDIR, and then falling back to using /tmp

Bugfixes

  • Fixed pipes being deleted when using pipectl -f -i. pipectl now only deletes a previous pipe when -o is present.
  • Fixed errors when deleting a previous pipe using -f not being handled.
  • Fixed the error message format being inconsistent. All error message should now be nice and easily understandable.

pipectl v0.2.2

31 Dec 20:39
Compare
Choose a tag to compare

This release contains a small bugfix.

Bugfixes

  • Fixed pipes not being deleted when pipectl dies from SIGHUP or SIGTERM

pipectl v0.2.1

31 Dec 14:23
Compare
Choose a tag to compare

This release fixes warnings found by scan-build.

New Features

  • This release contains no new features

pipectl v0.2.0

30 Dec 01:21
Compare
Choose a tag to compare

This release adds the --lock option for synchronization between concurrent writes

New Features

  • Allow synchronizing writes to the pipe with the --lock or -l option

pipectl v0.1.2

30 Dec 00:43
Compare
Choose a tag to compare

This release adds the GPL3 license file.

New Features

  • This release contains no new features

pipectl v0.1.1

30 Dec 00:35
Compare
Choose a tag to compare

This release fixes a warning in the initial release of pipectl

New Features

  • This release contains no new features