CARVIEW |
Select Language
HTTP/2 200
date: Wed, 23 Jul 2025 23:40:19 GMT
content-type: text/html; charset=utf-8
vary: X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, X-Requested-With,Accept-Encoding, Accept, X-Requested-With
etag: W/"6646665bc6841265f0a352a6bd1880fe"
cache-control: max-age=0, private, must-revalidate
strict-transport-security: max-age=31536000; includeSubdomains; preload
x-frame-options: deny
x-content-type-options: nosniff
x-xss-protection: 0
referrer-policy: no-referrer-when-downgrade
content-security-policy: default-src 'none'; base-uri 'self'; child-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com *.rel.tunnels.api.visualstudio.com wss://*.rel.tunnels.api.visualstudio.com objects-origin.githubusercontent.com copilot-proxy.githubusercontent.com proxy.individual.githubcopilot.com proxy.business.githubcopilot.com proxy.enterprise.githubcopilot.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com api.githubcopilot.com api.individual.githubcopilot.com api.business.githubcopilot.com api.enterprise.githubcopilot.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: blob: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com private-avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com release-assets.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com copilotprodattachments.blob.core.windows.net/github-production-copilot-attachments/ github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/
server: github.com
content-encoding: gzip
accept-ranges: bytes
set-cookie: _gh_sess=S891wTHOPnyICZtlbOqN%2BhZWiln8w3qg2tylPY48hGq%2FhFHkJp9vJrMFQEifVteYkK%2F%2F77%2FkFGX7i%2B7EmmN2bHkSxJzlKFxLai4ShdSFiuir7YNc9Is5c5VeOILvHIRdZXKXnVrP%2BTijmvYARsQf28qVTQqyL8Pyys1Nl%2BWJ25gU2wEiNDJDmYqNqRFiVPCPCFZmkQFNWxhcme4rJjT74CddB%2BmbQzaobDcIeY9Wg8DuRy5tlS%2FxYCMoMJilvq63uGqXtom81lVamzrEChVQBQ%3D%3D--ELoa7Ux5eiqKFXaq--zCgrSoEVtKjPjE%2FEVkBhUw%3D%3D; Path=/; HttpOnly; Secure; SameSite=Lax
set-cookie: _octo=GH1.1.56229580.1753314019; Path=/; Domain=github.com; Expires=Thu, 23 Jul 2026 23:40:19 GMT; Secure; SameSite=Lax
set-cookie: logged_in=no; Path=/; Domain=github.com; Expires=Thu, 23 Jul 2026 23:40:19 GMT; HttpOnly; Secure; SameSite=Lax
x-github-request-id: A400:3644F0:1155110:14D8AE0:688172E3
Releases Β· nicklockwood/SwiftFormat Β· GitHub
15 Jul 01:34
Loading
14 Jul 13:47
Loading
13 Jul 18:33
Loading
15 Jun 16:16
Loading
05 Jun 01:16
Loading
27 May 13:36
Loading
14 May 02:58
Loading
13 May 03:21
Loading
02 May 21:44
Loading
20 Jan 23:55
Loading
Skip to content
Navigation Menu
{{ message }}
-
Notifications
You must be signed in to change notification settings - Fork 654
Releases: nicklockwood/SwiftFormat
Releases Β· nicklockwood/SwiftFormat
0.57.2
Compare
- Updated
trailingCommas
rule to handle function declarations with generic arguments. - Updated
--trailing-commas always
to preserve trailing commas rather than unnecessarily removing trailing commas in some edge cases. - Fixed spurious deprecation message when using some non-deprecated options.
Assets 8
3 people reacted
0.57.1
Compare
- Fixed issue where trailing commas were unexpectedly removed from initializer argument lists when using
--trailing-commas always
. - Fixed issue where
redundantPublic
rule didn't handle extensions on types defined in public extensions. - Added
@Bindable
to list of SwiftUI property wrappers used byorganizeDeclarations
rule. - Fixed case-sensitivity issue with
preferFileMacro
rule.
Assets 8
3 people reacted
0.57.0
Compare
- Options now use
--kebab-case
. Existing option names without dashes remain supported for backwards compatibility. Some options have been renamed to improve clarity. - Added support for
:this
and:previous
in comment directives. - Added support for formatting code blocks in Markdown files.
- Added support for multiple
--config
file arguments. - Added
singlePropertyPerLine
rule to convert property declarations defining multiple properties into separate declarations. - Added
redundantMemberwiseInit
rule to remove explicit memberwise initializers that are identical to thestruct
's compiler-synthesized initializer. - Added
redundantPublic
rule to remove public access control from properties of internal types. - Added
modifiersOnSameLine
rule to keep declaration modifiers on the same line. - Added
throwingTests
rule to prefer usingtry
andthrows
in unit tests rather thantry!
. - Added
noGuardInTests
rule to prefer convert guard statements in unit tests totry #require(...)
/#expect(...)
ortry XCTUnwrap(...)
/XCTAssert(...)
. - Added
urlMacro
rule to convertURL(string: "...")!
initializers to a provided#URL("...")
macro. - Added
--trailing-commas collections-only
and--trailing-commas multi-element-lists
options totrailingCommas
rule. - Added
--type-blank-lines insert
option toblankLinesAtStartOfScope
andblankLinesAtEndOfScope
rules. - Added
--wrap-string-interpolation
option to support disabling line wrapping within string interpolation. - Added
--line-between-guards
option toblankLinesAfterGuardStatements
rule. - Added support for SARIF output format.
- Improved performance of the
docComments
rule. - Fixed bug in
docComments
rule where trailing comments would be converted to doc comments. - Fixed bug where
redundantNilInit
rule would ignore type bodies with conformances. - Fixed bug where
wrapEnumCases
didn't handle some nested types correctly. - Fixed issue where
#
characters in config files couldn't be escaped. - Fixed issue where SwiftFormat for Xcode app would generate invalid config files with unescaped
#
characters. - Fixed issue where
--wrap-return-type never
didn't respect--allman true
.
Assets 8
6 people reacted
0.56.4
Compare
- Fixed issue where
trailingCommas
rule would not insert trailing commas in function declarations with return type - Fixed issue where
trailingCommas
rule would not insert trailing commas in array literals following!
operator - Fixed issue where
unusedArguments
rule would ignore function declarations with trailing commas - Fixed issue where
void
rule would not handle()
types in typealiases - Fixed issue where
redundantLet
rule did not detect code inside result builders when nested in conditional compilation blocks
Assets 8
6 people reacted
0.56.3
Compare
- Fixed issue where
trailingCommas
rule would insert commas in closure types and tuple types used in typealaises (not supported in Swift 6.1)
Assets 8
0.56.2
Compare
- Fixed issues where
trailingCommas
rule would insert commas in@escpaing
or@Sendable
closure types (not supported in Swift 6.1) - Fixed issue where
privateStateVariables
rule handled@Previewable
attributes on previous line incorrectly
Assets 8
0.56.1
Compare
- Fixed several issues where
trailingCommas
rule would insert commas in places not actually supported by Swift 6.1 - Fixed issue where
--wrapeffects
option would incorrectly unwrapasync let
properties following function call - Fixed issue where
redundantEquatable
rule would incorrectly remove==
implementation in favor of synthesized implementation even if type contained non-Equatable properties like tuples - Fixed issue where
extensionAccessControl
rule would incorrectly hoistpublic
ACL in@preconcurrency
conformances - Fixed issue where
organizeDeclarations
rule would sometimes break property declarations with if expression values
Assets 8
5 people reacted
0.56.0
Compare
- Added
wrapMultilineFunctionChains
rule to wrap chained method calls - Added
environmentEntry
rule to update SwiftUIEnvironmentValues
definitions to use the@Entry
macro - Added
redundantEquatable
rule to remove explicitEquatable
conformances that would be compiler-synthesized - Added
preferSwiftTesting
rule to migrate XCTest-based tests to Swift Testing - Added
swiftTestingTestCaseNames
rule to remove redundant "test" prefix from Swift Testing test case methods - Added
preferCountWhere
rule to prefercount(where:)
overfilter(_:).count
- Added
fileMacro
rule to prefer either#file
or#fileID
, which have the same behavior in Swift 6 and later - Added
blankLinesAfterGuardStatements
rule to remove blank lines between consecuitve guard statements, and add blank line after last guard statement. - Added
privateStateVariables
rule to addprivate
access control to@State
properties - Added
emptyExtensions
rule to remove extensions that contain no declarations or conformances - Added
--preserveacronyms
option toacronyms
rule - Added
--wrapreturntype never
option towrapArguments
rule - Updated
trailingCommas
to support Swift 6.1 trailing comma functionality opaqueGenericParameters
now supports protocol requirements without a body--wrapeffects
and--wrapreturntype
now support protocol requirements and closure types- Fixed indentation of trailing closures after chained multiline method call when using same-line closing parens
blankLinesAtStartOfScope
rule now supports switch cases and closure capture / parameter lists- Fixed issue where type under
organizeDeclarations
line count threshold would ignoreswiftformat:sort
directives - Fixed issue where
organizeDeclarations
rule would unexpectedly remove non-mark comments - Compiling SwiftFormat now requires Swift 5.7+
- SwiftFormat prerelease builds can now be installed via Homebrew using
brew install swiftformat --head
. Prerelease builds are subject to breaking changes.
Assets 8
8 people reacted
0.55.6
Compare
- Fixed parsing bugs related to parameter packs (
repeat
,each
keywords) - Fixed bug where
propertyTypes
rule could cause build failure in properties withsome
type - Fixed bug where
--callsiteparen balanced
would have no effect when using--closingparen same-line
- Fatal error messages now include the name of the currently-running rule
- Docker build now uses Swift 6.0.3
Assets 8
2 people reacted
0.55.5
Compare
- Fixed bug with
yodaConditions
rule mangling generic function calls - Fixed indenting of guard
else
or opening brace followingif
/switch
expression - The
organizeDeclarations
rule no longer treats properties withdidSet
as computed - Improved formatting support for async and throwing closures
Assets 8
4 people reacted
Previous Next
You canβt perform that action at this time.