Hangfire 1.8.0-rc2
No packages depend on Hangfire.
1.8.0-rc2
Hangfire.Core
• Added – Support for default culture and UI culture via the UseDefaultCulture configuration method.
• Added – CompatibilityLevel.Version_180 flag to avoid storing culture parameters when they are the same as default.
• Added – BackgroundJobServerOptions.IsLightweightServer option to run server with no storage processes.
• Changed – Use UI culture from CurrentCulture parameter when CurrentUICulture one is missing.
Hangfire.SqlServer
• Breaking – Prioritise Microsoft.Data.SqlClient package over System.Data.SqlClient one.
• Changed – Bump internal version of Dapper to 2.0.123. • Changed – Remove System.Data.SqlClient package from the NuGet dependency graph (by @0xced).
Hangfire.NetCore
• Added – net451 and netstandard1.3 targets for the package.
• Changed – Use netstandard2.1 target instead of netcoreapp3.0 for the package.
Hangfire.AspNetCore
• Breaking – Make the package to be dependent on Hangfire.NetCore to use the same types.
1.8.0-rc1
Hangfire.Core
• Added – Introduce the Job.Queue property, so jobs now can have their own queue specified.
• Added – Method overloads to create background jobs directly with a custom default queue.
• Added – Method overloads to create recurring jobs directly with a custom default queue.
• Added – IBackgroundJobClient.Create method overloads with the new queue parameter.
• Added – JobContinuationOptions.OnlyOnDeletedState to create continuations after a failure.
• Added – Make it possible to specify multiple JobContinuationOptions values for a continuation.
• Added – Ability to use custom formattable resource identifiers for the DisableConcurrentExecution filter.
• Added – Pass ServerId to FailedState instances to simplify the debugging on different servers.
• Added – Allow to pass job parameters when creating a job (by @brian-knoll-micronetonline).
• Added – MisfireHandlingMode.Strict to create job for each missed recurring job occurrence.
• Added – DeletedState now have the persisted Exception property populated 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 – Built-in Remove method for JobFilterCollection to remove global filters based on their type.
• Added – IGlobalConfiguration.UseFilterProvider extension method to unify the configuration.
• Changed – Use the AttemptsExceededAction.Delete option by default in the global automatic retry filter.
• Changed – Query time from storage in recurring and delayed schedulers when supported by storage.
• Changed – Increase the default value for the BackgroundJobServerOptions.StopTimeout to 500 ms.
• Changed – Speedup delayed jobs when custom default queue is specified by avoiding extra state transition.
• Changed – Move job to the DeletedState instead of SucceededState when its invocation was canceled by a filter.
• 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.
• Breaking – Dropped NET45 platform target in favor of NET451 target to support Visual Studio 2022.
Dashboard UI
• Added – Dark mode support for Dashboard UI configurable with the UseDarkModeSupportForDashboard method (by @danillewin).
• Added – Dashboard UI now have full-width layout to display more data (by @danillewin).
• Added – Allow to add custom JavaScript and CSS files to the Dashboard UI via the DashboardRoutes class.
• Added – IGlobalConfiguration.UseJobDetailsRenderer method for custom renderers for Job Details page.
• Added – Display deleted jobs in the Realtime and History graphs 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.
• Changed – Make it possible to display methods of non-loaded jobs in Dashboard UI when supported by storage.
• Changed – Improved display of real-time chart with more accents on failed and deleted jobs.
• Changed – Don't display queue name in state transition list when it's the default one.
• Changed – Display scheduled job count when enqueued count is zero on the main metric.
Extensibility
• Added – Factory, StateMachine and Performer properties to context classes to avoid injecting services.
• Added – Allow to pass custom data to ApplyStateContext and ElectStateContext instances.
• Added – Preserve custom data dictionary between the entire filter chain.
• Added – Allow to pass transaction to background job state changer when new methods implemented.
• Changed – Ignore some members when serializing a JobFilterAttribute instance to decrease payload size.
Storage
• 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 – CreateJob method to the JobStorageTransaction abstract class.
• Added – SetJobParameter method to the JobStorageTransaction abstract class.
• Added – Experimental JobStorageConnection.SetContains method.
• Added – Optional ParametersSnapshot property for BackgroundJob and JobData classes to minimize roundtrips in future.
• Added – Fetch "Retries" metric with other statistics when supported by storage.
• Added – JobStorageMonitor class with more available methods for the new features.
• Changed – Allow to query job parameters without additional roundtrip when supported by a storage.
• Changed – Expose state data dictionaries in list DTOs when supported by storage.
Internals
• Added – IBackgroundProcess.UseBackgroundPool now allows to pass thread configuration logic.
• Added – BackgroundJobServerOptions.WorkerThreadConfigurationAction option for custom thread configuration.
• Changed – Allow changing queues on the fly with custom worker configuration.
• Changed – Avoid storage roundtrip to query job data in worker, take data from previous state change.
• Changed – FromParameterAttribute-based logic now always overwrites arguments, even with non-null values.
• Changed – Turn JobContinuationOptions enum into flags while still possible.
• Changed – Re-implement TaskExtensions.WaitOneAsync only with the RegisterWaitForSingleObject method.
• Changed – ServerHeartbeatProcess now uses ThreadPriority.AboveNormal to prioritize heartbeats.
Hangfire.SqlServer
• Breaking – Dropped NET45 platform target in favor of NET451 target to support Visual Studio 2022.
• Added – Recommended Schema 8 migration with fixed JobQueue.Id column to use the bigint type.
• Added – Automatic client package detection based on available types, preferring System.Data.SqlClient (by @0xced).
• Added – SqlServerStorageOptions.DbProviderFactory option to use custom provider factory.
• Added – TryAutoDetectSchemaDependentOptions option to automatically enable options based on schema.
• Added – SqlServerStorage.SchemaVersion metric for Dashboard UI.
• Added – Optional experimental transactional acknowledge for SQL Server (UseTransactionalAcknowledge option).
• Added – Implement the Connection.GetUtcDateTime feature to make work new changes in schedulers.
• Changed – Remove dependency on System.Data.SqlClient for Hangfire.SqlServer (by @0xced).
• Changed – Set default value for the QueuePollInterval option to TimeSpan.Zero.
• Changed – Polling delay when QueuePollInterval is set to zero now defaults to 200 ms.
• Changed – Sliding invisibility timeout-based fetching method is now used by default with 5 minute timeout.
• Changed – Use command batching by default with 5-minute maximum timeout.
• Changed – Enable UseRecommendedIsolationLevel option by default.
• Changed – GetJobData now populates JobData.ParametersSnapshot property to avoid additional round-trips.
• Changed – Display scheduled and processing jobs in the ascending order in Dashboard UI.
• Deprecated – UsePageLocksOnDequeue option is now obsolete and doesn't affect anything.
Hangfire.SqlServer.Msmq
• Breaking – Dropped NET45 platform target in favor of NET451 target to support Visual Studio 2022.
Hangfire.NetCore and Hangfire.AspNetCore
• Added – IApplicationBuilder.UseHangfireServer that accepts custom factory for IBackgroundProcessingServer.
.NET Framework 4.5.1
- Hangfire.Core (= 1.8.0-rc2)
- Hangfire.SqlServer (= 1.8.0-rc2)
- Microsoft.Owin.Host.SystemWeb (>= 3.0.0)
.NET Standard 1.3
- Hangfire.Core (= 1.8.0-rc2)
- Hangfire.SqlServer (= 1.8.0-rc2)
- Hangfire.AspNetCore (= 1.8.0-rc2)
.NET Standard 2.0
- Hangfire.Core (= 1.8.0-rc2)
- Hangfire.SqlServer (= 1.8.0-rc2)
- Hangfire.AspNetCore (= 1.8.0-rc2)
| Version | Downloads | Last updated |
|---|---|---|
| 1.8.22 | 1 | 12/10/2025 |
| 1.8.21 | 1 | 12/13/2025 |
| 1.8.20 | 0 | 12/17/2025 |
| 1.8.19 | 0 | 05/16/2025 |
| 1.8.18 | 2 | 12/10/2025 |
| 1.8.17 | 2 | 12/16/2025 |
| 1.8.16 | 1 | 12/20/2025 |
| 1.8.15 | 1 | 12/14/2025 |
| 1.8.14 | 5 | 12/13/2025 |
| 1.8.12 | 1 | 12/20/2025 |
| 1.8.11 | 2 | 12/14/2025 |
| 1.8.10 | 1 | 12/18/2025 |
| 1.8.9 | 1 | 12/20/2025 |
| 1.8.7 | 1 | 12/20/2025 |
| 1.8.6 | 2 | 12/17/2025 |
| 1.8.5 | 1 | 12/17/2025 |
| 1.8.4 | 1 | 12/20/2025 |
| 1.8.3 | 1 | 12/13/2025 |
| 1.8.2 | 1 | 12/20/2025 |
| 1.8.1 | 3 | 12/15/2025 |
| 1.8.0 | 2 | 12/15/2025 |
| 1.8.0-rc4 | 2 | 12/14/2025 |
| 1.8.0-rc3 | 2 | 12/15/2025 |
| 1.8.0-rc2 | 3 | 12/10/2025 |
| 1.8.0-beta4 | 2 | 12/12/2025 |
| 1.8.0-beta3 | 3 | 12/13/2025 |
| 1.8.0-beta2 | 2 | 12/15/2025 |
| 1.8.0-beta1 | 4 | 12/11/2025 |
| 1.7.37 | 1 | 12/20/2025 |
| 1.7.36 | 1 | 12/20/2025 |
| 1.7.35 | 0 | 05/18/2023 |
| 1.7.34 | 2 | 12/11/2025 |
| 1.7.33 | 1 | 12/16/2025 |
| 1.7.32 | 2 | 12/15/2025 |
| 1.7.31 | 1 | 12/20/2025 |
| 1.7.30 | 3 | 12/13/2025 |
| 1.7.29 | 2 | 12/14/2025 |
| 1.7.28 | 1 | 12/20/2025 |
| 1.7.27 | 1 | 12/20/2025 |
| 1.7.26 | 1 | 12/17/2025 |
| 1.7.25 | 2 | 12/09/2025 |
| 1.7.24 | 1 | 12/20/2025 |
| 1.7.23 | 1 | 12/20/2025 |
| 1.7.22 | 2 | 12/11/2025 |
| 1.7.21 | 4 | 12/10/2025 |
| 1.7.20 | 3 | 12/14/2025 |
| 1.7.19 | 4 | 12/13/2025 |
| 1.7.18 | 3 | 12/13/2025 |
| 1.7.17 | 2 | 12/10/2025 |
| 1.7.16 | 0 | 10/14/2020 |
| 1.7.15 | 1 | 12/20/2025 |
| 1.7.14 | 2 | 12/13/2025 |
| 1.7.13 | 1 | 12/15/2025 |
| 1.7.12 | 1 | 12/17/2025 |
| 1.7.11 | 2 | 12/16/2025 |
| 1.7.10 | 2 | 12/16/2025 |
| 1.7.9 | 2 | 12/12/2025 |
| 1.7.8 | 2 | 12/21/2025 |
| 1.7.7 | 1 | 12/20/2025 |
| 1.7.6 | 1 | 12/16/2025 |
| 1.7.5 | 2 | 12/16/2025 |
| 1.7.4 | 2 | 12/19/2025 |
| 1.7.3 | 1 | 12/20/2025 |
| 1.7.2 | 1 | 12/17/2025 |
| 1.7.1 | 2 | 12/20/2025 |
| 1.7.0 | 0 | 03/29/2019 |
| 1.6.30 | 2 | 12/15/2025 |
| 1.6.29 | 1 | 12/17/2025 |
| 1.6.28 | 3 | 12/13/2025 |
| 1.6.27 | 0 | 06/27/2019 |
| 1.6.26 | 2 | 12/15/2025 |
| 1.6.25 | 4 | 12/10/2025 |
| 1.6.24 | 1 | 12/20/2025 |
| 1.6.23 | 5 | 12/14/2025 |
| 1.6.22 | 3 | 12/10/2025 |
| 1.6.21 | 1 | 12/17/2025 |
| 1.6.20 | 1 | 12/17/2025 |
| 1.6.19 | 1 | 12/20/2025 |
| 1.6.18 | 2 | 12/15/2025 |
| 1.6.17 | 1 | 12/15/2025 |
| 1.6.16 | 2 | 12/16/2025 |
| 1.6.15 | 1 | 12/17/2025 |
| 1.6.14 | 0 | 06/16/2017 |
| 1.6.13 | 3 | 12/11/2025 |
| 1.6.12 | 1 | 12/17/2025 |
| 1.6.11 | 1 | 12/17/2025 |
| 1.6.10 | 1 | 12/20/2025 |
| 1.6.9 | 1 | 12/20/2025 |
| 1.6.8 | 3 | 12/14/2025 |
| 1.6.7 | 1 | 12/16/2025 |
| 1.6.6 | 0 | 10/13/2016 |
| 1.6.5 | 1 | 12/17/2025 |
| 1.6.4 | 2 | 12/19/2025 |
| 1.6.3 | 3 | 12/16/2025 |
| 1.6.2 | 2 | 12/13/2025 |
| 1.6.1 | 1 | 12/16/2025 |
| 1.6.0 | 2 | 12/11/2025 |
| 1.5.9 | 3 | 12/11/2025 |
| 1.5.8 | 2 | 12/15/2025 |
| 1.5.7 | 3 | 12/15/2025 |
| 1.5.6 | 1 | 12/20/2025 |
| 1.5.5 | 1 | 12/20/2025 |
| 1.5.4 | 1 | 12/20/2025 |
| 1.5.3 | 1 | 12/20/2025 |
| 1.5.2 | 1 | 12/20/2025 |
| 1.5.1 | 1 | 12/20/2025 |
| 1.5.0 | 3 | 12/11/2025 |
| 1.4.7 | 2 | 12/12/2025 |
| 1.4.6 | 1 | 12/13/2025 |
| 1.4.5 | 1 | 12/20/2025 |
| 1.4.4 | 1 | 12/20/2025 |
| 1.4.3 | 1 | 12/20/2025 |
| 1.4.2 | 1 | 12/16/2025 |
| 1.4.1 | 0 | 04/14/2015 |
| 1.3.4 | 1 | 12/15/2025 |
| 1.3.3 | 0 | 01/28/2015 |
| 1.3.2 | 1 | 12/18/2025 |
| 1.3.1 | 1 | 12/17/2025 |
| 1.3.0 | 4 | 12/14/2025 |
| 1.2.2 | 2 | 12/10/2025 |
| 1.2.1 | 1 | 12/12/2025 |
| 1.2.0 | 0 | 11/17/2014 |
| 1.1.1 | 2 | 12/20/2025 |
| 1.1.0 | 0 | 09/03/2014 |
| 1.0.2 | 2 | 12/17/2025 |
| 1.0.1 | 1 | 12/14/2025 |
| 1.0.0 | 1 | 12/20/2025 |
| 0.9.1 | 2 | 12/17/2025 |
| 0.9.0 | 1 | 12/20/2025 |
| 0.8.3 | 1 | 12/19/2025 |
| 0.8.2 | 1 | 12/20/2025 |
| 0.8.1 | 2 | 12/10/2025 |
| 0.8.0 | 3 | 12/14/2025 |
| 0.7.5 | 1 | 12/20/2025 |
| 0.7.4 | 2 | 12/20/2025 |
| 0.7.3 | 1 | 12/20/2025 |
| 0.7.2 | 2 | 12/17/2025 |
| 0.7.1 | 1 | 12/20/2025 |
| 0.7.0 | 0 | 03/22/2014 |
| 0.6.2 | 2 | 12/19/2025 |
| 0.6.1 | 0 | 01/27/2014 |
| 0.6.0 | 1 | 12/20/2025 |
| 0.5.2 | 1 | 12/20/2025 |
| 0.5.1 | 1 | 12/16/2025 |
| 0.5.0 | 1 | 12/20/2025 |