Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions .github/workflows/api-check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: 'API Check'

on:
pull_request:
branches: [ 'main' ]

jobs:
api-check:
name: 'API Check'
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- name: Set up Java
uses: actions/setup-java@v5
with:
java-version: '21'
distribution: 'zulu'

- name: Binary Compatibility
run: ./gradlew checkLegacyAbi

- name: Documentation
if: success() || failure()
run: ./gradlew dokkaGenerate
61 changes: 60 additions & 1 deletion .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ on:
branches: [ 'main', '[0-9]+.[0-9]+', '[0-9]+.[0-9]+.[0-9]+' ]

env:
GIT_REF: ${{ github.ref }}
ORG_GRADLE_PROJECT_signingInMemoryKey: ${{ secrets.SIGNING_KEY }}
ORG_GRADLE_PROJECT_signingInMemoryKeyId: ${{ secrets.SIGNING_KEY_ID }}
ORG_GRADLE_PROJECT_signingInMemoryKeyPassword: ${{ secrets.SIGNING_PASSWORD }}
Expand All @@ -17,16 +16,25 @@ jobs:
windows:
name: "Publish: multiplatform, jvm, js, linux, mingw"
runs-on: windows-latest

steps:
- uses: actions/checkout@v4

- name: 'Set Gradle project version'
if: ${{ startsWith(github.ref, 'refs/tags/v') }}
shell: bash
run: echo "ORG_GRADLE_PROJECT_version=${GITHUB_REF_NAME#v}" >> $GITHUB_ENV

- name: Set up Java
uses: actions/setup-java@v5
with:
java-version: '21'
distribution: 'zulu'

- name: Clean
if: ${{ false }} # Skip, since it fails on Windows: https://youtrack.jetbrains.com/issue/KT-50545/
run: .\gradlew.bat clean

- name: Publish to Maven
run: >-
.\gradlew.bat
Expand All @@ -40,15 +48,24 @@ jobs:
macos:
name: "Publish: macos, ios, watchos"
runs-on: macos-latest

steps:
- uses: actions/checkout@v4

- name: 'Set Gradle project version'
if: ${{ startsWith(github.ref, 'refs/tags/v') }}
shell: bash
run: echo "ORG_GRADLE_PROJECT_version=${GITHUB_REF_NAME#v}" >> $GITHUB_ENV

- name: Set up Java
uses: actions/setup-java@v5
with:
java-version: '21'
distribution: 'zulu'

- name: Clean
run: ./gradlew clean

- name: Publish to Maven
run: >-
./gradlew
Expand All @@ -65,3 +82,45 @@ jobs:
publishTvosArm64PublicationToMavenCentralRepository
publishIosArm64PublicationToMavenCentralRepository
publishWatchosDeviceArm64PublicationToMavenCentralRepository

publish-kdoc:
name: 'Publish KDoc'
needs: [windows, macos]

# Only publish KDoc for tagged versions
if: ${{ startsWith(github.ref, 'refs/tags/v') }}

permissions:
pages: write
id-token: write

environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}

runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- name: 'Set Gradle project version'
if: ${{ startsWith(github.ref, 'refs/tags/v') }}
shell: bash
run: echo "ORG_GRADLE_PROJECT_version=${GITHUB_REF_NAME#v}" >> $GITHUB_ENV

- name: Set up Java
uses: actions/setup-java@v5
with:
java-version: '21'
distribution: 'zulu'

- name: Build KDoc
run: ./gradlew dokkaGenerate

- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
path: './build/dokka/html'

- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
12 changes: 12 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,46 +6,58 @@ jobs:
ubuntu:
name: "Test: jvm, js, linux"
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- name: Set up Java
uses: actions/setup-java@v5
with:
java-version: '21'
distribution: 'zulu'

- name: Clean
run: ./gradlew clean

- name: Test
run: ./gradlew jvmTest jsTest linuxX64Test

windows:
name: "Test: mingw"
runs-on: windows-latest

steps:
- uses: actions/checkout@v4

- name: Set up Java
uses: actions/setup-java@v5
with:
java-version: '21'
distribution: 'zulu'

- name: Clean
if: ${{ false }} # Skip, since it fails on Windows: https://youtrack.jetbrains.com/issue/KT-50545/
run: .\gradlew.bat clean

- name: Test
run: .\gradlew.bat mingwX64Test

macos:
name: "Test: macos, ios, watchos, tvos"
runs-on: macos-latest

steps:
- uses: actions/checkout@v4

- name: Set up Java
uses: actions/setup-java@v5
with:
java-version: '21'
distribution: 'zulu'

- name: Clean
run: ./gradlew clean

