0.49.0-rc.1
版本发布时间: 2022-08-12 21:51:47
realm/SwiftLint最新发布版本:0.57.0(2024-09-09 00:02:39)
This is a prerelease version. It won't be published to Homebrew or CocoaPods. But there are many other ways to install:
- Downloading the attached
SwiftLint.pkg
installer and launching it - Downloading the attached
portable_swiftlint.zip
archive, extracting it and moving the binary fromportable_swiftlint/swiftlint
to/usr/local/bin
or elsewhere in yourPATH
- Using Mint:
mint install realm/SwiftLint@0.49.0-rc.1
- Cloning and building from source:
git clone https://github.com/realm/SwiftLint.git && cd SwiftLint && git checkout 0.49.0-rc.1 && make install
- Docker:
docker run -it -v `pwd`:`pwd` -w `pwd` ghcr.io/realm/swiftlint:0.49.0-rc.1
- Bazel: See instructions at the bottom
Changes from 0.48.0: https://github.com/realm/SwiftLint/compare/0.48.0...0.49.0-rc.1
Note: The default branch for the SwiftLint git repository will be renamed from
master
to main
on September 1st. Please update any code or automation
accordingly.
Breaking
-
SwiftLint now requires Swift 5.6 or higher to build, and macOS 12 or higher to run.
JP Simard -
Code Climate reports now use SHA256 strings as the issue fingerprint values.
JP Simard -
Make
comma_inheritance
an opt-in rule.
Steve Madsen #4027 -
The
autocorrect
command that was deprecated in 0.43.0 has now been completely removed. Use--fix
instead.
JP Simard -
Remove the
AutomaticTestableRule
protocol. All examples listed in rules are now tested automatically to make sure they are correct.
SimplyDanny -
Deprecate the
--in-process-sourcekit
command line flag. SwiftLint now always uses an in-process SourceKit.
JP Simard
Experimental
- None.
Enhancements
-
Make
duplicate_imports
rule correctable. Fixduplicate_imports
rule reporting redundant violations when more than one duplicate is present.
Timofey Solonin -
Support for building SwiftLint with bazel.
JP Simard -
Support for writing custom private native rules when building with bazel.
JP Simard Keith Smiley #3516 -
Make
comma
rule about 10x faster, finding some previously missed cases and fixing some previously wrong corrections.
JP Simard -
Make
colon
rule about 7x faster, finding some previously missed cases.
JP Simard -
Introduce new configuration option
include_compiler_directives
(true
by default) for theindentation_width
rule that allows to ignore compiler directives in the indentation analysis. This is especially useful if one (or a formatter) prefers to have compiler directives always at the very beginning of a line.
SimplyDanny #4030
Bug Fixes
-
Fix false positive in
self_in_property_initialization
rule when using closures insidedidSet
and other accessors.
Marcelo Fabri #4041 -
Fix false positive in
Duplicated Key in Dictionary Literal Violation
rule when using keys that are generated at runtime with the same source code.
OrEliyahu #4012
Using Bazel
Put this in your WORKSPACE
:
WORKSPACE
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "build_bazel_rules_apple",
sha256 = "36072d4f3614d309d6a703da0dfe48684ec4c65a89611aeb9590b45af7a3e592",
url = "https://github.com/bazelbuild/rules_apple/releases/download/1.0.1/rules_apple.1.0.1.tar.gz",
)
load(
"@build_bazel_rules_apple//apple:repositories.bzl",
"apple_rules_dependencies",
)
apple_rules_dependencies()
load(
"@build_bazel_rules_swift//swift:repositories.bzl",
"swift_rules_dependencies",
)
swift_rules_dependencies()
load(
"@build_bazel_rules_swift//swift:extras.bzl",
"swift_rules_extra_dependencies",
)
swift_rules_extra_dependencies()
http_archive(
name = "SwiftLint",
sha256 = "e954f4483f7f4cf523896693ee3505585f6beb0f791e362b42d9bdbb615f051a",
url = "https://github.com/realm/SwiftLint/releases/download/0.49.0-rc.1/bazel.tar.gz",
)
load("@SwiftLint//bazel:repos.bzl", "swiftlint_repos")
swiftlint_repos()
load("@SwiftLint//bazel:deps.bzl", "swiftlint_deps")
swiftlint_deps()
Then you can run SwiftLint in the current directory with this command:
bazel run @SwiftLint//:swiftlint -- --help
1、 bazel.tar.gz 366.63KB
2、 bazel.tar.gz.sha256 79B
3、 portable_swiftlint.zip 20.78MB
4、 SwiftLint.pkg 20.79MB
5、 SwiftLintBinary-macos.artifactbundle.zip 20.78MB
6、 swiftlint_linux.zip 30.41MB