Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Add Apple's swift-format as a linter#3007

Merged
w0rp merged 1 commit into
dense-analysis:masterdense-analysis/ale:masterfrom
klaaspieter:swift-formatklaaspieter/ale:swift-formatCopy head branch name to clipboard
Aug 17, 2020
Merged

Add Apple's swift-format as a linter#3007
w0rp merged 1 commit into
dense-analysis:masterdense-analysis/ale:masterfrom
klaaspieter:swift-formatklaaspieter/ale:swift-formatCopy head branch name to clipboard

Conversation

@klaaspieter
Copy link
Copy Markdown
Contributor

@klaaspieter klaaspieter commented Feb 14, 2020

Adds swift-format as a linter.

There are a couple of trade-offs to be aware of:

  1. This uses swift run swift-format when inside a Swift package. Using swift run means it'll build the package and then run swift-format. This can potentially take a while and I've seen it break when the build was interupted. The alternative is to look for swift-format in ./build/debug/swift-format but it won't exist if the package hasn't been built.
  2. Related to 1, if a package doesn't have swift-format as a dependency the linter will simply fail to run. Suggestions on how to imrove this and/or communicate this with the user are welcome 🙏 . I tried showing a generic error in ale_linters#swift#swiftformat#Handle but it doesn't seem to get called when swift run fails.
  3. swift-format generally isn't installed in $PATH which means most users will have to set swift_swiftformat_executable. The version of swift-format that is installed by the default (outside of $PATH) is very out of date and is not compatible with this linter implementation.

@klaaspieter
Copy link
Copy Markdown
Contributor Author

klaaspieter commented Feb 14, 2020

I can't make any sense of the Travis failure. I get completely different failures locally (even on master) making it hard to fix them...

It also looks like there is (yet another) failure on master.

Any help debugging this would be appreciated. This is my test run locally (mac os) on master:

Details $ ./run-tests --linters-only Starting Vint... Starting Custom checks...

========================================
Running Vint to lint our code

Vint warnings/errors follow:

========================================
Running custom linting rules

Custom warnings/errors follow:

========================================
Checking for duplicate tags

Duplicate tags follow:

========================================
Checking for invalid tag references

Invalid tag references tags follow:

+ALEDisable
+ALEEnable
+ALEErrorSign
+ALEError
+ALEFix
+ALEGoToDefinition
+ALEGoToTypeDefinition
+ALEInfoSign
+ALEInfo
+ALELintPre
+ALEReset
+ALEStyleErrorSign
+ALEStyleError
+ALEStyleWarningSign
+ALEStyleWarning
+ALEToggle
+ALEWarningSign
+ALEWarning
+ale-c-clang
+ale-cpp-clang
+ale-cs-mcs
+ale-development
+ale-elixir-mix
+ale-hack-hack
+ale-haskell-ghc
+ale-javascript-prettier
+ale-lint-file
+ale-lint
+ale-lsp
+ale-lua-luac
+ale-objc-clang
+ale-objcpp-clang
+ale-perl-perl
+ale-php-php
+ale-puppet-puppet
+ale-sh-shell
+ale-support
+g:ale_c_build_dir
+g:ale_fix_on_save
+g:ale_linters
+g:ale_prolog_swipl_alarm
+g:ale_shell

diff supported-tools.md and doc/ale-supported-languages-and-tools.txt tables

Differences follow:

