Release Notes
Update urgency: HIGH. This release contains features related to security.
- Added – New server component subsystem - more reliability, more logging, less blocking on stop.
- Added – Added monitor access authorization using ASP.NET RoleProvider (#42).
- Removed – Deprecated job format based on classes is not supported anymore (#81).
- Changed – Monitor access restricted to local requests only by default (#42).
- Changed – Some breaking changes for public API. See the next section for details.
- Changed – Default automatic retry attempts count set to 10 (#71).
- Changed – Namespace optimization to reduce number of needed
using
statements. - Fixed – PreserveCultureAttribute does not work (#77).
- Fixed –
SqlServerStorageOptions.QueuePollInterval
is not working. - Fixed – Rare 'arithmetic overflow error for data type tinyint, value = -1' exception (#83).
- Fixed – Numerous minor issues catched with new unit tests.
Breaking Changes
- Changed constructor of
BackgroundJobServer
andAspNetBackgroundJobServer
classes. You should pass options through theBackgroundJobServerOptions
class. JobActivator.SetCurrent
method replaced withJobActivator.Current
property setter.RetryAttribute
,StatisticsHistoryAttribute
,PreserveCultureAttribute
(nowCaptureCultureAttribute
) moved fromHangFire.Filters
namespace to theHangFire
namespace.RedisStorageOptions.PollInterval
option moved toBackgroundJobServerOptions.SchedulePollingInterval
.BackgroundJob.ClientFactory
property made internal. Please, useIBackgroundJobClient
interface for unit tests, andBackgroundJobClient
class as default implementation.
Upgrading from 0.5
If you are still using HangFire 0.5, you can not upgrade to version 0.8 directly, because there is probability that you lose some of your jobs. This version drops support for jobs based on BackgroundJob
subclassing, so you need to do the following three-step process:
- Upgrade to version 0.7.5 first (see also release notes for 0.7).
- Add different implementation for your jobs using plain methods (see the guide) and wait until all old format jobs performed, don't forget to check scheduled jobs.
- Upgrade to version 0.8 or latest and remove old job classes.