Releases: HangfireIO/Hangfire
Releases · HangfireIO/Hangfire
1.8.0-beta4
Release Notes
Hangfire.Core
- Added – Dark mode support for Dashboard UI configurable with the
UseDarkModeSupportForDashboard
method. - Added – Allow to add custom JavaScript and CSS files to the Dashboard UI via the
DashboardRoutes
class. - Added – Ability to use custom formattable resource identifiers for the
DisableConcurrentExecutionAttribute
. - Changed – Increase the default value for the
BackgroundJobServerOptions.StopTimeout
to 500 ms.
Hangfire.SqlServer
- Added –
TryAutoDetectSchemaDependentOptions
option to automatically enable options based on schema. - Changed –
GetJobData
now populatesJobData.ParametersSnapshot
property to avoid additional round-trips. - Changed – Polling delay when
QueuePollInterval
is set to zero now defaults to 200 ms. - Deprecated –
UsePageLocksOnDequeue
option is now obsolete and doesn't affect anything.
1.7.27
Release Notes
Hangfire.Core
- Added – Turkish language support for the Dashboard UI (by @csarigul).
- Fixed – Trigger button in the Dashboard UI doesn't respect a custom time zone resolver.
- Fixed – Dispatchers stopped when unable to add the ExecutionId data for an exception instance.
- Fixed – Safari's zoom feature breaks the Dashboard UI (by @oguzhantopcu).
- Fixed – Some typos in XML documentation comments (by @GitHubPang).
1.7.26
Security Patch
This security patch fixes a regression appeared in the previous version 1.7.25 that makes Dashboard UI available for remote requests in the default configuration, e.g. when no authentication filter specified. Please note that when custom authentication filter is defined as recommended in the documentation, everything works as expected, but upgrade is recommended in any case. Please read the GHSA-7rq6-7gv8-c37h security advisory for details.
- CVE ID
- CVE-2021-41238
- Affected Packages
- Hangfire.Core = 1.7.25 (only)
- Affected Platforms
- All, including .NET Core, .NET Framework, Mono of any version
Hangfire.Core
- Security – Fix "Dashboard UI accessible from outside by default since 1.7.25" regression.
1.7.25
Release Notes
Hangfire.Core
- Changed – Upgrade Bootstrap from 3.3.7 to version 3.4.1 in Dashboard UI.
- Changed – Upgrade Chart.js from 2.7.3 to version 2.9.4 in Dashboard UI.
- Changed – Upgrade jQuery from 2.2.4 to version 3.6.0 in Dashboard UI.
- Fixed – Check background job existence before adding a continuation id to job parameters.
- Fixed – Incorrect validation for the
HeartbeatInterval
option (by @GitHubPang). - Fixed – Use better stacking for succeeded/failed charts in the Dashboard UI.
- Fixed – Move explicit styles to CSS to fix possible CSP errors in Dashboard UI.
- Fixed – Reset default sync auth filter when async one is specified in Dashboard UI.
Hangfire.SqlServer
- Fixed – Avoid any blocked rows when removing inactive servers from the
Server
table.
Hangfire.NetCore and Hangfire.AspNetCore
- Added – More overloads for the
AddHangfireServer
extension method in .NET Core. - Deprecated –
UseHangfireServer
method for targets whereAddHangfireServer
one is available.
1.8.0-beta3
Release Notes
Hangfire.Core
- Added – Introduce the
Job.Queue
property, so jobs now can have their own queue specified. - Added – Method overloads to create recurring jobs directly with a custom default queue.
- Added – Method overloads to create background jobs directly with a custom default queue.
- Added –
IBackgroundJobClient.Create
method overloads with the newqueue
parameter. - Added – Experimental
JobStorageConnection.SetContains
method. - Added – Pass
ServerId
toFailedState
instances to simplify the debugging on different servers. - Changed – Dashboard UI now have full-width layout to display more data (by @danillewin).
- Changed – Query time from storage in recurring and delayed schedulers when supported by storage.
- Changed – Speedup delayed jobs when custom default queue is specified by avoiding extra state transition.
- Changed – Display scheduled job count when enqueued count is zero on the main metric.
- Changed – Don't display queue name in state transition list when it's the
default
one. - Changed – Re-implement
TaskExtensions.WaitOneAsync
only with theRegisterWaitForSingleObject
method. - Changed – Expose state data dictionaries in list DTOs when supported by storage.
- Changed – Make it possible to display methods of non-loaded jobs in Dashboard UI when supported by storage.
- Fixed – Check job details for the
null
value before passing it to renderers (regression). - Deprecated –
AddOrUpdate
overloads with optional params defined in theRecurringJobManagerExtensions
class. - Deprecated –
AddOrUpdate
overloads with optional parameters defined in theRecurringJob
class. - Deprecated –
AddOrUpdate
method overloads with norecurringJobId
parameter. - Deprecated –
RecurringJobOptions.QueueName
property, new methods should be used instead.
Hangfire.SqlServer
- Added – Implement the
Connection.GetUtcDateTime
feature to make work new changes in schedulers. - Changed – Display scheduled and processing jobs in the ascending order in Dashboard UI.
1.7.24
Hangfire.Core
- Added – Support for async auth methods via the
DashboardOptions.AsyncAuthorization
property (#1803 by @rosenbjerg). - Fixed – Error alert in Dashboard UI is now correctly shown when sidebar is present (#1869 by @danillewin).
- Fixed – Reference an empty favicon in Dashboard UI to prevent backend 404s (#1885 by @dan2468).
- Fixed – Back-to-site link text in Dashboard UI is now hidden on small screens (#1887 by @danillewin).
- Fixed – Avoid memory leak in the
AppBuilderExtensions
class (#1878 by @LordJZ). - Fixed – Make the
TypeHelper
class public instead of internal to use it outside.
Hangfire.SqlServer
- Changed – Don't use the
readcommittedlock
table hint when not required. - Project – Stop using
TransactionScope
class in tests, re-create database instead. - Project – Make it possible to run SQL Server tests on Mono on Linux.
Hangfire.AspNetCore
- Added – Support for async auth methods via the
DashboardOptions.AsyncAuthorization
property (#1803 by @rosenbjerg). - Added – Authorization policy support via the new
MapHangfireDashboardWithAuthorizationPolicy
method (#1663 by @dasiths).
1.7.23
Release Notes
Hangfire.Core
- Added –
JobId
property toJobPerformanceException
for error logging purposes (by @Plasma). - Fixed –
JsonSerializationException
when usingIdempotentCompletionAttribute
. - Fixed – Unreported yet corner case related to daylight time transition by upgrading Cronos to 0.7.1 (by @aidmsu).
- Fixed – Dashboard issue: recurring job table doesn't handle very long cron strings.
- Fixed – Add missing argument-is-null check for the
DeserializePayload
method. - Project – Replace deprecated
PerformContext
ctor usage to avoid alerts in SonarQube (by @kumaheiyama). - Project – Avoid possible
NullReferenceException
in tests to fix alerts in Fortify analyser. - Project – Release connections properly in tests to fix alerts in Fortify analyser.
Hangfire.SqlServer
- Fixed –
NotImplementedException
inTransaction.EnlistPromotableSinglePhase
when running on Mono.
1.6.30
Release Notes
Hangfire.Core
Backported from 1.7.19:
- Fixed – Race condition in
AspNetShutdownDetector
leads toNullReferenceException
(by @jr01).
Hangfire.SqlServer
Backported from 1.7.21:
- Fixed – Ensure connection is released when exception is thrown when during lock release.
- Fixed – "A network-related or instance-specific error" when using
DisableConcurrentExecution
for long-running jobs.
1.8.0-beta2
Release Notes
Hangfire.Core
- Added –
MisfireHandlingMode.Strict
to create job for each missed recurring job occurrence. - Added – Allow to pass parameters when creating a job (by @brian-knoll-micronetonline).
- Added – Make it possible to use specify multiple
JobContinuationOptions
for a continuation. - Added –
CreateJob
method to theJobStorageTransaction
abstract class. - Added –
SetJobParameter
method to theJobStorageTransaction
abstract class. - Changed – Allow to query job parameters without roundtrip when supported by a storage.
- Changed – Turn
JobContinuationOptions
enum into flags while still possible. - Changed – Avoid storage roundtrip to query job data in worker, take data from previous state change.
- Fixed – Don't overwrite existing argument values with null job parameters when using
FromParameter
attribute. - Fixed – Job continuation mistakenly started when using the new
OnlyOnDeletedState
option.
Hangfire.SqlServer
- Changed – Set default value for the
QueuePollInterval
option toTimeSpan.Zero
. - Changed – Use command batching by default with 5-minute maximum timeout.
- Changed – Enable
UseRecommendedIsolationLevel
option by default.