Commit Graph

459 Commits

Author SHA1 Message Date
JP Simard 2819c89ec3 Fix force-try violation 2018-05-11 22:28:26 -07:00
JP Simard 84bfdca774 Enable File Name rule for SwiftLint & fix violations 2018-05-11 22:17:40 -07:00
JP Simard 24ec44d288 Add file_name opt-in rule
validating that file names contain the name of a
type or extension declared in the file (if any).
2018-05-11 22:17:39 -07:00
JP Simard 62a3b707fa Merge pull request #2185 from marcelofabri/default-params-end
Add function_default_parameter_at_end rule
2018-05-11 20:42:08 -07:00
JP Simard add9b53ea3 Merge branch 'master' into master 2018-05-11 10:11:27 -07:00
Marcelo Fabri 588bed83e6 Add function_default_parameter_at_end rule 2018-05-11 09:18:30 -07:00
Varun P M 794160a8d2 Added ignores_default_parameters when calculating parameter count 2018-05-10 17:40:30 +05:30
Ornithologist Coder 5eea1d10ba Add empty_xctest_method opt-in rule 2018-05-10 14:05:42 +02:00
freak4pc 35f388f04d Remove redundant test 2018-05-06 23:34:14 +03:00
freak4pc 62d0dd14ca Remove headers 2018-05-06 23:34:14 +03:00
freak4pc fbdba25636 Further abstracted non-triggering and triggering examples based on config.
Also updated ACL to be internal for rule Examples.
2018-05-06 23:34:14 +03:00
freak4pc 8e0202cfc8 Added violation marker and fixed tests 2018-05-06 23:34:14 +03:00
freak4pc 71144ebe43 Add RuleDescription.with(nonTriggeringExamples:triggeringExamples:) 2018-05-06 23:34:14 +03:00
freak4pc ca47802fd4 Add tests for indented and non-indented cases (still failing WIP) 2018-05-06 23:34:14 +03:00
JP Simard e89e56b99a Fix TrailingCommaRuleTests for Swift < 4.1 2018-05-06 13:11:17 -07:00
Michael Gray ac9b5348e1 Added "ignores_interpolated_strings" option to line_length (default value is false) 2018-05-06 10:41:15 -07:00
JP Simard 5d4a7d7cc1 Type annotation over 'as' cast 2018-05-05 17:07:45 -07:00
JP Simard 6ff33e675b Refactor 2018-05-05 16:24:54 -07:00
JP Simard 22a6187553 Merge branch 'master' into attibute_and_modifier_order
* master:
  Remove all file headers
  Make fallthrough rule opt-in
  Update the swift file and run the unit tests
  Fix a typo
