diff --git a/.circleci/config.yml b/.circleci/config.yml
index 8dabc3f..c781fdc 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -21,7 +21,7 @@ commands:
- sdkman/setup-sdkman
- sdkman/sdkman-install:
candidate: kotlin
- version: 2.0.20
+ version: 2.1.10
- run:
name: Download dependencies
command: ./bld download
@@ -46,11 +46,11 @@ jobs:
steps:
- build_and_test
- bld_jdk20:
+ bld_jdk21:
<<: *defaults
docker:
- - image: cimg/openjdk:20.0
+ - image: cimg/openjdk:21.0
steps:
- build_and_test
@@ -59,4 +59,4 @@ workflows:
bld:
jobs:
- bld_jdk17
- - bld_jdk20
+ - bld_jdk21
diff --git a/.github/workflows/bld.yml b/.github/workflows/bld.yml
index 0419392..068e6c9 100644
--- a/.github/workflows/bld.yml
+++ b/.github/workflows/bld.yml
@@ -1,21 +1,21 @@
name: bld-ci
-on: [push, pull_request, workflow_dispatch]
+on: [ push, pull_request, workflow_dispatch ]
env:
COVERAGE_JDK: "21"
- COVERAGE_KOTLIN: "2.0.0"
- KOTLIN_HOME: /usr/share/kotlinc
+ COVERAGE_KOTLIN: "2.1.20"
PINBOARD_API_TOKEN: ${{ secrets.PINBOARD_API_TOKEN }}
jobs:
build-bld-project:
- runs-on: ubuntu-latest
-
strategy:
matrix:
- java-version: [17, 21, 23]
- kotlin-version: [1.9.25, 2.1.10]
+ java-version: [ 17, 21, 24 ]
+ kotlin-version: [ 1.9.25, 2.0.21, 2.1.20 ]
+ os: [ ubuntu-latest, windows-latest, macos-latest ]
+
+ runs-on: ${{ matrix.os }}
steps:
- name: Checkout source repository
@@ -29,6 +29,28 @@ jobs:
distribution: "zulu"
java-version: ${{ matrix.java-version }}
+ - name: Download dependencies [bld example]
+ working-directory: examples/bld
+ run: ./bld download
+
+ - name: Compile and run [bld examples]
+ working-directory: examples/bld
+ run: |
+ ./bld compile run
+ ./bld run-java
+
+ - name: Run example [gradle java example]
+ working-directory: examples/gradle/java
+ if: matrix.java-version != '24'
+ run: |
+ ./gradlew run
+
+ - name: Run example [gradle kotlin example]
+ working-directory: examples/gradle/kotlin
+ if: matrix.java-version != '24'
+ run: |
+ ./gradlew run
+
- name: Download dependencies
run: ./bld download
@@ -40,11 +62,13 @@ jobs:
- name: Remove pom.xml
if: success() && matrix.java-version == env.COVERAGE_JDK && matrix.kotlin-version == env.COVERAGE_KOTLIN
+ && matrix.os == 'ubuntu-latest'
run: rm -rf pom.xml
- name: SonarCloud Scan
uses: sonarsource/sonarcloud-github-action@master
if: success() && matrix.java-version == env.COVERAGE_JDK && matrix.kotlin-version == env.COVERAGE_KOTLIN
+ && matrix.os == 'ubuntu-latest'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml
index 1e01b48..94f28ea 100644
--- a/.idea/inspectionProfiles/Project_Default.xml
+++ b/.idea/inspectionProfiles/Project_Default.xml
@@ -4,5 +4,6 @@
+
\ No newline at end of file
diff --git a/README.md b/README.md
index f892b2d..cdf7df5 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,7 @@
# [Pinboard](https://pinboard.in) Poster for Kotlin, Java and Android
[](https://opensource.org/licenses/BSD-3-Clause)
-[](https://kotlinlang.org/)
+[](https://kotlinlang.org/)
[](https://rife2.com/bld)
[](https://github.com/ethauvin/pinboard-poster/releases/latest)
[](https://central.sonatype.com/artifact/net.thauvin.erik/pinboard-poster)
diff --git a/examples/bld/.idea/bld.xml b/examples/bld/.idea/bld.xml
new file mode 100644
index 0000000..6600cee
--- /dev/null
+++ b/examples/bld/.idea/bld.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/examples/bld/lib/bld/bld-wrapper.properties b/examples/bld/lib/bld/bld-wrapper.properties
index 1ffe3ff..1f1009d 100644
--- a/examples/bld/lib/bld/bld-wrapper.properties
+++ b/examples/bld/lib/bld/bld-wrapper.properties
@@ -1,7 +1,7 @@
bld.downloadExtensionJavadoc=false
bld.downloadExtensionSources=true
bld.downloadLocation=
-bld.extension-kotlin=com.uwyn.rife2:bld-kotlin:1.0.4
+bld.extension-kotlin=com.uwyn.rife2:bld-kotlin:1.1.0-SNAPSHOT
bld.repositories=MAVEN_LOCAL,MAVEN_CENTRAL,RIFE2_SNAPSHOTS,RIFE2_RELEASES
bld.sourceDirectories=
bld.version=2.2.1
diff --git a/examples/bld/src/bld/java/net/thauvin/erik/pinboard/samples/ExampleBuild.java b/examples/bld/src/bld/java/net/thauvin/erik/pinboard/samples/ExampleBuild.java
index e706cb7..6fc8142 100644
--- a/examples/bld/src/bld/java/net/thauvin/erik/pinboard/samples/ExampleBuild.java
+++ b/examples/bld/src/bld/java/net/thauvin/erik/pinboard/samples/ExampleBuild.java
@@ -3,6 +3,7 @@ package net.thauvin.erik.pinboard.samples;
import rife.bld.BaseProject;
import rife.bld.BuildCommand;
import rife.bld.extension.CompileKotlinOperation;
+import rife.bld.extension.kotlin.CompileOptions;
import rife.bld.operations.RunOperation;
import java.util.List;
@@ -25,7 +26,7 @@ public class ExampleBuild extends BaseProject {
repositories = List.of(MAVEN_LOCAL, MAVEN_CENTRAL, SONATYPE_SNAPSHOTS_LEGACY);
scope(compile)
- .include(dependency("net.thauvin.erik", "pinboard-poster", version(1, 2, 0)));
+ .include(dependency("net.thauvin.erik", "pinboard-poster", version(1, 2, 1, "SNAPSHOT")));
}
public static void main(String[] args) {
@@ -36,6 +37,7 @@ public class ExampleBuild extends BaseProject {
public void compile() throws Exception {
new CompileKotlinOperation()
.fromProject(this)
+ .compileOptions(new CompileOptions().verbose(true))
.execute();
// Also compile the Java source code
diff --git a/examples/gradle/java/build.gradle b/examples/gradle/java/build.gradle
index 4d15fa4..e0eceee 100644
--- a/examples/gradle/java/build.gradle
+++ b/examples/gradle/java/build.gradle
@@ -18,8 +18,9 @@ java {
repositories {
mavenLocal()
mavenCentral()
+ maven { url = uri("https://oss.sonatype.org/content/repositories/snapshots") }
}
dependencies {
- implementation 'net.thauvin.erik:pinboard-poster:1.2.0'
+ implementation 'net.thauvin.erik:pinboard-poster:1.2.1-SNAPSHOT'
}
diff --git a/examples/gradle/kotlin/.idea/kotlin.iml b/examples/gradle/kotlin/.idea/kotlin.iml
new file mode 100644
index 0000000..d6ebd48
--- /dev/null
+++ b/examples/gradle/kotlin/.idea/kotlin.iml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/examples/gradle/kotlin/.idea/modules.xml b/examples/gradle/kotlin/.idea/modules.xml
new file mode 100644
index 0000000..a168080
--- /dev/null
+++ b/examples/gradle/kotlin/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/examples/gradle/kotlin/build.gradle.kts b/examples/gradle/kotlin/build.gradle.kts
index 74e5812..f41881f 100644
--- a/examples/gradle/kotlin/build.gradle.kts
+++ b/examples/gradle/kotlin/build.gradle.kts
@@ -3,7 +3,7 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
plugins {
id("application")
id("com.github.ben-manes.versions") version "0.51.0"
- kotlin("jvm") version "2.1.10"
+ kotlin("jvm") version "2.1.20"
}
defaultTasks(ApplicationPlugin.TASK_RUN_NAME)
@@ -11,10 +11,11 @@ defaultTasks(ApplicationPlugin.TASK_RUN_NAME)
repositories {
mavenLocal()
mavenCentral()
+ maven { url = uri("https://oss.sonatype.org/content/repositories/snapshots") }
}
dependencies {
- implementation("net.thauvin.erik:pinboard-poster:1.2.0")
+ implementation("net.thauvin.erik:pinboard-poster:1.2.1-SNAPSHOT")
}
java {
diff --git a/lib/bld/bld-wrapper.properties b/lib/bld/bld-wrapper.properties
index 154abb0..fc9463a 100644
--- a/lib/bld/bld-wrapper.properties
+++ b/lib/bld/bld-wrapper.properties
@@ -1,10 +1,10 @@
bld.downloadExtensionJavadoc=false
bld.downloadExtensionSources=true
bld.downloadLocation=
-bld.extension-detekt=com.uwyn.rife2:bld-detekt:0.9.9
-bld.extension-dokka=com.uwyn.rife2:bld-dokka:1.0.3
-bld.extension-jacoco=com.uwyn.rife2:bld-jacoco-report:0.9.9
-bld.extension-kotlin=com.uwyn.rife2:bld-kotlin:1.0.4
+bld.extension-detekt=com.uwyn.rife2:bld-detekt:0.9.10-SNAPSHOT
+bld.extension-dokka=com.uwyn.rife2:bld-dokka:1.0.4-SNAPSHOT
+bld.extension-jacoco=com.uwyn.rife2:bld-jacoco-report:0.9.10-SNAPSHOT
+bld.extension-kotlin=com.uwyn.rife2:bld-kotlin:1.1.0-SNAPSHOT
bld.repositories=MAVEN_LOCAL,MAVEN_CENTRAL,RIFE2_SNAPSHOTS,RIFE2_RELEASES
bld.sourceDirectories=
bld.version=2.2.1
diff --git a/pom.xml b/pom.xml
index 4850a68..64767c7 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,7 +4,7 @@
4.0.0
net.thauvin.erik
pinboard-poster
- 1.2.0
+ 1.2.1-SNAPSHOT
pinboard-poster
A small library for posting to Pinboard
https://github.com/ethauvin/pinboard-poster
@@ -18,19 +18,19 @@
org.jetbrains.kotlin
kotlin-stdlib
- 2.1.10
+ 2.1.20
compile
org.jetbrains.kotlin
kotlin-stdlib-common
- 2.1.10
+ 2.1.20
compile
org.jetbrains.kotlin
kotlin-stdlib-jdk8
- 2.1.10
+ 2.1.20
compile
diff --git a/src/bld/java/net/thauvin/erik/pinboard/PinboardPosterBuild.java b/src/bld/java/net/thauvin/erik/pinboard/PinboardPosterBuild.java
index f285b8a..d4689ac 100644
--- a/src/bld/java/net/thauvin/erik/pinboard/PinboardPosterBuild.java
+++ b/src/bld/java/net/thauvin/erik/pinboard/PinboardPosterBuild.java
@@ -39,6 +39,7 @@ import rife.bld.extension.DokkaOperation;
import rife.bld.extension.JacocoReportOperation;
import rife.bld.extension.dokka.LoggingLevel;
import rife.bld.extension.dokka.OutputFormat;
+import rife.bld.extension.kotlin.CompileOptions;
import rife.bld.operations.exceptions.ExitStatusException;
import rife.bld.publish.PomBuilder;
import rife.bld.publish.PublishDeveloper;
@@ -49,6 +50,9 @@ import rife.tools.exceptions.FileUtilsErrorException;
import java.io.File;
import java.io.IOException;
import java.util.List;
+import java.util.logging.ConsoleHandler;
+import java.util.logging.Level;
+import java.util.logging.Logger;
import static rife.bld.dependencies.Repository.*;
import static rife.bld.dependencies.Scope.compile;
@@ -60,7 +64,7 @@ public class PinboardPosterBuild extends Project {
public PinboardPosterBuild() {
pkg = "net.thauvin.erik";
name = "pinboard-poster";
- version = version(1, 2, 0);
+ version = version(1, 2, 1, "SNAPSHOT");
mainClass = pkg + ".PinboardPoster";
@@ -70,7 +74,7 @@ public class PinboardPosterBuild extends Project {
repositories = List.of(MAVEN_LOCAL, MAVEN_CENTRAL);
final var okHttp = version(4, 12, 0);
- final var kotlin = version(2, 1, 10);
+ final var kotlin = version(2, 1, 20);
scope(compile)
// Kotlin
.include(dependency("org.jetbrains.kotlin", "kotlin-stdlib", kotlin))
@@ -82,7 +86,8 @@ public class PinboardPosterBuild extends Project {
scope(test)
.include(dependency("org.jetbrains.kotlin", "kotlin-test-junit5", kotlin))
.include(dependency("org.junit.jupiter", "junit-jupiter", version(5, 12, 1)))
- .include(dependency("org.junit.platform", "junit-platform-console-standalone", version(1, 12, 1)));
+ .include(dependency("org.junit.platform", "junit-platform-console-standalone", version(1, 12, 1)))
+ .include(dependency("org.junit.platform", "junit-platform-launcher", version(1, 12, 1)));
publishOperation()
.repository(version.isSnapshot() ? repository(SONATYPE_SNAPSHOTS_LEGACY.location())
@@ -117,6 +122,16 @@ public class PinboardPosterBuild extends Project {
}
public static void main(final String[] args) {
+ // Enable detailed logging for the extensions
+ var level = Level.ALL;
+ var logger = Logger.getLogger("rife.bld.extension");
+ var consoleHandler = new ConsoleHandler();
+
+ consoleHandler.setLevel(level);
+ logger.addHandler(consoleHandler);
+ logger.setLevel(level);
+ logger.setUseParentHandlers(false);
+
new PinboardPosterBuild().start(args);
}
@@ -125,6 +140,7 @@ public class PinboardPosterBuild extends Project {
public void compile() throws Exception {
new CompileKotlinOperation()
.fromProject(this)
+ .compileOptions(new CompileOptions().verbose(true))
.execute();
}