HangFire.Core 1.6.24

Core components for Hangfire (background job system for ASP.NET applications).

There is a newer version of this package available.
See the version list below for details.
Install-Package HangFire.Core -Version 1.6.24
dotnet add package HangFire.Core --version 1.6.24
<PackageReference Include="HangFire.Core" Version="1.6.24" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add HangFire.Core --version 1.6.24
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Release Notes

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

1.6.24
• Fixed – `PreserveCulture` filter logs a message instead of throwing an error when it can't find the culture.
• Fixed – Uninitialized continuation shouldn't cause exception when completing an antecedent job.

1.6.23
• Added – Slow log to see warning messages when filters or queries take more than 1 minute.
• Fixed – Catching `DistributedLockTimeoutException` based on resource name in schedulers (by @bogdandanielb).
• Fixed – Serilog context property name does not follow Serilog convention (by @pobiega).
• Fixed – Add more guards against `NullReferenceException` on Recurring Jobs page.
• Fixed – Don't handle recurring jobs created by newer version of Hangfire.

1.6.22
• Added – Ability to use custom type resolvers to modify the type de-serialization logic.
• Fixed – `JobLoadException` when processing jobs in .NET Framework, which were created in .NET Core.
• Fixed – `JobLoadException` when jobs reside in a signed assembly and a new version is deployed.
• Fixed – Don't produce extra logging message when there's an exception in a worker.
• Fixed – Ensure form values are properly returned when there are different versions of Microsoft.Owin (by @DC-jc).
• Fixed – Dashboard fails with 404 "Not Found" error if there's a trailing slash for some reason.
   
1.6.21
• Fixed – High CPU usage and long response time when accessing Failed jobs page with Linux stack traces.
• Fixed – RecurringJobScheduler may block server shutdown and cause distributed lock to be abandoned.
     
1.6.20

• SECURITY – Add "robots" meta tag to ensure browser don't index dashboard pages.
• SECURITY – Add support for antiforgery validation to prevent CSRF attacks (requires configuration).

• Fixed – Perform state change retries using a fresh connection when job's distributed lock may be abandoned.
• Fixed – Disallow transitions to the Failed state on retries that bypass all the filters.
• Fixed – Remove possible rare CPU spikes due to the use of `CancellationToken.WaitHandle`.
• Fixed – Avoid resolving types and methods for logging in static constructors that may lead to process shutdown.
• Fixed – Prevent Recurring jobs dashboard from throwing `NullReferenceException` (by @mattkwiecien).
• Fixed – Replace wall clocks with monotonic ones when calculating local timeouts.
• Fixed – Change logger initialization to be deterministic and predictable by using instance fields.
• Fixed – Make `_currentLogProvider` field access to use volatile reads/writes.
• Fixed – Typo in `NotSupportedException`'s message (by @benrick).
• Fixed – Typo on the Failed jobs page (by @gareth-evans).
     
1.6.19
• Fixed – NullReferenceException in JobMethodCallRenderer regression appeared in 1.6.18.
     
1.6.18
• Added – Add on option to remove the storage connection string from the footer (by @sandorfr).
• Added – Add Dashboard UI Resource zh-TW (by @crablin).
• Fixed – OutOfMemoryException in dashboard when arguments are too big.
• Fixed – DisplayNameAttribute doesn't work when using dashboard in .NET Core.
• Fixed – Update rickshaw css to match the js version (by @pieceofsummer).
• Fixed – Bad exception when Job.FromExpression fails to resolve method for explicit interface implementations (by @f00).
• Fixed – Missing intValue-values in "/stats" endpoint (by @pieceofsummer).
• Fixed – Logging doesn't work with log4net integration in .NET Core (by @evollu).
• Fixed – Fix nuspec pointing to version of Newtonsoft.Json that does not exist (by @mvestergaard)
• Fixed – Server start time has a bad tooltip position (by @pieceofsummer).
• Fixed – Prevent connection string from blowing mobile page layout (by @pieceofsummer).
• Fixed – Number of recurring jobs per page is now correct (by @pieceofsummer).
• Project – Get rid of all the compile-time warnings (by @liakamp).
• Project – More details for build instructions for the project (by @kristofferjalen).
• Project – Unable to build project with space in folder path (by @stefanviberg).
   
