asciidoctor-jenkins-extensions 0.5.1 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 70e7c7a38724a7df258c5cc39dbf677ce8e406f09dc57e306dea62189f6d8a50
4
- data.tar.gz: f61bfea245012ffd3745fe57746136ebd81a2aa57d9b1484b49908e651e162c7
3
+ metadata.gz: ec8a17619c5b65ec7ed332a59bf905de294e5b7cd1d950422072eccdd7b4092e
4
+ data.tar.gz: 6009a6ccd33eea49ba3f85e078d1fbe9c902632923c46c11af607d9537fa9df0
5
5
  SHA512:
6
- metadata.gz: c6c27234b41610333750e834e2a8bb9cb85c5741cd358db962a3a31f13cc00397e6b338d55598c50b8dc4c0c0042f47120c67c1ac0e4d41f11545bf1a20b86fc
7
- data.tar.gz: a5a24f20aa2b22c6cdff1cb526f3cad92b84d0e9f21679b9cd57cb0e45832d17617a6c195df7ede6bb1f3cb60baa35bfe3205140867003c06cb6886df05e26ea
6
+ metadata.gz: db7430bcc95d49d7354d81b3bdc107c66c98891b4e8b93acb59db32245735cc5a24fc812569b51c477e9bfa55c853259295a90679da07a37b4c92940d9ba0e91
7
+ data.tar.gz: c271f1b1ff2ef9793a30ba6503057aa245634b90d9c83eaa60b9a97ea0bdc007822b18fae11acf6908b47f5c9d682dd26ddf0427cdd23d0d9165d734fe918a98
@@ -30,7 +30,7 @@ formatting in Jenkins-related content.
30
30
  spec.add_dependency 'coderay', '~> 1.1.1'
31
31
  spec.add_dependency 'colorize', '~> 0.8.1'
32
32
 
33
- spec.add_development_dependency "bundler", "~> 1.11"
33
+ spec.add_development_dependency "bundler", "~> 2.0"
34
34
  spec.add_development_dependency "rake", "~> 10.0"
35
35
  spec.add_development_dependency "rspec"
36
36
  spec.add_development_dependency "rspec-its"
@@ -20,6 +20,14 @@ require 'asciidoctor/extensions'
20
20
  # jenkinsdoc:git:hudson.plugins.git.GitSCM[some label]
21
21
  # jenkinsdoc:git:hudson.plugins.git.GitSCM#anchor[]
22
22
  # jenkinsdoc:git:hudson.plugins.git.GitSCM#anchor[some label]
23
+ #
24
+ #
25
+ # For component Javadoc:
26
+ #
27
+ # jenkinsdoc:component:remoting:hudson.remoting.Channel[]
28
+ # jenkinsdoc:component:remoting:hudson.remoting.Channel[some label]
29
+ # jenkinsdoc:component:remoting:hudson.remoting.Channel#anchor[]
30
+ # jenkinsdoc:component:remoting:hudson.remoting.Channel#anchor[some label]
23
31
 
24
32
  Asciidoctor::Extensions.register do
25
33
  inline_macro do
@@ -29,8 +37,13 @@ Asciidoctor::Extensions.register do
29
37
  process do |parent, target, attrs|
30
38
 
31
39
  if target.include? ":"
32
- parts = target.split(':', 2)
33
- plugin = parts.first
40
+ parts = target.split(':', 3)
41
+
42
+ if parts.first == "component"
43
+ component = parts[1]
44
+ else
45
+ plugin = parts.first
46
+ end
34
47
  target = parts.last
35
48
  end
36
49
  classname = label = title = target
@@ -43,6 +56,13 @@ Asciidoctor::Extensions.register do
43
56
  classname.split('.').each do |part|
44
57
  if is_package && /[[:lower:]]/.match(part[0])
45
58
  package_parts.push(part)
59
+ elsif match = /(.*)#/.match(part)
60
+ class_part = match.captures
61
+ simpleclass_parts.push(class_part)
62
+ is_package = false
63
+
64
+ # escape once fragment has been found, required for complex fragments that contain a '.'
65
+ break
46
66
  else
47
67
  is_package = false
48
68
  simpleclass_parts.push(part)
@@ -52,22 +72,25 @@ Asciidoctor::Extensions.register do
52
72
  package = package_parts.join('.')
53
73
  simpleclass = simpleclass_parts.join('.')
54
74
 