- name: Test
run: >
./gradlew
Expand Down
32 changes: 32 additions & 0 deletions api/knbt.api
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,10 @@ public final class net/benwoodworth/knbt/NbtByteArray : java/util/List, kotlin/j
public synthetic fun add (Ljava/lang/Object;)Z
public fun addAll (ILjava/util/Collection;)Z
public fun addAll (Ljava/util/Collection;)Z
public fun addFirst (Ljava/lang/Byte;)V
public synthetic fun addFirst (Ljava/lang/Object;)V
public fun addLast (Ljava/lang/Byte;)V
public synthetic fun addLast (Ljava/lang/Object;)V
public fun clear ()V
public fun contains (B)Z
public final fun contains (Ljava/lang/Object;)Z
Expand All @@ -118,6 +122,10 @@ public final class net/benwoodworth/knbt/NbtByteArray : java/util/List, kotlin/j
public synthetic fun remove (I)Ljava/lang/Object;
public fun remove (Ljava/lang/Object;)Z
public fun removeAll (Ljava/util/Collection;)Z
public fun removeFirst ()Ljava/lang/Byte;
public synthetic fun removeFirst ()Ljava/lang/Object;
public fun removeLast ()Ljava/lang/Byte;
public synthetic fun removeLast ()Ljava/lang/Object;
public fun replaceAll (Ljava/util/function/UnaryOperator;)V
public fun retainAll (Ljava/util/Collection;)Z
public fun set (IB)Ljava/lang/Byte;
Expand Down Expand Up @@ -396,6 +404,10 @@ public final class net/benwoodworth/knbt/NbtIntArray : java/util/List, kotlin/jv
public synthetic fun add (Ljava/lang/Object;)Z
public fun addAll (ILjava/util/Collection;)Z
public fun addAll (Ljava/util/Collection;)Z
public fun addFirst (Ljava/lang/Integer;)V
public synthetic fun addFirst (Ljava/lang/Object;)V
public fun addLast (Ljava/lang/Integer;)V
public synthetic fun addLast (Ljava/lang/Object;)V
public fun clear ()V
public fun contains (I)Z
public final fun contains (Ljava/lang/Object;)Z
Expand All @@ -419,6 +431,10 @@ public final class net/benwoodworth/knbt/NbtIntArray : java/util/List, kotlin/jv
public synthetic fun remove (I)Ljava/lang/Object;
public fun remove (Ljava/lang/Object;)Z
public fun removeAll (Ljava/util/Collection;)Z
public fun removeFirst ()Ljava/lang/Integer;
public synthetic fun removeFirst ()Ljava/lang/Object;
public fun removeLast ()Ljava/lang/Integer;
public synthetic fun removeLast ()Ljava/lang/Object;
public fun replaceAll (Ljava/util/function/UnaryOperator;)V
public fun retainAll (Ljava/util/Collection;)Z
public fun set (II)Ljava/lang/Integer;
Expand Down Expand Up @@ -449,6 +465,10 @@ public final class net/benwoodworth/knbt/NbtList : java/util/List, kotlin/jvm/in
public fun add (Lnet/benwoodworth/knbt/NbtTag;)Z
public fun addAll (ILjava/util/Collection;)Z
public fun addAll (Ljava/util/Collection;)Z
public synthetic fun addFirst (Ljava/lang/Object;)V
public fun addFirst (Lnet/benwoodworth/knbt/NbtTag;)V
public synthetic fun addLast (Ljava/lang/Object;)V
public fun addLast (Lnet/benwoodworth/knbt/NbtTag;)V
public fun clear ()V
public final fun contains (Ljava/lang/Object;)Z
public fun contains (Lnet/benwoodworth/knbt/NbtTag;)Z
Expand All @@ -471,6 +491,10 @@ public final class net/benwoodworth/knbt/NbtList : java/util/List, kotlin/jvm/in
public fun remove (I)Lnet/benwoodworth/knbt/NbtTag;
public fun remove (Ljava/lang/Object;)Z
public fun removeAll (Ljava/util/Collection;)Z
public synthetic fun removeFirst ()Ljava/lang/Object;
public fun removeFirst ()Lnet/benwoodworth/knbt/NbtTag;
public synthetic fun removeLast ()Ljava/lang/Object;
public fun removeLast ()Lnet/benwoodworth/knbt/NbtTag;
public fun replaceAll (Ljava/util/function/UnaryOperator;)V
public fun retainAll (Ljava/util/Collection;)Z
public synthetic fun set (ILjava/lang/Object;)Ljava/lang/Object;
Expand Down Expand Up @@ -538,6 +562,10 @@ public final class net/benwoodworth/knbt/NbtLongArray : java/util/List, kotlin/j
public synthetic fun add (Ljava/lang/Object;)Z
public fun addAll (ILjava/util/Collection;)Z
public fun addAll (Ljava/util/Collection;)Z
public fun addFirst (Ljava/lang/Long;)V
public synthetic fun addFirst (Ljava/lang/Object;)V
public fun addLast (Ljava/lang/Long;)V
public synthetic fun addLast (Ljava/lang/Object;)V
public fun clear ()V
public fun contains (J)Z
public final fun contains (Ljava/lang/Object;)Z
Expand All @@ -561,6 +589,10 @@ public final class net/benwoodworth/knbt/NbtLongArray : java/util/List, kotlin/j
public synthetic fun remove (I)Ljava/lang/Object;
public fun remove (Ljava/lang/Object;)Z
public fun removeAll (Ljava/util/Collection;)Z
public fun removeFirst ()Ljava/lang/Long;
public synthetic fun removeFirst ()Ljava/lang/Object;
public fun removeLast ()Ljava/lang/Long;
public synthetic fun removeLast ()Ljava/lang/Object;
public fun replaceAll (Ljava/util/function/UnaryOperator;)V
public fun retainAll (Ljava/util/Collection;)Z
public fun set (IJ)Ljava/lang/Long;
Expand Down
Loading