--- /var/folders/gl/6x95zp3x1fs690s9rnk1z_q80000gn/T/doc-sorted.XXXXXXXX.wNNrjxgl 2020-02-14 16:57:10.000000000 +0100
+++ /var/folders/gl/6x95zp3x1fs690s9rnk1z_q80000gn/T/doc.XXXXXXXX.nvUcIbeF 2020-02-14 16:57:10.000000000 +0100
@@ -22 +21,0 @@
-C - * clang-format
@@ -24,0 +24 @@
+C - * clang-format
@@ -37 +36,0 @@
-C++ (filetype cpp) - * clang-format
@@ -40,0 +40 @@
+C++ (filetype cpp) - * clang-format
@@ -90 +89,0 @@
-Erlang - * SyntaxErl
@@ -91,0 +91 @@
+Erlang - * SyntaxErl
@@ -98 +97,0 @@
-GLSL - * glslls
@@ -99,0 +99 @@
+GLSL - * glslls
@@ -102,2 +101,0 @@
-Go - * go mod!!
-Go - * go vet!!
@@ -109,0 +108 @@
+Go - * go mod!!
@@ -112,0 +112 @@
+Go - * go vet!!
@@ -125 +124,0 @@
-Haskell - * ghc-mod
@@ -126,0 +126 @@
+Haskell - * ghc-mod
@@ -136 +135,0 @@
-HTML - * HTMLHint
@@ -139,0 +139 @@
+HTML - * HTMLHint
@@ -147 +146,0 @@
-Java - * PMD
@@ -152,0 +152 @@
+Java - * PMD
@@ -158,0 +159 @@
+JavaScript - * prettier
@@ -161 +161,0 @@
-JavaScript - * prettier
@@ -233,2 +232,0 @@
-PHP - * php -l
-PHP - * php-cs-fixer
@@ -236,0 +235,2 @@
+PHP - * php-cs-fixer
+PHP - * php -l
@@ -254 +253,0 @@
-Puppet - * puppet-lint
@@ -255,0 +255 @@
+Puppet - * puppet-lint
@@ -280 +279,0 @@
-Re:VIEW - * redpen
@@ -291,0 +291 @@
+Re:VIEW - * redpen

The supported tools list isn't sorted properly

