From 9f68136f53f7994c6a8357b1df4cac47a101b2cf Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Sun, 2 Apr 2023 11:34:45 +0000 Subject: [PATCH 01/32] Begin next development iteration --- com.io7m.jbssio.api/pom.xml | 2 +- com.io7m.jbssio.ext.bounded/pom.xml | 2 +- com.io7m.jbssio.tests/pom.xml | 2 +- com.io7m.jbssio.vanilla/pom.xml | 2 +- pom.xml | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/com.io7m.jbssio.api/pom.xml b/com.io7m.jbssio.api/pom.xml index 1212cb9..4c80ee7 100644 --- a/com.io7m.jbssio.api/pom.xml +++ b/com.io7m.jbssio.api/pom.xml @@ -9,7 +9,7 @@ com.io7m.jbssio com.io7m.jbssio - 2.0.0 + 2.1.0-SNAPSHOT com.io7m.jbssio.api diff --git a/com.io7m.jbssio.ext.bounded/pom.xml b/com.io7m.jbssio.ext.bounded/pom.xml index 430b9cb..80aad8b 100644 --- a/com.io7m.jbssio.ext.bounded/pom.xml +++ b/com.io7m.jbssio.ext.bounded/pom.xml @@ -9,7 +9,7 @@ com.io7m.jbssio com.io7m.jbssio - 2.0.0 + 2.1.0-SNAPSHOT com.io7m.jbssio.ext.bounded diff --git a/com.io7m.jbssio.tests/pom.xml b/com.io7m.jbssio.tests/pom.xml index fa1b814..d58f428 100644 --- a/com.io7m.jbssio.tests/pom.xml +++ b/com.io7m.jbssio.tests/pom.xml @@ -9,7 +9,7 @@ com.io7m.jbssio com.io7m.jbssio - 2.0.0 + 2.1.0-SNAPSHOT com.io7m.jbssio.tests diff --git a/com.io7m.jbssio.vanilla/pom.xml b/com.io7m.jbssio.vanilla/pom.xml index 58e3fec..7f7079b 100644 --- a/com.io7m.jbssio.vanilla/pom.xml +++ b/com.io7m.jbssio.vanilla/pom.xml @@ -9,7 +9,7 @@ com.io7m.jbssio com.io7m.jbssio - 2.0.0 + 2.1.0-SNAPSHOT com.io7m.jbssio.vanilla diff --git a/pom.xml b/pom.xml index 91f8697..e41155a 100644 --- a/pom.xml +++ b/pom.xml @@ -14,7 +14,7 @@ com.io7m.jbssio com.io7m.jbssio - 2.0.0 + 2.1.0-SNAPSHOT pom com.io7m.jbssio From 3f422af21a535cc56aeb43813678bdcd41306be7 Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Thu, 4 May 2023 21:25:04 +0000 Subject: [PATCH 02/32] Update dependencies. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Update ch.qos.logback:logback-classic 1.4.6 → 1.4.7. Update org.junit.jupiter:junit-jupiter-api 5.9.2 → 5.9.3. Update org.junit.jupiter:junit-jupiter-engine 5.9.2 → 5.9.3. --- pom.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index e41155a..806b757 100644 --- a/pom.xml +++ b/pom.xml @@ -32,12 +32,12 @@ 2.0.0 - 5.9.2 + 5.9.3 - ISC License + ISC https://www.io7m.com/license/isc.txt @@ -98,7 +98,7 @@ ch.qos.logback logback-classic - 1.4.6 + 1.4.7 org.osgi From b2251a7bf951cc6b9d4dfe4b789bf7862421cc4a Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Sun, 13 Aug 2023 21:07:23 +0000 Subject: [PATCH 03/32] Update LICENSE --- README-LICENSE.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README-LICENSE.txt b/README-LICENSE.txt index ea21682..f627468 100644 --- a/README-LICENSE.txt +++ b/README-LICENSE.txt @@ -1,4 +1,4 @@ -Copyright © 2019 Mark Raynsford https://www.io7m.com +Copyright © 2023 Mark Raynsford https://www.io7m.com Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above From 38895cec72ca6b9ec59f21bdc19b91707191bde5 Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Sun, 13 Aug 2023 21:09:22 +0000 Subject: [PATCH 04/32] Update GitHub workflows. --- .github/workflows/main.linux.temurin.current.yml | 8 +++++++- .github/workflows/main.linux.temurin.lts.yml | 6 ++++++ .github/workflows/main.windows.temurin.current.yml | 8 +++++++- .github/workflows/main.windows.temurin.lts.yml | 6 ++++++ 4 files changed, 26 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.linux.temurin.current.yml b/.github/workflows/main.linux.temurin.current.yml index 83aba87..e1fe47f 100644 --- a/.github/workflows/main.linux.temurin.current.yml +++ b/.github/workflows/main.linux.temurin.current.yml @@ -14,7 +14,13 @@ jobs: - name: JDK uses: actions/setup-java@v3 with: - java-version: 19 + java-version: 20 distribution: 'temurin' - name: Build run: mvn --errors clean verify site + - name: Upload test logs + uses: actions/upload-artifact@v3 + if: always() + with: + name: test-logs + path: ./com.io7m.jbssio.tests/target/surefire-reports diff --git a/.github/workflows/main.linux.temurin.lts.yml b/.github/workflows/main.linux.temurin.lts.yml index 1c37355..595c79d 100644 --- a/.github/workflows/main.linux.temurin.lts.yml +++ b/.github/workflows/main.linux.temurin.lts.yml @@ -18,6 +18,12 @@ jobs: distribution: 'temurin' - name: Build run: mvn --errors clean verify site + - name: Upload test logs + uses: actions/upload-artifact@v3 + if: always() + with: + name: test-logs + path: ./com.io7m.jbssio.tests/target/surefire-reports - name: Coverage uses: codecov/codecov-action@v1 with: diff --git a/.github/workflows/main.windows.temurin.current.yml b/.github/workflows/main.windows.temurin.current.yml index ebaf4cf..2f635ac 100644 --- a/.github/workflows/main.windows.temurin.current.yml +++ b/.github/workflows/main.windows.temurin.current.yml @@ -14,7 +14,13 @@ jobs: - name: JDK uses: actions/setup-java@v3 with: - java-version: 19 + java-version: 20 distribution: 'temurin' - name: Build run: mvn --errors clean verify site + - name: Upload test logs + uses: actions/upload-artifact@v3 + if: always() + with: + name: test-logs + path: ./com.io7m.jbssio.tests/target/surefire-reports diff --git a/.github/workflows/main.windows.temurin.lts.yml b/.github/workflows/main.windows.temurin.lts.yml index 209717c..ab6cf83 100644 --- a/.github/workflows/main.windows.temurin.lts.yml +++ b/.github/workflows/main.windows.temurin.lts.yml @@ -18,3 +18,9 @@ jobs: distribution: 'temurin' - name: Build run: mvn --errors clean verify site + - name: Upload test logs + uses: actions/upload-artifact@v3 + if: always() + with: + name: test-logs + path: ./com.io7m.jbssio.tests/target/surefire-reports From a94c3206c4ff1318572bc205d5c2e71959e6edc3 Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Tue, 2 Jan 2024 17:44:06 +0000 Subject: [PATCH 05/32] Update primogenitor --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 806b757..f82edaa 100644 --- a/pom.xml +++ b/pom.xml @@ -9,7 +9,7 @@ com.io7m.primogenitor com.io7m.primogenitor.full - 7.5.0 + 8.1.0 com.io7m.jbssio @@ -88,7 +88,7 @@ commons-io commons-io - 2.11.0 + 2.13.0 org.slf4j From 35cf4e8e5058eb0b129acfafd40122f59da62507 Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Tue, 2 Jan 2024 18:19:00 +0000 Subject: [PATCH 06/32] Update dependencies MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Update commons-io:commons-io 2.13.0 → 2.15.1. Update org.slf4j:slf4j-api 2.0.7 → 2.0.10. Update ch.qos.logback:logback-classic 1.4.7 → 1.4.14. Update org.junit.jupiter:junit-jupiter-api 5.9.3 → 5.10.1. Update org.junit.jupiter:junit-jupiter-engine 5.9.3 → 5.10.1. --- pom.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index f82edaa..8ea8163 100644 --- a/pom.xml +++ b/pom.xml @@ -32,7 +32,7 @@ 2.0.0 - 5.9.3 + 5.10.1 @@ -88,17 +88,17 @@ commons-io commons-io - 2.13.0 + 2.15.1 org.slf4j slf4j-api - 2.0.7 + 2.0.10 ch.qos.logback logback-classic - 1.4.7 + 1.4.14 org.osgi From d93902e24f2a445f3c1b52d7611cb15cf956cd0e Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Tue, 2 Jan 2024 18:23:04 +0000 Subject: [PATCH 07/32] Update workflows. --- .github/workflows/main.linux.temurin.current.yml | 2 +- .github/workflows/main.linux.temurin.lts.yml | 2 +- .github/workflows/main.windows.temurin.current.yml | 2 +- .github/workflows/main.windows.temurin.lts.yml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/main.linux.temurin.current.yml b/.github/workflows/main.linux.temurin.current.yml index e1fe47f..1e138d8 100644 --- a/.github/workflows/main.linux.temurin.current.yml +++ b/.github/workflows/main.linux.temurin.current.yml @@ -14,7 +14,7 @@ jobs: - name: JDK uses: actions/setup-java@v3 with: - java-version: 20 + java-version: 21 distribution: 'temurin' - name: Build run: mvn --errors clean verify site diff --git a/.github/workflows/main.linux.temurin.lts.yml b/.github/workflows/main.linux.temurin.lts.yml index 595c79d..7f684a4 100644 --- a/.github/workflows/main.linux.temurin.lts.yml +++ b/.github/workflows/main.linux.temurin.lts.yml @@ -14,7 +14,7 @@ jobs: - name: JDK uses: actions/setup-java@v3 with: - java-version: 17 + java-version: 21 distribution: 'temurin' - name: Build run: mvn --errors clean verify site diff --git a/.github/workflows/main.windows.temurin.current.yml b/.github/workflows/main.windows.temurin.current.yml index 2f635ac..90471c4 100644 --- a/.github/workflows/main.windows.temurin.current.yml +++ b/.github/workflows/main.windows.temurin.current.yml @@ -14,7 +14,7 @@ jobs: - name: JDK uses: actions/setup-java@v3 with: - java-version: 20 + java-version: 21 distribution: 'temurin' - name: Build run: mvn --errors clean verify site diff --git a/.github/workflows/main.windows.temurin.lts.yml b/.github/workflows/main.windows.temurin.lts.yml index ab6cf83..847c584 100644 --- a/.github/workflows/main.windows.temurin.lts.yml +++ b/.github/workflows/main.windows.temurin.lts.yml @@ -14,7 +14,7 @@ jobs: - name: JDK uses: actions/setup-java@v3 with: - java-version: 17 + java-version: 21 distribution: 'temurin' - name: Build run: mvn --errors clean verify site From 23ab6b9d55fcfc3791a6cadc8e5ddbf384dd2597 Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Fri, 23 Feb 2024 20:26:25 +0000 Subject: [PATCH 08/32] Specify Java target explicitly --- pom.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/pom.xml b/pom.xml index 8ea8163..8a14dad 100644 --- a/pom.xml +++ b/pom.xml @@ -32,6 +32,7 @@ 2.0.0 + 21 5.10.1 From 3b2347693b4cd807169cdfa738822ee7efafcf7f Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Fri, 29 Mar 2024 22:36:31 +0000 Subject: [PATCH 09/32] Update primogenitor to 8.2.0. --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 8a14dad..ffaad3b 100644 --- a/pom.xml +++ b/pom.xml @@ -9,7 +9,7 @@ com.io7m.primogenitor com.io7m.primogenitor.full - 8.1.0 + 8.2.0 com.io7m.jbssio From a88631403c6e9e5a2ccdabd407abaa352f5993d0 Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Fri, 29 Mar 2024 22:41:59 +0000 Subject: [PATCH 10/32] Update README and workflows. --- .github/workflows/main.linux.temurin.current.yml | 2 +- .github/workflows/main.windows.temurin.current.yml | 2 +- README.md | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/main.linux.temurin.current.yml b/.github/workflows/main.linux.temurin.current.yml index 1e138d8..8c29e99 100644 --- a/.github/workflows/main.linux.temurin.current.yml +++ b/.github/workflows/main.linux.temurin.current.yml @@ -14,7 +14,7 @@ jobs: - name: JDK uses: actions/setup-java@v3 with: - java-version: 21 + java-version: 22 distribution: 'temurin' - name: Build run: mvn --errors clean verify site diff --git a/.github/workflows/main.windows.temurin.current.yml b/.github/workflows/main.windows.temurin.current.yml index 90471c4..99ee8bb 100644 --- a/.github/workflows/main.windows.temurin.current.yml +++ b/.github/workflows/main.windows.temurin.current.yml @@ -14,7 +14,7 @@ jobs: - name: JDK uses: actions/setup-java@v3 with: - java-version: 21 + java-version: 22 distribution: 'temurin' - name: Build run: mvn --errors clean verify site diff --git a/README.md b/README.md index c4c24bb..128d51f 100644 --- a/README.md +++ b/README.md @@ -2,10 +2,10 @@ jbssio === [![Maven Central](https://img.shields.io/maven-central/v/com.io7m.jbssio/com.io7m.jbssio.svg?style=flat-square)](http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22com.io7m.jbssio%22) -[![Maven Central (snapshot)](https://img.shields.io/nexus/s/https/s01.oss.sonatype.org/com.io7m.jbssio/com.io7m.jbssio.svg?style=flat-square)](https://s01.oss.sonatype.org/content/repositories/snapshots/com/io7m/jbssio/) +[![Maven Central (snapshot)](https://img.shields.io/nexus/s/com.io7m.jbssio/com.io7m.jbssio?server=https%3A%2F%2Fs01.oss.sonatype.org&style=flat-square)](https://s01.oss.sonatype.org/content/repositories/snapshots/com/io7m/jbssio/) [![Codecov](https://img.shields.io/codecov/c/github/io7m/jbssio.svg?style=flat-square)](https://codecov.io/gh/io7m/jbssio) -![jbssio](./src/site/resources/jbssio.jpg?raw=true) +![com.io7m.jbssio](./src/site/resources/jbssio.jpg?raw=true) | JVM | Platform | Status | |-----|----------|--------| From 5c62e15c088dd39594d3b89977a5a1ae5c77735b Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Fri, 19 Apr 2024 19:54:08 +0000 Subject: [PATCH 11/32] Update workflows. --- .github/workflows/main.linux.temurin.current.yml | 6 +++--- .github/workflows/main.linux.temurin.lts.yml | 8 ++++---- .github/workflows/main.windows.temurin.current.yml | 6 +++--- .github/workflows/main.windows.temurin.lts.yml | 6 +++--- 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/.github/workflows/main.linux.temurin.current.yml b/.github/workflows/main.linux.temurin.current.yml index 8c29e99..8a10375 100644 --- a/.github/workflows/main.linux.temurin.current.yml +++ b/.github/workflows/main.linux.temurin.current.yml @@ -10,16 +10,16 @@ jobs: build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: JDK - uses: actions/setup-java@v3 + uses: actions/setup-java@v4 with: java-version: 22 distribution: 'temurin' - name: Build run: mvn --errors clean verify site - name: Upload test logs - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 if: always() with: name: test-logs diff --git a/.github/workflows/main.linux.temurin.lts.yml b/.github/workflows/main.linux.temurin.lts.yml index 7f684a4..6c496ba 100644 --- a/.github/workflows/main.linux.temurin.lts.yml +++ b/.github/workflows/main.linux.temurin.lts.yml @@ -10,21 +10,21 @@ jobs: build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: JDK - uses: actions/setup-java@v3 + uses: actions/setup-java@v4 with: java-version: 21 distribution: 'temurin' - name: Build run: mvn --errors clean verify site - name: Upload test logs - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 if: always() with: name: test-logs path: ./com.io7m.jbssio.tests/target/surefire-reports - name: Coverage - uses: codecov/codecov-action@v1 + uses: codecov/codecov-action@v4 with: file: com.io7m.jbssio.tests/target/site/jacoco-aggregate/jacoco.xml diff --git a/.github/workflows/main.windows.temurin.current.yml b/.github/workflows/main.windows.temurin.current.yml index 99ee8bb..a5d8bf9 100644 --- a/.github/workflows/main.windows.temurin.current.yml +++ b/.github/workflows/main.windows.temurin.current.yml @@ -10,16 +10,16 @@ jobs: build: runs-on: windows-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: JDK - uses: actions/setup-java@v3 + uses: actions/setup-java@v4 with: java-version: 22 distribution: 'temurin' - name: Build run: mvn --errors clean verify site - name: Upload test logs - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 if: always() with: name: test-logs diff --git a/.github/workflows/main.windows.temurin.lts.yml b/.github/workflows/main.windows.temurin.lts.yml index 847c584..0f9beec 100644 --- a/.github/workflows/main.windows.temurin.lts.yml +++ b/.github/workflows/main.windows.temurin.lts.yml @@ -10,16 +10,16 @@ jobs: build: runs-on: windows-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: JDK - uses: actions/setup-java@v3 + uses: actions/setup-java@v4 with: java-version: 21 distribution: 'temurin' - name: Build run: mvn --errors clean verify site - name: Upload test logs - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 if: always() with: name: test-logs From ca9314cc96ff537d4d6b773ac37ca0537e22eab8 Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Fri, 19 Apr 2024 20:14:59 +0000 Subject: [PATCH 12/32] Add dependabot.yml --- .github/dependabot.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 .github/dependabot.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..6b53613 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,18 @@ + +version: 2 + +updates: + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "weekly" + + - package-ecosystem: "maven" + directory: "/" + schedule: + interval: "weekly" + + target-branch: "develop" + ignore: + - dependency-name: "*" + update-types: [ "version-update:semver-major" ] From 846027625a382d84249e1991bf8e186fb56ea71a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 19 Apr 2024 20:15:39 +0000 Subject: [PATCH 13/32] Bump org.slf4j:slf4j-api from 2.0.10 to 2.0.13 Bumps org.slf4j:slf4j-api from 2.0.10 to 2.0.13. --- updated-dependencies: - dependency-name: org.slf4j:slf4j-api dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index ffaad3b..35f630e 100644 --- a/pom.xml +++ b/pom.xml @@ -94,7 +94,7 @@ org.slf4j slf4j-api - 2.0.10 + 2.0.13 ch.qos.logback From 9fcff8373625b16a81c282d40ef96ad3d04f5ec5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 19 Apr 2024 20:15:43 +0000 Subject: [PATCH 14/32] Bump ch.qos.logback:logback-classic from 1.4.14 to 1.5.6 Bumps [ch.qos.logback:logback-classic](https://github.com/qos-ch/logback) from 1.4.14 to 1.5.6. - [Commits](https://github.com/qos-ch/logback/compare/v_1.4.14...v_1.5.6) --- updated-dependencies: - dependency-name: ch.qos.logback:logback-classic dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index ffaad3b..9dcb2d5 100644 --- a/pom.xml +++ b/pom.xml @@ -99,7 +99,7 @@ ch.qos.logback logback-classic - 1.4.14 + 1.5.6 org.osgi From 0352a3a0ad243278c9658e61056cc96c835715ad Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 19 Apr 2024 20:15:54 +0000 Subject: [PATCH 15/32] Bump commons-io:commons-io from 2.15.1 to 2.16.1 Bumps commons-io:commons-io from 2.15.1 to 2.16.1. --- updated-dependencies: - dependency-name: commons-io:commons-io dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index ffaad3b..2bc6553 100644 --- a/pom.xml +++ b/pom.xml @@ -89,7 +89,7 @@ commons-io commons-io - 2.15.1 + 2.16.1 org.slf4j From c1c20255b19af01c89913487c5367514279ff18f Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Sat, 20 Apr 2024 14:46:26 +0000 Subject: [PATCH 16/32] Downgrade coverage workflow to v3. --- .github/workflows/main.linux.temurin.lts.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.linux.temurin.lts.yml b/.github/workflows/main.linux.temurin.lts.yml index 6c496ba..14a4088 100644 --- a/.github/workflows/main.linux.temurin.lts.yml +++ b/.github/workflows/main.linux.temurin.lts.yml @@ -25,6 +25,6 @@ jobs: name: test-logs path: ./com.io7m.jbssio.tests/target/surefire-reports - name: Coverage - uses: codecov/codecov-action@v4 + uses: codecov/codecov-action@v3 with: file: com.io7m.jbssio.tests/target/site/jacoco-aggregate/jacoco.xml From 2838802faead1f7661c30ea887f7a6167d2c01ae Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Mon, 29 Apr 2024 20:43:31 +0000 Subject: [PATCH 17/32] Move to new organization. --- .github/workflows/main.linux.temurin.lts.yml | 3 ++- .gitmodules | 3 --- .jenkins | 1 - README-CHANGES.xml | 2 +- README.md | 10 +++++----- com.io7m.jbssio.tests/pom.xml | 1 + .../java/com/io7m/jbssio/tests/BSSBoundedTest.java | 0 .../com/io7m/jbssio/tests/BSSIntegrationTest.java | 0 .../io7m/jbssio/tests/BSSRangeHalfOpenTest.java | 0 .../BSSReadersRandomAccessByteBufferTest.java | 0 .../BSSReadersRandomAccessChannelContract.java | 0 .../BSSReadersRandomAccessFileChannelTest.java | 0 .../BSSReadersRandomAccessSeekableChannelTest.java | 0 .../jbssio/tests/BSSReadersSequentialTest.java | 0 .../com/io7m/jbssio/tests/BSSUnsupportedTest.java | 0 ...SSWritersRandomAccessChannelByteBufferTest.java | 0 .../BSSWritersRandomAccessChannelContract.java | 0 .../BSSWritersRandomAccessSeekableChannelTest.java | 0 .../jbssio/tests/BSSWritersSequentialTest.java | 0 .../java/com/io7m/jbssio/tests/Demo.java | 0 .../java/com/io7m/jbssio/tests/DemoSpecimen.java | 0 .../resources/com/io7m/jbssio/tests/specimen.dat | Bin pom.xml | 13 ++++++++----- src/site/resources/overview.xml | 8 ++++---- 24 files changed, 21 insertions(+), 20 deletions(-) delete mode 160000 .jenkins rename com.io7m.jbssio.tests/src/{test => main}/java/com/io7m/jbssio/tests/BSSBoundedTest.java (100%) rename com.io7m.jbssio.tests/src/{test => main}/java/com/io7m/jbssio/tests/BSSIntegrationTest.java (100%) rename com.io7m.jbssio.tests/src/{test => main}/java/com/io7m/jbssio/tests/BSSRangeHalfOpenTest.java (100%) rename com.io7m.jbssio.tests/src/{test => main}/java/com/io7m/jbssio/tests/BSSReadersRandomAccessByteBufferTest.java (100%) rename com.io7m.jbssio.tests/src/{test => main}/java/com/io7m/jbssio/tests/BSSReadersRandomAccessChannelContract.java (100%) rename com.io7m.jbssio.tests/src/{test => main}/java/com/io7m/jbssio/tests/BSSReadersRandomAccessFileChannelTest.java (100%) rename com.io7m.jbssio.tests/src/{test => main}/java/com/io7m/jbssio/tests/BSSReadersRandomAccessSeekableChannelTest.java (100%) rename com.io7m.jbssio.tests/src/{test => main}/java/com/io7m/jbssio/tests/BSSReadersSequentialTest.java (100%) rename com.io7m.jbssio.tests/src/{test => main}/java/com/io7m/jbssio/tests/BSSUnsupportedTest.java (100%) rename com.io7m.jbssio.tests/src/{test => main}/java/com/io7m/jbssio/tests/BSSWritersRandomAccessChannelByteBufferTest.java (100%) rename com.io7m.jbssio.tests/src/{test => main}/java/com/io7m/jbssio/tests/BSSWritersRandomAccessChannelContract.java (100%) rename com.io7m.jbssio.tests/src/{test => main}/java/com/io7m/jbssio/tests/BSSWritersRandomAccessSeekableChannelTest.java (100%) rename com.io7m.jbssio.tests/src/{test => main}/java/com/io7m/jbssio/tests/BSSWritersSequentialTest.java (100%) rename com.io7m.jbssio.tests/src/{test => main}/java/com/io7m/jbssio/tests/Demo.java (100%) rename com.io7m.jbssio.tests/src/{test => main}/java/com/io7m/jbssio/tests/DemoSpecimen.java (100%) rename com.io7m.jbssio.tests/src/{test => main}/resources/com/io7m/jbssio/tests/specimen.dat (100%) diff --git a/.github/workflows/main.linux.temurin.lts.yml b/.github/workflows/main.linux.temurin.lts.yml index 14a4088..3f93b69 100644 --- a/.github/workflows/main.linux.temurin.lts.yml +++ b/.github/workflows/main.linux.temurin.lts.yml @@ -25,6 +25,7 @@ jobs: name: test-logs path: ./com.io7m.jbssio.tests/target/surefire-reports - name: Coverage - uses: codecov/codecov-action@v3 + uses: codecov/codecov-action@v4.3.0 with: + token: ${{ secrets.CODECOV_TOKEN }} file: com.io7m.jbssio.tests/target/site/jacoco-aggregate/jacoco.xml diff --git a/.gitmodules b/.gitmodules index e8d95e0..e69de29 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +0,0 @@ -[submodule ".jenkins"] - path = .jenkins - url = https://www.github.com/io7m/jenkinsfiles diff --git a/.jenkins b/.jenkins deleted file mode 160000 index 3213e21..0000000 --- a/.jenkins +++ /dev/null @@ -1 +0,0 @@ -Subproject commit 3213e21cdb5549e59c16e21658a9e87443301c7e diff --git a/README-CHANGES.xml b/README-CHANGES.xml index 78bbe7f..705b3f4 100644 --- a/README-CHANGES.xml +++ b/README-CHANGES.xml @@ -54,6 +54,6 @@ - + diff --git a/README.md b/README.md index 128d51f..0148b79 100644 --- a/README.md +++ b/README.md @@ -3,13 +3,13 @@ jbssio [![Maven Central](https://img.shields.io/maven-central/v/com.io7m.jbssio/com.io7m.jbssio.svg?style=flat-square)](http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22com.io7m.jbssio%22) [![Maven Central (snapshot)](https://img.shields.io/nexus/s/com.io7m.jbssio/com.io7m.jbssio?server=https%3A%2F%2Fs01.oss.sonatype.org&style=flat-square)](https://s01.oss.sonatype.org/content/repositories/snapshots/com/io7m/jbssio/) -[![Codecov](https://img.shields.io/codecov/c/github/io7m/jbssio.svg?style=flat-square)](https://codecov.io/gh/io7m/jbssio) +[![Codecov](https://img.shields.io/codecov/c/github/io7m-com/jbssio.svg?style=flat-square)](https://codecov.io/gh/io7m-com/jbssio) ![com.io7m.jbssio](./src/site/resources/jbssio.jpg?raw=true) | JVM | Platform | Status | |-----|----------|--------| -| OpenJDK (Temurin) Current | Linux | [![Build (OpenJDK (Temurin) Current, Linux)](https://img.shields.io/github/actions/workflow/status/io7m/jbssio/main.linux.temurin.current.yml)](https://github.com/io7m/jbssio/actions?query=workflow%3Amain.linux.temurin.current)| -| OpenJDK (Temurin) LTS | Linux | [![Build (OpenJDK (Temurin) LTS, Linux)](https://img.shields.io/github/actions/workflow/status/io7m/jbssio/main.linux.temurin.lts.yml)](https://github.com/io7m/jbssio/actions?query=workflow%3Amain.linux.temurin.lts)| -| OpenJDK (Temurin) Current | Windows | [![Build (OpenJDK (Temurin) Current, Windows)](https://img.shields.io/github/actions/workflow/status/io7m/jbssio/main.windows.temurin.current.yml)](https://github.com/io7m/jbssio/actions?query=workflow%3Amain.windows.temurin.current)| -| OpenJDK (Temurin) LTS | Windows | [![Build (OpenJDK (Temurin) LTS, Windows)](https://img.shields.io/github/actions/workflow/status/io7m/jbssio/main.windows.temurin.lts.yml)](https://github.com/io7m/jbssio/actions?query=workflow%3Amain.windows.temurin.lts)| +| OpenJDK (Temurin) Current | Linux | [![Build (OpenJDK (Temurin) Current, Linux)](https://img.shields.io/github/actions/workflow/status/io7m-com/jbssio/main.linux.temurin.current.yml)](https://www.github.com/io7m-com/jbssio/actions?query=workflow%3Amain.linux.temurin.current)| +| OpenJDK (Temurin) LTS | Linux | [![Build (OpenJDK (Temurin) LTS, Linux)](https://img.shields.io/github/actions/workflow/status/io7m-com/jbssio/main.linux.temurin.lts.yml)](https://www.github.com/io7m-com/jbssio/actions?query=workflow%3Amain.linux.temurin.lts)| +| OpenJDK (Temurin) Current | Windows | [![Build (OpenJDK (Temurin) Current, Windows)](https://img.shields.io/github/actions/workflow/status/io7m-com/jbssio/main.windows.temurin.current.yml)](https://www.github.com/io7m-com/jbssio/actions?query=workflow%3Amain.windows.temurin.current)| +| OpenJDK (Temurin) LTS | Windows | [![Build (OpenJDK (Temurin) LTS, Windows)](https://img.shields.io/github/actions/workflow/status/io7m-com/jbssio/main.windows.temurin.lts.yml)](https://www.github.com/io7m-com/jbssio/actions?query=workflow%3Amain.windows.temurin.lts)| diff --git a/com.io7m.jbssio.tests/pom.xml b/com.io7m.jbssio.tests/pom.xml index d58f428..a68512e 100644 --- a/com.io7m.jbssio.tests/pom.xml +++ b/com.io7m.jbssio.tests/pom.xml @@ -20,6 +20,7 @@ true + true diff --git a/com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSBoundedTest.java b/com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSBoundedTest.java similarity index 100% rename from com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSBoundedTest.java rename to com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSBoundedTest.java diff --git a/com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSIntegrationTest.java b/com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSIntegrationTest.java similarity index 100% rename from com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSIntegrationTest.java rename to com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSIntegrationTest.java diff --git a/com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSRangeHalfOpenTest.java b/com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSRangeHalfOpenTest.java similarity index 100% rename from com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSRangeHalfOpenTest.java rename to com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSRangeHalfOpenTest.java diff --git a/com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSReadersRandomAccessByteBufferTest.java b/com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSReadersRandomAccessByteBufferTest.java similarity index 100% rename from com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSReadersRandomAccessByteBufferTest.java rename to com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSReadersRandomAccessByteBufferTest.java diff --git a/com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSReadersRandomAccessChannelContract.java b/com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSReadersRandomAccessChannelContract.java similarity index 100% rename from com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSReadersRandomAccessChannelContract.java rename to com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSReadersRandomAccessChannelContract.java diff --git a/com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSReadersRandomAccessFileChannelTest.java b/com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSReadersRandomAccessFileChannelTest.java similarity index 100% rename from com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSReadersRandomAccessFileChannelTest.java rename to com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSReadersRandomAccessFileChannelTest.java diff --git a/com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSReadersRandomAccessSeekableChannelTest.java b/com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSReadersRandomAccessSeekableChannelTest.java similarity index 100% rename from com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSReadersRandomAccessSeekableChannelTest.java rename to com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSReadersRandomAccessSeekableChannelTest.java diff --git a/com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSReadersSequentialTest.java b/com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSReadersSequentialTest.java similarity index 100% rename from com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSReadersSequentialTest.java rename to com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSReadersSequentialTest.java diff --git a/com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSUnsupportedTest.java b/com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSUnsupportedTest.java similarity index 100% rename from com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSUnsupportedTest.java rename to com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSUnsupportedTest.java diff --git a/com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSWritersRandomAccessChannelByteBufferTest.java b/com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSWritersRandomAccessChannelByteBufferTest.java similarity index 100% rename from com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSWritersRandomAccessChannelByteBufferTest.java rename to com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSWritersRandomAccessChannelByteBufferTest.java diff --git a/com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSWritersRandomAccessChannelContract.java b/com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSWritersRandomAccessChannelContract.java similarity index 100% rename from com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSWritersRandomAccessChannelContract.java rename to com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSWritersRandomAccessChannelContract.java diff --git a/com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSWritersRandomAccessSeekableChannelTest.java b/com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSWritersRandomAccessSeekableChannelTest.java similarity index 100% rename from com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSWritersRandomAccessSeekableChannelTest.java rename to com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSWritersRandomAccessSeekableChannelTest.java diff --git a/com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSWritersSequentialTest.java b/com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSWritersSequentialTest.java similarity index 100% rename from com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/BSSWritersSequentialTest.java rename to com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/BSSWritersSequentialTest.java diff --git a/com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/Demo.java b/com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/Demo.java similarity index 100% rename from com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/Demo.java rename to com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/Demo.java diff --git a/com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/DemoSpecimen.java b/com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/DemoSpecimen.java similarity index 100% rename from com.io7m.jbssio.tests/src/test/java/com/io7m/jbssio/tests/DemoSpecimen.java rename to com.io7m.jbssio.tests/src/main/java/com/io7m/jbssio/tests/DemoSpecimen.java diff --git a/com.io7m.jbssio.tests/src/test/resources/com/io7m/jbssio/tests/specimen.dat b/com.io7m.jbssio.tests/src/main/resources/com/io7m/jbssio/tests/specimen.dat similarity index 100% rename from com.io7m.jbssio.tests/src/test/resources/com/io7m/jbssio/tests/specimen.dat rename to com.io7m.jbssio.tests/src/main/resources/com/io7m/jbssio/tests/specimen.dat diff --git a/pom.xml b/pom.xml index ffaad3b..701fc01 100644 --- a/pom.xml +++ b/pom.xml @@ -31,8 +31,11 @@ + 2.0.0 21 + + 5.10.1 @@ -44,9 +47,9 @@ - https://github.com/io7m/jbssio - scm:git:https://github.com/io7m/jbssio - scm:git:https://github.com/io7m/jbssio + https://www.github.com/io7m-com/jbssio + scm:git:https://www.github.com/io7m-com/jbssio + scm:git:https://www.github.com/io7m-com/jbssio @@ -59,7 +62,7 @@ - https://github.com/io7m/jbssio/issues + https://www.github.com/io7m-com/jbssio/issues GitHub Issues @@ -81,7 +84,7 @@ GitHub Actions - https://github.com/jbssio/actions + https://www.github.com/io7m-com/jbssio/actions diff --git a/src/site/resources/overview.xml b/src/site/resources/overview.xml index fd4784a..7aa51b5 100644 --- a/src/site/resources/overview.xml +++ b/src/site/resources/overview.xml @@ -1,15 +1,15 @@

