Commit Graph

84 Commits

Author SHA1 Message Date
JP Simard 6cea034355 Analyze SwiftLint on CI (#2387)
* Enable analyzer_rules in .swiftlint.yml

* Add analyze and analyze_autocorrect commands to Makefile

* Run `swiftlint analyze` on CI

* Run make bootstrap before make analyze
2018-09-04 08:55:07 -07:00
JP Simard 687c6a7549 Fix make sourcery
* Invoke correct make job for `AutomaticRuleTests`
* Generate `LinuxMain` last so that it can include tests from
  AutomaticRuleTests
2018-08-31 15:38:46 -07:00
JP Simard 5da6115a6c Fix sourcery path glob for rules 2018-08-06 10:56:16 -07:00
Marcelo Fabri e0adb6e5f3 Check if git status is clean before releasing
Fixes #2327
2018-08-04 15:04:03 -07:00
Marcelo Fabri 8aadb802fb Split RulesTests into several test cases, generating them automatically 2018-07-21 17:23:08 -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
Norio Nomura 98029f80c3 Add test_tsan target to Makefile 2018-04-09 10:14:54 +09:00
Norio Nomura 3bde4c9756 Add build to .PHONY in Makefile
This will make `make` not to be misled by the existence of `build` directory.
2017-12-30 12:40:57 +09:00
Norio Nomura 76031b6321 Add stencil to dependency of each sourcery targets 2017-11-28 08:21:45 +09:00
Norio Nomura 40c2eb2c4d Separate sourcery target into MasterRuleList.swift and LinuxMain.swift
Also set dependencies on each targets.
2017-11-25 22:33:32 +09:00
Norio Nomura 72b8dec683 Use -static-stdlib only when building on Darwin
This makes `make install` possible on Linux.
2017-11-19 12:43:00 +09:00
Norio Nomura 7d1b4016a7 Use SWIFTLINT_EXECUTABLE 2017-11-17 14:02:36 +09:00
Norio Nomura 69b2276e18 Remove unused variables 2017-11-17 13:57:59 +09:00
Norio Nomura 4ca2665556 Stop removing test bundle before docker_test
It became unnecessary in Swift 4.0.
2017-11-17 13:57:50 +09:00
Norio Nomura 224f44e41d Refactor Makefile
Change `all` target to execute `swift build` instead of `xcodebuild`.
2017-11-17 13:53:29 +09:00
Norio Nomura 745fc9505d Create destination directory by install -d 2017-11-17 11:47:12 +09:00
Norio Nomura 1ca05477e6 Use --disable-sandbox in prefix_install used by Homebrew
Homebrew uses sandbox on building bottle.
2017-11-17 11:22:01 +09:00
Norio Nomura 2fef26eabd Add destination path as argument of install for compatibility with Linux 2017-11-17 11:15:18 +09:00
Norio Nomura 4cc2bf37b1 Apply workaround for https://github.com/apple/swift-package-manager/pull/1320 2017-11-17 11:06:50 +09:00
Norio Nomura adf58cf08c Remove uninstall and package dependencies from install
It will be more desirable behavior when `make install` on Linux.
2017-11-17 10:52:33 +09:00
Norio Nomura 67a8fc3c78 Use SwiftPM to build installables 2017-11-17 09:53:28 +09:00
JP Simard 6428297814 Fix pod trunk push by passing --swift-version=4.0 2017-11-10 15:58:21 -08:00
Marcelo Fabri ee02e0f8e5 Remove support for building with Swift 3.1 2017-10-04 13:48:17 -07:00
JP Simard c5521292c1 Update Swift 4 docker image to Swift 4.0 release 2017-10-04 13:14:52 -07:00
JP Simard 9dc7ab7b9a Run tests in parallel 2017-10-04 11:54:49 -07:00
JP Simard 53baff5bca Add docker_test_4 command to Makefile 2017-09-10 13:48:38 -07:00
JP Simard 6712b5488d Merge pull request #1592 from realm/jp-sourcery-master-rule-list
Use Sourcery to generate LinuxMain.swift & MasterRuleList.swift
2017-06-02 15:02:44 -07:00
JP Simard 90ee3d377b fix make docker_test failure after running SwiftPM on Darwin
SwiftPM on Darwin produces a `.xctest` _bundle_ (i.e. folder).
SwiftPM on Linux produces a `.xctest` _binary_ (i.e. file).

SwitPM on Linux exits unsuccessfully if it finds a folder at the `.xctest` location.

```
$ make docker_test
...
Linking ./.build/debug/SwiftLintPackageTests.xctest
/usr/bin/ld.gold: fatal error: ./.build/debug/SwiftLintPackageTests.xctest: open: Is a directory
clang: error: linker command failed with exit code 1 (use -v to see invocation)
<unknown>:0: error: link command failed with exit code 1 (use -v to see invocation)
<unknown>:0: error: build had 1 command failures
swift-test: error: exit(1): /usr/bin/swift-build-tool -f .build/debug.yaml test
make: *** [docker_test] Error 1
```

This change detects this scenario and pre-emptively deletes the `.xctest` folder if it exists.
2017-06-02 14:39:02 -07:00
JP Simard f1417da079 preserve Sourcery comment header in make sourcery 2017-06-02 14:28:37 -07:00
JP Simard 9a81734081 use Sourcery to generate MasterRuleList.swift 2017-06-02 14:28:37 -07:00
JP Simard 25a92c4e03 automatically generate LinuxMain.swift using Sourcery
This adds 6 tests that were accidentally not being run on Linux:

* LineLengthConfigurationTests.testLineLengthConfigurationInitialiserSetsIgnoresComments
* LineLengthConfigurationTests.testLineLengthConfigurationInitialiserSetsIgnoresFunctionDeclarations
* LineLengthConfigurationTests.testLineLengthConfigurationThrowsOnBadConfigValues
* LineLengthRuleTests.testLineLengthWithIgnoreCommentsEnabled
* LineLengthRuleTests.testLineLengthWithIgnoreFunctionDeclarationsEnabled
* RegionTests.testSeveralRegionsFromSeveralCommands
2017-06-02 14:28:37 -07:00
JP Simard 0968cf4702 call reset if docker_htop exits unsuccessfully
fixes #1570. From Stack Overflow: https://stackoverflow.com/a/44191071/373262
2017-05-25 16:11:08 -07:00
JP Simard c40fe7c21d commit changes before pushing & tagging 2017-05-22 14:08:17 -07:00
JP Simard e54eeef17e Add make push_version command.
Update 'Master' header with new version & name in CHANGELOG,
commit, tag & push.
2017-05-22 14:05:24 -07:00
JP Simard 0f0f73dacd stop testing with Swift 3.0.2 on Linux 2017-05-19 15:52:26 -07:00
JP Simard 320e9503b1 remove unused spm-related commands from Makefile 2017-05-19 14:16:57 -07:00
JP Simard 5e5a9503a5 add make docker_htop command
docker provides very little insight into what's happening in its
containers, so this command helps keep tabs on what processes are
running.
2017-05-19 12:17:15 -07:00
JP Simard c952c13d8e run docker tests on Swift 3.1.1 2017-05-15 13:42:02 -07:00
JP Simard 2751c3c83d speed up display_compilation_time
by just _building_ tests, not _running_ them.
2017-05-15 13:41:06 -07:00
Marcelo Fabri d73ee8d3d9 Remove Swift 2 support
Also removes `missing_docs` and `valid_docs` rules.

Fixes #1453.
2017-04-23 13:43:41 +02:00
Norio Nomura 58adbf93a1 Add Swift 3.1 on Linux to travis 2017-04-17 17:22:54 +09:00
Norio Nomura fcfb852f5c Fix display_compilation_time target in Makefile for Swift 3.1 2017-04-12 20:40:22 +09:00
JP Simard 510b04a66a use Release mode when running make installables
so far, we've just been "releasing" SwiftLint built in Debug mode
since that's the default and we never specified a configuration 🙀
2017-04-06 16:39:43 -07:00
JP Simard 16ca04905c 0.16.1: Commutative Fabric Sheets 2017-01-20 10:32:33 -08:00
JP Simard a16e77c39e fix swiftlint version with SPM
all done by @marcelofabri, originally in #1073
2017-01-07 00:09:27 -08:00
Marcelo Fabri eb25fad75f Merge pull request #1087 from marcelofabri/swift2-tests
Run tests with Swift 2.3 set for SourceKitten
2016-12-30 02:02:14 -02:00
Marcelo Fabri 3301c1c15a Invert tests order 2016-12-30 01:01:47 -02:00
Marcelo Fabri d75cd234f7 Run tests with Swift 2.3 set for SourceKitten
This should help preventing issues like #1019.
2016-12-30 00:06:51 -02:00
Marcelo Fabri a85a6c0fbf Fix adding LICENSE to portable_zip
Fixes #1083
2016-12-29 21:49:16 -02:00
JP Simard 7abbd847e3 fix 'pod trunk push' commands
must push one spec at a time, and if more than one exists,
must specify them by name.

Also include the 'LICENSE' file in the portable zip and let
SwiftLint.podspec know about it.
2016-12-18 18:23:09 -08:00