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
5 changes: 1 addition & 4 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,5 @@ jobs:
java-version: "25"
- uses: gradle/actions/setup-gradle@v6
# Test sources stay local (not in the repository): this compiles everything and checks the shipped jars.
# The jars themselves are attached to GitHub releases (release.yml), not to PR or push runs.
- run: ./gradlew build
- uses: actions/upload-artifact@v7
with:
name: friends-plugins
path: builds/*.jar
29 changes: 29 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: release

# Publishing a GitHub release builds its tag and attaches the jars from builds/ to that release.
on:
release:
types: [published]

permissions:
contents: write # upload release assets

jobs:
jars:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- uses: actions/setup-java@v6
with:
distribution: temurin
java-version: "25"
- uses: gradle/actions/setup-gradle@v6
# A v0.6.0 release must not get 0.5.0 jars: the tag has to match the project version.
- run: 'grep -q "version = \"${TAG#v}\"" build.gradle.kts || { echo "tag $TAG does not match the project version"; exit 1; }'
env:
TAG: ${{ github.event.release.tag_name }}
- run: ./gradlew build
- run: gh release upload "$TAG" builds/*.jar --clobber
env:
GH_TOKEN: ${{ github.token }}
TAG: ${{ github.event.release.tag_name }}
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@ Modules (one folder per part; a new platform gets its own top-level folder next
./gradlew build # tests, then builds/friends-paper.jar, friends-velocity.jar, friends-bungee.jar, friends-api.jar
```

Put the jar for your platform in `plugins/`. Every server/proxy must run **Java 25** (Velocity 4.2 and Paper 26.x
Or download the jars from the [GitHub releases](https://github.com/Macaron27/Friends/releases) (each release builds and
attaches them). Put the jar for your platform in `plugins/`. Every server/proxy must run **Java 25** (Velocity 4.2 and Paper 26.x
require it anyway; older Paper versions run on it, see below). Add `--enable-native-access=ALL-UNNAMED` to the JVM
flags to silence the JDK warning about SQLite's native library.

Expand Down
Loading