chore: move plugin stuff back into separate subproject

Putting it in the root project breaks the devkit plugin
This commit is contained in:
FalsePattern 2024-07-04 14:48:49 +02:00
parent e71b780185
commit e7be7e1ae8
Signed by: falsepattern
GPG key ID: E930CDEC50C50E23
10 changed files with 127 additions and 114 deletions

View file

@ -38,9 +38,11 @@ val clionVersion = properties("clionVersion").get()
val clionPlugins = listOf("com.intellij.clion", "com.intellij.cidr.lang", "com.intellij.cidr.base", "com.intellij.nativeDebug")
val lsp4jVersion = "0.21.1"
val lsp4ijVersion = "0.0.2"
val lsp4ijVersion = "0.3.0-20240702-174041"
val lsp4ijDepString = "${if (lsp4ijVersion.contains("-")) "nightly." else ""}com.jetbrains.plugins:com.redhat.devtools.lsp4ij:$lsp4ijVersion"
val lsp4ijNightly = lsp4ijVersion.contains("-")
val lsp4ijDepString = "${if (lsp4ijNightly) "nightly." else ""}com.jetbrains.plugins:com.redhat.devtools.lsp4ij:$lsp4ijVersion"
val lsp4ijPluginString = "com.redhat.devtools.lsp4ij:$lsp4ijVersion${if (lsp4ijNightly) "@nightly" else ""}"
val lsp4ijDep: DependencyHandler.() -> Unit = {
intellijPlatformPluginDependency(lsp4ijDepString)
@ -138,7 +140,6 @@ allprojects {
dependsOn("generateGrammars")
}
}
}
configure<JavaPluginExtension> {
@ -187,6 +188,9 @@ project(":zig") {
dependencies {
implementation(project(":common"))
lsp4ijDep()
intellijPlatform {
plugin(lsp4ijPluginString)
}
}
tasks {
generateLexer {
@ -246,7 +250,9 @@ project(":zon") {
}
}
dependencies {
project(":plugin") {
dependencies {
implementation(project(":common"))
implementation(project(":zig"))
implementation(project(":project"))
implementation(project(":zon"))
@ -254,15 +260,11 @@ dependencies {
intellijPlatform {
zipSigner()
pluginVerifier()
when (baseIDE) {
"idea" -> intellijIdeaCommunity(ideaVersion)
"clion" -> clion(clionVersion)
plugin(lsp4ijPluginString)
}
plugin("com.redhat.devtools.lsp4ij:$lsp4ijVersion")
}
}
intellijPlatform {
intellijPlatform {
pluginConfiguration {
name = properties("pluginName")
description = providers.fileContents(rootProject.layout.projectDirectory.file("README.md")).asText.map {
@ -300,13 +302,13 @@ intellijPlatform {
ide(IntelliJPlatformType.CLion, clionVersion)
}
}
}
}
// Include the generated files in the source set
// Include the generated files in the source set
// Collects all jars produced by compilation of project modules and merges them into singe one.
// We need to put all plugin manifest files into single jar to make new plugin model work
val mergePluginJarTask = task<Jar>("mergePluginJars") {
// Collects all jars produced by compilation of project modules and merges them into singe one.
// We need to put all plugin manifest files into single jar to make new plugin model work
val mergePluginJarTask = task<Jar>("mergePluginJars") {
duplicatesStrategy = DuplicatesStrategy.FAIL
archiveBaseName.set("ZigBrains")
@ -333,9 +335,9 @@ val mergePluginJarTask = task<Jar>("mergePluginJars") {
doLast {
delete(pluginJars)
}
}
}
tasks {
tasks {
runIde {
dependsOn(mergePluginJarTask)
enabled = true
@ -370,16 +372,27 @@ tasks {
buildPlugin {
enabled = true
}
}
}
tasks {
generateLexer {
enabled = false
}
generateParser {
enabled = false
}
}
dependencies {
intellijPlatform {
when (baseIDE) {
"idea" -> intellijIdeaCommunity(ideaVersion)
"clion" -> clion(clionVersion)
}
}
}
fun distFile(it: String) = layout.buildDirectory.file("dist/ZigBrains-${pluginVersion().get()}-$it-signed.zip")
publishVersions.forEach {

View file

Before

Width:  |  Height:  |  Size: 1 KiB

After

Width:  |  Height:  |  Size: 1 KiB

View file

Before

Width:  |  Height:  |  Size: 9.2 KiB

After

Width:  |  Height:  |  Size: 9.2 KiB

View file

Before

Width:  |  Height:  |  Size: 858 B

After

Width:  |  Height:  |  Size: 858 B

View file

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 2.7 KiB