Skip to content

Releases: Nukesor/pueue

v3.1.1

13 Feb 08:40
80bbf4f
Compare
Choose a tag to compare

[3.1.1] - 2023-02-13

Fixed

  • Fixed missing newlines after status and log in some environments #414.

v3.1.0

08 Feb 17:01
1da4efb
Compare
Choose a tag to compare

[3.1.0] - 2023-02-08

Add

  • Allow to wait for specific task stati when using pueue wait #400.

Fix

  • Point to a new patched fork of darwin-libproc, as the original has been deleted.
    This fixes the development builts for pueue on Apple platforms.

v3.0.1

31 Dec 00:32
da1f6d7
Compare
Choose a tag to compare

[3.0.1] - 2022-12-31

Fixed

  • Bump command-group to fix broken windows process handling #402

v3.0.0

12 Dec 21:09
a093315
Compare
Choose a tag to compare

[3.0.0] - 2022-12-12

This release was planned to be a much smaller one, but you know how it's like.

A new major version is appropriate, as the process handling has been completely refactored.
Thanks to the work of @mjpieters, Pueue now uses process groups to manage subprocesses, preventing detached processes by default!
This also closes a long standing issue and brings the support for MacOs on par with Linux!

v3.0.0 also adds the long-requested feature to add a query/filter logic for the status command and lots of other quality of life improvements.
The test coverage and development tooling has never been better, the project continues to improve!

Breaking Changes

  • Tasks are now started in a process group, and pueue kill will kill all processes in the group #372.
    The --children cli flag has been deprecated (signals go to the whole group, always).
    This brings pueue's task handling in line with how interactive shells handle jobs.
    As a side-effect it prevents detached processes and thereby covers the 90% usecase users usually expect.

Changed

  • pueue log output now includes the task label, if any exists. #355
  • Enable pueue edit to edit multiple properties in one go.

Added

  • status querying! pueue status now implements the first version of a simple query logic.
    The filtering/order/limit logic is also applied to the --json output.
    This allows you to:
    • columns=id,status,path select the exact columns you want to be shown.
    • [column] [<|>|=|~] [value] Apply various filters to columns.
      There's only a fix amount of operations on a small amount of columns available for now.
      If you need more filtering capabilities, please create an issue or a PR :).
    • limit [last|first] 10 limit the results that'll be shown.
    • order_by [column] [asc|desc] order by certain columns.
    • For exact info on the syntax check the syntax file.
      I still have to write detailed docs on how to use it.
  • Show a hint when calling pueue log if the task output has been truncated. #318
  • Add Settings.shared.alias_file, which allows to set the location of the pueue_aliases.yml file.
  • Added functionality to edit a task's label #354.
  • Added the created_at and enqueued_at metadata fields on Task #356.
    They'll only be exposed when running status --json for now.

Fixed

  • Interpret the $EDITOR command, when editing a task's command/path, as a shell expression instead of an executable (#336).
    This gives users more control over how their editor should be started.
  • Don't show the version warning message between daemon and client, when using a --json flag.
  • Fix some test failures in non-standard environments for NixOS test suite (#346).
  • The time in pueue's logs will now be in localtime instead of UTC #385.
  • MacOs support has been brought on par with Linux.

Misc

  • Continuation of testing the pueue client, pushing the test coverage from ~70% to ~78%.
  • A codecov.yml syntax error was corrected, which prevented Codecov from applying the repository-specific configuration.
  • CI tests are now run using cargo nextest, for faster test execution, flaky test handling and better test output.
  • The macos test suite is now the same as that for Linux, including the client and daemon test suites.

v3.0.0 Release candidate 1

21 Nov 23:34
bd6844f
Compare
Choose a tag to compare
Pre-release

This is the first candidate for the v3.0.0 release.

Check the Changelog for more details.

It would be awesome, if you would take a look at it and verify that the new process handling works as expected :)

v2.1.0

21 Jul 12:41
06fedda
Compare
Choose a tag to compare

Added

  • Use the new --color command-line switch to control when pueue will use colors in its output. Fixes #311 by mjpieters.
    The default is auto, which means it'll enable colors when connected to a TTY.
    The other options are never and always.

Fixed

  • Only style the group header in status output when on a TTY (#319) by mjpieters.

Changed

  • Exit pueue follow when reading logs, as soon as the followed task is no longer active.
  • Properly formatted debug output.
  • Hide Task.envs and AddMessage.envs in debug output, as they were too verbose and contained possibly sensible information.

Misc

  • Enable CI linting on all platforms (#323) by mjpieters.
  • Add CI caching (#322) by mjpieters.
  • Fix missing toolchain bug in CI (#321) by mjpieters.
  • Set up code-coverage in CI.
  • Tests suite for pueue client, pushing the test coverage from ~53% to ~70%.

pueue-lib-v0.20.0

21 Jul 12:42
2ed2cd0
Compare
Choose a tag to compare

Added

  • Message::Close which indicates the client that everything is done and the connection is being closed.

Removed

  • Breaking change: Backward compatibility logic for the old group structure in the main state.
  • Breaking change:
    The State no longer owns a copy of the current settings.
    This became possible due to the group configuration no longer being part of the configuration file.

Fixed

  • The networking logic wasn't able to handle rapid successiv messages until now.
    If two messages were sent in quick succession, the client would receive both messages in one go.
    The reason for this was simply that the receiving buffer was always of a size of 1400 Bytes, even if the actual payload was much smaller.
    This wasn't a problem until now as there was no scenario where two messages were send immediately one after another.

v2.0.4

05 Jun 02:08
9fd4f40
Compare
Choose a tag to compare

Fixed

  • Return the correct path from pueue_lib::settings::configuration_directories(),
    when we get a path from dirs::config_dir() (was /home/<user>/.config/pueue.yaml/, is now again /home/<user>/.config/pueue/).
  • Use the correct path to delete the PID file during shutdown.

v2.0.3

04 Jun 17:03
e9d143d
Compare
Choose a tag to compare

Fixed

  • Use the dirs crate for platform specific directory discovery. #311
    The previous trivial implementation was error prone in some edge-cases.
    For instance, Pueue fell back to the shared directory, if the $XDG_RUNTIME_DIR couldn't be found.
    This resulted in a reocurrence of #302 in non-XDG environments.

    Furthermore, Pueue used the wrong directories for its configuration and cache on Apple and Windows platforms.
    This is now fixed.

    This change is a bit tricky:

    • It's a fix on one hand (correct directories for Apple & Windows + fix for #311).
    • It's somewhat of a breaking change for Apple & Windows on the other hand?

    I still decided to make this a patch release, as the next major release is still in the pipeline and needs a lot of work.
    #302 will still show up in Apple/Windows environments, as there doesn't seem to be runtime directory equivalent for those platforms.

v2.0.2

31 Mar 17:46
f0dda1d
Compare
Choose a tag to compare

Added

  • Better debug output for migration instructions from v1 to v2 #298.
  • Better error output and error context for some filesystem related errors (continuation).
  • Add a new option to specify the location of the PID file: shared.pid_path #302.

Fixed

  • Some options weren't properly passed onto the forked daemon instance, when starting pueued with the -d flag.
    • the -vvv flags
    • the --profile option.
  • Autocompletion shell scripts. Their generation is now also tested to prevent future regressions.
  • Move the PID file into the runtime directory to prevent rare startup issues after crashes + reboot. #302.
    This won't cause any problems for running clients/daemons, making this a backward compatible change.
  • The format-status option now respects the order in which tasks piped back into pueue, as long as they're passed in list form #301.
    Tasks that're passed as a map will still be displayed in increasing order.