Skip to content

Releases: HangfireIO/Hangfire.InMemory

0.10.3

17 Jun 06:07
v0.10.3
2502718
Compare
Choose a tag to compare

Release Notes

  • Changed – Significantly optimize GetFirstByLowestScoreFromSet method overloads.

0.10.2

17 Jun 02:55
v0.10.2
143891f
Compare
Choose a tag to compare

Release Notes

  • Changed – Refactor command dispatching to make it more simple and less allocating.
  • Changed – Straightforward locking implementation with more unit tests.
  • FixedInvalidOperationException "Wrong level" when trying to release a lock (regression from 0.10.1).
  • Fixed – "An item with the same key has already been added" on the Awaiting Jobs page (regression from 0.10.0).

0.10.1

17 Jun 02:55
v0.10.1
5de1e85
Compare
Choose a tag to compare

Release Notes

  • Changed – Roll back a breaking change in 0.10.0 for the InMemoryStorageOptions class.
  • Changed – Increase the default eviction interval to 5 seconds.
  • Changed – More efficient storage of state history records.
  • Changed – Implement fast path for the FetchNextJob method.
  • Fixed – More robust entry eviction implementation.
  • Fixed – Graceful dispatcher shutdown without additional waiting.
  • Project – Faster build pipeline on AppVeyor after migration to modern Powershell 7+.

0.10.0

03 Jun 08:52
v0.10.0
3d026f7
Compare
Choose a tag to compare

Release Notes

  • BreakingInMemoryStorageOptions class instances are now immutable after initialization.
  • Added – Support long-based job identifiers through the InMemoryStorageOptions.IdType property.
  • Added – Expose the InMemoryStorageOptions.CommandTimeout option to control the command timeouts.
  • Changed – Significantly improve query dispatching pipeline in terms of speed and allocations.
  • Changed – More compact representation of jobs and their parameters.
  • Changed – Optimise the GetFirstByLowestScoreFromSet query when the number of items is huge.
  • Changed – Better concurrency handling implementation for the collection of locks.

0.9.0

23 Apr 10:02
v0.9.0
8c948c1
Compare
Choose a tag to compare

Release Notes

  • Added – Implement the disposable pattern for the InMemoryStorage class.
  • Changed – Use more compact representation of job parameters and state data.
  • Changed – Move to SortedDictionary and LinkedList to avoid using Large Object Heap.
  • ChangedTimeSpan.Zero value for MaxExpirationTime now causes immediate entry eviction.
  • Fixed – Ensure near-zero max expiration limit can't lead to uninitialized job eviction.
  • DeprecatedDisableJobSerialization option is now obsolete, serialization is always enabled.

0.8.1

21 Mar 09:52
v0.8.1
60bea64
Compare
Choose a tag to compare

Release Notes

  • Fixed – Incorrect validation in the MaxStateHistoryLength setter (by @DPschichholz).

0.8.0

16 Feb 07:25
v0.8.0
206d647
Compare
Choose a tag to compare

Release Notes

  • Project – Sign NuGet package and .NET assemblies on build with a company's own certificate.
  • Project – Require package signature validation when restoring dependencies.
  • Project – Add HangfireIO as an owner for the NuGet package.
  • Project – Add readme file and icon to the NuGet package.
  • Project – Fix Git repository URL in the NuGet package metadata.

0.7.0

10 Jan 05:47
v0.7.0
e03f562
Compare
Choose a tag to compare

Release Notes

  • AddedInMemoryStorageOptions.MaxExpirationTime option to control the maximum expiration time.
  • Changed – The default value for maximum expiration time is 2 hours now, not days.
  • Fixed – Populate ParametersSnapshot and InvocationData properties in IMonitoringApi.JobDetails.
  • Fixed – The "Awaiting Jobs" page now includes the state name of an antecedent background job.
  • Fixed – The "Scheduled Jobs" page now has correct identifiers for jobs with explicit queues defined.
  • Fixed – Unify job ordering in Monitoring API to be the same as in other storages.
  • Project – Enable source link support with embedded symbols for simplified debugging.
  • Project – Refactored internals and added even more unit tests.
  • Project – Enable NuGet package restore with lock file and locked mode.
  • Project – Project and Release Notes URLs in the NuGet package now point to the repository.
  • Project – Enable tests running on the net6.0 platform and Ubuntu on AppVeyor.

0.6.0

23 Oct 07:33
v0.6.0
250dd59
Compare
Choose a tag to compare

Release Notes

  • AddedInMemoryStorageOptions.MaxStateHistoryLength option to control state entries.
  • Changed – Always use monotonic clock when working with time.
  • Changed – Release distributed locks when their connection is disposed.
  • Changed – Pass dispatcher fault exceptions to a caller thread.
  • Project – Refactor internal types to have a cleaner project structure and avoid mistakes.
  • Project – Enable static analysis by the Microsoft.CodeAnalysis.NetAnalyzers package.
  • Project – Enable portable PDBs for the .NET Framework 4.5.1 platform.

0.5.1

28 Jun 15:52
v0.5.1
45538f4
Compare
Choose a tag to compare

Release Notes

  • Fixed – Infinite loop in recurring job scheduler consuming 100% CPU regression after 0.5.0.