diff --git a/.github/elixir.json b/.github/elixir.json index 4d1d0d1..e9af6ba 100644 --- a/.github/elixir.json +++ b/.github/elixir.json @@ -1,29 +1,44 @@ { "problemMatcher": [ { - "owner": "elixir", + "owner": "elixir-mixCompileError", + "severity": "error", "pattern": [ { - "regexp": "^(\\*\\* \\(.*\\) )?((.:)?[^:]*):(\\d+)(:(\\d+))?: (.*)$", + "regexp": "^\\*\\* \\((\\w+)\\) (.*):(\\d+): (.*)$", "file": 2, - "line": 4, - "column": 6, - "message": 7 + "location": 3, + "message": 0 } ] }, { - "owner": "elixir-warning", + "owner": "elixir-mixCompileWarning", + "severity": "warning", "pattern": [ { - "regexp": "^(warning: (.*))$", - "message": 2 + "regexp": "^warning: (.*)$", + "message": 1 }, { - "regexp": "^( )((.:)?[^:]*):(\\d+)(:(\\d+))?$", - "file": 2, - "line": 4, - "column": 6 + "regexp": "^ (.*):(\\d+).*$", + "file": 1, + "location": 2 + } + ] + }, + { + "owner": "elixir-mixTestFailure", + "severity": "error", + "pattern": [ + { + "regexp": "^\\s*\\d+\\) (.*)$", + "message": 1 + }, + { + "regexp": "^\\s*(.*):(\\d+)$", + "file": 1, + "location": 2 } ] } diff --git a/MATCHER_NOTICE.md b/MATCHER_NOTICE.md new file mode 100644 index 0000000..9096c8c --- /dev/null +++ b/MATCHER_NOTICE.md @@ -0,0 +1,24 @@ +Problem matchers in [elixir.json](.github/elixir.json) are adapted from https://github.com/fr1zle/vscode-elixir/blob/45eddb589acd7ac98e0c7305d1c2b24668ca709a/package.json, +available under the [MIT license](https://github.com/fr1zle/vscode-elixir/blob/45eddb589acd7ac98e0c7305d1c2b24668ca709a/LICENSE.md): + +MIT License + +Copyright (c) 2016 Mathew McLoughlin + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md index f447269..b3b155f 100644 --- a/README.md +++ b/README.md @@ -126,6 +126,10 @@ if System.get_env("GITHUB_ACTIONS") do end ``` +## Matchers + +The problem matchers in this repository are adapted from [here](https://github.com/fr1zle/vscode-elixir/blob/45eddb589acd7ac98e0c7305d1c2b24668ca709a/package.json). See [MATCHER_NOTICE](MATCHER_NOTICE.md) for license details. + ## License The scripts and documentation in this project are released under the [MIT license](LICENSE.md). diff --git a/dist/.github/elixir.json b/dist/.github/elixir.json index 4d1d0d1..e9af6ba 100644 --- a/dist/.github/elixir.json +++ b/dist/.github/elixir.json @@ -1,29 +1,44 @@ { "problemMatcher": [ { - "owner": "elixir", + "owner": "elixir-mixCompileError", + "severity": "error", "pattern": [ { - "regexp": "^(\\*\\* \\(.*\\) )?((.:)?[^:]*):(\\d+)(:(\\d+))?: (.*)$", + "regexp": "^\\*\\* \\((\\w+)\\) (.*):(\\d+): (.*)$", "file": 2, - "line": 4, - "column": 6, - "message": 7 + "location": 3, + "message": 0 } ] }, { - "owner": "elixir-warning", + "owner": "elixir-mixCompileWarning", + "severity": "warning", "pattern": [ { - "regexp": "^(warning: (.*))$", - "message": 2 + "regexp": "^warning: (.*)$", + "message": 1 }, { - "regexp": "^( )((.:)?[^:]*):(\\d+)(:(\\d+))?$", - "file": 2, - "line": 4, - "column": 6 + "regexp": "^ (.*):(\\d+).*$", + "file": 1, + "location": 2 + } + ] + }, + { + "owner": "elixir-mixTestFailure", + "severity": "error", + "pattern": [ + { + "regexp": "^\\s*\\d+\\) (.*)$", + "message": 1 + }, + { + "regexp": "^\\s*(.*):(\\d+)$", + "file": 1, + "location": 2 } ] }