diff --git a/CHANGELOG.md b/CHANGELOG.md
index f2b646f1..5b010864 100755
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,16 @@
# Change Log
+## [0.39.0](https://github.com/nicklockwood/SwiftFormat/releases/tag/0.39.0) (2019-02-04)
+
+- Added `redundantFileprivate` rule, which replaces `fileprivate` with `private` where possible
+- Added `redundantExtensionACL` rule, to remove redundant access level keywords inside extensions
+- Added `typeSugar` rule to replace Array, Dictionary and Optional types with shorthand forms
+- Added `redundantObjc` rule, which removes unnecessary `@objc` annotations
+- Added `—selfrequired` option for excluding `@autoclosure` arguments from `redundantSelf` rule
+- The `isEmpty` rule is now enabled by default, as the risk of false positives is fairly low
+- Enhanced the `fileHeader` rule with macros for file name and creation date
+- Added AppleScript integration instructions (thanks to @Lutzifer)
+
## [0.38.0](https://github.com/nicklockwood/SwiftFormat/releases/tag/0.38.0) (2019-01-29)
- Added support for building, running and testing SwiftFormat on Linux
diff --git a/CommandLineTool/swiftformat b/CommandLineTool/swiftformat
index bca86aeb..310591d1 100755
Binary files a/CommandLineTool/swiftformat and b/CommandLineTool/swiftformat differ
diff --git a/EditorExtension/Application/Info.plist b/EditorExtension/Application/Info.plist
index dad60858..f860a808 100644
--- a/EditorExtension/Application/Info.plist
+++ b/EditorExtension/Application/Info.plist
@@ -17,7 +17,7 @@
CFBundlePackageType
APPL
CFBundleShortVersionString
- 0.38.0
+ 0.39.0
CFBundleVersion
$(CURRENT_PROJECT_VERSION)
LSMinimumSystemVersion
diff --git a/EditorExtension/Application/Source/AppDelegate.swift b/EditorExtension/Application/Source/AppDelegate.swift
index ad34f5e6..a4dd1ca7 100644
--- a/EditorExtension/Application/Source/AppDelegate.swift
+++ b/EditorExtension/Application/Source/AppDelegate.swift
@@ -72,7 +72,6 @@ class AppDelegate: NSObject, NSApplicationDelegate {
return loadConfiguration(URL(fileURLWithPath: file))
}
- @objc
@IBAction func resetToDefault(_: NSMenuItem) {
UserDefaults(suiteName: UserDefaults.groupDomain)?.clearAll(in: UserDefaults.groupDomain)
RulesStore().resetRulesToDefaults()
@@ -80,7 +79,6 @@ class AppDelegate: NSObject, NSApplicationDelegate {
NotificationCenter.default.post(name: .applicationDidLoadNewConfiguration, object: nil)
}
- @objc
@IBAction func openConfiguration(_: NSMenuItem) {
guard let window = window else {
return
@@ -102,7 +100,6 @@ class AppDelegate: NSObject, NSApplicationDelegate {
}
}
- @objc
@IBAction func saveConfiguration(_: NSMenuItem) {
guard let window = window else {
return
diff --git a/EditorExtension/Extension/Info.plist b/EditorExtension/Extension/Info.plist
index 33c0ec7f..d088b011 100644
--- a/EditorExtension/Extension/Info.plist
+++ b/EditorExtension/Extension/Info.plist
@@ -15,7 +15,7 @@
CFBundlePackageType
XPC!
CFBundleShortVersionString
- 0.38.0
+ 0.39.0
CFBundleVersion
$(CURRENT_PROJECT_VERSION)
LSMinimumSystemVersion
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftAppKit.dylib b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftAppKit.dylib
index 10db4510..b7213224 100755
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftAppKit.dylib and b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftAppKit.dylib differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftCore.dylib b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftCore.dylib
index deb6fc5e..64722318 100755
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftCore.dylib and b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftCore.dylib differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftCoreData.dylib b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftCoreData.dylib
index fe8fac81..7a9f50e0 100755
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftCoreData.dylib and b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftCoreData.dylib differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftCoreFoundation.dylib b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftCoreFoundation.dylib
index cb4b4247..ee16f86f 100755
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftCoreFoundation.dylib and b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftCoreFoundation.dylib differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftCoreGraphics.dylib b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftCoreGraphics.dylib
index bbe4bb91..478a99e1 100755
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftCoreGraphics.dylib and b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftCoreGraphics.dylib differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftCoreImage.dylib b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftCoreImage.dylib
index fbe83c9c..abe5ba10 100755
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftCoreImage.dylib and b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftCoreImage.dylib differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftDarwin.dylib b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftDarwin.dylib
index a1dc9f76..c625a85b 100755
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftDarwin.dylib and b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftDarwin.dylib differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftDispatch.dylib b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftDispatch.dylib
index 97064a1a..1fd1a23d 100755
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftDispatch.dylib and b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftDispatch.dylib differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftFoundation.dylib b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftFoundation.dylib
index b6585bf2..911f019b 100755
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftFoundation.dylib and b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftFoundation.dylib differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftIOKit.dylib b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftIOKit.dylib
index 4ca7d858..b0b51572 100755
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftIOKit.dylib and b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftIOKit.dylib differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftMetal.dylib b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftMetal.dylib
index d7b02e0a..f363a7a4 100755
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftMetal.dylib and b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftMetal.dylib differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftObjectiveC.dylib b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftObjectiveC.dylib
index 3595e8d1..31ffbf7d 100755
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftObjectiveC.dylib and b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftObjectiveC.dylib differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftQuartzCore.dylib b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftQuartzCore.dylib
index cc268ceb..d738cc29 100755
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftQuartzCore.dylib and b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftQuartzCore.dylib differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftXPC.dylib b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftXPC.dylib
index 2751e561..acc155dd 100755
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftXPC.dylib and b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftXPC.dylib differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftos.dylib b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftos.dylib
index 4aaf637f..f05cc4d5 100755
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftos.dylib and b/EditorExtension/SwiftFormat for Xcode.app/Contents/Frameworks/libswiftos.dylib differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Info.plist b/EditorExtension/SwiftFormat for Xcode.app/Contents/Info.plist
index 5e8ac31f..2ae09d69 100644
--- a/EditorExtension/SwiftFormat for Xcode.app/Contents/Info.plist
+++ b/EditorExtension/SwiftFormat for Xcode.app/Contents/Info.plist
@@ -17,7 +17,7 @@
CFBundlePackageType
APPL
CFBundleShortVersionString
- 0.38.0
+ 0.39.0
CFBundleSupportedPlatforms
MacOSX
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/MacOS/SwiftFormat for Xcode b/EditorExtension/SwiftFormat for Xcode.app/Contents/MacOS/SwiftFormat for Xcode
index db017366..d9ef1ee2 100755
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/MacOS/SwiftFormat for Xcode and b/EditorExtension/SwiftFormat for Xcode.app/Contents/MacOS/SwiftFormat for Xcode differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/PlugIns/SwiftFormat.appex/Contents/Info.plist b/EditorExtension/SwiftFormat for Xcode.app/Contents/PlugIns/SwiftFormat.appex/Contents/Info.plist
index a973ce08..8e0e3ace 100644
--- a/EditorExtension/SwiftFormat for Xcode.app/Contents/PlugIns/SwiftFormat.appex/Contents/Info.plist
+++ b/EditorExtension/SwiftFormat for Xcode.app/Contents/PlugIns/SwiftFormat.appex/Contents/Info.plist
@@ -17,7 +17,7 @@
CFBundlePackageType
XPC!
CFBundleShortVersionString
- 0.38.0
+ 0.39.0
CFBundleSupportedPlatforms
MacOSX
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/PlugIns/SwiftFormat.appex/Contents/MacOS/SwiftFormat b/EditorExtension/SwiftFormat for Xcode.app/Contents/PlugIns/SwiftFormat.appex/Contents/MacOS/SwiftFormat
index c8115ded..7cecb0bb 100755
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/PlugIns/SwiftFormat.appex/Contents/MacOS/SwiftFormat and b/EditorExtension/SwiftFormat for Xcode.app/Contents/PlugIns/SwiftFormat.appex/Contents/MacOS/SwiftFormat differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/9ZR-Qg-hHT-view-iDF-FY-6tf.nib b/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/9ZR-Qg-hHT-view-iDF-FY-6tf.nib
index eb0fc44b..5a3941fd 100644
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/9ZR-Qg-hHT-view-iDF-FY-6tf.nib and b/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/9ZR-Qg-hHT-view-iDF-FY-6tf.nib differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/Info.plist b/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/Info.plist
index 1b41e398..1f3c3b31 100644
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/Info.plist and b/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/Info.plist differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/MainMenu.nib b/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/MainMenu.nib
index de5e89ff..4b3cade5 100644
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/MainMenu.nib and b/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/MainMenu.nib differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/MainWindowTabViewController.nib b/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/MainWindowTabViewController.nib
index b2923985..5970c6d2 100644
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/MainWindowTabViewController.nib and b/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/MainWindowTabViewController.nib differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/NSWindowController-B8D-0N-5wS.nib b/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/NSWindowController-B8D-0N-5wS.nib
index a6206843..26d64a55 100644
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/NSWindowController-B8D-0N-5wS.nib and b/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/NSWindowController-B8D-0N-5wS.nib differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/RulesViewController.nib b/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/RulesViewController.nib
index ac194b66..70e0d34f 100644
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/RulesViewController.nib and b/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/RulesViewController.nib differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/lOk-3C-AtC-view-Efh-0R-Cg8.nib b/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/lOk-3C-AtC-view-Efh-0R-Cg8.nib
index 651ee76f..6ebecef4 100644
Binary files a/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/lOk-3C-AtC-view-Efh-0R-Cg8.nib and b/EditorExtension/SwiftFormat for Xcode.app/Contents/Resources/Base.lproj/Main.storyboardc/lOk-3C-AtC-view-Efh-0R-Cg8.nib differ
diff --git a/EditorExtension/SwiftFormat for Xcode.app/Contents/_CodeSignature/CodeResources b/EditorExtension/SwiftFormat for Xcode.app/Contents/_CodeSignature/CodeResources
index 4ebbc8cd..265cd38b 100644
--- a/EditorExtension/SwiftFormat for Xcode.app/Contents/_CodeSignature/CodeResources
+++ b/EditorExtension/SwiftFormat for Xcode.app/Contents/_CodeSignature/CodeResources
@@ -6,27 +6,27 @@
Resources/Base.lproj/Main.storyboardc/9ZR-Qg-hHT-view-iDF-FY-6tf.nib
- MdU70HHsM1yUwmV5Ba0O1KOQap4=
+ 6FN6HFGhd5LXEVTycl94aCV5e1I=
Resources/Base.lproj/Main.storyboardc/Info.plist
- 5ewIgXT//Hmy9FpXlWmeqdYk+gM=
+ nQhekzFBCiPY0uGKvTWva6FaRDU=
Resources/Base.lproj/Main.storyboardc/MainMenu.nib
- IA4ThP/ZoMRKa0GbRIxDmXQJyc4=
+ j2yGKXVQdrAsjLvtzwfRhNgjV9g=
Resources/Base.lproj/Main.storyboardc/MainWindowTabViewController.nib
- Q4eNT0Kx4IkRRnB3SqX1vpnL894=
+ 2Kg7lAr5SP9Jr+aGj0JuC8QELFs=
Resources/Base.lproj/Main.storyboardc/NSWindowController-B8D-0N-5wS.nib
- okpaFY1/yU6F26nxiz3krvEZc3M=
+ bvuvK1/hB6I6AK5RonwExrEs8X8=
Resources/Base.lproj/Main.storyboardc/RulesViewController.nib
- dUdVwKdx1ivSy3WegAVC3gVRlYw=
+ 04OLsno394eXwn/II0UCksR99XU=
Resources/Base.lproj/Main.storyboardc/XfG-lQ-9wD-view-m2S-Jp-Qdl.nib
@@ -34,7 +34,7 @@
Resources/Base.lproj/Main.storyboardc/lOk-3C-AtC-view-Efh-0R-Cg8.nib
- +vNCKkQ5RH3REgwfsM9dRoNXylc=
+ IYvVqauVOXTy8xae82lospdS1xs=
Resources/libswiftRemoteMirror.dylib
@@ -182,7 +182,7 @@
cdhash
- RUpekHUQoXIXTFIwZhjXV8yT3MQ=
+ uWP9NM+GIAgzRJU7jCC47iuR9bY=
requirement
anchor apple generic and identifier "com.charcoaldesign.SwiftFormat-for-Xcode.SourceEditorExtension" and (certificate leaf[field.1.2.840.113635.100.6.1.9] /* exists */ or certificate 1[field.1.2.840.113635.100.6.2.6] /* exists */ and certificate leaf[field.1.2.840.113635.100.6.1.13] /* exists */ and certificate leaf[subject.OU] = "8VQKF583ED")
@@ -191,66 +191,66 @@
hash
- MdU70HHsM1yUwmV5Ba0O1KOQap4=
+ 6FN6HFGhd5LXEVTycl94aCV5e1I=
hash2
- OPgriInWWhf2o4Jgra3rtnGM1pIEMcteM7QeRg0lFP8=
+ 1Q9yn5cVh9eHBpS0zS1+949VctpIT6KcMYYFL2NfdJY=
Resources/Base.lproj/Main.storyboardc/Info.plist
hash
- 5ewIgXT//Hmy9FpXlWmeqdYk+gM=
+ nQhekzFBCiPY0uGKvTWva6FaRDU=
hash2
- +oOr4vnHWbKu48JKgpsBaDa6WrMsuTcjh7STQ9+R88c=
+ CgHskGo5i9GQhk8FavPbqDjGIzVuxm6jH8y68SpYBOs=
Resources/Base.lproj/Main.storyboardc/MainMenu.nib
hash
- IA4ThP/ZoMRKa0GbRIxDmXQJyc4=
+ j2yGKXVQdrAsjLvtzwfRhNgjV9g=
hash2
- 1TxkyBO1Zi+2S0+fDT9zHBWm5IeE7DAOOc176odGK+g=
+ dwEDxueDhSULoTenICkSrp8oqWvPZOApALcnJOt00bs=
Resources/Base.lproj/Main.storyboardc/MainWindowTabViewController.nib
hash
- Q4eNT0Kx4IkRRnB3SqX1vpnL894=
+ 2Kg7lAr5SP9Jr+aGj0JuC8QELFs=
hash2
- o09f6TJIRBBb4lE4v/G81IBxO14ikL5lvLSSclcGVLc=
+ sknPKOHU0+5PKrjg1W822f+mWZzm4Jt4gXqTuJNzckU=
Resources/Base.lproj/Main.storyboardc/NSWindowController-B8D-0N-5wS.nib
hash
- okpaFY1/yU6F26nxiz3krvEZc3M=
+ bvuvK1/hB6I6AK5RonwExrEs8X8=
hash2
- UtKJYjHYkGhpGD8k+P9ar2K/dZl3dvShKC/SOQxutOE=
+ DIMPpQPvyR8+D5IWjAV9GJ295+UBNMPKSMXf6lZUXNY=
Resources/Base.lproj/Main.storyboardc/RulesViewController.nib
hash
- dUdVwKdx1ivSy3WegAVC3gVRlYw=
+ 04OLsno394eXwn/II0UCksR99XU=
hash2
- zcWvluhZjsk2+OmBupxmbNSG14/+N/RDbv/qZh7d2no=
+ Rd/E3HvvKGL4UbeP6XP84AmQ4/EvalFyildKsOWbAx0=
Resources/Base.lproj/Main.storyboardc/XfG-lQ-9wD-view-m2S-Jp-Qdl.nib
@@ -268,11 +268,11 @@
hash
- +vNCKkQ5RH3REgwfsM9dRoNXylc=
+ IYvVqauVOXTy8xae82lospdS1xs=
hash2
- J+OsRm99MNwcgsfcH4LiUqvkXaRdKiN82bAt5pyKDH8=
+ f3g5YBZm86kNNQumnU7s5QUbFC4Ud8A000JWI/QC5qs=
Resources/libswiftRemoteMirror.dylib
diff --git a/README.md b/README.md
index f30ddeab..2b2615d4 100644
--- a/README.md
+++ b/README.md
@@ -207,10 +207,10 @@ fi
This is not recommended for shared projects however, as different team members using different versions of SwiftFormat may result in noise in the commits as code gets reformatted inconsistently.
-Via Applescript
+Via AppleScript
----------------
-To run swiftformat on the frontmost Xcode document (project or workspace) you can use the following applescript:
+To run swiftformat on the frontmost Xcode document (project or workspace) you can use the following AppleScript:
```applescript
tell application "Xcode"
@@ -220,8 +220,7 @@ tell application "Xcode"
end tell
```
-Some Apps you can trigger this from are [BetterTouchTool](https://folivora.ai), [Alfred](https://www.alfredapp.com) or [Keyboard Maestro](https://www.keyboardmaestro.com/main/).
-Another good way to trigger this, is to define a QuickAction for Xcode via Automator and then assign a keyboard shortcut for it in the System Settings.
+Some Apps you can trigger this from are [BetterTouchTool](https://folivora.ai), [Alfred](https://www.alfredapp.com) or [Keyboard Maestro](https://www.keyboardmaestro.com/main/). Another option is to define a QuickAction for Xcode via Automator and then assign a keyboard shortcut for it in the System Preferences.
VSCode plugin
--------------
@@ -334,6 +333,28 @@ There is no need to manually re-enable a rule after using the `next` directive.
Here are all the rules that SwiftFormat currently applies, and the effects that they have:
+***andOperator*** - replaces the `&&` operator with `,` inside `if`, `guard` and `while` conditions:
+
+```diff
+- if true && true {
++ if true, true {
+```
+
+```diff
+- guard true && true else {
++ guard true, true else {
+```
+
+```diff
+- if functionReturnsBool() && true {
++ if functionReturnsBool(), true {
+```
+
+```diff
+- if functionReturnsBool() && variable {
++ if functionReturnsBool(), variable {
+```
+
***anyObjectProtocol*** - replaces `class` with `AnyObject` in protocol definitions, as recommended in modern Swift guidelines:
```diff
@@ -1244,28 +1265,6 @@ Or for `--wrapcollections beforefirst`:
]
```
-***andOperator*** - replaces the `&&` operator with `,` inside `if`, `guard` and `while` conditions:
-
-```diff
-- if true && true {
-+ if true, true {
-```
-
-```diff
-- guard true && true else {
-+ guard true, true else {
-```
-
-```diff
-- if functionReturnsBool() && true {
-+ if functionReturnsBool(), true {
-```
-
-```diff
-- if functionReturnsBool() && variable {
-+ if functionReturnsBool(), variable {
-```
-
Swift version
-------------
@@ -1366,7 +1365,7 @@ Linting
SwiftFormat is primarily designed as a formatter rather than a linter, i.e. it is designed to fix your code rather than tell you what's wrong with it. However, sometimes it can be useful to verify that code has been formatted in a context where it is not desirable to actually change it.
-A typical example would be as part of a CI (Continuous Integration) process, where you may wish to have an automated script that checks committed code for style violations. While you could use a separate tool such as [SwiftLint](https://github.com/realm/SwiftLint) for this, it makes sense to be able to validate the formatting against the exact same rules as you are using to apply it.
+A typical example would be as part of a CI (Continuous Integration) process, where you may wish to have an automated script that checks committed code for style violations. While you can use a separate tool such as [SwiftLint](https://github.com/realm/SwiftLint) for this, it makes sense to be able to validate the formatting against the exact same rules as you are using to apply it.
In order to run SwiftFormat as a linter, you can use the `--lint` command-line option:
@@ -1444,7 +1443,14 @@ Will be formatted as:
FAQ
-----
-There haven't been many questions yet, but here's what I'd like to think people are wondering:
+*Q. How is this different from SwiftLint?*
+
+> A. SwiftLint is primarily designed to find and report code smells and style violations in your code. SwiftFormat is designed to fix them. While SwiftLint can autocorrect some issues, and SwiftFormat has some support for [linting](#linting), their primary goals are different.
+
+
+*Q. Can SwiftFormat and SwiftLint be used together?*
+
+> A. Absolutely! The style rules encouraged by both tools are quite similar, and SwiftFormat even fixes some style violations that SwiftLint warns about, but can't currently autocorrect.
*Q. What platforms does SwiftFormat support?*
@@ -1587,6 +1593,7 @@ Credits
* [Romain Pouclet](https://github.com/palleas) - Homebrew formula
* [Ali Akhtarzada](https://github.com/aliak00) - Several path-related CLI enhancements
* [Yonas Kolb](https://github.com/yonaskolb) - Swift Package Manager integration
+* [Wolfgang Lutz](https://github.com/Lutzifer) - AppleScript integration instructions
* [Nick Lockwood](https://github.com/nicklockwood) - Everything else
([Full list of contributors](https://github.com/nicklockwood/SwiftFormat/graphs/contributors))
diff --git a/Sources/Formatter.swift b/Sources/Formatter.swift
index 3737aa46..2e6c659f 100644
--- a/Sources/Formatter.swift
+++ b/Sources/Formatter.swift
@@ -2,7 +2,7 @@
// Formatter.swift
// SwiftFormat
//
-// Version 0.38.0
+// Version 0.39.0
//
// Created by Nick Lockwood on 12/08/2016.
// Copyright 2016 Nick Lockwood
diff --git a/Sources/Info.plist b/Sources/Info.plist
index acd1bee4..7b0a6f4f 100644
--- a/Sources/Info.plist
+++ b/Sources/Info.plist
@@ -15,7 +15,7 @@
CFBundlePackageType
FMWK
CFBundleShortVersionString
- 0.38.0
+ 0.39.0
CFBundleSignature
????
CFBundleVersion
diff --git a/Sources/SwiftFormat.swift b/Sources/SwiftFormat.swift
index 66f04c17..622fa168 100644
--- a/Sources/SwiftFormat.swift
+++ b/Sources/SwiftFormat.swift
@@ -32,7 +32,7 @@
import Foundation
/// The current SwiftFormat version
-public let version = "0.38.0"
+public let version = "0.39.0"
/// The standard SwiftFormat config file name
public let swiftFormatConfigurationFile = ".swiftformat"
diff --git a/Sources/Tokenizer.swift b/Sources/Tokenizer.swift
index 61a7d473..c55d5250 100644
--- a/Sources/Tokenizer.swift
+++ b/Sources/Tokenizer.swift
@@ -2,7 +2,7 @@
// Tokenizer.swift
// SwiftFormat
//
-// Version 0.38.0
+// Version 0.39.0
//
// Created by Nick Lockwood on 11/08/2016.
// Copyright 2016 Nick Lockwood
diff --git a/SwiftFormat.podspec.json b/SwiftFormat.podspec.json
index 8a37a999..6b2b7012 100644
--- a/SwiftFormat.podspec.json
+++ b/SwiftFormat.podspec.json
@@ -1,6 +1,6 @@
{
"name": "SwiftFormat",
- "version": "0.38.0",
+ "version": "0.39.0",
"license": {
"type": "MIT",
"file": "LICENSE.md"
@@ -10,7 +10,7 @@
"authors": "Nick Lockwood",
"source": {
"git": "https://github.com/nicklockwood/SwiftFormat.git",
- "tag": "0.38.0"
+ "tag": "0.39.0"
},
"default_subspecs": "Core",
"subspecs": [
diff --git a/Tests/Info.plist b/Tests/Info.plist
index deaadb78..61d2f9f5 100644
--- a/Tests/Info.plist
+++ b/Tests/Info.plist
@@ -15,7 +15,7 @@
CFBundlePackageType
BNDL
CFBundleShortVersionString
- 0.38.0
+ 0.39.0
CFBundleSignature
????
CFBundleVersion