diff --git a/.gitignore b/.gitignore index 1e412d9..c7a7ebe 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ out/ /kotlin-js-store /.fleet/* .DS_Store +.intellijPlatform diff --git a/build.gradle.kts b/build.gradle.kts index d3ca8d2..40f7b4a 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -3,5 +3,5 @@ plugins { } tasks.withType { - gradleVersion = "8.5" + gradleVersion = "8.11.1" } diff --git a/buildext/build.gradle.kts b/buildext/build.gradle.kts index 86def58..9bcc8f4 100644 --- a/buildext/build.gradle.kts +++ b/buildext/build.gradle.kts @@ -12,10 +12,10 @@ repositories { } dependencies { - implementation("org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.22") - implementation("org.jetbrains.kotlin:kotlin-serialization:1.9.22") - implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.7.3") - implementation("com.charleskorn.kaml:kaml:0.56.0") + implementation("org.jetbrains.kotlin:kotlin-gradle-plugin:2.1.0") + implementation("org.jetbrains.kotlin:kotlin-serialization:1.7.3") + implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.9.0") + implementation("com.charleskorn.kaml:kaml:0.66.0") } java { diff --git a/buildext/src/main/kotlin/gay/pizza/pork/buildext/PorkModulePlugin.kt b/buildext/src/main/kotlin/gay/pizza/pork/buildext/PorkModulePlugin.kt index fc897bb..d9b07de 100644 --- a/buildext/src/main/kotlin/gay/pizza/pork/buildext/PorkModulePlugin.kt +++ b/buildext/src/main/kotlin/gay/pizza/pork/buildext/PorkModulePlugin.kt @@ -28,7 +28,7 @@ open class PorkModulePlugin : Plugin { target.dependencies { add("implementation", "org.jetbrains.kotlin:kotlin-bom") - add("implementation", "org.jetbrains.kotlinx:kotlinx-serialization-json:1.6.0") + add("implementation", "org.jetbrains.kotlinx:kotlinx-serialization-json:1.7.3") add("api", "gay.pizza.dough:dough-core:0.1.0-SNAPSHOT") add("api", "gay.pizza.dough:dough-fs:0.1.0-SNAPSHOT") } diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 7f93135..a4b76b9 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 1af9e09..e2847c8 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/gradlew b/gradlew index 1aa94a4..f5feea6 100755 --- a/gradlew +++ b/gradlew @@ -15,6 +15,8 @@ # See the License for the specific language governing permissions and # limitations under the License. # +# SPDX-License-Identifier: Apache-2.0 +# ############################################################################## # @@ -55,7 +57,7 @@ # Darwin, MinGW, and NonStop. # # (3) This script is generated from the Groovy template -# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt # within the Gradle project. # # You can find Gradle at https://github.com/gradle/gradle/. @@ -84,7 +86,8 @@ done # shellcheck disable=SC2034 APP_BASE_NAME=${0##*/} # Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) -APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s +' "$PWD" ) || exit # Use the maximum available, or set MAX_FD != -1 to use that value. MAX_FD=maximum diff --git a/gradlew.bat b/gradlew.bat index 6689b85..9b42019 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -13,6 +13,8 @@ @rem See the License for the specific language governing permissions and @rem limitations under the License. @rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem @if "%DEBUG%"=="" @echo off @rem ########################################################################## @@ -43,11 +45,11 @@ set JAVA_EXE=java.exe %JAVA_EXE% -version >NUL 2>&1 if %ERRORLEVEL% equ 0 goto execute -echo. -echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 goto fail @@ -57,11 +59,11 @@ set JAVA_EXE=%JAVA_HOME%/bin/java.exe if exist "%JAVA_EXE%" goto execute -echo. -echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 goto fail diff --git a/support/pork-idea/build.gradle.kts b/support/pork-idea/build.gradle.kts index dae54cf..0b14ebb 100644 --- a/support/pork-idea/build.gradle.kts +++ b/support/pork-idea/build.gradle.kts @@ -1,39 +1,33 @@ import gay.pizza.pork.buildext.AstCodegenType plugins { - id("org.jetbrains.intellij") version "1.16.1" + id("org.jetbrains.intellij.platform") version "2.1.0" id("gay.pizza.pork.module") id("gay.pizza.pork.ast") } +repositories { + intellijPlatform { + defaultRepositories() + } +} + dependencies { implementation(project(":common")) implementation(project(":parser")) + + intellijPlatform { + intellijIdeaCommunity("2024.2") + pluginVerifier() + zipSigner() + instrumentationTools() + } } porkAst { astCodegenType.set(AstCodegenType.PorkIdea) } -intellij { - pluginName.set(properties["pluginName"].toString()) - version.set(properties["platformVersion"].toString()) - type.set(properties["platformType"].toString()) -} - -tasks { - buildSearchableOptions { - enabled = false - } - - patchPluginXml { - version.set(project.properties["pluginVersion"].toString()) - sinceBuild.set(project.properties["pluginSinceBuild"].toString()) - untilBuild.set(project.properties["pluginUntilBuild"].toString()) - pluginDescription.set("Pork Language support for IntelliJ IDEs") - } -} - project.afterEvaluate { tasks.buildPlugin { exclude("**/lib/annotations*.jar") diff --git a/support/pork-idea/gradle.properties b/support/pork-idea/gradle.properties index d9ea8e3..4e1387b 100644 --- a/support/pork-idea/gradle.properties +++ b/support/pork-idea/gradle.properties @@ -2,12 +2,12 @@ pluginGroup = gay.pizza.plugins.pork pluginName = Pork pluginRepositoryUrl = https://github.com/GayPizzaSpecifications/pork -pluginVersion = 0.1.1 +pluginVersion = 0.1.2 # Supported build number ranges and IntelliJ Platform versions -> https://plugins.jetbrains.com/docs/intellij/build-number-ranges.html -pluginSinceBuild = 233 -pluginUntilBuild = 233.* +pluginSinceBuild = 242 +pluginUntilBuild = 243.* # IntelliJ Platform Properties -> https://plugins.jetbrains.com/docs/intellij/tools-gradle-intellij-plugin.html#configuration-intellij-extension platformType = IC -platformVersion = 2023.3.2 +platformVersion = 2024.2