spring_boot_starter_scheduling 0.2.2
spring_boot_starter_scheduling: ^0.2.2 copied to clipboard
Scheduling starter for spring_boot_dart: @Scheduled methods with fixed rate, fixed delay or cron expressions, a TaskScheduler bean, stopped with the context.
0.2.2 #
- ci: run only the tests of the packages a change affects
0.2.1 #
- feat: spring_boot_starter_flutter, @Log, --dart-define properties, Flutter counter example
0.2.0 #
- the auto-configured
applicationTaskExecutorandtaskSchedulerback off for beans registered by an@ImportedBeanRegistrar/ImportBeanDefinitionRegistrarof the application; their conditions are decided when the auto-configuration is read, like Boot'sOnBeanCondition fixedRateString,fixedDelayStringandinitialDelayStringthat are or resolve to blank (r'${jobs.rate:}') count as not set, like Spring (they failed as not a duration).- Two
ErrorHandlerbeans no longer fail the start: the scheduler takes the unique or primary one, else none (getIfUnique). ErrorHandlerfor the errors of scheduled tasks (TimerTaskScheduler(errorHandler:); the auto-configured scheduler uses theErrorHandlerbean); a handler that throws stops the task, like Spring'sLOG_AND_PROPAGATE.@Scheduled(initialDelay: ...)(orinitialDelayString) alone runs the method once after the delay, like Spring 6.1.TaskScheduler.scheduleAt(task, DateTime)runs a task once at that time, like Spring'sschedule(Runnable, Instant).- cron on the web: fields with values of 32 and above (
0 45 * * * *,50 * * * * *) fire under dart2js (the field sets were 64-bit int bit masks, shifted modulo 32 there) - an
applicationTaskExecutorbean (aliastaskExecutor, aSimpleAsyncTaskExecutor) unless the application has aTaskExecutor, like Spring Boot'sTaskExecutionAutoConfiguration; it switches@Asyncevent listeners on
0.1.7 #
spring.task.scheduling.shutdown.await-termination/await-termination-period: the context'scloseAsync()waits for the runs going on (TimerTaskScheduler(awaitTermination:, awaitTerminationPeriod:),runningTasks;destroy()returns theFuture)- cron day of week like Spring's: MON-SUN are 1-7 and Sunday at the start of a range is 0, so
SAT-SUN,MON-SUN,FRI-SUNparse - breaking:
*and?in the cron day of week are 1-7, so*/2is MON, WED, FRI, SUN (was SUN, TUE, THU, SAT);L-0is rejected - cron lists of Quartz specials and values:
MON#1,MON#3,1,L,MON-FRI,SATL @Scheduled(scheduler:)picks aTaskSchedulerbean by qualifier or name; with several schedulers the default is the primary one ortaskScheduler
0.1.6 #
- update road map
- ci: release with a button on main, skip new packages when publishing; shorter pubspec descriptions
0.1.5 #
- add feign runner + web socket runner
- add web core + faign starter for http calling
0.1.4 #
- feat: ObjectMapper in core — JSON on generated metadata (@Introspected, @JsonProperty/@JsonIgnore/@JsonInclude/@JsonCreator/@JsonValue), spring.jackson.* in Boot
0.1.3 #
- Initial version: @Scheduled methods (fixed rate, fixed delay, cron), TaskScheduler.