All Versions
Latest Version
Avg Release Cycle
84 days
Latest Release
645 days ago

Changelog History
Page 3

  • v0.11.1 Changes

    September 04, 2015
    • ๐Ÿšš The rake que:work rake task that was specific to Rails has been deprecated and will be removed in Que 1.0. A deprecation warning will display when it is run.
  • v0.11.0 Changes

    September 04, 2015
    • ๐Ÿ‘ท A command-line program has been added that can be used to work jobs in a more flexible manner than the previous rake task. Run que -h for more information.

    • ๐Ÿ‘ท The worker pool will no longer start automatically in the same process when running the rails server - this behavior was too prone to breakage. If you'd like to recreate the old behavior, you can manually set Que.mode = :async in your app whenever conditions are appropriate (classes have loaded, a database connection has been established, and the process will not be forking).

    • Add a Que.disable_prepared_transactions= configuration option, to make it easier to use tools like pgbouncer. (#110)

    • ๐Ÿ‘€ Add a Que.json_converter= option, to configure how arguments are transformed before being passed to the job. By default this is set to the Que::INDIFFERENTIATOR proc, which provides simple indifferent access (via strings or symbols) to args hashes. If you're using Rails, the default is to convert the args to HashWithIndifferentAccess instead. You can also pass it the Que::SYMBOLIZER proc, which will destructively convert all keys in the args hash to symbols (this will probably be the default in Que 1.0). If you want to define a custom converter, you will usually want to pass this option a proc, and you'll probably want it to be recursive. See the implementations of Que::INDIFFERENTIATOR and Que::SYMBOLIZER for examples. (#113)

    • When using Que with ActiveRecord, workers now call ActiveRecord::Base.clear_active_connections! between jobs. This cleans up connections that ActiveRecord leaks when it is used to access mutliple databases. (#116)

    • ๐Ÿ‘ท If it exists, use String#constantize to constantize job classes, since ActiveSupport's constantize method behaves better with Rails' autoloading. (#115, #120) (joevandyk)

  • v0.10.0 Changes

    March 18, 2015
    • ๐Ÿ‘ท When working jobs via the rake task, Rails applications are now eager-loaded if present, to avoid problems with multithreading and autoloading. (#96) (hmarr)

    • ๐Ÿ”ง The que:work rake task now uses whatever logger Que is configured to use normally, rather than forcing the use of STDOUT. (#95)

    • Add Que.transaction() helper method, to aid in transaction management in migrations or when the user's ORM doesn't provide one. (#81)

  • v0.9.2 Changes

    February 05, 2015
    • ๐Ÿ‘ท Fix a bug wherein the at_exit hook in the railtie wasn't waiting for jobs to finish before exiting.

    • ๐Ÿ‘ท Fix a bug wherein the que:work rake task wasn't waiting for jobs to finish before exiting. (#85) (tycooon)

  • v0.9.1 Changes

    January 11, 2015
    • 0๏ธโƒฃ Use now() rather than 'now' when inserting jobs, to avoid using an old value as the default run_at in prepared statements. (#74) (bgentry)
  • v0.9.0 Changes

    December 16, 2014
    • ๐Ÿ‘ท The error_handler callable is now passed two objects, the error and the job that raised it. If your current error_handler is a proc, as recommended in the docs, you shouldn't need to make any code changes, unless you want to use the job in your error handling. If your error_handler is a lambda, or another callable with a strict arity requirement, you'll want to change it before upgrading. (#69) (statianzo)
  • v0.8.2 Changes

    October 12, 2014
    • โช Fix errors raised during rollbacks in the ActiveRecord adapter, which remained silent until Rails 4.2. (#64, #65) (Strech)
  • v0.8.1 Changes

    July 28, 2014
    • ๐Ÿ‘ท Fix regression introduced in the que:work rake task by the mode / worker_count disentangling in 0.8.0. (#50)
  • v0.8.0 Changes

    July 12, 2014
    • A callable can now be set as the logger, like Que.logger = proc { }. Que uses this in its Railtie for cleaner initialization, but it is also available for public use.

    • ๐Ÿ‘ท Que.mode= and Que.worker_count= now function independently. That is, setting the worker_count to a nonzero number no longer sets mode = :async (triggering the pool to start working jobs), and setting it to zero no longer sets mode = :off. Similarly, setting the mode to :async no longer sets the worker_count to 4 from 0, and setting the mode to :off no longer sets the worker_count to 0. This behavior was changed because it was interfering with configuration during initialization of Rails applications, and because it was unexpected. (#47)

    • ๐Ÿ‘ท Fixed a similar bug wherein setting a wake_interval during application startup would break worker awakening after the process was forked.

  • v0.7.3 Changes

    May 19, 2014
    • ๐Ÿ”€ When mode = :sync, don't touch the database at all when running jobs inline. Needed for ActiveJob compatibility (#46).