Skip to content

Wishlist for the next major revision #276

@bronson

Description

@bronson

For discussion, this is a list of potential improvements to Queue Classic. Most of them are breaking changes that require a major revision bump. Would be nice to do them all at once.

  • Discourage inheriting from QC classes (using inheritance makes it harder to make backward-compatible changes in the future). Try to satisfy everyone with callbacks and configuration instead.
  • If it's unreasonable to remove inheritance entirely, reduce the exposed API by marking parts of classes private and declaring explicit base classes. Right now, with everything public, most modifications are technically breaking changes.
  • Minimum of Ruby 2 / Rails 4
  • Rename exposed methods and rake tasks to be more consistent. (example: add Worker#work_off and rake qc:work_off. #256)
  • Change schema to make monitoring easier: Proposed schema changes #252
  • Simplify creating QC::Queue objects: Proposed interface change to QC::Queue #249
  • Ensure migrations don't break if I remove QC from my gemfile (will update when I file the PR)
  • Maybe remove forking? Honest question: Is forking supposed to work for 3.0.0? #207 (comment))
  • Maybe just use ActiveRecord's connection? Since AR allows multiple connections, does QC need its own implementation?

very unlikely:

Anything else? Anyone have opinions?

I'd like to expand any of these that make sense to PRs.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions