mirror of
https://github.com/InsanusMokrassar/krontab.git
synced 2024-09-30 06:26:14 +00:00
Compare commits
No commits in common. "master" and "v2.2.9" have entirely different histories.
1
.gitignore
vendored
1
.gitignore
vendored
@ -1,5 +1,4 @@
|
|||||||
.idea
|
.idea
|
||||||
.kotlin
|
|
||||||
out/*
|
out/*
|
||||||
*.iml
|
*.iml
|
||||||
target
|
target
|
||||||
|
20
CHANGELOG.md
20
CHANGELOG.md
@ -1,25 +1,5 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
## 2.5.0
|
|
||||||
|
|
||||||
* `Version`:
|
|
||||||
* `Kotlin`: `2.0.20`
|
|
||||||
* `Coroutines`: `1.9.0`
|
|
||||||
* `Serialization`: `1.7.3`
|
|
||||||
|
|
||||||
## 2.4.0
|
|
||||||
|
|
||||||
* `Version`:
|
|
||||||
* `Kotlin`: `2.0.10`
|
|
||||||
* `Coroutines`: `1.8.1`
|
|
||||||
* `Serialization`: `1.7.1`
|
|
||||||
* `Klock`: `5.4.0`
|
|
||||||
* `AndroidXWork`: `2.9.1`
|
|
||||||
|
|
||||||
## 2.3.0
|
|
||||||
|
|
||||||
* `doWhile` now will guarantee that it will not call `doOnce` more than once for time
|
|
||||||
|
|
||||||
## 2.2.9
|
## 2.2.9
|
||||||
|
|
||||||
* `Version`:
|
* `Version`:
|
||||||
|
@ -9,9 +9,9 @@ android.useAndroidX=true
|
|||||||
android.enableJetifier=false
|
android.enableJetifier=false
|
||||||
|
|
||||||
|
|
||||||
kotlin_version=2.0.20
|
kotlin_version=1.9.23
|
||||||
kotlin_coroutines_version=1.9.0
|
kotlin_coroutines_version=1.8.0
|
||||||
kotlin_serialization_version=1.7.3
|
kotlin_serialization_version=1.6.3
|
||||||
|
|
||||||
dokka_version=1.9.20
|
dokka_version=1.9.20
|
||||||
|
|
||||||
@ -23,18 +23,18 @@ github_release_plugin_version=2.5.2
|
|||||||
|
|
||||||
## Android
|
## Android
|
||||||
|
|
||||||
android_gradle_version=8.2.2
|
android_gradle_version=8.1.4
|
||||||
android_minSdkVersion=21
|
android_minSdkVersion=21
|
||||||
android_compileSdkVersion=35
|
android_compileSdkVersion=34
|
||||||
android_buildToolsVersion=35.0.0
|
android_buildToolsVersion=34.0.0
|
||||||
dexcount_version=4.0.0
|
dexcount_version=4.0.0
|
||||||
junit_version=4.12
|
junit_version=4.12
|
||||||
test_ext_junit_version=1.1.3
|
test_ext_junit_version=1.1.3
|
||||||
espresso_core=3.4.0
|
espresso_core=3.4.0
|
||||||
|
|
||||||
androidx_work_version=2.9.1
|
androidx_work_version=2.9.0
|
||||||
|
|
||||||
## Common
|
## Common
|
||||||
|
|
||||||
version=2.5.0
|
version=2.2.9
|
||||||
android_code_version=42
|
android_code_version=39
|
||||||
|
2
gradle/wrapper/gradle-wrapper.properties
vendored
2
gradle/wrapper/gradle-wrapper.properties
vendored
@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME
|
|||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
zipStorePath=wrapper/dists
|
zipStorePath=wrapper/dists
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-bin.zip
|
||||||
|
@ -139,14 +139,10 @@ abstract class KronSchedulerWork(
|
|||||||
}
|
}
|
||||||
throw e
|
throw e
|
||||||
}
|
}
|
||||||
result.checkResults(
|
when (result) {
|
||||||
onFailure = {
|
is Result.Failure -> if (prolongOnFailure) prolong()
|
||||||
if (prolongOnFailure) prolong()
|
is Result.Success -> if (prolongOnSuccess) prolong()
|
||||||
},
|
|
||||||
onSuccess = {
|
|
||||||
if (prolongOnSuccess) prolong()
|
|
||||||
}
|
}
|
||||||
)
|
|
||||||
return result
|
return result
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,15 +0,0 @@
|
|||||||
package dev.inmo.krontab
|
|
||||||
|
|
||||||
import android.annotation.SuppressLint
|
|
||||||
import androidx.work.ListenableWorker
|
|
||||||
|
|
||||||
@SuppressLint("RestrictedApi")
|
|
||||||
internal inline fun ListenableWorker.Result.checkResults(
|
|
||||||
onFailure: () -> Unit,
|
|
||||||
onSuccess: () -> Unit
|
|
||||||
) {
|
|
||||||
when (this) {
|
|
||||||
is ListenableWorker.Result.Failure -> onFailure()
|
|
||||||
is ListenableWorker.Result.Success -> onSuccess()
|
|
||||||
}
|
|
||||||
}
|
|
@ -71,18 +71,9 @@ suspend inline fun <T> doOnceTz(
|
|||||||
* Will execute [block] while it will return true as a result of its calculation
|
* Will execute [block] while it will return true as a result of its calculation
|
||||||
*/
|
*/
|
||||||
suspend inline fun KronScheduler.doWhile(block: (DateTime) -> Boolean) {
|
suspend inline fun KronScheduler.doWhile(block: (DateTime) -> Boolean) {
|
||||||
var latest: DateTime? = null
|
|
||||||
do {
|
do {
|
||||||
delay(1L)
|
delay(1L)
|
||||||
val result = doOnce {
|
} while (doOnce(block))
|
||||||
if (latest != it) {
|
|
||||||
latest = it
|
|
||||||
block(it)
|
|
||||||
} else {
|
|
||||||
null
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} while (result == null || result)
|
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* Will execute [block] while it will return true as a result of its calculation
|
* Will execute [block] while it will return true as a result of its calculation
|
||||||
@ -94,18 +85,9 @@ suspend inline fun KronScheduler.doWhileLocal(block: (DateTime) -> Boolean) = do
|
|||||||
* Will execute [block] while it will return true as a result of its calculation
|
* Will execute [block] while it will return true as a result of its calculation
|
||||||
*/
|
*/
|
||||||
suspend inline fun KronScheduler.doWhileTz(noinline block: suspend (DateTimeTz) -> Boolean) {
|
suspend inline fun KronScheduler.doWhileTz(noinline block: suspend (DateTimeTz) -> Boolean) {
|
||||||
var latest: DateTimeTz? = null
|
|
||||||
do {
|
do {
|
||||||
delay(1L)
|
delay(1L)
|
||||||
val result = doOnceTz {
|
} while (doOnceTz(block))
|
||||||
if (latest != it) {
|
|
||||||
latest = it
|
|
||||||
block(it)
|
|
||||||
} else {
|
|
||||||
null
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} while (result == null || result)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
Reference in New Issue
Block a user