Ornithologist Coder
9d2c113ba8
Adds new opt-in rule, private_action
...
Implements #1931 .
2017-11-17 18:13:48 +01:00
Norio Nomura
13768b70f6
Stop using numerical comparison in SwiftVersion
2017-11-16 11:53:29 +09:00
Norio Nomura
d460c6d124
Invalidate cache when Swift patch version changes
2017-11-16 11:03:08 +09:00
JP Simard
06ece1ea8d
release 0.24.0
2017-11-10 15:49:41 -08:00
Tom Quist
630a676921
Added rule to prefer min/max over sorted.first and sorted.last
2017-11-06 21:10:53 +01:00
JP Simard
34f429b0a3
Fix caching on Linux
...
This has never worked for two reasons:
1. We've used dictionaries to represent cache descriptions, which
don't guarantee stable ordering of keys across invocations.
This is true both on Darwin and Linux, but in practice ordering
varies significantly more on Linux.
2. Storing a `TimeInterval` value in a `[String: Any]` dictionary
and retrieving it again will not be dynamically castable to
`Double` or `TimeInterval` but will be castable to `Int`.
2017-10-26 12:23:13 -07:00
JP Simard
3a32d6b479
Speed up reading cached results by about 200%
...
also slightly speed up writing to the cache.
For example, on the Lyft codebase with 1,500 Swift files:
```bash
$ time swiftlint lint --quiet
swiftlint --quiet 3.53s user 0.27s system 388% cpu 0.979 total
$ rm -rf ~/Library/Caches/SwiftLint && time swiftlint lint --quiet
swiftlint --quiet 35.20s user 1.22s system 371% cpu 9.806 total
$ time swiftlint lint --quiet
swiftlint lint --quiet 0.90s user 0.13s system 218% cpu 0.472 total
$ rm -rf ~/Library/Caches/SwiftLint && time swiftlint lint --quiet
swiftlint lint --quiet 31.78s user 1.18s system 360% cpu 9.146 total
```
2017-10-19 23:17:01 -07:00
JP Simard
08e0c816f3
Make Configuration conform to Hashable
2017-10-19 22:50:07 -07:00
JP Simard
757443d201
Correct and speed up equality checks for Configuration values
...
they previously didn't account for `warningThreshold` or `cachePath`.
2017-10-19 22:28:04 -07:00
Ornithologist Coder
c7e3692ddf
Adds quick_discouraged_pending_test opt-in rule
...
Implements #1909 .
2017-10-17 14:49:36 +02:00
Ornithologist Coder
b12280cfc2
Adds opt-in quick_discouraged_focused_test rule
...
Implements #1905 .
2017-10-15 23:14:35 +02:00
Marcelo Fabri
f971d4bc39
Add override_in_extension rule
...
Fixes #1884
2017-10-07 19:33:59 -03:00
Marcelo Fabri
96c6a13a92
Fix disabling superfluous_disable_command rule
...
Fixes #1890
2017-10-06 16:29:35 -03:00
Marcelo Fabri
d4f4f5f35c
Sort list of rule identifiers before printing them
2017-10-05 11:51:36 -03:00
JP Simard
c57c47d66f
Remove unnecessary Swift version differences
2017-10-04 13:49:40 -07:00
Marcelo Fabri
d1cc128660
release 0.23.0
2017-10-03 21:55:00 -03:00
Marcelo Fabri
81b832c372
Add literal_expression_end_indentation opt-in rule
2017-10-02 02:09:45 -03:00
Marcelo Fabri
192411f9c4
Add unneeded_break_in_switch rule
...
Fixes #1870
2017-10-02 00:21:27 -03:00
Marcelo Fabri
41f8b1971d
Merge pull request #1862 from sirlantis/add-new-multiline-arguments-rule
...
Add MultilineArgumentsRule
2017-10-02 00:20:28 -03:00
Marcelo Fabri
be341f90b9
Introduce queuedFatalError
...
`fatalError` prints the full path of the file, which leaks filesystem information from the machine that built the binary. Now that we release via CocoaPods, this is more critical.
2017-09-30 15:07:23 -03:00
Marcel Jackwerth
4945ee29b7
Add MultilineArgumentsRule
2017-09-29 23:08:46 +02:00
Samuel Susla
9dcb3dbeb7
Add contains_over_first_not_nil rule
2017-09-17 15:59:40 +01:00
Marcelo Fabri
8f05f92cd1
Add array_init opt-in rule
...
Fixes #1271
2017-09-16 02:32:48 -03:00
Austin Lu
b2a17026cc
Add SwitchCaseAlignmentRule
2017-09-12 09:26:42 -07:00
Marcelo Fabri
4f0dbfb686
Add fallthrough opt-in rule
...
Fixes #1834
2017-09-11 01:53:40 -03:00
JP Simard
01e4831a7c
Update for Swift 4 in Xcode 9 beta 6 and latest Linux snapshot
2017-09-10 13:48:37 -07:00
Marcelo Fabri
03edafae15
Merge pull request #1797 from marcelofabri/rules-tests
...
Validate rules docs when running unit tests
2017-09-08 00:41:22 -03:00
Marcelo Fabri
f074ff7f47
release 0.22.0
2017-08-30 14:38:04 -03:00
Erik Strottmann
6fca21cdf6
Add multiple_closures_with_trailing_closure rule
...
Multiple Closures with Trailing Closure rule disallows trailing closure
syntax when passing more than one closure argument to a function.
Fixes #1801 .
2017-08-27 22:03:22 -07:00
Maz Jaleel
03676c9772
Add No Grouping Extension Rule ( #1789 )
2017-08-27 22:10:05 +01:00
Marcelo Fabri
54f9c22c60
Fix existing violations
2017-08-26 10:05:56 -03:00
Marcelo Fabri
d082f96284
Add pattern_matching_keywords rule
2017-08-26 10:05:56 -03:00
Maz Jaleel
5335060935
update rule name
2017-08-26 07:15:54 +04:00
Maz Jaleel
742bb2fd8f
initial rule implementation
2017-08-26 07:07:06 +04:00
Marcelo Fabri
43925199d4
Validate rules docs when running unit tests
...
Fix #1734
2017-08-24 21:27:35 +02:00
JP Simard
d830392c95
make sourcery
2017-08-22 09:43:44 -07:00
JP Simard
2c94e54bd6
Fix 'is_disjoint' violations in SwiftLint itself
2017-08-21 16:00:34 -07:00
JP Simard
ef3df839ce
Add is_disjoint rule
...
to encourage using `Set.isDisjoint(with:)` over `Set.intersection(_:).isEmpty`.
2017-08-21 16:00:33 -07:00
JP Simard
b39b369d12
Fix setting Swift version when caching.
...
See https://github.com/realm/SwiftLint/pull/1790/files#r134323431 .
2017-08-21 13:28:43 -07:00
Marcelo Fabri
f4690859b1
Merge pull request #1790 from marcelofabri/swift-version-cache
...
Invalidate cache when Swift version changes
2017-08-21 11:03:00 +02:00
Marcelo Fabri
0a07628d8c
Invalidate cache when Swift version changes
2017-08-21 00:19:04 +02:00
Marcelo Fabri
70488c9f0c
Add SuperfluousDisableCommandRule
2017-08-20 23:27:48 +02:00
JP Simard
5c1c9389c7
produce an error when a 'disable' command doesn't silence any rules
2017-08-20 23:27:48 +02:00
Ornithologist Coder
c707adb0d8
Add quick_discouraged_call opt-in rule
...
Implements #1781 (Method calls and object initialization inside Quick
'describe' and 'context' blocks can be harmful)
2017-08-18 11:24:02 +02:00
Marcelo Fabri
d4248e9b12
Fix tests on Linux ✅
2017-08-17 20:36:44 +02:00
Ornithologist Coder
df6813f76a
Add XCTestCase
2017-08-16 16:00:26 +02:00
Ornithologist Coder
cf545c6892
Add quick_single_spec opt-in rule
...
Implements #1779 (Limit number of QuickSpecs in file to one).
2017-08-16 16:00:20 +02:00
JP Simard
5de980c042
make internal Region members public
2017-08-08 09:10:31 -07:00
Ornithologist Coder
da823f53d7
Add joined_default_parameter opt-in rule
...
to discourage explicit usage of the default separator. Implements #1093 .
2017-08-03 13:41:00 +02:00
Stéphane Copin
3ad4842bcd
Small changes and refactoring based on github Feedback
2017-08-02 13:05:26 -07:00