Skip to content

Releases: chaps-io/gush

v4.0.0

25 Sep 09:56
Compare
Choose a tag to compare

This release has breaking changes! Especially see #119

What's Changed

  • add missing json attribute to Gush::Job by @entei in #114
  • Add globals and kwargs to Workflow and Job by @noahfpf in #113
  • Persist dependencies so that Workflow#configure is not required on load by @noahfpf in #118
  • Fixed the workflow redis key format used in Client#next_free_workflow_id by @noahfpf in #120
  • Gush::Client now delegates the ActiveJob.perform_later call to Gush::Job by @noahfpf in #117
  • Fix workflow status when the workflow is pending to start by @noahfpf in #116
  • Added rubocop for code style consistency by @noahfpf in #115
  • Improved redis performance in large keyspace, added pagination, and auto-expiration by @noahfpf in #119

New Contributors

Full Changelog: v.3.0.0...v4.0.0

v.3.0.0

29 Feb 07:54
d49e6bb
Compare
Choose a tag to compare

What's Changed

Full Changelog: v2.1.0...v.3.0.0

2.1.0

19 Sep 07:20
Compare
Choose a tag to compare

Added

v2.0.2

2.0.1

12 Mar 10:30
Compare
Choose a tag to compare

Fixed

2.0.0

22 Nov 13:01
Compare
Choose a tag to compare

Changed

  • [BREAKING] Store gush jobs in Redis hash instead of plain keys - this improves performance when retrieving values (Thanks to @Saicheg! See pull request)

Added

v1.1.1

09 Jun 13:38
Compare
Choose a tag to compare

Changed

1.1.0

05 Feb 04:44
Compare
Choose a tag to compare

This version might be incompatible for developers who relied on jobs array inside Workflow JSON (stored in Redis), see below for details. For others it's fully transparent and brings performance improvements!

Added

Fixed

  • Improved performance of (de)serializing workflows by not storing job array inside workflow JSON and other smaller improvements (See pull request)

1.0.0

02 Oct 08:06
Compare
Choose a tag to compare

Added

Fixed

  • Fix graph rendering with gush viz command. Sometimes it rendered the last job detached from others, because it was using a class name instead of job name as ID.
  • Fix performance problems with unserializing jobs. This greatly increased performance by avoiding redundant calls to Redis storage. Should help a lot with huge workflows spawning thousands of jobs. Previously each job loaded whole workflow instance when executed.

Changed

  • BREAKING CHANGE Gushfile.rb is now renamed to Gushfile
  • BREAKING CHANGE Internal code for reporting status via Redis pub/sub has been removed, since it wasn't used for a long time.
  • BREAKING CHANGE jobs are expected to have a perform method instead of work like in < 1.0.0 versions.
  • BREAKING CHANGE payloads method available inside jobs is now an array of hashes, instead of a hash, this allows for a more flexible approach to reusing a single job in many situations. Previously payloads were grouped by predecessor's class name, so you were forced to hardcode that class name in its descendants' code.

Removed

  • gush workers command is now removed. This is now up to the developer to start background processes depending on chosen ActiveJob adapter.
  • environment was removed since it was no longer needed (it was Sidekiq specific)