que-rb/que

Running que fails with ruby3

mkamensky opened this issue ยท 6 comments

The que executable seems to fail with ruby 3, due to the following line:

Que::Locker.new(options)

replacing options with **options resolves this.

anka commented

And you need to update worker.rb on line 121 to pass the event parameter explicitly for Que.log.

These have already been addressed in #302

Ruby 3 support is in various stages in various places:

  • #302 - Open draft PR
  • #303 - Closed PR with some spec changes
  • ruby3 - Branch by @siegy22 with partial support

I think the tasks for Ruby 3 are:

  • Update specs to include Ruby 3 as target (done in ruby3 branch)
  • Update call sites for Ruby 3's separation of positional from keyword arguments (generally done in all branches/PRs)
  • Update Que schema to store positional arguments and keyword arguments separately
  • Provide migration for schema change

Is there anything missing there?

@ianterrell I updated my branch and started working on splitting args and kwargs into separate fields in the database.

@siegy22 we (GreenSync) are keen to dedicate some time to this issue, in the next couple of weeks before Christmas. I've taken a look at your branch and it's a promising start. I'm wondering how far you intend to go and, if you are busy at the moment, whether we can branch off ruby3 and see if we can make further progress and, possibly, resolve this issue. Or, if not, at least consolidate and merge some changes that can get us closer to the objective.

@smontanari I don't see myself spending much time on this if at all in the near future. Feel free to branch off of my branch or release other changes to help support ruby 3!

Thanks for your work.