Hangfire 1.8.0-beta3

An easy and reliable way to perform fire-and-forget, delayed and recurring, long-running, short-running, CPU or I/O intensive tasks inside ASP.NET applications. No Windows Service / Task Scheduler required. Even ASP.NET is not required. Backed by Redis, SQL Server, SQL Azure or MSMQ. This is a .NET alternative to Sidekiq, Resque and Celery. https://www.hangfire.io/

No packages depend on Hangfire.

https://www.hangfire.io/blog/

1.8.0-beta3

Hangfire.Core

• Added – Introduce the Job.Queue property, so jobs now can have their own queue specified. • Added – Method overloads to create recurring jobs directly with a custom default queue. • Added – Method overloads to create background jobs directly with a custom default queue. • Added – IBackgroundJobClient.Create method overloads with the new queue parameter. • Added – Experimental JobStorageConnection.SetContains method. • Added – Pass ServerId to FailedState instances to simplify the debugging on different servers. • Changed – Dashboard UI now have full-width layout to display more data (by @danillewin). • Changed – Query time from storage in recurring and delayed schedulers when supported by storage. • Changed – Speedup delayed jobs when custom default queue is specified by avoiding extra state transition. • Changed – Display scheduled job count when enqueued count is zero on the main metric. • Changed – Don't display queue name in state transition list when it's the default one. • Changed – Re-implement TaskExtensions.WaitOneAsync only with the RegisterWaitForSingleObject method. • Changed – Expose state data dictionaries in list DTOs when supported by storage. • Changed – Make it possible to display methods of non-loaded jobs in Dashboard UI when supported by storage. • Fixed – Check job details for the null value before passing it to renderers (regression). • Deprecated – AddOrUpdate overloads with optional params defined in the RecurringJobManagerExtensions class. • Deprecated – AddOrUpdate overloads with optional parameters defined in the RecurringJob class. • Deprecated – AddOrUpdate method overloads with no recurringJobId parameter. • Deprecated – RecurringJobOptions.QueueName property, new methods should be used instead.

Hangfire.SqlServer

• Added – Implement the Connection.GetUtcDateTime feature to make work new changes in schedulers. • Changed – Display scheduled and processing jobs in the ascending order in Dashboard UI.

1.8.0-beta2

Hangfire.Core

• Added – MisfireHandlingMode.Strict to create job for each missed recurring job occurrence. • Added – Allow to pass parameters when creating a job (by @brian-knoll-micronetonline). • Added – Make it possible to use specify multiple JobContinuationOptions for a continuation. • Added – CreateJob method to the JobStorageTransaction abstract class. • Added – SetJobParameter method to the JobStorageTransaction abstract class. • Changed – Allow to query job parameters without roundtrip when supported by a storage. • Changed – Turn JobContinuationOptions enum into flags while still possible. • Changed – Avoid storage roundtrip to query job data in worker, take data from previous state change. • Fixed – Don't overwrite existing argument values with null job parameters when using FromParameter attribute. • Fixed – Job continuation mistakenly started when using the new OnlyOnDeletedState option.

Hangfire.SqlServer

• Changed – Set default value for the QueuePollInterval option to TimeSpan.Zero. • Changed – Use command batching by default with 5-minute maximum timeout. • Changed – Enable UseRecommendedIsolationLevel option by default.

1.8.0-beta1

Hangfire.Core

• Added – Display deleted jobs in the Realtime and History graphs when supported by storage. • Added – DeletedState now have the persisted Exception property. • Added – JobContinuationOptions.OnlyOnDeletedState to create continuations after a failure. • Added – Exception job parameter is passed to continuation when UseResultsInContinuations method is used. • Added – FromExceptionAttribute to deal with an antecedent exception in a background job continuation. • Added – Allow to filter exception types in AutomaticRetryAttribute by using the new OnlyOn property. • Added – IBackgroundProcess.UseBackgroundPool now allows to pass thread configuration logic. • Added – IGlobalConfiguration.UseJobDetailsRenderer method for custom renderers. • Added – BackgroundJobServerOptions.WorkerThreadConfigurationAction option • Added – Allow to pass custom data to ApplyStateContext and ElectStateContext instances. • Added – Preserve custom data dictionary between the entire filter chain. • Added – Fetch "Retries" metric with other statistics when supported by storage • Added – IGlobalConfiguration.UseDashboardMetrics extension method to pass multiple metrics at once. • Added – State renderer for the DeletedState to display its new exception property. • Added – Virtual JobStorage.GetReadOnlyConnection method intended to return JobStorageConnection for replicas. • Added – Virtual JobStorage.HasFeature method for querying optional features. • Added – Optional GetSetCount and GetUtcDateTime methods for the JobStorageConnection class. • Added – Optional AcquireDistributedLock and RemoveFromQueue methods for the JobStorageTransaction class. • Added – Support for transactional acknowledge using new storage method for better handling some data loss scenarios. • Added – Factory, StateMachine and Performer properties to context classes to avoid injecting services. • Added – Allow to pass transaction to background job state changer when new methods implemented. • Added – Optional ParametersSnapshot property for BackgroundJob and JobData classes to minimize roundtrips in future. • Changed – Use the AttemptsExceededAction.Delete option by default in the global automatic retry filter. • Changed – Move job to the DeletedState instead of SucceededState when its invocation was canceled by a filter. • Changed – FromParameterAttribute-based logic now always overwrites arguments, even with non-null values. • Changed – Improved display of real-time chart with more accents on failed and deleted jobs. • Changed – Ignore some members when serializing a JobFilterAttribute instance to decrease size • Changed – ServerHeartbeatProcess now uses ThreadPriority.AboveNormal to prioritize heartbeats.

Hangfire.SqlServer

• Added – Recommended Schema 8 migration with fixed JobQueue.Id column to use bigint type. • Added – SqlServerStorageOptions.PreferMicrosoftDataSqlClient option to use the corresponding package. • Added – SqlServerStorage.SchemaVersion metric for Dashboard UI. • Added – Implement optional experimental transactional acknowledge for SQL Server (UseTransactionalAcknowledge option). • Changed – Sliding invisibility timeout-based fetching method is now used by default with 5 minute timeout. • Fixed – Ensure connection is released when exception is thrown when during lock release.

Hangfire.NetCore and Hangfire.AspNetCore

• Added – IApplicationBuilder.UseHangfireServer that accepts custom factory for IBackgroundProcessingServer.

.NET Framework 4.5

.NET Standard 1.3

.NET Standard 2.0

