mirror of
				https://github.com/InsanusMokrassar/krontab.git
				synced 2025-11-03 21:10:15 +00:00 
			
		
		
		
	
		
			
				
	
	
	
		
			11 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	
			11 KiB
		
	
	
	
	
	
	
	
Changelog
2.7.2
Version:Kotlin:2.1.10Serialization:1.8.0
2.7.1
- Fixes in parser and checker
 
2.7.0
Version:Kotlin:2.1.0Coroutines:1.10.1
- Add WASM support (solution of #137)
 
2.6.1
- Fixes in parsing of string parts
 
2.6.0
- Fix of 
doOnceTzbehaviour: now it will use local time as utc time to get next waking up time 
2.5.1
- Add cleaning up of incoming template, which must remove all malformed parts from string template (fix of #126)
 - Add support of insufficient amount of arguments (fix of #126)
 Version:Kotlin:2.0.21AndroidXWork:2.10.0
2.5.0
Version:Kotlin:2.0.20Coroutines:1.9.0Serialization:1.7.3
2.4.0
Version:Kotlin:2.0.10Coroutines:1.8.1Serialization:1.7.1Klock:5.4.0AndroidXWork:2.9.1
2.3.0
doWhilenow will guarantee that it will not calldoOncemore than once for time
2.2.9
Version:Kotlin:1.9.23Serialization:1.6.3Klock:5.3.2
- Fixes in build-in schedulers
 
2.2.8
Version:Coroutines:1.8.0
2.2.7
Version:Klock:5.3.1AndroidXWork:2.9.0
2.2.6
Since this version klock depdendency replaced with com.soywiz.korge:korlibs-time
Version:Klock:5.3.0
2.2.5
VersionsKotlin:1.9.22Serialization:1.6.2
2.2.4
VersionsKotlin:1.9.21Serialization:1.6.1
2.2.3
THIS UPDATE CONTAINS UPGRADE OF USED JDK UP TO 17
- Versions
Kotlin:1.9.20
 
2.2.2
- Versions
Kotlin:1.9.20-RCAndroid(min/target):34
 
2.2.1
- Potential fix of #65
 - Versions
Kotlin:1.9.20-BetaKlock:4.0.10Serialization:1.6.0
 
2.2.0
- Versions
Kotlin:1.9.0Coroutines:1.7.3Klock:4.0.9
 
2.1.2
- Versions
Coroutines:1.7.2
 - All callbacks for standard extensions like 
doInfinitynow fully inline 
2.1.1
asFlowWithoutDelaysandasTzFlowWithoutDelayswill have nullablesinceparameters with default tonullto avoid any inconsistency ofFlowidiom.About the reason of changes
Cold flows should not contain some state by default. So, it was not right to save some `DateTime`/`DateTimeTz` by default. Now it will not use some external state unless developers will set it manually
2.1.0
- Versions
Kotlin:1.8.22Klock:4.0.3
 - New value class 
KrontabConfig. It is preferable way to createKronSchedulerinstead ofKrontabTemplatesince this update - You may configure krontab with builders using simple 
KronSchedulerinvoke extension - New useful extensions like 
KronScheduler.daily KrontabTemplateWrapperis obsolete in favor toKrontabConfig
2.0.0
- Versions
Kotlin:1.8.21Klock:4.0.1
 - Support of 
mingwx64platform 
1.0.0
- Versions
Kotlin:1.8.20AndroidXWork:2.8.1
 
0.10.0
- New extensions for 
KronScheduler:asTzFlowWithoutDelays/asFlowWithoutDelaysasTzFlowWithDelays/asFlowWithDelays
 - Old 
KronScheduler.asFlowandKronScheduler.asTzFlowtemporarily marked as deprecated: after several versions their behaviour will be changed to undelayed one - All the flow extensions now use 
coldnon-channel flows. Potentially it should increase performance and decrease memory usage 
0.9.0
- Versions
Kotlin:1.8.10AndroidXWork:2.8.0
 
0.8.5
- Project is now available in owner 
Gitea: https://git.inmo.dev/InsanusMokrassar/-/packages/maven/dev.inmo-krontab KronSchedulerTz#nextwith incomingDateTimenow will use adjusted local time instead of unadjusted oneCronDateTimeSchedulerTz#nextwith incomingDateTimewill convert that parameter to internal offset directly
0.8.4
- Versions
Kotlin:1.7.22
 
0.8.3
- Versions
Kotlin:1.7.21Klock:3.4.0
 
0.8.2
THIS VERSION HAS CHANGED COMPILE ANDROID SDK FROM 32 -> 33
- Versions
Kotlin:1.7.20Klock:3.2.0
 
0.8.1
- Versions
Klock:3.1.0
 
0.8.0
THIS VERSION HAS CHANGED MIN ANDROID SDK FROM 19 -> 21
- Versions
Kotlin:1.7.10Klock:3.0.0
 
0.7.5
- Versions
Coroutines:1.6.4
 
0.7.4
- Versions
Coroutines:1.6.3
 
0.7.3
- Versions
Kotlin:1.6.21
 - Several bug fixes (#27, #34)
 - New factories for 
KronSchedulerandKronSchedulerTz(fix of #35) - Fill extensions for flow with time zones (fix of #33)
 
0.7.2
- Versions
Coroutines:1.6.1Klock:2.7.0
 - Deprecate 
do*Localdue to their redundancy (usedo*instead) - Add support of milliseconds as optional parameter after month (fix of #31)
 - Add support of filters for 
Flows withDateTime(fix of #30) 
0.7.1
- Versions
Klock:2.5.2
 
0.7.0
ALL DEPRECATIONS HAVE BEEN REMOVED
- Versions
Kotlin:1.6.10Klock:2.4.10Coroutines:1.6.0Androidx Work:2.7.1
 
0.6.6
- Versions
Klock:2.4.8Androidx Work:2.7.0
 
0.6.5
- Flows now use 
doWhilefunctions doWhilenow use additional delay (for 1 ms) for cases whenblockexecuting too fast- New extensions for 
KronScheduler:do(Once/While/Infinity)Local/do(Once/While/Infinity)Tz 
0.6.4
- Versions
Kotlin:1.5.31Coroutines:1.5.2Klock:2.4.2Androidx Work:2.6.0
 
0.6.3
- Versions
Kotlin:1.5.30Klock:2.4.0
 
0.6.2
LEGACY COMPILER VARIANT FOR JS IS NOT AVAILABLE SINCE THIS UPDATE
- Versions
Kotlin:1.5.21Coroutines:1.5.1Klock:2.3.1
 
0.6.1
- Versions
Klock:2.1.0->2.1.2
 - Rewriting of default mechanism of 
KronSchedulers 
0.6.0
- Versions
Kotlin:1.4.32->1.5.10Coroutines:1.4.3->1.5.0Klock:2.0.7->2.1.0
 
0.5.2
- Versions
Kotlin:1.4.31->1.4.32
 - Supporting of weekdays
 - Supporting of timezones
- Any 
KronSchedulernow can be used for callingnextwithDateTimeTz - New type 
KronSchedulerTz 
 - Any 
 SchedulerFlowhas been deprecated- New extension 
asTzFlowand small changes inasFlowlogic mergeextensions now returnCollectionKronSchedulerinstead of justKronScheduler
0.5.1
- Versions
Kotlin:1.4.21->1.4.31Coroutines:1.4.2->1.4.3Klock:2.0.3->2.0.7Androidx Work:2.4.0->2.5.0
 
0.5.0 Years
BREAKING CHANGES
CronDateTimeSchedulerhas been marked asinternaland no longer accessible outside of internal functions- Old methods 
mergeandplusrelated toCronDateTimeSchedulerhas been marked asdeprecatedand changed their parameters types - it isKronSchedulernow 
- Old methods 
 - New methods 
mergehas been added KronScheduler#nextmethod now is nullable. UsenextOrRelative/nextOrNowto get next time certainly- Years was added as optional part of krontab template and opportunity in 
SchedulerBuilder- New builder 
YearsBuilder SchedulerFlow#collectSafelywill be normally (without exceptions) finish whennextof scheduler will return null
 - New builder 
 KronScheduler#doOncewill run code immediately in case whennextis returning null valueKrontabTemplateWrapperhas been added- New extension 
KrontabTemplate#toKronScheduler(works astoSchedule) - Fixed issue related to the fact that 
toNearDateTimeofCronDateTimeincorrectly handled months - Android target has been added
 
0.4.2
- Versions
Kotlin:1.4.20->1.4.21Klock:2.0.1->2.0.3
 CronDateTimeSchedulernow is deprecated and will be set up asinternalin future
0.4.1
- Versions:
Coroutines:1.4.1->1.4.2Klock:2.0.0->2.0.1
 CronDateTimeSchedulernow is public- New functions for 
CronDateTimeScheduler - Add 
CollectionKronScheduler. It will give opportunity to unite several schedulers in one 
0.4.0
BREAKING CHANGES Package of project has been changed. Migration:
- 
Replace in your dependencies
com.insanusmokrassar:krontabbydev.inmo:krontab - 
Replace in your project all imports
com.insanusmokrassar.krontabbydev.inmo.krontab - 
Versions:
Kotlin:1.4.10->1.4.20Klock:1.12.1->2.0.0
 
0.3.3
- Versions:
Coroutines:1.3.9->1.4.1
 
0.3.2
- Function 
TimeBuilder#eachwas added (works asat) - Add opportunity to use 
firstshortcuts:- Value property 
TimeBuilder#firstfor including via functions likeTimeBuilder#at - Shortcut for kron string format 
forF 
 - Value property 
 - Add opportunity to use 
lastshortcuts:- Value property 
TimeBuilder#lastfor including via functions likeTimeBuilder#at - Shortcut for kron string format 
lorL 
 - Value property 
 
0.3.1
- Versions:
Kotlin:1.4.0->1.4.10Klock:1.12.0->1.12.1
 
0.3.0
- Versions:
Kotlin:1.3.72->1.4.0Coroutines:1.3.8->1.3.9Klock:1.11.14->1.12.0
 - Typealias 
KrontabTemplatewas added - Extension 
KrontabTemplate#toSchedulewas added 
0.2.4
- Updates in libraries:
- Klock 
1.11.3->1.11.14 - Coroutines 
1.3.7->1.3.8 
 - Klock 
 - Ranges support were included. Now it is possible to correctly use syntax 
0-5in strings schedules 
0.2.3
- Updates in libraries:
- Kotlin 
1.3.70->1.3.72 - Coroutines 
1.3.5->1.3.7 - Klock 
1.10.0->1.11.3 
 - Kotlin 
 - A lot of KDocs added and fixed
 EverySecondSchedulerchanged its building logic - now it is lazy with builder usingKronScheduler#doOncewas optimized: now it will be explicitly called once and return result of its calculationsKronScheduler#doWhilewas rewritten to useKronScheduler#doOncefor calculations ofblockresult
- New 
buildSchedule(String)function as a shortcut forcreateSimpleScheduler(String) 
0.2.2
- Updates in libraries:
- Kotlin 
1.3.61->1.3.70 - Coroutines 
1.3.3->1.3.5 - Klock 
1.8.6->1.10.0 
 - Kotlin 
 
0.2.1
- Added support of flows: now any 
KronSchedulercan be convert toFlow<DateTime>usingasFlowextension 
0.2.0
- Updated way of publishing (for more info look at the git)
 - Updates in libraries:
- Coroutines 
1.3.2->1.3.3 - Klock 
1.7.3->1.8.6 
 - Coroutines