diff --git a/.gitignore b/.gitignore index c1473f79..49025dae 100644 --- a/.gitignore +++ b/.gitignore @@ -1,42 +1,72 @@ -# General build artifacts -build/ -out/ +# --- General --- .gradle/ **/build/ - -# Enviroments -#.env - -# Kotlin +**/out/ .kotlin/ +kotlin-js-store/ -# IDE +# --- Environments --- +#.env +config/env/.env.local +.env.development.local +.env.test.local +.env.production.local +.env.local + +# --- IDEs --- +# IntelliJ .idea/ *.iml +*.ipr +*.iws -# Node +# VS Code +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +!.vscode/snippets + +# Fleet +.fleet/ +!.fleet/receipt.json + +# --- Dependencies & Build --- node_modules/ **/node_modules/ +package-lock.json +yarn.lock +pnpm-lock.yaml -# OS files +# --- OS Files --- .DS_Store Thumbs.db +*.swp +*~ +.nfs* -# Logs +# --- Logs --- _backup/logs/ **/*.log +*.log.gz -# Kotlin/Java +# --- Languages & Runtimes --- +# Java/Kotlin *.class +.attach_pid* -# Generated diagrams -build/diagrams/ - -# Local runtime secrets/overrides -config/env/.env.local - -# Python virtual environment +# Python .venv/ venv/ +ENV/ *.pyc __pycache__/ + +# --- Quality & Documentation --- +build/diagrams/ +.eslintcache +.stylelintcache +.phpunit.result.cache +.dataSources/ +dataSources.local.xml diff --git a/build.gradle.kts b/build.gradle.kts index c60bcffe..24eb009e 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -79,6 +79,18 @@ subprojects { // Ensure a full JDK toolchain with compiler is available (Gradle will auto-download if missing) javaExt.toolchain.languageVersion.set(JavaLanguageVersion.of(25)) + // Set Kotlin Toolchain for projects using Kotlin + plugins.withId("org.jetbrains.kotlin.jvm") { + extensions.configure { + jvmToolchain(25) + } + } + plugins.withId("org.jetbrains.kotlin.multiplatform") { + extensions.configure { + jvmToolchain(25) + } + } + tasks.register("perfTest") { description = "Runs tests tagged with 'perf'" group = "verification" @@ -111,9 +123,20 @@ subprojects { environment("PUPPETEER_EXECUTABLE_PATH", "/usr/bin/chromium") } - tasks.withType { + // Suche diesen Block am Ende von subprojects und ersetze ihn: + tasks.withType().configureEach { compilerOptions { + // Dein bestehender Argument-Eintrag freeCompilerArgs.add("-Xannotation-default-target=param-property") + + // WICHTIG: Parameter-Namen für Spring Boot & Reflection erhalten + javaParameters.set(true) + + // OPTIONAL: Ermöglicht die Nutzung von Context Receivers (hilfreich in modernen Architekturen) + freeCompilerArgs.add("-Xcontext-receivers") + + // Explizite Setzung des JVM Targets auf 25 (überschreibt IDE-Fehleinstellungen) + jvmTarget.set(org.jetbrains.kotlin.gradle.dsl.JvmTarget.JVM_25) } } @@ -325,7 +348,8 @@ tasks.register("checkBundleBudget") { } // Collect JS files under distributions (avoid .map and .txt) - val jsFiles = distDir.walkTopDown().filter { it.isFile && it.extension == "js" && !it.name.endsWith(".map") }.toList() + val jsFiles = + distDir.walkTopDown().filter { it.isFile && it.extension == "js" && !it.name.endsWith(".map") }.toList() if (jsFiles.isEmpty()) { report.appendLine("- ${shell.path}: no JS artifacts found in ${distDir.path}") return@forEach