1.6.16
• Fixed – Unexpected `DateTime` and `DateTime?` serialization issues in background job arguments (by @plaisted).
• Fixed – `DistributedLockTimeoutException` in some background processes now logged with "DEBUG" level instead of "ERROR".
• Fixed – `ElmahLogProvider` to show errors when using SQL log (by @francnuec).
• Fixed – Last execution field isn't shown on recurring jobs page, when background job has already expired.
• Fixed – `Hangfire.SqlServer` assembly doesn't include version in the `netstandard` target.
   
1.6.13
• Fixed – Continuation is fired on a wrong queue, when parent job is finished before the creation.
• Fixed – Impossible to intercept failed state transition before `AutomaticRetryAttribute`.
• Fixed – Fixed translation in Chinese localization on home page (by @JustinChia).
• Fixed – Don't throw `NullReferenceException`, when state has changed during query on Processing page.
• Fixed – `CreateBatchFailedException`, when batch creation takes longer than 1 hour.
   
1.6.12
• Fixed – Buggy state filters may cause background job to be infinitely retried.
• Fixed – Transient exception during Processing-Succeeded state transition may cause unexpected retry.
   
1.6.11
• Fixed – `NullReferenceException` in dashboard when OWIN's or ASP.NET Core's `User` is `null`.
• Fixed – Regression related to missing CSS and JS resources in dashboard appeared in 1.6.10.
   
1.6.10
• Fixed – Duplicate job continuations aren't added anymore, when outer transaction has failed.
• Fixed – Existing duplicate continuations don't lead to `ArgumentException`: the same key already added.
• Fixed – Replace inline script, because it may violate the Content Security Policy (by @Beczka).
• Fixed – Don't skip records in RecurringJobsPage (by @reaction1989).
   
1.6.8
• 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).
   
1.6.7
• 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).
   
1.6.6
• 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.
   
1.6.5
• 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.
   
1.6.3
• Fixed – Add missing `RecurringJob.AddOrUpdate` method overloads to prevent CS4014 warnings.
• Fixed – `ToGenericTypeString` method now handles types with no namespace correctly.
   
1.6.2
• 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.
   
1.6.1
• 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.
   
1.6.0
• 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.

NuGet packages (221)

Showing the top 5 NuGet packages that depend on HangFire.Core:

Package Downloads
HangFire.SqlServer
SQL Server 2008+ (including Express), SQL Server LocalDB and SQL Azure storage support for Hangfire (background job system for ASP.NET applications).
HangFire
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/
Hangfire.AspNetCore
ASP.NET Core support for Hangfire (background job system for ASP.NET applications).
Hangfire.MemoryStorage
A memory storage for Hangfire
HangFire.Autofac
Autofac IoC Container support for Hangfire (background job system for ASP.NET applications).

GitHub repositories (17)

Showing the top 5 popular GitHub repositories that depend on HangFire.Core:

Repository Stars
aspnetboilerplate/aspnetboilerplate
ASP.NET Boilerplate - Web Application Framework
MassTransit/MassTransit
Distributed Application Framework for .NET
Xabaril/AspNetCore.Diagnostics.HealthChecks
Enterprise HealthChecks for ASP.NET Core Diagnostics Package
eventflow/EventFlow
Async/await first CQRS+ES and DDD framework for .NET
HTBox/allReady
This repo contains the code for allReady, an open-source solution focused on increasing awareness, efficiency and impact of preparedness campaigns as they are delivered by humanitarian and disaster response organizations in local communities.

Version History

