Hangfire 1.6.8

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 application. 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. http://hangfire.io/

No packages depend on Hangfire.

http://hangfire.io/blog/ 1.6.8 Hangfire.Core • Fixed – `Cron.MonthInterval` now returns correct CRON expression. • Fixed – Throw `NotSupportedException` early, when arguments contain delegate or expression. • Fixed – Connection and distributed lock kept longer than necessary in `RecurringJobScheduler`. • Fixed – Use local date/times everywhere in Dashboard UI. • Fixed – Call chart update only when it exists in Dashboard UI to prevent JavaScript errors. • Fixed – Scheduled column title is now displaying correctly in Dashboard UI. • Fixed – Typo "Nexts jobs" should be "Next jobs" in Dashboard UI (by @danielabbatt). Hangfire.SqlServer • Fixed – Use `long` where possible instead of `int` for background job identifiers, full support will be in 1.7.0. 1.6.7 Hangfire.Core • Fixed – ArgumentException when using complex arguments in generic methods like "IList<T>" (by @aidmsu). • Fixed – Generic arrays like "T[]" aren't supported in background job arguments (by @aidmsu). • Fixed – Wrong choice of the overload when multiple methods match the given arguments (by @aidmsu). • Fixed – Null values for arguments when there are errors during the JSON deserialization. • Fixed – Window resize cause errors and uncontrolled growth of event and poll listeners (by @Yarmonov). • Fixed – HtmlHelper.ToHumanDuration incorrectly formats fractional seconds (by @pieceofsummer). • Fixed – Exception in Dashboard UI when CRON expression is null by an accident (by @aidmsu). • Fixed – Error in Dashboard UI when rendering an array that contains a null element (by @djfoz). • Fixed – Inconsistent constructors' accessibility for different context classes (by @pieceofsummer). • Fixed – Decrease the max default workers count to "20" in tests (by patrykpiotrmarek). • Fixed – Inconsistent EOL characters in some files of a project (by @aidmsu). • Fixed – Make Queue name accessible from RecurringJobDto (by @swordfish6975). Hangfire.SqlServer • Fixed – Validation added to avoid "An invalid application lock time-out" exceptions (by t0mburton). Hangfire.AspNetCore • Fixed – Parameterless AspNetCoreJobActivator.BeginScope method now returns a correct instance (by @pieceofsummer). 1.6.6 Hangfire.Core • Fixed – Hangfire.Core, Hangfire.SqlServer and Hangfire.SqlServer.Msmq marked as CLS-compliant. • Fixed – Generic methods cause ArgumentNullException when scoped variable is used in expression. Hangfire.SqlServer • Fixed – SqlServerJobQueue class doesn't use obsolete InvisibilityTimeout parameter anymore. 1.6.5 Hangfire.Core • Added – Chinese language to Dashboard UI (by @andy-zhouyou). • Changed – Default upper limit of worker number is 20. • Changed – Default value for DashboardJobListLimit is now 10000. • Fixed – Deserialization exception in continuations, when TypeNameHandling.All option is used (by @MaksimSimkin). • Fixed – I18N is not working, because there are no localized resources in NuGet packages. • Fixed – Infinite redirect loops, when authenticated, but not authorized user accesses Dashboard UI. • Fixed – "The type ... exists in both..." issue when building Hangfire, related to Newtonsoft.Json. • Fixed – Use the given type's method, when scope variable is passed to a job expression. • Fixed – Very rare resource leaks detected by Coverity Scan. Hangfire.SqlServer • Fixed – Different timeout issues after making performance optimizations. • Fixed – SQL timeouts while getting a connection, when using default settings and >= 8 CPU cores. • Fixed – ExpirationManager is bloated by SqlError instances, when there are a lot of messages from server. • Fixed – Counters query returned inconsistent results during CountersAggregator executions. • Performance – Added missing NOLOCK hint for monitoring queries when using SqlServer-based queues. • Performance – ExpirationManager is forced to use index seek operations for cascade deletions. • Performance – CountersAggregator now uses clustered index scan to issue less logical reads. • Performance – Paging queries in dashboard now use CTEs to utilize less logical reads. 1.6.4 Hangfire.SqlServer • Fixed – `SqlConnection` object leaks when using nested distributed locks (in batches and continuations). 1.6.3 Hangfire.Core • Fixed – Add missing `RecurringJob.AddOrUpdate` method overloads to prevent CS4014 warnings. • Fixed – `ToGenericTypeString` method now handles types with no namespace correctly. Hangfire.SqlServer • Fixed – Prevent `ExpirationManager`'s command from timing out, when there are a lot of records. • Fixed – `CountersAggregator` issue introduced in 1.6.2, that causes slow record aggregation. • Fixed – Add `XLOCK` hint for `CountersAggregator` query to prevent deadlocks on lock escalation. Hangfire.SqlServer.Msmq • Fixed – Prevent MSMQ transactions from timing out after 1 minute of processing. 1.6.2 Hangfire.Core • Changed – Recurring job page displays now raw cron strings, descriptions are in tooltips. • Fixed – Return non-highlighted stack trace, when parsing takes too long, instead of throwing an exception. • Fixed – Dashboard UI works correctly again, when IE 11 is in the Compatibility Mode. • Fixed – Long method names now don't push tables out of the boundaries now. Hangfire.SqlServer • Changed – `JobExpirationCheckInterval` property value now defaults to 30 minutes. • Fixed – Excessive blocking when expiring records in `State` and `JobParameters` tables. • Fixed – Migration script `Install.sql` was deadlocked by itself, leading to errors on startup. Hangfire.SqlServer.Msmq • Fixed – Public MSMQ queue paths are parsed correctly now, when determining the queue length. 1.6.1 Hangfire.Core • Added – Automatic unit tests execution for .NET Core on Windows, Linux and OS X using AppVeyor and Travis CI. • Fixed – `DateTime` deserialization issues on .NET Core platform. • Fixed – Fixed UI command behaviour, buttons can only be pressed once per command (by @mahoneyj2). • Fixed – `TypeInitializationException` when using Serilog appeared in version 1.6.0. • Fixed – Cron format strings for intervals are specified correctly now (by @stevetsang). • Fixed – `NullReference` on Job Details page when background job has null value for `IEnumerable` argument. • Fixed – Don't skip symbols when publishing NuGet packages. • Fixed – Use GUID identifier when can't determine the host name. Hangfire.AspNetCore • Fixed – Add missing `GetHttpContext` extension method for the .NET Core platform. 1.6.0 Hangfire.Core • Added – .NET Core support for Hangfire.Core and Hangfire.SqlServer packages (`netstandard1.3` target). • Added – Ability to create jobs based on async methods, they are awaited by a worker (by @tuespetre). • Added – Access to background job context from the `JobActivator.BeginScope` method. • Added – Add LatencyTimeoutAttribute To delete jobs if timeout is exceeded (by @Excommunicated). • Added – Ability to change statistics polling interval in dashboard (by @tristal). • Added – Non-blocking `BackgroundJobServer.SendStop` method, that requests for a shutdown. • Added – `BackgroundJobServerOptions.ServerName` option is back. • Added – `IDashboardAuthorizationFilter` interface that makes `IAuthorizationFilter` obsolete. • Added – Show background job continuations on Job Details page. • Added – Multilanguage support in Dashboard via resource files (by @Elph). • Added – Spanish localization for the Dashboard UI (by @Elph). • Added – Enable backtracking from background job to recurrent job (by @teodimache). • Added – Cron expressions for regular intervals for the `Cron` class (by @geirsagberg). • Added – `IRecurringJobManager` interface for the `RecurringJobManager` class (by @arnoldasgudas). • Added – Abstractions for Dashboard UI to decouple it from OWIN. • Changed – Make the realtime/history graph to use localized dates on hover (by @Elph). • Changed – Make graph tooltip also localized using data-attributes (by @Elph). • Changed – Dashboard metric's title now contains the ResourceKey instead the title (by @Elph). • Changed – Job Details page was redesigned to be more clean with less colors. • Changed – Update jQuery to 2.1.4 and rickshaw.js to 1.5.1. • Changed – Update NCrontab to 3.1.0. • Changed – Update CronExpressionDescriptor to 1.17. • Fixed – `ToGenericTypeString` method now supports nested classes (by @patrykpiotrmarek). • Fixed – Dashboard Errors in Chrome and IE - Cannot read property 'removeChild' of null. • Fixed – /hangfire/js outputs (unintended) UTF-8 BOM. Hangfire.AspNetCore • Added – Deep integration with ASP.NET Core via Hangfire.AspNetCore package. Hangfire.SqlServer • Added – .NET Core support for Hangfire.Core and Hangfire.SqlServer packages (`netstandard1.3` target). • Added – Zero latency processing when client and server reside in the same process (by @bgurmendi). • Changed – `SqlServerStorage` class constructor now takes `DbConnection` instances (by @tystol). • Changed – `SqlServerObjectsInstaller` class is public now (by @vbfox). • Changed – Update Dapper to 1.50.1 version. • Fixed – Drop constraints on Server.Id prior to altering it to avoid conflicts. Hangfire.SqlServer.Msmq • Fixed – Package now depends on the latest Hangfire.SqlServer instead of version 1.2.2.

