goodcheck 2.5.2 → 3.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +49 -3
- data/LICENSE +1 -1
- data/README.md +8 -445
- data/lib/goodcheck.rb +9 -4
- data/lib/goodcheck/analyzer.rb +13 -9
- data/lib/goodcheck/buffer.rb +9 -21
- data/lib/goodcheck/cli.rb +79 -57
- data/lib/goodcheck/commands/check.rb +41 -27
- data/lib/goodcheck/commands/config_loading.rb +28 -5
- data/lib/goodcheck/commands/init.rb +4 -2
- data/lib/goodcheck/commands/pattern.rb +2 -1
- data/lib/goodcheck/commands/test.rb +38 -30
- data/lib/goodcheck/config.rb +68 -1
- data/lib/goodcheck/config_loader.rb +41 -31
- data/lib/goodcheck/error.rb +3 -0
- data/lib/goodcheck/exit_status.rb +8 -0
- data/lib/goodcheck/glob.rb +14 -3
- data/lib/goodcheck/import_loader.rb +96 -26
- data/lib/goodcheck/issue.rb +3 -3
- data/lib/goodcheck/location.rb +28 -0
- data/lib/goodcheck/logger.rb +4 -4
- data/lib/goodcheck/reporters/json.rb +6 -1
- data/lib/goodcheck/reporters/text.rb +44 -11
- data/lib/goodcheck/rule.rb +3 -1
- data/lib/goodcheck/unarchiver.rb +40 -0
- data/lib/goodcheck/version.rb +1 -1
- metadata +44 -82
- data/.github/dependabot.yml +0 -18
- data/.github/workflows/release.yml +0 -16
- data/.github/workflows/test.yml +0 -46
- data/.gitignore +0 -13
- data/.rubocop.yml +0 -5
- data/Dockerfile +0 -13
- data/Gemfile +0 -6
- data/Rakefile +0 -75
- data/bin/console +0 -14
- data/bin/setup +0 -8
- data/cheatsheet.pdf +0 -0
- data/docusaurus/.dockerignore +0 -2
- data/docusaurus/.gitignore +0 -12
- data/docusaurus/Dockerfile +0 -10
- data/docusaurus/docker-compose.yml +0 -18
- data/docusaurus/docs/commands.md +0 -69
- data/docusaurus/docs/configuration.md +0 -300
- data/docusaurus/docs/development.md +0 -15
- data/docusaurus/docs/getstarted.md +0 -46
- data/docusaurus/docs/rules.md +0 -79
- data/docusaurus/website/README.md +0 -193
- data/docusaurus/website/core/Footer.js +0 -100
- data/docusaurus/website/package.json +0 -14
- data/docusaurus/website/pages/en/index.js +0 -207
- data/docusaurus/website/pages/en/versions.js +0 -118
- data/docusaurus/website/sidebars.json +0 -11
- data/docusaurus/website/siteConfig.js +0 -171
- data/docusaurus/website/static/css/code-block-buttons.css +0 -39
- data/docusaurus/website/static/css/custom.css +0 -245
- data/docusaurus/website/static/img/favicon.ico +0 -0
- data/docusaurus/website/static/js/code-block-buttons.js +0 -47
- data/docusaurus/website/versioned_docs/version-1.0.0/commands.md +0 -70
- data/docusaurus/website/versioned_docs/version-1.0.0/configuration.md +0 -296
- data/docusaurus/website/versioned_docs/version-1.0.0/development.md +0 -16
- data/docusaurus/website/versioned_docs/version-1.0.0/getstarted.md +0 -47
- data/docusaurus/website/versioned_docs/version-1.0.0/rules.md +0 -81
- data/docusaurus/website/versioned_docs/version-1.0.2/rules.md +0 -79
- data/docusaurus/website/versioned_docs/version-2.4.0/configuration.md +0 -301
- data/docusaurus/website/versioned_docs/version-2.4.3/rules.md +0 -80
- data/docusaurus/website/versioned_sidebars/version-1.0.0-sidebars.json +0 -11
- data/docusaurus/website/versioned_sidebars/version-1.0.2-sidebars.json +0 -11
- data/docusaurus/website/versioned_sidebars/version-2.4.0-sidebars.json +0 -11
- data/docusaurus/website/versions.json +0 -12
- data/docusaurus/website/yarn.lock +0 -6604
- data/goodcheck.gemspec +0 -35
- data/goodcheck.yml +0 -10
- data/logo/GoodCheck Horizontal.pdf +0 -899
- data/logo/GoodCheck Horizontal.png +0 -0
- data/logo/GoodCheck Horizontal.svg +0 -55
- data/logo/GoodCheck logo.png +0 -0
- data/logo/GoodCheck vertical.png +0 -0
- data/sample.yml +0 -57
data/lib/goodcheck/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: goodcheck
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 3.0.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
-
-
|
7
|
+
- Sider Corporation
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-06-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -28,64 +28,64 @@ dependencies:
|
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - "
|
31
|
+
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '13.0'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - "
|
38
|
+
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '13.0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: minitest
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- - "
|
45
|
+
- - ">="
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '5.0'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- - "
|
52
|
+
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '5.0'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
|
-
name:
|
56
|
+
name: simplecov
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- - "
|
59
|
+
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
61
|
+
version: '0.18'
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- - "
|
66
|
+
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version:
|
68
|
+
version: '0.18'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
70
|
+
name: marcel
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - ">="
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: '
|
75
|
+
version: '1.0'
|
76
76
|
- - "<"
|
77
77
|
- !ruby/object:Gem::Version
|
78
|
-
version: '
|
78
|
+
version: '2.0'
|
79
79
|
type: :runtime
|
80
80
|
prerelease: false
|
81
81
|
version_requirements: !ruby/object:Gem::Requirement
|
82
82
|
requirements:
|
83
83
|
- - ">="
|
84
84
|
- !ruby/object:Gem::Version
|
85
|
-
version: '
|
85
|
+
version: '1.0'
|
86
86
|
- - "<"
|
87
87
|
- !ruby/object:Gem::Version
|
88
|
-
version: '
|
88
|
+
version: '2.0'
|
89
89
|
- !ruby/object:Gem::Dependency
|
90
90
|
name: strong_json
|
91
91
|
requirement: !ruby/object:Gem::Requirement
|
@@ -110,16 +110,22 @@ dependencies:
|
|
110
110
|
name: rainbow
|
111
111
|
requirement: !ruby/object:Gem::Requirement
|
112
112
|
requirements:
|
113
|
-
- - "
|
113
|
+
- - ">="
|
114
|
+
- !ruby/object:Gem::Version
|
115
|
+
version: '3.0'
|
116
|
+
- - "<"
|
114
117
|
- !ruby/object:Gem::Version
|
115
|
-
version:
|
118
|
+
version: '4.0'
|
116
119
|
type: :runtime
|
117
120
|
prerelease: false
|
118
121
|
version_requirements: !ruby/object:Gem::Requirement
|
119
122
|
requirements:
|
120
|
-
- - "
|
123
|
+
- - ">="
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
version: '3.0'
|
126
|
+
- - "<"
|
121
127
|
- !ruby/object:Gem::Version
|
122
|
-
version:
|
128
|
+
version: '4.0'
|
123
129
|
- !ruby/object:Gem::Dependency
|
124
130
|
name: psych
|
125
131
|
requirement: !ruby/object:Gem::Requirement
|
@@ -129,7 +135,7 @@ dependencies:
|
|
129
135
|
version: '3.1'
|
130
136
|
- - "<"
|
131
137
|
- !ruby/object:Gem::Version
|
132
|
-
version: '
|
138
|
+
version: '5.0'
|
133
139
|
type: :runtime
|
134
140
|
prerelease: false
|
135
141
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -139,65 +145,20 @@ dependencies:
|
|
139
145
|
version: '3.1'
|
140
146
|
- - "<"
|
141
147
|
- !ruby/object:Gem::Version
|
142
|
-
version: '
|
143
|
-
description:
|
148
|
+
version: '5.0'
|
149
|
+
description: Goodcheck is a regexp based linter that allows you to define custom rules
|
150
|
+
in a YAML file.
|
144
151
|
email:
|
145
|
-
-
|
152
|
+
- support@siderlabs.com
|
146
153
|
executables:
|
147
154
|
- goodcheck
|
148
155
|
extensions: []
|
149
156
|
extra_rdoc_files: []
|
150
157
|
files:
|
151
|
-
- ".github/dependabot.yml"
|
152
|
-
- ".github/workflows/release.yml"
|
153
|
-
- ".github/workflows/test.yml"
|
154
|
-
- ".gitignore"
|
155
|
-
- ".rubocop.yml"
|
156
158
|
- CHANGELOG.md
|
157
|
-
- Dockerfile
|
158
|
-
- Gemfile
|
159
159
|
- LICENSE
|
160
160
|
- README.md
|
161
|
-
- Rakefile
|
162
|
-
- bin/console
|
163
|
-
- bin/setup
|
164
|
-
- cheatsheet.pdf
|
165
|
-
- docusaurus/.dockerignore
|
166
|
-
- docusaurus/.gitignore
|
167
|
-
- docusaurus/Dockerfile
|
168
|
-
- docusaurus/docker-compose.yml
|
169
|
-
- docusaurus/docs/commands.md
|
170
|
-
- docusaurus/docs/configuration.md
|
171
|
-
- docusaurus/docs/development.md
|
172
|
-
- docusaurus/docs/getstarted.md
|
173
|
-
- docusaurus/docs/rules.md
|
174
|
-
- docusaurus/website/README.md
|
175
|
-
- docusaurus/website/core/Footer.js
|
176
|
-
- docusaurus/website/package.json
|
177
|
-
- docusaurus/website/pages/en/index.js
|
178
|
-
- docusaurus/website/pages/en/versions.js
|
179
|
-
- docusaurus/website/sidebars.json
|
180
|
-
- docusaurus/website/siteConfig.js
|
181
|
-
- docusaurus/website/static/css/code-block-buttons.css
|
182
|
-
- docusaurus/website/static/css/custom.css
|
183
|
-
- docusaurus/website/static/img/favicon.ico
|
184
|
-
- docusaurus/website/static/js/code-block-buttons.js
|
185
|
-
- docusaurus/website/versioned_docs/version-1.0.0/commands.md
|
186
|
-
- docusaurus/website/versioned_docs/version-1.0.0/configuration.md
|
187
|
-
- docusaurus/website/versioned_docs/version-1.0.0/development.md
|
188
|
-
- docusaurus/website/versioned_docs/version-1.0.0/getstarted.md
|
189
|
-
- docusaurus/website/versioned_docs/version-1.0.0/rules.md
|
190
|
-
- docusaurus/website/versioned_docs/version-1.0.2/rules.md
|
191
|
-
- docusaurus/website/versioned_docs/version-2.4.0/configuration.md
|
192
|
-
- docusaurus/website/versioned_docs/version-2.4.3/rules.md
|
193
|
-
- docusaurus/website/versioned_sidebars/version-1.0.0-sidebars.json
|
194
|
-
- docusaurus/website/versioned_sidebars/version-1.0.2-sidebars.json
|
195
|
-
- docusaurus/website/versioned_sidebars/version-2.4.0-sidebars.json
|
196
|
-
- docusaurus/website/versions.json
|
197
|
-
- docusaurus/website/yarn.lock
|
198
161
|
- exe/goodcheck
|
199
|
-
- goodcheck.gemspec
|
200
|
-
- goodcheck.yml
|
201
162
|
- lib/goodcheck.rb
|
202
163
|
- lib/goodcheck/analyzer.rb
|
203
164
|
- lib/goodcheck/array_helper.rb
|
@@ -210,6 +171,8 @@ files:
|
|
210
171
|
- lib/goodcheck/commands/test.rb
|
211
172
|
- lib/goodcheck/config.rb
|
212
173
|
- lib/goodcheck/config_loader.rb
|
174
|
+
- lib/goodcheck/error.rb
|
175
|
+
- lib/goodcheck/exit_status.rb
|
213
176
|
- lib/goodcheck/glob.rb
|
214
177
|
- lib/goodcheck/home_path.rb
|
215
178
|
- lib/goodcheck/import_loader.rb
|
@@ -221,17 +184,16 @@ files:
|
|
221
184
|
- lib/goodcheck/reporters/text.rb
|
222
185
|
- lib/goodcheck/rule.rb
|
223
186
|
- lib/goodcheck/trigger.rb
|
187
|
+
- lib/goodcheck/unarchiver.rb
|
224
188
|
- lib/goodcheck/version.rb
|
225
|
-
|
226
|
-
- logo/GoodCheck Horizontal.png
|
227
|
-
- logo/GoodCheck Horizontal.svg
|
228
|
-
- logo/GoodCheck logo.png
|
229
|
-
- logo/GoodCheck vertical.png
|
230
|
-
- sample.yml
|
231
|
-
homepage: https://github.com/sider/goodcheck
|
189
|
+
homepage: https://sider.github.io/goodcheck/
|
232
190
|
licenses:
|
233
191
|
- MIT
|
234
|
-
metadata:
|
192
|
+
metadata:
|
193
|
+
homepage_uri: https://sider.github.io/goodcheck/
|
194
|
+
source_code_uri: https://github.com/sider/goodcheck
|
195
|
+
changelog_uri: https://github.com/sider/goodcheck/blob/master/CHANGELOG.md
|
196
|
+
bug_tracker_uri: https://github.com/sider/goodcheck/issues
|
235
197
|
post_install_message:
|
236
198
|
rdoc_options: []
|
237
199
|
require_paths:
|
@@ -240,15 +202,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
240
202
|
requirements:
|
241
203
|
- - ">="
|
242
204
|
- !ruby/object:Gem::Version
|
243
|
-
version: 2.
|
205
|
+
version: 2.5.0
|
244
206
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
245
207
|
requirements:
|
246
208
|
- - ">="
|
247
209
|
- !ruby/object:Gem::Version
|
248
210
|
version: '0'
|
249
211
|
requirements: []
|
250
|
-
rubygems_version: 3.
|
212
|
+
rubygems_version: 3.2.20
|
251
213
|
signing_key:
|
252
214
|
specification_version: 4
|
253
|
-
summary: Regexp based customizable linter
|
215
|
+
summary: Regexp based customizable linter.
|
254
216
|
test_files: []
|
data/.github/dependabot.yml
DELETED
@@ -1,18 +0,0 @@
|
|
1
|
-
version: 2
|
2
|
-
updates:
|
3
|
-
- package-ecosystem: bundler
|
4
|
-
directory: "/"
|
5
|
-
schedule:
|
6
|
-
interval: monthly
|
7
|
-
time: "09:00"
|
8
|
-
timezone: Asia/Tokyo
|
9
|
-
open-pull-requests-limit: 10
|
10
|
-
versioning-strategy: increase
|
11
|
-
- package-ecosystem: npm
|
12
|
-
directory: "/docusaurus/website"
|
13
|
-
schedule:
|
14
|
-
interval: monthly
|
15
|
-
time: "09:00"
|
16
|
-
timezone: Asia/Tokyo
|
17
|
-
open-pull-requests-limit: 10
|
18
|
-
versioning-strategy: increase
|
@@ -1,16 +0,0 @@
|
|
1
|
-
name: Release
|
2
|
-
|
3
|
-
on: push
|
4
|
-
|
5
|
-
jobs:
|
6
|
-
release:
|
7
|
-
runs-on: ubuntu-latest
|
8
|
-
steps:
|
9
|
-
- uses: actions/checkout@v2
|
10
|
-
- uses: softprops/action-gh-release@v1
|
11
|
-
if: startsWith(github.ref, 'refs/tags/')
|
12
|
-
with:
|
13
|
-
body: |
|
14
|
-
See the [changelog](https://github.com/${{ github.repository }}/blob/${{ github.sha }}/CHANGELOG.md) for more details.
|
15
|
-
env:
|
16
|
-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
data/.github/workflows/test.yml
DELETED
@@ -1,46 +0,0 @@
|
|
1
|
-
name: Test
|
2
|
-
|
3
|
-
on: [push]
|
4
|
-
|
5
|
-
jobs:
|
6
|
-
test:
|
7
|
-
runs-on: ubuntu-latest
|
8
|
-
strategy:
|
9
|
-
matrix:
|
10
|
-
ruby: [2.4, 2.5, 2.6, 2.7]
|
11
|
-
steps:
|
12
|
-
- uses: actions/checkout@v2
|
13
|
-
- uses: ruby/setup-ruby@v1
|
14
|
-
with:
|
15
|
-
ruby-version: ${{ matrix.ruby }}
|
16
|
-
- run: |
|
17
|
-
gem install bundler --no-document
|
18
|
-
bundle config set path vendor/bundle
|
19
|
-
bundle install --jobs=4 --retry=3
|
20
|
-
- run: bundle exec rake
|
21
|
-
|
22
|
-
build-docs:
|
23
|
-
runs-on: ubuntu-latest
|
24
|
-
steps:
|
25
|
-
- uses: actions/checkout@v2
|
26
|
-
- uses: ruby/setup-ruby@v1
|
27
|
-
with:
|
28
|
-
ruby-version: 2.7
|
29
|
-
- run: |
|
30
|
-
gem install bundler --no-document
|
31
|
-
bundle config set path vendor/bundle
|
32
|
-
bundle install --jobs=4 --retry=3
|
33
|
-
- run: bundle exec rake docs:build
|
34
|
-
|
35
|
-
benchmark:
|
36
|
-
runs-on: ubuntu-latest
|
37
|
-
steps:
|
38
|
-
- uses: actions/checkout@v2
|
39
|
-
- uses: ruby/setup-ruby@v1
|
40
|
-
with:
|
41
|
-
ruby-version: 2.7
|
42
|
-
- run: |
|
43
|
-
gem install bundler --no-document
|
44
|
-
bundle config set path vendor/bundle
|
45
|
-
bundle install --jobs=4 --retry=3
|
46
|
-
- run: bundle exec rake benchmark:run[10000]
|
data/.gitignore
DELETED
data/.rubocop.yml
DELETED
data/Dockerfile
DELETED
data/Gemfile
DELETED
data/Rakefile
DELETED
@@ -1,75 +0,0 @@
|
|
1
|
-
require "bundler/gem_tasks"
|
2
|
-
require "rake/testtask"
|
3
|
-
|
4
|
-
Rake::TestTask.new(:test) do |t|
|
5
|
-
t.libs << "test"
|
6
|
-
t.libs << "lib"
|
7
|
-
t.test_files = FileList["test/**/*_test.rb"]
|
8
|
-
end
|
9
|
-
|
10
|
-
task :default => :test
|
11
|
-
|
12
|
-
namespace :docker do
|
13
|
-
task :build do
|
14
|
-
sh 'docker', 'build', '-t', 'sider/goodcheck:dev', '.'
|
15
|
-
end
|
16
|
-
end
|
17
|
-
|
18
|
-
namespace :docs do
|
19
|
-
desc "Install dependencies for the documentation website"
|
20
|
-
task :install_deps do
|
21
|
-
on_docs_dir do
|
22
|
-
sh "yarn", "install"
|
23
|
-
end
|
24
|
-
end
|
25
|
-
|
26
|
-
desc "Build the documentation website"
|
27
|
-
task :build => [:install_deps] do
|
28
|
-
on_docs_dir do
|
29
|
-
sh "yarn", "run", "build"
|
30
|
-
end
|
31
|
-
end
|
32
|
-
|
33
|
-
desc "Update the version of the documentation website"
|
34
|
-
task :update_version => [:install_deps] do
|
35
|
-
on_docs_dir do
|
36
|
-
sh "yarn", "run", "version", Goodcheck::VERSION
|
37
|
-
end
|
38
|
-
end
|
39
|
-
|
40
|
-
desc "Publish the documentation website"
|
41
|
-
task :publish => [:build] do
|
42
|
-
on_docs_dir do
|
43
|
-
sh "yarn", "run", "publish-gh-pages"
|
44
|
-
end
|
45
|
-
end
|
46
|
-
|
47
|
-
def on_docs_dir(&block)
|
48
|
-
Dir.chdir "docusaurus/website", &block
|
49
|
-
end
|
50
|
-
end
|
51
|
-
|
52
|
-
namespace :benchmark do
|
53
|
-
desc "Run benchmark"
|
54
|
-
task :run, [:n] do |_task, args|
|
55
|
-
require "benchmark"
|
56
|
-
require "net/http"
|
57
|
-
require "tempfile"
|
58
|
-
require_relative "lib/goodcheck"
|
59
|
-
require_relative "lib/goodcheck/cli"
|
60
|
-
|
61
|
-
content = Net::HTTP.get(URI("https://raw.githubusercontent.com/ruby/ruby/0256e4f0f5e10f0a15cbba2cd64e252dfa864e4a/gc.c"))
|
62
|
-
target_file = Tempfile.new("goodcheck-benchmark-")
|
63
|
-
target_file.write content
|
64
|
-
target_file = target_file.path
|
65
|
-
|
66
|
-
n = Integer(args[:n] || 1000)
|
67
|
-
puts "n = #{n}"
|
68
|
-
|
69
|
-
Benchmark.bm do |x|
|
70
|
-
x.report do
|
71
|
-
n.times { Goodcheck::CLI.new(stdout: STDOUT, stderr: STDERR).run(["check", target_file]) }
|
72
|
-
end
|
73
|
-
end
|
74
|
-
end
|
75
|
-
end
|