acaloiaro / neoq

Queue-agnostic background job library for Go, with a pleasant API and powerful features.
MIT License
270 stars 4 forks source link

feat: Support for SQLite backend #130

Open pranavmodx opened 4 months ago

pranavmodx commented 4 months ago

Fixes #129

:white_check_mark: Feature parity with existing backends :white_check_mark: Roughly the same amount of test coverage as existing backends

All of the major features are working with this new SQLite backend. Almost all of the tests in other backends have been extended for this one. More can be added as required to capture missed or specific cases. Currently tests create test.db within backends/sqlite. Not sure if that is ideal. I am open to hearing your thoughts.

For listening to jobs, Go channels are used as we don't have something similar to pg_notify for SQLite. I added a new in progress job status which was useful for our use case but up to you to decide whether to keep it.