honeybadger 5.3.0 → 5.4.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.
Files changed (513) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +7 -0
  3. data/lib/honeybadger/plugins/active_job.rb +28 -0
  4. data/lib/honeybadger/version.rb +1 -1
  5. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/deprecate.rb +14 -0
  6. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/ast_lookup.rb +14 -6
  7. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/console.rb +7 -2
  8. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/json.rb +1 -1
  9. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/message_builder.rb +14 -5
  10. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/pretty.rb +6 -2
  11. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/proto_world.rb +17 -22
  12. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/registry_and_more.rb +7 -4
  13. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/rake/task.rb +1 -5
  14. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/runtime/for_programming_languages.rb +1 -2
  15. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/runtime/meta_message_builder.rb +2 -2
  16. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/runtime/user_interface.rb +2 -2
  17. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/event.rb +1 -1
  18. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/argument.rb +7 -3
  19. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/ast.rb +24 -59
  20. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/combinatorial_generated_expression_factory.rb +6 -13
  21. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/cucumber_expression.rb +9 -11
  22. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/cucumber_expression_generator.rb +11 -15
  23. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/cucumber_expression_parser.rb +37 -53
  24. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/cucumber_expression_tokenizer.rb +13 -18
  25. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/lib/cucumber/cucumber_expressions/errors.rb +232 -0
  26. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/expression_factory.rb +2 -0
  27. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/generated_expression.rb +2 -0
  28. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/group.rb +2 -0
  29. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/group_builder.rb +3 -1
  30. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/parameter_type.rb +13 -23
  31. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/parameter_type_matcher.rb +8 -6
  32. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/parameter_type_registry.rb +27 -22
  33. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/regular_expression.rb +3 -2
  34. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/lib/cucumber/cucumber_expressions/tree_regexp.rb +8 -7
  35. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/spec/cucumber/cucumber_expressions/argument_spec.rb +4 -2
  36. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/spec/cucumber/cucumber_expressions/combinatorial_generated_expression_factory_test.rb +8 -7
  37. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/spec/cucumber/cucumber_expressions/cucumber_expression_generator_spec.rb +234 -0
  38. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/spec/cucumber/cucumber_expressions/cucumber_expression_parser_spec.rb +2 -0
  39. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/spec/cucumber/cucumber_expressions/cucumber_expression_spec.rb +178 -0
  40. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/spec/cucumber/cucumber_expressions/cucumber_expression_tokenizer_spec.rb +3 -1
  41. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/spec/cucumber/cucumber_expressions/cucumber_expression_transformation_spec.rb +2 -0
  42. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/spec/cucumber/cucumber_expressions/custom_parameter_type_spec.rb +216 -0
  43. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/spec/cucumber/cucumber_expressions/expression_factory_spec.rb +2 -0
  44. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/spec/cucumber/cucumber_expressions/parameter_type_registry_spec.rb +81 -0
  45. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/spec/cucumber/cucumber_expressions/parameter_type_spec.rb +5 -2
  46. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-17.0.1/spec/cucumber/cucumber_expressions/regular_expression_spec.rb +93 -0
  47. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-cucumber-expressions-17.0.1}/spec/cucumber/cucumber_expressions/tree_regexp_spec.rb +23 -22
  48. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/lib/cucumber/messages.deserializers.rb +1 -0
  49. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/lib/cucumber/messages.dtos.rb +5 -1
  50. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-tag-expressions-4.1.0 → cucumber-tag-expressions-5.0.6}/lib/cucumber/tag_expressions/expressions.rb +21 -2
  51. data/vendor/bundle/ruby/3.2.0/gems/{cucumber-tag-expressions-4.1.0 → cucumber-tag-expressions-5.0.6}/lib/cucumber/tag_expressions/parser.rb +48 -48
  52. data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-5.0.6/spec/errors_spec.rb +13 -0
  53. data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-5.0.6/spec/evaluations_spec.rb +17 -0
  54. data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-5.0.6/spec/parsing_spec.rb +14 -0
  55. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/device/date_rolling_log_file.rb +1 -1
  56. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/device/log_file.rb +1 -1
  57. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/device/multi.rb +1 -1
  58. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/device/null.rb +1 -1
  59. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/device/rolling_log_file.rb +1 -1
  60. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/device/size_rolling_log_file.rb +1 -1
  61. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/device/writer.rb +1 -1
  62. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/device.rb +1 -1
  63. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/date_time_formatter.rb +1 -1
  64. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/exception_formatter.rb +2 -2
  65. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/id_formatter.rb +1 -1
  66. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/inspect_formatter.rb +1 -1
  67. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/object_formatter.rb +1 -1
  68. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/pretty_print_formatter.rb +1 -1
  69. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/string_formatter.rb +1 -1
  70. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/strip_formatter.rb +1 -1
  71. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/structured_formatter.rb +1 -1
  72. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter/truncate_formatter.rb +1 -1
  73. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/formatter.rb +1 -1
  74. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/log_entry.rb +2 -2
  75. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/logger.rb +10 -6
  76. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/rack/context.rb +1 -1
  77. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/rack/request_id.rb +1 -1
  78. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/rack/unit_of_work.rb +1 -1
  79. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/rack.rb +1 -1
  80. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/severity.rb +13 -1
  81. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/template.rb +2 -2
  82. data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack.rb +2 -1
  83. data/vendor/bundle/ruby/3.2.0/gems/{public_suffix-5.0.3 → public_suffix-5.0.4}/lib/public_suffix/version.rb +1 -1
  84. data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/application.rb +26 -2
  85. data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/dsl_definition.rb +1 -1
  86. data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/file_task.rb +8 -4
  87. data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/file_utils.rb +0 -2
  88. data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/packagetask.rb +1 -1
  89. data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/task.rb +2 -2
  90. data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/thread_pool.rb +1 -1
  91. data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/version.rb +1 -1
  92. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/alias.rb +111 -0
  93. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/anon_class.rb +10 -0
  94. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/any_method.rb +379 -0
  95. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/attr.rb +175 -0
  96. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/class_module.rb +801 -0
  97. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/code_object.rb +421 -0
  98. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/code_objects.rb +5 -0
  99. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/comment.rb +229 -0
  100. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/constant.rb +186 -0
  101. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/context/section.rb +233 -0
  102. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/context.rb +1264 -0
  103. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/cross_reference.rb +225 -0
  104. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/encoding.rb +131 -0
  105. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/erb_partial.rb +18 -0
  106. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/erbio.rb +37 -0
  107. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/extend.rb +9 -0
  108. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/darkfish.rb +786 -0
  109. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/json_index.rb +300 -0
  110. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/markup.rb +159 -0
  111. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/pot/message_extractor.rb +68 -0
  112. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/pot/po.rb +84 -0
  113. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/pot/po_entry.rb +141 -0
  114. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/pot.rb +98 -0
  115. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator/ri.rb +30 -0
  116. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/generator.rb +51 -0
  117. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ghost_method.rb +6 -0
  118. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/i18n/locale.rb +102 -0
  119. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/i18n/text.rb +126 -0
  120. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/i18n.rb +10 -0
  121. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/include.rb +9 -0
  122. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/known_classes.rb +74 -0
  123. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markdown/entities.rb +2131 -0
  124. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markdown/literals.rb +474 -0
  125. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markdown.rb +16783 -0
  126. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/attr_changer.rb +22 -0
  127. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/attr_span.rb +35 -0
  128. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/attribute_manager.rb +402 -0
  129. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/attributes.rb +70 -0
  130. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/blank_line.rb +27 -0
  131. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/block_quote.rb +14 -0
  132. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/document.rb +164 -0
  133. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/formatter.rb +265 -0
  134. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/hard_break.rb +31 -0
  135. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/heading.rb +78 -0
  136. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/include.rb +42 -0
  137. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/indented_paragraph.rb +47 -0
  138. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/list.rb +101 -0
  139. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/list_item.rb +99 -0
  140. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/paragraph.rb +28 -0
  141. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/parser.rb +581 -0
  142. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/pre_process.rb +298 -0
  143. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/raw.rb +69 -0
  144. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/regexp_handling.rb +40 -0
  145. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/rule.rb +20 -0
  146. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/table.rb +47 -0
  147. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_ansi.rb +93 -0
  148. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_bs.rb +77 -0
  149. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_html.rb +449 -0
  150. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_html_crossref.rb +175 -0
  151. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_html_snippet.rb +284 -0
  152. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_joined_paragraph.rb +46 -0
  153. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_label.rb +74 -0
  154. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_markdown.rb +191 -0
  155. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_rdoc.rb +344 -0
  156. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_table_of_contents.rb +88 -0
  157. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_test.rb +69 -0
  158. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/to_tt_only.rb +120 -0
  159. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup/verbatim.rb +83 -0
  160. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/markup.rb +235 -0
  161. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/meta_method.rb +6 -0
  162. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/method_attr.rb +418 -0
  163. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/mixin.rb +120 -0
  164. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/normal_class.rb +92 -0
  165. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/normal_module.rb +73 -0
  166. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/options.rb +1330 -0
  167. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/c.rb +1225 -0
  168. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/changelog.rb +334 -0
  169. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/markdown.rb +22 -0
  170. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/rd.rb +22 -0
  171. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/ripper_state_lex.rb +590 -0
  172. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/ruby.rb +2360 -0
  173. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/ruby_tools.rb +165 -0
  174. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/simple.rb +61 -0
  175. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser/text.rb +11 -0
  176. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/parser.rb +294 -0
  177. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rd/block_parser.rb +1710 -0
  178. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rd/inline.rb +71 -0
  179. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rd/inline_parser.rb +1210 -0
  180. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rd.rb +99 -0
  181. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rdoc.rb +563 -0
  182. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/require.rb +51 -0
  183. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri/driver.rb +1513 -0
  184. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri/formatter.rb +6 -0
  185. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri/paths.rb +171 -0
  186. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri/store.rb +6 -0
  187. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri/task.rb +71 -0
  188. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/ri.rb +20 -0
  189. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/rubygems_hook.rb +248 -0
  190. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/servlet.rb +451 -0
  191. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/single_class.rb +30 -0
  192. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/stats/normal.rb +58 -0
  193. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/stats/quiet.rb +59 -0
  194. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/stats/verbose.rb +44 -0
  195. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/stats.rb +461 -0
  196. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/store.rb +979 -0
  197. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/task.rb +355 -0
  198. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/text.rb +312 -0
  199. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/token_stream.rb +118 -0
  200. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/tom_doc.rb +263 -0
  201. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/top_level.rb +288 -0
  202. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc/version.rb +10 -0
  203. data/vendor/bundle/ruby/3.2.0/gems/rdoc-6.6.0/lib/rdoc.rb +201 -0
  204. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.6/lib/sshkit/version.rb +3 -0
  205. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.1.0/ext/stringio/extconf.rb +7 -0
  206. metadata +478 -386
  207. data/vendor/bundle/ruby/3.2.0/gems/cucumber-9.0.2/lib/cucumber/deprecate.rb +0 -55
  208. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-16.1.2/lib/cucumber/cucumber_expressions/errors.rb +0 -214
  209. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-16.1.2/spec/cucumber/cucumber_expressions/cucumber_expression_generator_spec.rb +0 -231
  210. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-16.1.2/spec/cucumber/cucumber_expressions/cucumber_expression_spec.rb +0 -181
  211. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-16.1.2/spec/cucumber/cucumber_expressions/custom_parameter_type_spec.rb +0 -197
  212. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-16.1.2/spec/cucumber/cucumber_expressions/parameter_type_registry_spec.rb +0 -86
  213. data/vendor/bundle/ruby/3.2.0/gems/cucumber-cucumber-expressions-16.1.2/spec/cucumber/cucumber_expressions/regular_expression_spec.rb +0 -84
  214. data/vendor/bundle/ruby/3.2.0/gems/cucumber-messages-21.0.1/spec/capture_warnings.rb +0 -74
  215. data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-4.1.0/spec/capture_warnings.rb +0 -74
  216. data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-4.1.0/spec/expressions_spec.rb +0 -84
  217. data/vendor/bundle/ruby/3.2.0/gems/cucumber-tag-expressions-4.1.0/spec/parser_spec.rb +0 -50
  218. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/acceptance_test.rb +0 -131
  219. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/benchmarks/bm_find.rb +0 -66
  220. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/benchmarks/bm_find_all.rb +0 -102
  221. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/benchmarks/bm_names.rb +0 -91
  222. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/benchmarks/bm_select.rb +0 -26
  223. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/benchmarks/bm_select_incremental.rb +0 -25
  224. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/benchmarks/bm_valid.rb +0 -101
  225. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/profilers/domain_profiler.rb +0 -12
  226. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/profilers/find_profiler.rb +0 -12
  227. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/profilers/find_profiler_jp.rb +0 -12
  228. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/profilers/initialization_profiler.rb +0 -11
  229. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/profilers/list_profsize.rb +0 -11
  230. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/profilers/object_binsize.rb +0 -57
  231. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/psl_test.rb +0 -52
  232. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/test_helper.rb +0 -10
  233. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/unit/domain_test.rb +0 -106
  234. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/unit/errors_test.rb +0 -25
  235. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/unit/list_test.rb +0 -241
  236. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/unit/public_suffix_test.rb +0 -188
  237. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-5.0.3/test/unit/rule_test.rb +0 -222
  238. data/vendor/bundle/ruby/3.2.0/gems/sshkit-1.21.5/lib/sshkit/version.rb +0 -3
  239. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.0.8/ext/stringio/extconf.rb +0 -3
  240. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/cucumber.rb +0 -0
  241. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/cucumber_mixin.rb +0 -0
  242. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/cucumber_rails.rb +0 -0
  243. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/cucumber_rails_rspec.rb +0 -0
  244. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/cucumber_rails_rspec2.rb +0 -0
  245. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/cucumber_rspec.rb +0 -0
  246. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/cucumber_rspec2.rb +0 -0
  247. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/autotest/discover.rb +0 -0
  248. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/cli/configuration.rb +0 -0
  249. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/cli/main.rb +0 -0
  250. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/cli/options.rb +0 -0
  251. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/cli/profile_loader.rb +0 -0
  252. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/cli/rerun_file.rb +0 -0
  253. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/configuration.rb +0 -0
  254. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/constantize.rb +0 -0
  255. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/encoding.rb +0 -0
  256. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/errors.rb +0 -0
  257. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/envelope.rb +0 -0
  258. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/gherkin_source_parsed.rb +0 -0
  259. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/gherkin_source_read.rb +0 -0
  260. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/hook_test_step_created.rb +0 -0
  261. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/step_activated.rb +0 -0
  262. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/step_definition_registered.rb +0 -0
  263. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/test_case_created.rb +0 -0
  264. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/test_case_finished.rb +0 -0
  265. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/test_case_ready.rb +0 -0
  266. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/test_case_started.rb +0 -0
  267. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/test_run_finished.rb +0 -0
  268. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/test_run_started.rb +0 -0
  269. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/test_step_created.rb +0 -0
  270. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/test_step_finished.rb +0 -0
  271. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/test_step_started.rb +0 -0
  272. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events/undefined_parameter_type.rb +0 -0
  273. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/events.rb +0 -0
  274. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/file_specs.rb +0 -0
  275. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/activate_steps.rb +0 -0
  276. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/apply_after_hooks.rb +0 -0
  277. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/apply_after_step_hooks.rb +0 -0
  278. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/apply_around_hooks.rb +0 -0
  279. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/apply_before_hooks.rb +0 -0
  280. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/broadcast_test_case_ready_event.rb +0 -0
  281. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/broadcast_test_run_started_event.rb +0 -0
  282. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/gated_receiver.rb +0 -0
  283. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/prepare_world.rb +0 -0
  284. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/quit.rb +0 -0
  285. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/randomizer.rb +0 -0
  286. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/retry.rb +0 -0
  287. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/tag_limits/test_case_index.rb +0 -0
  288. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/tag_limits/verifier.rb +0 -0
  289. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters/tag_limits.rb +0 -0
  290. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/filters.rb +0 -0
  291. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/ansicolor.rb +0 -0
  292. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/backtrace_filter.rb +0 -0
  293. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/console_counts.rb +0 -0
  294. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/console_issues.rb +0 -0
  295. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/duration.rb +0 -0
  296. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/duration_extractor.rb +0 -0
  297. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/errors.rb +0 -0
  298. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/fail_fast.rb +0 -0
  299. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/fanout.rb +0 -0
  300. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/html.rb +0 -0
  301. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/http_io.rb +0 -0
  302. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/ignore_missing_messages.rb +0 -0
  303. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/interceptor.rb +0 -0
  304. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/io.rb +0 -0
  305. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/junit.rb +0 -0
  306. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/message.rb +0 -0
  307. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/progress.rb +0 -0
  308. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/publish_banner_printer.rb +0 -0
  309. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/query/hook_by_test_step.rb +0 -0
  310. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/query/pickle_by_test.rb +0 -0
  311. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/query/pickle_step_by_test_step.rb +0 -0
  312. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/query/step_definitions_by_test_step.rb +0 -0
  313. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/query/test_case_started_by_test_case.rb +0 -0
  314. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/rerun.rb +0 -0
  315. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/stepdefs.rb +0 -0
  316. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/steps.rb +0 -0
  317. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/summary.rb +0 -0
  318. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/unicode.rb +0 -0
  319. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/url_reporter.rb +0 -0
  320. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/formatter/usage.rb +0 -0
  321. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/gherkin/data_table_parser.rb +0 -0
  322. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/gherkin/formatter/ansi_escapes.rb +0 -0
  323. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/gherkin/formatter/escaping.rb +0 -0
  324. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/gherkin/i18n.rb +0 -0
  325. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/gherkin/steps_parser.rb +0 -0
  326. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/dsl.rb +0 -0
  327. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/hook.rb +0 -0
  328. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/invoke_in_world.rb +0 -0
  329. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/registry_wrapper.rb +0 -0
  330. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/snippet.rb +0 -0
  331. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/step_definition.rb +0 -0
  332. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/glue/world_factory.rb +0 -0
  333. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/hooks.rb +0 -0
  334. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/load_path.rb +0 -0
  335. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/multiline_argument/data_table/diff_matrices.rb +0 -0
  336. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/multiline_argument/data_table.rb +0 -0
  337. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/multiline_argument/doc_string.rb +0 -0
  338. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/multiline_argument.rb +0 -0
  339. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/platform.rb +0 -0
  340. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/project_initializer.rb +0 -0
  341. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/rspec/disable_option_parser.rb +0 -0
  342. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/rspec/doubles.rb +0 -0
  343. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/running_test_case.rb +0 -0
  344. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/runtime/after_hooks.rb +0 -0
  345. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/runtime/before_hooks.rb +0 -0
  346. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/runtime/step_hooks.rb +0 -0
  347. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/runtime/support_code.rb +0 -0
  348. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/runtime.rb +0 -0
  349. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/step_definition_light.rb +0 -0
  350. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/step_definitions.rb +0 -0
  351. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/step_match.rb +0 -0
  352. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/step_match_search.rb +0 -0
  353. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/term/ansicolor.rb +0 -0
  354. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/term/banner.rb +0 -0
  355. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber/unit.rb +0 -0
  356. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/cucumber.rb +0 -0
  357. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-9.0.2 → cucumber-9.1.0}/lib/simplecov_setup.rb +0 -0
  358. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/compiler.rb +0 -0
  359. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/event_bus.rb +0 -0
  360. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/events.rb +0 -0
  361. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/filter.rb +0 -0
  362. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/gherkin/document.rb +0 -0
  363. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/gherkin/parser.rb +0 -0
  364. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/gherkin/writer/helpers.rb +0 -0
  365. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/gherkin/writer.rb +0 -0
  366. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/platform.rb +0 -0
  367. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/report/summary.rb +0 -0
  368. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/action.rb +0 -0
  369. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/around_hook.rb +0 -0
  370. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/case.rb +0 -0
  371. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/data_table.rb +0 -0
  372. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/doc_string.rb +0 -0
  373. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/empty_multiline_argument.rb +0 -0
  374. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/filters/activate_steps_for_self_test.rb +0 -0
  375. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/filters/locations_filter.rb +0 -0
  376. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/filters/name_filter.rb +0 -0
  377. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/filters/tag_filter.rb +0 -0
  378. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/filters.rb +0 -0
  379. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/location.rb +0 -0
  380. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/result.rb +0 -0
  381. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/runner.rb +0 -0
  382. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/step.rb +0 -0
  383. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/tag.rb +0 -0
  384. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core/test/timer.rb +0 -0
  385. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-core-11.1.0 → cucumber-core-12.0.0}/lib/cucumber/core.rb +0 -0
  386. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/lib/cucumber/messages/id_generator.rb +0 -0
  387. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/lib/cucumber/messages/message/deserialization.rb +0 -0
  388. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/lib/cucumber/messages/message/serialization.rb +0 -0
  389. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/lib/cucumber/messages/message/utils.rb +0 -0
  390. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/lib/cucumber/messages/message.rb +0 -0
  391. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/lib/cucumber/messages/ndjson_to_message_enumerator.rb +0 -0
  392. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/lib/cucumber/messages/time_conversion.rb +0 -0
  393. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/lib/cucumber/messages.rb +0 -0
  394. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-cucumber-expressions-16.1.2 → cucumber-messages-22.0.0}/spec/capture_warnings.rb +0 -0
  395. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/spec/cucumber/messages/acceptance_spec.rb +0 -0
  396. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/spec/cucumber/messages/id_generator_spec.rb +0 -0
  397. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/spec/cucumber/messages/message/deserialization_spec.rb +0 -0
  398. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/spec/cucumber/messages/message/dummy_messages.rb +0 -0
  399. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/spec/cucumber/messages/message/serialization_spec.rb +0 -0
  400. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/spec/cucumber/messages/message/utils_spec.rb +0 -0
  401. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/spec/cucumber/messages/ndjson_serialization_spec.rb +0 -0
  402. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/spec/cucumber/messages/time_conversion_spec.rb +0 -0
  403. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-messages-21.0.1 → cucumber-messages-22.0.0}/spec/cucumber/messages/version_spec.rb +0 -0
  404. /data/vendor/bundle/ruby/3.2.0/gems/{cucumber-tag-expressions-4.1.0 → cucumber-tag-expressions-5.0.6}/lib/cucumber/tag_expressions.rb +0 -0
  405. /data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/context.rb +0 -0
  406. /data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/tag_formatter.rb +0 -0
  407. /data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/tagged_logger_support.rb +0 -0
  408. /data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/tagged_logging.rb +0 -0
  409. /data/vendor/bundle/ruby/3.2.0/gems/{lumberjack-1.2.9 → lumberjack-1.2.10}/lib/lumberjack/tags.rb +0 -0
  410. /data/vendor/bundle/ruby/3.2.0/gems/{public_suffix-5.0.3 → public_suffix-5.0.4}/lib/public_suffix/domain.rb +0 -0
  411. /data/vendor/bundle/ruby/3.2.0/gems/{public_suffix-5.0.3 → public_suffix-5.0.4}/lib/public_suffix/errors.rb +0 -0
  412. /data/vendor/bundle/ruby/3.2.0/gems/{public_suffix-5.0.3 → public_suffix-5.0.4}/lib/public_suffix/list.rb +0 -0
  413. /data/vendor/bundle/ruby/3.2.0/gems/{public_suffix-5.0.3 → public_suffix-5.0.4}/lib/public_suffix/rule.rb +0 -0
  414. /data/vendor/bundle/ruby/3.2.0/gems/{public_suffix-5.0.3 → public_suffix-5.0.4}/lib/public_suffix.rb +0 -0
  415. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/doc/jamis.rb +0 -0
  416. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/backtrace.rb +0 -0
  417. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/clean.rb +0 -0
  418. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/cloneable.rb +0 -0
  419. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/cpu_counter.rb +0 -0
  420. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/default_loader.rb +0 -0
  421. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/early_time.rb +0 -0
  422. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/ext/core.rb +0 -0
  423. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/ext/string.rb +0 -0
  424. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/file_creation_task.rb +0 -0
  425. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/file_list.rb +0 -0
  426. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/file_utils_ext.rb +0 -0
  427. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/invocation_chain.rb +0 -0
  428. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/invocation_exception_mixin.rb +0 -0
  429. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/late_time.rb +0 -0
  430. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/linked_list.rb +0 -0
  431. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/loaders/makefile.rb +0 -0
  432. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/multi_task.rb +0 -0
  433. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/name_space.rb +0 -0
  434. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/phony.rb +0 -0
  435. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/private_reader.rb +0 -0
  436. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/promise.rb +0 -0
  437. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/pseudo_status.rb +0 -0
  438. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/rake_module.rb +0 -0
  439. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/rake_test_loader.rb +0 -0
  440. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/rule_recursion_overflow_error.rb +0 -0
  441. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/scope.rb +0 -0
  442. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/task_argument_error.rb +0 -0
  443. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/task_arguments.rb +0 -0
  444. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/task_manager.rb +0 -0
  445. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/tasklib.rb +0 -0
  446. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/testtask.rb +0 -0
  447. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/thread_history_display.rb +0 -0
  448. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/trace_output.rb +0 -0
  449. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake/win32.rb +0 -0
  450. /data/vendor/bundle/ruby/3.2.0/gems/{rake-13.0.6 → rake-13.1.0}/lib/rake.rb +0 -0
  451. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/examples/simple_connection.rb +0 -0
  452. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/core_ext/array.rb +0 -0
  453. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/core_ext/hash.rb +0 -0
  454. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/all.rb +0 -0
  455. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/abstract.rb +0 -0
  456. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/connection_pool/cache.rb +0 -0
  457. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/connection_pool/nil_cache.rb +0 -0
  458. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/connection_pool.rb +0 -0
  459. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/local.rb +0 -0
  460. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/netssh/known_hosts.rb +0 -0
  461. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/netssh.rb +0 -0
  462. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/printer.rb +0 -0
  463. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/backends/skipper.rb +0 -0
  464. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/color.rb +0 -0
  465. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/command.rb +0 -0
  466. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/command_map.rb +0 -0
  467. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/configuration.rb +0 -0
  468. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/coordinator.rb +0 -0
  469. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/deprecation_logger.rb +0 -0
  470. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/dsl.rb +0 -0
  471. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/exception.rb +0 -0
  472. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/formatters/abstract.rb +0 -0
  473. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/formatters/black_hole.rb +0 -0
  474. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/formatters/dot.rb +0 -0
  475. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/formatters/pretty.rb +0 -0
  476. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/formatters/simple_text.rb +0 -0
  477. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/host.rb +0 -0
  478. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/log_message.rb +0 -0
  479. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/logger.rb +0 -0
  480. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/mapping_interaction_handler.rb +0 -0
  481. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/runners/abstract.rb +0 -0
  482. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/runners/group.rb +0 -0
  483. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/runners/null.rb +0 -0
  484. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/runners/parallel.rb +0 -0
  485. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit/runners/sequential.rb +0 -0
  486. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/lib/sshkit.rb +0 -0
  487. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/functional/backends/test_local.rb +0 -0
  488. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/functional/backends/test_netssh.rb +0 -0
  489. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/functional/test_ssh_server_comes_up_for_functional_tests.rb +0 -0
  490. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/helper.rb +0 -0
  491. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/support/vagrant_wrapper.rb +0 -0
  492. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/backends/test_abstract.rb +0 -0
  493. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/backends/test_connection_pool.rb +0 -0
  494. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/backends/test_local.rb +0 -0
  495. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/backends/test_netssh.rb +0 -0
  496. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/backends/test_printer.rb +0 -0
  497. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/formatters/test_custom.rb +0 -0
  498. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/formatters/test_dot.rb +0 -0
  499. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/formatters/test_pretty.rb +0 -0
  500. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/formatters/test_simple_text.rb +0 -0
  501. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/runners/test_group.rb +0 -0
  502. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/runners/test_parallel.rb +0 -0
  503. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/runners/test_sequential.rb +0 -0
  504. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_color.rb +0 -0
  505. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_command.rb +0 -0
  506. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_command_map.rb +0 -0
  507. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_configuration.rb +0 -0
  508. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_coordinator.rb +0 -0
  509. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_deprecation_logger.rb +0 -0
  510. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_dsl.rb +0 -0
  511. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_host.rb +0 -0
  512. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_logger.rb +0 -0
  513. /data/vendor/bundle/ruby/3.2.0/gems/{sshkit-1.21.5 → sshkit-1.21.6}/test/unit/test_mapping_interaction_handler.rb +0 -0