--- /var/folders/gl/6x95zp3x1fs690s9rnk1z_q80000gn/T/readme.XXXXXXXX.y19QeyAk 2020-02-14 16:57:10.000000000 +0100
+++ /var/folders/gl/6x95zp3x1fs690s9rnk1z_q80000gn/T/doc.XXXXXXXX.nvUcIbeF 2020-02-14 16:57:10.000000000 +0100
@@ -1,375 +1,375 @@
-Ada - * gcc
-Ada - * gnatpp :floppy_disk:
-Ansible - * ansible-lint
-API Blueprint - * drafter
-AsciiDoc - * alex :floppy_disk:
-AsciiDoc - * proselint
-AsciiDoc - * redpen
-AsciiDoc - * textlint
-AsciiDoc - * vale
-AsciiDoc - * write-good
-ASM - * gcc
-Awk - * gawk
-Bash - * language-server
-Bash - * shell -n flag
-Bash - * shellcheck
-Bash - * shfmt
-BibTeX - * bibclean
-Bourne Shell - * shell -n flag
-Bourne Shell - * shellcheck
-Bourne Shell - * shfmt
-C - * ccls
-C - * clang
-C - * clangd
-C - * clang-format
-C - * clangtidy :floppy_disk:
-C - * cppcheck
-C - * cpplint
-C - * cquery
-C - * flawfinder
-C - * gcc
-C - * uncrustify
-C# - * csc :floppy_disk: see:help ale-cs-csc for details and configuration
-C# - * mcs see:help ale-cs-mcs for details
-C# - * mcsc :floppy_disk: see:help ale-cs-mcsc for details and configuration
-C# - * uncrustify
-C++ (filetype cpp) - * ccls
-C++ (filetype cpp) - * clang
-C++ (filetype cpp) - * clangcheck :floppy_disk:
-C++ (filetype cpp) - * clangd
-C++ (filetype cpp) - * clang-format
-C++ (filetype cpp) - * clangtidy :floppy_disk:
-C++ (filetype cpp) - * clazy :floppy_disk:
-C++ (filetype cpp) - * cppcheck
-C++ (filetype cpp) - * cpplint :floppy_disk:
-C++ (filetype cpp) - * cquery
-C++ (filetype cpp) - * flawfinder
-C++ (filetype cpp) - * gcc
-C++ (filetype cpp) - * uncrustify
-Chef - * cookstyle
-Chef - * foodcritic
-Clojure - * clj-kondo
-Clojure - * joker
-CloudFormation - * cfn-python-lint
-CMake - * cmake-format
-CMake - * cmakelint
-CoffeeScript - * coffee
-CoffeeScript - * coffeelint
-Crystal - * ameba :floppy_disk:
-Crystal - * crystal :floppy_disk:
-CSS - * csslint
-CSS - * fecs
-CSS - * prettier
-CSS - * stylelint
-Cucumber - * cucumber
-CUDA - * nvcc
-Cypher - * cypher-lint
-Cython (pyrex filetype) - * cython
-D - * dfmt
-D - * dls
-D - * dmd
-D - * uncrustify
-Dafny - * dafny :floppy_disk:
-Dart - * dartanalyzer :floppy_disk:
-Dart - * dartfmt
-Dart - * language_server
-Dockerfile - * dockerfile_lint
-Dockerfile - * hadolint
-Elixir - * credo
-Elixir - * dialyxir :floppy_disk:
-Elixir - * dogma :floppy_disk:
-Elixir - * elixir-ls :warning:
-Elixir - * mix :warning: :floppy_disk:
-Elm - * elm-format
-Elm - * elm-ls
-Elm - * elm-make
-Erb - * erb
-Erb - * erubi
-Erb - * erubis
-Erb - * ruumba
-Erlang - * erlc
-Erlang - * SyntaxErl
-Fish - * fish -n flag
-Fortran - * gcc
-Fortran - * language_server
-Fountain - * proselint
-FusionScript - * fusion-lint
-Git Commit Messages - * gitlint
-GLSL - * glslang
-GLSL - * glslls
-Go - * bingo :warning:
-Go - * go build :warning: :floppy_disk:
-Go - * gofmt
-Go - * goimports :warning:
-Go - * golangci-lint :warning: :floppy_disk:
-Go - * golangserver :warning:
-Go - * golint
-Go - * gometalinter :warning: :floppy_disk:
-Go - * go mod :warning: :floppy_disk:
-Go - * gopls :warning:
-Go - * gosimple :warning: :floppy_disk:
-Go - * gotype :warning: :floppy_disk:
-Go - * go vet :floppy_disk:
-Go - * staticcheck :warning: :floppy_disk:
-GraphQL - * eslint
-GraphQL - * gqlint
-GraphQL - * prettier
-Hack - * hack
-Hack - * hackfmt
-Hack - * hhast :warning: (see :help ale-integration-hack)
-Haml - * haml-lint
-Handlebars - * ember-template-lint
-Haskell - * brittany
-Haskell - * cabal-ghc
-Haskell - * floskell
-Haskell - * ghc
-Haskell - * ghc-mod
-Haskell - * hdevtools
-Haskell - * hfmt
-Haskell - * hie
-Haskell - * hindent
-Haskell - * hlint
-Haskell - * stack-build :floppy_disk:
-Haskell - * stack-ghc
-Haskell - * stylish-haskell
-HCL - * terraform-fmt
-HTML - * alex :floppy_disk:
-HTML - * fecs
-HTML - * html-beautify
-HTML - * HTMLHint
-HTML - * prettier
-HTML - * proselint
-HTML - * tidy
-HTML - * write-good
-Idris - * idris
-Ink - * ink-language-server
-ISPC - * ispc :floppy_disk:
-Java - * checkstyle
-Java - * eclipselsp
-Java - * google-java-format
-Java - * javac
-Java - * javalsp
-Java - * PMD
-Java - * uncrustify
-JavaScript - * eslint
-JavaScript - * fecs
-JavaScript - * flow
-JavaScript - * jscs
-JavaScript - * jshint
-JavaScript - * prettier
-JavaScript - * prettier-eslint
-JavaScript - * prettier-standard
-JavaScript - * standard
-JavaScript - * tsserver
-JavaScript - * xo
-JSON - * fixjson
-JSON - * jq
-JSON - * jsonlint
-JSON - * prettier
-Julia - * languageserver
-Kotlin - * kotlinc :floppy_disk:
-Kotlin - * ktlint :floppy_disk:
-Kotlin - * languageserver see :help ale-integration-kotlin for configuration instructions
-LaTeX - * alex :floppy_disk:
-LaTeX - * chktex
-LaTeX - * lacheck
-LaTeX - * proselint
-LaTeX - * redpen
-LaTeX - * texlab
-LaTeX - * textlint
-LaTeX - * vale
-LaTeX - * write-good
-Less - * lessc
-Less - * prettier
-Less - * stylelint
-LLVM - * llc
-Lua - * luac
-Lua - * luacheck
-Mail - * alex :floppy_disk:
-Mail - * languagetool :floppy_disk:
-Mail - * proselint
-Mail - * vale
-Make - * checkmake
-Markdown - * alex :floppy_disk:
-Markdown - * languagetool :floppy_disk:
-Markdown - * markdownlint :floppy_disk:
-Markdown - * mdl
-Markdown - * prettier
-Markdown - * proselint
-Markdown - * redpen
-Markdown - * remark-lint
-Markdown - * textlint
-Markdown - * vale
-Markdown - * write-good
-MATLAB - * mlint
-Mercury - * mmc :floppy_disk:
-NASM - * nasm :floppy_disk:
-Nim - * nim check :floppy_disk:
-Nim - * nimlsp
-Nim - * nimpretty
-nix - * nix-instantiate
-nix - * nixpkgs-fmt
-nroff - * alex :floppy_disk:
-nroff - * proselint
-nroff - * write-good
-Objective-C - * ccls
-Objective-C - * clang
-Objective-C - * clangd
-Objective-C - * uncrustify
-Objective-C++ - * clang
-Objective-C++ - * clangd
-Objective-C++ - * uncrustify
-OCaml - * merlin see :help ale-ocaml-merlin for configuration instructions
-OCaml - * ocamlformat
-OCaml - * ocp-indent
-OCaml - * ols
-Pawn - * uncrustify
-Perl - * perl -c :warning:
-Perl - * perl-critic
-Perl - * perltidy
-Perl6 - * perl6 -c :warning:
-PHP - * langserver
-PHP - * phan see :help ale-php-phan to instructions
-PHP - * phpcbf
-PHP - * phpcs
-PHP - * php-cs-fixer
-PHP - * php -l
-PHP - * phpmd
-PHP - * phpstan
-PHP - * psalm :floppy_disk:
-PO - * alex :floppy_disk:
-PO - * msgfmt
-PO - * proselint
-PO - * write-good
-Pod - * alex :floppy_disk:
-Pod - * proselint
-Pod - * write-good
-Pony - * ponyc
-PowerShell - * powershell :floppy_disk:
-PowerShell - * psscriptanalyzer :floppy_disk:
-Prolog - * swipl
-proto - * protoc-gen-lint
-Pug - * pug-lint
-Puppet - * languageserver
-Puppet - * puppet
-Puppet - * puppet-lint
-PureScript - * purescript-language-server
-PureScript - * purty
-Python - * autopep8
-Python - * bandit :warning:
-Python - * black
-Python - * flake8
-Python - * isort
-Python - * mypy
-Python - * prospector :warning:
-Python - * pycodestyle :warning:
-Python - * pydocstyle :warning:
-Python - * pyflakes
-Python - * pylama :floppy_disk:
-Python - * pylint :floppy_disk:
-Python - * pyls :warning:
-Python - * pyre :warning:
-Python - * reorder-python-imports
-Python - * vulture :warning: :floppy_disk:
-Python - * yapf
-QML - * qmlfmt
-QML - * qmllint
-R - * lintr
-R - * styler
-Racket - * raco
-ReasonML - * merlin see :help ale-reasonml-ols for configuration instructions
-ReasonML - * ols
-ReasonML - * reason-language-server
-ReasonML - * refmt
-reStructuredText - * alex :floppy_disk:
-reStructuredText - * proselint
-reStructuredText - * redpen
-reStructuredText - * rstcheck
-reStructuredText - * textlint
-reStructuredText - * vale
-reStructuredText - * write-good
-Re:VIEW - * redpen
-RPM spec - * rpmlint :warning: (see :help ale-integration-spec)
-Ruby - * brakeman :floppy_disk:
-Ruby - * debride :floppy_disk:
-Ruby - * rails_best_practices :floppy_disk:
-Ruby - * reek
-Ruby - * rubocop
-Ruby - * ruby
-Ruby - * rufo
-Ruby - * solargraph
-Ruby - * sorbet
-Ruby - * standardrb
-Rust - * cargo :floppy_disk: (see :help ale-integration-rust for configuration instructions)
-Rust - * rls :warning:
-Rust - * rustc :warning:
-Rust - * rustfmt
-Sass - * sass-lint
-Sass - * stylelint
-Scala - * fsc
-Scala - * metals
-Scala - * sbtserver
-Scala - * scalac
-Scala - * scalafmt
-Scala - * scalastyle
-SCSS - * prettier
-SCSS - * sass-lint
-SCSS - * scss-lint
-SCSS - * stylelint
-Slim - * slim-lint
-SML - * smlnj
-Solidity - * solc
-Solidity - * solhint
-Solidity - * solium
-SQL - * pgformatter
-SQL - * sqlfmt
-SQL - * sqlformat
-SQL - * sqlint
-Stylus - * stylelint
-SugarSS - * stylelint
-Swift - * sourcekit-lsp
-Swift - * swiftformat
-Swift - * swiftlint
-Tcl - * nagelfar :floppy_disk:
-Terraform - * fmt
-Terraform - * tflint
-Texinfo - * alex :floppy_disk:
-Texinfo - * proselint
-Texinfo - * write-good
-Text - * alex :warning: :floppy_disk:
-Text - * languagetool :floppy_disk:
-Text - * proselint :warning:
-Text - * redpen :warning:
-Text - * textlint :warning:
-Text - * vale :warning:
-Text - * write-good :warning:
-Thrift - * thrift
-TypeScript - * eslint
-TypeScript - * fecs
-TypeScript - * prettier
-TypeScript - * standard
-TypeScript - * tslint
-TypeScript - * tsserver
-TypeScript - * typecheck
-VALA - * uncrustify
-Verilog - * iverilog
-Verilog - * verilator
-Verilog - * vlog
-Verilog - * xvlog
-VHDL - * ghdl
-VHDL - * vcom
-VHDL - * xvhdl
-Vim - * vint
-Vim help - * alex :warning: :floppy_disk:
-Vim help - * proselint :warning:
-Vim help - * write-good :warning:
-Vue - * prettier
-Vue - * vls
-XHTML - * alex :floppy_disk:
-XHTML - * proselint
-XHTML - * write-good
-XML - * xmllint
-YAML - * prettier
-YAML - * swaglint
-YAML - * yamllint
-YANG - * yang-lsp
+Ada - * gcc
+Ada - * gnatpp
+Ansible - * ansible-lint
+API Blueprint - * drafter
+AsciiDoc - * alex!!
+AsciiDoc - * proselint
+AsciiDoc - * redpen
+AsciiDoc - * textlint
+AsciiDoc - * vale
+AsciiDoc - * write-good
+ASM - * gcc
+Awk - * gawk
+Bash - * language-server
+Bash - * shell (-n flag)
+Bash - * shellcheck
+Bash - * shfmt
+BibTeX - * bibclean
+Bourne Shell - * shell (-n flag)
+Bourne Shell - * shellcheck
+Bourne Shell - * shfmt
+C - * ccls
+C - * clang
+C - * clangd
+C - * clang-format
+C - * clangtidy!!
+C - * cppcheck
+C - * cpplint!!
+C - * cquery
+C - * flawfinder
+C - * gcc
+C - * uncrustify
+C# - * csc!!
+C# - * mcs
+C# - * mcsc!!
+C# - * uncrustify
+C++ (filetype cpp) - * ccls
+C++ (filetype cpp) - * clang
+C++ (filetype cpp) - * clangcheck!!
+C++ (filetype cpp) - * clangd
+C++ (filetype cpp) - * clang-format
+C++ (filetype cpp) - * clangtidy!!
+C++ (filetype cpp) - * clazy!!
+C++ (filetype cpp) - * cppcheck
+C++ (filetype cpp) - * cpplint!!
+C++ (filetype cpp) - * cquery
+C++ (filetype cpp) - * flawfinder
+C++ (filetype cpp) - * gcc
+C++ (filetype cpp) - * uncrustify
+Chef - * cookstyle
+Chef - * foodcritic
+Clojure - * clj-kondo
+Clojure - * joker
+CloudFormation - * cfn-python-lint
+CMake - * cmake-format
+CMake - * cmakelint
+CoffeeScript - * coffee
+CoffeeScript - * coffeelint
+Crystal - * ameba!!
+Crystal - * crystal!!
+CSS - * csslint
+CSS - * fecs
+CSS - * prettier
+CSS - * stylelint
+Cucumber - * cucumber
+CUDA - * nvcc!!
+Cypher - * cypher-lint
+Cython (pyrex filetype) - * cython
+D - * dfmt
+D - * dls
+D - * dmd
+D - * uncrustify
+Dafny - * dafny!!
+Dart - * dartanalyzer!!
+Dart - * dartfmt!!
+Dart - * language_server
+Dockerfile - * dockerfile_lint
+Dockerfile - * hadolint
+Elixir - * credo
+Elixir - * dialyxir
+Elixir - * dogma
+Elixir - * elixir-ls
+Elixir - * mix!!
+Elm - * elm-format
+Elm - * elm-ls
+Elm - * elm-make
+Erb - * erb
+Erb - * erubi
+Erb - * erubis
+Erb - * ruumba
+Erlang - * erlc
+Erlang - * SyntaxErl
+Fish - * fish (-n flag)
+Fortran - * gcc
+Fortran - * language_server
+Fountain - * proselint
+FusionScript - * fusion-lint
+Git Commit Messages - * gitlint
+GLSL - * glslang
+GLSL - * glslls
+Go - * bingo
+Go - * go build!!
+Go - * gofmt
+Go - * goimports
+Go - * golangci-lint!!
+Go - * golangserver
+Go - * golint
+Go - * gometalinter!!
+Go - * go mod!!
+Go - * gopls
+Go - * gosimple!!
+Go - * gotype!!
+Go - * go vet!!
+Go - * staticcheck!!
+GraphQL - * eslint
+GraphQL - * gqlint
+GraphQL - * prettier
+Hack - * hack
+Hack - * hackfmt
+Hack - * hhast
+Haml - * haml-lint
+Handlebars - * ember-template-lint
+Haskell - * brittany
+Haskell - * cabal-ghc
+Haskell - * floskell
+Haskell - * ghc
+Haskell - * ghc-mod
+Haskell - * hdevtools
+Haskell - * hfmt
+Haskell - * hie
+Haskell - * hindent
+Haskell - * hlint
+Haskell - * stack-build!!
+Haskell - * stack-ghc
+Haskell - * stylish-haskell
+HCL - * terraform-fmt
+HTML - * alex!!
+HTML - * fecs
+HTML - * html-beautify
+HTML - * HTMLHint
+HTML - * prettier
+HTML - * proselint
+HTML - * tidy
+HTML - * write-good
+Idris - * idris
+Ink - * ink-language-server
+ISPC - * ispc!!
+Java - * checkstyle
+Java - * eclipselsp
+Java - * google-java-format
+Java - * javac
+Java - * javalsp
+Java - * PMD
+Java - * uncrustify
+JavaScript - * eslint
+JavaScript - * fecs
+JavaScript - * flow
+JavaScript - * jscs
+JavaScript - * jshint
+JavaScript - * prettier
+JavaScript - * prettier-eslint
+JavaScript - * prettier-standard
+JavaScript - * standard
+JavaScript - * tsserver
+JavaScript - * xo
+JSON - * fixjson
+JSON - * jq
+JSON - * jsonlint
+JSON - * prettier
+Julia - * languageserver
+Kotlin - * kotlinc!!
+Kotlin - * ktlint!!
+Kotlin - * languageserver
+LaTeX (tex) - * alex!!
+LaTeX (tex) - * chktex
+LaTeX (tex) - * lacheck
+LaTeX (tex) - * proselint
+LaTeX (tex) - * redpen
+LaTeX (tex) - * texlab
+LaTeX (tex) - * textlint
+LaTeX (tex) - * vale
+LaTeX (tex) - * write-good
+Less - * lessc
+Less - * prettier
+Less - * stylelint
+LLVM - * llc
+Lua - * luac
+Lua - * luacheck
+Mail - * alex!!
+Mail - * languagetool!!
+Mail - * proselint
+Mail - * vale
+Make - * checkmake
+Markdown - * alex!!
+Markdown - * languagetool!!
+Markdown - * markdownlint!!
+Markdown - * mdl
+Markdown - * prettier
+Markdown - * proselint
+Markdown - * redpen
+Markdown - * remark-lint
+Markdown - * textlint
+Markdown - * vale
+Markdown - * write-good
+MATLAB - * mlint
+Mercury - * mmc!!
+NASM - * nasm!!
+Nim - * nim check!!
+Nim - * nimlsp
+Nim - * nimpretty
+nix - * nix-instantiate
+nix - * nixpkgs-fmt
+nroff - * alex!!
+nroff - * proselint
+nroff - * write-good
+Objective-C - * ccls
+Objective-C - * clang
+Objective-C - * clangd
+Objective-C - * uncrustify
+Objective-C++ - * clang
+Objective-C++ - * clangd
+Objective-C++ - * uncrustify
+OCaml - * merlin (see |ale-ocaml-merlin|)
+OCaml - * ocamlformat
+OCaml - * ocp-indent
+OCaml - * ols
+Pawn - * uncrustify
+Perl - * perl -c
+Perl - * perl-critic
+Perl - * perltidy
+Perl6 - * perl6 -c
+PHP - * langserver
+PHP - * phan
+PHP - * phpcbf
+PHP - * phpcs
+PHP - * php-cs-fixer
+PHP - * php -l
+PHP - * phpmd
+PHP - * phpstan
+PHP - * psalm!!
+PO - * alex!!
+PO - * msgfmt
+PO - * proselint
+PO - * write-good
+Pod - * alex!!
+Pod - * proselint
+Pod - * write-good
+Pony - * ponyc
+PowerShell - * powershell
+PowerShell - * psscriptanalyzer
+Prolog - * swipl
+proto - * protoc-gen-lint
+Pug - * pug-lint
+Puppet - * languageserver
+Puppet - * puppet
+Puppet - * puppet-lint
+PureScript - * purescript-language-server
+PureScript - * purty
+Python - * autopep8
+Python - * bandit
+Python - * black
+Python - * flake8
+Python - * isort
+Python - * mypy
+Python - * prospector
+Python - * pycodestyle
+Python - * pydocstyle
+Python - * pyflakes
+Python - * pylama!!
+Python - * pylint!!
+Python - * pyls
+Python - * pyre
+Python - * reorder-python-imports
+Python - * vulture!!
+Python - * yapf
+QML - * qmlfmt
+QML - * qmllint
+R - * lintr
+R - * styler
+Racket - * raco
+ReasonML - * merlin
+ReasonML - * ols
+ReasonML - * reason-language-server
+ReasonML - * refmt
+reStructuredText - * alex!!
+reStructuredText - * proselint
+reStructuredText - * redpen
+reStructuredText - * rstcheck
+reStructuredText - * textlint
+reStructuredText - * vale
+reStructuredText - * write-good
+Re:VIEW - * redpen
+RPM spec - * rpmlint
+Ruby - * brakeman
+Ruby - * debride
+Ruby - * rails_best_practices!!
+Ruby - * reek
+Ruby - * rubocop
+Ruby - * ruby
+Ruby - * rufo
+Ruby - * solargraph
+Ruby - * sorbet
+Ruby - * standardrb
+Rust - * cargo!!
+Rust - * rls
+Rust - * rustc (see |ale-integration-rust|)
+Rust - * rustfmt
+Sass - * sass-lint
+Sass - * stylelint
+Scala - * fsc
+Scala - * metals
+Scala - * sbtserver
+Scala - * scalac
+Scala - * scalafmt
+Scala - * scalastyle
+SCSS - * prettier
+SCSS - * sass-lint
+SCSS - * scss-lint
+SCSS - * stylelint
+Slim - * slim-lint
+SML - * smlnj
+Solidity - * solc
+Solidity - * solhint
+Solidity - * solium
+SQL - * pgformatter
+SQL - * sqlfmt
+SQL - * sqlformat
+SQL - * sqlint
+Stylus - * stylelint
+SugarSS - * stylelint
+Swift - * sourcekit-lsp
+Swift - * swiftformat
+Swift - * swiftlint
+Tcl - * nagelfar!!
+Terraform - * fmt
+Terraform - * tflint
+Texinfo - * alex!!
+Texinfo - * proselint
+Texinfo - * write-good
+Text^ - * alex!!
+Text^ - * languagetool!!
+Text^ - * proselint
+Text^ - * redpen
+Text^ - * textlint
+Text^ - * vale
+Text^ - * write-good
+Thrift - * thrift
+TypeScript - * eslint
+TypeScript - * fecs
+TypeScript - * prettier
+TypeScript - * standard
+TypeScript - * tslint
+TypeScript - * tsserver
+TypeScript - * typecheck
+VALA - * uncrustify
+Verilog - * iverilog
+Verilog - * verilator
+Verilog - * vlog
+Verilog - * xvlog
+VHDL - * ghdl
+VHDL - * vcom
+VHDL - * xvhdl
+Vim - * vint
+Vim help^ - * alex!!
+Vim help^ - * proselint
+Vim help^ - * write-good
+Vue - * prettier
+Vue - * vls
+XHTML - * alex!!
+XHTML - * proselint
+XHTML - * write-good
+XML - * xmllint
+YAML - * prettier
+YAML - * swaglint
+YAML - * yamllint
+YANG - * yang-lsp

