Danny Mösch
d9f96947fc
Support Bazel build on Windows
2025-12-19 13:32:45 +01:00
Brett Best
fb046797b2
Add handling for access level modifiers on imports ( #6377 )
2025-12-19 04:10:07 -05:00
Danny Mösch
b7f706391f
Update dependencies ( #6384 )
2025-12-17 21:49:29 +01:00
Brett Best
d902c66ee5
Add basic .editorconfig ( #6376 )
2025-12-17 20:19:05 +01:00
Danny Mösch
2e78f40e54
Use directory enumerator to collect and exclude files at the same time ( #6366 )
2025-12-17 19:47:21 +01:00
Danny Mösch
2d0725aca9
Use SwiftSyntax 6.4 pre-release 2025-12-15 ( #6383 )
2025-12-16 11:41:47 +01:00
dependabot[bot]
938ec50259
Bump actions/download-artifact from 6.0.0 to 7.0.0 ( #6379 )
...
Bumps [actions/download-artifact](https://github.com/actions/download-artifact ) from 6.0.0 to 7.0.0.
- [Release notes](https://github.com/actions/download-artifact/releases )
- [Commits](https://github.com/actions/download-artifact/compare/018cc2cf5baa6db3ef3c5f8a56943fffe632ef53...37930b1c2abaa49bbe596cd826c3c89aef350131 )
---
updated-dependencies:
- dependency-name: actions/download-artifact
dependency-version: 7.0.0
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-15 17:57:14 +01:00
dependabot[bot]
4e7a55abbc
Bump DavidAnson/markdownlint-cli2-action from 21.0.0 to 22.0.0 ( #6380 )
...
Bumps [DavidAnson/markdownlint-cli2-action](https://github.com/davidanson/markdownlint-cli2-action ) from 21.0.0 to 22.0.0.
- [Release notes](https://github.com/davidanson/markdownlint-cli2-action/releases )
- [Commits](https://github.com/davidanson/markdownlint-cli2-action/compare/30a0e04f1870d58f8d717450cc6134995f993c63...07035fd053f7be764496c0f8d8f9f41f98305101 )
---
updated-dependencies:
- dependency-name: DavidAnson/markdownlint-cli2-action
dependency-version: 22.0.0
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-15 17:55:55 +01:00
dependabot[bot]
ddffebabee
Bump ruby/setup-ruby from 1.269.0 to 1.270.0 ( #6381 )
...
Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby ) from 1.269.0 to 1.270.0.
- [Release notes](https://github.com/ruby/setup-ruby/releases )
- [Changelog](https://github.com/ruby/setup-ruby/blob/master/release.rb )
- [Commits](https://github.com/ruby/setup-ruby/compare/d697be2f83c6234b20877c3b5eac7a7f342f0d0c...ac793fdd38cc468a4dd57246fa9d0e868aba9085 )
---
updated-dependencies:
- dependency-name: ruby/setup-ruby
dependency-version: 1.270.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-15 17:54:30 +01:00
dependabot[bot]
5f4d01b716
Bump actions/upload-artifact from 5.0.0 to 6.0.0 ( #6382 )
...
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact ) from 5.0.0 to 6.0.0.
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](https://github.com/actions/upload-artifact/compare/330a01c490aca151604b8cf639adc76d48f6c5d4...b7c566a772e6b6bfb58ed0dc250532a479d7789f )
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-version: 6.0.0
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-15 17:53:55 +01:00
dependabot[bot]
c4d131a1b3
Bump actions/cache from 4.3.0 to 5.0.1 ( #6378 )
...
Bumps [actions/cache](https://github.com/actions/cache ) from 4.3.0 to 5.0.1.
- [Release notes](https://github.com/actions/cache/releases )
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md )
- [Commits](https://github.com/actions/cache/compare/0057852bfaa89a56745cba8c7296529d2fc39830...9255dc7a253b0ccc959486e2bca901246202afeb )
---
updated-dependencies:
- dependency-name: actions/cache
dependency-version: 5.0.1
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-15 17:53:14 +01:00
Brett Best
5b1b83812a
Support Swift version 6.2.3 ( #6375 )
2025-12-13 09:15:47 +00:00
Danny Mösch
66d4818cd3
Support Swift version 6.2.2 ( #6373 )
2025-12-10 21:10:39 +00:00
Roman Lavrov
ccb6144eff
Update to a more recent Windows dev snapshot ( #6371 )
2025-12-09 12:00:17 +01:00
dependabot[bot]
ef63229c3b
Bump actions/checkout from 6.0.0 to 6.0.1 ( #6370 )
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 6.0.0 to 6.0.1.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/1af3b93b6815bc44a9784bd300feb67ff0d1eeb3...8e8c483db84b4bee98b60c0593521ed34d9990e8 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: 6.0.1
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-08 20:02:13 +01:00
dependabot[bot]
e1f2b8b997
Bump ruby/setup-ruby from 1.268.0 to 1.269.0 ( #6369 )
...
Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby ) from 1.268.0 to 1.269.0.
- [Release notes](https://github.com/ruby/setup-ruby/releases )
- [Changelog](https://github.com/ruby/setup-ruby/blob/master/release.rb )
- [Commits](https://github.com/ruby/setup-ruby/compare/8aeb6ff8030dd539317f8e1769a044873b56ea71...d697be2f83c6234b20877c3b5eac7a7f342f0d0c )
---
updated-dependencies:
- dependency-name: ruby/setup-ruby
dependency-version: 1.269.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-08 20:01:21 +01:00
Danny Mösch
ac701c088c
Improve performance of excluded files filter ( #6342 )
...
The current algorithm is like "collect all included files and subtract all excluded files".
Collecting all included and all excluded files relies on the file system. This can become slow
when the patterns used to exclude files resolve to a large number of files.
The new approach only collects all lintable files and checks them against the exclude patterns.
This can be done by in-memory string-regex-match and does therefore not require file system accesses.
The new implementation also no longer traverses directories that already match an exclude pattern.
(cherry picked from commit 152355e36f )
2025-12-07 15:58:23 +01:00
Danny Mösch
32c33c2588
Re-enable redundant_self rule ( #6368 )
2025-12-07 08:11:08 -05:00
Danny Mösch
d1cdf8ce20
Extend redundant_self_in_closure to find all redundant selfs ( #6346 )
2025-12-07 07:49:50 -05:00
Danny Mösch
4bfafb9086
Consume test repository for file performance comparisons ( #6367 )
2025-12-07 13:46:04 +01:00
Danny Mösch
9a699f6c4b
Add Windows build workflow ( #6360 )
2025-12-06 12:53:22 +01:00
Saleem Abdulrasool
562ec8f369
Correct incorrect handling of file paths ( #6355 )
...
`URL.path` is not a usable rendering of the path. `URL.path` represents
the URI path. If the path is meant to be consumable as a file path, the
file system representation (aka FSR) must be retrieved.
This improves the file path handling and makes additional tests now
pass.
Co-authored-by: Danny Mösch <danny.moesch@icloud.com >
2025-12-01 22:02:12 +01:00
Danny Mösch
15b1930763
Update Bazel dependencies ( #6364 )
2025-12-01 14:28:28 -05:00
Danny Mösch
2e87be0398
Infer name of parent rule in configurations ( #6363 )
2025-12-01 14:15:00 -05:00
Rodion Ivashkov
31cdc24101
Add new multiline_call_arguments rule ( #6223 )
...
Co-authored-by: Danny Mösch <danny.moesch@icloud.com >
2025-11-30 18:16:11 -05:00
Danny Mösch
3a896df138
Set explicit OS with version in cache keys ( #6362 )
2025-11-29 11:24:09 +00:00
Danny Mösch
f017bfff7e
Warn about missing explicit target dependencies ( #6361 )
...
Don't err as SwiftWarningControl would currently cause a failure.
2025-11-29 11:19:10 +00:00
Saleem Abdulrasool
e526fdef94
Repair GenerationTests on Windows ( #6354 )
2025-11-28 09:04:17 +01:00
Roman Lavrov
2e92f75a69
Replace invalid characters with underscore in caching ( #6358 )
2025-11-27 15:12:18 -05:00
dependabot[bot]
32f04fc167
Bump ruby/setup-ruby from 1.267.0 to 1.268.0 ( #6357 )
...
Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby ) from 1.267.0 to 1.268.0.
- [Release notes](https://github.com/ruby/setup-ruby/releases )
- [Changelog](https://github.com/ruby/setup-ruby/blob/master/release.rb )
- [Commits](https://github.com/ruby/setup-ruby/compare/d5126b9b3579e429dd52e51e68624dda2e05be25...8aeb6ff8030dd539317f8e1769a044873b56ea71 )
---
updated-dependencies:
- dependency-name: ruby/setup-ruby
dependency-version: 1.268.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-24 15:52:50 +01:00
dependabot[bot]
ca49d31e45
Bump actions/checkout from 5.0.0 to 6.0.0 ( #6356 )
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 5.0.0 to 6.0.0.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/08c6903cd8c0fde910a37f88322edcfb5dd907a8...1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: 6.0.0
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-24 15:52:09 +01:00
Saleem Abdulrasool
339d250464
Port to Windows ( #5030 )
...
At least ensure it compiles just fine on Windows.
* build: add CryptoSwift dependency for Windows
* SwiftLintBuiltInRules: treat Windows similar to Linux wrt `NSDataDetector`
* SwiftLintCore: initial pass for Windows support
Add some Windows specific handling for the paths in SwiftLintCore. The
one piece that this change does not cover is the handling of `glob` as
that is not an ISO C standard function and as such there is no `glob` on
Windows. This will be worked through separately.
* swiftlint: add a Windows port
This enables building the swiftlint command on Windows. There is no
system ioctl for terminal access, instead, we can use the Win32 Console
API surface to query the console size. In the case of a failure, assume
the width to be 80-columns (as the standard VGA console is 80x25).
* WIP/SwiftLintCore: port the `glob` function to Windows
Windows does not support `glob` as a standard C library function as that
is not part of the C standard. Attempt to emulate that through the use
of `FindFirstFileW` and `FindNextFile` to iterate the matching files
given a pattern. This should allow us to start enumerating the files as
if we had `glob` available.
2025-11-21 09:59:28 +01:00
Danny Mösch
c5ad695702
Remove SourceKit config
...
The setup is individual and should be configured on that basis.
2025-11-20 13:35:40 +01:00
Danny Mösch
f1562a629e
Exclude only function signatures ( #6348 )
2025-11-18 17:27:53 +01:00
dependabot[bot]
f8d448d69d
Bump DavidAnson/markdownlint-cli2-action from 20.0.0 to 21.0.0 ( #6344 )
2025-11-17 16:53:45 +01:00
dependabot[bot]
0469f7dfc3
Bump peter-evans/repository-dispatch from 4.0.0 to 4.0.1 ( #6345 )
2025-11-17 16:53:02 +01:00
Danny Mösch
612f4f3f74
Add even more example violations
2025-11-16 00:32:16 +01:00
Danny Mösch
4744f457ba
Update introduction in README
2025-11-15 16:47:27 +01:00
Danny Mösch
a602aa4460
Remove Azure build status
2025-11-15 16:26:22 +01:00
Danny Mösch
123f373c1c
Use separate folder for indexing and IDE builds
2025-11-15 16:25:48 +01:00
Jared Grubb
e57a2d4860
Do not trigger override_in_extension inside @implementation ( #6339 )
2025-11-15 12:26:10 +00:00
Danny Mösch
d74b8726bc
Improve @escaping tracking recognizing local variable assignments ( #6341 )
2025-11-15 11:42:57 +01:00
Danny Mösch
146dc72c06
Run checks for stale issues on full runner again
2025-11-15 10:08:39 +01:00
Danny Mösch
97579b5dcf
Add new unneeded_escaping rule ( #6337 )
2025-11-14 18:54:51 +01:00
Danny Mösch
f59f41b36e
Support Swift version 6.2.1 ( #6338 )
2025-11-09 13:37:43 +01:00
Danny Mösch
9e5a526483
Enable unneeded_throws_rethrows rule ( #6335 )
2025-11-03 20:24:57 +01:00
Danny Mösch
89897531b3
Move changelog entry
2025-11-03 17:42:00 +01:00
Tony Ngo
837a90621b
Add new unneeded_throws_rethrows rule ( #6069 )
...
Co-authored-by: Danny Mösch <danny.moesch@icloud.com >
2025-11-03 17:39:31 +01:00
Danny Mösch
b6c7e045a8
Add new separation option to vertical_whitespace_between_cases ( #6334 )
2025-11-02 08:53:25 -05:00
Danny Mösch
b51759599e
Rewrite vertical_whitespace_between_cases rule with SwiftSyntax ( #6333 )
2025-11-02 01:40:23 -05:00