standard 1.29.0 → 1.30.0
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 +11 -1
- data/Gemfile.lock +8 -6
- data/docs/ARCHITECTURE.md +3 -1
- data/lib/standard/plugin_support/merges_upstream_metadata.rb +23 -0
- data/lib/standard/plugin_support.rb +1 -0
- data/lib/standard/version.rb +1 -1
- data/lib/standard.rb +1 -1
- metadata +9 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b17c9efa5e16ef81d493ca9044fb993a0d7c7deac41d30fbf659017267921573
|
4
|
+
data.tar.gz: 5168903cd15b8733663ee2de10965128e9621c095b9e31ec8edf27836eccaa18
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 054b9c7768a59c0c90719083f2c3e03f5579926ff2a4d80bd564971a4d922041f67666a7eaad57b46edf119eff9fecf0d2878efa010a656e6c9d1564718b032f
|
7
|
+
data.tar.gz: c57756fc025f736248cc725222196599dbe43c4efc8c093dddfac557335dd7fd273f85f233803d631f7492091295719a1cf23823083889105ae911b7dea90715
|
data/CHANGELOG.md
CHANGED
@@ -1,8 +1,18 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## 1.30.0
|
4
|
+
|
5
|
+
* Add `Standard::PluginSupport` module of classes designed to make it a little
|
6
|
+
easier to author plugins. `MergesUpstreamMetadata#merge` will allow a minimal
|
7
|
+
YAML config (say, `standard-sorbet`'s, which only contains `Enabled` values for
|
8
|
+
each rule) to merge in any other defaults from a source YAML (e.g.
|
9
|
+
`rubocop-sorbet`'s which includes `Description`, `VersionAdded`, and so on).
|
10
|
+
This way that metadata is neither absent at runtime nor duplicated in a standard
|
11
|
+
plugin that mirrors a rubocop extension
|
12
|
+
|
3
13
|
## 1.29.0
|
4
14
|
|
5
|
-
* Updates standard-performance to [1.1.0](https://github.com/standardrb/standard-
|
15
|
+
* Updates standard-performance to [1.1.0](https://github.com/standardrb/standard-performance/releases/tag/v1.1.0)
|
6
16
|
* Updates rubocop to [1.52.0](https://github.com/rubocop/rubocop/releases/tag/v1.52.0)
|
7
17
|
* Enables Style/ExactRegexpMatch, Style/RedundantArrayConstructor, Style/RedundantFilterChain, Style/RedundantRegexpConstructor
|
8
18
|
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
standard (1.
|
4
|
+
standard (1.30.0)
|
5
5
|
language_server-protocol (~> 3.17.0.2)
|
6
6
|
lint_roller (~> 1.0)
|
7
7
|
rubocop (~> 1.52.0)
|
@@ -23,16 +23,18 @@ GEM
|
|
23
23
|
method_source (1.0.0)
|
24
24
|
minitest (5.18.0)
|
25
25
|
parallel (1.23.0)
|
26
|
-
parser (3.2.2.
|
26
|
+
parser (3.2.2.3)
|
27
27
|
ast (~> 2.4.1)
|
28
|
+
racc
|
29
|
+
racc (1.7.1)
|
28
30
|
rainbow (3.1.1)
|
29
31
|
rake (13.0.6)
|
30
|
-
regexp_parser (2.8.
|
32
|
+
regexp_parser (2.8.1)
|
31
33
|
rexml (3.2.5)
|
32
|
-
rubocop (1.52.
|
34
|
+
rubocop (1.52.1)
|
33
35
|
json (~> 2.3)
|
34
36
|
parallel (~> 1.10)
|
35
|
-
parser (>= 3.2.
|
37
|
+
parser (>= 3.2.2.3)
|
36
38
|
rainbow (>= 2.2.2, < 4.0)
|
37
39
|
regexp_parser (>= 1.8, < 3.0)
|
38
40
|
rexml (>= 3.2.5, < 4.0)
|
@@ -51,7 +53,7 @@ GEM
|
|
51
53
|
simplecov_json_formatter (~> 0.1)
|
52
54
|
simplecov-html (0.12.3)
|
53
55
|
simplecov_json_formatter (0.1.4)
|
54
|
-
standard-custom (1.0.
|
56
|
+
standard-custom (1.0.1)
|
55
57
|
lint_roller (~> 1.0)
|
56
58
|
standard-performance (1.1.0)
|
57
59
|
lint_roller (~> 1.0)
|
data/docs/ARCHITECTURE.md
CHANGED
@@ -8,7 +8,9 @@ buried.
|
|
8
8
|
Starting with version 1.28.0, Standard Ruby introduced plugin support and
|
9
9
|
refactored how it loads its own rules from one large YAML file into several
|
10
10
|
plugins. As a result, what was a single `standard` gem is now spread across 3
|
11
|
-
gems.
|
11
|
+
gems.
|
12
|
+
|
13
|
+
Here's how it's all organized:
|
12
14
|
|
13
15
|
* [standard](https://github.com/standardrb/standard) - The main gem. The one
|
14
16
|
people install and think of. Because `standard` has a hard dependency on `rubocop`,
|
@@ -0,0 +1,23 @@
|
|
1
|
+
module Standard
|
2
|
+
module PluginSupport
|
3
|
+
class MergesUpstreamMetadata
|
4
|
+
def merge(plugin_yaml, upstream_yaml)
|
5
|
+
common_upstream_values = upstream_yaml.select { |key| plugin_yaml.key?(key) }
|
6
|
+
|
7
|
+
plugin_yaml.merge(common_upstream_values) { |key, plugin_value, upstream_value|
|
8
|
+
if plugin_value.is_a?(Hash) && upstream_value.is_a?(Hash)
|
9
|
+
plugin_value.merge(upstream_value) { |sub_key, plugin_sub_value, upstream_sub_value|
|
10
|
+
if plugin_value.key?(sub_key)
|
11
|
+
plugin_sub_value
|
12
|
+
else
|
13
|
+
upstream_sub_value
|
14
|
+
end
|
15
|
+
}
|
16
|
+
else
|
17
|
+
plugin_value
|
18
|
+
end
|
19
|
+
}
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
require "standard/plugin_support/merges_upstream_metadata"
|
data/lib/standard/version.rb
CHANGED
data/lib/standard.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: standard
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.30.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Justin Searls
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-07-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rubocop
|
@@ -80,7 +80,7 @@ dependencies:
|
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: 3.17.0.2
|
83
|
-
description:
|
83
|
+
description:
|
84
84
|
email:
|
85
85
|
- searls@gmail.com
|
86
86
|
executables:
|
@@ -148,6 +148,8 @@ files:
|
|
148
148
|
- lib/standard/plugin/initializes_plugins.rb
|
149
149
|
- lib/standard/plugin/merges_plugins_into_rubocop_config.rb
|
150
150
|
- lib/standard/plugin/standardizes_configured_plugins.rb
|
151
|
+
- lib/standard/plugin_support.rb
|
152
|
+
- lib/standard/plugin_support/merges_upstream_metadata.rb
|
151
153
|
- lib/standard/railtie.rb
|
152
154
|
- lib/standard/rake.rb
|
153
155
|
- lib/standard/resolves_yaml_option.rb
|
@@ -167,7 +169,7 @@ metadata:
|
|
167
169
|
source_code_uri: https://github.com/standardrb/standard
|
168
170
|
changelog_uri: https://github.com/standardrb/standard/blob/main/CHANGELOG.md
|
169
171
|
rubygems_mfa_required: 'true'
|
170
|
-
post_install_message:
|
172
|
+
post_install_message:
|
171
173
|
rdoc_options: []
|
172
174
|
require_paths:
|
173
175
|
- lib
|
@@ -182,8 +184,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
182
184
|
- !ruby/object:Gem::Version
|
183
185
|
version: '0'
|
184
186
|
requirements: []
|
185
|
-
rubygems_version: 3.
|
186
|
-
signing_key:
|
187
|
+
rubygems_version: 3.4.14
|
188
|
+
signing_key:
|
187
189
|
specification_version: 4
|
188
190
|
summary: Ruby Style Guide, with linter & automatic code fixer
|
189
191
|
test_files: []
|