Look for badly aligned doc tags

Badly aligned tags follow:

========================================
Look for table of contents issues

Check for bad ToC sorting:

Check for mismatched ToC and headings:

--- /var/folders/gl/6x95zp3x1fs690s9rnk1z_q80000gn/T/table-of-contents.XXXXXXXX.5nhr5CKx 2020-02-14 16:57:10.000000000 +0100
+++ /var/folders/gl/6x95zp3x1fs690s9rnk1z_q80000gn/T/headings.XXXXXXXX.waOF7g19 2020-02-14 16:57:10.000000000 +0100
@@ -384,10 +384,10 @@
ghdl, ale-vhdl-ghdl
vcom, ale-vhdl-vcom
xvhdl, ale-vhdl-xvhdl
-vim, ale-vim-options

  • vint, ale-vim-vint
    vim help, ale-vim-help-options
    write-good, ale-vim-help-write-good
    +vim, ale-vim-options
  • vint, ale-vim-vint
    vue, ale-vue-options
    prettier, ale-vue-prettier
    vls, ale-vue-vls
    ========================================
    Check Python code
    ========================================

.....

Ran 5 tests in 0.000s

OK

Something went wrong!

@klaaspieter
Copy link
Copy Markdown
Contributor Author

Anything I can do to move this forward?

