From e79a755f0a89b62bb3760d17b9756a51416123ef Mon Sep 17 00:00:00 2001 From: Rick Busarow Date: Thu, 8 Jun 2023 21:00:43 -0500 Subject: [PATCH] kotlin 1.8.10 and friends - kotlin `1.8.10` - ksp `1.8.10-1.0.9` - drop Kotlinter because it doesn't play nicely with KSP's new source sets - replace Kotlinter with `com.rickbusarow.ktlint` - KtLint `0.49.1` - this comes with updated `.editorconfig` requirements --- .editorconfig | 221 ++++++++++-------- .github/workflows/kotlin.yml | 2 +- benchmarks/dungeon-benchmark/build.gradle.kts | 2 +- build-logic/build.gradle.kts | 11 +- build-logic/settings.gradle.kts | 2 - .../src/main/java/android-ui-tests.gradle.kts | 3 +- .../buildsrc/KotlinCommonSettings.kt | 6 +- .../buildsrc/artifacts/ArtifactsCheckTask.kt | 2 +- .../com/squareup/workflow1/buildsrc/ktlint.kt | 77 ------ .../src/main/java/dependency-guard.gradle.kts | 13 +- .../src/main/java/kotlin-jvm.gradle.kts | 1 - build.gradle.kts | 4 +- dependencies/classpath.txt | 81 +++---- gradle/libs.versions.toml | 37 ++- gradle/wrapper/gradle-wrapper.properties | 2 +- .../dependencies/runtimeClasspath.txt | 10 +- kotlin-js-store/yarn.lock | 26 +-- .../HelloBackButtonWorkflow.kt | 2 +- .../hello-terminal-app/build.gradle.kts | 2 +- .../todo-terminal-app/build.gradle.kts | 2 +- settings.gradle.kts | 2 - .../dependencies/runtimeClasspath.txt | 10 +- .../dependencies/releaseRuntimeClasspath.txt | 10 +- .../dependencies/runtimeClasspath.txt | 10 +- .../config/JvmTestRuntimeConfigTools.kt | 2 +- .../dependencies/jsRuntimeClasspath.txt | 6 +- .../dependencies/jvmRuntimeClasspath.txt | 8 +- .../dependencies/runtimeClasspath.txt | 10 +- .../squareup/workflow1/BaseRenderContext.kt | 62 ++--- .../squareup/workflow1/StatefulWorkflow.kt | 16 +- .../squareup/workflow1/StatelessWorkflow.kt | 16 +- .../kotlin/com/squareup/workflow1/Workflow.kt | 6 +- .../kotlin/com/squareup/workflow1/SinkTest.kt | 4 +- .../dependencies/jsRuntimeClasspath.txt | 6 +- .../dependencies/jvmRuntimeClasspath.txt | 8 +- .../workflow1/internal/WorkflowNodeId.kt | 2 +- .../internal/ActiveStagingListTest.kt | 6 +- .../internal/RealRenderContextTest.kt | 8 +- .../dependencies/runtimeClasspath.txt | 10 +- .../dependencies/runtimeClasspath.txt | 12 +- .../workflow1/testing/RenderTester.kt | 56 ++--- .../workflow1/testing/RenderTesterWorkers.kt | 68 +++--- .../workflow1/testing/WorkflowTestRuntime.kt | 61 ++--- .../dependencies/runtimeClasspath.txt | 10 +- .../dependencies/releaseRuntimeClasspath.txt | 10 +- .../dependencies/releaseRuntimeClasspath.txt | 10 +- .../ui/compose/WorkflowRenderingTest.kt | 2 +- .../dependencies/releaseRuntimeClasspath.txt | 10 +- .../ModalViewContainerLifecycleActivity.kt | 4 +- .../dependencies/runtimeClasspath.txt | 10 +- .../dependencies/releaseRuntimeClasspath.txt | 10 +- .../ui/WorkflowViewStubLifecycleTest.kt | 2 +- .../ui/container/BackStackContainerTest.kt | 2 +- .../ui/container/DialogIntegrationTest.kt | 2 +- .../BackStackContainerLifecycleActivity.kt | 2 +- .../workflow1/ui/ScreenViewFactory.kt | 3 +- .../dependencies/runtimeClasspath.txt | 10 +- .../dependencies/releaseRuntimeClasspath.txt | 10 +- 58 files changed, 465 insertions(+), 537 deletions(-) delete mode 100644 build-logic/src/main/java/com/squareup/workflow1/buildsrc/ktlint.kt diff --git a/.editorconfig b/.editorconfig index 2f507ea9ca..541f01d8cd 100644 --- a/.editorconfig +++ b/.editorconfig @@ -30,10 +30,132 @@ ij_formatter_tags_enabled = false ij_smart_tabs = false ij_wrap_on_typing = false +# KtLint specific settings +# noinspection EditorConfigKeyCorrectness +[{*.kt,*.kts}] +kotlin_imports_layout = *,java.**,javax.**,kotlin.**,^ # Back-ticked method names are allowed to exceed the line length. That's especially helpful for # test methods with descriptive names. ktlint_ignore_back_ticked_identifier = true +ktlint_code_style = official +ktlint_function_signature_body_expression_wrapping = default +ktlint_function_signature_rule_force_multiline_when_parameter_count_greater_or_equal_than = 3 + +ktlint_experimental_class-naming = disabled +ktlint_experimental_function-naming = disabled +ktlint_experimental_function-signature = disabled +ktlint_experimental_property-naming = disabled +ktlint_standard_class-naming = disabled +ktlint_standard_filename = disabled +ktlint_standard_function-naming = disabled +ktlint_standard_function-signature = disabled +ktlint_standard_max-line-length = disabled +ktlint_standard_no-empty-first-line-in-method-block = disabled +ktlint_standard_property-naming = disabled +ktlint_standard_trailing-comma-on-call-site = disabled +ktlint_standard_trailing-comma-on-declaration-site = disabled + +[{*.kt,*.kts}] +ij_continuation_indent_size = 2 +ij_kotlin_align_in_columns_case_branch = false +ij_kotlin_align_multiline_binary_operation = false +ij_kotlin_align_multiline_extends_list = false +ij_kotlin_align_multiline_method_parentheses = false +ij_kotlin_align_multiline_parameters = false +ij_kotlin_align_multiline_parameters_in_calls = false +ij_kotlin_allow_trailing_comma = false +ij_kotlin_allow_trailing_comma_on_call_site = false +ij_kotlin_assignment_wrap = normal +ij_kotlin_blank_lines_after_class_header = 0 +ij_kotlin_blank_lines_around_block_when_branches = 0 +ij_kotlin_blank_lines_before_declaration_with_comment_or_annotation_on_separate_line = 1 +ij_kotlin_block_comment_at_first_column = true +ij_kotlin_call_parameters_new_line_after_left_paren = true +ij_kotlin_call_parameters_right_paren_on_new_line = true +ij_kotlin_call_parameters_wrap = normal +ij_kotlin_catch_on_new_line = false +ij_kotlin_class_annotation_wrap = split_into_lines +ij_kotlin_code_style_defaults = KOTLIN_OFFICIAL +ij_kotlin_continuation_indent_for_chained_calls = true +ij_kotlin_continuation_indent_for_expression_bodies = false +ij_kotlin_continuation_indent_in_argument_lists = true +ij_kotlin_continuation_indent_in_elvis = true +ij_kotlin_continuation_indent_in_if_conditions = true +ij_kotlin_continuation_indent_in_parameter_lists = false +ij_kotlin_continuation_indent_in_supertype_lists = true +ij_kotlin_else_on_new_line = false +ij_kotlin_enum_constants_wrap = split_into_lines +ij_kotlin_extends_list_wrap = on_every_item +ij_kotlin_field_annotation_wrap = normal +ij_kotlin_finally_on_new_line = false +ij_kotlin_if_rparen_on_new_line = true +ij_kotlin_import_nested_classes = true +ij_kotlin_imports_layout = *,java.**,javax.**,kotlin.**,^ +ij_kotlin_insert_whitespaces_in_simple_one_line_method = true +ij_kotlin_keep_blank_lines_before_right_brace = 0 +ij_kotlin_keep_blank_lines_in_code = 1 +ij_kotlin_keep_blank_lines_in_declarations = 1 +ij_kotlin_keep_first_column_comment = true +ij_kotlin_keep_indents_on_empty_lines = false +ij_kotlin_keep_line_breaks = true +ij_kotlin_lbrace_on_next_line = false +ij_kotlin_line_comment_add_space = true +ij_kotlin_line_comment_at_first_column = false +ij_kotlin_method_annotation_wrap = normal +ij_kotlin_method_call_chain_wrap = on_every_item +ij_kotlin_method_parameters_new_line_after_left_paren = true +ij_kotlin_method_parameters_right_paren_on_new_line = true +ij_kotlin_method_parameters_wrap = split_into_lines +ij_kotlin_name_count_to_use_star_import = 999 +ij_kotlin_name_count_to_use_star_import_for_members = 999 +ij_kotlin_parameter_annotation_wrap = off +ij_kotlin_space_after_comma = true +ij_kotlin_space_after_extend_colon = true +ij_kotlin_space_after_type_colon = true +ij_kotlin_space_before_catch_parentheses = true +ij_kotlin_space_before_comma = false +ij_kotlin_space_before_extend_colon = true +ij_kotlin_space_before_for_parentheses = true +ij_kotlin_space_before_if_parentheses = true +ij_kotlin_space_before_lambda_arrow = true +ij_kotlin_space_before_type_colon = false +ij_kotlin_space_before_when_parentheses = true +ij_kotlin_space_before_while_parentheses = true +ij_kotlin_spaces_around_additive_operators = true +ij_kotlin_spaces_around_assignment_operators = true +ij_kotlin_spaces_around_equality_operators = true +ij_kotlin_spaces_around_function_type_arrow = true +ij_kotlin_spaces_around_logical_operators = true +ij_kotlin_spaces_around_multiplicative_operators = true +ij_kotlin_spaces_around_range = false +ij_kotlin_spaces_around_relational_operators = true +ij_kotlin_spaces_around_unary_operator = false +ij_kotlin_spaces_around_when_arrow = true +ij_kotlin_variable_annotation_wrap = off +ij_kotlin_while_on_new_line = false +ij_kotlin_wrap_elvis_expressions = 1 +ij_kotlin_wrap_expression_body_functions = 1 +ij_kotlin_wrap_first_method_in_call_chain = false + +[{*.yaml,*.yml}] +ij_yaml_keep_indents_on_empty_lines = false +ij_yaml_keep_line_breaks = true +ij_yaml_space_before_colon = true +ij_yaml_spaces_within_braces = true +ij_yaml_spaces_within_brackets = true + +[.editorconfig] +ij_editorconfig_align_group_field_declarations = false +ij_editorconfig_space_after_colon = false +# IntelliJ defaults this to true, but that's against the editorconfig spec and ktlint can't actually parse it. +# https://youtrack.jetbrains.com/issue/IDEA-242506 +# https://github.com/editorconfig/editorconfig/issues/148 +ij_editorconfig_space_after_comma = false +ij_editorconfig_space_before_colon = false +ij_editorconfig_space_before_comma = false +ij_editorconfig_spaces_around_assignment_operators = true + [*.java] ij_java_align_consecutive_assignments = false ij_java_align_consecutive_variable_declarations = false @@ -270,14 +392,6 @@ ij_properties_keep_blank_lines = false ij_properties_key_value_delimiter = equals ij_properties_spaces_around_key_value_delimiter = false -[.editorconfig] -ij_editorconfig_align_group_field_declarations = false -ij_editorconfig_space_after_colon = false -ij_editorconfig_space_after_comma = true -ij_editorconfig_space_before_colon = false -ij_editorconfig_space_before_comma = false -ij_editorconfig_spaces_around_assignment_operators = true - [{*.ant,*.fxml,*.jhm,*.jnlp,*.jrxml,*.jspx,*.pom,*.rng,*.tagx,*.tld,*.wsdl,*.xml,*.xsd,*.xsl,*.xslt,*.xul}] ij_xml_align_attributes = false ij_xml_align_text = false @@ -483,90 +597,6 @@ ij_groovy_while_brace_force = if_multiline ij_groovy_while_on_new_line = false ij_groovy_wrap_long_lines = false -[{*.gradle.kts,*.kt,*.kts,*.main.kts}] -# noinspection EditorConfigKeyCorrectness -ktlint_disabled_rules = trailing-comma-on-declaration-site,trailing-comma-on-call-site -ij_continuation_indent_size = 2 -ij_kotlin_align_in_columns_case_branch = false -ij_kotlin_align_multiline_binary_operation = false -ij_kotlin_align_multiline_extends_list = false -ij_kotlin_align_multiline_method_parentheses = false -ij_kotlin_align_multiline_parameters = false -ij_kotlin_align_multiline_parameters_in_calls = false -ij_kotlin_allow_trailing_comma = false -ij_kotlin_allow_trailing_comma_on_call_site = false -ij_kotlin_assignment_wrap = normal -ij_kotlin_blank_lines_after_class_header = 0 -ij_kotlin_blank_lines_around_block_when_branches = 0 -ij_kotlin_blank_lines_before_declaration_with_comment_or_annotation_on_separate_line = 1 -ij_kotlin_block_comment_at_first_column = true -ij_kotlin_call_parameters_new_line_after_left_paren = true -ij_kotlin_call_parameters_right_paren_on_new_line = true -ij_kotlin_call_parameters_wrap = normal -ij_kotlin_catch_on_new_line = false -ij_kotlin_class_annotation_wrap = split_into_lines -ij_kotlin_code_style_defaults = KOTLIN_OFFICIAL -ij_kotlin_continuation_indent_for_chained_calls = true -ij_kotlin_continuation_indent_for_expression_bodies = false -ij_kotlin_continuation_indent_in_argument_lists = true -ij_kotlin_continuation_indent_in_elvis = true -ij_kotlin_continuation_indent_in_if_conditions = true -ij_kotlin_continuation_indent_in_parameter_lists = false -ij_kotlin_continuation_indent_in_supertype_lists = true -ij_kotlin_else_on_new_line = false -ij_kotlin_enum_constants_wrap = split_into_lines -ij_kotlin_extends_list_wrap = on_every_item -ij_kotlin_field_annotation_wrap = normal -ij_kotlin_finally_on_new_line = false -ij_kotlin_if_rparen_on_new_line = true -ij_kotlin_import_nested_classes = true -ij_kotlin_imports_layout = *,java.**,javax.**,kotlin.**,^ -ij_kotlin_insert_whitespaces_in_simple_one_line_method = true -ij_kotlin_keep_blank_lines_before_right_brace = 0 -ij_kotlin_keep_blank_lines_in_code = 1 -ij_kotlin_keep_blank_lines_in_declarations = 1 -ij_kotlin_keep_first_column_comment = true -ij_kotlin_keep_indents_on_empty_lines = false -ij_kotlin_keep_line_breaks = true -ij_kotlin_lbrace_on_next_line = false -ij_kotlin_line_comment_add_space = true -ij_kotlin_line_comment_at_first_column = false -ij_kotlin_method_annotation_wrap = normal -ij_kotlin_method_call_chain_wrap = on_every_item -ij_kotlin_method_parameters_new_line_after_left_paren = true -ij_kotlin_method_parameters_right_paren_on_new_line = true -ij_kotlin_method_parameters_wrap = split_into_lines -ij_kotlin_name_count_to_use_star_import = 999 -ij_kotlin_name_count_to_use_star_import_for_members = 999 -ij_kotlin_parameter_annotation_wrap = off -ij_kotlin_space_after_comma = true -ij_kotlin_space_after_extend_colon = true -ij_kotlin_space_after_type_colon = true -ij_kotlin_space_before_catch_parentheses = true -ij_kotlin_space_before_comma = false -ij_kotlin_space_before_extend_colon = true -ij_kotlin_space_before_for_parentheses = true -ij_kotlin_space_before_if_parentheses = true -ij_kotlin_space_before_lambda_arrow = true -ij_kotlin_space_before_type_colon = false -ij_kotlin_space_before_when_parentheses = true -ij_kotlin_space_before_while_parentheses = true -ij_kotlin_spaces_around_additive_operators = true -ij_kotlin_spaces_around_assignment_operators = true -ij_kotlin_spaces_around_equality_operators = true -ij_kotlin_spaces_around_function_type_arrow = true -ij_kotlin_spaces_around_logical_operators = true -ij_kotlin_spaces_around_multiplicative_operators = true -ij_kotlin_spaces_around_range = false -ij_kotlin_spaces_around_relational_operators = true -ij_kotlin_spaces_around_unary_operator = false -ij_kotlin_spaces_around_when_arrow = true -ij_kotlin_variable_annotation_wrap = off -ij_kotlin_while_on_new_line = false -ij_kotlin_wrap_elvis_expressions = 1 -ij_kotlin_wrap_expression_body_functions = 1 -ij_kotlin_wrap_first_method_in_call_chain = false - [{*.har,*.json}] tab_width = 4 ij_continuation_indent_size = 8 @@ -611,10 +641,3 @@ ij_html_space_around_equality_in_attribute = false ij_html_space_inside_empty_tag = false ij_html_text_wrap = normal ij_html_uniform_ident = false - -[{*.yaml,*.yml}] -ij_yaml_keep_indents_on_empty_lines = false -ij_yaml_keep_line_breaks = true -ij_yaml_space_before_colon = true -ij_yaml_spaces_within_braces = true -ij_yaml_spaces_within_brackets = true diff --git a/.github/workflows/kotlin.yml b/.github/workflows/kotlin.yml index b6c929b229..3261e80632 100644 --- a/.github/workflows/kotlin.yml +++ b/.github/workflows/kotlin.yml @@ -131,7 +131,7 @@ jobs : name : Check with Gradle with : arguments : | - allTests test apiCheck checkVersionIsSnapshot lint lintKotlin --continue + allTests test apiCheck checkVersionIsSnapshot lint ktlintCheck --continue cache-read-only : false # Report as Github Pull Request Check. diff --git a/benchmarks/dungeon-benchmark/build.gradle.kts b/benchmarks/dungeon-benchmark/build.gradle.kts index 0d9c6e2387..f473d105ac 100644 --- a/benchmarks/dungeon-benchmark/build.gradle.kts +++ b/benchmarks/dungeon-benchmark/build.gradle.kts @@ -52,6 +52,6 @@ dependencies { androidComponents { beforeVariants(selector().all()) { // TODO use it.enable when using AGP 7.3+ - it.enabled = it.buildType == "release" + it.enable = it.buildType == "release" } } diff --git a/build-logic/build.gradle.kts b/build-logic/build.gradle.kts index 0605cc195f..21caf00735 100644 --- a/build-logic/build.gradle.kts +++ b/build-logic/build.gradle.kts @@ -1,7 +1,7 @@ -@Suppress("DSL_SCOPE_VIOLATION") plugins { `kotlin-dsl` alias(libs.plugins.google.ksp) + alias(libs.plugins.ktlint) } repositories { @@ -20,8 +20,6 @@ dependencies { implementation(libs.dokka.gradle.plugin) implementation(libs.dropbox.dependencyGuard) implementation(libs.kotlin.gradle.plugin) - implementation(libs.ktlint.core) - implementation(libs.kotlinter) implementation(libs.squareup.moshi) implementation(libs.squareup.moshi.adapters) implementation(libs.vanniktech.publish) @@ -31,6 +29,9 @@ dependencies { java { // Java 11 is required when compiling against AGP 7.4.0+ - sourceCompatibility = JavaVersion.VERSION_11 - targetCompatibility = JavaVersion.VERSION_11 + toolchain.languageVersion.set(JavaLanguageVersion.of(11)) +} + +kotlin { + jvmToolchain(11) } diff --git a/build-logic/settings.gradle.kts b/build-logic/settings.gradle.kts index 9d24bb3019..7daecd9f5a 100644 --- a/build-logic/settings.gradle.kts +++ b/build-logic/settings.gradle.kts @@ -1,5 +1,3 @@ -enableFeaturePreview("VERSION_CATALOGS") - dependencyResolutionManagement { @Suppress("UnstableApiUsage") diff --git a/build-logic/src/main/java/android-ui-tests.gradle.kts b/build-logic/src/main/java/android-ui-tests.gradle.kts index 542a33f268..4d387c44d6 100644 --- a/build-logic/src/main/java/android-ui-tests.gradle.kts +++ b/build-logic/src/main/java/android-ui-tests.gradle.kts @@ -22,6 +22,5 @@ dependencies { "androidTestImplementation"(libsCatalog.library("androidx-test-espresso-core")) "androidTestImplementation"(libsCatalog.library("androidx-test-junit")) - "androidTestImplementation"(libsCatalog.library("squareup-leakcanary-instrumentation") - ) + "androidTestImplementation"(libsCatalog.library("squareup-leakcanary-instrumentation")) } diff --git a/build-logic/src/main/java/com/squareup/workflow1/buildsrc/KotlinCommonSettings.kt b/build-logic/src/main/java/com/squareup/workflow1/buildsrc/KotlinCommonSettings.kt index 3f347e17ea..08531aa817 100644 --- a/build-logic/src/main/java/com/squareup/workflow1/buildsrc/KotlinCommonSettings.kt +++ b/build-logic/src/main/java/com/squareup/workflow1/buildsrc/KotlinCommonSettings.kt @@ -1,5 +1,6 @@ package com.squareup.workflow1.buildsrc +import com.squareup.workflow1.libsCatalog import org.gradle.api.Project import org.gradle.kotlin.dsl.dependencies import org.gradle.kotlin.dsl.kotlin @@ -10,12 +11,10 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompile val Project.isRunningFromIde get() = properties["android.injected.invoked.from.ide"] == "true" -@Suppress("SuspiciousCollectionReassignment") fun Project.kotlinCommonSettings( bomConfigurationName: String ) { - - applyKtLint() + pluginManager.apply(libsCatalog.findPlugin("ktlint").get().get().pluginId) // force the same Kotlin version everywhere, including transitive dependencies dependencies { @@ -24,7 +23,6 @@ fun Project.kotlinCommonSettings( tasks.withType { kotlinOptions { - jvmTarget = "1.8" // Allow warnings when running from IDE, makes it easier to experiment. diff --git a/build-logic/src/main/java/com/squareup/workflow1/buildsrc/artifacts/ArtifactsCheckTask.kt b/build-logic/src/main/java/com/squareup/workflow1/buildsrc/artifacts/ArtifactsCheckTask.kt index f77e1bb3a9..a3a6fd9d3d 100644 --- a/build-logic/src/main/java/com/squareup/workflow1/buildsrc/artifacts/ArtifactsCheckTask.kt +++ b/build-logic/src/main/java/com/squareup/workflow1/buildsrc/artifacts/ArtifactsCheckTask.kt @@ -287,7 +287,7 @@ open class ArtifactsCheckTask @Inject constructor( YELLOW("\u001B[33m") } - private val supported = "win" !in System.getProperty("os.name").toLowerCase(Locale.ROOT) + private val supported = "win" !in System.getProperty("os.name").lowercase(Locale.ROOT) private fun String.colorized(color: Color) = if (supported) { "${color.escape}$this${RESET.escape}" } else { diff --git a/build-logic/src/main/java/com/squareup/workflow1/buildsrc/ktlint.kt b/build-logic/src/main/java/com/squareup/workflow1/buildsrc/ktlint.kt deleted file mode 100644 index 199581140f..0000000000 --- a/build-logic/src/main/java/com/squareup/workflow1/buildsrc/ktlint.kt +++ /dev/null @@ -1,77 +0,0 @@ -package com.squareup.workflow1.buildsrc - -import org.gradle.api.Project -import org.gradle.api.tasks.TaskContainer -import org.jmailen.gradle.kotlinter.tasks.ConfigurableKtLintTask -import org.jmailen.gradle.kotlinter.tasks.FormatTask -import org.jmailen.gradle.kotlinter.tasks.LintTask - -/** - * Applies Kotlinter settings to any project, with additional tasks for the root project. - * - * @since 0.10.0 - */ -fun Project.applyKtLint() { - pluginManager.apply("org.jmailen.kotlinter") - - tasks.withType(LintTask::class.java) { - ignoreFailures.set(false) - mustRunAfter(tasks.withType(FormatTask::class.java)) - } - - if (project == rootProject) { - tasks.register("lintKotlin") - tasks.register("formatKotlin") - afterEvaluate { - addGradleScriptTasks(tasks, taskNameQualifier = "") - } - } - - // dummy ktlint-gradle plugin task names which just delegate to the Kotlinter ones - tasks.register("ktlintCheck") { - dependsOn(tasks.withType(LintTask::class.java)) - } - tasks.register("ktlintFormat") { - dependsOn(tasks.withType(FormatTask::class.java)) - } -} - -// Add check/format tasks to each root project (including child root projects) which target every -// `build.gradle.kts` and `settings.gradle.kts` file within that project group. -private fun Project.addGradleScriptTasks( - taskContainer: TaskContainer, - taskNameQualifier: String = "" -) { - val includedProjectScriptFiles = allprojects - .flatMap { included -> - listOfNotNull( - included.buildFile, - included.file("settings.gradle.kts").takeIf { it.exists() } - ) - } - - val lintKotlinBuildLogic = taskContainer.register( - "lintKotlin${taskNameQualifier}BuildScripts", - LintTask::class.java - ) { - group = "Formatting" - description = "Runs lint on the build and settings files" - source(includedProjectScriptFiles) - } - - tasks.named("lintKotlin") { - dependsOn(lintKotlinBuildLogic) - } - - val formatKotlinBuildLogic = taskContainer.register( - "formatKotlin${taskNameQualifier}BuildScripts", - FormatTask::class.java - ) { - group = "Formatting" - description = "Formats the build and settings files" - source(includedProjectScriptFiles) - } - tasks.named("formatKotlin") { - dependsOn(formatKotlinBuildLogic) - } -} diff --git a/build-logic/src/main/java/dependency-guard.gradle.kts b/build-logic/src/main/java/dependency-guard.gradle.kts index 8f0d219a0d..f2eb6a6554 100644 --- a/build-logic/src/main/java/dependency-guard.gradle.kts +++ b/build-logic/src/main/java/dependency-guard.gradle.kts @@ -17,12 +17,13 @@ afterEvaluate { // If we got here, we're either in an empty "parent" module without a build plugin // (and no configurations), or we're in a vanilla Kotlin module. In this case, we can just look // at configuration names. - else -> configurations - .map { it.name } - .filter { - it.endsWith("runtimeClasspath", ignoreCase = true) && - !it.endsWith("testRuntimeClasspath", ignoreCase = true) - } + else -> + configurations + .map { it.name } + .filter { + it.endsWith("runtimeClasspath", ignoreCase = true) && + !it.endsWith("testRuntimeClasspath", ignoreCase = true) + } } if (configurationNames.isNotEmpty()) { diff --git a/build-logic/src/main/java/kotlin-jvm.gradle.kts b/build-logic/src/main/java/kotlin-jvm.gradle.kts index 57845b5c48..5dbd27cb8f 100644 --- a/build-logic/src/main/java/kotlin-jvm.gradle.kts +++ b/build-logic/src/main/java/kotlin-jvm.gradle.kts @@ -22,5 +22,4 @@ tasks.withType { } } - project.kotlinCommonSettings(bomConfigurationName = "implementation") diff --git a/build.gradle.kts b/build.gradle.kts index 406af838a6..e9190475df 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,4 +1,3 @@ -import com.squareup.workflow1.buildsrc.applyKtLint import org.jetbrains.dokka.gradle.AbstractDokkaLeafTask import java.net.URL @@ -26,6 +25,7 @@ plugins { base id("artifacts-check") id("dependency-guard") + alias(libs.plugins.ktlint) } subprojects { @@ -39,8 +39,6 @@ subprojects { } } -applyKtLint() - apply(from = rootProject.file(".buildscript/binary-validation.gradle")) // This plugin needs to be applied to the root projects for the dokkaGfmCollector task we use to diff --git a/dependencies/classpath.txt b/dependencies/classpath.txt index 61b3d0b674..ffb4dfc960 100644 --- a/dependencies/classpath.txt +++ b/dependencies/classpath.txt @@ -55,7 +55,7 @@ com.google.code.findbugs:jsr305:3.0.2 com.google.code.gson:gson:2.8.9 com.google.crypto.tink:tink:1.3.0-rc2 com.google.dagger:dagger:2.28.3 -com.google.devtools.ksp:symbol-processing-gradle-plugin:1.7.20-1.0.8 +com.google.devtools.ksp:symbol-processing-gradle-plugin:1.8.10-1.0.9 com.google.errorprone:error_prone_annotations:2.4.0 com.google.flatbuffers:flatbuffers-java:1.12.0 com.google.guava:failureaccess:1.0.1 @@ -68,14 +68,8 @@ com.google.protobuf:protobuf-java:3.17.2 com.google.testing.platform:core-proto:0.0.8-alpha08 com.googlecode.java-diff-utils:diffutils:1.3.0 com.googlecode.juniversalchardet:juniversalchardet:1.0.3 -com.pinterest.ktlint:ktlint-core:0.47.1 -com.pinterest.ktlint:ktlint-reporter-checkstyle:0.47.1 -com.pinterest.ktlint:ktlint-reporter-html:0.47.1 -com.pinterest.ktlint:ktlint-reporter-json:0.47.1 -com.pinterest.ktlint:ktlint-reporter-plain:0.47.1 -com.pinterest.ktlint:ktlint-reporter-sarif:0.47.1 -com.pinterest.ktlint:ktlint-ruleset-experimental:0.47.1 -com.pinterest.ktlint:ktlint-ruleset-standard:0.47.1 +com.rickbusarow.ktlint:com.rickbusarow.ktlint.gradle.plugin:0.1.4 +com.rickbusarow.ktlint:ktlint-gradle-plugin:0.1.4 com.squareup.moshi:moshi-adapters:1.13.0 com.squareup.moshi:moshi:1.13.0 com.squareup.okhttp3:okhttp:4.10.0 @@ -93,8 +87,6 @@ com.vanniktech:nexus:0.22.0 commons-codec:commons-codec:1.11 commons-io:commons-io:2.4 commons-logging:commons-logging:1.2 -io.github.detekt.sarif4k:sarif4k:0.0.1 -io.github.microutils:kotlin-logging-jvm:2.1.23 io.grpc:grpc-api:1.39.0 io.grpc:grpc-context:1.39.0 io.grpc:grpc-core:1.39.0 @@ -131,56 +123,49 @@ org.bouncycastle:bcprov-jdk15on:1.67 org.checkerframework:checker-qual:3.5.0 org.codehaus.mojo:animal-sniffer-annotations:1.19 org.codehaus.woodstox:stax2-api:4.2.1 -org.ec4j.core:ec4j-core:0.3.0 org.glassfish.jaxb:jaxb-runtime:2.3.2 org.glassfish.jaxb:txw2:2.3.2 org.jdom:jdom2:2.0.6 org.jetbrains.dokka:dokka-core:1.8.10 org.jetbrains.dokka:dokka-gradle-plugin:1.8.10 org.jetbrains.intellij.deps:trove4j:1.0.20200330 -org.jetbrains.kotlin:kotlin-android-extensions:1.7.20 -org.jetbrains.kotlin:kotlin-annotation-processing-gradle:1.7.20 -org.jetbrains.kotlin:kotlin-bom:1.7.20 -org.jetbrains.kotlin:kotlin-build-common:1.7.20 -org.jetbrains.kotlin:kotlin-compiler-embeddable:1.7.20 -org.jetbrains.kotlin:kotlin-compiler-runner:1.7.20 -org.jetbrains.kotlin:kotlin-daemon-client:1.7.20 -org.jetbrains.kotlin:kotlin-daemon-embeddable:1.7.20 -org.jetbrains.kotlin:kotlin-gradle-plugin-api:1.7.20 -org.jetbrains.kotlin:kotlin-gradle-plugin-idea-proto:1.7.20 -org.jetbrains.kotlin:kotlin-gradle-plugin-idea:1.7.20 -org.jetbrains.kotlin:kotlin-gradle-plugin-model:1.7.20 -org.jetbrains.kotlin:kotlin-gradle-plugin:1.7.20 -org.jetbrains.kotlin:kotlin-klib-commonizer-api:1.7.20 -org.jetbrains.kotlin:kotlin-native-utils:1.7.20 -org.jetbrains.kotlin:kotlin-project-model:1.7.20 -org.jetbrains.kotlin:kotlin-reflect:1.6.21 -org.jetbrains.kotlin:kotlin-script-runtime:1.7.20 -org.jetbrains.kotlin:kotlin-scripting-common:1.7.20 -org.jetbrains.kotlin:kotlin-scripting-compiler-embeddable:1.7.20 -org.jetbrains.kotlin:kotlin-scripting-compiler-impl-embeddable:1.7.20 -org.jetbrains.kotlin:kotlin-scripting-jvm:1.7.20 -org.jetbrains.kotlin:kotlin-serialization:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-common:1.6.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.6.21 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.21 -org.jetbrains.kotlin:kotlin-stdlib:1.6.21 -org.jetbrains.kotlin:kotlin-tooling-core:1.7.20 -org.jetbrains.kotlin:kotlin-util-io:1.7.20 -org.jetbrains.kotlin:kotlin-util-klib:1.7.20 +org.jetbrains.kotlin:kotlin-android-extensions:1.8.10 +org.jetbrains.kotlin:kotlin-annotation-processing-gradle:1.8.10 +org.jetbrains.kotlin:kotlin-bom:1.8.10 +org.jetbrains.kotlin:kotlin-build-common:1.8.10 +org.jetbrains.kotlin:kotlin-compiler-embeddable:1.8.10 +org.jetbrains.kotlin:kotlin-compiler-runner:1.8.10 +org.jetbrains.kotlin:kotlin-daemon-client:1.8.10 +org.jetbrains.kotlin:kotlin-daemon-embeddable:1.8.10 +org.jetbrains.kotlin:kotlin-gradle-plugin-api:1.8.10 +org.jetbrains.kotlin:kotlin-gradle-plugin-idea-proto:1.8.10 +org.jetbrains.kotlin:kotlin-gradle-plugin-idea:1.8.10 +org.jetbrains.kotlin:kotlin-gradle-plugin-model:1.8.10 +org.jetbrains.kotlin:kotlin-gradle-plugin:1.8.10 +org.jetbrains.kotlin:kotlin-klib-commonizer-api:1.8.10 +org.jetbrains.kotlin:kotlin-native-utils:1.8.10 +org.jetbrains.kotlin:kotlin-project-model:1.8.10 +org.jetbrains.kotlin:kotlin-reflect:1.8.10 +org.jetbrains.kotlin:kotlin-scripting-common:1.8.10 +org.jetbrains.kotlin:kotlin-scripting-compiler-embeddable:1.8.10 +org.jetbrains.kotlin:kotlin-scripting-compiler-impl-embeddable:1.8.10 +org.jetbrains.kotlin:kotlin-scripting-jvm:1.8.10 +org.jetbrains.kotlin:kotlin-serialization:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-common:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib:1.8.10 +org.jetbrains.kotlin:kotlin-tooling-core:1.8.10 +org.jetbrains.kotlin:kotlin-util-io:1.8.10 +org.jetbrains.kotlin:kotlin-util-klib:1.8.10 org.jetbrains.kotlinx:binary-compatibility-validator:0.11.1 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.6.3 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.6.3 org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.3 org.jetbrains.kotlinx:kotlinx-metadata-jvm:0.5.0 -org.jetbrains.kotlinx:kotlinx-serialization-core-jvm:1.1.0 -org.jetbrains.kotlinx:kotlinx-serialization-core:1.1.0 -org.jetbrains.kotlinx:kotlinx-serialization-json-jvm:1.1.0 -org.jetbrains.kotlinx:kotlinx-serialization-json:1.1.0 org.jetbrains:annotations:13.0 org.jetbrains:markdown-jvm:0.3.1 org.jetbrains:markdown:0.3.1 -org.jmailen.gradle:kotlinter-gradle:3.12.0 org.json:json:20180813 org.jsoup:jsoup:1.15.3 org.jvnet.staxex:stax-ex:1.8.1 @@ -189,7 +174,7 @@ org.ow2.asm:asm-commons:9.2 org.ow2.asm:asm-tree:9.2 org.ow2.asm:asm-util:9.2 org.ow2.asm:asm:9.2 -org.slf4j:slf4j-api:1.7.32 +org.slf4j:slf4j-api:1.7.30 org.tensorflow:tensorflow-lite-metadata:0.1.0-rc2 xerces:xercesImpl:2.12.0 xml-apis:xml-apis:1.4.01 diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index f92fe0d1f0..b9e8ac9af4 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -10,7 +10,7 @@ androidx-activity = "1.6.1" androidx-appcompat = "1.6.1" androidx-benchmark = "1.1.1" androidx-cardview = "1.0.0" -androidx-compose-compiler = "1.3.2" +androidx-compose-compiler = "1.4.4" # see https://developer.android.com/jetpack/compose/bom/bom-mapping androidx-compose-bom = "2023.01.00" androidx-constraintlayout = "2.1.4" @@ -41,22 +41,22 @@ dependencyGuard = "0.1.0" google-accompanist = "0.18.0" google-dagger = "2.40.5" -google-ksp = "1.7.20-1.0.8" +google-ksp = "1.8.10-1.0.9" google-material = "1.4.0" groovy = "3.0.9" jUnit = "4.13.2" javaParser = "3.24.0" kotest = "5.1.0" -kotlin = "1.7.20" +kotlin = "1.8.10" kotlinx-binary-compatibility = "0.11.1" kotlinx-coroutines = "1.6.4" kotlinx-serialization-json = "1.3.2" kotlinx-atomicfu = "0.17.2" -kotlinter = "3.12.0" -ktlint = "0.47.1" +ktlint = "0.49.1" +ktlint-gradle = "0.1.4" material = "1.3.0" mavenPublish = "0.13.0" @@ -96,7 +96,7 @@ dropbox-dependencyGuard = { id = "com.dropbox.dependency-guard", version.ref = " google-ksp = { id = "com.google.devtools.ksp", version.ref = "google-ksp" } kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" } -kotlinter = { id = "org.jmailen.kotlinter", version.ref = "kotlinter" } +ktlint = { id = "com.rickbusarow.ktlint", version.ref = "ktlint-gradle" } kotlinx-apiBinaryCompatibility = { id = "org.jetbrains.kotlinx.binary-compatibility-validator", version.ref = "kotlinx-binary-compatibility" } mavenPublish = { id = "com.vanniktech.maven.publish", version.ref = "vanniktech-publish" } @@ -116,20 +116,20 @@ androidx-compose-compiler = { module = "androidx.compose.compiler:compiler", ver androidx-compose-bom = { module = "androidx.compose:compose-bom", version.ref = "androidx-compose-bom" } -androidx-compose-foundation = { module = "androidx.compose.foundation:foundation"} -androidx-compose-foundation-layout = { module = "androidx.compose.foundation:foundation-layout"} +androidx-compose-foundation = { module = "androidx.compose.foundation:foundation" } +androidx-compose-foundation-layout = { module = "androidx.compose.foundation:foundation-layout" } -androidx-compose-material = { module = "androidx.compose.material:material"} +androidx-compose-material = { module = "androidx.compose.material:material" } -androidx-compose-runtime = { module = "androidx.compose.runtime:runtime"} -androidx-compose-runtime-saveable = { module = "androidx.compose.runtime:runtime-saveable"} +androidx-compose-runtime = { module = "androidx.compose.runtime:runtime" } +androidx-compose-runtime-saveable = { module = "androidx.compose.runtime:runtime-saveable" } -androidx-compose-ui = { module = "androidx.compose.ui:ui"} -androidx-compose-ui-geometry = { module = "androidx.compose.ui:ui-geometry"} -androidx-compose-ui-graphics = { module = "androidx.compose.ui:ui-graphics"} -androidx-compose-ui-test-junit4 = { module = "androidx.compose.ui:ui-test-junit4"} -androidx-compose-ui-tooling = { module = "androidx.compose.ui:ui-tooling"} -androidx-compose-ui-tooling-preview = { module = "androidx.compose.ui:ui-tooling-preview"} +androidx-compose-ui = { module = "androidx.compose.ui:ui" } +androidx-compose-ui-geometry = { module = "androidx.compose.ui:ui-geometry" } +androidx-compose-ui-graphics = { module = "androidx.compose.ui:ui-graphics" } +androidx-compose-ui-test-junit4 = { module = "androidx.compose.ui:ui-test-junit4" } +androidx-compose-ui-tooling = { module = "androidx.compose.ui:ui-tooling" } +androidx-compose-ui-tooling-preview = { module = "androidx.compose.ui:ui-tooling-preview" } androidx-constraintlayout = { module = "androidx.constraintlayout:constraintlayout", version.ref = "androidx-constraintlayout" } @@ -199,8 +199,6 @@ kotlin-test-common = { module = "org.jetbrains.kotlin:kotlin-test-common", versi kotlin-test-core = { module = "org.jetbrains.kotlin:kotlin-test", version.ref = "kotlin" } kotlin-test-jdk = { module = "org.jetbrains.kotlin:kotlin-test-junit", version.ref = "kotlin" } -kotlinter = { module = "org.jmailen.gradle:kotlinter-gradle", version.ref = "kotlinter" } - kotlinx-binaryCompatibility-gradle-plugin = { module = "org.jetbrains.kotlinx:binary-compatibility-validator", version.ref = "kotlinx-binary-compatibility" } kotlinx-coroutines-android = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-android", version.ref = "kotlinx-coroutines" } kotlinx-coroutines-core = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-core", version.ref = "kotlinx-coroutines" } @@ -211,6 +209,7 @@ kotlinx-serialization-json = { module = "org.jetbrains.kotlinx:kotlinx-serializa kotlinx-atomicfu = { module = "org.jetbrains.kotlinx:atomicfu", version.ref = "kotlinx-atomicfu" } ktlint-core = { module = "com.pinterest.ktlint:ktlint-core", version.ref = "ktlint" } +ktlint-gradle = { module = "com.rickbusarow.ktlint:ktlint-gradle-plugin", version.ref = "ktlint-gradle" } lanterna = "com.googlecode.lanterna:lanterna:3.1.1" diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index ae04661ee7..1f017e4ee9 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-all.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/internal-testing-utils/dependencies/runtimeClasspath.txt b/internal-testing-utils/dependencies/runtimeClasspath.txt index 34f586806d..25dba1902f 100644 --- a/internal-testing-utils/dependencies/runtimeClasspath.txt +++ b/internal-testing-utils/dependencies/runtimeClasspath.txt @@ -1,6 +1,6 @@ -org.jetbrains.kotlin:kotlin-bom:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-common:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib:1.7.20 +org.jetbrains.kotlin:kotlin-bom:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-common:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib:1.8.10 org.jetbrains:annotations:13.0 diff --git a/kotlin-js-store/yarn.lock b/kotlin-js-store/yarn.lock index a839418c1f..ad946cdcee 100644 --- a/kotlin-js-store/yarn.lock +++ b/kotlin-js-store/yarn.lock @@ -276,7 +276,7 @@ acorn-import-assertions@^1.7.6: resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz#ba2b5939ce62c238db6d93d81c9b111b29b855e9" integrity sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw== -acorn@^8.4.1, acorn@^8.5.0: +acorn@^8.5.0, acorn@^8.7.1: version "8.8.2" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.2.tgz#1b2f25db02af965399b9776b0c2c391276d37c4a" integrity sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw== @@ -639,10 +639,10 @@ engine.io@~6.4.1: engine.io-parser "~5.0.3" ws "~8.11.0" -enhanced-resolve@^5.9.3: - version "5.12.0" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz#300e1c90228f5b570c4d35babf263f6da7155634" - integrity sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ== +enhanced-resolve@^5.10.0: + version "5.14.1" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.14.1.tgz#de684b6803724477a4af5d74ccae5de52c25f6b3" + integrity sha512-Vklwq2vDKtl0y/vtwjSesgJ5MYS7Etuk5txS8VdKL4AOS1aUlD96zqIfsOSLQsdv3xgMRbtkWM8eG9XDfKUPow== dependencies: graceful-fs "^4.2.4" tapable "^2.2.0" @@ -1758,7 +1758,7 @@ void-elements@^2.0.0: resolved "https://registry.yarnpkg.com/void-elements/-/void-elements-2.0.1.tgz#c066afb582bb1cb4128d60ea92392e94d5e9dbec" integrity sha512-qZKX4RnBzH2ugr8Lxa7x+0V6XD9Sb/ouARtiasEQCHB1EVU4NXtmHsDDrx1dO4ne5fc3J6EW05BP1Dl0z0iung== -watchpack@^2.3.1: +watchpack@^2.4.0: version "2.4.0" resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.4.0.tgz#fa33032374962c78113f93c7f2fb4c54c9862a5d" integrity sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg== @@ -1804,21 +1804,21 @@ webpack-sources@^3.2.3: resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde" integrity sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w== -webpack@5.73.0: - version "5.73.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.73.0.tgz#bbd17738f8a53ee5760ea2f59dce7f3431d35d38" - integrity sha512-svjudQRPPa0YiOYa2lM/Gacw0r6PvxptHj4FuEKQ2kX05ZLkjbVc5MnPs6its5j7IZljnIqSVo/OsY2X0IpHGA== +webpack@5.74.0: + version "5.74.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.74.0.tgz#02a5dac19a17e0bb47093f2be67c695102a55980" + integrity sha512-A2InDwnhhGN4LYctJj6M1JEaGL7Luj6LOmyBHjcI8529cm5p6VXiTIW2sn6ffvEAKmveLzvu4jrihwXtPojlAA== dependencies: "@types/eslint-scope" "^3.7.3" "@types/estree" "^0.0.51" "@webassemblyjs/ast" "1.11.1" "@webassemblyjs/wasm-edit" "1.11.1" "@webassemblyjs/wasm-parser" "1.11.1" - acorn "^8.4.1" + acorn "^8.7.1" acorn-import-assertions "^1.7.6" browserslist "^4.14.5" chrome-trace-event "^1.0.2" - enhanced-resolve "^5.9.3" + enhanced-resolve "^5.10.0" es-module-lexer "^0.9.0" eslint-scope "5.1.1" events "^3.2.0" @@ -1831,7 +1831,7 @@ webpack@5.73.0: schema-utils "^3.1.0" tapable "^2.1.1" terser-webpack-plugin "^5.1.3" - watchpack "^2.3.1" + watchpack "^2.4.0" webpack-sources "^3.2.3" which@^1.2.1: diff --git a/samples/containers/hello-back-button/src/main/java/com/squareup/sample/hellobackbutton/HelloBackButtonWorkflow.kt b/samples/containers/hello-back-button/src/main/java/com/squareup/sample/hellobackbutton/HelloBackButtonWorkflow.kt index 48807ffe09..72cd4a3022 100644 --- a/samples/containers/hello-back-button/src/main/java/com/squareup/sample/hellobackbutton/HelloBackButtonWorkflow.kt +++ b/samples/containers/hello-back-button/src/main/java/com/squareup/sample/hellobackbutton/HelloBackButtonWorkflow.kt @@ -17,7 +17,7 @@ object HelloBackButtonWorkflow : StatefulWorkflow setOf(CONFLATE_STALE_RENDERINGS) "conflate-stateChange" -> setOf(CONFLATE_STALE_RENDERINGS, RENDER_ONLY_WHEN_STATE_CHANGES) "baseline-stateChange" -> setOf(RENDER_ONLY_WHEN_STATE_CHANGES) diff --git a/workflow-core/dependencies/jsRuntimeClasspath.txt b/workflow-core/dependencies/jsRuntimeClasspath.txt index f5b52c42f8..aa32047fd0 100644 --- a/workflow-core/dependencies/jsRuntimeClasspath.txt +++ b/workflow-core/dependencies/jsRuntimeClasspath.txt @@ -1,9 +1,9 @@ com.squareup.okio:okio-js:3.0.0 com.squareup.okio:okio:3.0.0 org.jetbrains.kotlin:atomicfu:1.6.21 -org.jetbrains.kotlin:kotlin-bom:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-js:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib:1.7.20 +org.jetbrains.kotlin:kotlin-bom:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-js:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib:1.8.10 org.jetbrains.kotlinx:atomicfu-js:0.17.3 org.jetbrains.kotlinx:kotlinx-coroutines-core-js:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4 diff --git a/workflow-core/dependencies/jvmRuntimeClasspath.txt b/workflow-core/dependencies/jvmRuntimeClasspath.txt index a1d554ae88..48ad565c0f 100644 --- a/workflow-core/dependencies/jvmRuntimeClasspath.txt +++ b/workflow-core/dependencies/jvmRuntimeClasspath.txt @@ -1,9 +1,9 @@ com.squareup.okio:okio-jvm:3.0.0 com.squareup.okio:okio:3.0.0 -org.jetbrains.kotlin:kotlin-bom:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib:1.7.20 +org.jetbrains.kotlin:kotlin-bom:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib:1.8.10 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4 diff --git a/workflow-core/dependencies/runtimeClasspath.txt b/workflow-core/dependencies/runtimeClasspath.txt index 2e8a0de1f7..9be0fbd1aa 100644 --- a/workflow-core/dependencies/runtimeClasspath.txt +++ b/workflow-core/dependencies/runtimeClasspath.txt @@ -1,10 +1,10 @@ com.squareup.okio:okio-jvm:3.0.0 com.squareup.okio:okio:3.0.0 -org.jetbrains.kotlin:kotlin-bom:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-common:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib:1.7.20 +org.jetbrains.kotlin:kotlin-bom:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-common:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib:1.8.10 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4 diff --git a/workflow-core/src/commonMain/kotlin/com/squareup/workflow1/BaseRenderContext.kt b/workflow-core/src/commonMain/kotlin/com/squareup/workflow1/BaseRenderContext.kt index da6b3c3100..83c2012070 100644 --- a/workflow-core/src/commonMain/kotlin/com/squareup/workflow1/BaseRenderContext.kt +++ b/workflow-core/src/commonMain/kotlin/com/squareup/workflow1/BaseRenderContext.kt @@ -197,7 +197,7 @@ public interface BaseRenderContext { public fun eventHandler( name: () -> String = { "eventHandler" }, update: WorkflowAction - .Updater.(E1, E2, E3, E4, E5, E6, E7, E8, E9) -> Unit + .Updater.(E1, E2, E3, E4, E5, E6, E7, E8, E9) -> Unit ): (E1, E2, E3, E4, E5, E6, E7, E8, E9) -> Unit { return { e1, e2, e3, e4, e5, e6, e7, e8, e9 -> actionSink.send(action(name) { update(e1, e2, e3, e4, e5, e6, e7, e8, e9) }) @@ -207,7 +207,7 @@ public interface BaseRenderContext { public fun eventHandler( name: () -> String = { "eventHandler" }, update: WorkflowAction - .Updater.(E1, E2, E3, E4, E5, E6, E7, E8, E9, E10) -> Unit + .Updater.(E1, E2, E3, E4, E5, E6, E7, E8, E9, E10) -> Unit ): (E1, E2, E3, E4, E5, E6, E7, E8, E9, E10) -> Unit { return { e1, e2, e3, e4, e5, e6, e7, e8, e9, e10 -> actionSink.send(action(name) { update(e1, e2, e3, e4, e5, e6, e7, e8, e9, e10) }) @@ -219,31 +219,31 @@ public interface BaseRenderContext { * Convenience alias of [BaseRenderContext.renderChild] for workflows that don't take props. */ public fun -BaseRenderContext.renderChild( - child: Workflow, - key: String = "", - handler: (ChildOutputT) -> WorkflowAction -): ChildRenderingT = renderChild(child, Unit, key, handler) + BaseRenderContext.renderChild( + child: Workflow, + key: String = "", + handler: (ChildOutputT) -> WorkflowAction + ): ChildRenderingT = renderChild(child, Unit, key, handler) /** * Convenience alias of [BaseRenderContext.renderChild] for workflows that don't emit output. */ public fun -BaseRenderContext.renderChild( - child: Workflow, - props: ChildPropsT, - key: String = "" -): ChildRenderingT = renderChild(child, props, key) { noAction() } + BaseRenderContext.renderChild( + child: Workflow, + props: ChildPropsT, + key: String = "" + ): ChildRenderingT = renderChild(child, props, key) { noAction() } /** * Convenience alias of [BaseRenderContext.renderChild] for children that don't take props or emit * output. */ public fun -BaseRenderContext.renderChild( - child: Workflow, - key: String = "" -): ChildRenderingT = renderChild(child, Unit, key) { noAction() } + BaseRenderContext.renderChild( + child: Workflow, + key: String = "" + ): ChildRenderingT = renderChild(child, Unit, key) { noAction() } /** * Ensures a [Worker] that never emits anything is running. Since [worker] can't emit anything, @@ -254,10 +254,10 @@ BaseRenderContext.renderChild( * @param key An optional string key that is used to distinguish between identical [Worker]s. */ public inline fun , PropsT, StateT, OutputT> -BaseRenderContext.runningWorker( - worker: W, - key: String = "" -) { + BaseRenderContext.runningWorker( + worker: W, + key: String = "" + ) { runningWorker(worker, key) { // The compiler thinks this code is unreachable, and it is correct. But we have to pass a lambda // here so we might as well check at runtime as well. @@ -280,11 +280,11 @@ BaseRenderContext.runningWorker( * @param key An optional string key that is used to distinguish between identical [Worker]s. */ public inline fun , PropsT, StateT, OutputT> -BaseRenderContext.runningWorker( - worker: W, - key: String = "", - noinline handler: (T) -> WorkflowAction -) { + BaseRenderContext.runningWorker( + worker: W, + key: String = "", + noinline handler: (T) -> WorkflowAction + ) { runningWorker(worker, typeOf(), key, handler) } @@ -298,12 +298,12 @@ BaseRenderContext.runningWorker( */ @PublishedApi internal fun -BaseRenderContext.runningWorker( - worker: Worker, - workerType: KType, - key: String = "", - handler: (T) -> WorkflowAction -) { + BaseRenderContext.runningWorker( + worker: Worker, + workerType: KType, + key: String = "", + handler: (T) -> WorkflowAction + ) { val workerWorkflow = WorkerWorkflow(workerType, key) renderChild(workerWorkflow, props = worker, key = key, handler = handler) } diff --git a/workflow-core/src/commonMain/kotlin/com/squareup/workflow1/StatefulWorkflow.kt b/workflow-core/src/commonMain/kotlin/com/squareup/workflow1/StatefulWorkflow.kt index a91e792521..829223b7c9 100644 --- a/workflow-core/src/commonMain/kotlin/com/squareup/workflow1/StatefulWorkflow.kt +++ b/workflow-core/src/commonMain/kotlin/com/squareup/workflow1/StatefulWorkflow.kt @@ -267,10 +267,10 @@ public inline fun Workflow.Companion.stateful( * @param update Function that defines the workflow update. */ public fun -StatefulWorkflow.action( - name: String = "", - update: WorkflowAction.Updater.() -> Unit -): WorkflowAction = action({ name }, update) + StatefulWorkflow.action( + name: String = "", + update: WorkflowAction.Updater.() -> Unit + ): WorkflowAction = action({ name }, update) /** * Convenience to create a [WorkflowAction] with parameter types matching those @@ -282,10 +282,10 @@ StatefulWorkflow.action( * @param update Function that defines the workflow update. */ public fun -StatefulWorkflow.action( - name: () -> String, - update: WorkflowAction.Updater.() -> Unit -): WorkflowAction = object : WorkflowAction() { + StatefulWorkflow.action( + name: () -> String, + update: WorkflowAction.Updater.() -> Unit + ): WorkflowAction = object : WorkflowAction() { override fun Updater.apply() = update.invoke(this) override fun toString(): String = "action(${name()})-${this@action}" } diff --git a/workflow-core/src/commonMain/kotlin/com/squareup/workflow1/StatelessWorkflow.kt b/workflow-core/src/commonMain/kotlin/com/squareup/workflow1/StatelessWorkflow.kt index 68848afe9b..46c44f07d3 100644 --- a/workflow-core/src/commonMain/kotlin/com/squareup/workflow1/StatelessWorkflow.kt +++ b/workflow-core/src/commonMain/kotlin/com/squareup/workflow1/StatelessWorkflow.kt @@ -122,10 +122,10 @@ public fun Workflow.Companion.rendering( * @param update Function that defines the workflow update. */ public fun -StatelessWorkflow.action( - name: String = "", - update: WorkflowAction.Updater.() -> Unit -): WorkflowAction = action({ name }, update) + StatelessWorkflow.action( + name: String = "", + update: WorkflowAction.Updater.() -> Unit + ): WorkflowAction = action({ name }, update) /** * Convenience to create a [WorkflowAction] with parameter types matching those @@ -137,10 +137,10 @@ StatelessWorkflow.action( * @param update Function that defines the workflow update. */ public fun -StatelessWorkflow.action( - name: () -> String, - update: WorkflowAction.Updater.() -> Unit -): WorkflowAction = object : WorkflowAction() { + StatelessWorkflow.action( + name: () -> String, + update: WorkflowAction.Updater.() -> Unit + ): WorkflowAction = object : WorkflowAction() { override fun Updater.apply() = update.invoke(this) override fun toString(): String = "action(${name()})-${this@action}" } diff --git a/workflow-core/src/commonMain/kotlin/com/squareup/workflow1/Workflow.kt b/workflow-core/src/commonMain/kotlin/com/squareup/workflow1/Workflow.kt index ce2aaf685d..d78d1ab9f9 100644 --- a/workflow-core/src/commonMain/kotlin/com/squareup/workflow1/Workflow.kt +++ b/workflow-core/src/commonMain/kotlin/com/squareup/workflow1/Workflow.kt @@ -116,9 +116,9 @@ public interface Workflow { * renders [FromRenderingT] to one renders [ToRenderingT], */ public fun -Workflow.mapRendering( - transform: (FromRenderingT) -> ToRenderingT -): Workflow = + Workflow.mapRendering( + transform: (FromRenderingT) -> ToRenderingT + ): Workflow = object : StatelessWorkflow(), ImpostorWorkflow { override val realIdentifier: WorkflowIdentifier get() = this@mapRendering.identifier diff --git a/workflow-core/src/commonTest/kotlin/com/squareup/workflow1/SinkTest.kt b/workflow-core/src/commonTest/kotlin/com/squareup/workflow1/SinkTest.kt index ee65214f4a..9ee99cbd11 100644 --- a/workflow-core/src/commonTest/kotlin/com/squareup/workflow1/SinkTest.kt +++ b/workflow-core/src/commonTest/kotlin/com/squareup/workflow1/SinkTest.kt @@ -19,9 +19,7 @@ import kotlin.test.assertNull import kotlin.test.assertTrue import kotlin.test.fail -@OptIn( - ExperimentalCoroutinesApi::class, -) +@OptIn(ExperimentalCoroutinesApi::class) internal class SinkTest { private val sink = RecordingSink() diff --git a/workflow-runtime/dependencies/jsRuntimeClasspath.txt b/workflow-runtime/dependencies/jsRuntimeClasspath.txt index 85aa3f1ff4..009fa0cbfb 100644 --- a/workflow-runtime/dependencies/jsRuntimeClasspath.txt +++ b/workflow-runtime/dependencies/jsRuntimeClasspath.txt @@ -2,9 +2,9 @@ com.squareup.okio:okio-js:3.0.0 com.squareup.okio:okio:3.0.0 org.jetbrains.kotlin:atomicfu:1.6.21 -org.jetbrains.kotlin:kotlin-bom:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-js:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib:1.7.20 +org.jetbrains.kotlin:kotlin-bom:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-js:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib:1.8.10 org.jetbrains.kotlinx:atomicfu-js:0.17.3 org.jetbrains.kotlinx:kotlinx-coroutines-core-js:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4 diff --git a/workflow-runtime/dependencies/jvmRuntimeClasspath.txt b/workflow-runtime/dependencies/jvmRuntimeClasspath.txt index fa09689459..30b11c8725 100644 --- a/workflow-runtime/dependencies/jvmRuntimeClasspath.txt +++ b/workflow-runtime/dependencies/jvmRuntimeClasspath.txt @@ -1,10 +1,10 @@ :workflow-core com.squareup.okio:okio-jvm:3.0.0 com.squareup.okio:okio:3.0.0 -org.jetbrains.kotlin:kotlin-bom:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib:1.7.20 +org.jetbrains.kotlin:kotlin-bom:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib:1.8.10 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4 diff --git a/workflow-runtime/src/commonMain/kotlin/com/squareup/workflow1/internal/WorkflowNodeId.kt b/workflow-runtime/src/commonMain/kotlin/com/squareup/workflow1/internal/WorkflowNodeId.kt index 410d6567d9..e53b046bef 100644 --- a/workflow-runtime/src/commonMain/kotlin/com/squareup/workflow1/internal/WorkflowNodeId.kt +++ b/workflow-runtime/src/commonMain/kotlin/com/squareup/workflow1/internal/WorkflowNodeId.kt @@ -62,4 +62,4 @@ internal data class WorkflowNodeId( } internal fun , I, O, R> -W.id(key: String = ""): WorkflowNodeId = WorkflowNodeId(this, key) + W.id(key: String = ""): WorkflowNodeId = WorkflowNodeId(this, key) diff --git a/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/internal/ActiveStagingListTest.kt b/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/internal/ActiveStagingListTest.kt index efc5e7f925..5e01c513d0 100644 --- a/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/internal/ActiveStagingListTest.kt +++ b/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/internal/ActiveStagingListTest.kt @@ -19,7 +19,7 @@ internal class ActiveStagingListTest { @Test fun retainOrCreate_with_matching_predicate_moves_item() { val list = ActiveStagingList() list.retainOrCreate(predicate = { true }, create = { Node("foo") }) - list.commitStaging { /* Noop */ } + list.commitStaging { } list.retainOrCreate(predicate = { it.data == "foo" }, create = { Node("bar") }) @@ -30,7 +30,7 @@ internal class ActiveStagingListTest { @Test fun retainOrCreate_with_no_matching_predicate_creates_item() { val list = ActiveStagingList() list.retainOrCreate(predicate = { true }, create = { Node("foo") }) - list.commitStaging { /* Noop */ } + list.commitStaging { } list.retainOrCreate(predicate = { it.data == "bar" }, create = { Node("bar") }) @@ -41,7 +41,7 @@ internal class ActiveStagingListTest { @Test fun commitStaging_on_empty_lists() { val list = ActiveStagingList() - list.commitStaging { /* Noop */ } + list.commitStaging { } } @Test fun commitStaging_processes_inactive_items() { diff --git a/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/internal/RealRenderContextTest.kt b/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/internal/RealRenderContextTest.kt index cbc23388e1..45ce2dc9a4 100644 --- a/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/internal/RealRenderContextTest.kt +++ b/workflow-runtime/src/commonTest/kotlin/com/squareup/workflow1/internal/RealRenderContextTest.kt @@ -269,7 +269,7 @@ internal class RealRenderContextTest { val context = createdPoisonedContext() val sink = context.eventHandler { a: String, b: String, c: String, d: String, e: String, f: String, - g: String -> + g: String -> setOutput(a + b + c + d + e + f + g) } // Enable sink sends. @@ -288,7 +288,7 @@ internal class RealRenderContextTest { val context = createdPoisonedContext() val sink = context.eventHandler { a: String, b: String, c: String, d: String, e: String, f: String, - g: String, h: String -> + g: String, h: String -> setOutput(a + b + c + d + e + f + g + h) } // Enable sink sends. @@ -307,7 +307,7 @@ internal class RealRenderContextTest { val context = createdPoisonedContext() val sink = context.eventHandler { a: String, b: String, c: String, d: String, e: String, f: String, - g: String, h: String, i: String -> + g: String, h: String, i: String -> setOutput(a + b + c + d + e + f + g + h + i) } // Enable sink sends. @@ -326,7 +326,7 @@ internal class RealRenderContextTest { val context = createdPoisonedContext() val sink = context.eventHandler { a: String, b: String, c: String, d: String, e: String, f: String, - g: String, h: String, i: String, j: String -> + g: String, h: String, i: String, j: String -> setOutput(a + b + c + d + e + f + g + h + i + j) } // Enable sink sends. diff --git a/workflow-rx2/dependencies/runtimeClasspath.txt b/workflow-rx2/dependencies/runtimeClasspath.txt index 77f1820184..99518ca34a 100644 --- a/workflow-rx2/dependencies/runtimeClasspath.txt +++ b/workflow-rx2/dependencies/runtimeClasspath.txt @@ -2,11 +2,11 @@ com.squareup.okio:okio-jvm:3.0.0 com.squareup.okio:okio:3.0.0 io.reactivex.rxjava2:rxjava:2.2.21 -org.jetbrains.kotlin:kotlin-bom:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-common:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib:1.7.20 +org.jetbrains.kotlin:kotlin-bom:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-common:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib:1.8.10 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4 diff --git a/workflow-testing/dependencies/runtimeClasspath.txt b/workflow-testing/dependencies/runtimeClasspath.txt index 4e9b90241b..feb234e7dd 100644 --- a/workflow-testing/dependencies/runtimeClasspath.txt +++ b/workflow-testing/dependencies/runtimeClasspath.txt @@ -6,12 +6,12 @@ app.cash.turbine:turbine-jvm:0.12.1 app.cash.turbine:turbine:0.12.1 com.squareup.okio:okio-jvm:3.0.0 com.squareup.okio:okio:3.0.0 -org.jetbrains.kotlin:kotlin-bom:1.7.20 -org.jetbrains.kotlin:kotlin-reflect:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-common:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib:1.7.20 +org.jetbrains.kotlin:kotlin-bom:1.8.10 +org.jetbrains.kotlin:kotlin-reflect:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-common:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib:1.8.10 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4 diff --git a/workflow-testing/src/main/java/com/squareup/workflow1/testing/RenderTester.kt b/workflow-testing/src/main/java/com/squareup/workflow1/testing/RenderTester.kt index a4a73e2e71..d9dc8f565b 100644 --- a/workflow-testing/src/main/java/com/squareup/workflow1/testing/RenderTester.kt +++ b/workflow-testing/src/main/java/com/squareup/workflow1/testing/RenderTester.kt @@ -36,10 +36,10 @@ public fun Workflow.t * See [RenderTester] for usage documentation. */ public fun -StatefulWorkflow.testRender( - props: PropsT, - initialState: StateT -): RenderTester = + StatefulWorkflow.testRender( + props: PropsT, + initialState: StateT + ): RenderTester = RealRenderTester(this, props, initialState) /** @@ -349,13 +349,13 @@ public abstract class RenderTester { */ @Suppress("NOTHING_TO_INLINE") public inline fun -RenderTester.expectWorkflow( - identifier: WorkflowIdentifier, - rendering: ChildRenderingT, - key: String = "", - description: String = "", - noinline assertProps: (props: Any?) -> Unit = {} -): RenderTester = + RenderTester.expectWorkflow( + identifier: WorkflowIdentifier, + rendering: ChildRenderingT, + key: String = "", + description: String = "", + noinline assertProps: (props: Any?) -> Unit = {} + ): RenderTester = expectWorkflow(identifier, rendering, null as WorkflowOutput<*>?, key, description, assertProps) /** @@ -408,14 +408,14 @@ RenderTester.expectWorkflow( * messages. */ public fun -RenderTester.expectWorkflow( - identifier: WorkflowIdentifier, - rendering: ChildRenderingT, - output: WorkflowOutput?, - key: String = "", - description: String = "", - assertProps: (props: Any?) -> Unit = {} -): RenderTester = expectWorkflow( + RenderTester.expectWorkflow( + identifier: WorkflowIdentifier, + rendering: ChildRenderingT, + output: WorkflowOutput?, + key: String = "", + description: String = "", + assertProps: (props: Any?) -> Unit = {} + ): RenderTester = expectWorkflow( exactMatch = true, description = description.ifBlank { "workflow " + @@ -482,14 +482,14 @@ RenderTester.expectWorkflow( * messages. */ public inline fun -RenderTester.expectWorkflow( - workflowType: KClass>, - rendering: ChildRenderingT, - key: String = "", - crossinline assertProps: (props: ChildPropsT) -> Unit = {}, - output: WorkflowOutput? = null, - description: String = "" -): RenderTester = + RenderTester.expectWorkflow( + workflowType: KClass>, + rendering: ChildRenderingT, + key: String = "", + crossinline assertProps: (props: ChildPropsT) -> Unit = {}, + output: WorkflowOutput? = null, + description: String = "" + ): RenderTester = expectWorkflow( workflowType.workflowIdentifier, rendering, @@ -510,6 +510,6 @@ RenderTester.expectWorkflow( * this workflow. */ public fun -RenderTester.expectSideEffect(key: String): + RenderTester.expectSideEffect(key: String): RenderTester = expectSideEffect("side effect with key \"$key\"", exactMatch = true) { it == key } diff --git a/workflow-testing/src/main/java/com/squareup/workflow1/testing/RenderTesterWorkers.kt b/workflow-testing/src/main/java/com/squareup/workflow1/testing/RenderTesterWorkers.kt index e3958004a9..87462b6acd 100644 --- a/workflow-testing/src/main/java/com/squareup/workflow1/testing/RenderTesterWorkers.kt +++ b/workflow-testing/src/main/java/com/squareup/workflow1/testing/RenderTesterWorkers.kt @@ -29,13 +29,13 @@ import kotlin.reflect.typeOf */ @OptIn(ExperimentalStdlibApi::class) public inline fun -RenderTester.expectWorkerOutputting( - outputType: KType, - key: String = "", - crossinline assertWorker: (Worker<*>) -> Unit = {}, - output: WorkflowOutput<*>? = null, - description: String = "" -): RenderTester = expectWorker( + RenderTester.expectWorkerOutputting( + outputType: KType, + key: String = "", + crossinline assertWorker: (Worker<*>) -> Unit = {}, + output: WorkflowOutput<*>? = null, + description: String = "" + ): RenderTester = expectWorker( workerType = Worker::class.createType(listOf(KTypeProjection.covariant(outputType))), key = key, assertWorker = { assertWorker(it) }, @@ -62,13 +62,19 @@ RenderTester.expectWorkerOutputting( */ @OptIn(ExperimentalStdlibApi::class) public inline fun < - PropsT, StateT, OutputT, RenderingT, WorkerOutputT, reified WorkerT : Worker> -RenderTester.expectWorker( - expected: WorkerT, - key: String = "", - output: WorkflowOutput? = null, - description: String = "" -): RenderTester = expectWorker( + PropsT, + StateT, + OutputT, + RenderingT, + WorkerOutputT, + reified WorkerT : Worker + > + RenderTester.expectWorker( + expected: WorkerT, + key: String = "", + output: WorkflowOutput? = null, + description: String = "" + ): RenderTester = expectWorker( workerType = typeOf(), key = key, assertWorker = { @@ -145,13 +151,13 @@ public inline fun < */ @OptIn(ExperimentalStdlibApi::class) public fun -RenderTester.expectWorker( - workerType: KType, - key: String = "", - assertWorker: (Worker<*>) -> Unit = {}, - output: WorkflowOutput<*>? = null, - description: String = "" -): RenderTester = + RenderTester.expectWorker( + workerType: KType, + key: String = "", + assertWorker: (Worker<*>) -> Unit = {}, + output: WorkflowOutput<*>? = null, + description: String = "" + ): RenderTester = expectWorker( description = description.ifBlank { workerType.toString() + keyDescription(key) }, output = output, @@ -189,16 +195,16 @@ RenderTester.expectWorker( * worker matches the expectation. */ internal fun -RenderTester.expectWorker( - description: String, - output: WorkflowOutput<*>? = null, - exactMatch: Boolean = true, - predicate: ( - workerType: KType, - worker: Worker<*>, - key: String - ) -> Boolean -): RenderTester = + RenderTester.expectWorker( + description: String, + output: WorkflowOutput<*>? = null, + exactMatch: Boolean = true, + predicate: ( + workerType: KType, + worker: Worker<*>, + key: String + ) -> Boolean + ): RenderTester = expectWorkflow( description = description, exactMatch = exactMatch diff --git a/workflow-testing/src/main/java/com/squareup/workflow1/testing/WorkflowTestRuntime.kt b/workflow-testing/src/main/java/com/squareup/workflow1/testing/WorkflowTestRuntime.kt index bcd146c150..9b7b269dbe 100644 --- a/workflow-testing/src/main/java/com/squareup/workflow1/testing/WorkflowTestRuntime.kt +++ b/workflow-testing/src/main/java/com/squareup/workflow1/testing/WorkflowTestRuntime.kt @@ -173,12 +173,12 @@ public class WorkflowTestRuntime @TestOnly internal */ @TestOnly public fun -Workflow.launchForTestingFromStartWith( - props: PropsT, - testParams: WorkflowTestParams = WorkflowTestParams(), - context: CoroutineContext = EmptyCoroutineContext, - block: WorkflowTestRuntime.() -> T -): T = asStatefulWorkflow().launchForTestingWith(props, testParams, context, block) + Workflow.launchForTestingFromStartWith( + props: PropsT, + testParams: WorkflowTestParams = WorkflowTestParams(), + context: CoroutineContext = EmptyCoroutineContext, + block: WorkflowTestRuntime.() -> T + ): T = asStatefulWorkflow().launchForTestingWith(props, testParams, context, block) /** * Creates a [WorkflowTestRuntime] to run this workflow for unit testing. @@ -187,11 +187,11 @@ Workflow.launchForTestingFromStartWith( */ @TestOnly public fun -Workflow.launchForTestingFromStartWith( - testParams: WorkflowTestParams = WorkflowTestParams(), - context: CoroutineContext = EmptyCoroutineContext, - block: WorkflowTestRuntime.() -> T -): T = launchForTestingFromStartWith(Unit, testParams, context, block) + Workflow.launchForTestingFromStartWith( + testParams: WorkflowTestParams = WorkflowTestParams(), + context: CoroutineContext = EmptyCoroutineContext, + block: WorkflowTestRuntime.() -> T + ): T = launchForTestingFromStartWith(Unit, testParams, context, block) /** * Creates a [WorkflowTestRuntime] to run this workflow for unit testing. @@ -202,12 +202,17 @@ Workflow.launchForTestingFromStartWith( */ @TestOnly public fun -StatefulWorkflow.launchForTestingFromStateWith( - props: PropsT, - initialState: StateT, - context: CoroutineContext = EmptyCoroutineContext, - block: WorkflowTestRuntime.() -> T -): T = launchForTestingWith(props, WorkflowTestParams(StartFromState(initialState)), context, block) + StatefulWorkflow.launchForTestingFromStateWith( + props: PropsT, + initialState: StateT, + context: CoroutineContext = EmptyCoroutineContext, + block: WorkflowTestRuntime.() -> T + ): T = launchForTestingWith( + props, + WorkflowTestParams(StartFromState(initialState)), + context, + block +) /** * Creates a [WorkflowTestRuntime] to run this workflow for unit testing. @@ -218,11 +223,11 @@ StatefulWorkflow.launchForTestingFromStateW */ @TestOnly public fun -StatefulWorkflow.launchForTestingFromStateWith( - initialState: StateT, - context: CoroutineContext = EmptyCoroutineContext, - block: WorkflowTestRuntime.() -> Unit -): Unit = launchForTestingFromStateWith(Unit, initialState, context, block) + StatefulWorkflow.launchForTestingFromStateWith( + initialState: StateT, + context: CoroutineContext = EmptyCoroutineContext, + block: WorkflowTestRuntime.() -> Unit + ): Unit = launchForTestingFromStateWith(Unit, initialState, context, block) /** * Creates a [WorkflowTestRuntime] to run this workflow for unit testing. @@ -231,12 +236,12 @@ StatefulWorkflow.launchForTestingFromStateWit */ @TestOnly public fun -StatefulWorkflow.launchForTestingWith( - props: PropsT, - testParams: WorkflowTestParams = WorkflowTestParams(), - context: CoroutineContext = EmptyCoroutineContext, - block: WorkflowTestRuntime.() -> T -): T { + StatefulWorkflow.launchForTestingWith( + props: PropsT, + testParams: WorkflowTestParams = WorkflowTestParams(), + context: CoroutineContext = EmptyCoroutineContext, + block: WorkflowTestRuntime.() -> T + ): T { val propsFlow = MutableStateFlow(props) // Any exceptions that are thrown from a launch will be reported to the coroutine's uncaught diff --git a/workflow-tracing/dependencies/runtimeClasspath.txt b/workflow-tracing/dependencies/runtimeClasspath.txt index 94fedd1578..f46cefc2f5 100644 --- a/workflow-tracing/dependencies/runtimeClasspath.txt +++ b/workflow-tracing/dependencies/runtimeClasspath.txt @@ -5,11 +5,11 @@ com.squareup.moshi:moshi-adapters:1.13.0 com.squareup.moshi:moshi:1.13.0 com.squareup.okio:okio-jvm:3.0.0 com.squareup.okio:okio:3.0.0 -org.jetbrains.kotlin:kotlin-bom:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-common:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib:1.7.20 +org.jetbrains.kotlin:kotlin-bom:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-common:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib:1.8.10 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4 diff --git a/workflow-ui/compose-tooling/dependencies/releaseRuntimeClasspath.txt b/workflow-ui/compose-tooling/dependencies/releaseRuntimeClasspath.txt index 1cf9fe4009..d682b77922 100644 --- a/workflow-ui/compose-tooling/dependencies/releaseRuntimeClasspath.txt +++ b/workflow-ui/compose-tooling/dependencies/releaseRuntimeClasspath.txt @@ -47,11 +47,11 @@ androidx.versionedparcelable:versionedparcelable:1.1.1 com.google.guava:listenablefuture:1.0 com.squareup.okio:okio-jvm:3.0.0 com.squareup.okio:okio:3.0.0 -org.jetbrains.kotlin:kotlin-bom:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-common:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib:1.7.20 +org.jetbrains.kotlin:kotlin-bom:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-common:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib:1.8.10 org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.6.4 diff --git a/workflow-ui/compose/dependencies/releaseRuntimeClasspath.txt b/workflow-ui/compose/dependencies/releaseRuntimeClasspath.txt index 446563ec1e..683b2c3716 100644 --- a/workflow-ui/compose/dependencies/releaseRuntimeClasspath.txt +++ b/workflow-ui/compose/dependencies/releaseRuntimeClasspath.txt @@ -43,11 +43,11 @@ androidx.versionedparcelable:versionedparcelable:1.1.1 com.google.guava:listenablefuture:1.0 com.squareup.okio:okio-jvm:3.0.0 com.squareup.okio:okio:3.0.0 -org.jetbrains.kotlin:kotlin-bom:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-common:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib:1.7.20 +org.jetbrains.kotlin:kotlin-bom:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-common:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib:1.8.10 org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.6.4 diff --git a/workflow-ui/compose/src/androidTest/java/com/squareup/workflow1/ui/compose/WorkflowRenderingTest.kt b/workflow-ui/compose/src/androidTest/java/com/squareup/workflow1/ui/compose/WorkflowRenderingTest.kt index a858d5b7b5..75084a80b4 100644 --- a/workflow-ui/compose/src/androidTest/java/com/squareup/workflow1/ui/compose/WorkflowRenderingTest.kt +++ b/workflow-ui/compose/src/androidTest/java/com/squareup/workflow1/ui/compose/WorkflowRenderingTest.kt @@ -244,7 +244,7 @@ internal class WorkflowRenderingTest { // any lifecycle events that happen even after the composable is destroyed. } } - ScreenViewHolder(initialEnvironment, view) { _, _ -> /* Noop */ } + ScreenViewHolder(initialEnvironment, view) { _, _ -> } } } diff --git a/workflow-ui/container-android/dependencies/releaseRuntimeClasspath.txt b/workflow-ui/container-android/dependencies/releaseRuntimeClasspath.txt index f15e3dad90..7bdefe2e8a 100644 --- a/workflow-ui/container-android/dependencies/releaseRuntimeClasspath.txt +++ b/workflow-ui/container-android/dependencies/releaseRuntimeClasspath.txt @@ -42,11 +42,11 @@ androidx.viewpager:viewpager:1.0.0 com.google.guava:listenablefuture:1.0 com.squareup.okio:okio-jvm:3.0.0 com.squareup.okio:okio:3.0.0 -org.jetbrains.kotlin:kotlin-bom:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-common:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib:1.7.20 +org.jetbrains.kotlin:kotlin-bom:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-common:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib:1.8.10 org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.6.4 diff --git a/workflow-ui/container-android/src/androidTest/java/com/squareup/workflow1/ui/modal/test/ModalViewContainerLifecycleActivity.kt b/workflow-ui/container-android/src/androidTest/java/com/squareup/workflow1/ui/modal/test/ModalViewContainerLifecycleActivity.kt index 8425bab9e1..27dbe0397e 100644 --- a/workflow-ui/container-android/src/androidTest/java/com/squareup/workflow1/ui/modal/test/ModalViewContainerLifecycleActivity.kt +++ b/workflow-ui/container-android/src/androidTest/java/com/squareup/workflow1/ui/modal/test/ModalViewContainerLifecycleActivity.kt @@ -1,5 +1,3 @@ -@file:Suppress("DEPRECATION") - package com.squareup.workflow1.ui.modal.test import android.view.View @@ -26,7 +24,7 @@ internal class ModalViewContainerLifecycleActivity : AbstractLifecycleTestActivi Screen, ScreenViewFactory by ScreenViewFactory.fromCode( buildView = { _, environment, context, _ -> - ScreenViewHolder(environment, View(context)) { _, _ -> /* Noop */ } + ScreenViewHolder(environment, View(context)) { _, _ -> } } ) diff --git a/workflow-ui/container-common/dependencies/runtimeClasspath.txt b/workflow-ui/container-common/dependencies/runtimeClasspath.txt index eba85512aa..414c44a625 100644 --- a/workflow-ui/container-common/dependencies/runtimeClasspath.txt +++ b/workflow-ui/container-common/dependencies/runtimeClasspath.txt @@ -1,11 +1,11 @@ :workflow-ui:core-common com.squareup.okio:okio-jvm:3.0.0 com.squareup.okio:okio:3.0.0 -org.jetbrains.kotlin:kotlin-bom:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-common:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib:1.7.20 +org.jetbrains.kotlin:kotlin-bom:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-common:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib:1.8.10 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4 diff --git a/workflow-ui/core-android/dependencies/releaseRuntimeClasspath.txt b/workflow-ui/core-android/dependencies/releaseRuntimeClasspath.txt index b348ba0ef7..a91f9e0c33 100644 --- a/workflow-ui/core-android/dependencies/releaseRuntimeClasspath.txt +++ b/workflow-ui/core-android/dependencies/releaseRuntimeClasspath.txt @@ -23,11 +23,11 @@ androidx.versionedparcelable:versionedparcelable:1.1.1 com.google.guava:listenablefuture:1.0 com.squareup.okio:okio-jvm:3.0.0 com.squareup.okio:okio:3.0.0 -org.jetbrains.kotlin:kotlin-bom:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-common:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib:1.7.20 +org.jetbrains.kotlin:kotlin-bom:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-common:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib:1.8.10 org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.6.4 diff --git a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/WorkflowViewStubLifecycleTest.kt b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/WorkflowViewStubLifecycleTest.kt index c8a842bb67..6a8074100a 100644 --- a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/WorkflowViewStubLifecycleTest.kt +++ b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/WorkflowViewStubLifecycleTest.kt @@ -362,7 +362,7 @@ internal class WorkflowViewStubLifecycleTest { updateText() } } - ScreenViewHolder(initialEnvironment, view) { _, _ -> /* Noop */ } + ScreenViewHolder(initialEnvironment, view) { _, _ -> } } } } diff --git a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/BackStackContainerTest.kt b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/BackStackContainerTest.kt index 56633e3060..7e4cd535d0 100644 --- a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/BackStackContainerTest.kt +++ b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/BackStackContainerTest.kt @@ -39,7 +39,7 @@ internal class BackStackContainerTest { // Must have an id to participate in view persistence. id = 65 } - ) { _, _ -> /* Noop */ } + ) { _, _ -> } } } diff --git a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/DialogIntegrationTest.kt b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/DialogIntegrationTest.kt index 192c0f4480..2c282438c4 100644 --- a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/DialogIntegrationTest.kt +++ b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/DialogIntegrationTest.kt @@ -49,7 +49,7 @@ internal class DialogIntegrationTest { // views actually get displayed text = SpannableStringBuilder(name) } - ) { _, _ -> /* Noop */ } + ) { _, _ -> } } } diff --git a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/fixtures/BackStackContainerLifecycleActivity.kt b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/fixtures/BackStackContainerLifecycleActivity.kt index b90ae9d4d0..ec765f64bc 100644 --- a/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/fixtures/BackStackContainerLifecycleActivity.kt +++ b/workflow-ui/core-android/src/androidTest/java/com/squareup/workflow1/ui/container/fixtures/BackStackContainerLifecycleActivity.kt @@ -40,7 +40,7 @@ internal class BackStackContainerLifecycleActivity : AbstractLifecycleTestActivi context: Context, container: ViewGroup? ): ScreenViewHolder = - ScreenViewHolder(initialEnvironment, View(context)) { _, _ -> /* Noop */ } + ScreenViewHolder(initialEnvironment, View(context)) { _, _ -> } } sealed class TestRendering : Screen { diff --git a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/ScreenViewFactory.kt b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/ScreenViewFactory.kt index 899f78e36c..3e25e817b4 100644 --- a/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/ScreenViewFactory.kt +++ b/workflow-ui/core-android/src/main/java/com/squareup/workflow1/ui/ScreenViewFactory.kt @@ -365,8 +365,7 @@ public fun interface ViewStarter { * @see [ScreenViewFactory.map]. */ @WorkflowUiExperimentalApi -public inline -fun ScreenViewFactory.map( +public inline fun ScreenViewFactory.map( noinline transform: (wrapperScreen: SourceT) -> TransformedT, crossinline prepEnvironment: (environment: ViewEnvironment) -> ViewEnvironment = { e -> e }, crossinline prepContext: ( diff --git a/workflow-ui/core-common/dependencies/runtimeClasspath.txt b/workflow-ui/core-common/dependencies/runtimeClasspath.txt index 2e8a0de1f7..9be0fbd1aa 100644 --- a/workflow-ui/core-common/dependencies/runtimeClasspath.txt +++ b/workflow-ui/core-common/dependencies/runtimeClasspath.txt @@ -1,10 +1,10 @@ com.squareup.okio:okio-jvm:3.0.0 com.squareup.okio:okio:3.0.0 -org.jetbrains.kotlin:kotlin-bom:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-common:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib:1.7.20 +org.jetbrains.kotlin:kotlin-bom:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-common:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib:1.8.10 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.4 diff --git a/workflow-ui/radiography/dependencies/releaseRuntimeClasspath.txt b/workflow-ui/radiography/dependencies/releaseRuntimeClasspath.txt index 93c44d16f8..dc90d87689 100644 --- a/workflow-ui/radiography/dependencies/releaseRuntimeClasspath.txt +++ b/workflow-ui/radiography/dependencies/releaseRuntimeClasspath.txt @@ -26,11 +26,11 @@ com.squareup.curtains:curtains:1.2.2 com.squareup.okio:okio-jvm:3.0.0 com.squareup.okio:okio:3.0.0 com.squareup.radiography:radiography:2.4.1 -org.jetbrains.kotlin:kotlin-bom:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-common:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20 -org.jetbrains.kotlin:kotlin-stdlib:1.7.20 +org.jetbrains.kotlin:kotlin-bom:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-common:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.10 +org.jetbrains.kotlin:kotlin-stdlib:1.8.10 org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.6.4 org.jetbrains.kotlinx:kotlinx-coroutines-core-jvm:1.6.4