55
- if package.length > 0 || plugin
75
+ if package.length > 0 || plugin || component
56
76
  classname = classname.gsub(/#.*/, '')
57
77
  classurl = package.gsub(/\./, '/') + '/' + simpleclass + ".html"
58
78
 
59
- classfrag = (target.include? "#") ? '#' + target.gsub(/.*#/, '') : ''
79
+ classfrag = (target.include? "#") ? '#' + target.gsub(/.*#/, '').gsub(/\(\)/, '--') : ''
60
80
 
61
81
  if plugin
62
82
  label = (attrs.has_key? 'label') ? attrs['label'] : %(#{classname} in #{plugin})
63
- target = %(http://javadoc.jenkins.io/plugin/#{plugin}/#{classurl}#{classfrag})
83
+ target = %(https://javadoc.jenkins.io/plugin/#{plugin}/#{classurl}#{classfrag})
84
+ elsif component
85
+ label = (attrs.has_key? 'label') ? attrs['label'] : %(#{classname} in #{component})
86
+ target = %(https://javadoc.jenkins.io/component/#{component}/#{classurl}#{classfrag})
64
87
  else
65
88
  label = (attrs.has_key? 'label') ? attrs['label'] : classname
66
- target = %(http://javadoc.jenkins.io/#{classurl}#{classfrag})
89
+ target = %(https://javadoc.jenkins.io/#{classurl}#{classfrag})
67
90
  end
68
91
  else
69
92
  label = (attrs.has_key? 'label') ? attrs['label'] : classname
70
- target = %(http://javadoc.jenkins.io/byShortName/#{classname})
93
+ target = %(https://javadoc.jenkins.io/byShortName/#{classname})
71
94
  end
72
95
 
73
96
  title = %(Javadoc for #{classname})
@@ -92,8 +115,16 @@ Asciidoctor::Extensions.register do
92
115
  is_package = true
93
116
 
94
117
  classname.split('.').each do |part|
118
+ match = /(.*)#/.match(part)
95
119
  if is_package && /[[:lower:]]/.match(part[0])
96
120
  package_parts.push(part)
121
+ elsif match = /(.*)#/.match(part)
122
+ class_part = match.captures
123
+ simpleclass_parts.push(class_part)
124
+ is_package = false
125
+
126
+ # escape once fragment has been found, required for complex fragments that contain a '.'
127
+ break
97
128
  else
98
129
  is_package = false
99
130
  simpleclass_parts.push(part)
@@ -106,9 +137,9 @@ Asciidoctor::Extensions.register do
106
137
  classname = target.gsub(/#.*/, '')
107
138
  classurl = package.gsub(/\./, '/') + '/' + simpleclass + ".html"
108
139
 
109
- classfrag = (target.include? "#") ? '#' + target.gsub(/.*#/, '') : ''
140
+ classfrag = (target.include? "#") ? '#' + target.gsub(/.*#/, '').gsub(/\(\)/, '--') : ''
110
141
  label = (attrs.has_key? 'label') ? attrs['label'] : classname
111
- target = %(http://stapler.kohsuke.org/apidocs/#{classurl}#{classfrag})
142
+ target = %(https://stapler.kohsuke.org/apidocs/#{classurl}#{classfrag})
112
143
 
113
144
  title = %(Javadoc for #{classname})
114
145
 
@@ -135,6 +166,13 @@ Asciidoctor::Extensions.register do
135
166
  classname.split('.').each do |part|
136
167
  if is_package && /[[:lower:]]/.match(part[0])
137
168
  package_parts.push(part)
169
+ elsif match = /(.*)#/.match(part)
170
+ class_part = match.captures
171
+ simpleclass_parts.push(class_part)
172
+ is_package = false
173
+
174
+ # escape once fragment has been found, required for complex fragments that contain a '.'
175
+ break
138
176
  else
139
177
  is_package = false
140
178
  simpleclass_parts.push(part)
@@ -147,9 +185,9 @@ Asciidoctor::Extensions.register do
147
185
  classname = target.gsub(/#.*/, '')
148
186
  classurl = package.gsub(/\./, '/') + '/' + simpleclass + ".html"
149
187
 
150
- classfrag = (target.include? "#") ? '#' + target.gsub(/.*#/, '') : ''
188
+ classfrag = (target.include? "#") ? '#' + target.gsub(/.*#/, '').gsub(/\(\)/, '--') : ''
151
189
  label = (attrs.has_key? 'label') ? attrs['label'] : classname
152
- target = %(http://docs.oracle.com/javase/7/docs/api/#{classurl}#{classfrag})
190
+ target = %(https://docs.oracle.com/javase/8/docs/api/#{classurl}#{classfrag})
153
191
 
154
192
  title = %(Javadoc for #{classname})
155
193
 
@@ -1,7 +1,7 @@
1
1
  module Asciidoctor
2
2
  module Jenkins
3
3
  module Extensions
4
- VERSION = "0.5.1"
4
+ VERSION = "0.6.0"
5
5
  end
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: asciidoctor-jenkins-extensions
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - R. Tyler Croy
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-04-19 00:00:00.000000000 Z
11
+ date: 2019-11-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: asciidoctor
@@ -58,14 +58,14 @@ dependencies:
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '1.11'
61
+ version: '2.0'
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: '1.11'
68
+ version: '2.0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rake
71
71
  requirement: !ruby/object:Gem::Requirement