Copy link
Copy Markdown
Member

@w0rp w0rp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The only issue here is the list of supported tools, which the linter job is complaining about. There are two different entries for swiftformat and swift-format. It will expect the names with minuses to come before or after other characters in the list somewhere.

@klaaspieter klaaspieter force-pushed the swift-format branch 2 times, most recently from aafda3b to d430729 Compare April 29, 2020 12:24
@klaaspieter
Copy link
Copy Markdown
Contributor Author

@w0rp fixed now. 😄

@klaaspieter klaaspieter requested a review from w0rp April 29, 2020 12:36
@stale
Copy link
Copy Markdown

stale Bot commented Aug 13, 2020

This pull request has been automatically marked as stale because it has not been updated recently. Make sure to write tests and document your changes. See :help ale-dev for information on writing tests.
If your pull request is good to merge, bother w0rp or another maintainer again, and get them to merge it.

@stale stale Bot added the stale PRs/Issues no longer valid label Aug 13, 2020
@stale stale Bot closed this Aug 15, 2020
@w0rp w0rp reopened this Aug 17, 2020
@stale stale Bot removed the stale PRs/Issues no longer valid label Aug 17, 2020
@w0rp w0rp merged commit bc6304b into dense-analysis:master Aug 17, 2020
@w0rp
Copy link
Copy Markdown
Member

w0rp commented Aug 17, 2020

Cheers! 🍻

People might be confused by there being two different tools that sound the same. I guess that's a problem for Swift.

@klaaspieter klaaspieter deleted the swift-format branch August 18, 2020 12:06
@klaaspieter
Copy link
Copy Markdown
Contributor Author

100% agree. SwiftFormat is a community project while swift-format is an Apple project. To make matters even more complicated the Apple project seems to largely be maintained by Google engineers 🤯

Thanks for merging!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

Morty Proxy This is a proxified and sanitized view of the page, visit original site.