Hangfire.Core 1.8.3

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/

Showing the top 20 packages that depend on Hangfire.Core.

Packages Downloads
Hangfire.NetCore
.NET Core's Worker Service host support for Hangfire, a background job framework for .NET applications.
4
Hangfire.NetCore
.NET Core's Worker Service host support for Hangfire (background job system for ASP.NET applications).
4
Hangfire.NetCore
.NET Core's Worker Service host support for Hangfire (background job system for ASP.NET applications).
5

Release notes are available in our blog https://www.hangfire.io/blog/ Please see https://docs.hangfire.io/en/latest/upgrade-guides/upgrading-to-hangfire-1.8.html to learn how to upgrade.

1.8.3 • Changed – Allow to configure MaxLinesInStackTrace for a particular FailedState instance. • Fixed – Remove job id from schedule when it's not in the Scheduled state for some reason. • Fixed – Missing invocations of recurring jobs when the new "Ignorable" option is used. • Fixed – Make DisableConcurrentExecutionAttribute and LatencyTimeoutAttribute serializable.

1.8.2 • Changed – Disable transactional job creation feature appeared in 1.8.0. • Fixed – "Can not start continuation XXX" error when storage supports transactional job creation.

1.8.1 • Added – MisfireHandlingMode.Ignorable to avoid scheduling recurring jobs on missed schedules. • Added – Support disabling dark mode via the DashboardOptions.DarkModeEnabled property. • Changed – Remove the 1-hour limitation for the WithJobExpirationTimeout configuration method. • Fixed – Add missing UseDefaultCulture configuration method overloads. • Fixed – Add missing UseDashboardStylesheet and UseJobDetailsRenderer configuration methods. • Fixed – Give even more space for identifiers on the Recurring Jobs page. • Fixed – state-card-state-active color is not very dark (by @coolhome). • Fixed – Slightly change chart proportions to fit 4K in Dashboard UI.

1.8.0 • Breaking – Dropped the NET45 platform target in favor of the NET451 target to support Visual Studio 2022. • 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 – Allow to filter exception types in AutomaticRetryAttribute by using the new OnlyOn property. • Added – DeletedState now has the persisted Exception property populated after a failure. • 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 – Make it possible to specify multiple JobContinuationOptions values for a continuation. • Added – BackgroundJobServerOptions.IsLightweightServer option to run a server with no storage processes. • 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 a job for each missed recurring job occurrence. • Added – Support for default culture and UI culture via the UseDefaultCulture configuration method. • Added – Introduce the captureDefault parameter in the CaptureCulture filter. • Added – IGlobalConfiguration.UseFilterProvider extension method to unify the configuration. • Added – Built-in Remove method for JobFilterCollection to remove global filters based on their type. • Added – CompatibilityLevel.Version_180 flag to avoid storing culture parameters when they are the same as the default ones. • Changed – Create job atomically when Transaction.CreateJob feature is supported by the storage. • Changed – Query time from storage in recurring and delayed schedulers when supported by storage. • Changed – Move job to the DeletedState instead of SucceededState when its invocation was canceled by a filter. • Changed – Speedup delayed jobs when a custom default queue is specified by avoiding extra state transition. • Changed – Use UI culture from CurrentCulture parameter when CurrentUICulture one is missing. • Changed – Increase the default value for the BackgroundJobServerOptions.StopTimeout to 500 ms. • 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 depending on the system settings (by @danillewin). • Added – Dashboard UI now has a 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 – DefaultRecordsPerPage property on the DashboardOptions class (by @PaulARoy). • Added – IGlobalConfiguration.UseJobDetailsRenderer method for custom renderers for the 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. • Added – Support for new MonitoringApi methods for the Awaiting Jobs page. • Changed – Make it possible to display methods of non-loaded jobs in the Dashboard UI when supported by storage. • Changed – Improved display of realtime chart with more accents on failed and deleted jobs. • Changed – Don't display the queue name in the state transition list when it's the default one. • Changed – Display scheduled job count when the 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 a transaction to background job state changer when new methods are implemented. • Changed – Ignore some members when serializing a JobFilterAttribute instance to decrease the payload size.

Storage • Added – Virtual JobStorage.GetReadOnlyConnection method intended to return JobStorageConnection for replicas. • Added – Virtual JobStorage.HasFeature method for querying optional features. • Added – The JobStorageFeatures class to avoid using magic strings in storage features. • Added – Optional GetSetCount, GetSetContains, and GetUtcDateTime methods for the JobStorageConnection class. • Added – Optional AcquireDistributedLock and RemoveFromQueue methods for the JobStorageTransaction class. • Added – Optional CreateJob and SetJobParameter methods for the JobStorageTransaction class. • Added – Optional ParametersSnapshot property for BackgroundJob and JobData classes to minimize roundtrips in the future. • Added – Support for transactional acknowledgment using a new storage method for better handling some data loss scenarios. • Added – Fetch Retries and Awaiting metrics in StatisticsDto properties when supported by storage. • Added – The JobStorageMonitor class with more available methods for the new features. • Changed – Allow to query job parameters without additional roundtrip when supported by storage. • Changed – Expose state data dictionaries in list DTOs when supported by storage. • Changed – Rely on storage indexing with the Monitoring.AwaitingJobs feature.

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 the 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.

