Async::Job::Adapter::AsyncJob

Async::Job::Adapter::AsyncJob

Provides an adapter for ActiveJob on top of Async::Job.

Development Status

Usage

Please browse the source code index or refer to the guides below.

Getting Started

This guide explains how to get started with the async-job-adapter-active_job gem.

Releases

Please browse the releases for more details.

v0.15.0

  • Fix handling of scheduled jobs with proper scheduled_at assignment.
  • 100% documentation coverage.
  • 100% test coverage.
  • Modernize code formatting and structure.
  • Fix typo in gem name (#7).

v0.14.1

  • Ensure the adapter wraps enqueue operations with Sync (#10).

v0.14.0

  • Support for running multiple queues.
  • Minor documentation fixes.

v0.13.0

  • Add support for :async_job queue adapter name.
  • Require active_job in the executor.
  • Updated logging examples and documentation.
  • Remove thread-local gem dependency.
  • Improve error handling - don't log failures as ActiveJob already handles this.

v0.12.1

  • Force string names for queue identifiers, fixes #5.

v0.12.0

  • Improved error handling - let ActiveJob handle retry logic.

v0.11.0

  • Prefer define_queue and alias_queue methods for queue configuration.

v0.10.0

  • Rename "pipeline" concept to "queue" for consistency.

v0.9.0

  • Update interface to suit upstream async-job changes.

v0.8.0

  • Add #start/#stop delegators for better lifecycle management.
  • Performance improvements with benchmarking.

Contributing

We welcome contributions to this project.

  1. Fork it.
  2. Create your feature branch (git checkout -b my-new-feature).
  3. Commit your changes (git commit -am 'Add some feature').
  4. Push to the branch (git push origin my-new-feature).
  5. Create new Pull Request.

Developer Certificate of Origin

In order to protect users of this project, we require all contributors to comply with the Developer Certificate of Origin. This ensures that all contributions are properly licensed and attributed.

Community Guidelines

This project is best served by a collaborative and respectful environment. Treat each other professionally, respect differing viewpoints, and engage constructively. Harassment, discrimination, or harmful behavior is not tolerated. Communicate clearly, listen actively, and support one another. If any issues arise, please inform the project maintainers.