-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update gradle plugin: Deprecate experimental configuration for Compos…
…e for Web (#4796) Since 1.6.10 Compose for Web goes to Alpha and experimental configuration is not needed anymore. We'll configure the web targets by default when they're added to projects. ## Testing - I built the plugin to mavenLocal. And used it in a couple of our samples. - After gradle sync completes, I observe the Deprecation warning in build.gradle.kts on `compose.experimental.web` usages (see a screenshot below) <img width="1022" alt="Screenshot 2024-05-10 at 15 41 14" src="https://github.com/JetBrains/compose-multiplatform/assets/7372778/e8ede073-8d34-4dd7-ae74-c83ca0ff5c96"> Then I remove deprecated API usages and test that the project works without it: - run `./gradlew clean` just in case - run the app: `./gradlew wasmJsBrowserRun` and `./gradlew jsBrowserRun` - both run fine - build the production distribution: `./gradlew wasmJsBrowserDistribution` - `cd ..../build/dist/wasmJs/productionExecutable` and run `python -m http.server`, open a browser at `http://localhost:8000` - the app should work the same way it works with gradle tasks above <!-- Optional --> This should be tested by QA ## Release Notes ### Highlights - Web - Compose for Web goes to Alpha! Some experimental Compose Multiplatform Gradle plugin APIs for web app configuration were deprecated. Their usage is not required anymore. (cherry picked from commit 885ea3d)
- Loading branch information
Showing
10 changed files
with
104 additions
and
75 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
24 changes: 0 additions & 24 deletions
24
...pose/src/main/kotlin/org/jetbrains/compose/experimental/internal/configureExperimental.kt
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
10 changes: 10 additions & 0 deletions
10
gradle-plugins/compose/src/main/kotlin/org/jetbrains/compose/web/dsl/WebApplication.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
package org.jetbrains.compose.web.dsl | ||
|
||
import javax.inject.Inject | ||
|
||
abstract class WebApplication @Inject constructor( | ||
@Suppress("unused") | ||
val name: String, | ||
) { | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
50 changes: 50 additions & 0 deletions
50
...ins/compose/src/main/kotlin/org/jetbrains/compose/web/tasks/UnpackSkikoWasmRuntimeTask.kt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
/* | ||
* Copyright 2020-2022 JetBrains s.r.o. and respective authors and developers. | ||
* Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE.txt file. | ||
*/ | ||
|
||
package org.jetbrains.compose.web.tasks | ||
|
||
import org.gradle.api.DefaultTask | ||
import org.gradle.api.file.ArchiveOperations | ||
import org.gradle.api.file.DirectoryProperty | ||
import org.gradle.api.file.FileCollection | ||
import org.gradle.api.file.FileSystemOperations | ||
import org.gradle.api.tasks.InputFiles | ||
import org.gradle.api.tasks.OutputDirectory | ||
import org.gradle.api.tasks.TaskAction | ||
import org.jetbrains.compose.internal.utils.clearDirs | ||
import java.io.File | ||
import javax.inject.Inject | ||
|
||
abstract class UnpackSkikoWasmRuntimeTask : DefaultTask() { | ||
@get:InputFiles | ||
lateinit var skikoRuntimeFiles: FileCollection | ||
|
||
@get:OutputDirectory | ||
abstract val outputDir: DirectoryProperty | ||
|
||
@get:Inject | ||
internal abstract val archiveOperations: ArchiveOperations | ||
|
||
@get:Inject | ||
internal abstract val fileOperations: FileSystemOperations | ||
|
||
@TaskAction | ||
fun run() { | ||
fileOperations.clearDirs(outputDir) | ||
|
||
for (file in skikoRuntimeFiles.files) { | ||
if (file.name.endsWith(".jar", ignoreCase = true)) { | ||
unpackJar(file) | ||
} | ||
} | ||
} | ||
|
||
private fun unpackJar(file: File) { | ||
fileOperations.copy { copySpec -> | ||
copySpec.from(archiveOperations.zipTree(file)) | ||
copySpec.into(outputDir) | ||
} | ||
} | ||
} |