diff --git a/.travis.yml b/.travis.yml index eea59af..107905b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -26,7 +26,7 @@ script: - | if [ "$TRAVIS_TEST_RESULT" == 0 ] && [ "$TRAVIS_JDK_VERSION" == openjdk11 ] && [ "$TRAVIS_PULL_REQUEST" = "false" ]; then sonar-scanner \ - -Dsonar.projectVersion=0.14.0 \ + -Dsonar.projectVersion=0.14.1 \ -Dsonar.projectKey=robstoll_kbox \ -Dsonar.kotlin.detekt.reportPaths=build/reports/detekt/detekt.xml \ -Dsonar.sources="\ diff --git a/README.md b/README.md index 6e279df..6ae27c4 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ [![Download](https://api.bintray.com/packages/robstoll/tutteli-jars/kbox/images/download.svg) ](https://bintray.com/robstoll/tutteli-jars/kbox/_latestVersion) [![Apache license](https://img.shields.io/badge/license-Apache%202.0-brightgreen.svg)](http://opensource.org/licenses/Apache2.0) -[![Build Status Travis](https://travis-ci.org/robstoll/kbox.svg?branch=v0.14.0)](https://travis-ci.org/robstoll/kbox) +[![Build Status Travis](https://travis-ci.org/robstoll/kbox.svg?branch=v0.14.1)](https://travis-ci.org/robstoll/kbox) [![Build status GitHub Actions](https://github.com/robstoll/kbox/workflows/Windows/badge.svg)](https://github.com/robstoll/kbox/actions/) [![SonarCloud Status](https://sonarcloud.io/api/project_badges/measure?project=robstoll_kbox&metric=alert_status)](https://sonarcloud.io/dashboard?id=robstoll_kbox) @@ -9,43 +9,43 @@ KBox is a very small but useful utility library for Kotlin (JVM, Android and JS). Current extension functions: -- [`Array/List/Iterable/Sequence.appendtoStringBuilder`](https://github.com/robstoll/kbox/tree/v0.14.0/kbox-common/src/main/kotlin/ch/tutteli/kbox/appendToString.kt#L37) +- [`Array/List/Iterable/Sequence.appendtoStringBuilder`](https://github.com/robstoll/kbox/tree/v0.14.1/kbox-common/src/main/kotlin/ch/tutteli/kbox/appendToString.kt#L37) with the ability to define a different separator for the last separation => handy if you want to form sentences like `a, b and c` -- [`CharSequence.blankToNull`](https://github.com/robstoll/kbox/tree/v0.14.0/kbox-common/src/main/kotlin/ch/tutteli/kbox/blanktoNull.kt#L7) +- [`CharSequence.blankToNull`](https://github.com/robstoll/kbox/tree/v0.14.1/kbox-common/src/main/kotlin/ch/tutteli/kbox/blanktoNull.kt#L7) returns the same `CharSequence` if not blank, `null` otherwise -- [`forEachIn(Array/Iterable/Sequence, Array/Iterable/Sequence, ..., action: (E) -> Unit)`](https://github.com/robstoll/kbox/tree/v0.14.0/kbox-common/src/main/kotlin/ch/tutteli/kbox/forEachIn.kt#L6) +- [`forEachIn(Array/Iterable/Sequence, Array/Iterable/Sequence, ..., action: (E) -> Unit)`](https://github.com/robstoll/kbox/tree/v0.14.1/kbox-common/src/main/kotlin/ch/tutteli/kbox/forEachIn.kt#L6) applies the given action to each entry in the given `Iterable`s. -- [` forElementAndEachIn(E, Array/Iterable/Sequence, action: (E) -> Unit)`](https://github.com/robstoll/kbox/tree/v0.14.0/kbox-common/src/main/kotlin/ch/tutteli/kbox/forThisAndForEach.kt#L6) +- [` forElementAndEachIn(E, Array/Iterable/Sequence, action: (E) -> Unit)`](https://github.com/robstoll/kbox/tree/v0.14.1/kbox-common/src/main/kotlin/ch/tutteli/kbox/forThisAndForEach.kt#L6) applies the given action to `this` and each entry in Iterable -- [`Iterable.forEachRemaining()`](https://github.com/robstoll/kbox/tree/v0.14.0/kbox-common/src/main/kotlin/ch/tutteli/kbox/forEachRemaining.kt#L9) +- [`Iterable.forEachRemaining()`](https://github.com/robstoll/kbox/tree/v0.14.1/kbox-common/src/main/kotlin/ch/tutteli/kbox/forEachRemaining.kt#L9) shortcut for `while(hasNext()) yourLambda(next())` -- [Array/List.ifWithinBound](https://github.com/robstoll/kbox/tree/v0.14.0/kbox-common/src/main/kotlin/ch/tutteli/kbox/ifWithinBound.kt#L13) +- [Array/List.ifWithinBound](https://github.com/robstoll/kbox/tree/v0.14.1/kbox-common/src/main/kotlin/ch/tutteli/kbox/ifWithinBound.kt#L13) shortcut for `if(index < size){ thenBlock() } else { elseBlock() }` -- [Charsequence?.isNotNullAndNotEmpty/isNotNullAndNotBlank](https://github.com/robstoll/kbox/tree/v0.14.0/kbox-common/src/main/kotlin/ch/tutteli/kbox/isNotNullAndNot.kt#L6) +- [Charsequence?.isNotNullAndNotEmpty/isNotNullAndNotBlank](https://github.com/robstoll/kbox/tree/v0.14.1/kbox-common/src/main/kotlin/ch/tutteli/kbox/isNotNullAndNot.kt#L6) -- [`Array/List/Iterable/Sequence.joinToString`](https://github.com/robstoll/kbox/tree/v0.14.0/kbox-common/src/main/kotlin/ch/tutteli/kbox/joinToString.kt#L31) +- [`Array/List/Iterable/Sequence.joinToString`](https://github.com/robstoll/kbox/tree/v0.14.1/kbox-common/src/main/kotlin/ch/tutteli/kbox/joinToString.kt#L31) with the ability to define a different separator for the last separation => handy if you want to form sentences like `a, b and c` -- [`Map.mapParents`](https://github.com/robstoll/kbox/tree/v0.14.0/kbox-common/src/main/kotlin/ch/tutteli/kbox/mapParents.kt#L13) +- [`Map.mapParents`](https://github.com/robstoll/kbox/tree/v0.14.1/kbox-common/src/main/kotlin/ch/tutteli/kbox/mapParents.kt#L13) maps child-parent relations. -- [`Iterator.mapRemaining/mapRemainingWithCounter`](https://github.com/robstoll/kbox/tree/v0.14.0/kbox-common/src/main/kotlin/ch/tutteli/kbox/mapRemaining.kt#L9) +- [`Iterator.mapRemaining/mapRemainingWithCounter`](https://github.com/robstoll/kbox/tree/v0.14.1/kbox-common/src/main/kotlin/ch/tutteli/kbox/mapRemaining.kt#L9) maps remaining entries with the help of a transform function (where `mapRemainingWithCounter` passes a counter variable to the transform function). -- [`Array/Iterable/Sequence.mapWithIndex`](https://github.com/robstoll/kbox/tree/v0.14.0/kbox-common/src/main/kotlin/ch/tutteli/kbox/mapWithIndex.kt#L11) +- [`Array/Iterable/Sequence.mapWithIndex`](https://github.com/robstoll/kbox/tree/v0.14.1/kbox-common/src/main/kotlin/ch/tutteli/kbox/mapWithIndex.kt#L11) -- [`Iterator.toPeekingIterator()`](https://github.com/robstoll/kbox/tree/v0.14.0/kbox-common/src/main/kotlin/ch/tutteli/kbox/PeekingIteratorUnsynchronized.kt) +- [`Iterator.toPeekingIterator()`](https://github.com/robstoll/kbox/tree/v0.14.1/kbox-common/src/main/kotlin/ch/tutteli/kbox/PeekingIteratorUnsynchronized.kt) which allows to have a look what the next element is without consuming it. -- [`varargsToList/glue`](https://github.com/robstoll/kbox/tree/v0.14.0/kbox-common/src/main/kotlin/ch/tutteli/kbox/varargToList.kt#L11) +- [`varargsToList/glue`](https://github.com/robstoll/kbox/tree/v0.14.1/kbox-common/src/main/kotlin/ch/tutteli/kbox/varargToList.kt#L11) creates a `List` out of a single `E` and an `Array`. # Installation @@ -56,7 +56,7 @@ Following an example if you use gradle: ``` repositories { jcenter() } dependencies { - implementation 'ch.tutteli.kbox:kbox:0.14.0' + implementation 'ch.tutteli.kbox:kbox:0.14.1' } ``` diff --git a/build.gradle b/build.gradle index 6224264..e7de1c4 100644 --- a/build.gradle +++ b/build.gradle @@ -1,4 +1,4 @@ -version = "0.14.0" +version = "0.14.1" group = 'ch.tutteli.kbox' buildscript { @@ -126,7 +126,7 @@ Release & deploy a commit d) git push origin vX.Y.Z 4. deploy to bintray: a) java -version 2>&1 | grep "version \"9" && CI=true ./gr clean publishToBintray - b) Log in to bintray, check and publish new jars + b) Log in to bintray, check that there are 36 artifacts and publish them 5. create release on github Prepare next dev cycle