Skip to content

Releases: HangfireIO/Hangfire

1.8.0-beta4

12 Nov 12:30
Compare
Choose a tag to compare
1.8.0-beta4 Pre-release
Pre-release

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

  • AddedTryAutoDetectSchemaDependentOptions option to automatically enable options based on schema.
  • ChangedGetJobData now populates JobData.ParametersSnapshot property to avoid additional round-trips.
  • Changed – Polling delay when QueuePollInterval is set to zero now defaults to 200 ms.
  • DeprecatedUsePageLocksOnDequeue option is now obsolete and doesn't affect anything.

1.7.27

03 Nov 12:11
Compare
Choose a tag to compare

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

27 Oct 15:56
Compare
Choose a tag to compare

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

30 Aug 11:02
Compare
Choose a tag to compare

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.
  • DeprecatedUseHangfireServer method for targets where AddHangfireServer one is available.

1.8.0-beta3

05 Jul 14:39
Compare
Choose a tag to compare
1.8.0-beta3 Pre-release
Pre-release

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.
  • AddedIBackgroundJobClient.Create method overloads with the new queue parameter.
  • Added – Experimental JobStorageConnection.SetContains method.
  • Added – Pass ServerId to FailedState 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 the RegisterWaitForSingleObject 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).
  • DeprecatedAddOrUpdate overloads with optional params defined in the RecurringJobManagerExtensions class.
  • DeprecatedAddOrUpdate overloads with optional parameters defined in the RecurringJob class.
  • DeprecatedAddOrUpdate method overloads with no recurringJobId parameter.
  • DeprecatedRecurringJobOptions.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

28 Jun 12:29
Compare
Choose a tag to compare

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

28 May 12:40
Compare
Choose a tag to compare

Release Notes

Hangfire.Core

  • AddedJobId property to JobPerformanceException for error logging purposes (by @Plasma).
  • FixedJsonSerializationException when using IdempotentCompletionAttribute.
  • 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

  • FixedNotImplementedException in Transaction.EnlistPromotableSinglePhase when running on Mono.

1.6.30

29 Apr 12:20
Compare
Choose a tag to compare

Release Notes

Hangfire.Core

Backported from 1.7.19:

  • Fixed – Race condition in AspNetShutdownDetector leads to NullReferenceException (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

15 Apr 14:46
Compare
Choose a tag to compare
1.8.0-beta2 Pre-release
Pre-release

Release Notes

Hangfire.Core

  • AddedMisfireHandlingMode.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.
  • AddedCreateJob method to the JobStorageTransaction abstract class.
  • AddedSetJobParameter method to the JobStorageTransaction 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 to TimeSpan.Zero.
  • Changed – Use command batching by default with 5-minute maximum timeout.
  • Changed – Enable UseRecommendedIsolationLevel option by default.

1.7.22

13 Apr 10:10
Compare
Choose a tag to compare

Release Notes

Hangfire.Core

  • Fixed – Fonts-related regression in Dashboard UI after upgrading Bootstrap in 1.7.21.