Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update dependencies and clean up build scripts #423

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Commits on Aug 9, 2024

  1. Bump Gradle version to 8.9

    Rationale is a slightly better DX when working with a version catalog (which is to be introduced in a later commit).
    
    Usages of Property API now leverage the assignment Kotlin compiler plugin instead of invoking `set` methods directly.
    
    Usages of deprecated Gradle API are either replaced with supported alternatives or removed due to not really doing anything.
    FenstonSingel committed Aug 9, 2024
    Configuration menu
    Copy the full SHA
    90dcbfb View commit details
    Browse the repository at this point in the history
  2. Bump Kotlin version to 2.0.10

    KGP now uses the `.kotlin` folder for purposes that it previously used the `.gradle` folder for; so the `.kotlin` folder is now excluded from the Git repository as well.
    
    Kotlin-related Gradle properties from `gradle.properties` are cleaned up and actualized:
    * `kotlin.js.compiler` is removed
    * `kotlin.native.ignoreIncorrectDependencies` is prepared for its deprecation in 2.0.20
    * `kotlin.wasm.stability.nowarn` is temporarily added until its deprecation in 2.0.20
    
    Usages of deprecated `kotlinOptions` API are migrated to supported `compilerOptions` API (see KT-57292 for more details).
    
    (Application of `-version` to Kotlin compilation tasks is just removed altogether; applying it only to K/JVM tasks seems questionable, and applying it to K/N tasks stops them from actually compiling anything.)
    
    Usages of all experimental KGP API now opt into said API. Usages of all outdated KGP API are removed.
    
    An error suppression warning (see KT-61129 for more details) is disabled due to a high number of hits throughout the repository.
    
    A usage of deprecated `kotlin.native.ThreadLocal` annotation is migrated to supported `kotlin.native.concurrent.ThreadLocal` annotation.
    
    Workarounds for the following issues are removed from the repository's build scripts:
    * node.js not supporting "the latest Wasm"
    * node.js not supporting Wasm GC milestone 4
    * KT-58303
    FenstonSingel committed Aug 9, 2024
    Configuration menu
    Copy the full SHA
    fd315d9 View commit details
    Browse the repository at this point in the history
  3. Remove old infrastructure for builds as a Kotlin user project

    It will be reintroduced in a later commit.
    FenstonSingel committed Aug 9, 2024
    Configuration menu
    Copy the full SHA
    e2c0d4e View commit details
    Browse the repository at this point in the history
  4. Clean up and organize the repository's build scripts

    There are three potentially important changes in this commit:
    * a workaround for Bintray publishing is removed because of, to quote a gradle.git#11412 commentator, "JFrog [electing] to shut down JCenter and Bintray rather than fix the problem"
    * `:kotlinx-datetime:compileCommonJsMainKotlinMetadata` task is enabled back to preserve compilation correctness (see KT-66382 for more details)
    * `:benchmarks` module's `jmh` source set is now also compiled during repository-wide builds (so that it's covered during builds as a Kotlin user project)
    
    Other than that, this commit is a bundle of minor, mostly structural tweaks for the sake of easier understanding and maintainability.
    FenstonSingel committed Aug 9, 2024
    Configuration menu
    Copy the full SHA
    90aa6b6 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    5898535 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    94fce17 View commit details
    Browse the repository at this point in the history