Version Downloads Last updated
1.8.23 9 02/06/2026
1.8.22 12 12/10/2025
1.8.21 9 12/13/2025
1.8.20 6 12/17/2025
1.8.19 7 12/31/2025
1.8.18 7 12/10/2025
1.8.17 8 12/16/2025
1.8.16 6 12/20/2025
1.8.15 6 12/14/2025
1.8.14 14 12/13/2025
1.8.12 10 12/20/2025
1.8.11 8 12/14/2025
1.8.10 6 12/18/2025
1.8.9 7 12/20/2025
1.8.7 6 12/20/2025
1.8.6 7 12/17/2025
1.8.5 6 12/17/2025
1.8.4 6 12/20/2025
1.8.3 7 12/13/2025
1.8.2 9 12/20/2025
1.8.1 10 12/15/2025
1.8.0 10 12/15/2025
1.8.0-rc4 9 12/14/2025
1.8.0-rc3 8 12/15/2025
1.8.0-rc2 11 12/10/2025
1.8.0-rc1 8 12/31/2025
1.8.0-beta4 9 12/12/2025
1.8.0-beta3 10 12/13/2025
1.8.0-beta2 12 12/15/2025
1.8.0-beta1 9 12/11/2025
1.7.37 4 12/20/2025
1.7.36 8 12/20/2025
1.7.35 7 01/06/2026
1.7.34 10 12/11/2025
1.7.33 10 12/16/2025
1.7.32 10 12/15/2025
1.7.31 7 12/20/2025
1.7.30 10 12/13/2025
1.7.29 8 12/14/2025
1.7.28 8 12/20/2025
1.7.27 6 12/20/2025
1.7.26 7 12/17/2025
1.7.25 8 12/09/2025
1.7.24 7 12/20/2025
1.7.23 10 12/20/2025
1.7.22 10 12/11/2025
1.7.21 9 12/10/2025
1.7.20 9 12/14/2025
1.7.19 8 12/13/2025
1.7.18 10 12/13/2025
1.7.17 9 12/10/2025
1.7.16 7 12/21/2025
1.7.15 10 12/20/2025
1.7.14 8 12/13/2025
1.7.13 10 12/15/2025
1.7.12 8 12/17/2025
1.7.11 9 12/16/2025
1.7.10 9 12/16/2025
1.7.9 6 12/12/2025
1.7.8 8 12/21/2025
1.7.7 7 12/20/2025
1.7.6 10 12/16/2025
1.7.5 8 12/16/2025
1.7.4 8 12/19/2025
1.7.3 9 12/20/2025
1.7.2 8 12/17/2025
1.7.1 11 12/20/2025
1.7.0 7 12/22/2025
1.6.30 9 12/15/2025
1.6.29 9 12/17/2025
1.6.28 8 12/13/2025
1.6.27 9 12/26/2025
1.6.26 9 12/15/2025
1.6.25 9 12/10/2025
1.6.24 10 12/20/2025
1.6.23 10 12/14/2025
1.6.22 12 12/10/2025
1.6.21 7 12/17/2025
1.6.20 7 12/17/2025
1.6.19 7 12/20/2025
1.6.18 8 12/15/2025
1.6.17 9 12/15/2025
1.6.16 9 12/16/2025
1.6.15 8 12/17/2025
1.6.14 7 01/06/2026
1.6.13 12 12/11/2025
1.6.12 6 12/17/2025
1.6.11 8 12/17/2025
1.6.10 9 12/20/2025
1.6.9 8 12/20/2025
1.6.8 13 12/14/2025
1.6.7 8 12/16/2025
1.6.6 9 12/23/2025
1.6.5 8 12/17/2025
1.6.4 9 12/19/2025
1.6.3 10 12/16/2025
1.6.2 11 12/13/2025
1.6.1 9 12/16/2025
1.6.0 8 12/11/2025
1.5.9 10 12/11/2025
1.5.8 14 12/15/2025
1.5.7 9 12/15/2025
1.5.6 6 12/20/2025
1.5.5 8 12/20/2025
1.5.4 8 12/20/2025
1.5.3 8 12/20/2025
1.5.2 6 12/20/2025
1.5.1 6 12/20/2025
1.5.0 11 12/11/2025
1.4.7 8 12/12/2025
1.4.6 10 12/13/2025
1.4.5 6 12/20/2025
1.4.4 8 12/20/2025
1.4.3 7 12/20/2025
1.4.2 6 12/16/2025
1.4.1 6 01/01/2026
1.3.4 8 12/15/2025
1.3.3 6 12/21/2025
1.3.2 11 12/18/2025
1.3.1 8 12/17/2025
1.3.0 10 12/14/2025
1.2.2 11 12/10/2025
1.2.1 5 12/12/2025
1.2.0 6 01/09/2026
1.1.1 7 12/20/2025
1.1.0 9 12/23/2025
1.0.2 6 12/17/2025
1.0.1 10 12/14/2025
1.0.0 9 12/20/2025
0.9.1 5 12/17/2025
0.9.0 6 12/20/2025
0.8.3 8 12/19/2025
0.8.2 7 12/20/2025
0.8.1 10 12/10/2025
0.8.0 10 12/14/2025
0.7.5 5 12/20/2025
0.7.4 8 12/20/2025
0.7.3 7 12/20/2025
0.7.2 8 12/17/2025
0.7.1 7 12/20/2025
0.7.0 6 01/13/2026
0.6.2 9 12/19/2025
0.6.1 8 01/01/2026
0.6.0 6 12/20/2025
0.5.2 5 12/20/2025
0.5.1 6 12/16/2025
0.5.0 5 12/20/2025