asciidoctor 2.0.17 → 2.0.18

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c33baadb7f5d28211bbb55b0b2b002159d57d483d35d17fe1b11d72dd4389e53
4
- data.tar.gz: db81a673d28035c721612ab1c4f9d23e005a824384ac0ba1b1983e9e817d44e6
3
+ metadata.gz: c415cde38b385b114b0de056cfc4235c6fbfdc0a0b189a7479c477ec4265e72a
4
+ data.tar.gz: cf171969c86a19aa9e846751564baf362e1d9fd2ab927c63f8f017c0f8de039e
5
5
  SHA512:
6
- metadata.gz: a1fae45fddd3696607f9337f35222ecfad106aa295d2f328b54af5c21404ddb0c59baf6424b180bf46e4fed36fa28a6042f2d90310bb8acea01da4790a80ba3f
7
- data.tar.gz: 0d65fb85055130df297d9ed12a63d68d03d5876c5b09f84d052396e793dada3a9406217969ac6574a3404b62113fb3afa7da235f6692ef2c1651904ecba00c71
6
+ metadata.gz: 4a1e07e2a597d176326d8547cebaf2424e43ba861912502f7e544a2ce74fab3567c9b1f9e87061c6586d7bfa1c1dbde764b7c50b7a3746f7b8548426f165c9f5
7
+ data.tar.gz: fb5b41022b045dd1ad09f09b5ffd98a512958186388ea1182d96c32367723925718ba49abe7dbaea84bf0c051a3121302a33bf0e302f5d1f25ca3068ba210be4
data/CHANGELOG.adoc CHANGED
@@ -16,6 +16,31 @@ For an even more detailed look at what has changed, refer to the {uri-repo}/comm
16
16
  This project utilizes semantic versioning.
17
17
 
18
18
  // tag::compact[]
