Be notified of new releases
Create your free GitHub account today to subscribe to this repository for new releases and build software alongside 31 million developers.Sign up
This release brings .NET Core 2.1 version of example server and adds new plugin
Quartz.Plugins.TimeZoneConverter which allows usage of TimeZoneConverter library to get consistent time zone id parsing between
Linux and Windows.
There are also some bug fixes related to AdoJobStore.
- Add .NET Core 2.1 version of example server (#682)
- New plugin Quartz.Plugins.TimeZoneConverter which allows usage of TimeZoneConverter library (#647)
- Added transient codes from EF into new JobStore (#681)
- Parametrized queries produced by ReplaceTablePrefix should be cached (#651)
- Use TypeNameHandling.Auto for JsonObjectSerializer (#621)
- Fix a race condition that could cause duplicate trigger firings (#690)
- ISchedulerListener.JobScheduled not called when scheduling multiple jobs (ScheduleJobs) (#678)
This release fixes a nasty bug with JSON calendar database serialization and .NET Core SQL Server client libraries
have been updated to mitigiate possible hangs when connection drops occur.
Also some other minor bugs have been also addressed.
You should now be able to debug into Quartz.NET sources with added SourceLink support.
- Add SourceLink support (#642)
- Make JobInterrupted method virtual in class SchedulerListenerSupport (#631)
This release fixes couple bugs and adds support for .NET Core version of Oracle's managed data access library.
- Support Oracle.ManagedDataAccess.Core (#609)
This is a maintenance release fixing some bugs.
This release fixes a nasty memory leak caused by QuartzSchedulerThread sharing
its CancellationTokenSource with calls it makes. Everyone using 3.x is advised to upgrade.
- XML scheduling requires write access to source XML file (#591)
- Improve listener error handling (#589)
- SQL command parameters are not defined in 'IsTriggerStillPresent' method (#579)
- Source distribution couldn't be built with build.cmd/.sh when no .git directory present (#596)
- Currently executing jobs cannot be retrieved via remoting (#580)
This is a minor fix release that fixes single issue that still prevented full usage of remoting.
- Mark ReadOnlyCompatibleHashSet as serializable (#576)
This is a bug fix release that fixes cron expression parsing bug and reverts IRemotableQuartzScheduler
interface back to its original form without Tasks and CancellationTokens - so that's it's actually usable
through .NET Remoting infrastructure. Now zip packing is also back and includes Quartz.Server.
- Task based jobs with async/await support, internals work in async/await manner
- Support .NET Core / netstandard 2.0 and .NET Framework 4.5.2 and later
- Support for Microsoft.Data.Sqlite via provider name SQLite-Microsoft, the old provider SQLite also still works
- Added preliminary support for SQL Server Memory-Optimized tables and Quartz.Impl.AdoJobStore.UpdateLockRowSemaphoreMOT
- Common.Logging removed from dependencies
- C5 Collections removed from ILMerge process, no longer needed
- Add support for eager validation of job scheduling XML file on plugin start
- Add support for extra custom time zone resolver function in TimeZoneUtil
- Jobs and plugins are now in a separate assemblies/NuGet packages Quartz.Jobs and Quartz.Plugins
- ADO.NET provider names have been simplified, the provider names are without version, e.g. SqlServer-20 => SqlServer
- API methods have been revisited to mainly use IReadOnlyCollection, this hides both HashSets and Lists
- LibLog has been hidden as internal (ILog etc), like it was originally intended to be
- SimpleThreadPool is gone, old owned threads are gone
- Scheduler methods have been changed to be Task based, remember to await them
- IJob interface now returns a task
- Some IList properties have been changed to IReadOnlyList to properly reflect intent
- SQL Server CE support has been dropped
- DailyCalendar uses now datetimes for excluded dates and has ISet interface to access them
- IObjectSerializer has new method, void Initialize(), that has to be implemented
- IInterruptableJob removed in favor of context's CancellationToken
- Issues with time zone ids between Windows and Linux, they use different ids for the same zone
- No remoting support for .NET Core
This is a maintenance release fixing an issue where misfire handling is being too slow at times.
- Allow performing misfire handling more frequently than misfireThreshold (#532)
- Incomplete recovery of misfired jobs when using database-specific delegate types (#531)