- - + Build status Maven Central - - + Codecov

From 0db62ff25ed259e959f500e2d579ddea6faac821 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 29 Apr 2024 20:44:25 +0000 Subject: [PATCH 18/32] Bump com.io7m.junit.version from 5.10.1 to 5.10.2 Bumps `com.io7m.junit.version` from 5.10.1 to 5.10.2. Updates `org.junit.jupiter:junit-jupiter-api` from 5.10.1 to 5.10.2 - [Release notes](https://github.com/junit-team/junit5/releases) - [Commits](https://github.com/junit-team/junit5/compare/r5.10.1...r5.10.2) Updates `org.junit.jupiter:junit-jupiter-engine` from 5.10.1 to 5.10.2 - [Release notes](https://github.com/junit-team/junit5/releases) - [Commits](https://github.com/junit-team/junit5/compare/r5.10.1...r5.10.2) --- updated-dependencies: - dependency-name: org.junit.jupiter:junit-jupiter-api dependency-type: direct:production update-type: version-update:semver-patch - dependency-name: org.junit.jupiter:junit-jupiter-engine dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index b1580ee..0637162 100644 --- a/pom.xml +++ b/pom.xml @@ -36,7 +36,7 @@ 21 - 5.10.1 + 5.10.2 From 415035afc1fa887534358522152d5c97d8b146a8 Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Thu, 2 May 2024 21:53:53 +0000 Subject: [PATCH 19/32] Update codecov. --- .github/workflows/main.linux.temurin.lts.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.linux.temurin.lts.yml b/.github/workflows/main.linux.temurin.lts.yml index 3f93b69..c6da0d6 100644 --- a/.github/workflows/main.linux.temurin.lts.yml +++ b/.github/workflows/main.linux.temurin.lts.yml @@ -25,7 +25,7 @@ jobs: name: test-logs path: ./com.io7m.jbssio.tests/target/surefire-reports - name: Coverage - uses: codecov/codecov-action@v4.3.0 + uses: codecov/codecov-action@v4.3.1 with: token: ${{ secrets.CODECOV_TOKEN }} file: com.io7m.jbssio.tests/target/site/jacoco-aggregate/jacoco.xml From 0cc96facc320846d6daf2a2356d13deee2892979 Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Fri, 3 May 2024 16:16:29 +0000 Subject: [PATCH 20/32] Update workflows. --- .github/workflows/Tools.java | 162 ++++++++++++++++++ .github/workflows/deploy-release.sh | 58 +++++++ .github/workflows/deploy-snapshot.sh | 44 +++++ .../workflows/deploy.linux.temurin.lts.yml | 28 +++ .../workflows/main.linux.temurin.current.yml | 14 +- .github/workflows/main.linux.temurin.lts.yml | 22 ++- .../main.windows.temurin.current.yml | 14 +- .../workflows/main.windows.temurin.lts.yml | 14 +- 8 files changed, 352 insertions(+), 4 deletions(-) create mode 100644 .github/workflows/Tools.java create mode 100755 .github/workflows/deploy-release.sh create mode 100755 .github/workflows/deploy-snapshot.sh create mode 100644 .github/workflows/deploy.linux.temurin.lts.yml diff --git a/.github/workflows/Tools.java b/.github/workflows/Tools.java new file mode 100644 index 0000000..32c63c3 --- /dev/null +++ b/.github/workflows/Tools.java @@ -0,0 +1,162 @@ +/* + * Copyright © 2024 Mark Raynsford https://www.io7m.com + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR + * IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +import org.w3c.dom.Node; +import org.w3c.dom.NodeList; + +import javax.xml.parsers.DocumentBuilderFactory; +import javax.xml.xpath.XPathConstants; +import javax.xml.xpath.XPathFactory; +import java.io.File; +import java.io.IOException; +import java.util.List; +import java.util.TreeMap; + +public final class Tools +{ + private static final TreeMap OPS = + new TreeMap<>(); + + static { + final var opsList = List.of( + new ShowProjectVersion(), + new ShowProjectIsSnapshot() + ); + + for (final var op : opsList) { + OPS.put(op.name(), op); + } + } + + private Tools() + { + + } + + private interface OpType + { + String name(); + + void execute(String[] args) + throws Exception; + } + + private static String getProjectVersion( + final File file) + throws Exception + { + final var documentBuilders = + DocumentBuilderFactory.newInstance(); + final var documentBuilder = + documentBuilders.newDocumentBuilder(); + final var document = + documentBuilder.parse(file); + + final var xPathFactory = + XPathFactory.newInstance(); + final var xPath = + xPathFactory.newXPath(); + + final var nodes = + (NodeList) xPath.evaluate( + "//project/version", + document, + XPathConstants.NODESET + ); + + for (var i = 0; i < nodes.getLength(); i++) { + final var node = nodes.item(i); + if (node.getNodeType() == Node.ELEMENT_NODE) { + return node.getTextContent().trim(); + } + } + + throw new IOException( + "Could not locate a //project/version node!" + ); + } + + private static final class ShowProjectVersion implements OpType + { + ShowProjectVersion() + { + + } + + @Override + public String name() + { + return "ShowProjectVersion"; + } + + @Override + public void execute( + final String[] args) + throws Exception + { + System.out.print("IO7M_PROJECT_VERSION="); + System.out.println(getProjectVersion(new File(args[1]))); + } + } + + private static final class ShowProjectIsSnapshot implements OpType + { + ShowProjectIsSnapshot() + { + + } + + @Override + public String name() + { + return "ShowProjectIsSnapshot"; + } + + @Override + public void execute( + final String[] args) + throws Exception + { + System.out.print("IO7M_PROJECT_VERSION_IS_SNAPSHOT="); + System.out.println( + getProjectVersion(new File(args[1])).endsWith("-SNAPSHOT") + ); + } + } + + public static void main( + final String[] args) + throws Exception + { + if (args.length == 0) { + System.err.println("Usage: command"); + System.exit(1); + } + + final var op = OPS.get(args[0]); + if (op == null) { + System.err.println("Unrecognized command."); + System.err.println(" Must be one of:"); + for (final var name : OPS.keySet()) { + System.err.print(" "); + System.err.println(name); + } + System.exit(1); + } + + op.execute(args); + } +} \ No newline at end of file diff --git a/.github/workflows/deploy-release.sh b/.github/workflows/deploy-release.sh new file mode 100755 index 0000000..e25fc82 --- /dev/null +++ b/.github/workflows/deploy-release.sh @@ -0,0 +1,58 @@ +#!/bin/sh + +fatal() +{ + echo "fatal: $1" 1>&2 + exit 1 +} + +if [ -z "${MAVEN_CENTRAL_USERNAME}" ] +then + fatal "MAVEN_CENTRAL_USERNAME is not set." +fi + +if [ -z "${MAVEN_CENTRAL_PASSWORD}" ] +then + fatal "MAVEN_CENTRAL_PASSWORD is not set." +fi + +(cat < + + + + io7m + + true + github-ci-maven-rsa-key + true + + + + + + + sonatype-nexus-snapshots + ${MAVEN_CENTRAL_USERNAME} + ${MAVEN_CENTRAL_PASSWORD} + + + sonatype-nexus-staging + ${MAVEN_CENTRAL_USERNAME} + ${MAVEN_CENTRAL_PASSWORD} + + + +EOF +) > "$HOME/.m2/settings.xml" || fatal "could not update $HOME/.m2/settings.xml" + +exec mvn \ +-Dio7m.release=true \ +-Dio7m.deployment=true \ +--batch-mode \ +--strict-checksums \ +-DskipTests=true \ +-DskipITs=true deploy diff --git a/.github/workflows/deploy-snapshot.sh b/.github/workflows/deploy-snapshot.sh new file mode 100755 index 0000000..227c79c --- /dev/null +++ b/.github/workflows/deploy-snapshot.sh @@ -0,0 +1,44 @@ +#!/bin/sh + +fatal() +{ + echo "fatal: $1" 1>&2 + exit 1 +} + +if [ -z "${MAVEN_CENTRAL_USERNAME}" ] +then + fatal "MAVEN_CENTRAL_USERNAME is not set." +fi + +if [ -z "${MAVEN_CENTRAL_PASSWORD}" ] +then + fatal "MAVEN_CENTRAL_PASSWORD is not set." +fi + +(cat < + + + sonatype-nexus-snapshots + ${MAVEN_CENTRAL_USERNAME} + ${MAVEN_CENTRAL_PASSWORD} + + + sonatype-nexus-staging + ${MAVEN_CENTRAL_USERNAME} + ${MAVEN_CENTRAL_PASSWORD} + + + +EOF +) > "$HOME/.m2/settings.xml" || fatal "could not update $HOME/.m2/settings.xml" + +exec mvn \ +--batch-mode \ +--strict-checksums \ +-DskipTests=true \ +-DskipITs=true deploy diff --git a/.github/workflows/deploy.linux.temurin.lts.yml b/.github/workflows/deploy.linux.temurin.lts.yml new file mode 100644 index 0000000..4750ab9 --- /dev/null +++ b/.github/workflows/deploy.linux.temurin.lts.yml @@ -0,0 +1,28 @@ +name: deploy.linux.temurin.lts + +on: + push: + tags: [ com.io7m.jbssio-* ] + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + + - name: JDK + uses: actions/setup-java@v4 + with: + java-version: 21 + distribution: 'temurin' + + - name: Import signing key + env: + PGP_SIGNING_KEY: ${{ secrets.PGP_SIGNING_KEY }} + run: echo "${PGP_SIGNING_KEY}" | gpg --import + + - name: Deploy release + env: + MAVEN_CENTRAL_USERNAME: ${{ secrets.MAVEN_CENTRAL_USERNAME }} + MAVEN_CENTRAL_PASSWORD: ${{ secrets.MAVEN_CENTRAL_PASSWORD }} + run: .github/workflows/deploy-release.sh diff --git a/.github/workflows/main.linux.temurin.current.yml b/.github/workflows/main.linux.temurin.current.yml index 8a10375..ceb784a 100644 --- a/.github/workflows/main.linux.temurin.current.yml +++ b/.github/workflows/main.linux.temurin.current.yml @@ -11,16 +11,28 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 + - name: JDK uses: actions/setup-java@v4 with: java-version: 22 distribution: 'temurin' + + - name: Collect project version + id: project_version + run: java .github/workflows/Tools.java ShowProjectVersion pom.xml >> "$GITHUB_OUTPUT" + + - name: Collect project snapshot + id: project_is_snapshot + run: java .github/workflows/Tools.java ShowProjectIsSnapshot pom.xml >> "$GITHUB_OUTPUT" + - name: Build - run: mvn --errors clean verify site + run: mvn --batch-mode --strict-checksums --errors clean verify site + - name: Upload test logs uses: actions/upload-artifact@v4 if: always() with: name: test-logs path: ./com.io7m.jbssio.tests/target/surefire-reports + diff --git a/.github/workflows/main.linux.temurin.lts.yml b/.github/workflows/main.linux.temurin.lts.yml index c6da0d6..25e2929 100644 --- a/.github/workflows/main.linux.temurin.lts.yml +++ b/.github/workflows/main.linux.temurin.lts.yml @@ -11,21 +11,41 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 + - name: JDK uses: actions/setup-java@v4 with: java-version: 21 distribution: 'temurin' + + - name: Collect project version + id: project_version + run: java .github/workflows/Tools.java ShowProjectVersion pom.xml >> "$GITHUB_OUTPUT" + + - name: Collect project snapshot + id: project_is_snapshot + run: java .github/workflows/Tools.java ShowProjectIsSnapshot pom.xml >> "$GITHUB_OUTPUT" + - name: Build - run: mvn --errors clean verify site + run: mvn --batch-mode --strict-checksums --errors clean verify site + - name: Upload test logs uses: actions/upload-artifact@v4 if: always() with: name: test-logs path: ./com.io7m.jbssio.tests/target/surefire-reports + - name: Coverage uses: codecov/codecov-action@v4.3.1 with: token: ${{ secrets.CODECOV_TOKEN }} file: com.io7m.jbssio.tests/target/site/jacoco-aggregate/jacoco.xml + + - name: Deploy snapshot + if: ${{ steps.project_is_snapshot.outputs.IO7M_PROJECT_VERSION_IS_SNAPSHOT == 'true' }} + env: + MAVEN_CENTRAL_USERNAME: ${{ secrets.MAVEN_CENTRAL_USERNAME }} + MAVEN_CENTRAL_PASSWORD: ${{ secrets.MAVEN_CENTRAL_PASSWORD }} + run: .github/workflows/deploy-snapshot.sh + diff --git a/.github/workflows/main.windows.temurin.current.yml b/.github/workflows/main.windows.temurin.current.yml index a5d8bf9..c4ff910 100644 --- a/.github/workflows/main.windows.temurin.current.yml +++ b/.github/workflows/main.windows.temurin.current.yml @@ -11,16 +11,28 @@ jobs: runs-on: windows-latest steps: - uses: actions/checkout@v4 + - name: JDK uses: actions/setup-java@v4 with: java-version: 22 distribution: 'temurin' + + - name: Collect project version + id: project_version + run: java .github/workflows/Tools.java ShowProjectVersion pom.xml >> "$GITHUB_OUTPUT" + + - name: Collect project snapshot + id: project_is_snapshot + run: java .github/workflows/Tools.java ShowProjectIsSnapshot pom.xml >> "$GITHUB_OUTPUT" + - name: Build - run: mvn --errors clean verify site + run: mvn --batch-mode --strict-checksums --errors clean verify site + - name: Upload test logs uses: actions/upload-artifact@v4 if: always() with: name: test-logs path: ./com.io7m.jbssio.tests/target/surefire-reports + diff --git a/.github/workflows/main.windows.temurin.lts.yml b/.github/workflows/main.windows.temurin.lts.yml index 0f9beec..9de550f 100644 --- a/.github/workflows/main.windows.temurin.lts.yml +++ b/.github/workflows/main.windows.temurin.lts.yml @@ -11,16 +11,28 @@ jobs: runs-on: windows-latest steps: - uses: actions/checkout@v4 + - name: JDK uses: actions/setup-java@v4 with: java-version: 21 distribution: 'temurin' + + - name: Collect project version + id: project_version + run: java .github/workflows/Tools.java ShowProjectVersion pom.xml >> "$GITHUB_OUTPUT" + + - name: Collect project snapshot + id: project_is_snapshot + run: java .github/workflows/Tools.java ShowProjectIsSnapshot pom.xml >> "$GITHUB_OUTPUT" + - name: Build - run: mvn --errors clean verify site + run: mvn --batch-mode --strict-checksums --errors clean verify site + - name: Upload test logs uses: actions/upload-artifact@v4 if: always() with: name: test-logs path: ./com.io7m.jbssio.tests/target/surefire-reports + From 59b892cbaa98a342e4da5dd9a1f92b642511e2d4 Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Sat, 4 May 2024 18:46:31 +0000 Subject: [PATCH 21/32] Update workflows. --- .github/workflows/deploy.linux.temurin.lts.yml | 2 ++ .github/workflows/main.linux.temurin.current.yml | 2 ++ .github/workflows/main.linux.temurin.lts.yml | 2 ++ .github/workflows/main.windows.temurin.current.yml | 2 ++ .github/workflows/main.windows.temurin.lts.yml | 2 ++ 5 files changed, 10 insertions(+) diff --git a/.github/workflows/deploy.linux.temurin.lts.yml b/.github/workflows/deploy.linux.temurin.lts.yml index 4750ab9..38b7505 100644 --- a/.github/workflows/deploy.linux.temurin.lts.yml +++ b/.github/workflows/deploy.linux.temurin.lts.yml @@ -9,6 +9,8 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 + with: + submodules: true - name: JDK uses: actions/setup-java@v4 diff --git a/.github/workflows/main.linux.temurin.current.yml b/.github/workflows/main.linux.temurin.current.yml index ceb784a..82b28fe 100644 --- a/.github/workflows/main.linux.temurin.current.yml +++ b/.github/workflows/main.linux.temurin.current.yml @@ -11,6 +11,8 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 + with: + submodules: true - name: JDK uses: actions/setup-java@v4 diff --git a/.github/workflows/main.linux.temurin.lts.yml b/.github/workflows/main.linux.temurin.lts.yml index 25e2929..7f5680d 100644 --- a/.github/workflows/main.linux.temurin.lts.yml +++ b/.github/workflows/main.linux.temurin.lts.yml @@ -11,6 +11,8 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 + with: + submodules: true - name: JDK uses: actions/setup-java@v4 diff --git a/.github/workflows/main.windows.temurin.current.yml b/.github/workflows/main.windows.temurin.current.yml index c4ff910..91d335f 100644 --- a/.github/workflows/main.windows.temurin.current.yml +++ b/.github/workflows/main.windows.temurin.current.yml @@ -11,6 +11,8 @@ jobs: runs-on: windows-latest steps: - uses: actions/checkout@v4 + with: + submodules: true - name: JDK uses: actions/setup-java@v4 diff --git a/.github/workflows/main.windows.temurin.lts.yml b/.github/workflows/main.windows.temurin.lts.yml index 9de550f..bff5533 100644 --- a/.github/workflows/main.windows.temurin.lts.yml +++ b/.github/workflows/main.windows.temurin.lts.yml @@ -11,6 +11,8 @@ jobs: runs-on: windows-latest steps: - uses: actions/checkout@v4 + with: + submodules: true - name: JDK uses: actions/setup-java@v4 From 7170e376f5eb12beee07a865f92161ee955bd056 Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Sun, 5 May 2024 20:56:18 +0000 Subject: [PATCH 22/32] Update dependabot.yml. --- .github/dependabot.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 6b53613..7d0ce8a 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -5,12 +5,12 @@ updates: - package-ecosystem: "github-actions" directory: "/" schedule: - interval: "weekly" + interval: "daily" - package-ecosystem: "maven" directory: "/" schedule: - interval: "weekly" + interval: "daily" target-branch: "develop" ignore: From 38c7b5cf10d3ca87a41925d387877d5d7e3629a4 Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Sun, 5 May 2024 22:20:44 +0000 Subject: [PATCH 23/32] Update workflows. --- .../workflows/deploy.linux.temurin.lts.yml | 1 + .../workflows/main.linux.temurin.current.yml | 5 ++- .github/workflows/main.linux.temurin.lts.yml | 3 +- .../main.windows.temurin.current.yml | 5 ++- .../workflows/main.windows.temurin.lts.yml | 5 ++- .../workflows/pr.linux.temurin.current.yml | 41 +++++++++++++++++++ .github/workflows/pr.linux.temurin.lts.yml | 41 +++++++++++++++++++ .../workflows/pr.windows.temurin.current.yml | 41 +++++++++++++++++++ .github/workflows/pr.windows.temurin.lts.yml | 41 +++++++++++++++++++ 9 files changed, 175 insertions(+), 8 deletions(-) create mode 100644 .github/workflows/pr.linux.temurin.current.yml create mode 100644 .github/workflows/pr.linux.temurin.lts.yml create mode 100644 .github/workflows/pr.windows.temurin.current.yml create mode 100644 .github/workflows/pr.windows.temurin.lts.yml diff --git a/.github/workflows/deploy.linux.temurin.lts.yml b/.github/workflows/deploy.linux.temurin.lts.yml index 38b7505..000440c 100644 --- a/.github/workflows/deploy.linux.temurin.lts.yml +++ b/.github/workflows/deploy.linux.temurin.lts.yml @@ -28,3 +28,4 @@ jobs: MAVEN_CENTRAL_USERNAME: ${{ secrets.MAVEN_CENTRAL_USERNAME }} MAVEN_CENTRAL_PASSWORD: ${{ secrets.MAVEN_CENTRAL_PASSWORD }} run: .github/workflows/deploy-release.sh + diff --git a/.github/workflows/main.linux.temurin.current.yml b/.github/workflows/main.linux.temurin.current.yml index 82b28fe..483a4d7 100644 --- a/.github/workflows/main.linux.temurin.current.yml +++ b/.github/workflows/main.linux.temurin.current.yml @@ -1,10 +1,9 @@ + name: main.linux.temurin.current on: push: branches: [ develop, feature/*, release/* ] - pull_request: - branches: [ develop ] jobs: build: @@ -38,3 +37,5 @@ jobs: name: test-logs path: ./com.io7m.jbssio.tests/target/surefire-reports + + diff --git a/.github/workflows/main.linux.temurin.lts.yml b/.github/workflows/main.linux.temurin.lts.yml index 7f5680d..b1aa92b 100644 --- a/.github/workflows/main.linux.temurin.lts.yml +++ b/.github/workflows/main.linux.temurin.lts.yml @@ -1,10 +1,9 @@ + name: main.linux.temurin.lts on: push: branches: [ develop, feature/*, release/* ] - pull_request: - branches: [ develop ] jobs: build: diff --git a/.github/workflows/main.windows.temurin.current.yml b/.github/workflows/main.windows.temurin.current.yml index 91d335f..c85d6a7 100644 --- a/.github/workflows/main.windows.temurin.current.yml +++ b/.github/workflows/main.windows.temurin.current.yml @@ -1,10 +1,9 @@ + name: main.windows.temurin.current on: push: branches: [ develop, feature/*, release/* ] - pull_request: - branches: [ develop ] jobs: build: @@ -38,3 +37,5 @@ jobs: name: test-logs path: ./com.io7m.jbssio.tests/target/surefire-reports + + diff --git a/.github/workflows/main.windows.temurin.lts.yml b/.github/workflows/main.windows.temurin.lts.yml index bff5533..db00241 100644 --- a/.github/workflows/main.windows.temurin.lts.yml +++ b/.github/workflows/main.windows.temurin.lts.yml @@ -1,10 +1,9 @@ + name: main.windows.temurin.lts on: push: branches: [ develop, feature/*, release/* ] - pull_request: - branches: [ develop ] jobs: build: @@ -38,3 +37,5 @@ jobs: name: test-logs path: ./com.io7m.jbssio.tests/target/surefire-reports + + diff --git a/.github/workflows/pr.linux.temurin.current.yml b/.github/workflows/pr.linux.temurin.current.yml new file mode 100644 index 0000000..5096083 --- /dev/null +++ b/.github/workflows/pr.linux.temurin.current.yml @@ -0,0 +1,41 @@ + +name: pr.linux.temurin.current + +on: + pull_request: + branches: [ develop, feature/*, release/* ] + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + submodules: true + + - name: JDK + uses: actions/setup-java@v4 + with: + java-version: 22 + distribution: 'temurin' + + - name: Collect project version + id: project_version + run: java .github/workflows/Tools.java ShowProjectVersion pom.xml >> "$GITHUB_OUTPUT" + + - name: Collect project snapshot + id: project_is_snapshot + run: java .github/workflows/Tools.java ShowProjectIsSnapshot pom.xml >> "$GITHUB_OUTPUT" + + - name: Build + run: mvn --batch-mode --strict-checksums --errors clean verify site + + - name: Upload test logs + uses: actions/upload-artifact@v4 + if: always() + with: + name: test-logs + path: ./com.io7m.jbssio.tests/target/surefire-reports + + + diff --git a/.github/workflows/pr.linux.temurin.lts.yml b/.github/workflows/pr.linux.temurin.lts.yml new file mode 100644 index 0000000..7aa0a70 --- /dev/null +++ b/.github/workflows/pr.linux.temurin.lts.yml @@ -0,0 +1,41 @@ + +name: pr.linux.temurin.lts + +on: + pull_request: + branches: [ develop, feature/*, release/* ] + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + submodules: true + + - name: JDK + uses: actions/setup-java@v4 + with: + java-version: 21 + distribution: 'temurin' + + - name: Collect project version + id: project_version + run: java .github/workflows/Tools.java ShowProjectVersion pom.xml >> "$GITHUB_OUTPUT" + + - name: Collect project snapshot + id: project_is_snapshot + run: java .github/workflows/Tools.java ShowProjectIsSnapshot pom.xml >> "$GITHUB_OUTPUT" + + - name: Build + run: mvn --batch-mode --strict-checksums --errors clean verify site + + - name: Upload test logs + uses: actions/upload-artifact@v4 + if: always() + with: + name: test-logs + path: ./com.io7m.jbssio.tests/target/surefire-reports + + + diff --git a/.github/workflows/pr.windows.temurin.current.yml b/.github/workflows/pr.windows.temurin.current.yml new file mode 100644 index 0000000..d81614c --- /dev/null +++ b/.github/workflows/pr.windows.temurin.current.yml @@ -0,0 +1,41 @@ + +name: pr.windows.temurin.current + +on: + pull_request: + branches: [ develop, feature/*, release/* ] + +jobs: + build: + runs-on: windows-latest + steps: + - uses: actions/checkout@v4 + with: + submodules: true + + - name: JDK + uses: actions/setup-java@v4 + with: + java-version: 22 + distribution: 'temurin' + + - name: Collect project version + id: project_version + run: java .github/workflows/Tools.java ShowProjectVersion pom.xml >> "$GITHUB_OUTPUT" + + - name: Collect project snapshot + id: project_is_snapshot + run: java .github/workflows/Tools.java ShowProjectIsSnapshot pom.xml >> "$GITHUB_OUTPUT" + + - name: Build + run: mvn --batch-mode --strict-checksums --errors clean verify site + + - name: Upload test logs + uses: actions/upload-artifact@v4 + if: always() + with: + name: test-logs + path: ./com.io7m.jbssio.tests/target/surefire-reports + + + diff --git a/.github/workflows/pr.windows.temurin.lts.yml b/.github/workflows/pr.windows.temurin.lts.yml new file mode 100644 index 0000000..c4c7bcf --- /dev/null +++ b/.github/workflows/pr.windows.temurin.lts.yml @@ -0,0 +1,41 @@ + +name: pr.windows.temurin.lts + +on: + pull_request: + branches: [ develop, feature/*, release/* ] + +jobs: + build: + runs-on: windows-latest + steps: + - uses: actions/checkout@v4 + with: + submodules: true + + - name: JDK + uses: actions/setup-java@v4 + with: + java-version: 21 + distribution: 'temurin' + + - name: Collect project version + id: project_version + run: java .github/workflows/Tools.java ShowProjectVersion pom.xml >> "$GITHUB_OUTPUT" + + - name: Collect project snapshot + id: project_is_snapshot + run: java .github/workflows/Tools.java ShowProjectIsSnapshot pom.xml >> "$GITHUB_OUTPUT" + + - name: Build + run: mvn --batch-mode --strict-checksums --errors clean verify site + + - name: Upload test logs + uses: actions/upload-artifact@v4 + if: always() + with: + name: test-logs + path: ./com.io7m.jbssio.tests/target/surefire-reports + + + From 45e7ecf5c72d4dfe75e7183172357b0ac529f0e5 Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Mon, 6 May 2024 22:27:45 +0000 Subject: [PATCH 24/32] Update workflows. --- .github/workflows/deploy-snapshot.sh | 6 ++++++ .github/workflows/deploy.linux.temurin.lts.yml | 12 ++++++++++-- .github/workflows/main.linux.temurin.lts.yml | 7 +++++++ 3 files changed, 23 insertions(+), 2 deletions(-) diff --git a/.github/workflows/deploy-snapshot.sh b/.github/workflows/deploy-snapshot.sh index 227c79c..6d90615 100755 --- a/.github/workflows/deploy-snapshot.sh +++ b/.github/workflows/deploy-snapshot.sh @@ -21,6 +21,12 @@ fi xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> + + + + io7m-oci-image + + sonatype-nexus-snapshots diff --git a/.github/workflows/deploy.linux.temurin.lts.yml b/.github/workflows/deploy.linux.temurin.lts.yml index 000440c..0efe70a 100644 --- a/.github/workflows/deploy.linux.temurin.lts.yml +++ b/.github/workflows/deploy.linux.temurin.lts.yml @@ -1,3 +1,4 @@ + name: deploy.linux.temurin.lts on: @@ -16,12 +17,19 @@ jobs: uses: actions/setup-java@v4 with: java-version: 21 - distribution: 'temurin' + distribution: temurin - name: Import signing key env: PGP_SIGNING_KEY: ${{ secrets.PGP_SIGNING_KEY }} - run: echo "${PGP_SIGNING_KEY}" | gpg --import + run: echo ${PGP_SIGNING_KEY} | gpg --import + + - name: Log in to Quay.io. + uses: redhat-actions/podman-login@v1.7 + with: + username: ${{ secrets.QUAY_IO_USERNAME }} + password: ${{ secrets.QUAY_IO_PASSWORD }} + registry: 'quay.io' - name: Deploy release env: diff --git a/.github/workflows/main.linux.temurin.lts.yml b/.github/workflows/main.linux.temurin.lts.yml index b1aa92b..f3c19bf 100644 --- a/.github/workflows/main.linux.temurin.lts.yml +++ b/.github/workflows/main.linux.temurin.lts.yml @@ -43,6 +43,13 @@ jobs: token: ${{ secrets.CODECOV_TOKEN }} file: com.io7m.jbssio.tests/target/site/jacoco-aggregate/jacoco.xml + - name: Log in to Quay.io. + uses: redhat-actions/podman-login@v1.7 + with: + username: ${{ secrets.QUAY_IO_USERNAME }} + password: ${{ secrets.QUAY_IO_PASSWORD }} + registry: 'quay.io' + - name: Deploy snapshot if: ${{ steps.project_is_snapshot.outputs.IO7M_PROJECT_VERSION_IS_SNAPSHOT == 'true' }} env: From 39c70435df4ebe086e05a5b3fac3254b8ea67efe Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Tue, 7 May 2024 16:01:05 +0000 Subject: [PATCH 25/32] Update .gitignore. --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 2a9fd24..a1299be 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,5 @@ .idea pom.xml.versionsBackup target +.jqwik-database +dependency-reduced-pom.xml From ad61350db69e802ff6e5058c7252cfc7fd719447 Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Tue, 7 May 2024 16:01:42 +0000 Subject: [PATCH 26/32] Update .gitignore. --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index a1299be..3f4ba9e 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ pom.xml.versionsBackup target .jqwik-database dependency-reduced-pom.xml +pom.xml.versionsBackup From af26b526ab0a743d909452c442377bba0d7674e0 Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Tue, 7 May 2024 16:04:16 +0000 Subject: [PATCH 27/32] Update README --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 0148b79..cb5b037 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,7 @@ jbssio [![Maven Central](https://img.shields.io/maven-central/v/com.io7m.jbssio/com.io7m.jbssio.svg?style=flat-square)](http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22com.io7m.jbssio%22) [![Maven Central (snapshot)](https://img.shields.io/nexus/s/com.io7m.jbssio/com.io7m.jbssio?server=https%3A%2F%2Fs01.oss.sonatype.org&style=flat-square)](https://s01.oss.sonatype.org/content/repositories/snapshots/com/io7m/jbssio/) [![Codecov](https://img.shields.io/codecov/c/github/io7m-com/jbssio.svg?style=flat-square)](https://codecov.io/gh/io7m-com/jbssio) +![Java Version](https://img.shields.io/badge/21-java?label=java&color=007fff) ![com.io7m.jbssio](./src/site/resources/jbssio.jpg?raw=true) From 1e3ca2e4af4485411f85bba9a1cc7ae847ba46c8 Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Tue, 7 May 2024 17:28:17 +0000 Subject: [PATCH 28/32] Update README. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index cb5b037..5c0af33 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ jbssio [![Maven Central](https://img.shields.io/maven-central/v/com.io7m.jbssio/com.io7m.jbssio.svg?style=flat-square)](http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22com.io7m.jbssio%22) [![Maven Central (snapshot)](https://img.shields.io/nexus/s/com.io7m.jbssio/com.io7m.jbssio?server=https%3A%2F%2Fs01.oss.sonatype.org&style=flat-square)](https://s01.oss.sonatype.org/content/repositories/snapshots/com/io7m/jbssio/) [![Codecov](https://img.shields.io/codecov/c/github/io7m-com/jbssio.svg?style=flat-square)](https://codecov.io/gh/io7m-com/jbssio) -![Java Version](https://img.shields.io/badge/21-java?label=java&color=007fff) +![Java Version](https://img.shields.io/badge/21-java?label=java&color=e6c35c) ![com.io7m.jbssio](./src/site/resources/jbssio.jpg?raw=true) From cfc3455d846e4cf55438d8f9b8c714d9d79de251 Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Tue, 7 May 2024 18:54:17 +0000 Subject: [PATCH 29/32] Update workflows. --- .github/workflows/deploy.linux.temurin.lts.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy.linux.temurin.lts.yml b/.github/workflows/deploy.linux.temurin.lts.yml index 0efe70a..a0a8658 100644 --- a/.github/workflows/deploy.linux.temurin.lts.yml +++ b/.github/workflows/deploy.linux.temurin.lts.yml @@ -22,7 +22,7 @@ jobs: - name: Import signing key env: PGP_SIGNING_KEY: ${{ secrets.PGP_SIGNING_KEY }} - run: echo ${PGP_SIGNING_KEY} | gpg --import + run: echo "${PGP_SIGNING_KEY}" | gpg --import - name: Log in to Quay.io. uses: redhat-actions/podman-login@v1.7 From 6a8eac1cd58f4d75511b8b98898727985d5466aa Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 9 May 2024 14:08:04 +0000 Subject: [PATCH 30/32] Bump com.io7m.ieee754b16:com.io7m.ieee754b16.core from 3.0.0 to 3.0.1 Bumps [com.io7m.ieee754b16:com.io7m.ieee754b16.core](https://github.com/io7m-com/ieee754b16) from 3.0.0 to 3.0.1. - [Changelog](https://github.com/io7m-com/ieee754b16/blob/develop/README-CHANGES.xml) - [Commits](https://github.com/io7m-com/ieee754b16/compare/com.io7m.ieee754b16-3.0.0...com.io7m.ieee754b16-3.0.1) --- updated-dependencies: - dependency-name: com.io7m.ieee754b16:com.io7m.ieee754b16.core dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 0637162..1356796 100644 --- a/pom.xml +++ b/pom.xml @@ -122,7 +122,7 @@ com.io7m.ieee754b16 com.io7m.ieee754b16.core - 3.0.0 + 3.0.1 org.junit.jupiter From 050d1a2169f802a6e357e7aff29661c9f181023c Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Fri, 10 May 2024 16:35:37 +0000 Subject: [PATCH 31/32] Set JDK 17, update README. --- README.in | 140 +++++++++++++++++++++++++++++++ README.md | 143 +++++++++++++++++++++++++++++++- pom.xml | 2 +- src/site/resources/features.xml | 10 +-- 4 files changed, 288 insertions(+), 7 deletions(-) create mode 100644 README.in diff --git a/README.in b/README.in new file mode 100644 index 0000000..e79b817 --- /dev/null +++ b/README.in @@ -0,0 +1,140 @@ + +## jbssio + +The `jbssio` package implements a set of types and functions for efficient, +structural binary I/O. + +## Features + +* Efficient binary I/O over streams, channels, and byte buffers. +* Nested, bounded stream abstraction to increase readability of code and + improve diagnostic information. +* High coverage test suite. +* [OSGi-ready](https://www.osgi.org/) +* [JPMS-ready](https://en.wikipedia.org/wiki/Java_Platform_Module_System) +* ISC license. + +## Usage + +The `jbssio` package provides imperative _reader_ and _writer_ +abstractions. Readers and writers may be _sequential_, meaning that +they encapsulate a _stream_ in which only forward seeking is allowed, +or _random access_, meaning that they encapsulate a resource that +allows for arbitrary forwards and backwards seeking. The API attempts, as +much as is possible, to present a common API for both _sequential_ +and _random access_ so that code using _readers_ and _writers_ +can potentially be agnostic of the seekability of the underlying resources. +Current implementations can encapsulate: + +* `java.io.OutputStream` +* `java.io.InputStream` +* `java.nio.channels.SeekableByteChannel` +* `java.nio.ByteBuffer` + +_Readers_ and _writers_ are explicitly _nested_: All +offsets/positions of _readers_ and _writers_ are given relative +to their _parent_. A _reader_ or _writer_ with no parent +effectively works with _absolute_ positions within an encapsulated +resource. _Readers_ and _writers_ may be given explicit _bounds_ +to limit the region of the resource from which they may read or write. +Bounds, combined with nesting, allow for very easy-to-understand code +when parsing complex binary structures. Individual _readers_ and +_writers_ are assigned names as they are created, and these names are +appended together during nesting to construct detailed diagnostic messages +when errors occur. For example: + +``` +java.io.IOException: Out of bounds. + Reader URI: file://tmp/example.data + Reader path: header/info:size + Reader bounds: absolute [0x0, 0x10) + Target offset: absolute 0x16 + Offset: absolute 0x0 +``` + +The above message clearly indicates that the code that was attempting +to read the `size` field, of the `info` member of the +`header` structure, ended up trying to read more data than the +_reader_ was configured to allow: The _reader_ was specified +to be allowed to read within the bounds `[0x0, 0x10)` but the code +tried to read beyond these bounds. Note that _readers_ and _writers_ +do _not_ know anything about the actual binary structures being parsed; +the programmer specifies names that correspond to the structures that the +programmer is trying to parse, and the _reader_ and _writer_ +implementations use these names in an attempt to construct useful +diagnostics. + +_Readers_ and _writers_ operate on their underlying resources +using simple, explicit read/write methods. For example, the `readU32BE` +method defined for _readers_ reads a single, unsigned, big-endian, +32-bit integer from the current position. Methods exist for all of the +common machine types. Additionally, _readers_ and _writers_ +contain convenient methods for aligning data, and for reading arbitrary byte +sequences. Calls to _reader_ or _writer_ methods advance the +current position of the _reader_ or _writer_. + +### Reading Data + +Retrieve a `BSSReaderType` and use it to read data: + +``` +ServiceLoader.load(BSSReaderProviderType.class) + .findFirst() + .orElseThrow(() -> new IllegalStateException("No reader service available")); + +try (var channel = Files.newByteChannel(path, READ)) { + // Create an unbounded reader that will read from the start of the channel + try (var reader = readers.createReaderFromChannel(pathURI, channel, "root")) { + + // Create a reader that is permitted to read [0, 8) relative to "reader" + try (var sr = reader.createSubReaderAtBounded("head", 0L, 8L)) { + var x = sr.readS32BE(); + var y = sr.readS32BE(); + } + + // Create a reader that is permitted to read [8, 16) relative to "reader" + try (var sr = reader.createSubReaderAtBounded("body", 8L, 16L)) { + var a = sr.readS32BE(); + var b = sr.readS32BE(); + var c = sr.readS32BE(); + var d = sr.readS32BE(); + } + } +} +``` + +Using `ServiceLoader` is _not_ required: The +various providers in the `jbssio` package can +be used via `ServiceLoader`, via OSGi declarative +services, or simply instantiated manually. See the JavaDoc. + +### Writing Data + +Retrieve a `BSSWriterType` and use it to write data: + +``` +final var readers = + ServiceLoader.load(BSSWriterProviderType.class) + .findFirst() + .orElseThrow(() -> new IllegalStateException("No writer service available")); + +try (var channel = Files.newByteChannel(path, WRITE, CREATE)) { + // Create an unbounded writer that will write from the start of the channel + try (var writer = writers.createWriterFromChannel(pathURI, channel, "root")) { + + // Create a writer that is permitted to write [0, 8) relative to "writer" + try (var sw = writer.createSubWriterAtBounded("head", 0L, 8L)) { + sw.writeS32BE(0x10203040L); + sw.writeS32BE(0x50607080L); + } + + // Create a writer that is permitted to write [8, 16) relative to "writer" + try (var sw = writer.createSubWriterAtBounded("body", 8L, 16L)) { + sw.writeS32BE(0x90909090L); + sw.writeS32BE(0x80808080L); + sw.writeS32BE(0xa0a0a0a0L); + sw.writeS32BE(0xb0b0b0b0L); + } + } +} +``` diff --git a/README.md b/README.md index 5c0af33..45e003c 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ jbssio [![Maven Central](https://img.shields.io/maven-central/v/com.io7m.jbssio/com.io7m.jbssio.svg?style=flat-square)](http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22com.io7m.jbssio%22) [![Maven Central (snapshot)](https://img.shields.io/nexus/s/com.io7m.jbssio/com.io7m.jbssio?server=https%3A%2F%2Fs01.oss.sonatype.org&style=flat-square)](https://s01.oss.sonatype.org/content/repositories/snapshots/com/io7m/jbssio/) [![Codecov](https://img.shields.io/codecov/c/github/io7m-com/jbssio.svg?style=flat-square)](https://codecov.io/gh/io7m-com/jbssio) -![Java Version](https://img.shields.io/badge/21-java?label=java&color=e6c35c) +![Java Version](https://img.shields.io/badge/17-java?label=java&color=e65cc3) ![com.io7m.jbssio](./src/site/resources/jbssio.jpg?raw=true) @@ -14,3 +14,144 @@ jbssio | OpenJDK (Temurin) LTS | Linux | [![Build (OpenJDK (Temurin) LTS, Linux)](https://img.shields.io/github/actions/workflow/status/io7m-com/jbssio/main.linux.temurin.lts.yml)](https://www.github.com/io7m-com/jbssio/actions?query=workflow%3Amain.linux.temurin.lts)| | OpenJDK (Temurin) Current | Windows | [![Build (OpenJDK (Temurin) Current, Windows)](https://img.shields.io/github/actions/workflow/status/io7m-com/jbssio/main.windows.temurin.current.yml)](https://www.github.com/io7m-com/jbssio/actions?query=workflow%3Amain.windows.temurin.current)| | OpenJDK (Temurin) LTS | Windows | [![Build (OpenJDK (Temurin) LTS, Windows)](https://img.shields.io/github/actions/workflow/status/io7m-com/jbssio/main.windows.temurin.lts.yml)](https://www.github.com/io7m-com/jbssio/actions?query=workflow%3Amain.windows.temurin.lts)| + +## jbssio + +The `jbssio` package implements a set of types and functions for efficient, +structural binary I/O. + +## Features + +* Efficient binary I/O over streams, channels, and byte buffers. +* Nested, bounded stream abstraction to increase readability of code and + improve diagnostic information. +* High coverage test suite. +* [OSGi-ready](https://www.osgi.org/) +* [JPMS-ready](https://en.wikipedia.org/wiki/Java_Platform_Module_System) +* ISC license. + +## Usage + +The `jbssio` package provides imperative _reader_ and _writer_ +abstractions. Readers and writers may be _sequential_, meaning that +they encapsulate a _stream_ in which only forward seeking is allowed, +or _random access_, meaning that they encapsulate a resource that +allows for arbitrary forwards and backwards seeking. The API attempts, as +much as is possible, to present a common API for both _sequential_ +and _random access_ so that code using _readers_ and _writers_ +can potentially be agnostic of the seekability of the underlying resources. +Current implementations can encapsulate: + +* `java.io.OutputStream` +* `java.io.InputStream` +* `java.nio.channels.SeekableByteChannel` +* `java.nio.ByteBuffer` + +_Readers_ and _writers_ are explicitly _nested_: All +offsets/positions of _readers_ and _writers_ are given relative +to their _parent_. A _reader_ or _writer_ with no parent +effectively works with _absolute_ positions within an encapsulated +resource. _Readers_ and _writers_ may be given explicit _bounds_ +to limit the region of the resource from which they may read or write. +Bounds, combined with nesting, allow for very easy-to-understand code +when parsing complex binary structures. Individual _readers_ and +_writers_ are assigned names as they are created, and these names are +appended together during nesting to construct detailed diagnostic messages +when errors occur. For example: + +``` +java.io.IOException: Out of bounds. + Reader URI: file://tmp/example.data + Reader path: header/info:size + Reader bounds: absolute [0x0, 0x10) + Target offset: absolute 0x16 + Offset: absolute 0x0 +``` + +The above message clearly indicates that the code that was attempting +to read the `size` field, of the `info` member of the +`header` structure, ended up trying to read more data than the +_reader_ was configured to allow: The _reader_ was specified +to be allowed to read within the bounds `[0x0, 0x10)` but the code +tried to read beyond these bounds. Note that _readers_ and _writers_ +do _not_ know anything about the actual binary structures being parsed; +the programmer specifies names that correspond to the structures that the +programmer is trying to parse, and the _reader_ and _writer_ +implementations use these names in an attempt to construct useful +diagnostics. + +_Readers_ and _writers_ operate on their underlying resources +using simple, explicit read/write methods. For example, the `readU32BE` +method defined for _readers_ reads a single, unsigned, big-endian, +32-bit integer from the current position. Methods exist for all of the +common machine types. Additionally, _readers_ and _writers_ +contain convenient methods for aligning data, and for reading arbitrary byte +sequences. Calls to _reader_ or _writer_ methods advance the +current position of the _reader_ or _writer_. + +### Reading Data + +Retrieve a `BSSReaderType` and use it to read data: + +``` +ServiceLoader.load(BSSReaderProviderType.class) + .findFirst() + .orElseThrow(() -> new IllegalStateException("No reader service available")); + +try (var channel = Files.newByteChannel(path, READ)) { + // Create an unbounded reader that will read from the start of the channel + try (var reader = readers.createReaderFromChannel(pathURI, channel, "root")) { + + // Create a reader that is permitted to read [0, 8) relative to "reader" + try (var sr = reader.createSubReaderAtBounded("head", 0L, 8L)) { + var x = sr.readS32BE(); + var y = sr.readS32BE(); + } + + // Create a reader that is permitted to read [8, 16) relative to "reader" + try (var sr = reader.createSubReaderAtBounded("body", 8L, 16L)) { + var a = sr.readS32BE(); + var b = sr.readS32BE(); + var c = sr.readS32BE(); + var d = sr.readS32BE(); + } + } +} +``` + +Using `ServiceLoader` is _not_ required: The +various providers in the `jbssio` package can +be used via `ServiceLoader`, via OSGi declarative +services, or simply instantiated manually. See the JavaDoc. + +### Writing Data + +Retrieve a `BSSWriterType` and use it to write data: + +``` +final var readers = + ServiceLoader.load(BSSWriterProviderType.class) + .findFirst() + .orElseThrow(() -> new IllegalStateException("No writer service available")); + +try (var channel = Files.newByteChannel(path, WRITE, CREATE)) { + // Create an unbounded writer that will write from the start of the channel + try (var writer = writers.createWriterFromChannel(pathURI, channel, "root")) { + + // Create a writer that is permitted to write [0, 8) relative to "writer" + try (var sw = writer.createSubWriterAtBounded("head", 0L, 8L)) { + sw.writeS32BE(0x10203040L); + sw.writeS32BE(0x50607080L); + } + + // Create a writer that is permitted to write [8, 16) relative to "writer" + try (var sw = writer.createSubWriterAtBounded("body", 8L, 16L)) { + sw.writeS32BE(0x90909090L); + sw.writeS32BE(0x80808080L); + sw.writeS32BE(0xa0a0a0a0L); + sw.writeS32BE(0xb0b0b0b0L); + } + } +} +``` + diff --git a/pom.xml b/pom.xml index 1356796..f49f5c7 100644 --- a/pom.xml +++ b/pom.xml @@ -33,7 +33,7 @@ 2.0.0 - 21 + 17 5.10.2 diff --git a/src/site/resources/features.xml b/src/site/resources/features.xml index ec1e75d..b2fa0ee 100644 --- a/src/site/resources/features.xml +++ b/src/site/resources/features.xml @@ -5,10 +5,10 @@
  • Efficient binary I/O over streams, channels, and byte buffers.
  • Nested, bounded stream abstraction to increase readability of code and improve diagnostic information.
  • -
  • Fully documented (JavaDoc)
  • -
  • OSGi-ready
  • -
  • JPMS-ready
  • -
  • ISC license
  • -
  • High-coverage automated test suite
  • +
  • Fully documented (JavaDoc).
  • +
  • OSGi-ready.
  • +
  • JPMS-ready.
  • +
  • ISC license.
  • +
  • High-coverage automated test suite.
  • From 3801d0e3b8596dfc429ee08fb95ab2d5ee894bd5 Mon Sep 17 00:00:00 2001 From: Mark Raynsford Date: Fri, 10 May 2024 16:40:28 +0000 Subject: [PATCH 32/32] Mark release 2.1.0 --- README-CHANGES.xml | 39 ++++++++++++++++++----------- com.io7m.jbssio.api/pom.xml | 2 +- com.io7m.jbssio.ext.bounded/pom.xml | 2 +- com.io7m.jbssio.tests/pom.xml | 2 +- com.io7m.jbssio.vanilla/pom.xml | 2 +- pom.xml | 4 +-- 6 files changed, 30 insertions(+), 21 deletions(-) diff --git a/README-CHANGES.xml b/README-CHANGES.xml index 705b3f4..761638b 100644 --- a/README-CHANGES.xml +++ b/README-CHANGES.xml @@ -15,12 +15,29 @@ + + + + + + + + + - + + + + + + + + + @@ -35,21 +52,13 @@ - + - - - - - - - - - - - - - + + + + + diff --git a/com.io7m.jbssio.api/pom.xml b/com.io7m.jbssio.api/pom.xml index 4c80ee7..f62a9d0 100644 --- a/com.io7m.jbssio.api/pom.xml +++ b/com.io7m.jbssio.api/pom.xml @@ -9,7 +9,7 @@ com.io7m.jbssio com.io7m.jbssio - 2.1.0-SNAPSHOT + 2.1.0 com.io7m.jbssio.api diff --git a/com.io7m.jbssio.ext.bounded/pom.xml b/com.io7m.jbssio.ext.bounded/pom.xml index 80aad8b..586bf64 100644 --- a/com.io7m.jbssio.ext.bounded/pom.xml +++ b/com.io7m.jbssio.ext.bounded/pom.xml @@ -9,7 +9,7 @@ com.io7m.jbssio com.io7m.jbssio - 2.1.0-SNAPSHOT + 2.1.0 com.io7m.jbssio.ext.bounded diff --git a/com.io7m.jbssio.tests/pom.xml b/com.io7m.jbssio.tests/pom.xml index a68512e..e9509db 100644 --- a/com.io7m.jbssio.tests/pom.xml +++ b/com.io7m.jbssio.tests/pom.xml @@ -9,7 +9,7 @@ com.io7m.jbssio com.io7m.jbssio - 2.1.0-SNAPSHOT + 2.1.0 com.io7m.jbssio.tests diff --git a/com.io7m.jbssio.vanilla/pom.xml b/com.io7m.jbssio.vanilla/pom.xml index 7f7079b..a4bd5f6 100644 --- a/com.io7m.jbssio.vanilla/pom.xml +++ b/com.io7m.jbssio.vanilla/pom.xml @@ -9,7 +9,7 @@ com.io7m.jbssio com.io7m.jbssio - 2.1.0-SNAPSHOT + 2.1.0 com.io7m.jbssio.vanilla diff --git a/pom.xml b/pom.xml index f49f5c7..bf63a90 100644 --- a/pom.xml +++ b/pom.xml @@ -14,7 +14,7 @@ com.io7m.jbssio com.io7m.jbssio - 2.1.0-SNAPSHOT + 2.1.0 pom com.io7m.jbssio @@ -148,4 +148,4 @@ - + \ No newline at end of file