# swift-format changelog > The formatter for Swift source code, maintained by the Swift project. - Vendor: Swift - Category: Developer Tools - Official site: https://github.com/swiftlang/swift-format - Tracked by: What's New (https://whatsnew.fyi/product/swift-format) - Harvested from: GitHub (swiftlang/swift-format) - Entries below: 10 (newest first) What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. Reuse: the summaries, labels and curation here are © What's New. Quote freely with attribution and a link back; wholesale republication of the corpus is not permitted — terms: https://whatsnew.fyi/terms. The vendors' own release notes remain their publishers'. ## Releases ### 603.0.0 - Date: 2026-06-30 - Version: 603.0.0 - Original notes: https://github.com/swiftlang/swift-format/releases/tag/603.0.0 - Permalink: https://whatsnew.fyi/product/swift-format/releases/603.0.0 - **added** — Support for InlineArray type sugar - **added** — multilineTrailingCommaBehavior configuration option - **changed** — Refactored file generation logic to be string-based - **changed** — Ensure newline after trailing line comments to prevent formatting issues - **changed** — Order conditionally-compiled imports - **changed** — Respect indentBlankLines when stripping whitespace inside block comment blank lines - **changed** — Print lint location and message in plain bold instead of white - **fixed** — Remove empty trailing closure parentheses in a curried call - **fixed** — UseSingleLinePropertyGetter dropping comments - **fixed** — Invalid rewrite in UseExplicitNilCheckInConditions when explicit optional type annotation is present - **fixed** — AttributeTypeSyntax handling - **fixed** — Keep attributed getters intact in UseSingleLinePropertyGetter - **fixed** — Rpath handling on OpenBSD - **removed** — Added group around base type in AttributedTypeSyntax ##### What's Changed * Update links for repositories moved from apple to swiftlang by @TTOzzi in https://github.com/swiftlang/swift-format/pull/1048 * Refactored file generation logic to be string-based and added validation tests by @TTOzzi in https://github.com/swiftlang/swift-format/pull/1047 * Include _GenerateSwiftFormat in buildOnlyTests by @TTOzzi in https://github.com/swiftlang/swift-format/pull/1050 * Add support for InlineArray type sugar by @TTOzzi in https://github.com/swiftlang/swift-format/pull/1043 * Ensure newline after trailing line comments to prevent formatting issues by @TTOzzi in https://github.com/swiftlang/swift-format/pull/1015 * .swift-format: Specify an exhaustive configuration by @AnthonyLatsis in https://github.com/swiftlang/swift-format/pull/1057 * Introduce `multilineTrailingCommaBehavior` configuration by @TTOzzi in https://github.com/swiftlang/swift-format/pull/1044 * Use `Invoke-Program` for the Windows build command by @bnbarham in https://github.com/swiftlang/swift-format/pull/1060 * Enable cross-PR testing by @ahoppen in https://github.com/swiftlang/swift-format/pull/867 * Fix removing empty trailing closure parentheses in a curried call by @a7medev in https://github.com/swiftlang/swift-format/pull/1071 * Add workflow to auto-update PrintVersion on release branch creation by @TTOzzi in https://github.com/swiftlang/swift-format/pull/1068 * Fix UseSingleLinePropertyGetter dropping comments by @TTOzzi in https://github.com/swiftlang/swift-format/pull/1062 * Fix `auto_update_version` workflow to trigger only on release branch creation by @TTOzzi in https://github.com/swiftlang/swift-format/pull/1074 * Fix invalid rewrite in UseExplicitNilCheckInConditions by skipping when explicit optional type annotation is present by @TTOzzi in https://github.com/swiftlang/swift-format/pull/1075 * chore: restrict GitHub workflow permissions - future-proof by @incertum in https://github.com/swiftlang/swift-format/pull/1073 * Fix up AttributeTypeSyntax handling by @bnbarham in https://github.com/swiftlang/swift-format/pull/1086 * Remove added group around base type in `AttributedTypeSyntax` by @bnbarham in https://github.com/swiftlang/swift-format/pull/1088 * Skip the `update-version` job on a fork by @kkebo in https://github.com/swiftlang/swift-format/pull/1091 * [6.3] Update version to 6.3 by @github-actions[bot] in https://github.com/swiftlang/swift-format/pull/1089 * Add GitHub workflow to ensure formatting is not broken on a set of pilot projects by @ahoppen in https://github.com/swiftlang/swift-format/pull/1090 * print lint location and message in plain bold instead of white by @QuietMisdreavus in https://github.com/swiftlang/swift-format/pull/1092 * Order conditionally-compiled imports by @a7medev in https://github.com/swiftlang/swift-format/pull/1077 * Normalize release version to x.y.z in auto-update-version action by @TTOzzi in https://github.com/swiftlang/swift-format/pull/1095 * Keep attributed getters intact in UseSingleLinePropertyGetter by @TTOzzi in https://github.com/swiftlang/swift-format/pull/1104 * Respect indentBlankLines when stripping whitespace inside block comment blank lines by @TTOzzi in https://github.com/swiftlang/swift-format/pull/1101 * Format source code and run `git diff` instead of listing first by @ahoppen in https://github.com/swiftlang/swift-format/pull/1093 * Update release automerge from 6.2 to 6.3 by @bnbarham in https://github.com/swiftlang/swift-format/pull/1098 * Bump to 6.0 by @bnbarham in https://github.com/swiftlang/swift-format/pull/1107 * Merge `main` into `release/6.3` by @github-actions[bot] in https://github.com/swiftlang/swift-format/pull/1109 * Add Dependabot configuration for GitHub Actions by @shahmishal in https://github.com/swiftlang/swift-format/pull/1110 * Update pull request workflow to use the tagged github-workflows by @bnbarham in https://github.com/swiftlang/swift-format/pull/1111 * Bump actions/checkout from 4 to 6 by _[Truncated at 4000 characters — full notes: https://github.com/swiftlang/swift-format/releases/tag/603.0.0]_ ### 603.0.0-prerelease-2026-06-30 - Date: 2026-06-30 - Version: 603.0.0-prerelease-2026-06-30 - Original notes: https://github.com/swiftlang/swift-format/releases/tag/603.0.0-prerelease-2026-06-30 - Permalink: https://whatsnew.fyi/product/swift-format/releases/603.0.0-prerelease-2026-06-30 - Labels: Pre-release ### 603.0.0-prerelease-2026-02-09 - Date: 2026-02-09 - Version: 603.0.0-prerelease-2026-02-09 - Original notes: https://github.com/swiftlang/swift-format/releases/tag/603.0.0-prerelease-2026-02-09 - Permalink: https://whatsnew.fyi/product/swift-format/releases/603.0.0-prerelease-2026-02-09 - Labels: Pre-release ### 603.0.0-prerelease-2025-12-17 - Date: 2025-12-17 - Version: 603.0.0-prerelease-2025-12-17 - Original notes: https://github.com/swiftlang/swift-format/releases/tag/603.0.0-prerelease-2025-12-17 - Permalink: https://whatsnew.fyi/product/swift-format/releases/603.0.0-prerelease-2025-12-17 - Labels: Pre-release ### 604.0.0-prerelease-2025-12-17 - Date: 2025-12-17 - Version: 604.0.0-prerelease-2025-12-17 - Original notes: https://github.com/swiftlang/swift-format/releases/tag/604.0.0-prerelease-2025-12-17 - Permalink: https://whatsnew.fyi/product/swift-format/releases/604.0.0-prerelease-2025-12-17 - Labels: Pre-release ### 603.0.0-prerelease-2025-09-15 - Date: 2025-09-16 - Version: 603.0.0-prerelease-2025-09-15 - Original notes: https://github.com/swiftlang/swift-format/releases/tag/603.0.0-prerelease-2025-09-15 - Permalink: https://whatsnew.fyi/product/swift-format/releases/603.0.0-prerelease-2025-09-15 - Labels: Pre-release ### 602.0.0 - Date: 2025-09-16 - Version: 602.0.0 - Original notes: https://github.com/swiftlang/swift-format/releases/tag/602.0.0 - Permalink: https://whatsnew.fyi/product/swift-format/releases/602.0.0 - **added** — Add pre-commit hook for linting - **added** — Add dump-effective-configuration subcommand - **changed** — Improve the DontRepeatTypeInStaticProperties rule to better align with its original intent - **changed** — Improve the formatting logic of OmitExplicitReturns rule - **fixed** — Fix documentation typos - **fixed** — Fix rejected assumeFilename when path argument is '-' - **changed** — Ignore backticks in documentation abstracts - **changed** — Modify PrettyPrinter to output diagnostics using shortened relative paths - **changed** — Make the error message for an invalid version more user-friendly - **changed** — Convert UseLetInEveryBoundCaseVariable to be a formatter - **changed** — Clean up symlink following and recursively follow symlink chains - **changed** — Make ValidateDocumentationComments allow Throws doc comments for rethrows functions - **added** — Support file-level ignore directive for specific rules - **changed** — Bump the deployment target to macOS 13 - **changed** — Increase swift-tools-version to 5.9 - **changed** — Import Android for isatty - **changed** — Unify whitespace handling in linter and formatter - **removed** — Remove severity - **changed** — Improve lint performance by optimizing Swift Regex usage - **fixed** — Fix NoAccessLevelOnExtensionDeclaration to update members inside #if blocks - **changed** — Update for swift-syntax AttributeSyntax.Arguments changes - **removed** — Remove value generics feature - **fixed** — Correctly format unsafe expressions - **fixed** — Fix type mismatch error in reflowMultilineStringLiterals - **changed** — Make linter emit warnings instead of errors by default - **changed** — OrderedImports should create separate group for @_implementationOnly - **added** — Allow comments in .swift-format ##### What's Changed * Add pre-commit hook for linting by @nikalra in https://github.com/swiftlang/swift-format/pull/929 * Add dump-effective-configuration subcommand by @andre-richter in https://github.com/swiftlang/swift-format/pull/923 * Improve the DontRepeatTypeInStaticProperties rule to better align with its original intent by @TTOzzi in https://github.com/swiftlang/swift-format/pull/918 * Improve the formatting logic of OmitExplicitReturns rule by @TTOzzi in https://github.com/swiftlang/swift-format/pull/935 * Fix documentation typos by @alexandersandberg in https://github.com/swiftlang/swift-format/pull/937 * Fix rejected assumeFilename when path argument is '-' by @andre-richter in https://github.com/swiftlang/swift-format/pull/938 * Skip flaky performance test on Windows by @weliveindetail in https://github.com/swiftlang/swift-format/pull/940 * Ignore backticks in documentation abstracts by @natecook1000 in https://github.com/swiftlang/swift-format/pull/936 * Modify PrettyPrinter to output diagnostics using shortened relative paths by @TTOzzi in https://github.com/swiftlang/swift-format/pull/934 * Do not measure perform performance in CI by @ahoppen in https://github.com/swiftlang/swift-format/pull/941 * Make the error message for an invalid version more user-friendly by @TTOzzi in https://github.com/swiftlang/swift-format/pull/942 * Convert `UseLetInEveryBoundCaseVariable` to be a formatter by @natecook1000 in https://github.com/swiftlang/swift-format/pull/926 * Clean up symlink following and recursively follow symlink chains. by @allevato in https://github.com/swiftlang/swift-format/pull/947 * Run Windows tests inside a Docker container by @ahoppen in https://github.com/swiftlang/swift-format/pull/951 * Make ValidateDocumentationComments allow `Throws` doc comments for rethrows functions by @TTOzzi in https://github.com/swiftlang/swift-format/pull/948 * Add `.DS_Store` and `/.vscode` to `.gitignore` by @ahoppen in https://github.com/swiftlang/swift-format/pull/953 * Run the publish release workflow inside a Docker container on Windows by @ahoppen in https://github.com/swiftlang/swift-format/pull/952 * Support file-level ignore directive for specific rules by @TTOzzi in https://github.com/swiftlang/swift-format/pull/950 * Enable the license header check by @ahoppen in https://github.com/swiftlang/swift-format/pull/956 * Bump the deployment target to macOS 13 🚀 by @TTOzzi in https://github.com/swiftlang/swift-format/pull/957 * Make the creation of a prerelease on GitHub a separate job in the publish release workflow by @ahoppen in https://github.com/swiftlang/swift-format/pull/958 * Increase swift-tools-version to 5.9 by @ahoppen in https://github.com/swiftlang/swift-format/pull/961 * Import Android for isatty by @marcprux in https://github.com/swiftlang/swift-format/pull/963 * Unify whitespace handling in linter and formatter by @TTOzzi in https://github.com/swiftlang/swift-format/pull/962 * Remove severity by @bkolb in https://github.com/swiftlang/swift-format/pull/943 * Improve lint performance by optimizing Swift Regex usage by @TTOzzi in https://github.com/swiftlang/swift-format/pull/968 * Fix `NoAccessLevelOnExtensionDeclaration` to update members inside `#if` blocks. by @allevato in https://github.com/swiftlang/swift-format/pull/969 * Update for swift-syntax AttributeSyntax.Arguments changes by @rintaro in https://github.com/swiftlang/swift-format/pull/971 * Remove value generics feature by @Azoy in https://github.com/swiftlang/swift-format/pull/974 * Correctly format `unsafe` expressions. by @allevato in https://github.com/swiftlang/swift-format/pull/973 * Add concurrency control to cancel in-progress PR workflows by @TTOzzi in https://github.com/swiftlang/swift-format/pull/976 * Fix type mismatch error in `reflowMultilineStringLiterals` by @dongdong867 in https://github.com/swiftlang/swift-format/pull/979 * [6.2] Change code owners for 6.2 to release managers by @ahoppen in _[Truncated at 4000 characters — full notes: https://github.com/swiftlang/swift-format/releases/tag/602.0.0]_ ### 603.0.0-prerelease-2025-08-11 - Date: 2025-08-11 - Version: 603.0.0-prerelease-2025-08-11 - Original notes: https://github.com/swiftlang/swift-format/releases/tag/603.0.0-prerelease-2025-08-11 - Permalink: https://whatsnew.fyi/product/swift-format/releases/603.0.0-prerelease-2025-08-11 - Labels: Pre-release ### 602.0.0-prerelease-2025-08-11 - Date: 2025-08-11 - Version: 602.0.0-prerelease-2025-08-11 - Original notes: https://github.com/swiftlang/swift-format/releases/tag/602.0.0-prerelease-2025-08-11 - Permalink: https://whatsnew.fyi/product/swift-format/releases/602.0.0-prerelease-2025-08-11 - Labels: Pre-release ### 602.0.0-prerelease-2025-06-26 - Date: 2025-06-26 - Version: 602.0.0-prerelease-2025-06-26 - Original notes: https://github.com/swiftlang/swift-format/releases/tag/602.0.0-prerelease-2025-06-26 - Permalink: https://whatsnew.fyi/product/swift-format/releases/602.0.0-prerelease-2025-06-26 - Labels: Pre-release