Marcelo Fabri
66848e0186
Enable some opt-in rules in SwiftLint itself ( #3095 )
2020-02-09 17:07:24 -08:00
Marcelo Fabri
b303cd64ea
Make SyntaxRules Opt-In ( #3094 )
2020-02-09 16:20:14 -08:00
Marcelo Fabri
f95768d2e6
Add tuple_pattern opt-in rule ( #3086 )
...
* Add `tuple_pattern` opt-in rule
Fixes #2203
* Remove unused import
2020-02-08 13:57:17 -08:00
Marcelo Fabri
1d39071dfd
Add void_function_in_ternary opt-in rule ( #3085 )
...
* Add `void_function_in_ternary` opt-in rule
Fixes #2358
* Remove unused import and improve description
2020-02-08 13:23:02 -08:00
Marcelo Fabri
8d9c501cb8
Add optional return_value_from_void_function rule using SwiftSyntax ( #3054 )
...
* Add optional return_value_from_void_function rule using SwiftSyntax
* Use Script/bootstrap in CI
* Make SwiftSyntax optional
* Make SwiftSyntax optional in SPM
* Fix Package.swift
* Try again
* Add minSwiftVersion
* Fix thread sanitizer issue
* Take 2
* Fix false positive on nested computed variables
* Remove support for Xcode 10.x
* Fix rule description
* Enable opt-in rule in configuration file
* Extract code into `SyntaxRule` protocol
* nit: make property private
* Missing docs
* Fix MasterRuleList.swift
* Update CHANGELOG
* Remove unused imports
* Use Example type
* Change rule kind to .idiomatic
* Update CHANGELOG
* Bump deployment target to macOS 10.12
* Simplify SyntaxRule.validate(file:visitor)
* Make TSan happy
* Use script/bootstrap in the README
2020-02-08 02:43:40 -08:00
Paul Taykalo
057bcb8921
Fixes #3066 Crash on missing ( #3067 )
2020-02-02 23:30:40 +02:00
Zev Eisenberg
fcf848608e
Add Inline test failure messages ( #3040 )
...
* Add Example wrapper in order to display test failures inline when running in Xcode.
* Stop using Swift 5.1-only features so we can compile on Xcode 10.2.
* Wrap strings in Example.
* Add Changelog entry.
* Wrap all examples in Example struct.
* Better and more complete capturing of line numbers.
* Fix broken test.
* Better test traceability.
* Address or disable linting warnings.
* Add documentation comments.
* Disable linter for a few cases.
* Limit mutability and add copy-and-mutate utility functions.
* Limit scope of mutability.
2020-02-02 10:35:37 +02:00
JP Simard
fe5baca7cd
Migrate to use SourceKitten's new ByteCount/ByteRange types ( #3037 )
...
New APIs were introduced in SourceKitten to allow for a more typesafe distinction between integers meaning NSString-based distances and byte-based distances.
* https://github.com/jpsim/SourceKitten/pull/639
* https://github.com/jpsim/SourceKitten/pull/642
This PR migrates SwiftLint's use of those APIs.
2020-01-16 15:18:37 -08:00
iliaskarim
4a56bf56c5
Update RedundantVoidReturnRule.swift ( #3039 )
...
Single argument function types require parentheses
2020-01-14 12:58:32 -08:00
JP Simard
399f5b7df6
Fix docstring formatting issues using DrString ( #3032 )
...
Using command:
$ drstring check -i 'Source/**/*.swift' --first-letter lowercase --vertical-align
2020-01-12 11:19:33 -08:00
JP Simard
40ade98710
Update SourceKitten to 0.28.0 ( #3011 )
2020-01-03 16:47:18 -08:00
timcmiller
4112816077
Added 'file_name_no_space' rule ( #3008 )
...
* Added 'file_name_no_space' rule
* Removed unused var, and added to changelog
* Remove custom suffix from 'file-name-no-space' rule
* Fixed LinuxMain
* Switched to use a CharacterSet over Regex
2020-01-03 15:45:30 -08:00
Max Härtwig
44b04f377d
Allow SubstitutionCorrectableRule to return nil instead of a correction to indicate that a suitable correction couldn't be found for a specific case ( #2958 )
2020-01-02 23:15:40 -08:00
Paul Taykalo
61a6a278a5
add byterange to the dictionary and breadthfirst algorithm
2019-11-10 23:53:59 +02:00
Paul Taykalo
73802c285d
Add own wrappers over syntax tokens and syntax map
2019-11-10 22:55:54 +02:00
Paul Taykalo
f569e3d973
Rename Traverse to Traverse with Parent
2019-11-09 13:29:43 -08:00
Paul Taykalo
a52a94c987
Use Generic Dictionary Traversing for multiple cases
2019-11-09 13:29:43 -08:00
Paul Taykalo
d771d223e3
Remove unused imports
2019-11-07 16:20:18 +02:00
Paul Taykalo
ac40778cb3
Use SwiftLintFile wrapper over the File
2019-11-07 15:19:17 +02:00
Paul Taykalo
ec6d82af56
Cache Access Control Level property
2019-11-07 11:52:50 +02:00
Paul Taykalo
b1cdc119ec
Use swift enums instead of raw values
2019-11-07 11:05:19 +02:00
Paul Taykalo
18a3896f97
Update swift structure dictionary
2019-11-07 08:51:16 +02:00
Paul Taykalo
f0ad230e81
fix linting issues
2019-11-07 08:50:50 +02:00
Paul Taykalo
b901c670d4
Cache file structure dictionary
2019-11-07 08:50:50 +02:00
Paul Taykalo
8c963d2c15
Working solution with SouceKittenDictionary wrapper
2019-11-07 08:50:50 +02:00
Marcelo Fabri
355a219b8a
PR feedback
2019-10-23 12:31:07 -07:00
Marcelo Fabri
cff53944c4
Optimize redundant_void_return
2019-10-20 20:40:11 -07:00
Ivan Vavilov
8af5825ca1
Add some test cases
2019-10-20 19:08:54 -07:00
Ivan Vavilov
ffa955dc7d
Add autocorrection to the syntactic sugar rule
2019-10-20 19:08:54 -07:00
Marcelo Fabri
2dcaf3ee78
Merge pull request #2894 from realm/mf-update-sourcekitten
...
Update SourceKitten to 0.26.0
2019-10-08 09:36:57 -07:00
Marcelo Fabri
f5174b3168
Update SourceKitten to 0.26.0
2019-10-08 00:51:18 -07:00
Max Härtwig
1a5aa05c34
Add missing Foundation import
2019-10-07 09:42:19 +02:00
Max Härtwig
b9368cbca6
Fix reference to
2019-10-07 09:27:31 +02:00
Max Härtwig
a157957df4
Make toggle_bool rule substitution correctable
2019-10-07 01:16:15 +02:00
JP Simard
ffb2f4f76d
Require Swift 5.0 to build ( #2857 )
...
* Require Swift 5.0 to build
* Update CI
* Stop testing with Swift 4.x & Xcode 10.0/10.1
* Use official Swift docker image instead of norionomura's
* Use Xcode 10.3 as latest stable version
* Update READMEs
* Fixup xcodeproj
* Fixup CI Swift container image tag
* Fixup changelog
2019-09-03 11:42:57 -04:00
Marcelo Fabri
b24fd6cdd4
Enable contains_over_filter_is_empty in SwiftLint itself
2019-08-25 20:58:11 -07:00
Marcelo Fabri
7c6d5d0994
Merge pull request #2815 from atfelix/issue-2791-swiftui-previews
...
Removes `type_name` violation for SwiftUI template code
2019-08-25 19:32:05 -07:00
Adam Felix
6f67cfa5aa
Issue-2791: type_name violation for with SwiftUI template code
...
* Ignore SwiftUI Previews underscore character
2019-08-25 20:01:28 -04:00
Marcelo Fabri
f6b73431a1
Avoid triggering redundant_type_annotation with @IBInspectable
...
Fixes #2842
2019-08-25 02:22:33 -07:00
Marcelo Fabri
94c6009fc4
Fix false positive in function_default_parameter_at_end
...
Fixes #2788
2019-07-04 22:25:52 -07:00
Marcelo Fabri
0ee12bd096
Catch != 0 in legacy_multiple rule ( #2778 )
2019-06-02 09:52:05 -07:00
Marcelo Fabri
6be5bf74c3
Add legacy_multiple opt-in rule ( #2771 )
...
Fixes #2612 .
2019-06-01 22:49:23 -07:00
Marcelo Fabri
862913f0c0
Don't trigger no_fallthrough_only if next case is @unknown ( #2770 )
...
* Don't trigger no_fallthrough_only if next case is @unknown
Fixes #2696
2019-05-25 21:53:23 -07:00
JP Simard
a55178e681
Use isDisjoint(with:) instead of intersection().isEmpty
2019-05-20 10:19:37 -07:00
Dalton Claybrook
a371419ce4
Fix issue where force-unwrapping self does not trigger a violation of the force_unwrapping rule ( #2764 )
...
* Fix issue where force-unwrapping self does not trigger a rule violation
* Update changelog
2019-05-20 10:17:32 -07:00
Frederick Pietschmann
3b9917f89d
Add nested type handling specification to file_name rule ( #2718 )
...
* Add nestedTypeSeparator to FileNameConfiguration
* Add tests for nested_type_separator configurability of file_name rule
* Add changelog entry
* Fix changelog position after rebase
2019-04-30 08:12:43 -07:00
Marcelo Fabri
d14d79d2c4
Don’t trigger redundant_void_return when using subscripts
2019-04-29 09:47:00 -07:00
Marcelo Fabri
3a36212b94
Swift 5 support ( #2720 )
...
* Update project to compile with Xcode 10.2
* Fix explicit_acl with Swift 5
* Update macOS VM image
* Fix ConfigurationTests on Swift 5
* Update Podspec
* Workaround SR-10486 to fix validation tests
* Fix testDetectSwiftVersion on Swift 5
* Update specs repo when validating CocoaPods spec
* Fix redundant_set_access_control tests
* Manually update Package.resolved
* Use .upToNextMinor
* [Azure Pipelines] Add `sw_vers`
* Relax expecting conditions for crashing output in `testSimulateHomebrewTest()`
Because TSAN makes `swiflint` to produce additional output on crashing.
* Add CHANGELOG entry
* Ignore extensions in explicit ACL rules
* Work around SR-10486 for Sourcery
2019-04-28 21:10:06 -07:00
Marcelo Fabri
537dec1d37
Fix false positives on explicit_acl and explicit_top_level_acl
...
Fixes #2705
2019-04-09 10:59:46 -07:00
Marcelo Fabri
0bc7d41958
Merge pull request #2641 from realm/cg-explicit_type_interface-fix
...
Fixes false positives on `explicit_type_interface` with type reference assignments
2019-02-14 09:18:55 -08:00