yard 0.9.27 → 0.9.28
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of yard might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/.github/workflows/ci.yml +4 -4
- data/CHANGELOG.md +18 -9
- data/Gemfile +2 -2
- data/LICENSE +1 -1
- data/lib/yard/cli/stats.rb +2 -1
- data/lib/yard/cli/yardoc.rb +2 -1
- data/lib/yard/config.rb +5 -1
- data/lib/yard/handlers/ruby/method_handler.rb +1 -1
- data/lib/yard/parser/ruby/ast_node.rb +7 -0
- data/lib/yard/templates/helpers/method_helper.rb +3 -1
- data/lib/yard/templates/template.rb +3 -1
- data/lib/yard/version.rb +1 -1
- data/lib/yard.rb +3 -0
- data/templates/default/layout/html/footer.erb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2a014685561249bd72bd38eea2db5386c7a3f5d814ec2cbd0218fc76803d4d88
|
4
|
+
data.tar.gz: fbbb78841e6f41798c14cde55e5d55da409bc550005a1f8d67a2491332a9378c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 37666343d2e629ce4cd1c9c1d7e82b678ade120151e79b52ce3110bdbd9c0bdf65c76aa3661a5d6ffd34fe40f9ff90f100b1f7b2c898951737e6ba14f4bacaa3
|
7
|
+
data.tar.gz: 6235690efed8749d45e513842f689a273c68ef6424a4881a9e77db2a1590ebc1fb7d55d6d68c2f6013bda045e49e1285169c93a9c7736f3b2ef7a6e8fe1fc4de
|
data/.github/workflows/ci.yml
CHANGED
@@ -9,11 +9,11 @@ jobs:
|
|
9
9
|
fail-fast: false
|
10
10
|
matrix:
|
11
11
|
os: [ubuntu-20.04, macos-10.15, windows-2019]
|
12
|
-
# 3.0 is interpreted as 3
|
13
|
-
ruby: [2.2, 2.3, 2.4, 2.
|
12
|
+
# 3.0 is interpreted as 3. also disable 2.5 due to bundler crashes
|
13
|
+
ruby: [2.2, 2.3, 2.4, 2.6, 2.7, "3.0", 3.1]
|
14
14
|
exclude:
|
15
|
-
- { os: windows-2019
|
16
|
-
- { os: windows-2019
|
15
|
+
- { os: windows-2019, ruby: 2.2 }
|
16
|
+
- { os: windows-2019, ruby: 2.3 }
|
17
17
|
steps:
|
18
18
|
- name: Checkout
|
19
19
|
uses: actions/checkout@v2
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,15 @@
|
|
1
1
|
# main
|
2
2
|
|
3
|
-
# 0.9.
|
3
|
+
# [0.9.28] - June 1st, 2022
|
4
|
+
|
5
|
+
[0.9.28]: https://github.com/lsegal/yard/compare/v0.9.27...v0.9.28
|
6
|
+
|
7
|
+
- Safe load config YAML files (#1385)
|
8
|
+
- Handle empty string constants (#1415)
|
9
|
+
- Pre-emptively support removal of `Object#taint` in Ruby 3.2 (#1419)
|
10
|
+
- Fix Ruby 3.1 forward args Ripper change (#1431)
|
11
|
+
|
12
|
+
# [0.9.27] - November 29th, 2021
|
4
13
|
|
5
14
|
[0.9.27]: https://github.com/lsegal/yard/compare/v0.9.26...v0.9.27
|
6
15
|
|
@@ -16,14 +25,14 @@
|
|
16
25
|
- Fix `@!scope` maintaining state in lone comment blocks (#1411)
|
17
26
|
- Remove support for Travis CI
|
18
27
|
|
19
|
-
# 0.9.26 - December 26th, 2020
|
28
|
+
# [0.9.26] - December 26th, 2020
|
20
29
|
|
21
30
|
[0.9.26]: https://github.com/lsegal/yard/compare/v0.9.25...v0.9.26
|
22
31
|
|
23
32
|
- Add support for Ruby 3.0 and fix tests
|
24
33
|
- Fix support for `frozen_string_literal: false` magic comments (#1363)
|
25
34
|
|
26
|
-
# 0.9.25 - May 3rd, 2020
|
35
|
+
# [0.9.25] - May 3rd, 2020
|
27
36
|
|
28
37
|
[0.9.25]: https://github.com/lsegal/yard/compare/v0.9.24...v0.9.25
|
29
38
|
|
@@ -38,7 +47,7 @@
|
|
38
47
|
- Omit spec files in gem package (#1307)
|
39
48
|
- README updates (#1322)
|
40
49
|
|
41
|
-
# 0.9.24 - January 8th, 2020
|
50
|
+
# [0.9.24] - January 8th, 2020
|
42
51
|
|
43
52
|
[0.9.24]: https://github.com/lsegal/yard/compare/v0.9.23...v0.9.24
|
44
53
|
|
@@ -46,20 +55,20 @@
|
|
46
55
|
cache is changed.
|
47
56
|
- Fix issue where Registry fails to resolve first-time lookups on instance methods.
|
48
57
|
|
49
|
-
# 0.9.23 - January 5th, 2020
|
58
|
+
# [0.9.23] - January 5th, 2020
|
50
59
|
|
51
60
|
[0.9.23]: https://github.com/lsegal/yard/compare/v0.9.22...v0.9.23
|
52
61
|
|
53
62
|
- Fix issues with double encoded code blocks when highlighted from an extra
|
54
63
|
file.
|
55
64
|
|
56
|
-
# 0.9.22 - December 31st, 2019
|
65
|
+
# [0.9.22] - December 31st, 2019
|
57
66
|
|
58
67
|
[0.9.22]: https://github.com/lsegal/yard/compare/v0.9.21...v0.9.22
|
59
68
|
|
60
69
|
- Revert jquery update in last release since it requires more changes. (#1298)
|
61
70
|
|
62
|
-
# 0.9.21 - December 31st, 2019
|
71
|
+
# [0.9.21] - December 31st, 2019
|
63
72
|
|
64
73
|
[0.9.21]: https://github.com/lsegal/yard/compare/v0.9.20...v0.9.21
|
65
74
|
|
@@ -75,7 +84,7 @@
|
|
75
84
|
- Update jquery to 3.4.1 (#1294)
|
76
85
|
- Test fixes (#1244)
|
77
86
|
|
78
|
-
# 0.9.20 - June 27th, 2019
|
87
|
+
# [0.9.20] - June 27th, 2019
|
79
88
|
|
80
89
|
[0.9.20]: https://github.com/lsegal/yard/compare/v0.9.19...v0.9.20
|
81
90
|
|
@@ -85,7 +94,7 @@
|
|
85
94
|
`yard server` host under certain conditions. Thanks to CuongMX from
|
86
95
|
Viettel Cyber Security for discovering this vulnerability.
|
87
96
|
|
88
|
-
# 0.9.19 - April 2nd, 2019
|
97
|
+
# [0.9.19] - April 2nd, 2019
|
89
98
|
|
90
99
|
[0.9.19]: https://github.com/lsegal/yard/compare/v0.9.16...v0.9.19
|
91
100
|
|
data/Gemfile
CHANGED
@@ -2,13 +2,13 @@
|
|
2
2
|
source 'https://rubygems.org'
|
3
3
|
|
4
4
|
group :development do
|
5
|
-
gem 'rspec'
|
5
|
+
gem 'rspec', '>= 3.11.0'
|
6
6
|
gem 'rake'
|
7
7
|
gem 'rdoc'
|
8
8
|
gem 'json'
|
9
9
|
gem 'simplecov'
|
10
10
|
gem 'samus', '~> 3.0.9', :require => false
|
11
|
-
gem '
|
11
|
+
gem 'coveralls_reborn', :require => false
|
12
12
|
gem 'webrick'
|
13
13
|
end
|
14
14
|
|
data/LICENSE
CHANGED
data/lib/yard/cli/stats.rb
CHANGED
@@ -225,7 +225,8 @@ module YARD
|
|
225
225
|
end
|
226
226
|
|
227
227
|
opts.on('--query QUERY', "Only includes objects that match a specific query") do |query|
|
228
|
-
|
228
|
+
query.taint if query.respond_to?(:taint)
|
229
|
+
options[:verifier].add_expressions(query)
|
229
230
|
end
|
230
231
|
end
|
231
232
|
end
|
data/lib/yard/cli/yardoc.rb
CHANGED
@@ -650,7 +650,8 @@ module YARD
|
|
650
650
|
|
651
651
|
opts.on('--query QUERY', "Only show objects that match a specific query") do |query|
|
652
652
|
next if YARD::Config.options[:safe_mode]
|
653
|
-
|
653
|
+
query.taint if query.respond_to?(:taint)
|
654
|
+
options.verifier.add_expressions(query)
|
654
655
|
end
|
655
656
|
|
656
657
|
opts.on('--title TITLE', 'Add a specific title to HTML documents') do |title|
|
data/lib/yard/config.rb
CHANGED
@@ -236,7 +236,11 @@ module YARD
|
|
236
236
|
def self.read_config_file
|
237
237
|
if File.file?(CONFIG_FILE)
|
238
238
|
require 'yaml'
|
239
|
-
YAML.
|
239
|
+
if YAML.respond_to?(:safe_load_file)
|
240
|
+
YAML.safe_load_file(CONFIG_FILE, permitted_classes: [SymbolHash, Symbol])
|
241
|
+
else
|
242
|
+
YAML.load_file(CONFIG_FILE)
|
243
|
+
end
|
240
244
|
else
|
241
245
|
{}
|
242
246
|
end
|
@@ -97,7 +97,7 @@ class YARD::Handlers::Ruby::MethodHandler < YARD::Handlers::Ruby::Base
|
|
97
97
|
params << ['**' + args.double_splat_param.source, nil]
|
98
98
|
end
|
99
99
|
|
100
|
-
params << ['&' + args.block_param.source, nil] if args.block_param
|
100
|
+
params << ['&' + args.block_param.source, nil] if args.block_param && !args.args_forward
|
101
101
|
|
102
102
|
params
|
103
103
|
end
|
@@ -426,6 +426,13 @@ module YARD
|
|
426
426
|
def block_param
|
427
427
|
self[-1] ? self[-1][0] : nil
|
428
428
|
end
|
429
|
+
|
430
|
+
def args_forward
|
431
|
+
# shape is (required, optional, rest, more, keyword, keyword_rest, block)
|
432
|
+
# Ruby 3.1 moves :args_forward from rest to keyword_rest
|
433
|
+
args_index = YARD.ruby31? ? -2 : 2
|
434
|
+
self[args_index].type == :args_forward if self[args_index]
|
435
|
+
end
|
429
436
|
end
|
430
437
|
|
431
438
|
class MethodCallNode < AstNode
|
@@ -66,7 +66,9 @@ module YARD
|
|
66
66
|
|
67
67
|
# @return [String] formats source code of a constant value
|
68
68
|
def format_constant(value)
|
69
|
-
|
69
|
+
# last can return nil, so default to empty string
|
70
|
+
sp = value.split("\n").last || ""
|
71
|
+
sp = sp[/^(\s+)/, 1]
|
70
72
|
num = sp ? sp.size : 0
|
71
73
|
html_syntax_highlight value.gsub(/^\s{#{num}}/, '')
|
72
74
|
end
|
@@ -176,7 +176,9 @@ module YARD
|
|
176
176
|
def load_setup_rb
|
177
177
|
setup_file = File.join(full_path, 'setup.rb')
|
178
178
|
if File.file? setup_file
|
179
|
-
|
179
|
+
setup_code = File.read(setup_file)
|
180
|
+
setup_code.taint if setup_code.respond_to?(:taint)
|
181
|
+
module_eval(setup_code, setup_file, 1)
|
180
182
|
end
|
181
183
|
end
|
182
184
|
end
|
data/lib/yard/version.rb
CHANGED
data/lib/yard.rb
CHANGED
@@ -51,6 +51,9 @@ module YARD
|
|
51
51
|
|
52
52
|
# @return [Boolean] whether YARD is being run in Ruby 3.0
|
53
53
|
def self.ruby3?; @ruby3 ||= (RUBY_VERSION >= '3.0.0') end
|
54
|
+
|
55
|
+
# @return [Boolean] whether YARD is being run in Ruby 3.1
|
56
|
+
def self.ruby31?; @ruby31 ||= (RUBY_VERSION >= '3.1.0') end
|
54
57
|
end
|
55
58
|
|
56
59
|
# Keep track of Ruby version for compatibility code
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<div id="footer">
|
2
2
|
Generated on <%= Time.now.strftime("%c") %> by
|
3
|
-
<a href="
|
3
|
+
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
4
4
|
<%= YARD::VERSION %> (ruby-<%= RUBY_VERSION %>).
|
5
5
|
</div>
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: yard
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.28
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Loren Segal
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-06-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: webrick
|