Version Downloads Last updated
1.7.17 14,499 10/20/2020
1.7.16 21,650 10/14/2020
1.7.15 24,870 10/8/2020
1.7.14 63,045 9/24/2020
1.7.13 61,848 9/15/2020
1.7.12 392,229 7/24/2020
1.7.11 1,320,801 4/15/2020
1.7.10 314,430 4/2/2020
1.7.9 1,567,182 1/20/2020
1.7.8 717,395 12/5/2019
1.7.7 679,759 10/22/2019
1.7.6 1,457,340 8/5/2019
1.7.5 275,562 7/18/2019
1.7.4 336,075 6/28/2019
1.7.3 991,757 5/23/2019
1.7.2 445,986 4/29/2019
1.7.1 264,924 4/16/2019
1.7.0 299,008 3/29/2019
1.6.29 5,247 4/15/2020
1.6.28 18,115 1/14/2020
1.6.27 50,789 6/27/2019
1.6.26 66,347 5/23/2019
1.6.25 12,718 4/9/2019
1.6.24 30,465 3/27/2019
1.6.23 206,272 3/13/2019
1.6.22 855,978 1/25/2019
1.6.21 1,403,209 11/1/2018
1.6.20 1,836,408 7/31/2018
1.6.19 1,271,873 4/6/2018
1.6.18 17,079 4/5/2018
1.6.17 1,736,933 9/19/2017
1.6.16 189,760 9/2/2017
1.6.15 269,842 8/8/2017
1.6.14 489,415 6/16/2017
1.6.13 66,367 6/7/2017
1.6.12 926,611 3/22/2017
1.6.11 31,935 3/14/2017
1.6.10 30,140 3/13/2017
1.6.9 53,807 3/2/2017
1.6.8 327,912 12/21/2016
1.6.7 179,053 11/25/2016
1.6.6 242,481 10/13/2016
1.6.5 129,597 9/24/2016
1.6.4 94,632 8/30/2016
1.6.3 122,757 8/19/2016
1.6.2 68,939 8/5/2016
1.6.1 1,001,593 7/27/2016
1.6.0 1,437,354 7/15/2016
1.5.9 66,795 7/11/2016
1.5.8 41,023 6/17/2016
1.5.7 27,599 5/30/2016
1.5.6 93,812 4/22/2016
1.5.5 16,879 4/14/2016
1.5.4 45,492 3/22/2016
1.5.3 336,317 11/6/2015
1.5.2 38,152 10/15/2015
1.5.1 2,650 10/14/2015
1.5.0 240,040 10/1/2015
1.4.7 2,281 10/1/2015
1.4.6 25,773 8/29/2015
1.4.5 32,637 7/24/2015
1.4.4 1,264 7/23/2015
1.4.3 45,140 5/27/2015
1.4.2 11,149 5/6/2015
1.4.1 23,638 4/14/2015
1.3.4 55,617 2/4/2015
1.3.3 3,620 1/28/2015
1.3.2 1,601 1/27/2015
1.3.1 7,168 1/13/2015
1.3.0 7,668 12/10/2014
1.2.2 4,988 11/24/2014
1.2.1 1,000 11/22/2014
1.2.0 3,819 11/17/2014
1.1.1 91,937 9/5/2014
1.1.0 2,488 9/3/2014
1.0.2 5,033 7/1/2014
1.0.1 9,026 6/30/2014
1.0.0 1,048 6/30/2014
0.9.1 2,124 6/12/2014
0.9.0 864 6/7/2014
0.8.3 925 5/23/2014
0.8.2 759 5/21/2014
0.8.1 1,695 5/17/2014
0.8.0 1,762 5/2/2014
0.7.5 876 4/10/2014
0.7.4 728 4/7/2014
0.7.3 726 4/4/2014
0.7.1 758 4/1/2014
0.7.0 1,059 3/22/2014
0.6.2 727 1/28/2014
0.6.1 688 1/27/2014
0.5.2 753 11/19/2013
0.5.1 737 11/12/2013
0.5.0 1,252 11/10/2013
Show less