Releases: NCronJob-Dev/NCronJob
Releases · NCronJob-Dev/NCronJob
v2.0.5
v2.0.4
Fixed
- Don't log running jobs twice. Reported by @ryanbuening. Fixed by @linkdotnet
v2.0.3
With v2
the overall API was cleaned up and made more consistent. AddNCronJob
and AddCronJob
are merged into one service definition:
Added
- The IDE can help with RegEx pattern thanks to the
StringSyntaxAttribute
. - Added more code documentation (xmldoc) with many examples to rely less on the README.
Changed
- In
v1
one would define as such:
services.AddNCronJob();
services.AddCronJob<PrintHelloWorld>(options =>
{
options.CronExpression = "* * * * *";
options.Parameter = "Hello World";
});
With v2
the CronExpression
is moved towards the builder pattern and AddCronJob
is merged into AddNCronJob
:
services.AddNCronJob(options =>
{
options.AddJob<PrintHelloWorld>(j =>
{
j.WithCronExpression("* * * * *")
.WithParameter("Hello World");
});
});
- Cleaned up
AddNCronJob
to not accidentally build the service container
v1.0.2
Changed
- Removed internal periodic timer so that instant jobs are really executed instantly and cron jobs on the correct time (rather than too late)
Migration
- The
IsolationLevel
was completely removed as jobs are executed in their own scope anyway. It behaves likeIsolation.NewTask
by default. TimerInterval
inNCronJobOptions
was removed as it no longer used.
v0.13.2
Changed
- Smaller performance improvements
v0.13.1
Changed
- Check if
IsolationLevel
is in a valid range - otherwise it throws an exception - Small refactorings
v0.13.0
Changed
- Moved
EnableSecondPrecision
fromAddNCronJob
toAddCronJob
to allow for more granular control over the precision of the cron expression - When a job is not registered, a error is logged, but the execution of other jobs is not interrupted
v0.12.0
Changed
- Breaking Change:
Run
is now calledRunAsync
to reflect the asynchronous nature of the method Run
doesn't take an optionalCancellationToken
anymore, as this is passed in anyway.
v0.11.5
refactor: Update workflows
v0.11.4
Added
- Ability to set cron expressions with second-level precision
- Support for
net9.0
- Support for Isolation Level to run jobs independent of the current scheduler
- Notification system that allows to run a task when a job is finished