19
+ == 2.0.18 (2022-10-15) - @mojavelinux
20
+
21
+ Improvements::
22
+
23
+ * Propagate `:to_dir` option to document of AsciiDoc table cell (#4297)
24
+ * Force encoding of attribute data passed via CLI to UTF-8 if transcoding fails (#4351) (*@zkaip*)
25
+ * Add include role to link macro that replaces include directive when include is not enabled
26
+
27
+ Bug Fixes::
28
+
29
+ * Change internal `uriish?` helper to only detect a URI pattern at start of a string; avoids misleading messages (#4357)
30
+ * Prevent highlight.js warning when no language is set on source block; don't call `highlightBlock` if `data-lang` attribute is absent (#4263)
31
+ * Don't raise error if `Asciidoctor::Extensions.unregister` is called before groups are initialized (#4270)
32
+ * If path is included both partially and fully, store it with true value (included fully) in includes table of document catalog
33
+ * Reset registry if activate is called on it again (#4256)
34
+ * Format source location in exception message when extension code is malformed
35
+ * Fix lineno on reader when `skip-front-matter` attribute is set but end of front matter is not found
36
+ * Fix `Asciidoctor::Cli::Invoker` constructor when first argument is a hash
37
+ * Update default stylesheet to honor marker on unordered list when marker is defined on ancestor unordered list (#4361)
38
+
39
+ === Details
40
+
41
+ {url-repo}/releases/tag/v2.0.18[git tag] | {url-repo}/compare/v2.0.17\...v2.0.18[source diff]
42
+ // end::compact[]
43
+
19
44
  == 2.0.17 (2022-01-05) - @mojavelinux
20
45
 
21
46
  Bug Fixes::
@@ -27,12 +52,12 @@ Bug Fixes::
27
52
  * Change `AbstractBlock#sections?` to return false when called on block that isn't a Section or Document (PR #3591) *@mogztter*
28
53
  * Hide built-in marker on HTML summary element in Safari when using default stylesheet (#4162)
29
54
  * Hide outline around HTML summary when activated in Safari (#4162)
30
- * Include primary video in value of `playlist` attribute when embeddding YouTube video (#4156)
31
- * Honor stripes=none on nested table (#4165)
55
+ * Include primary video in value of `playlist` attribute when embedding YouTube video (#4156)
56
+ * Honor `stripes=none` on nested table (#4165)
32
57
  * Update default stylesheet to fix spacing around empty list item (#4184)
33
58
  * Honor `:header_only` option when parsing document with manpage doctype (#4192)
34
59
  * Use numeric character reference for closing square bracket around alt text of icon
35
- * Process author or authors document attribute in document header when implicit doctitle is absent (#4206)
60
+ * Process `author` or `authors` document attribute in document header when implicit doctitle is absent (#4206)
36
61
  * Patch open-uri-cached gem to work with Ruby 3.1 (update: drop patch now that open-uri-cached has been fixed) (#4227)
37
62
 
38
63
  Improvements::
@@ -43,7 +68,7 @@ Improvements::
43
68
  * Remove obsolete gist embed styles from default stylesheet
44
69
  * Allow `--failure-level` to be set to default value, `FATAL`
45
70
  * Sort levels in help for `--failure-level` option in ascending order
46
- * Invert FR translations for caution & warning admonition labels (#4212) (*cyChop*)
71
+ * Invert FR translations for caution & warning admonition labels (#4212) (*@cyChop*)
47
72
  * Add tests for open-uri-cached integration that is activated by the `cache-uri` attribute
48
73
  * Don't warn if negated tag is not found in include file (#4230)
49
74
 
@@ -55,7 +80,6 @@ Documentation::
55
80
  * Document how to enable and use the sourcemap (the `:sourcemap` option)
56
81
  * Document how to catalog additional assets (the `:catalog_assets` option)
57
82
 
58
- // end::compact[]
59
83
  == 2.0.16 (2021-08-03) - @mojavelinux
60
84
 
61
85
  Bug Fixes::
data/README-de.adoc CHANGED
@@ -1,6 +1,5 @@
1
1
  = Asciidoctor
2
2
  Dan Allen <https://github.com/mojavelinux[@mojavelinux]>; Sarah White <https://github.com/graphitefriction[@graphitefriction]>
3
- v2.0.17, 2022-01-05
4
3
  // settings:
5
4
  :idprefix:
6
5
  :idseparator: -
data/README-fr.adoc CHANGED
@@ -1,6 +1,5 @@
1
1
  = Asciidoctor
2
2
  Dan Allen <https://github.com/mojavelinux[@mojavelinux]>; Sarah White <https://github.com/graphitefriction[@graphitefriction]>
3
- v2.0.17, 2022-01-05
4
3
  // settings:
5
4
  :idprefix:
6
5
  :idseparator: -
data/README-jp.adoc CHANGED
@@ -1,6 +1,5 @@
1
1
  = Asciidoctor
2
2
  Dan Allen <https://github.com/mojavelinux[@mojavelinux]>; Sarah White <https://github.com/graphitefriction[@graphitefriction]>
3
- v2.0.17, 2022-01-05
4
3
  // settings:
5
4
  :idprefix:
6
5
  :idseparator: -
data/README-zh_CN.adoc CHANGED
@@ -1,6 +1,5 @@
1
1
  = Asciidoctor
2
2
  Dan Allen <https://github.com/mojavelinux[@mojavelinux]>; Sarah White <https://github.com/graphitefriction[@graphitefriction]>
3
- v2.0.17, 2022-01-05
4
3
  // settings:
5
4
  :page-layout: base
6
5
  :idprefix:
data/README.adoc CHANGED
@@ -1,6 +1,6 @@
1
1
  = Asciidoctor
2
2
  Dan Allen <https://github.com/mojavelinux[@mojavelinux]>; Sarah White <https://github.com/graphitefriction[@graphitefriction]>
3
- v2.0.17, 2022-01-05
3
+ v2.0.18, 2022-10-15
4
4
  // settings:
5
5
  :idprefix:
6
6
  :idseparator: -
data/asciidoctor.gemspec CHANGED
@@ -18,7 +18,7 @@ Gem::Specification.new do |s|
18
18
  s.metadata = {
19
19
  'bug_tracker_uri' => 'https://github.com/asciidoctor/asciidoctor/issues',
20
20
  'changelog_uri' => 'https://github.com/asciidoctor/asciidoctor/blob/HEAD/CHANGELOG.adoc',
21
- 'mailing_list_uri' => 'http://discuss.asciidoctor.org',
21
+ 'mailing_list_uri' => 'https://chat.asciidoctor.org',
22
22
  'source_code_uri' => 'https://github.com/asciidoctor/asciidoctor'
23
23
  }
24
24
 
@@ -74,10 +74,10 @@ code{font-family:"Droid Sans Mono","DejaVu Sans Mono",monospace;font-weight:400;
74
74
  ul,ol,dl{line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}
75
75
  ul,ol{margin-left:1.5em}
76
76
  ul li ul,ul li ol{margin-left:1.25em;margin-bottom:0}
77
- ul.square li ul,ul.circle li ul,ul.disc li ul{list-style:inherit}
78
- ul.square{list-style-type:square}
79
77
  ul.circle{list-style-type:circle}
80
78
  ul.disc{list-style-type:disc}
79
+ ul.square{list-style-type:square}
80
+ ul.circle ul:not([class]),ul.disc ul:not([class]),ul.square ul:not([class]){list-style:inherit}
81
81
  ol li ul,ol li ol{margin-left:1.25em;margin-bottom:0}
82
82
  dl dt{margin-bottom:.3125em;font-weight:bold}
83
83
  dl dd{margin-bottom:1.25em}
@@ -123,7 +123,7 @@ class Block < AbstractBlock
123
123
  result.join LF
124
124
  end
125
125
  else
126
- logger.warn %(Unknown content model '#{@content_model}' for block: #{self}) unless @content_model == :empty
126
+ logger.warn %(unknown content model '#{@content_model}' for block: #{self}) unless @content_model == :empty
127
127
  nil
128
128
  end
129
129
  end
@@ -19,7 +19,7 @@ module Asciidoctor
19
19
  when Options
20
20
  @options = first_option
21
21
  when ::Hash
22
- @options = Options.new options
22
+ @options = Options.new first_option
23
23
  else
24
24
  if ::Integer === (result = Options.parse! options)
25
25
  @code = result
@@ -85,7 +85,11 @@ module Asciidoctor
85
85
  'this attribute takes precedence over the same attribute defined in the source document',
86
86
  'unless either the name or value ends in @ (i.e., name@=value or name=value@)') do |attr|
87
87
  next if (attr = attr.rstrip).empty? || attr == '='
88
- attr = attr.encode UTF_8 unless attr.encoding == UTF_8
88
+ begin
89
+ attr = attr.encode UTF_8
90
+ rescue ::EncodingError
91
+ attr = attr.force_encoding UTF_8
92
+ end unless attr.encoding == UTF_8
89
93
  name, _, val = attr.partition '='
90
94
  self[:attributes][name] = val
91
95
  end
@@ -257,6 +257,7 @@ class Document < AbstractBlock
257
257
  @parent_document = parent_doc
258
258
  options[:base_dir] ||= parent_doc.base_dir
259
259
  options[:catalog_assets] = true if parent_doc.options[:catalog_assets]
260
+ options[:to_dir] = parent_doc.options[:to_dir] if parent_doc.options[:to_dir]
260
261
  @catalog = parent_doc.catalog.merge footnotes: []
261
262
  # QUESTION should we support setting attribute in parent document from nested document?
262
263
  @attribute_overrides = attr_overrides = (parent_doc.instance_variable_get :@attribute_overrides).merge parent_doc.attributes
@@ -513,7 +513,12 @@ module Extensions
513
513
  #
514
514
  # If the process method returns an instance of Block, the content model of that
515
515
  # Block is :compound, and the Block contains at least one line, the parser will
516
- # parse those lines into blocks an assigned them to the returned block.
516
+ # parse those lines into blocks and append them to the returned block.
517
+ #
518
+ # If your custom block can be applied to a paragraph or delimited block, and you
519
+ # want to preserve the content model of the input, check whether the value of
520
+ # the cloaked-context attribute is :paragraph. If it is, set the content model of
521
+ # the returned block to :simple. Otherwise, set the content model to :compound.
517
522
  #
518
523
  # AsciiDoc example:
519
524
  #
@@ -716,6 +721,7 @@ module Extensions
716
721
 
717
722
  def initialize groups = {}
718
723
  @groups = groups
724
+ reset
719
725
  @preprocessor_extensions = @tree_processor_extensions = @postprocessor_extensions = @include_processor_extensions = @docinfo_processor_extensions = @block_extensions = @block_macro_extensions = @inline_macro_extensions = nil
720
726
  @document = nil
721
727
  end
@@ -727,6 +733,7 @@ module Extensions
727
733
  #
728
734
  # Returns the instance of this [Registry].
729
735
  def activate document
736
+ reset if @document
730
737
  @document = document
731
738
  unless (ext_groups = Extensions.groups.values + @groups.values).empty?
732
739
  ext_groups.each do |group|
@@ -1345,7 +1352,7 @@ module Extensions
1345
1352
  yield processor
1346
1353
  end
1347
1354
  unless processor.process_block_given?
1348
- raise ::ArgumentError, %(No block specified to process #{kind_name} extension at #{block.source_location})
1355
+ raise ::NoMethodError, %(No block specified to process #{kind_name} extension at #{block.source_location.join ':'})
1349
1356
  end
1350
1357
  processor.freeze
1351
1358
  extension = ProcessorExtension.new kind, processor
@@ -1389,10 +1396,10 @@ module Extensions
1389
1396
  yield processor
1390
1397
  end
1391
1398
  unless (name = as_symbol processor.name)
1392
- raise ::ArgumentError, %(No name specified for #{kind_name} extension at #{block.source_location})
1399
+ raise ::ArgumentError, %(No name specified for #{kind_name} extension at #{block.source_location.join ':'})
1393
1400
  end
1394
1401
  unless processor.process_block_given?
1395
- raise ::NoMethodError, %(No block specified to process #{kind_name} extension at #{block.source_location})
1402
+ raise ::NoMethodError, %(No block specified to process #{kind_name} extension at #{block.source_location.join ':'})
1396
1403
  end
1397
1404
  processor.freeze
1398
1405
  kind_store[name] = ProcessorExtension.new kind, processor
@@ -1424,6 +1431,11 @@ module Extensions
1424
1431
  end
1425
1432
  end
1426
1433
 
1434
+ def reset
1435
+ @preprocessor_extensions = @tree_processor_extensions = @postprocessor_extensions = @include_processor_extensions = @docinfo_processor_extensions = @block_extensions = @block_macro_extensions = @inline_macro_extensions = nil
1436
+ @document = nil
1437
+ end
1438
+
1427
1439
  def resolve_args args, expect
1428
1440
  opts = ::Hash === args[-1] ? args.pop : {}
1429
1441
  return opts if expect == 1
@@ -1528,7 +1540,7 @@ module Extensions
1528
1540
  #
1529
1541
  # Returns nothing
1530
1542
  def unregister *names
1531
- names.each {|group| @groups.delete group.to_sym }
1543
+ names.each_with_object(groups) {|group, catalog| catalog.delete group.to_sym }
1532
1544
  nil
1533
1545
  end
1534
1546
  end
@@ -1052,9 +1052,9 @@ class Parser
1052
1052
  attributes.delete('style')
1053
1053
  if (block = extension.process_method[parent, block_reader || (Reader.new lines), attributes.merge]) && block != parent
1054
1054
  attributes.replace block.attributes
1055
- # FIXME if the content model is set to compound, but we only have simple in this context, then
1056
- # forcefully set the content_model to simple to prevent parsing blocks from children
1057
- # TODO document this behavior!!
1055
+ # NOTE an extension can change the content model from :simple to :compound. It's up to the extension
1056
+ # to decide which one to use. The extension can consult the cloaked-context attribute to determine
1057
+ # if the input is a paragraph or delimited block.
1058
1058
  if block.content_model == :compound && Block === block && !(lines = block.lines).empty?
1059
1059
  content_model = :compound
1060
1060
  block_reader = Reader.new lines
@@ -690,7 +690,7 @@ class PreprocessorReader < Reader
690
690
  # only process lines in AsciiDoc files
691
691
  if (@process_lines = file.end_with?(*ASCIIDOC_EXTENSIONS.keys))
692
692
  # NOTE registering the include with a nil value tracks it while not making it visible to interdocument xrefs
693
- @includes[path.slice 0, (path.rindex '.')] = attributes['partial-option'] ? nil : true
693
+ @includes[path.slice 0, (path.rindex '.')] ||= attributes['partial-option'] ? nil : true
694
694
  end
695
695
  else
696
696
  @dir = '.'
@@ -698,7 +698,7 @@ class PreprocessorReader < Reader
698
698
  @process_lines = true
699
699
  if (@path = path)
700
700
  # NOTE registering the include with a nil value tracks it while not making it visible to interdocument xrefs
701
- @includes[Helpers.rootname path] = attributes['partial-option'] ? nil : true
701
+ @includes[Helpers.rootname path] ||= attributes['partial-option'] ? nil : true
702
702
  else
703
703
  @path = '<stdin>'
704
704
  end
@@ -1035,7 +1035,7 @@ class PreprocessorReader < Reader
1035
1035
  # however, be friendly and at least make it a link to the source document
1036
1036
  elsif doc.safe >= SafeMode::SECURE
1037
1037
  # FIXME we don't want to use a link macro if we are in a verbatim context
1038
- replace_next_line %(link:#{expanded_target}[])
1038
+ replace_next_line %(link:#{expanded_target}[role=include])
1039
1039
  elsif @maxdepth
1040
1040
  if @include_stack.size >= @maxdepth[:curr]
1041
1041
  logger.error message_with_context %(maximum include depth of #{@maxdepth[:rel]} exceeded), source_location: cursor
@@ -1232,7 +1232,7 @@ class PreprocessorReader < Reader
1232
1232
  def resolve_include_path target, attrlist, attributes
1233
1233
  doc = @document
1234
1234
  if (Helpers.uriish? target) || (::String === @dir ? nil : (target = %(#{@dir}/#{target})))
1235
- return replace_next_line %(link:#{target}[#{attrlist}]) unless doc.attr? 'allow-uri-read'
1235
+ return replace_next_line %(link:#{target}[role=include]) unless doc.attr? 'allow-uri-read'
1236
1236
  if doc.attr? 'cache-uri'
1237
1237
  # caching requires the open-uri-cached gem to be installed
1238
1238
  # processing will be automatically aborted if these libraries can't be opened
@@ -1280,27 +1280,22 @@ class PreprocessorReader < Reader
1280
1280
 
1281
1281
  # Private: Ignore front-matter, commonly used in static site generators
1282
1282
  def skip_front_matter! data, increment_linenos = true
1283
- front_matter = nil
1284
- if data[0] == '---'
1285
- original_data = data.drop 0
1286
- data.shift
1287
- front_matter = []
1283
+ return unless (delim = data[0]) == '---'
1284
+ original_data = data.drop 0
1285
+ data.shift
1286
+ front_matter = []
1287
+ @lineno += 1 if increment_linenos
1288
+ until (eof = data.empty?) || data[0] == delim
1289
+ front_matter << data.shift
1288
1290
  @lineno += 1 if increment_linenos
1289
- while !data.empty? && data[0] != '---'
1290
- front_matter << data.shift
1291
- @lineno += 1 if increment_linenos
1292
- end
1293
-
1294
- if data.empty?
1295
- data.unshift(*original_data)
1296
- @lineno = 0 if increment_linenos
1297
- front_matter = nil
1298
- else
1299
- data.shift
1300
- @lineno += 1 if increment_linenos
1301
- end
1302
1291
  end
1303
-
1292
+ if eof
1293
+ data.unshift(*original_data)
1294
+ @lineno -= original_data.size if increment_linenos
1295
+ return
1296
+ end
1297
+ data.shift
1298
+ @lineno += 1 if increment_linenos
1304
1299
  front_matter
1305
1300
  end
1306
1301
 
@@ -716,7 +716,11 @@ module Asciidoctor
716
716
  #
717
717
  # not c:/sample.adoc or c:\sample.adoc
718
718
  #
719
- UriSniffRx = %r(^#{CG_ALPHA}[#{CC_ALNUM}.+-]+:/{0,2})
719
+ if RUBY_ENGINE == 'opal'
720
+ UriSniffRx = %r(^#{CG_ALPHA}[#{CC_ALNUM}.+-]+:/{0,2})
721
+ else
722
+ UriSniffRx = %r(\A#{CG_ALPHA}[#{CC_ALNUM}.+-]+:/{0,2})
723
+ end
720
724
 
721
725
  # Detects XML tags
722
726
  XmlSanitizeRx = /<[^>]+>/
@@ -25,7 +25,7 @@ class SyntaxHighlighter::HighlightJsAdapter < SyntaxHighlighter::Base
25
25
  #{(doc.attr? 'highlightjs-languages') ? ((doc.attr 'highlightjs-languages').split ',').map {|lang| %[<script src="#{base_url}/languages/#{lang.lstrip}.min.js"></script>\n] }.join : ''}<script>
26
26
  if (!hljs.initHighlighting.called) {
27
27
  hljs.initHighlighting.called = true
28
- ;[].slice.call(document.querySelectorAll('pre.highlight > code')).forEach(function (el) { hljs.highlightBlock(el) })
28
+ ;[].slice.call(document.querySelectorAll('pre.highlight > code[data-lang]')).forEach(function (el) { hljs.highlightBlock(el) })
29
29
  }
30
30
  </script>)
31
31
  end
@@ -1,4 +1,4 @@
1
1
  # frozen_string_literal: true
2
2
  module Asciidoctor
3
- VERSION = '2.0.17'
3
+ VERSION = '2.0.18'
4
4
  end
data/man/asciidoctor.1 CHANGED
@@ -252,15 +252,15 @@ Jason Porter wrote the first implementation of the CLI interface provided by thi
252
252
  \fBProject documentation:\fP \c
253
253
  .URL "https://docs.asciidoctor.org" "" ""
254
254
  .sp
255
+ \fBCommunity chat:\fP \c
256
+ .URL "https://chat.asciidoctor.org" "" ""
257
+ .sp
255
258
  \fBSource repository:\fP \c
256
259
  .URL "https://github.com/asciidoctor/asciidoctor" "" ""
257
260
  .sp
258
- \fBCommunity chat:\fP \c
259
- .URL "https://asciidoctor.zulipchat.com" "" ""
260
- .sp
261
- \fBDiscussion list:\fP \c
261
+ \fBMailing list archive:\fP \c
262
262
  .URL "https://discuss.asciidoctor.org" "" ""
263
263
  .SH "COPYING"
264
264
  .sp
265
265
  Copyright (C) 2012\-present Dan Allen, Sarah White, Ryan Waldron, and the individual contributors to Asciidoctor.
266
- Use of this software is granted under the terms of the MIT License.
266
+ Use of this software is granted under the terms of the MIT License.
data/man/asciidoctor.adoc CHANGED
@@ -46,10 +46,11 @@ If _FILE_ is _-_ then the AsciiDoc source is read from standard input.
46
46
  *-a, --attribute*=_ATTRIBUTE_::
47
47
  Define, override, or unset a document attribute.
48
48
  Command-line attributes take precedence over attributes defined in the source file unless either the name or value ends in _@_.
49
+ No substitutions are applied to the value.
49
50
  +
50
51
  _ATTRIBUTE_ is normally formatted as a key-value pair, in the form _NAME=VALUE_.
51
52
  Alternate forms are _NAME_ (where the _VALUE_ defaults to an empty string), _NAME!_ (unsets the _NAME_ attribute), and _NAME=VALUE@_ (or _NAME@=VALUE_) (where _VALUE_ does not override the _NAME_ attribute if it's already defined in the source document).
52
- Values containing spaces should be enclosed in quotes.
53
+ A value containing spaces must be enclosed in quotes, in the form _NAME="VALUE WITH SPACES"_.
53
54
  +
54
55
  This option may be specified more than once.
55
56
 
@@ -190,11 +191,11 @@ Jason Porter wrote the first implementation of the CLI interface provided by thi
190
191
 
191
192
  *Project documentation:* https://docs.asciidoctor.org
192
193
 
193
- *Source repository:* https://github.com/asciidoctor/asciidoctor
194
+ *Community chat:* https://chat.asciidoctor.org
194
195
 
195
- *Community chat:* https://asciidoctor.zulipchat.com
196
+ *Source repository:* https://github.com/asciidoctor/asciidoctor
196
197
 
197
- *Discussion list:* https://discuss.asciidoctor.org
198
+ *Mailing list archive:* https://discuss.asciidoctor.org
198
199
 
199
200
  == Copying
200
201
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: asciidoctor
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.17
4
+ version: 2.0.18
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dan Allen
@@ -13,7 +13,7 @@ authors:
13
13
  autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
- date: 2022-01-06 00:00:00.000000000 Z
16
+ date: 2018-03-20 00:00:00.000000000 Z
17
17
  dependencies:
18
18
  - !ruby/object:Gem::Dependency
19
19
  name: concurrent-ruby
@@ -254,7 +254,7 @@ licenses:
254
254
  metadata:
255
255
  bug_tracker_uri: https://github.com/asciidoctor/asciidoctor/issues
256
256
  changelog_uri: https://github.com/asciidoctor/asciidoctor/blob/HEAD/CHANGELOG.adoc
257
- mailing_list_uri: http://discuss.asciidoctor.org
257
+ mailing_list_uri: https://chat.asciidoctor.org
258
258
  source_code_uri: https://github.com/asciidoctor/asciidoctor
259
259
  post_install_message:
260
260
  rdoc_options: []
@@ -271,7 +271,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
271
271
  - !ruby/object:Gem::Version
272
272
  version: '0'
273
273
  requirements: []
274
- rubygems_version: 3.2.32
274
+ rubygems_version: 3.3.7
275
275
  signing_key:
276
276
  specification_version: 4
277
277
  summary: An implementation of the AsciiDoc text processor and publishing toolchain