Skip to content

How should Queue/Tasks adopt CI 4.8-only concurrency APIs? #84

@memleakd

Description

@memleakd

Hello,

CI 4.8 now has a few core APIs that are very useful for Queue and Tasks, like atomic locks, transaction lifecycle hooks and transaction state checks.

I'd like to work on things like transaction-aware queue dispatching (pushAfterCommit() or similar) and task overlap prevention, but Queue/Tasks still support CI 4.3+.

Before working on this, I wanted to ask what direction maintainers would prefer:

  • Would you be open to having these features in Queue/Tasks?
  • Should they be added with runtime checks and documented as CI 4.8+ only?
  • Should they wait until the packages can require CI 4.8?
  • Or would you prefer a different approach?

My first thought is to keep the current minimum version and make the new features fail clearly when the required CI 4.8 APIs are not available, but I'd like to align with your direction first.

Happy to hear your thoughts.

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