.NET Framework 4.5.1

.NET Framework 4.6

.NET Standard 1.3

.NET Standard 2.0

Version Downloads Last updated
1.8.22 2 09.11.2025
1.8.21 5 15.09.2025
1.8.20 4 15.09.2025
1.8.19 5 15.09.2025
1.8.18 4 15.09.2025
1.8.17 4 15.09.2025
1.8.16 4 15.09.2025
1.8.15 4 15.09.2025
1.8.14 5 15.09.2025
1.8.12 4 15.09.2025
1.8.11 5 15.09.2025
1.8.10 5 01.09.2025
1.8.9 5 15.09.2025
1.8.7 5 15.09.2025
1.8.6 4 15.09.2025
1.8.5 4 15.09.2025
1.8.4 4 15.09.2025
1.8.3 4 15.09.2025
1.8.2 4 15.09.2025
1.8.1 4 15.09.2025
1.8.0 4 15.09.2025
1.7.37 5 15.09.2025
1.7.36 4 12.09.2025
1.7.35 4 15.09.2025
1.7.34 4 15.09.2025
1.7.33 4 15.09.2025
1.7.32 4 15.09.2025
1.7.31 4 15.09.2025
1.7.30 4 15.09.2025
1.7.29 4 15.09.2025
1.7.28 4 15.09.2025
1.7.27 4 15.09.2025
1.7.26 5 15.09.2025
1.7.25 4 15.09.2025
1.7.24 5 15.09.2025
1.7.23 5 15.09.2025
1.7.22 4 15.09.2025
1.7.21 5 15.09.2025
1.7.20 5 15.09.2025
1.7.19 4 15.09.2025
1.7.18 4 15.09.2025
1.7.17 5 15.09.2025
1.7.16 4 15.09.2025
1.7.15 4 15.09.2025
1.7.14 4 15.09.2025
1.7.13 4 15.09.2025
1.7.12 4 15.09.2025
1.7.11 4 15.09.2025
1.7.10 4 15.09.2025
1.7.9 5 15.09.2025
1.7.8 4 15.09.2025
1.7.7 4 15.09.2025
1.7.6 4 15.09.2025
1.7.5 4 15.09.2025
1.7.4 5 15.09.2025
1.7.3 5 15.09.2025
1.7.2 4 15.09.2025
1.7.1 4 15.09.2025
1.7.0 4 15.09.2025
1.6.30 4 15.09.2025
1.6.29 4 15.09.2025
1.6.28 3 25.10.2025
1.6.27 4 15.09.2025
1.6.26 4 15.09.2025
1.6.25 4 15.09.2025
1.6.24 4 15.09.2025
1.6.23 4 15.09.2025
1.6.22 4 15.09.2025
1.6.21 4 15.09.2025
1.6.20 4 15.09.2025
1.6.19 4 15.09.2025
1.6.18 5 15.09.2025
1.6.17 4 15.09.2025
1.6.16 4 15.09.2025
1.6.15 4 15.09.2025
1.6.14 5 15.09.2025
1.6.13 5 15.09.2025
1.6.12 4 15.09.2025
1.6.11 4 15.09.2025
1.6.10 4 15.09.2025
1.6.9 4 15.09.2025
1.6.8 5 15.09.2025
1.6.7 5 15.09.2025
1.6.6 4 15.09.2025
1.6.5 4 15.09.2025
1.6.4 4 15.09.2025
1.6.3 4 15.09.2025
1.6.2 4 15.09.2025
1.6.1 4 15.09.2025
1.6.0 4 15.09.2025
1.5.9 5 15.09.2025
1.5.8 4 15.09.2025
1.5.7 4 15.09.2025
1.5.6 4 15.09.2025
1.5.5 4 15.09.2025
1.5.4 4 15.09.2025
1.5.3 4 15.09.2025
1.5.2 4 15.09.2025
1.5.1 4 15.09.2025
1.5.0 4 15.09.2025
1.4.7 4 15.09.2025
1.4.6 4 15.09.2025
1.4.5 4 15.09.2025
1.4.4 5 15.09.2025
1.4.3 4 15.09.2025
1.4.2 4 15.09.2025
1.4.1 4 15.09.2025
1.3.4 4 15.09.2025
1.3.3 4 15.09.2025
1.3.2 4 15.09.2025
1.3.1 4 15.09.2025
1.3.0 4 15.09.2025
1.2.2 4 15.09.2025
1.2.1 4 15.09.2025
1.2.0 4 15.09.2025
1.1.1 4 15.09.2025
1.1.0 4 15.09.2025
1.0.2 4 15.09.2025
1.0.1 5 15.09.2025
1.0.0 5 15.09.2025
0.9.1 4 15.09.2025
0.9.0 4 15.09.2025
0.8.3 4 15.09.2025
0.8.2 5 15.09.2025
0.8.1 4 15.09.2025
0.8.0 5 15.09.2025
0.7.5 4 15.09.2025
0.7.4 4 15.09.2025
0.7.3 4 15.09.2025
0.7.1 4 15.09.2025
0.7.0 5 15.09.2025
0.6.2 4 15.09.2025
0.6.1 4 15.09.2025
0.5.2 4 15.09.2025
0.5.1 4 15.09.2025
0.5.0 5 15.09.2025