Skip to content
Merged
Show file tree
Hide file tree
Changes from 10 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
36 changes: 22 additions & 14 deletions .github/workflows/kotlin-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,25 +8,22 @@ on:

jobs:
build-kotlin-plugin:
name: 'Build (matrix: Java ${{ matrix.java-version }})'
name: 'Build (Java 17)'
runs-on: ubuntu-latest
permissions:
contents: read
strategy:
matrix:
java-version: [11, 17]

steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Set up JDK ${{ matrix.java-version }}
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: ${{ matrix.java-version }}
java-version: 17

- name: Cache Gradle
uses: actions/cache@v4
Expand All @@ -35,13 +32,24 @@ jobs:
~/.gradle/caches
~/.gradle/wrapper
ide-plugins/.gradle
key: gradle-${{ matrix.java-version }}-${{ hashFiles('ide-plugins/**/*.gradle*','ide-plugins/**/gradle-wrapper.properties') }}
key: gradle-17-${{ hashFiles('ide-plugins/**/*.gradle*','ide-plugins/**/gradle-wrapper.properties') }}
restore-keys: |
gradle-${{ matrix.java-version }}-
gradle-17-

- name: Make wrapper executable
run: chmod +x ./gradlew
working-directory: ide-plugins
- name: Setup Gradle wrapper if missing
run: |
if [ ! -f gradlew ] || [ ! -f gradle/wrapper/gradle-wrapper.jar ]; then
echo "Setting up Gradle wrapper for Gradle 9.2.0..."
cd /tmp
curl -L -s -o gradle-9.2.0.zip https://services.gradle.org/distributions/gradle-9.2.0-bin.zip
unzip -q gradle-9.2.0.zip
mkdir -p $GITHUB_WORKSPACE/ide-plugins/gradle/wrapper
cp gradle-9.2.0/gradle/wrapper/gradle-wrapper.jar $GITHUB_WORKSPACE/ide-plugins/gradle/wrapper/gradle-wrapper.jar || \
cp gradle-9.2.0/lib/plugins/gradle-wrapper-9.2.0.jar $GITHUB_WORKSPACE/ide-plugins/gradle/wrapper/gradle-wrapper.jar
cp gradle-9.2.0/gradlew $GITHUB_WORKSPACE/ide-plugins/gradlew
chmod +x $GITHUB_WORKSPACE/ide-plugins/gradlew
echo "Wrapper installed"
fi

- name: Print Gradle info (for debugging)
run: ./gradlew --no-daemon --version
Expand All @@ -55,7 +63,7 @@ jobs:
- name: Upload diagnostics
uses: actions/upload-artifact@v4
with:
name: ci-diagnostics-java-${{ matrix.java-version }}
name: ci-diagnostics
path: out/ci-diagnostics.txt

- name: Full build with stacktrace (capture to file)
Expand All @@ -68,7 +76,7 @@ jobs:
- name: Upload build log
uses: actions/upload-artifact@v4
with:
name: gradle-build-log-java-${{ matrix.java-version }}
name: gradle-build-log
path: gradle-build.log

- name: Build Kotlin plugin subproject if present
Expand All @@ -90,7 +98,7 @@ jobs:
- name: Upload kotlin-subproject/build logs if present
uses: actions/upload-artifact@v4
with:
name: kotlin-subproject-logs-java-${{ matrix.java-version }}
name: kotlin-subproject-logs
path: |
kotlin-subproject-build.log
assemble.log
Expand Down
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,7 @@ __pycache__
# Gradle build artifacts
ide-plugins/.gradle/
ide-plugins/build/
# Gradle wrapper files (generated on first run)
ide-plugins/gradle/wrapper/gradle-wrapper.jar
ide-plugins/gradlew
ide-plugins/gradlew.bat
8 changes: 5 additions & 3 deletions ide-plugins/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
plugins {
id("java")
id("org.jetbrains.kotlin.jvm") version "1.9.0"
id("org.jetbrains.intellij") version "1.15.0"
id("org.jetbrains.kotlin.jvm") version "2.2.0"
id("org.jetbrains.intellij") version "2.1.2"
}

group = "com.picocode"
Expand Down Expand Up @@ -29,7 +29,9 @@ tasks {
}

withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile> {
kotlinOptions.jvmTarget = "17"
compilerOptions {
jvmTarget.set(org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_17)
}
}

patchPluginXml {
Expand Down
2 changes: 1 addition & 1 deletion ide-plugins/gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-9.2.0-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Expand Down
25 changes: 0 additions & 25 deletions ide-plugins/gradlew

This file was deleted.

6 changes: 0 additions & 6 deletions ide-plugins/inspect_gradle_kotlin_versions.sh
Original file line number Diff line number Diff line change
@@ -1,39 +1,33 @@
#!/usr/bin/env bash
set -eu

# Print Gradle wrapper distribution URL
if [ -f gradle/wrapper/gradle-wrapper.properties ]; then
echo "== gradle-wrapper.properties =="
grep -i distributionUrl gradle/wrapper/gradle-wrapper.properties || true
echo
fi

# Print gradle.properties if present
if [ -f gradle.properties ]; then
echo "== gradle.properties =="
cat gradle.properties || true
echo
fi

# Search for Kotlin Gradle plugin references
echo "== Kotlin plugin references (searching for kotlin-gradle-plugin and org.jetbrains.kotlin) =="
grep -R --line-number --color=never "kotlin-gradle-plugin" || true
grep -R --line-number --color=never "org.jetbrains.kotlin" || true

# Print build.gradle(.kts) files header lines to show plugin versions where declared
for f in $(git ls-files "*.gradle" "*.gradle.kts" 2>/dev/null || true); do
echo "---- $f ----"
sed -n '1,200p' "$f" | sed -n '1,60p'
echo
done

# Print settings.gradle(.kts)
for f in $(git ls-files "settings.gradle" "settings.gradle.kts" 2>/dev/null || true); do
echo "---- $f ----"
sed -n '1,200p' "$f" | sed -n '1,60p'
echo
done

# Print the kotlin plugin versions extracted via a rough regex
echo "== Extracted candidate versions =="
grep -R --line-number --color=never "kotlin-gradle-plugin[:=][^\n]*" || true