@@ -0,0 +1,1330 @@
1
+ # frozen_string_literal: true
2
+ require 'optparse'
3
+ require 'pathname'
4
+
5
+ ##
6
+ # RDoc::Options handles the parsing and storage of options
7
+ #
8
+ # == Saved Options
9
+ #
10
+ # You can save some options like the markup format in the
11
+ # <tt>.rdoc_options</tt> file in your gem. The easiest way to do this is:
12
+ #
13
+ # rdoc --markup tomdoc --write-options
14
+ #
15
+ # Which will automatically create the file and fill it with the options you
16
+ # specified.
17
+ #
18
+ # The following options will not be saved since they interfere with the user's
19
+ # preferences or with the normal operation of RDoc:
20
+ #
21
+ # * +--coverage-report+
22
+ # * +--dry-run+
23
+ # * +--encoding+
24
+ # * +--force-update+
25
+ # * +--format+
26
+ # * +--pipe+
27
+ # * +--quiet+
28
+ # * +--template+
29
+ # * +--verbose+
30
+ #
31
+ # == Custom Options
32
+ #
33
+ # Generators can hook into RDoc::Options to add generator-specific command
34
+ # line options.
35
+ #
36
+ # When <tt>--format</tt> is encountered in ARGV, RDoc calls ::setup_options on
37
+ # the generator class to add extra options to the option parser. Options for
38
+ # custom generators must occur after <tt>--format</tt>. <tt>rdoc --help</tt>
39
+ # will list options for all installed generators.
40
+ #
41
+ # Example:
42
+ #
43
+ # class RDoc::Generator::Spellcheck
44
+ # RDoc::RDoc.add_generator self
45
+ #
46
+ # def self.setup_options rdoc_options
47
+ # op = rdoc_options.option_parser
48
+ #
49
+ # op.on('--spell-dictionary DICTIONARY',
50
+ # RDoc::Options::Path) do |dictionary|
51
+ # rdoc_options.spell_dictionary = dictionary
52
+ # end
53
+ # end
54
+ # end
55
+ #
56
+ # Of course, RDoc::Options does not respond to +spell_dictionary+ by default
57
+ # so you will need to add it:
58
+ #
59
+ # class RDoc::Options
60
+ #
61
+ # ##
62
+ # # The spell dictionary used by the spell-checking plugin.
63
+ #
64
+ # attr_accessor :spell_dictionary
65
+ #
66
+ # end
67
+ #
68
+ # == Option Validators
69
+ #
70
+ # OptionParser validators will validate and cast user input values. In
71
+ # addition to the validators that ship with OptionParser (String, Integer,
72
+ # Float, TrueClass, FalseClass, Array, Regexp, Date, Time, URI, etc.),
73
+ # RDoc::Options adds Path, PathArray and Template.
74
+
75
+ class RDoc::Options
76
+
77
+ ##
78
+ # The deprecated options.
79
+
80
+ DEPRECATED = {
81
+ '--accessor' => 'support discontinued',
82
+ '--diagram' => 'support discontinued',
83
+ '--help-output' => 'support discontinued',
84
+ '--image-format' => 'was an option for --diagram',
85
+ '--inline-source' => 'source code is now always inlined',
86
+ '--merge' => 'ri now always merges class information',
87
+ '--one-file' => 'support discontinued',
88
+ '--op-name' => 'support discontinued',
89
+ '--opname' => 'support discontinued',
90
+ '--promiscuous' => 'files always only document their content',
91
+ '--ri-system' => 'Ruby installers use other techniques',
92
+ }
93
+
94
+ ##
95
+ # RDoc options ignored (or handled specially) by --write-options
96
+
97
+ SPECIAL = %w[
98
+ coverage_report
99
+ dry_run
100
+ encoding
101
+ files
102
+ force_output
103
+ force_update
104
+ generator
105
+ generator_name
106
+ generator_options
107
+ generators
108
+ op_dir
109
+ page_dir
110
+ option_parser
111
+ pipe
112
+ rdoc_include
113
+ root
114
+ static_path
115
+ stylesheet_url
116
+ template
117
+ template_dir
118
+ update_output_dir
119
+ verbosity
120
+ write_options
121
+ ]
122
+
123
+ ##
124
+ # Option validator for OptionParser that matches a directory that exists on
125
+ # the filesystem.
126
+
127
+ Directory = Object.new
128
+
129
+ ##
130
+ # Option validator for OptionParser that matches a file or directory that
131
+ # exists on the filesystem.
132
+
133
+ Path = Object.new
134
+
135
+ ##
136
+ # Option validator for OptionParser that matches a comma-separated list of
137
+ # files or directories that exist on the filesystem.
138
+
139
+ PathArray = Object.new
140
+
141
+ ##
142
+ # Option validator for OptionParser that matches a template directory for an
143
+ # installed generator that lives in
144
+ # <tt>"rdoc/generator/template/#{template_name}"</tt>
145
+
146
+ Template = Object.new
147
+
148
+ ##
149
+ # Character-set for HTML output. #encoding is preferred over #charset
150
+
151
+ attr_accessor :charset
152
+
153
+ ##
154
+ # If true, RDoc will not write any files.
155
+
156
+ attr_accessor :dry_run
157
+
158
+ ##
159
+ # The output encoding. All input files will be transcoded to this encoding.
160
+ #
161
+ # The default encoding is UTF-8. This is set via --encoding.
162
+
163
+ attr_accessor :encoding
164
+
165
+ ##
166
+ # Files matching this pattern will be excluded
167
+
168
+ attr_writer :exclude
169
+
170
+ ##
171
+ # The list of files to be processed
172
+
173
+ attr_accessor :files
174
+
175
+ ##
176
+ # Create the output even if the output directory does not look
177
+ # like an rdoc output directory
178
+
179
+ attr_accessor :force_output
180
+
181
+ ##
182
+ # Scan newer sources than the flag file if true.
183
+
184
+ attr_accessor :force_update
185
+
186
+ ##
187
+ # Formatter to mark up text with
188
+
189
+ attr_accessor :formatter
190
+
191
+ ##
192
+ # Description of the output generator (set with the <tt>--format</tt> option)
193
+
194
+ attr_accessor :generator
195
+
196
+ ##
197
+ # For #==
198
+
199
+ attr_reader :generator_name # :nodoc:
200
+
201
+ ##
202
+ # Loaded generator options. Used to prevent --help from loading the same
203
+ # options multiple times.
204
+
205
+ attr_accessor :generator_options
206
+
207
+ ##
208
+ # Old rdoc behavior: hyperlink all words that match a method name,
209
+ # even if not preceded by '#' or '::'
210
+
211
+ attr_accessor :hyperlink_all
212
+
213
+ ##
214
+ # Include line numbers in the source code
215
+
216
+ attr_accessor :line_numbers
217
+
218
+ ##
219
+ # The output locale.
220
+
221
+ attr_accessor :locale
222
+
223
+ ##
224
+ # The directory where locale data live.
225
+
226
+ attr_accessor :locale_dir
227
+
228
+ ##
229
+ # Name of the file, class or module to display in the initial index page (if
230
+ # not specified the first file we encounter is used)
231
+
232
+ attr_accessor :main_page
233
+
234
+ ##
235
+ # The default markup format. The default is 'rdoc'. 'markdown', 'tomdoc'
236
+ # and 'rd' are also built-in.
237
+
238
+ attr_accessor :markup
239
+
240
+ ##
241
+ # If true, only report on undocumented files
242
+
243
+ attr_accessor :coverage_report
244
+
245
+ ##
246
+ # The name of the output directory
247
+
248
+ attr_accessor :op_dir
249
+
250
+ ##
251
+ # The OptionParser for this instance
252
+
253
+ attr_accessor :option_parser
254
+
255
+ ##
256
+ # Output heading decorations?
257
+ attr_accessor :output_decoration
258
+
259
+ ##
260
+ # Directory where guides, FAQ, and other pages not associated with a class
261
+ # live. You may leave this unset if these are at the root of your project.
262
+
263
+ attr_accessor :page_dir
264
+
265
+ ##
266
+ # Is RDoc in pipe mode?
267
+
268
+ attr_accessor :pipe
269
+
270
+ ##
271
+ # Array of directories to search for files to satisfy an :include:
272
+
273
+ attr_accessor :rdoc_include
274
+
275
+ ##
276
+ # Root of the source documentation will be generated for. Set this when
277
+ # building documentation outside the source directory. Defaults to the
278
+ # current directory.
279
+
280
+ attr_accessor :root
281
+
282
+ ##
283
+ # Include the '#' at the front of hyperlinked instance method names
284
+
285
+ attr_accessor :show_hash
286
+
287
+ ##
288
+ # Directory to copy static files from
289
+
290
+ attr_accessor :static_path
291
+
292
+ ##
293
+ # The number of columns in a tab
294
+
295
+ attr_accessor :tab_width
296
+
297
+ ##
298
+ # Template to be used when generating output
299
+
300
+ attr_accessor :template
301
+
302
+ ##
303
+ # Directory the template lives in
304
+
305
+ attr_accessor :template_dir
306
+
307
+ ##
308
+ # Additional template stylesheets
309
+
310
+ attr_accessor :template_stylesheets
311
+
312
+ ##
313
+ # Documentation title
314
+
315
+ attr_accessor :title
316
+
317
+ ##
318
+ # Should RDoc update the timestamps in the output dir?
319
+
320
+ attr_accessor :update_output_dir
321
+
322
+ ##
323
+ # Verbosity, zero means quiet
324
+
325
+ attr_accessor :verbosity
326
+
327
+ ##
328
+ # URL of web cvs frontend
329
+
330
+ attr_accessor :webcvs
331
+
332
+ ##
333
+ # Minimum visibility of a documented method. One of +:public+, +:protected+,
334
+ # +:private+ or +:nodoc+.
335
+ #
336
+ # The +:nodoc+ visibility ignores all directives related to visibility. The
337
+ # other visibilities may be overridden on a per-method basis with the :doc:
338
+ # directive.
339
+
340
+ attr_reader :visibility
341
+
342
+ ##
343
+ # Indicates if files of test suites should be skipped
344
+ attr_accessor :skip_tests
345
+
346
+ def initialize loaded_options = nil # :nodoc:
347
+ init_ivars
348
+ override loaded_options if loaded_options
349
+ end
350
+
351
+ def init_ivars # :nodoc:
352
+ @dry_run = false
353
+ @exclude = %w[
354
+ ~\z \.orig\z \.rej\z \.bak\z
355
+ \.gemspec\z
356
+ ]
357
+ @files = nil
358
+ @force_output = false
359
+ @force_update = true
360
+ @generator = nil
361
+ @generator_name = nil
362
+ @generator_options = []
363
+ @generators = RDoc::RDoc::GENERATORS
364
+ @hyperlink_all = false
365
+ @line_numbers = false
366
+ @locale = nil
367
+ @locale_name = nil
368
+ @locale_dir = 'locale'
369
+ @main_page = nil
370
+ @markup = 'rdoc'
371
+ @coverage_report = false
372
+ @op_dir = nil
373
+ @page_dir = nil
374
+ @pipe = false
375
+ @output_decoration = true
376
+ @rdoc_include = []
377
+ @root = Pathname(Dir.pwd)
378
+ @show_hash = false
379
+ @static_path = []
380
+ @stylesheet_url = nil # TODO remove in RDoc 4
381
+ @tab_width = 8
382
+ @template = nil
383
+ @template_dir = nil
384
+ @template_stylesheets = []
385
+ @title = nil
386
+ @update_output_dir = true
387
+ @verbosity = 1
388
+ @visibility = :protected
389
+ @webcvs = nil
390
+ @write_options = false
391
+ @encoding = Encoding::UTF_8
392
+ @charset = @encoding.name
393
+ @skip_tests = true
394
+ end
395
+
396
+ def init_with map # :nodoc:
397
+ init_ivars
398
+
399
+ encoding = map['encoding']
400
+ @encoding = encoding ? Encoding.find(encoding) : encoding
401
+
402
+ @charset = map['charset']
403
+ @exclude = map['exclude']
404
+ @generator_name = map['generator_name']
405
+ @hyperlink_all = map['hyperlink_all']
406
+ @line_numbers = map['line_numbers']
407
+ @locale_name = map['locale_name']
408
+ @locale_dir = map['locale_dir']
409
+ @main_page = map['main_page']
410
+ @markup = map['markup']
411
+ @op_dir = map['op_dir']
412
+ @show_hash = map['show_hash']
413
+ @tab_width = map['tab_width']
414
+ @template_dir = map['template_dir']
415
+ @title = map['title']
416
+ @visibility = map['visibility']
417
+ @webcvs = map['webcvs']
418
+
419
+ @rdoc_include = sanitize_path map['rdoc_include']
420
+ @static_path = sanitize_path map['static_path']
421
+ end
422
+
423
+ def yaml_initialize tag, map # :nodoc:
424
+ init_with map
425
+ end
426
+
427
+ def override map # :nodoc:
428
+ if map.has_key?('encoding')
429
+ encoding = map['encoding']
430
+ @encoding = encoding ? Encoding.find(encoding) : encoding
431
+ end
432
+
433
+ @charset = map['charset'] if map.has_key?('charset')
434
+ @exclude = map['exclude'] if map.has_key?('exclude')
435
+ @generator_name = map['generator_name'] if map.has_key?('generator_name')
436
+ @hyperlink_all = map['hyperlink_all'] if map.has_key?('hyperlink_all')
437
+ @line_numbers = map['line_numbers'] if map.has_key?('line_numbers')
438
+ @locale_name = map['locale_name'] if map.has_key?('locale_name')
439
+ @locale_dir = map['locale_dir'] if map.has_key?('locale_dir')
440
+ @main_page = map['main_page'] if map.has_key?('main_page')
441
+ @markup = map['markup'] if map.has_key?('markup')
442
+ @op_dir = map['op_dir'] if map.has_key?('op_dir')
443
+ @page_dir = map['page_dir'] if map.has_key?('page_dir')
444
+ @show_hash = map['show_hash'] if map.has_key?('show_hash')
445
+ @tab_width = map['tab_width'] if map.has_key?('tab_width')
446
+ @template_dir = map['template_dir'] if map.has_key?('template_dir')
447
+ @title = map['title'] if map.has_key?('title')
448
+ @visibility = map['visibility'] if map.has_key?('visibility')
449
+ @webcvs = map['webcvs'] if map.has_key?('webcvs')
450
+
451
+ if map.has_key?('rdoc_include')
452
+ @rdoc_include = sanitize_path map['rdoc_include']
453
+ end
454
+ if map.has_key?('static_path')
455
+ @static_path = sanitize_path map['static_path']
456
+ end
457
+ end
458
+
459
+ def == other # :nodoc:
460
+ self.class === other and
461
+ @encoding == other.encoding and
462
+ @generator_name == other.generator_name and
463
+ @hyperlink_all == other.hyperlink_all and
464
+ @line_numbers == other.line_numbers and
465
+ @locale == other.locale and
466
+ @locale_dir == other.locale_dir and
467
+ @main_page == other.main_page and
468
+ @markup == other.markup and
469
+ @op_dir == other.op_dir and
470
+ @rdoc_include == other.rdoc_include and
471
+ @show_hash == other.show_hash and
472
+ @static_path == other.static_path and
473
+ @tab_width == other.tab_width and
474
+ @template == other.template and
475
+ @title == other.title and
476
+ @visibility == other.visibility and
477
+ @webcvs == other.webcvs
478
+ end
479
+
480
+ ##
481
+ # Check that the files on the command line exist
482
+
483
+ def check_files
484
+ @files.delete_if do |file|
485
+ if File.exist? file then
486
+ if File.readable? file then
487
+ false
488
+ else
489
+ warn "file '#{file}' not readable"
490
+
491
+ true
492
+ end
493
+ else
494
+ warn "file '#{file}' not found"
495
+
496
+ true
497
+ end
498
+ end
499
+ end
500
+
501
+ ##
502
+ # Ensure only one generator is loaded
503
+
504
+ def check_generator
505
+ if @generator then
506
+ raise OptionParser::InvalidOption,
507
+ "generator already set to #{@generator_name}"
508
+ end
509
+ end
510
+
511
+ ##
512
+ # Set the title, but only if not already set. Used to set the title
513
+ # from a source file, so that a title set from the command line
514
+ # will have the priority.
515
+
516
+ def default_title=(string)
517
+ @title ||= string
518
+ end
519
+
520
+ ##
521
+ # For dumping YAML
522
+
523
+ def to_yaml(*options) # :nodoc:
524
+ encoding = @encoding ? @encoding.name : nil
525
+
526
+ yaml = {}
527
+ yaml['encoding'] = encoding
528
+ yaml['static_path'] = sanitize_path(@static_path)
529
+ yaml['rdoc_include'] = sanitize_path(@rdoc_include)
530
+ yaml['page_dir'] = (sanitize_path([@page_dir]).first if @page_dir)
531
+
532
+ ivars = instance_variables.map { |ivar| ivar.to_s[1..-1] }
533
+ ivars -= SPECIAL
534
+
535
+ ivars.sort.each do |ivar|
536
+ yaml[ivar] = instance_variable_get("@#{ivar}")
537
+ end
538
+ yaml.to_yaml
539
+ end
540
+
541
+ ##
542
+ # Create a regexp for #exclude
543
+
544
+ def exclude
545
+ if @exclude.nil? or Regexp === @exclude then
546
+ # done, #finish is being re-run
547
+ @exclude
548
+ elsif @exclude.empty? then
549
+ nil
550
+ else
551
+ Regexp.new(@exclude.join("|"))
552
+ end
553
+ end
554
+
555
+ ##
556
+ # Completes any unfinished option setup business such as filtering for
557
+ # existent files, creating a regexp for #exclude and setting a default
558
+ # #template.
559
+
560
+ def finish
561
+ if @write_options then
562
+ write_options
563
+ exit
564
+ end
565
+
566
+ @op_dir ||= 'doc'
567
+
568
+ root = @root.to_s
569
+ if @rdoc_include.empty? || !@rdoc_include.include?(root)
570
+ @rdoc_include << root
571
+ end
572
+
573
+ @exclude = self.exclude
574
+
575
+ finish_page_dir
576
+
577
+ check_files
578
+
579
+ # If no template was specified, use the default template for the output
580
+ # formatter
581
+
582
+ unless @template then
583
+ @template = @generator_name
584
+ @template_dir = template_dir_for @template
585
+ end
586
+
587
+ if @locale_name
588
+ @locale = RDoc::I18n::Locale[@locale_name]
589
+ @locale.load(@locale_dir)
590
+ else
591
+ @locale = nil
592
+ end
593
+
594
+ self
595
+ end
596
+
597
+ ##
598
+ # Fixes the page_dir to be relative to the root_dir and adds the page_dir to
599
+ # the files list.
600
+
601
+ def finish_page_dir
602
+ return unless @page_dir
603
+
604
+ @files << @page_dir
605
+
606
+ page_dir = Pathname(@page_dir)
607
+ begin
608
+ page_dir = page_dir.expand_path.relative_path_from @root
609
+ rescue ArgumentError
610
+ # On Windows, sometimes crosses different drive letters.
611
+ page_dir = page_dir.expand_path
612
+ end
613
+
614
+ @page_dir = page_dir
615
+ end
616
+
617
+ ##
618
+ # Returns a properly-space list of generators and their descriptions.
619
+
620
+ def generator_descriptions
621
+ lengths = []
622
+
623
+ generators = RDoc::RDoc::GENERATORS.map do |name, generator|
624
+ lengths << name.length
625
+
626
+ description = generator::DESCRIPTION if
627
+ generator.const_defined? :DESCRIPTION
628
+
629
+ [name, description]
630
+ end
631
+
632
+ longest = lengths.max
633
+
634
+ generators.sort.map do |name, description|
635
+ if description then
636
+ " %-*s - %s" % [longest, name, description]
637
+ else
638
+ " #{name}"
639
+ end
640
+ end.join "\n"
641
+ end
642
+
643
+ ##
644
+ # Parses command line options.
645
+
646
+ def parse argv
647
+ ignore_invalid = true
648
+
649
+ argv.insert(0, *ENV['RDOCOPT'].split) if ENV['RDOCOPT']
650
+
651
+ opts = OptionParser.new do |opt|
652
+ @option_parser = opt
653
+ opt.program_name = File.basename $0
654
+ opt.version = RDoc::VERSION
655
+ opt.release = nil
656
+ opt.summary_indent = ' ' * 4
657
+ opt.banner = <<-EOF
658
+ Usage: #{opt.program_name} [options] [names...]
659
+
660
+ Files are parsed, and the information they contain collected, before any
661
+ output is produced. This allows cross references between all files to be
662
+ resolved. If a name is a directory, it is traversed. If no names are
663
+ specified, all Ruby files in the current directory (and subdirectories) are
664
+ processed.
665
+
666
+ How RDoc generates output depends on the output formatter being used, and on
667
+ the options you give.
668
+
669
+ Options can be specified via the RDOCOPT environment variable, which
670
+ functions similar to the RUBYOPT environment variable for ruby.
671
+
672
+ $ export RDOCOPT="--show-hash"
673
+
674
+ will make rdoc show hashes in method links by default. Command-line options
675
+ always will override those in RDOCOPT.
676
+
677
+ Available formatters:
678
+
679
+ #{generator_descriptions}
680
+
681
+ RDoc understands the following file formats:
682
+
683
+ EOF
684
+
685
+ parsers = Hash.new { |h,parser| h[parser] = [] }
686
+
687
+ RDoc::Parser.parsers.each do |regexp, parser|
688
+ parsers[parser.name.sub('RDoc::Parser::', '')] << regexp.source
689
+ end
690
+
691
+ parsers.sort.each do |parser, regexp|
692
+ opt.banner += " - #{parser}: #{regexp.join ', '}\n"
693
+ end
694
+ opt.banner += " - TomDoc: Only in ruby files\n"
695
+
696
+ opt.banner += "\n The following options are deprecated:\n\n"
697
+
698
+ name_length = DEPRECATED.keys.sort_by { |k| k.length }.last.length
699
+
700
+ DEPRECATED.sort_by { |k,| k }.each do |name, reason|
701
+ opt.banner += " %*1$2$s %3$s\n" % [-name_length, name, reason]
702
+ end
703
+
704
+ opt.accept Template do |template|
705
+ template_dir = template_dir_for template
706
+
707
+ unless template_dir then
708
+ $stderr.puts "could not find template #{template}"
709
+ nil
710
+ else
711
+ [template, template_dir]
712
+ end
713
+ end
714
+
715
+ opt.accept Directory do |directory|
716
+ directory = File.expand_path directory
717
+
718
+ raise OptionParser::InvalidArgument unless File.directory? directory
719
+
720
+ directory
721
+ end
722
+
723
+ opt.accept Path do |path|
724
+ path = File.expand_path path
725
+
726
+ raise OptionParser::InvalidArgument unless File.exist? path
727
+
728
+ path
729
+ end
730
+
731
+ opt.accept PathArray do |paths,|
732
+ paths = if paths then
733
+ paths.split(',').map { |d| d unless d.empty? }
734
+ end
735
+
736
+ paths.map do |path|
737
+ path = File.expand_path path
738
+
739
+ raise OptionParser::InvalidArgument unless File.exist? path
740
+
741
+ path
742
+ end
743
+ end
744
+
745
+ opt.separator nil
746
+ opt.separator "Parsing options:"
747
+ opt.separator nil
748
+
749
+ opt.on("--encoding=ENCODING", "-e", Encoding.list.map { |e| e.name },
750
+ "Specifies the output encoding. All files",
751
+ "read will be converted to this encoding.",
752
+ "The default encoding is UTF-8.",
753
+ "--encoding is preferred over --charset") do |value|
754
+ @encoding = Encoding.find value
755
+ @charset = @encoding.name # may not be valid value
756
+ end
757
+
758
+ opt.separator nil
759
+
760
+ opt.on("--locale=NAME",
761
+ "Specifies the output locale.") do |value|
762
+ @locale_name = value
763
+ end
764
+
765
+ opt.on("--locale-data-dir=DIR",
766
+ "Specifies the directory where locale data live.") do |value|
767
+ @locale_dir = value
768
+ end
769
+
770
+ opt.separator nil
771
+
772
+ opt.on("--all", "-a",
773
+ "Synonym for --visibility=private.") do |value|
774
+ @visibility = :private
775
+ end
776
+
777
+ opt.separator nil
778
+
779
+ opt.on("--exclude=PATTERN", "-x", Regexp,
780
+ "Do not process files or directories",
781
+ "matching PATTERN.") do |value|
782
+ @exclude << value
783
+ end
784
+
785
+ opt.separator nil
786
+
787
+ opt.on("--no-skipping-tests", nil,
788
+ "Don't skip generating documentation for test and spec files") do |value|
789
+ @skip_tests = false
790
+ end
791
+
792
+ opt.separator nil
793
+
794
+ opt.on("--extension=NEW=OLD", "-E",
795
+ "Treat files ending with .new as if they",
796
+ "ended with .old. Using '-E cgi=rb' will",
797
+ "cause xxx.cgi to be parsed as a Ruby file.") do |value|
798
+ new, old = value.split(/=/, 2)
799
+
800
+ unless new and old then
801
+ raise OptionParser::InvalidArgument, "Invalid parameter to '-E'"
802
+ end
803
+
804
+ unless RDoc::Parser.alias_extension old, new then
805
+ raise OptionParser::InvalidArgument, "Unknown extension .#{old} to -E"
806
+ end
807
+ end
808
+
809
+ opt.separator nil
810
+
811
+ opt.on("--[no-]force-update", "-U",
812
+ "Forces rdoc to scan all sources even if",
813
+ "no files are newer than the flag file.") do |value|
814
+ @force_update = value
815
+ end
816
+
817
+ opt.separator nil
818
+
819
+ opt.on("--pipe", "-p",
820
+ "Convert RDoc on stdin to HTML") do
821
+ @pipe = true
822
+ end
823
+
824
+ opt.separator nil
825
+
826
+ opt.on("--tab-width=WIDTH", "-w", Integer,
827
+ "Set the width of tab characters.") do |value|
828
+ raise OptionParser::InvalidArgument,
829
+ "#{value} is an invalid tab width" if value <= 0
830
+ @tab_width = value
831
+ end
832
+
833
+ opt.separator nil
834
+
835
+ opt.on("--visibility=VISIBILITY", "-V", RDoc::VISIBILITIES + [:nodoc],
836
+ "Minimum visibility to document a method.",
837
+ "One of 'public', 'protected' (the default),",
838
+ "'private' or 'nodoc' (show everything)") do |value|
839
+ @visibility = value
840
+ end
841
+
842
+ opt.separator nil
843
+
844
+ markup_formats = RDoc::Text::MARKUP_FORMAT.keys.sort
845
+
846
+ opt.on("--markup=MARKUP", markup_formats,
847
+ "The markup format for the named files.",
848
+ "The default is rdoc. Valid values are:",
849
+ markup_formats.join(', ')) do |value|
850
+ @markup = value
851
+ end
852
+
853
+ opt.separator nil
854
+
855
+ opt.on("--root=ROOT", Directory,
856
+ "Root of the source tree documentation",
857
+ "will be generated for. Set this when",
858
+ "building documentation outside the",
859
+ "source directory. Default is the",
860
+ "current directory.") do |root|
861
+ @root = Pathname(root)
862
+ end
863
+
864
+ opt.separator nil
865
+
866
+ opt.on("--page-dir=DIR", Directory,
867
+ "Directory where guides, your FAQ or",
868
+ "other pages not associated with a class",
869
+ "live. Set this when you don't store",
870
+ "such files at your project root.",
871
+ "NOTE: Do not use the same file name in",
872
+ "the page dir and the root of your project") do |page_dir|
873
+ @page_dir = page_dir
874
+ end
875
+
876
+ opt.separator nil
877
+ opt.separator "Common generator options:"
878
+ opt.separator nil
879
+
880
+ opt.on("--force-output", "-O",
881
+ "Forces rdoc to write the output files,",
882
+ "even if the output directory exists",
883
+ "and does not seem to have been created",
884
+ "by rdoc.") do |value|
885
+ @force_output = value
886
+ end
887
+
888
+ opt.separator nil
889
+
890
+ generator_text = @generators.keys.map { |name| " #{name}" }.sort
891
+
892
+ opt.on("-f", "--fmt=FORMAT", "--format=FORMAT", @generators.keys,
893
+ "Set the output formatter. One of:", *generator_text) do |value|
894
+ check_generator
895
+
896
+ @generator_name = value.downcase
897
+ setup_generator
898
+ end
899
+
900
+ opt.separator nil
901
+
902
+ opt.on("--include=DIRECTORIES", "-i", PathArray,
903
+ "Set (or add to) the list of directories to",
904
+ "be searched when satisfying :include:",
905
+ "requests. Can be used more than once.") do |value|
906
+ @rdoc_include.concat value.map { |dir| dir.strip }
907
+ end
908
+
909
+ opt.separator nil
910
+
911
+ opt.on("--[no-]coverage-report=[LEVEL]", "--[no-]dcov", "-C", Integer,
912
+ "Prints a report on undocumented items.",
913
+ "Does not generate files.") do |value|
914
+ value = 0 if value.nil? # Integer converts -C to nil
915
+
916
+ @coverage_report = value
917
+ @force_update = true if value
918
+ end
919
+
920
+ opt.separator nil
921
+
922
+ opt.on("--output=DIR", "--op", "-o",
923
+ "Set the output directory.") do |value|
924
+ @op_dir = value
925
+ end
926
+
927
+ opt.separator nil
928
+
929
+ opt.on("-d",
930
+ "Deprecated --diagram option.",
931
+ "Prevents firing debug mode",
932
+ "with legacy invocation.") do |value|
933
+ end
934
+
935
+ opt.separator nil
936
+ opt.separator 'HTML generator options:'
937
+ opt.separator nil
938
+
939
+ opt.on("--charset=CHARSET", "-c",
940
+ "Specifies the output HTML character-set.",
941
+ "Use --encoding instead of --charset if",
942
+ "available.") do |value|
943
+ @charset = value
944
+ end
945
+
946
+ opt.separator nil
947
+
948
+ opt.on("--hyperlink-all", "-A",
949
+ "Generate hyperlinks for all words that",
950
+ "correspond to known methods, even if they",
951
+ "do not start with '#' or '::' (legacy",
952
+ "behavior).") do |value|
953
+ @hyperlink_all = value
954
+ end
955
+
956
+ opt.separator nil
957
+
958
+ opt.on("--main=NAME", "-m",
959
+ "NAME will be the initial page displayed.") do |value|
960
+ @main_page = value
961
+ end
962
+
963
+ opt.separator nil
964
+
965
+ opt.on("--[no-]line-numbers", "-N",
966
+ "Include line numbers in the source code.",
967
+ "By default, only the number of the first",
968
+ "line is displayed, in a leading comment.") do |value|
969
+ @line_numbers = value
970
+ end
971
+
972
+ opt.separator nil
973
+
974
+ opt.on("--show-hash", "-H",
975
+ "A name of the form #name in a comment is a",
976
+ "possible hyperlink to an instance method",
977
+ "name. When displayed, the '#' is removed",
978
+ "unless this option is specified.") do |value|
979
+ @show_hash = value
980
+ end
981
+
982
+ opt.separator nil
983
+
984
+ opt.on("--template=NAME", "-T", Template,
985
+ "Set the template used when generating",
986
+ "output. The default depends on the",
987
+ "formatter used.") do |(template, template_dir)|
988
+ @template = template
989
+ @template_dir = template_dir
990
+ end
991
+
992
+ opt.separator nil
993
+
994
+ opt.on("--template-stylesheets=FILES", PathArray,
995
+ "Set (or add to) the list of files to",
996
+ "include with the html template.") do |value|
997
+ @template_stylesheets.concat value
998
+ end
999
+
1000
+ opt.separator nil
1001
+
1002
+ opt.on("--title=TITLE", "-t",
1003
+ "Set TITLE as the title for HTML output.") do |value|
1004
+ @title = value
1005
+ end
1006
+
1007
+ opt.separator nil
1008
+
1009
+ opt.on("--copy-files=PATH", Path,
1010
+ "Specify a file or directory to copy static",
1011
+ "files from.",
1012
+ "If a file is given it will be copied into",
1013
+ "the output dir. If a directory is given the",
1014
+ "entire directory will be copied.",
1015
+ "You can use this multiple times") do |value|
1016
+ @static_path << value
1017
+ end
1018
+
1019
+ opt.separator nil
1020
+
1021
+ opt.on("--webcvs=URL", "-W",
1022
+ "Specify a URL for linking to a web frontend",
1023
+ "to CVS. If the URL contains a '\%s', the",
1024
+ "name of the current file will be",
1025
+ "substituted; if the URL doesn't contain a",
1026
+ "'\%s', the filename will be appended to it.") do |value|
1027
+ @webcvs = value
1028
+ end
1029
+
1030
+ opt.separator nil
1031
+ opt.separator "ri generator options:"
1032
+ opt.separator nil
1033
+
1034
+ opt.on("--ri", "-r",
1035
+ "Generate output for use by `ri`. The files",
1036
+ "are stored in the '.rdoc' directory under",
1037
+ "your home directory unless overridden by a",
1038
+ "subsequent --op parameter, so no special",
1039
+ "privileges are needed.") do |value|
1040
+ check_generator
1041
+
1042
+ @generator_name = "ri"
1043
+ @op_dir ||= RDoc::RI::Paths::HOMEDIR
1044
+ setup_generator
1045
+ end
1046
+
1047
+ opt.separator nil
1048
+
1049
+ opt.on("--ri-site", "-R",
1050
+ "Generate output for use by `ri`. The files",
1051
+ "are stored in a site-wide directory,",
1052
+ "making them accessible to others, so",
1053
+ "special privileges are needed.") do |value|
1054
+ check_generator
1055
+
1056
+ @generator_name = "ri"
1057
+ @op_dir = RDoc::RI::Paths.site_dir
1058
+ setup_generator
1059
+ end
1060
+
1061
+ opt.separator nil
1062
+ opt.separator "Generic options:"
1063
+ opt.separator nil
1064
+
1065
+ opt.on("--write-options",
1066
+ "Write .rdoc_options to the current",
1067
+ "directory with the given options. Not all",
1068
+ "options will be used. See RDoc::Options",
1069
+ "for details.") do |value|
1070
+ @write_options = true
1071
+ end
1072
+
1073
+ opt.separator nil
1074
+
1075
+ opt.on("--[no-]dry-run",
1076
+ "Don't write any files") do |value|
1077
+ @dry_run = value
1078
+ end
1079
+
1080
+ opt.separator nil
1081
+
1082
+ opt.on("-D", "--[no-]debug",
1083
+ "Displays lots on internal stuff.") do |value|
1084
+ $DEBUG_RDOC = value
1085
+ end
1086
+
1087
+ opt.separator nil
1088
+
1089
+ opt.on("--[no-]ignore-invalid",
1090
+ "Ignore invalid options and continue",
1091
+ "(default true).") do |value|
1092
+ ignore_invalid = value
1093
+ end
1094
+
1095
+ opt.separator nil
1096
+
1097
+ opt.on("--quiet", "-q",
1098
+ "Don't show progress as we parse.") do |value|
1099
+ @verbosity = 0
1100
+ end
1101
+
1102
+ opt.separator nil
1103
+
1104
+ opt.on("--verbose", "-V",
1105
+ "Display extra progress as RDoc parses") do |value|
1106
+ @verbosity = 2
1107
+ end
1108
+
1109
+ opt.separator nil
1110
+
1111
+ opt.on("--version", "-v", "print the version") do
1112
+ puts opt.version
1113
+ exit
1114
+ end
1115
+
1116
+ opt.separator nil
1117
+
1118
+ opt.on("--help", "-h", "Display this help") do
1119
+ RDoc::RDoc::GENERATORS.each_key do |generator|
1120
+ setup_generator generator
1121
+ end
1122
+
1123
+ puts opt.help
1124
+ exit
1125
+ end
1126
+
1127
+ opt.separator nil
1128
+ end
1129
+
1130
+ setup_generator 'darkfish' if
1131
+ argv.grep(/\A(-f|--fmt|--format|-r|-R|--ri|--ri-site)\b/).empty?
1132
+
1133
+ deprecated = []
1134
+ invalid = []
1135
+
1136
+ begin
1137
+ opts.parse! argv
1138
+ rescue OptionParser::ParseError => e
1139
+ if DEPRECATED[e.args.first] then
1140
+ deprecated << e.args.first
1141
+ elsif %w[--format --ri -r --ri-site -R].include? e.args.first then
1142
+ raise
1143
+ else
1144
+ invalid << e.args.join(' ')
1145
+ end
1146
+
1147
+ retry
1148
+ end
1149
+
1150
+ unless @generator then
1151
+ @generator = RDoc::Generator::Darkfish
1152
+ @generator_name = 'darkfish'
1153
+ end
1154
+
1155
+ if @pipe and not argv.empty? then
1156
+ @pipe = false
1157
+ invalid << '-p (with files)'
1158
+ end
1159
+
1160
+ unless quiet then
1161
+ deprecated.each do |opt|
1162
+ $stderr.puts 'option ' + opt + ' is deprecated: ' + DEPRECATED[opt]
1163
+ end
1164
+ end
1165
+
1166
+ unless invalid.empty? then
1167
+ invalid = "invalid options: #{invalid.join ', '}"
1168
+
1169
+ if ignore_invalid then
1170
+ unless quiet then
1171
+ $stderr.puts invalid
1172
+ $stderr.puts '(invalid options are ignored)'
1173
+ end
1174
+ else
1175
+ unless quiet then
1176
+ $stderr.puts opts
1177
+ end
1178
+ $stderr.puts invalid
1179
+ exit 1
1180
+ end
1181
+ end
1182
+
1183
+ @files = argv.dup
1184
+
1185
+ self
1186
+ end
1187
+
1188
+ ##
1189
+ # Don't display progress as we process the files
1190
+
1191
+ def quiet
1192
+ @verbosity.zero?
1193
+ end
1194
+
1195
+ ##
1196
+ # Set quietness to +bool+
1197
+
1198
+ def quiet= bool
1199
+ @verbosity = bool ? 0 : 1
1200
+ end
1201
+
1202
+ ##
1203
+ # Removes directories from +path+ that are outside the current directory
1204
+
1205
+ def sanitize_path path
1206
+ require 'pathname'
1207
+ dot = Pathname.new('.').expand_path
1208
+
1209
+ path.reject do |item|
1210
+ path = Pathname.new(item).expand_path
1211
+ is_reject = nil
1212
+ relative = nil
1213
+ begin
1214
+ relative = path.relative_path_from(dot).to_s
1215
+ rescue ArgumentError
1216
+ # On Windows, sometimes crosses different drive letters.
1217
+ is_reject = true
1218
+ else
1219
+ is_reject = relative.start_with? '..'
1220
+ end
1221
+ is_reject
1222
+ end
1223
+ end
1224
+
1225
+ ##
1226
+ # Set up an output generator for the named +generator_name+.
1227
+ #
1228
+ # If the found generator responds to :setup_options it will be called with
1229
+ # the options instance. This allows generators to add custom options or set
1230
+ # default options.
1231
+
1232
+ def setup_generator generator_name = @generator_name
1233
+ @generator = @generators[generator_name]
1234
+
1235
+ unless @generator then
1236
+ raise OptionParser::InvalidArgument,
1237
+ "Invalid output formatter #{generator_name}"
1238
+ end
1239
+
1240
+ return if @generator_options.include? @generator
1241
+
1242
+ @generator_name = generator_name
1243
+ @generator_options << @generator
1244
+
1245
+ if @generator.respond_to? :setup_options then
1246
+ @option_parser ||= OptionParser.new
1247
+ @generator.setup_options self
1248
+ end
1249
+ end
1250
+
1251
+ ##
1252
+ # Finds the template dir for +template+
1253
+
1254
+ def template_dir_for template
1255
+ template_path = File.join 'rdoc', 'generator', 'template', template
1256
+
1257
+ $LOAD_PATH.map do |path|
1258
+ File.join File.expand_path(path), template_path
1259
+ end.find do |dir|
1260
+ File.directory? dir
1261
+ end
1262
+ end
1263
+
1264
+ # Sets the minimum visibility of a documented method.
1265
+ #
1266
+ # Accepts +:public+, +:protected+, +:private+, +:nodoc+, or +:all+.
1267
+ #
1268
+ # When +:all+ is passed, visibility is set to +:private+, similarly to
1269
+ # RDOCOPT="--all", see #visibility for more information.
1270
+
1271
+ def visibility= visibility
1272
+ case visibility
1273
+ when :all
1274
+ @visibility = :private
1275
+ else
1276
+ @visibility = visibility
1277
+ end
1278
+ end
1279
+
1280
+ ##
1281
+ # Displays a warning using Kernel#warn if we're being verbose
1282
+
1283
+ def warn message
1284
+ super message if @verbosity > 1
1285
+ end
1286
+
1287
+ ##
1288
+ # Writes the YAML file .rdoc_options to the current directory containing the
1289
+ # parsed options.
1290
+
1291
+ def write_options
1292
+ RDoc.load_yaml
1293
+
1294
+ File.open '.rdoc_options', 'w' do |io|
1295
+ io.set_encoding Encoding::UTF_8
1296
+
1297
+ io.print to_yaml
1298
+ end
1299
+ end
1300
+
1301
+ ##
1302
+ # Loads options from .rdoc_options if the file exists, otherwise creates a
1303
+ # new RDoc::Options instance.
1304
+
1305
+ def self.load_options
1306
+ options_file = File.expand_path '.rdoc_options'
1307
+ return RDoc::Options.new unless File.exist? options_file
1308
+
1309
+ RDoc.load_yaml
1310
+
1311
+ begin
1312
+ options = YAML.safe_load File.read('.rdoc_options'), permitted_classes: [RDoc::Options, Symbol]
1313
+ rescue Psych::SyntaxError
1314
+ raise RDoc::Error, "#{options_file} is not a valid rdoc options file"
1315
+ end
1316
+
1317
+ return RDoc::Options.new unless options # Allow empty file.
1318
+
1319
+ raise RDoc::Error, "#{options_file} is not a valid rdoc options file" unless
1320
+ RDoc::Options === options or Hash === options
1321
+
1322
+ if Hash === options
1323
+ # Override the default values with the contents of YAML file.
1324
+ options = RDoc::Options.new options
1325
+ end
1326
+
1327
+ options
1328
+ end
1329
+
1330
+ end