Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[bump] introduce new version: 0.6 (#459)
* fix: improve external api for redis * fix: improve exports for redis * fix: expose redis codec * Feature: v0.6.0-alpha.0 version of apalis Breaking Changes: - Dropped traits Job and Message, please use namespace * fix: minor fixes on some failures * lint: cargo fmt * fix: remove Job impl * lint: cargo fmt * bench: improve polling * fix: introduce namespace and codec config (#339) * fix: introduce namespace and codec config * fix: missing apis * Version: 0.6.0-alpha.1 (#342) * api: for redis and sqlite * Version: 0.6.0-alpha.1 Changelog: - Redis storage doesnt require pool to be clone. Allows use of deadpool-redis among others. - Namespace is picked by default for `new` methods. * fix: docs and tests * lint: cargo clippy and fmt * postgres: add a listener example * bump: to v0.6.0-alpha.1 (#343) * api: for redis and sqlite * Version: 0.6.0-alpha.1 Changelog: - Redis storage doesnt require pool to be clone. Allows use of deadpool-redis among others. - Namespace is picked by default for `new` methods. * fix: docs and tests * lint: cargo clippy and fmt * postgres: add a listener example * bump: to v0.6.0-alpha.1 * fix: allow cd for prereleases (#349) * Remove `Clone` constraints and buffer the service (#348) * feat: remove the `Clone` requirements for services * test save * fix: get buffered layer working * update: remove clone & update api * fix: tests and api * lint: clippy fixes * lint: cargo fmt * bump: to 0.6.0-rc.1 (#350) * feat: add rsmq example (#353) * Fix: load layer from poller (#354) * fix: backend layers were not loaded * fix: handle clone * Fix: mq example (#355) * fix: mq ack * lint: fmt * fix: handle unwraps in storages (#356) * fix: handle unwraps in storages * fix: ensure no unwrap * fix: better apalis deps allowing tree shaking for backends (#357) * fix: better apalis deps allowing tree shaking for backends * fix: remove backend features in the root crate * standardize backend for storage and mq (#358) * fix: standardize backend for storage and mq * fix: minor fixes * feat: standardize cron as backend (#359) * fix: remove non-working restapi example (#360) * fix: expose the missing apis (#361) * bump: to new version (#362) * Make Config accessible publicly (#364) * fix: add missing exposed config * fix: add getters * fix: die if retries is zero (#365) * Feature: Add a layer that catches panics (#366) * Feature: Add a layer that catches panics This allows preventing job execution from killing workers and returns an error containing the backtrace * fix: backtrace as it may be different * add: example for catch-panic * fix: make not default * Feature: Save results for storages (#369) * Feature: Save results for storages Currently just the status is stored, this PR adds the ability to save the result * fix: result from storage * fix: kill and abort issue * Bump: to 0.6.0-rc.3 (#370) * fix: serde for sql request (#371) * fix: serde for sql request * fix: serde for attempts * lint: fmt * fix: handle attempts in storages (#373) * fix: handle attempts in storages * fix: chrono serialization * fix: tests failing because of tests * add: test utils that allow backend polling during tests (#374) * add: test utils that allow backend polling during tests * fix: introduce testwrapper and add more tests * fix: add sample for testing * fix: more fixes and actions fixes * fix: more fixes on vacuuming * tests: improve cleanup and generic testing * fix: improve testing and fix some found bugs * fix: postgres query and remove incompatible tests * fix: remove redis incompatible check * fix: minor fixes * fix: postgres json elements * bump: to 0.6.0-rc.4 (#377) * fix: handle 0 retries (#378) * fix: ack api to allow backend to handle differently (#383) * fix: ack api to allow backend to handle differently * fix: related to storage tests * fix: calculate status for postgres * fix(deps): update rust crate sqlx to 0.8.0 (#380) * chore: fix typos (#346) * chore: Add repository to metadata (#345) * fix(deps): update rust crate sqlx to 0.8.0 * fix: sqlite example --------- Co-authored-by: John Vandenberg <jayvdb@gmail.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: geofmureithi <mureithinjuguna@gmail.com> Co-authored-by: Geoffrey Mureithi <95377562+geofmureithi@users.noreply.github.com> * bump: to v0.6.0-rc.5 (#385) * chore: standardize codec usage (#388) * bump: to v0.6.0-rc.5 * fix: standardize codec usage * lint: cargo fmt * Chore/more examples (#389) * add: catch-panic example * add: graceful shutdown example * add: unmonitored example * add: arguments example * fix: minor updates * fix: sql tests * fix: minor updates * fix: improve on benches (#379) * fix: improve on benches * fix: bench trigger * fix: include tokio for sqlx * fix: improve the benching approach * fix: mysql api * fix: redis api * fix: improve bench approach, remove counter * remove: setup * remove: pg * fix: pg * fix: pg * fix(deps): update rust crate sqlx to 0.8.1 [security] (#400) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Geoffrey Mureithi <95377562+geofmureithi@users.noreply.github.com> * fix: add some missing data required for dependency injection (#409) * fix: add some missing data required for dependency injection * lint: clippy and fmt * remove: benchmarks (#410) They will be moved to https://github.com/geofmureithi/apalis-benchmarks * bump: to 0.6.0-rc.6 (#412) * Update async-std to 1.13 (#413) * Feature: Introducing Request Context (#416) * wip: introduce context to request * fix: get request context working * lint: cargo fmt * fix: get tests compiling * add: push_request and shedule_request * fix: task_id for Testwrapper * fix: minor checks and fixes on postgres tests * fix: bug on postgres fetch_next * bump: to 0.6.0-rc.7 (#418) * fix: apply `FromRequest` for items in `Parts` (#425) Problem: We are missing crucial `FromRequest` impls for: - TaskId - Attempt - Namespace Also removed `Context<E>` Solution: Implement `FromRequest` for these Types. * fix:[bug] include backend provided layer in service layers. (#426) * fix:[bug] include backend provided layer in service layers. Problem: The current worker logic is missing an implementation where the backend provided layer should be added to the service's layer. This is a critical issue that affects all v0.6.0-rc-7 users and they should update as soon as a new release is done. Solution: - Add backend layers to service's layer. - Add worker_consume tests on the storages to prevent regression on this. * chore: comment an enforcement rule not yet followed by redis * chore: bump to 0.6.0-rc.8 (#430) * fix: apply max_attempts set via SqlContext (#447) So that a custom number of attempts can be configured: let mut ctx = SqlContext::new(); ctx.set_max_attempts(2); let req = Request::new_with_ctx(job, ctx); storage.push_request(req).await.unwrap(); While the default is still to try up to 25 times: storage.push(job).await.unwrap(); * Bump redis (#442) * feat: re-export sqlx (#451) Making sqlx accessible to users of apalis without requiring them to explicitly add it as a dependency. * feat: Improve Worker management and drop Executor (#428) * feat: introducing WorkerBuilderExt which makes the work of building a new worker way easier. * improve: worker api almost there * fix: radical improvements and updates. Removed executor and got graceful shutdown working * chore: deprecate register with count and force builder order * chore: more improvements on the worker * fix: allow DI for Worker * add: get the task count by a worker * lint: fmt and clippy * fix: allow worker stopping * Chore/better api (#452) * fix: relax the api provided for sqlx req * lint: clippy and fmt * feat: add recovery of abandoned jobs to backend heartbeats (#453) * feat: add recovery of abandoned jobs to backend heartbeats * lint: fmt * fix: attempt to get tests passing * fix: attempt to get tests passing * fix: minor fix typo * fix: minor different solutions * fix: better handle attempts * handle postgres edge case * fix: better handling * feat: allow backends to emit errors (#454) * feat: allow backends to emit errors * lint: fmt * fix: pass in a reference to prevent mutation * Feat: Introduce simple ability to pipe cron jobs to any backend (#455) * Feat: Introduce simple ability to pipe cron jobs to any backend This feature allows you to quickly persist cron jobs guaranteeing they will be run and can be distributed * lint: cargo fmt * chore/dev-branch * feat: return of exposing backends to help in building apis (#457) (#458) * fmt: Cargo.toml * fix: removed features * fix: run only specific tests --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: John Vandenberg <jayvdb@gmail.com> Co-authored-by: Mathias Lafeldt <mathias.lafeldt@gmail.com> Co-authored-by: zakstucke <44890343+zakstucke@users.noreply.github.com>
- Loading branch information