spinach icon indicating copy to clipboard operation
spinach copied to clipboard

Modern Redis task queue for Python 3

Results 10 spinach issues
Sort by recently updated
recently updated
newest added

These should not really generate keys as there's no point. In addition, the counts associated with each are incremented forever so it's possible at some point an overflow could occur.

Move all configs into `pyproject.toml`, switch test/packaging to use Hatch, and do all the linting with Ruff. Fix issues that Ruff turned up, and annotate/ignore the pieces that it got...

It's impossible to do a release from the gitub releases page as the build version is hard-coded in the spinach/const.py file, which is picked up by setup.py. We can use...

- Leave already-set concurrency values alone, always. - Fix some unit tests that were throwing `InvalidJobSignatureError` errors - Fix incompatibilties with tox >= 4.0 Fixes: Issue #27

This one is a bit complicated, but: # Preamble A test case script: ``` import time import spinach sp = spinach.Engine(spinach.RedisBroker()) @sp.task(name='nap', max_retries=1, max_concurrency=8) def nap(job_id): print(f"{job_id:3} Zzzz...") time.sleep(5) batch...

It would be useful to prioritize Tasks so when they are pulled from the queue we can have some sort of ordering other than FIFO. Defining the order on the...

Work was recently completed to send signals for jobs that fail as a result of a dead broker, however those jobs that have max_retries unset are not signalled as failed...

# Steps to reproduce ## Prep In one window: ``` docker-compose -f spinach/tests/docker-compose.yml up -d docker-compose -f spinach/tests/docker-compose.yml exec redis redis-cli ``` ## Test In another window: ``` import spinach...

The periodics are currently effectively a 'time since it last ran, which in turn is time since it first ever ran'. It would be useful for periodics to define a...

Adds a new, optional, argument to task creation, `periodcity_start`, which gives Task authors finer control over scheduling of periodic tasks. Specifically, it allows Tasks to pin their start time to...