.NET Framework 4.5

.NET Standard 1.3

Version Downloads Last updated
1.8.17 0 12/03/2024
1.8.16 0 11/27/2024
1.8.15 6 11/23/2024
1.8.14 5 11/28/2024
1.8.12 13 05/09/2024
1.8.11 3 11/30/2024
1.8.10 0 02/12/2024
1.8.9 5 11/27/2024
1.8.7 5 11/27/2024
1.8.6 4 11/28/2024
1.8.5 5 11/28/2024
1.8.4 0 07/27/2023
1.8.3 13 07/12/2023
1.8.2 7 06/01/2023
1.8.1 3 11/28/2024
1.8.0 4 11/28/2024
1.7.37 3 11/28/2024
1.7.36 5 11/28/2024
1.7.35 7 11/21/2024
1.7.34 5 12/08/2024
1.7.33 0 01/31/2023
1.7.32 4 11/28/2024
1.7.31 0 08/19/2022
1.7.30 3 12/04/2024
1.7.29 4 11/25/2024
1.7.28 4 11/23/2024
1.7.27 3 12/11/2024
1.7.26 3 11/27/2024
1.7.25 3 11/24/2024
1.7.24 3 11/27/2024
1.7.23 5 11/30/2024
1.7.22 2 12/02/2024
1.7.21 3 11/27/2024
1.7.20 5 11/27/2024
1.7.19 4 12/02/2024
1.7.18 4 11/25/2024
1.7.17 4 11/27/2024
1.7.16 0 10/14/2020
1.7.15 3 11/29/2024
1.7.14 7 11/22/2024
1.7.13 1 12/02/2024
1.7.12 17 04/10/2023
1.7.11 5 11/29/2024
1.7.10 3 11/27/2024
1.7.9 9 05/09/2024
1.7.8 5 11/29/2024
1.7.7 4 11/24/2024
1.7.6 7 11/21/2024
1.7.5 4 12/02/2024
1.7.4 3 12/02/2024
1.7.3 3 11/27/2024
1.7.2 3 11/29/2024
1.7.1 3 12/02/2024
1.7.0 3 12/02/2024
1.6.30 3 11/27/2024
1.6.29 4 12/12/2024
1.6.28 5 11/25/2024
1.6.27 3 11/28/2024
1.6.26 4 11/25/2024
1.6.25 5 11/29/2024
1.6.24 4 12/04/2024
1.6.23 3 11/28/2024
1.6.22 3 11/29/2024
1.6.21 5 11/28/2024
1.6.20 4 12/02/2024
1.6.19 10 08/15/2023
1.6.18 5 11/28/2024
1.6.17 5 11/28/2024
1.6.16 5 11/28/2024
1.6.15 4 12/06/2024
1.6.14 3 12/13/2024
1.6.13 6 11/29/2024
1.6.12 5 11/29/2024
1.6.11 3 12/05/2024
1.6.10 2 12/10/2024
1.6.9 12 05/06/2024
1.6.8 3 11/25/2024
1.6.7 3 11/28/2024
1.6.6 5 11/27/2024
1.6.5 3 12/02/2024
1.6.4 4 11/25/2024
1.6.3 10 05/28/2024
1.6.2 5 11/28/2024
1.6.1 5 12/01/2024
1.6.0 5 12/11/2024
1.5.9 5 11/28/2024
1.5.8 5 11/29/2024
1.5.7 3 11/30/2024
1.5.6 3 11/27/2024
1.5.5 1 12/08/2024
1.5.4 6 11/25/2024
1.5.3 4 11/29/2024
1.5.2 0 10/15/2015
1.5.1 4 11/27/2024
1.5.0 4 11/29/2024
1.4.7 3 11/29/2024
1.4.6 10 05/08/2024
1.4.5 0 07/24/2015
1.4.4 4 11/30/2024
1.4.3 6 11/22/2024
1.4.2 2 12/02/2024
1.4.1 3 11/20/2024
1.3.4 3 11/30/2024
1.3.3 0 01/28/2015
1.3.2 3 11/28/2024
1.3.1 6 11/25/2024
1.3.0 3 11/27/2024
1.2.2 2 12/11/2024
1.2.1 4 11/02/2024
1.2.0 6 11/25/2024
1.1.1 15 05/12/2024
1.1.0 3 12/04/2024
1.0.2 3 11/03/2024
1.0.1 3 11/28/2024
1.0.0 5 12/11/2024
0.9.1 3 12/16/2024
0.9.0 3 11/28/2024
0.8.3 4 12/02/2024
0.8.2 5 12/11/2024
0.8.1 5 11/30/2024
0.8.0 5 11/29/2024
0.7.5 5 11/28/2024
0.7.4 3 11/29/2024
0.7.3 4 12/04/2024
0.7.2 6 11/29/2024
0.7.1 3 11/27/2024
0.7.0 3 12/03/2024
0.6.2 5 11/22/2024
0.6.1 3 11/27/2024
0.6.0 0 01/27/2014
0.5.2 3 12/16/2024
0.5.1 6 11/25/2024
0.5.0 3 11/30/2024