Danny Mösch and GitHub
2d28166d21
Enable upcoming feature "Concise Magic File" ( #5637 )
2024-06-22 11:22:55 +02:00
Danny Mösch
b515723b16
Release 0.55.1
2024-05-16 21:42:01 +02:00
Danny Mösch and GitHub
8bc8160416
Mark rule registry as sendable ( #5587 )
2024-05-16 21:21:24 +02:00
Danny Mösch
460d88c036
release 0.55.0
2024-05-11 23:09:19 +02:00
Danny Mösch and GitHub
c29391a5ae
Ignore but report invalid keys ( #5567 )
...
Don't fall back to the default configuration due to invalid keys.
2024-05-11 10:28:10 +00:00
Martin Redington and GitHub
b17bbaaebc
Remove severity as a baseline key ( #5566 )
...
It interacts poorly with `--strict`.
2024-05-11 09:43:39 +02:00
Danny Mösch and GitHub
d734022778
Add package ACL ( #5559 )
2024-05-04 15:52:21 +02:00
Danny Mösch and GitHub
11cbac63d1
Enable consider_default_literal_types_redundant option ( #5555 )
2024-05-01 19:58:42 +00:00
Chandler Wall and GitHub
16cb4a02b1
Fix numeric version comparisons ( #5526 )
2024-05-01 20:51:01 +02:00
Martin Redington and GitHub
96db41c379
Add an experimental baseline feature ( #5475 )
2024-05-01 16:55:33 +02:00
Martin Redington and GitHub
7623f1e730
Enable more rules in SwiftLint's own .swiftlint.yml ( #5532 )
2024-04-27 18:43:08 +02:00
Danny Mösch and GitHub
5bbdf7f4e6
Allow to set configuration elements as deprecated ( #5540 )
...
Automatically print an appropriate warning to the console.
2024-04-25 19:37:04 +00:00
Danny Mösch and GitHub
1b7fbc4bcd
Make postprocessors non-throwing ( #5539 )
...
Failing immediately when a property is invalid is too strict. It feels
sufficient to allow to report an issue but otherwise continue with a default
value instead of stopping execution completely.
2024-04-23 16:45:59 -04:00
waitbutY and GitHub
5315c3d1b6
Add SARIF reporter ( #5516 )
2024-04-13 05:49:57 -04:00
Martin Redington and GitHub
dfb09820d3
Enable superfluous_disable_command rule for analyzer rules ( #5522 )
2024-04-03 20:27:21 +02:00
Danny Mösch and GitHub
758c22e7cb
Prohibit configuration key inference ( #5513 )
...
While this is already implemented, it only works when a configuration
is updated by calling `apply(configuration:)` on it somewhere. This
imperceptible detail could lead to confusing. So better prohibit the
use of the feature for the time being as long as a good solution is
found. So far, no explicit configuration keys have been removed.
2024-03-27 19:08:59 -04:00
Martin Redington and GitHub
5075cc073c
Fix warnings about configured rules that are not enabled, when they are enabled in a parent config ( #4864 )
2024-03-25 21:39:22 +01:00
Danny Mösch
e6bb673444
Handle issues in nested contexts gracefully while still throwing standalone
...
Use different issues to make inlineable configurations work in both
scenarios, namely being used standalone and nested as part of another
configuration. In the latter case, finding no values to parse in a raw
configuration is okay, while as a standalone configuration it's not.
2024-03-24 09:36:18 +01:00
Danny Mösch
ccd50e8c68
Merge duplicated issues
2024-03-24 09:36:18 +01:00
Danny Mösch and GitHub
82cad0bfff
Allow to infer option names ( #5505 )
...
This allows to infer names of options from their names in a configuration. CamelCase is translated into snake_case automatically when `apply` is triggered.
* Don't have all `RuleConfiguration`s conform to `InlinableOptionType`. Mark types that must have this capability explicitly. Same for `AcceptableByConfigurationElement`.
* A type being an `InlinableOptionType` doesn't mean it's automatically inlined. This also doesn't depend on the fact of having a name for its key configured any longer. Instead, an `inline` attribute must explicitly be set to `true` in `@ConfigurationElement`.
* Key name inference is optional and can be overwritten by specifying a key name in the attribute.
* Inlined configurations only fail in `apply` when they are really sure that something is odd. Otherwise, they accept to not being updated.
2024-03-23 18:54:39 +01:00
deterclosed and GitHub
082adfaed7
Fix some typos ( #5504 )
2024-03-23 15:25:16 +01:00
Danny Mösch and GitHub
6398c3b807
Shift selection of default reporter ( #5499 )
2024-03-17 20:26:15 +01:00
Oleg Kohtenko and GitHub
bedf211c43
Ignore absence of child or parent config instead of falling back to default ( #5407 )
2024-03-16 10:29:42 -04:00
Marcelo Fabri and GitHub
1aa8289085
Allow rules to lint empty files ( #5478 )
2024-03-04 07:36:40 -08:00
Danny Mösch and GitHub
c730047176
Enable superfluous_else rule ( #5412 )
2024-03-03 16:30:44 +01:00
Danny Mösch and GitHub
d0fb75fcfb
Prefer package ACL over @_spi ( #5466 )
2024-03-03 16:30:04 +01:00
Danny Mösch and GitHub
4078e41f1b
Let all rewriters have a configuration by default ( #5467 )
2024-02-11 15:13:24 +01:00
Danny Mösch and GitHub
8cb2cf9f85
Rewrite let_var_whitespace rule with SwiftSyntax ( #5367 )
2023-11-29 22:45:06 +01:00
Danny Mösch and GitHub
fb4ef951ee
Print invalid keys when configuration parsing fails ( #5350 )
2023-11-14 23:43:38 +01:00
JP Simard
f17a4f9dfb
release 0.54.0
2023-11-10 15:54:29 -05:00
Marcelo Fabri and GitHub
ed8ed010f1
Revert "Trigger superfluous_disable_command for custom_rules ( #4755 )" ( #5339 )
...
This reverts commit 7499896199 .
2023-11-09 04:11:48 -05:00
Kabir Oberai and GitHub
92679e230d
Fix implicit_getter false positive in case of unknown accessors ( #5300 )
2023-11-09 09:14:16 +01:00
Marcelo Fabri and GitHub
7499896199
Trigger superfluous_disable_command for custom_rules ( #4755 )
...
Fixes #4754
2023-11-07 04:11:58 -05:00
Danny Mösch
e7460339d4
Declare ConfigurationElement as Equatable right away
2023-11-05 00:24:42 +01:00
Danny Mösch
45e19610be
Use _modify accessor to allow ConfigurationElement to be a struct type
2023-11-05 00:24:42 +01:00
JP Simard and GitHub
6e3bfc1a45
Fix more strict concurrency warnings ( #5324 )
...
These aren't enough to enable `-strict-concurrency=complete` for more
modules, but they address some warnings with that flag on and reduces
the scope of what remains to be migrated.
2023-11-01 12:41:54 -04:00
JP Simard and GitHub
48604d35e3
Update Sourcery to 2.1.2 ( #5318 )
2023-10-31 20:34:49 +00:00
Danny Mösch and GitHub
58928b7e40
Enforce any on existential types ( #5273 )
...
This makes syntactically clear which types are rather expensive.
2023-10-12 08:37:23 +02:00
Danny Mösch and GitHub
0934c18cba
Let RuleConfigurations be equatable by default ( #5257 )
2023-10-03 18:05:31 +02:00
Danny Mösch and GitHub
2433e7b5bf
Make use of macros to generate configuration parsing code ( #5250 )
2023-10-02 22:35:24 +02:00
JP Simard
3adea74200
release 0.53.0
2023-09-26 11:23:51 -04:00
406d4d270b
Require Swift 5.9 ( #5235 )
...
Co-authored-by: Danny Mösch <danny.moesch@icloud.com >
2023-09-25 18:54:02 -04:00
Martin Redington and GitHub
f783b0279a
Add strict configuration file setting ( #5226 )
2023-09-18 19:27:30 +02:00
Martin Redington and GitHub
0c9827bc59
Add include_bare_init option to explicit_init rule ( #5203 )
2023-09-04 22:19:54 +02:00
Danny Mösch and GitHub
02640a3415
Rewrite implicit_return rule using SwiftSyntax ( #5166 )
2023-09-02 14:32:37 +02:00
Danny Mösch
84405f9d3f
Use correct separator for nested descriptions
2023-08-28 20:19:28 +02:00
Danny Mösch
d5a176790a
Reuse option serialization code
2023-08-28 20:19:28 +02:00
Danny Mösch
668cce84db
Print YAML configuration in output of rules command
2023-08-28 20:19:28 +02:00
Danny Mösch and GitHub
5544ce1d47
Hide reporters from public interface ( #5122 )
2023-08-28 13:49:52 -04:00
Danny Mösch and GitHub
85c4a3a03d
Revert "Allow to initialize Examples by string literals ( #5154 )" ( #5155 )
...
This reverts commit 56461c3ab4 .
2023-08-04 00:03:26 +02:00