8da204f74a 
								
							
								 
							
						 
						
							
							
								
								Always use cPickle, never 'regular' pickle.  
							
							... 
							
							
							
							This fixes  #18 . 
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								9318825429 
								
							
								 
							
						 
						
							
							
								
								Abstract away from the concrete pickle implementation.  
							
							... 
							
							
							
							Choose cPickle, if available, for best performance. 
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								39f106cdb3 
								
							
								 
							
						 
						
							
							
								
								Have the test suite find an empty Redis database.  
							
							... 
							
							
							
							Since the test suite `flushdb()`'s after running each test, we should
make sure the database is empty before we even start running tests.
This patch will make sure to never destroy any local production data
inside the running Redis instance.
This fixes  #25 . 
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								e05acfedce 
								
							
								 
							
						 
						
							
							
								
								Fix putting jobs on the failure queue when they fail.  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								7c903e45ef 
								
							
								 
							
						 
						
							
							
								
								Simplify the persistence of jobs.  
							
							... 
							
							
							
							Fixes  #23  and #24 . 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								370399f8f7 
								
							
								 
							
						 
						
							
							
								
								CHECKPOINT: dequeue_any now returns the queue that was popped from.  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								f516f8df2e 
								
							
								 
							
						 
						
							
							
								
								CHECKPOINT: Handle failing and unreadable jobs.  
							
							... 
							
							
							
							Failing (or unreadable) jobs are correctly put on the failure queue by
the worker now. 
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								b1650cb9b9 
								
							
								 
							
						 
						
							
							
								
								CHECKPOINT: Second part of the big refactoring.  
							
							... 
							
							
							
							Jobs are now stored in separate keys, and only job IDs are put on Redis
queues.  Much of the code has been hit by this change, but it is for the
good.
No really. 
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								65105b44c3 
								
							
								 
							
						 
						
							
							
								
								CHECKPOINT: Initial part of the big refactor.  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								7fff52d99c 
								
							
								 
							
						 
						
							
							
								
								Get rid of ugly custom assertion.  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								fcca48a9d7 
								
							
								 
							
						 
						
							
							
								
								Rename empty property -> is_empty() method.  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								fdce187c27 
								
							
								 
							
						 
						
							
							
								
								Putting failed jobs on the failure queue.  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								7eb8d92605 
								
							
								 
							
						 
						
							
							
								
								Put unreadable tasks on the failure queue.  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								0be1cb6ac0 
								
							
								 
							
						 
						
							
							
								
								Change the way jobs are pickled.  
							
							... 
							
							
							
							There is no job tuple anymore, but instead Jobs are picklable by
themselves natively.  Furthermore, I've added a way to annotate Jobs
with created_at and enqueued_at timestamps, to drive any future Job
performance stats.  (And to enable requeueing, while keeping hold of the
queue that the Job originated from.)
This fixes  #17 . 
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								0503eb2829 
								
							
								 
							
						 
						
							
							
								
								Clarified responsibility of the Job class.  
							
							... 
							
							
							
							The Job itself has nothing to do with queueing and dequeueing, so the
DequeueError wasn't appropriate here, either. 
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								1f64157c38 
								
							
								 
							
						 
						
							
							
								
								Broke down tests into multiple files.  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								210477c2ab 
								
							
								 
							
						 
						
							
							
								
								Throw DequeueError when reading unprocessable data from queue.  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								2c72d94ebd 
								
							
								 
							
						 
						
							
							
								
								Run class initializations only once.  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								068db4cb35 
								
							
								 
							
						 
						
							
							
								
								Shut up logbook during tests.  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								aecb0a1bf0 
								
							
								 
							
						 
						
							
							
								
								Simplify calling .work() or .work(burst=True).  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								213ac73e19 
								
							
								 
							
						 
						
							
							
								
								Remove blinker dependency.  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								fd3831f8f2 
								
							
								 
							
						 
						
							
							
								
								Fix b0rken test case due to new naming conventions.  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								d780c929c0 
								
							
								 
							
						 
						
							
							
								
								Change semantics of work().  Add work_burst().  
							
							... 
							
							
							
							work() will now start the worker run loop, and work_burst() now leads to
the burst-then-quit behaviour. 
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								b4c1c85276 
								
							
								 
							
						 
						
							
							
								
								Add equality and comparison methods.  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								a5ea45af57 
								
							
								 
							
						 
						
							
							
								
								Make the dequeue methods return values consistent.  
							
							... 
							
							
							
							I merely refactored the internal calls. No external API changes have been made in this commit. In order to make the dequeueing methods consistent, each dequeue method now returns a Job instance, which is just a nice lightweight wrapper around the job tuple.
The Job class makes it easier to pass the method call info around, along with some possible meta information, like the queue the job originated from.
This fixes  #7 . 
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								1c9fa66bc1 
								
							
								 
							
						 
						
							
							
								
								Greatly simplify the setup.  
							
							... 
							
							
							
							Jobs don't even need to be tagged.  Any function can be put on queues. 
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								62b6b180f3 
								
							
								 
							
						 
						
							
							
								
								Also allow args and kwargs to enqueue() calls on Queue.  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								159eba6df2 
								
							
								 
							
						 
						
							
							
								
								Add arg to test case.  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								fc5097ce7a 
								
							
								 
							
						 
						
							
							
								
								Better test naming.  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								196a9815d2 
								
							
								 
							
						 
						
							
							
								
								Add dequeue method to Queue.  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								b5e0377eb0 
								
							
								 
							
						 
						
							
							
								
								Allow jobs to be declared without a default queue.  
							
							... 
							
							
							
							This makes it impossible to use delay() on them.  Instead, you should
use enqueue(). 
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								407f3e8b38 
								
							
								 
							
						 
						
							
							
								
								Add ability to put work on alternate queues.  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								1b8da4a861 
								
							
								 
							
						 
						
							
							
								
								Add test for putting work on queues.  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								d721f0708b 
								
							
								 
							
						 
						
							
							
								
								Refactor the whole Redis connection stuff to be just as easy as in RDB.  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								05e83c5231 
								
							
								 
							
						 
						
							
							
								
								Add a very minor beginning to the test cases.  
							
							
							
						 
						
							14 years ago  
				
					
						
							
							
								 
						
							
							
								c45e056786 
								
							
								 
							
						 
						
							
							
								
								Add some project meta stuff.  
							
							
							
						 
						
							14 years ago