Hangfire.Core 1.6.24

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

No packages depend on Hangfire.Core.

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" (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.

.NET Framework 4.5

.NET Standard 1.3

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