Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: facebook/ktfmt
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.60
Choose a base ref
...
head repository: facebook/ktfmt
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v0.61
Choose a head ref
  • 8 commits
  • 12 files changed
  • 5 contributors

Commits on Dec 17, 2025

  1. Bump version to 0.61-SNAPSHOT

    Summary: Version bump to 0.61-SNAPSHOT
    
    Reviewed By: strulovich
    
    Differential Revision: D89397962
    
    fbshipit-source-id: f204c7c248e4dae5470f60bd653ec79ac6698431
    Nivaldo Bondança authored and meta-codesync[bot] committed Dec 17, 2025
    Configuration menu
    Copy the full SHA
    3e98a4f View commit details
    Browse the repository at this point in the history

Commits on Dec 18, 2025

  1. Automate JAR artifact upload to GitHub releases

    Summary:
    # AI generated
    Add new GitHub Actions job `upload_github_artifacts` to automatically attach
    JAR artifacts to releases. Previously, `ktfmt-{version}.jar` and
    `ktfmt-{version}-with-dependencies.jar` had to be manually uploaded after each
    release.
    
    The new job runs independently in parallel with other release jobs
    (`publish_ide_plugin`, `publish_maven_artifacts`, `deploy_website`). It checks
    out the code, builds both JARs using `./gradlew :ktfmt:jar :ktfmt:shadowJar`,
    verifies they exist, and uploads them to the GitHub release using
    `softprops/action-gh-release@v2`.
    
    The job properly handles both trigger types:
    - `release.types: [created]` - Automatic trigger when release is created
    - `workflow_dispatch` - Manual trigger with release tag input
    
    Reviewed By: cgrushko
    
    Differential Revision: D89412385
    
    fbshipit-source-id: 1a2d73b9d1abb5d50d7f27ab6fe0081871745c9e
    Nivaldo Bondança authored and meta-codesync[bot] committed Dec 18, 2025
    Configuration menu
    Copy the full SHA
    7d47fb0 View commit details
    Browse the repository at this point in the history
  2. Apply kotlin-test-junit into test classpath (#579)

    Summary:
    It's not required by the runtime classpath. This also fixes errors like:
    
    ```
    Execution failed for task ':ktfmt:compileTestKotlin'.
    > Could not resolve all files for configuration ':ktfmt:testCompileClasspath'.
       > Could not resolve org.jetbrains.kotlin:kotlin-test:2.2.0.
         Required by:
             project :ktfmt
          > Unable to find a variant with the requested capability: coordinates 'org.jetbrains.kotlin:kotlin-test-framework-junit':
               - Variant 'compile' provides 'org.jetbrains.kotlin:kotlin-test:2.2.0'
               - Variant 'enforced-platform-compile' provides 'org.jetbrains.kotlin:kotlin-test-derived-enforced-platform:2.2.0'
               - Variant 'enforced-platform-runtime' provides 'org.jetbrains.kotlin:kotlin-test-derived-enforced-platform:2.2.0'
               - Variant 'javadoc' provides 'org.jetbrains.kotlin:kotlin-test:2.2.0'
               - Variant 'platform-compile' provides 'org.jetbrains.kotlin:kotlin-test-derived-platform:2.2.0'
               - Variant 'platform-runtime' provides 'org.jetbrains.kotlin:kotlin-test-derived-platform:2.2.0'
               - Variant 'runtime' provides 'org.jetbrains.kotlin:kotlin-test:2.2.0'
               - Variant 'sources' provides 'org.jetbrains.kotlin:kotlin-test:2.2.0'
    ```
    
    Pull Request resolved: #579
    
    Reviewed By: strulovich
    
    Differential Revision: D89469731
    
    Pulled By: hick209
    
    fbshipit-source-id: 18eca1fd1d42673af0f240072418690a41a7fe08
    Goooler authored and meta-codesync[bot] committed Dec 18, 2025
    Configuration menu
    Copy the full SHA
    9203a28 View commit details
    Browse the repository at this point in the history

Commits on Dec 19, 2025

  1. Fix typo in README.md for editorconfig support (#578)

    Summary: Pull Request resolved: #578
    
    Reviewed By: strulovich
    
    Differential Revision: D89431393
    
    Pulled By: hick209
    
    fbshipit-source-id: 1aaa8c50c842a110ba17f536b86c5b377f6106f1
    corneliusroemer authored and meta-codesync[bot] committed Dec 19, 2025
    Configuration menu
    Copy the full SHA
    f956ffb View commit details
    Browse the repository at this point in the history
  2. Bump Guava to fix CVE-2023-2976 (#581)

    Summary:
    Consider setting up renovate-bot to keep dependencies up to date.
    
    https://www.mend.io/vulnerability-database/CVE-2023-2976
    
    Pull Request resolved: #581
    
    Reviewed By: strulovich
    
    Differential Revision: D89551318
    
    Pulled By: hick209
    
    fbshipit-source-id: c103b94afd9b9113a9535c841d0fb7db47a47587
    Goooler authored and meta-codesync[bot] committed Dec 19, 2025
    Configuration menu
    Copy the full SHA
    6be7f8c View commit details
    Browse the repository at this point in the history

Commits on Dec 30, 2025

  1. fix: editorconfig not found for relative paths (#582)

    Summary:
    In the common case of a `.editorconfig` in the root of the repo or
    project, when running `ktfmt` on a path like `src/main/kotlin/MyFile.kt`
    it will stop looking in `src` as `src` has no "parent" and not find any
    `.editorconfig`. Using a path like `./src/main/kotlin/MyFile.kt` will
    stop at `.` and find `./.editorconfig`.
    
    By using the absolute path of the file, it'll walk all ancestors until
    it finds a `.editorconfig` with `root = true` as expected.
    
    I've also added `ktfmt_trailing_comma_management_strategy` to the example editorconfigs and fixed an issue with the gradle build supporting [configuration-cache](https://docs.gradle.org/current/userguide/configuration_cache.html). I'm happy to move either/both of these to separate PRs if required.
    
    Pull Request resolved: #582
    
    Differential Revision: D89735068
    
    Pulled By: hick209
    
    fbshipit-source-id: 4ce744bf2a9275db77b12e32c01d45e8d6d50fe2
    tKe authored and meta-codesync[bot] committed Dec 30, 2025
    Configuration menu
    Copy the full SHA
    0c8cf33 View commit details
    Browse the repository at this point in the history
  2. Explicit backing fields support (#580)

    Summary:
    - Handle [Kotlin 2.3.0](https://kotlinlang.org/docs/whatsnew23.html#explicit-backing-fields) explicit backing fields (`field = …` / `field: Type = …`) by visiting `KtBackingField`, emitting _modifiers/name/type/initializer_, and ordering backing fields with accessors by source position so tokenization no longer fails when `-Xexplicit-backing-fields` is enabled.
    - Add regression coverage for explicit backing field formatting.
    
    Resolves  #531
    
    Pull Request resolved: #580
    
    Differential Revision: D89570823
    
    Pulled By: hick209
    
    fbshipit-source-id: 2889f58bfac197893056bfd5fdfbb880d296055f
    dayanruben authored and meta-codesync[bot] committed Dec 30, 2025
    Configuration menu
    Copy the full SHA
    1b6b2b0 View commit details
    Browse the repository at this point in the history
  3. Bump version to 0.61

    Summary: Version bump to 0.61
    
    Differential Revision: D89927748
    
    fbshipit-source-id: e9de16b4a540ad39e501a60b3d2b286d7cf54ea9
    Nivaldo Bondança authored and meta-codesync[bot] committed Dec 30, 2025
    Configuration menu
    Copy the full SHA
    f3f6aed View commit details
    Browse the repository at this point in the history
Loading