2018-05-05 15:25:43 -07:00
JP Simard b83e0991b9 Remove all file headers
The MIT license doesn't require that all files be prepended with this
licensing or copyright information. Realm confirmed that they're ok with this
change. This will enable some companies to contribute to SwiftLint and the
date & authorship information will remain accessible via git source control.
2018-05-04 13:42:02 -07:00
Daniel Metzing 61259692ed Removing s from rule name 2018-04-27 08:59:02 +02:00
Daniel Metzing 9a7005912a Add modifiers_order rule 2018-04-26 20:25:58 +02:00
Daniel Metzing b2bb9d6c89 Merge remote-tracking branch 'upstream/master' into upstream_master 2018-04-26 15:10:14 +02:00
Daniel Metzing 5283598794 Merge remote-tracking branch 'upstream/master' into upstream_master 2018-04-25 12:43:06 +02:00
Marcelo Fabri 428379ce8f Add unavailable_function 2018-04-24 09:29:53 -07:00
Marcelo Fabri b338918b45 Merge pull request #2036 from marcelofabri/redudant-acl-set
[Swift 4.1] Add redundant_set_access_control rule
2018-04-24 09:19:53 -07:00
JP Simard fbeaaeb972 Use Sequence.reduce(into:) when possible 2018-04-22 20:46:46 -07:00
Daniel Metzing cf64c0873b Merge branch 'attibute_and_modifier_order' into upstream_master
# Conflicts:
#	Cartfile
#	Cartfile.private
#	Cartfile.resolved
#	Carthage/Checkouts/SourceKitten
#	Package.resolved
#	Package.swift
#	Rules.md
#	Source/SwiftLintFramework/Extensions/Configuration+LintableFiles.swift
#	Source/SwiftLintFramework/Extensions/Dictionary+SwiftLint.swift
#	Source/SwiftLintFramework/Models/SwiftVersion.swift
#	Source/SwiftLintFramework/Rules/ModifiersOrderRule.swift
#	Source/SwiftLintFramework/Rules/RuleConfigurations/ModifiersOrderConfiguration.swift
#	SwiftLint.xcodeproj/project.pbxproj
#	Tests/SwiftLintFrameworkTests/LinterCacheTests.swift
#	Tests/SwiftLintFrameworkTests/ModifiersOrderTests.swift
#	circle.yml
2018-04-10 23:04:11 +02:00
Daniel Metzing c68a28dba5 Adding rule 2018-04-10 22:52:16 +02:00
Daniel Metzing 254ecc7609 upstream master pulled 2018-04-10 22:07:44 +02:00
Marcelo Fabri 1a9a4f7516 Add redundant_set_access_control rule
Fixes #1869
2018-04-08 21:54:50 -07:00
Marcelo Fabri 5231f6c9a5 Support min Swift version in Rule description 2018-04-08 21:52:45 -07:00
Marcelo Fabri c0ad910248 Skip testRulesDocumentationIsUpdated on Swift 4.0 2018-04-08 16:01:03 -07:00
JP Simard 7070c3beac Merge pull request #2136 from realm/ks/lower-acl
Add LowerACLThanBodyRule
2018-04-08 10:44:44 -07:00
Norio Nomura 878d9d3bff Fix identifier_name violation 2018-04-08 13:28:09 +09:00
Norio Nomura d269948996 Silence compiler warnings
> warning: initializer 'init(configuration:)' nearly matches defaulted requirement 'init(configuration:)' of protocol 'Rule'
> note: candidate has non-matching type '(configuration: SeverityLevelsConfiguration)'
> note: move 'init(configuration:)' to an extension to silence this warning
> SwiftLintFramework.Rule:5:12: note: requirement 'init(configuration:)' declared here
>    public init(configuration: Any) throws
2018-04-08 13:28:09 +09:00
Norio Nomura c592538856 Add 4.1.0, 4.1.1 and 4.2.0 to Swift version detection 2018-04-05 10:29:54 +09:00
Keith Smiley 925fb26d83 Add LowerACLThanBodyRule
This new rule validates that if a type/function/variable definition has
an ACL specifier, it is more restrictive than the containing body's
level. This is intended to lint a peculiarity of SE-0025 where it is
stated:

> The compiler should not warn when a broader level of access control is
used within a type with more restrictive access, such as internal within
a private type. This allows the designer of the type to select the
access they would use were they to make the type more widely accessible.

I think this is an anti-goal because when a type is made more open, it
should be a concious decision at that time to make it public. This is of
course an opt-in rule as well. This also has the added benefit of
linting this compiler bug: https://bugs.swift.org/browse/SR-2925
2018-04-04 10:16:12 -07:00
Ornithologist Coder faee8c935b Adds opt-in rule discouraged_optional_collection 2018-03-26 00:26:13 +02:00
Marcelo Fabri ae0e21f0f8 Fix crash when saving cache
Fixes #2032
2018-03-24 21:23:14 -07:00
Ash Furrow e5ff6063ff Disables type length for test class. 2018-03-22 09:42:56 -07:00
Ash Furrow 173ca11b2a Adds more tests for #2056. 2018-03-22 09:42:56 -07:00
Ash Furrow 63658418c4 Adds unit test for force-exclude flag. 2018-03-22 09:42:56 -07:00
Frederick Pietschmann 7ac75e92d2 Fix logic error in rule disable check 2018-03-21 07:42:46 +01:00
Frederick Pietschmann b71aba200d Extend all keyword tests 2018-03-21 07:42:46 +01:00
Frederick Pietschmann fdbc391e52 Improve all keyword-related code
As per PR #2095 review, suggested by @marcelofabri
2018-03-21 07:42:46 +01:00
Frederick Pietschmann 0f95f6b6d9 Add tests for all keyword 2018-03-21 07:42:46 +01:00
Frederick Pietschmann 0ad2488d7e Add all keyword 2018-03-21 07:42:46 +01:00
Marcelo Fabri 7b34b4b92b Merge pull request #2094 from notorca/master
Fix for crash on Linux on sources with surrogate characters
2018-03-17 16:00:03 -07:00
Daniel Metzing 96d29817b4 Add untyped_error_in_catch opt-in rule 2018-03-17 12:54:51 -07:00