rails-rfc6570 3.2.0 → 3.3.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 (259) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +9 -1
  3. data/lib/rails/rfc6570/version.rb +1 -1
  4. data/rails-rfc6570.gemspec +1 -1
  5. data/spec/dummy/log/test.log +432 -0
  6. metadata +10 -262
  7. data/vendor/bundle/ruby/3.3.0/bundler/gems/rubocop-config-943facea9d8f/LICENSE +0 -21
  8. data/vendor/bundle/ruby/3.3.0/bundler/gems/rubocop-config-943facea9d8f/README.md +0 -23
  9. data/vendor/bundle/ruby/3.3.0/bundler/gems/rubocop-config-943facea9d8f/rubocop-config.gemspec +0 -31
  10. data/vendor/bundle/ruby/3.3.0/gems/actionpack-7.2.1/CHANGELOG.md +0 -154
  11. data/vendor/bundle/ruby/3.3.0/gems/actionpack-7.2.1/MIT-LICENSE +0 -21
  12. data/vendor/bundle/ruby/3.3.0/gems/actionpack-7.2.1/README.rdoc +0 -57
  13. data/vendor/bundle/ruby/3.3.0/gems/actionview-7.2.1/CHANGELOG.md +0 -113
  14. data/vendor/bundle/ruby/3.3.0/gems/actionview-7.2.1/MIT-LICENSE +0 -21
  15. data/vendor/bundle/ruby/3.3.0/gems/actionview-7.2.1/README.rdoc +0 -40
  16. data/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.1/CHANGELOG.md +0 -258
  17. data/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.1/MIT-LICENSE +0 -20
  18. data/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.1/README.rdoc +0 -40
  19. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/CHANGELOG.md +0 -301
  20. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/LICENSE.txt +0 -202
  21. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/README.md +0 -121
  22. data/vendor/bundle/ruby/3.3.0/gems/addressable-2.8.7/addressable.gemspec +0 -28
  23. data/vendor/bundle/ruby/3.3.0/gems/appraisal-2.5.0/MIT-LICENSE +0 -21
  24. data/vendor/bundle/ruby/3.3.0/gems/appraisal-2.5.0/README.md +0 -243
  25. data/vendor/bundle/ruby/3.3.0/gems/appraisal-2.5.0/appraisal.gemspec +0 -29
  26. data/vendor/bundle/ruby/3.3.0/gems/ast-2.4.2/LICENSE.MIT +0 -20
  27. data/vendor/bundle/ruby/3.3.0/gems/ast-2.4.2/README.YARD.md +0 -12
  28. data/vendor/bundle/ruby/3.3.0/gems/benchmark-ips-2.13.0/LICENSE +0 -20
  29. data/vendor/bundle/ruby/3.3.0/gems/benchmark-ips-2.13.0/README.md +0 -279
  30. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-3.1.8/LICENSE +0 -56
  31. data/vendor/bundle/ruby/3.3.0/gems/bigdecimal-3.1.8/bigdecimal.gemspec +0 -57
  32. data/vendor/bundle/ruby/3.3.0/gems/builder-3.3.0/MIT-LICENSE +0 -20
  33. data/vendor/bundle/ruby/3.3.0/gems/builder-3.3.0/README.md +0 -258
  34. data/vendor/bundle/ruby/3.3.0/gems/builder-3.3.0/builder.gemspec +0 -49
  35. data/vendor/bundle/ruby/3.3.0/gems/byebug-11.1.3/CHANGELOG.md +0 -934
  36. data/vendor/bundle/ruby/3.3.0/gems/byebug-11.1.3/LICENSE +0 -23
  37. data/vendor/bundle/ruby/3.3.0/gems/byebug-11.1.3/README.md +0 -199
  38. data/vendor/bundle/ruby/3.3.0/gems/coderay-1.1.3/MIT-LICENSE +0 -22
  39. data/vendor/bundle/ruby/3.3.0/gems/coderay-1.1.3/README_INDEX.rdoc +0 -123
  40. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.4/CHANGELOG.md +0 -593
  41. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.4/LICENSE.txt +0 -21
  42. data/vendor/bundle/ruby/3.3.0/gems/concurrent-ruby-1.3.4/README.md +0 -407
  43. data/vendor/bundle/ruby/3.3.0/gems/connection_pool-2.4.1/LICENSE +0 -20
  44. data/vendor/bundle/ruby/3.3.0/gems/connection_pool-2.4.1/README.md +0 -135
  45. data/vendor/bundle/ruby/3.3.0/gems/connection_pool-2.4.1/connection_pool.gemspec +0 -24
  46. data/vendor/bundle/ruby/3.3.0/gems/crass-1.0.6/LICENSE +0 -18
  47. data/vendor/bundle/ruby/3.3.0/gems/crass-1.0.6/README.md +0 -192
  48. data/vendor/bundle/ruby/3.3.0/gems/crass-1.0.6/crass.gemspec +0 -31
  49. data/vendor/bundle/ruby/3.3.0/gems/diff-lcs-1.5.1/README.rdoc +0 -84
  50. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/LICENSE +0 -21
  51. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/README.md +0 -409
  52. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/docile.gemspec +0 -36
  53. data/vendor/bundle/ruby/3.3.0/gems/drb-2.2.1/LICENSE.txt +0 -22
  54. data/vendor/bundle/ruby/3.3.0/gems/drb-2.2.1/drb.gemspec +0 -41
  55. data/vendor/bundle/ruby/3.3.0/gems/erubi-1.13.0/CHANGELOG +0 -107
  56. data/vendor/bundle/ruby/3.3.0/gems/erubi-1.13.0/MIT-LICENSE +0 -21
  57. data/vendor/bundle/ruby/3.3.0/gems/erubi-1.13.0/README.rdoc +0 -151
  58. data/vendor/bundle/ruby/3.3.0/gems/i18n-1.14.5/MIT-LICENSE +0 -20
  59. data/vendor/bundle/ruby/3.3.0/gems/i18n-1.14.5/README.md +0 -127
  60. data/vendor/bundle/ruby/3.3.0/gems/io-console-0.7.2/LICENSE.txt +0 -22
  61. data/vendor/bundle/ruby/3.3.0/gems/io-console-0.7.2/README.md +0 -46
  62. data/vendor/bundle/ruby/3.3.0/gems/irb-1.14.0/LICENSE.txt +0 -22
  63. data/vendor/bundle/ruby/3.3.0/gems/irb-1.14.0/README.md +0 -405
  64. data/vendor/bundle/ruby/3.3.0/gems/irb-1.14.0/irb.gemspec +0 -46
  65. data/vendor/bundle/ruby/3.3.0/gems/json-2.7.2/LICENSE +0 -56
  66. data/vendor/bundle/ruby/3.3.0/gems/json-2.7.2/README.md +0 -416
  67. data/vendor/bundle/ruby/3.3.0/gems/json-2.7.2/json.gemspec +0 -68
  68. data/vendor/bundle/ruby/3.3.0/gems/language_server-protocol-3.17.0.3/LICENSE.txt +0 -21
  69. data/vendor/bundle/ruby/3.3.0/gems/language_server-protocol-3.17.0.3/README.md +0 -88
  70. data/vendor/bundle/ruby/3.3.0/gems/loofah-2.22.0/CHANGELOG.md +0 -566
  71. data/vendor/bundle/ruby/3.3.0/gems/loofah-2.22.0/MIT-LICENSE.txt +0 -23
  72. data/vendor/bundle/ruby/3.3.0/gems/loofah-2.22.0/README.md +0 -363
  73. data/vendor/bundle/ruby/3.3.0/gems/method_source-1.1.0/CHANGELOG.md +0 -15
  74. data/vendor/bundle/ruby/3.3.0/gems/method_source-1.1.0/LICENSE +0 -22
  75. data/vendor/bundle/ruby/3.3.0/gems/method_source-1.1.0/README.markdown +0 -101
  76. data/vendor/bundle/ruby/3.3.0/gems/method_source-1.1.0/method_source.gemspec +0 -19
  77. data/vendor/bundle/ruby/3.3.0/gems/minitest-5.25.1/README.rdoc +0 -835
  78. data/vendor/bundle/ruby/3.3.0/gems/nokogiri-1.16.7-x86_64-linux/LICENSE-DEPENDENCIES.md +0 -2224
  79. data/vendor/bundle/ruby/3.3.0/gems/nokogiri-1.16.7-x86_64-linux/LICENSE.md +0 -9
  80. data/vendor/bundle/ruby/3.3.0/gems/nokogiri-1.16.7-x86_64-linux/README.md +0 -290
  81. data/vendor/bundle/ruby/3.3.0/gems/parallel-1.26.3/MIT-LICENSE.txt +0 -20
  82. data/vendor/bundle/ruby/3.3.0/gems/parser-3.3.4.2/LICENSE.txt +0 -25
  83. data/vendor/bundle/ruby/3.3.0/gems/parser-3.3.4.2/parser.gemspec +0 -43
  84. data/vendor/bundle/ruby/3.3.0/gems/pry-0.14.2/CHANGELOG.md +0 -1141
  85. data/vendor/bundle/ruby/3.3.0/gems/pry-0.14.2/LICENSE +0 -25
  86. data/vendor/bundle/ruby/3.3.0/gems/pry-0.14.2/README.md +0 -466
  87. data/vendor/bundle/ruby/3.3.0/gems/pry-0.14.2/lib/pry/slop/LICENSE +0 -20
  88. data/vendor/bundle/ruby/3.3.0/gems/pry-byebug-3.10.1/CHANGELOG.md +0 -230
  89. data/vendor/bundle/ruby/3.3.0/gems/pry-byebug-3.10.1/LICENSE +0 -20
  90. data/vendor/bundle/ruby/3.3.0/gems/pry-byebug-3.10.1/README.md +0 -189
  91. data/vendor/bundle/ruby/3.3.0/gems/public_suffix-6.0.1/CHANGELOG.md +0 -491
  92. data/vendor/bundle/ruby/3.3.0/gems/public_suffix-6.0.1/LICENSE.txt +0 -22
  93. data/vendor/bundle/ruby/3.3.0/gems/public_suffix-6.0.1/README.md +0 -222
  94. data/vendor/bundle/ruby/3.3.0/gems/racc-1.8.1/README.ja.rdoc +0 -58
  95. data/vendor/bundle/ruby/3.3.0/gems/racc-1.8.1/README.rdoc +0 -60
  96. data/vendor/bundle/ruby/3.3.0/gems/rack-3.1.7/CHANGELOG.md +0 -994
  97. data/vendor/bundle/ruby/3.3.0/gems/rack-3.1.7/MIT-LICENSE +0 -20
  98. data/vendor/bundle/ruby/3.3.0/gems/rack-3.1.7/README.md +0 -328
  99. data/vendor/bundle/ruby/3.3.0/gems/rack-test-2.1.0/MIT-LICENSE.txt +0 -20
  100. data/vendor/bundle/ruby/3.3.0/gems/rack-test-2.1.0/README.md +0 -139
  101. data/vendor/bundle/ruby/3.3.0/gems/rails-dom-testing-2.2.0/MIT-LICENSE +0 -23
  102. data/vendor/bundle/ruby/3.3.0/gems/rails-dom-testing-2.2.0/README.md +0 -91
  103. data/vendor/bundle/ruby/3.3.0/gems/rails-html-sanitizer-1.6.0/CHANGELOG.md +0 -201
  104. data/vendor/bundle/ruby/3.3.0/gems/rails-html-sanitizer-1.6.0/MIT-LICENSE +0 -23
  105. data/vendor/bundle/ruby/3.3.0/gems/rails-html-sanitizer-1.6.0/README.md +0 -271
  106. data/vendor/bundle/ruby/3.3.0/gems/railties-7.2.1/CHANGELOG.md +0 -361
  107. data/vendor/bundle/ruby/3.3.0/gems/railties-7.2.1/MIT-LICENSE +0 -20
  108. data/vendor/bundle/ruby/3.3.0/gems/railties-7.2.1/README.rdoc +0 -39
  109. data/vendor/bundle/ruby/3.3.0/gems/railties-7.2.1/lib/rails/generators/rails/app/templates/README.md.tt +0 -24
  110. data/vendor/bundle/ruby/3.3.0/gems/railties-7.2.1/lib/rails/generators/rails/plugin/templates/%name%.gemspec.tt +0 -28
  111. data/vendor/bundle/ruby/3.3.0/gems/railties-7.2.1/lib/rails/generators/rails/plugin/templates/MIT-LICENSE.tt +0 -20
  112. data/vendor/bundle/ruby/3.3.0/gems/railties-7.2.1/lib/rails/generators/rails/plugin/templates/README.md.tt +0 -28
  113. data/vendor/bundle/ruby/3.3.0/gems/rainbow-3.1.1/LICENSE +0 -20
  114. data/vendor/bundle/ruby/3.3.0/gems/rainbow-3.1.1/README.markdown +0 -227
  115. data/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/MIT-LICENSE +0 -21
  116. data/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/README.rdoc +0 -155
  117. data/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/rake.gemspec +0 -101
  118. data/vendor/bundle/ruby/3.3.0/gems/rake-release-1.3.0/LICENSE +0 -21
  119. data/vendor/bundle/ruby/3.3.0/gems/rake-release-1.3.0/README.md +0 -107
  120. data/vendor/bundle/ruby/3.3.0/gems/rake-release-1.3.0/rake-release.gemspec +0 -23
  121. data/vendor/bundle/ruby/3.3.0/gems/rdoc-6.7.0/LICENSE.rdoc +0 -57
  122. data/vendor/bundle/ruby/3.3.0/gems/rdoc-6.7.0/README.rdoc +0 -129
  123. data/vendor/bundle/ruby/3.3.0/gems/regexp_parser-2.9.2/LICENSE +0 -22
  124. data/vendor/bundle/ruby/3.3.0/gems/regexp_parser-2.9.2/regexp_parser.gemspec +0 -34
  125. data/vendor/bundle/ruby/3.3.0/gems/reline-0.5.9/README.md +0 -94
  126. data/vendor/bundle/ruby/3.3.0/gems/rexml-3.3.6/LICENSE.txt +0 -22
  127. data/vendor/bundle/ruby/3.3.0/gems/rexml-3.3.6/README.md +0 -57
  128. data/vendor/bundle/ruby/3.3.0/gems/rspec-3.13.0/LICENSE.md +0 -27
  129. data/vendor/bundle/ruby/3.3.0/gems/rspec-3.13.0/README.md +0 -47
  130. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.0/LICENSE.md +0 -26
  131. data/vendor/bundle/ruby/3.3.0/gems/rspec-core-3.13.0/README.md +0 -389
  132. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.2/LICENSE.md +0 -25
  133. data/vendor/bundle/ruby/3.3.0/gems/rspec-expectations-3.13.2/README.md +0 -326
  134. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.1/LICENSE.md +0 -25
  135. data/vendor/bundle/ruby/3.3.0/gems/rspec-mocks-3.13.1/README.md +0 -465
  136. data/vendor/bundle/ruby/3.3.0/gems/rspec-rails-6.1.4/LICENSE.md +0 -25
  137. data/vendor/bundle/ruby/3.3.0/gems/rspec-rails-6.1.4/README.md +0 -381
  138. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.1/LICENSE.md +0 -23
  139. data/vendor/bundle/ruby/3.3.0/gems/rspec-support-3.13.1/README.md +0 -40
  140. data/vendor/bundle/ruby/3.3.0/gems/rubocop-1.65.1/LICENSE.txt +0 -20
  141. data/vendor/bundle/ruby/3.3.0/gems/rubocop-1.65.1/README.md +0 -251
  142. data/vendor/bundle/ruby/3.3.0/gems/rubocop-ast-1.32.1/LICENSE.txt +0 -20
  143. data/vendor/bundle/ruby/3.3.0/gems/rubocop-ast-1.32.1/README.md +0 -56
  144. data/vendor/bundle/ruby/3.3.0/gems/rubocop-capybara-2.21.0/CHANGELOG.md +0 -85
  145. data/vendor/bundle/ruby/3.3.0/gems/rubocop-capybara-2.21.0/MIT-LICENSE.md +0 -21
  146. data/vendor/bundle/ruby/3.3.0/gems/rubocop-capybara-2.21.0/README.md +0 -88
  147. data/vendor/bundle/ruby/3.3.0/gems/rubocop-factory_bot-2.26.1/CHANGELOG.md +0 -116
  148. data/vendor/bundle/ruby/3.3.0/gems/rubocop-factory_bot-2.26.1/MIT-LICENSE.md +0 -21
  149. data/vendor/bundle/ruby/3.3.0/gems/rubocop-factory_bot-2.26.1/README.md +0 -88
  150. data/vendor/bundle/ruby/3.3.0/gems/rubocop-performance-1.21.1/LICENSE.txt +0 -20
  151. data/vendor/bundle/ruby/3.3.0/gems/rubocop-performance-1.21.1/README.md +0 -97
  152. data/vendor/bundle/ruby/3.3.0/gems/rubocop-rspec-3.0.4/CHANGELOG.md +0 -1028
  153. data/vendor/bundle/ruby/3.3.0/gems/rubocop-rspec-3.0.4/MIT-LICENSE.md +0 -21
  154. data/vendor/bundle/ruby/3.3.0/gems/rubocop-rspec-3.0.4/README.md +0 -109
  155. data/vendor/bundle/ruby/3.3.0/gems/rubocop-rspec_rails-2.30.0/CHANGELOG.md +0 -84
  156. data/vendor/bundle/ruby/3.3.0/gems/rubocop-rspec_rails-2.30.0/MIT-LICENSE.md +0 -21
  157. data/vendor/bundle/ruby/3.3.0/gems/rubocop-rspec_rails-2.30.0/README.md +0 -90
  158. data/vendor/bundle/ruby/3.3.0/gems/ruby-progressbar-1.13.0/LICENSE.txt +0 -19
  159. data/vendor/bundle/ruby/3.3.0/gems/ruby-progressbar-1.13.0/README.md +0 -131
  160. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/CHANGELOG.md +0 -191
  161. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/LICENSE +0 -20
  162. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/README.md +0 -974
  163. data/vendor/bundle/ruby/3.3.0/gems/simplecov-cobertura-2.1.0/LICENSE +0 -202
  164. data/vendor/bundle/ruby/3.3.0/gems/simplecov-cobertura-2.1.0/README.md +0 -62
  165. data/vendor/bundle/ruby/3.3.0/gems/simplecov-cobertura-2.1.0/simplecov-cobertura.gemspec +0 -29
  166. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.12.3/CHANGELOG.md +0 -81
  167. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.12.3/LICENSE +0 -20
  168. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.12.3/README.md +0 -30
  169. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.12.3/simplecov-html.gemspec +0 -23
  170. data/vendor/bundle/ruby/3.3.0/gems/simplecov_json_formatter-0.1.4/CHANGELOG.md +0 -13
  171. data/vendor/bundle/ruby/3.3.0/gems/simplecov_json_formatter-0.1.4/README.md +0 -29
  172. data/vendor/bundle/ruby/3.3.0/gems/strscan-3.1.0/LICENSE.txt +0 -22
  173. data/vendor/bundle/ruby/3.3.0/gems/thor-1.3.1/LICENSE.md +0 -20
  174. data/vendor/bundle/ruby/3.3.0/gems/thor-1.3.1/README.md +0 -45
  175. data/vendor/bundle/ruby/3.3.0/gems/thor-1.3.1/thor.gemspec +0 -33
  176. data/vendor/bundle/ruby/3.3.0/gems/tzinfo-2.0.6/LICENSE +0 -19
  177. data/vendor/bundle/ruby/3.3.0/gems/tzinfo-2.0.6/README.md +0 -406
  178. data/vendor/bundle/ruby/3.3.0/gems/unicode-display_width-2.5.0/CHANGELOG.md +0 -196
  179. data/vendor/bundle/ruby/3.3.0/gems/unicode-display_width-2.5.0/MIT-LICENSE.txt +0 -22
  180. data/vendor/bundle/ruby/3.3.0/gems/unicode-display_width-2.5.0/README.md +0 -171
  181. data/vendor/bundle/ruby/3.3.0/gems/useragent-0.16.10/LICENSE +0 -20
  182. data/vendor/bundle/ruby/3.3.0/gems/useragent-0.16.10/README.md +0 -42
  183. data/vendor/bundle/ruby/3.3.0/gems/webrick-1.8.1/LICENSE.txt +0 -22
  184. data/vendor/bundle/ruby/3.3.0/gems/webrick-1.8.1/README.md +0 -61
  185. data/vendor/bundle/ruby/3.3.0/gems/webrick-1.8.1/webrick.gemspec +0 -70
  186. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.6.17/MIT-LICENSE +0 -20
  187. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.6.17/README.md +0 -1494
  188. data/vendor/bundle/ruby/3.3.0/specifications/actionpack-7.2.1.gemspec +0 -37
  189. data/vendor/bundle/ruby/3.3.0/specifications/actionview-7.2.1.gemspec +0 -33
  190. data/vendor/bundle/ruby/3.3.0/specifications/activesupport-7.2.1.gemspec +0 -36
  191. data/vendor/bundle/ruby/3.3.0/specifications/addressable-2.8.7.gemspec +0 -30
  192. data/vendor/bundle/ruby/3.3.0/specifications/appraisal-2.5.0.gemspec +0 -31
  193. data/vendor/bundle/ruby/3.3.0/specifications/ast-2.4.2.gemspec +0 -30
  194. data/vendor/bundle/ruby/3.3.0/specifications/benchmark-ips-2.13.0.gemspec +0 -28
  195. data/vendor/bundle/ruby/3.3.0/specifications/bigdecimal-3.1.8.gemspec +0 -25
  196. data/vendor/bundle/ruby/3.3.0/specifications/builder-3.3.0.gemspec +0 -22
  197. data/vendor/bundle/ruby/3.3.0/specifications/byebug-11.1.3.gemspec +0 -31
  198. data/vendor/bundle/ruby/3.3.0/specifications/coderay-1.1.3.gemspec +0 -25
  199. data/vendor/bundle/ruby/3.3.0/specifications/concurrent-ruby-1.3.4.gemspec +0 -24
  200. data/vendor/bundle/ruby/3.3.0/specifications/connection_pool-2.4.1.gemspec +0 -28
  201. data/vendor/bundle/ruby/3.3.0/specifications/crass-1.0.6.gemspec +0 -27
  202. data/vendor/bundle/ruby/3.3.0/specifications/diff-lcs-1.5.1.gemspec +0 -37
  203. data/vendor/bundle/ruby/3.3.0/specifications/docile-1.4.1.gemspec +0 -22
  204. data/vendor/bundle/ruby/3.3.0/specifications/drb-2.2.1.gemspec +0 -22
  205. data/vendor/bundle/ruby/3.3.0/specifications/erubi-1.13.0.gemspec +0 -29
  206. data/vendor/bundle/ruby/3.3.0/specifications/i18n-1.14.5.gemspec +0 -26
  207. data/vendor/bundle/ruby/3.3.0/specifications/io-console-0.7.2.gemspec +0 -25
  208. data/vendor/bundle/ruby/3.3.0/specifications/irb-1.14.0.gemspec +0 -30
  209. data/vendor/bundle/ruby/3.3.0/specifications/json-2.7.2.gemspec +0 -0
  210. data/vendor/bundle/ruby/3.3.0/specifications/language_server-protocol-3.17.0.3.gemspec +0 -31
  211. data/vendor/bundle/ruby/3.3.0/specifications/loofah-2.22.0.gemspec +0 -27
  212. data/vendor/bundle/ruby/3.3.0/specifications/method_source-1.1.0.gemspec +0 -21
  213. data/vendor/bundle/ruby/3.3.0/specifications/minitest-5.25.1.gemspec +0 -31
  214. data/vendor/bundle/ruby/3.3.0/specifications/nokogiri-1.16.7-x86_64-linux.gemspec +0 -31
  215. data/vendor/bundle/ruby/3.3.0/specifications/parallel-1.26.3.gemspec +0 -21
  216. data/vendor/bundle/ruby/3.3.0/specifications/parser-3.3.4.2.gemspec +0 -37
  217. data/vendor/bundle/ruby/3.3.0/specifications/pry-0.14.2.gemspec +0 -29
  218. data/vendor/bundle/ruby/3.3.0/specifications/pry-byebug-3.10.1.gemspec +0 -28
  219. data/vendor/bundle/ruby/3.3.0/specifications/public_suffix-6.0.1.gemspec +0 -24
  220. data/vendor/bundle/ruby/3.3.0/specifications/racc-1.8.1.gemspec +0 -28
  221. data/vendor/bundle/ruby/3.3.0/specifications/rack-3.1.7.gemspec +0 -31
  222. data/vendor/bundle/ruby/3.3.0/specifications/rack-session-2.0.0.gemspec +0 -28
  223. data/vendor/bundle/ruby/3.3.0/specifications/rack-test-2.1.0.gemspec +0 -29
  224. data/vendor/bundle/ruby/3.3.0/specifications/rackup-2.1.0.gemspec +0 -31
  225. data/vendor/bundle/ruby/3.3.0/specifications/rails-dom-testing-2.2.0.gemspec +0 -28
  226. data/vendor/bundle/ruby/3.3.0/specifications/rails-html-sanitizer-1.6.0.gemspec +0 -27
  227. data/vendor/bundle/ruby/3.3.0/specifications/railties-7.2.1.gemspec +0 -37
  228. data/vendor/bundle/ruby/3.3.0/specifications/rainbow-3.1.1.gemspec +0 -25
  229. data/vendor/bundle/ruby/3.3.0/specifications/rake-13.2.1.gemspec +0 -26
  230. data/vendor/bundle/ruby/3.3.0/specifications/rake-release-1.3.0.gemspec +0 -26
  231. data/vendor/bundle/ruby/3.3.0/specifications/rdoc-6.7.0.gemspec +0 -31
  232. data/vendor/bundle/ruby/3.3.0/specifications/regexp_parser-2.9.2.gemspec +0 -22
  233. data/vendor/bundle/ruby/3.3.0/specifications/reline-0.5.9.gemspec +0 -26
  234. data/vendor/bundle/ruby/3.3.0/specifications/rexml-3.3.6.gemspec +0 -29
  235. data/vendor/bundle/ruby/3.3.0/specifications/rspec-3.13.0.gemspec +0 -31
  236. data/vendor/bundle/ruby/3.3.0/specifications/rspec-core-3.13.0.gemspec +0 -39
  237. data/vendor/bundle/ruby/3.3.0/specifications/rspec-expectations-3.13.2.gemspec +0 -33
  238. data/vendor/bundle/ruby/3.3.0/specifications/rspec-mocks-3.13.1.gemspec +0 -33
  239. data/vendor/bundle/ruby/3.3.0/specifications/rspec-rails-6.1.4.gemspec +0 -37
  240. data/vendor/bundle/ruby/3.3.0/specifications/rspec-support-3.13.1.gemspec +0 -29
  241. data/vendor/bundle/ruby/3.3.0/specifications/rubocop-1.65.1.gemspec +0 -39
  242. data/vendor/bundle/ruby/3.3.0/specifications/rubocop-ast-1.32.1.gemspec +0 -28
  243. data/vendor/bundle/ruby/3.3.0/specifications/rubocop-capybara-2.21.0.gemspec +0 -27
  244. data/vendor/bundle/ruby/3.3.0/specifications/rubocop-factory_bot-2.26.1.gemspec +0 -27
  245. data/vendor/bundle/ruby/3.3.0/specifications/rubocop-performance-1.21.1.gemspec +0 -29
  246. data/vendor/bundle/ruby/3.3.0/specifications/rubocop-rspec-3.0.4.gemspec +0 -28
  247. data/vendor/bundle/ruby/3.3.0/specifications/rubocop-rspec_rails-2.30.0.gemspec +0 -28
  248. data/vendor/bundle/ruby/3.3.0/specifications/ruby-progressbar-1.13.0.gemspec +0 -29
  249. data/vendor/bundle/ruby/3.3.0/specifications/simplecov-0.22.0.gemspec +0 -28
  250. data/vendor/bundle/ruby/3.3.0/specifications/simplecov-cobertura-2.1.0.gemspec +0 -29
  251. data/vendor/bundle/ruby/3.3.0/specifications/simplecov-html-0.12.3.gemspec +0 -21
  252. data/vendor/bundle/ruby/3.3.0/specifications/simplecov_json_formatter-0.1.4.gemspec +0 -21
  253. data/vendor/bundle/ruby/3.3.0/specifications/strscan-3.1.0.gemspec +0 -24
  254. data/vendor/bundle/ruby/3.3.0/specifications/thor-1.3.1.gemspec +0 -28
  255. data/vendor/bundle/ruby/3.3.0/specifications/tzinfo-2.0.6.gemspec +0 -30
  256. data/vendor/bundle/ruby/3.3.0/specifications/unicode-display_width-2.5.0.gemspec +0 -29
  257. data/vendor/bundle/ruby/3.3.0/specifications/useragent-0.16.10.gemspec +0 -25
  258. data/vendor/bundle/ruby/3.3.0/specifications/webrick-1.8.1.gemspec +0 -22
  259. data/vendor/bundle/ruby/3.3.0/specifications/zeitwerk-2.6.17.gemspec +0 -22
@@ -1,243 +0,0 @@
1
- Appraisal
2
- =========
3
-
4
- Find out what your Ruby gems are worth.
5
-
6
- Synopsis
7
- --------
8
-
9
- Appraisal integrates with bundler and rake to test your library against
10
- different versions of dependencies in repeatable scenarios called "appraisals."
11
- Appraisal is designed to make it easy to check for regressions in your library
12
- without interfering with day-to-day development using Bundler.
13
-
14
- Installation
15
- ------------
16
-
17
- In your package's `.gemspec`:
18
-
19
- s.add_development_dependency "appraisal"
20
-
21
- Note that gems must be bundled in the global namespace. Bundling gems to a
22
- local location or vendoring plugins is not supported. If you do not want to
23
- pollute the global namespace, one alternative is
24
- [RVM's Gemsets](http://rvm.io/gemsets).
25
-
26
- Setup
27
- -----
28
-
29
- Setting up appraisal requires an `Appraisals` file (similar to a `Gemfile`) in
30
- your project root, named "Appraisals" (note the case), and some slight changes
31
- to your project's `Rakefile`.
32
-
33
- An `Appraisals` file consists of several appraisal definitions. An appraisal
34
- definition is simply a list of gem dependencies. For example, to test with a
35
- few versions of Rails:
36
-
37
- appraise "rails-3" do
38
- gem "rails", "3.2.14"
39
- end
40
-
41
- appraise "rails-4" do
42
- gem "rails", "4.0.0"
43
- end
44
-
45
- The dependencies in your `Appraisals` file are combined with dependencies in
46
- your `Gemfile`, so you don't need to repeat anything that's the same for each
47
- appraisal. If something is specified in both the Gemfile and an appraisal, the
48
- version from the appraisal takes precedence.
49
-
50
- Usage
51
- -----
52
-
53
- Once you've configured the appraisals you want to use, you need to install the
54
- dependencies for each appraisal:
55
-
56
- $ bundle exec appraisal install
57
-
58
- This will resolve, install, and lock the dependencies for that appraisal using
59
- bundler. Once you have your dependencies set up, you can run any command in a
60
- single appraisal:
61
-
62
- $ bundle exec appraisal rails-3 rake test
63
-
64
- This will run `rake test` using the dependencies configured for Rails 3. You can
65
- also run each appraisal in turn:
66
-
67
- $ bundle exec appraisal rake test
68
-
69
- If you want to use only the dependencies from your Gemfile, just run `rake
70
- test` as normal. This allows you to keep running with the latest versions of
71
- your dependencies in quick test runs, but keep running the tests in older
72
- versions to check for regressions.
73
-
74
- In the case that you want to run all the appraisals by default when you run
75
- `rake`, you can override your default Rake task by put this into your Rakefile:
76
-
77
- if !ENV["APPRAISAL_INITIALIZED"] && !ENV["TRAVIS"]
78
- task :default => :appraisal
79
- end
80
-
81
- (Appraisal sets `APPRAISAL_INITIALIZED` environment variable when it runs your
82
- process. We put a check here to ensure that `appraisal rake` command should run
83
- your real default task, which usually is your `test` task.)
84
-
85
- Note that this may conflict with your CI setup if you decide to split the test
86
- into multiple processes by Appraisal and you are using `rake` to run tests by
87
- default.
88
-
89
- ### Commands
90
-
91
- ```bash
92
- appraisal clean # Remove all generated gemfiles and lockfiles from gemfiles folder
93
- appraisal generate # Generate a gemfile for each appraisal
94
- appraisal help [COMMAND] # Describe available commands or one specific command
95
- appraisal install # Resolve and install dependencies for each appraisal
96
- appraisal list # List the names of the defined appraisals
97
- appraisal update [LIST_OF_GEMS] # Remove all generated gemfiles and lockfiles, resolve, and install dependencies again
98
- appraisal version # Display the version and exit
99
- ```
100
-
101
- Under the hood
102
- --------------
103
-
104
- Running `appraisal install` generates a Gemfile for each appraisal by combining
105
- your root Gemfile with the specific requirements for each appraisal. These are
106
- stored in the `gemfiles` directory, and should be added to version control to
107
- ensure that the same versions are always used.
108
-
109
- When you prefix a command with `appraisal`, the command is run with the
110
- appropriate Gemfile for that appraisal, ensuring the correct dependencies
111
- are used.
112
-
113
- Removing Gems using Appraisal
114
- -------
115
-
116
- It is common while managing multiple Gemfiles for dependencies to become deprecated and no
117
- longer necessary, meaning they need to be removed from the Gemfile for a specific `appraisal`.
118
- To do this, use the `remove_gem` declaration within the necessary `appraise` block in your
119
- `Appraisals` file.
120
-
121
- ### Example Usage
122
-
123
- **Gemfile**
124
- ```ruby
125
- gem 'rails', '~> 4.2'
126
-
127
- group :test do
128
- gem 'rspec', '~> 4.0'
129
- gem 'test_after_commit'
130
- end
131
- ```
132
-
133
- **Appraisals**
134
- ```ruby
135
- appraise 'rails-5' do
136
- gem 'rails', '~> 5.2'
137
-
138
- group :test do
139
- remove_gem :test_after_commit
140
- end
141
- end
142
- ```
143
-
144
- Using the `Appraisals` file defined above, this is what the resulting `Gemfile` will look like:
145
- ```ruby
146
- gem 'rails', '~> 5.2'
147
-
148
- group :test do
149
- gem 'rspec', '~> 4.0'
150
- end
151
- ```
152
-
153
- Customization
154
- -------------
155
-
156
- It is possible to customize the generated Gemfiles by adding a `customize_gemfiles` block to
157
- your `Appraisals` file. The block must contain a hash of key/value pairs. Currently supported
158
- customizations include:
159
- - heading: a string that by default adds "# This file was generated by Appraisal" to the top of each Gemfile, (the string will be commented for you)
160
- - single_quotes: a boolean that controls if strings are single quoted in each Gemfile, defaults to false
161
-
162
- ### Example Usage
163
-
164
- **Appraisals**
165
- ```ruby
166
- customize_gemfiles do
167
- {
168
- single_quotes: true,
169
- heading: <<~HEADING
170
- frozen_string_literal: true
171
-
172
- File has been generated by Appraisal, do NOT modify it directly!
173
- See the conventions at https://example.com/
174
- HEADING
175
- }
176
- end
177
-
178
- appraise "rails-3" do
179
- gem "rails", "3.2.14"
180
- end
181
- ```
182
-
183
- Using the `Appraisals` file defined above, this is what the resulting `Gemfile` will look like:
184
- ```ruby
185
- # frozen_string_literal: true
186
-
187
- # File has been generated by Appraisal, do NOT modify it directly!
188
- # See the conventions at https://example.com/
189
-
190
- gem 'rails', '3.2.14'
191
- ```
192
-
193
- Version Control
194
- ---------------
195
-
196
- When using Appraisal, we recommend you check in the Gemfiles that Appraisal
197
- generates within the gemfiles directory, but exclude the lockfiles there
198
- (`*.gemfile.lock`.) The Gemfiles are useful when running your tests against a
199
- continuous integration server.
200
-
201
- Circle CI Integration
202
- ---------------------
203
-
204
- In Circle CI you can override the default testing behaviour to customize your
205
- testing. Using this feature you can configure appraisal to execute your tests.
206
-
207
- In order to this you can put the following configuration in your circle.yml file:
208
-
209
- ```yml
210
- dependencies:
211
- post:
212
- - bundle exec appraisal install
213
- test:
214
- pre:
215
- - bundle exec appraisal rake db:create
216
- - bundle exec appraisal rake db:migrate
217
- override:
218
- - bundle exec appraisal rspec
219
- ```
220
-
221
- Notice that we are running an rspec suite. You can customize your testing
222
- command in the `override` section and use your favourite one.
223
-
224
- Credits
225
- -------
226
-
227
- ![thoughtbot](https://thoughtbot.com/thoughtbot-logo-for-readmes.svg)
228
-
229
- Appraisal is maintained and funded by [thoughtbot, inc][thoughtbot]
230
-
231
- Thank you to all [the contributors][contributors]
232
-
233
- The names and logos for thoughtbot are trademarks of thoughtbot, inc.
234
-
235
- [thoughtbot]: http://thoughtbot.com/community
236
- [contributors]: https://github.com/thoughtbot/appraisal/contributors
237
-
238
- License
239
- -------
240
-
241
- Appraisal is Copyright © 2010-2013 Joe Ferris and thoughtbot, inc. It is free
242
- software, and may be redistributed under the terms specified in the MIT-LICENSE
243
- file.
@@ -1,29 +0,0 @@
1
- # -*- encoding: utf-8 -*-
2
- $:.push File.expand_path("../lib", __FILE__)
3
- require "appraisal/version"
4
-
5
- Gem::Specification.new do |s|
6
- s.name = 'appraisal'
7
- s.version = Appraisal::VERSION.dup
8
- s.platform = Gem::Platform::RUBY
9
- s.authors = ['Joe Ferris', 'Prem Sichanugrist']
10
- s.email = ['jferris@thoughtbot.com', 'prem@thoughtbot.com']
11
- s.homepage = 'http://github.com/thoughtbot/appraisal'
12
- s.summary = 'Find out what your Ruby gems are worth'
13
- s.description = 'Appraisal integrates with bundler and rake to test your library against different versions of dependencies in repeatable scenarios called "appraisals."'
14
- s.license = 'MIT'
15
-
16
- s.files = `git ls-files`.split("\n")
17
- s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
18
- s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
19
- s.require_paths = ["lib"]
20
-
21
- s.required_ruby_version = ">= 2.3.0"
22
-
23
- s.add_runtime_dependency('rake')
24
- s.add_runtime_dependency('bundler')
25
- s.add_runtime_dependency('thor', '>= 0.14.0')
26
-
27
- s.add_development_dependency("activesupport", ">= 3.2.21")
28
- s.add_development_dependency('rspec', '~> 3.0')
29
- end
@@ -1,20 +0,0 @@
1
- Copyright (c) 2011-2013 Peter Zotov <whitequark@whitequark.org>
2
-
3
- Permission is hereby granted, free of charge, to any person obtaining a
4
- copy of this software and associated documentation files (the
5
- "Software"), to deal in the Software without restriction, including
6
- without limitation the rights to use, copy, modify, merge, publish,
7
- distribute, sublicense, and/or sell copies of the Software, and to
8
- permit persons to whom the Software is furnished to do so, subject to
9
- the following conditions:
10
-
11
- The above copyright notice and this permission notice shall be included
12
- in all copies or substantial portions of the Software.
13
-
14
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
15
- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
17
- IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
18
- CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
19
- TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
20
- SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1,12 +0,0 @@
1
- {AST} is a library for manipulating abstract syntax trees.
2
-
3
- It embraces immutability; each AST node is inherently frozen at
4
- creation, and updating a child node requires recreating that node
5
- and its every parent, recursively.
6
-
7
- This is a design choice. It does create some pressure on
8
- garbage collector, but completely eliminates all concurrency
9
- and aliasing problems.
10
-
11
- See also {AST::Node}, {AST::Processor::Mixin} and {AST::Sexp} for
12
- additional recommendations and design patterns.
@@ -1,20 +0,0 @@
1
- Copyright (c) 2015 Evan Phoenix
2
-
3
- Permission is hereby granted, free of charge, to any person obtaining
4
- a copy of this software and associated documentation files (the
5
- 'Software'), to deal in the Software without restriction, including
6
- without limitation the rights to use, copy, modify, merge, publish,
7
- distribute, sublicense, and/or sell copies of the Software, and to
8
- permit persons to whom the Software is furnished to do so, subject to
9
- the following conditions:
10
-
11
- The above copyright notice and this permission notice shall be
12
- included in all copies or substantial portions of the Software.
13
-
14
- THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
15
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
17
- IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
18
- CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
19
- TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
20
- SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1,279 +0,0 @@
1
- # benchmark-ips
2
-
3
- * rdoc :: http://rubydoc.info/gems/benchmark-ips
4
- * home :: https://github.com/evanphx/benchmark-ips
5
-
6
- [![Gem Version](https://badge.fury.io/rb/benchmark-ips.svg)](http://badge.fury.io/rb/benchmark-ips)
7
- [![Build Status](https://secure.travis-ci.org/evanphx/benchmark-ips.svg)](http://travis-ci.org/evanphx/benchmark-ips)
8
- [![Inline docs](http://inch-ci.org/github/evanphx/benchmark-ips.svg)](http://inch-ci.org/github/evanphx/benchmark-ips)
9
-
10
- * https://github.com/evanphx/benchmark-ips
11
-
12
- ## DESCRIPTION:
13
-
14
- An iterations per second enhancement to Benchmark.
15
-
16
- ## FEATURES/PROBLEMS:
17
-
18
- * benchmark/ips - benchmarks a blocks iterations/second. For short snippits
19
- of code, ips automatically figures out how many times to run the code
20
- to get interesting data. No more guessing at random iteration counts!
21
-
22
- ## SYNOPSIS:
23
-
24
- ```ruby
25
- require 'benchmark/ips'
26
-
27
- Benchmark.ips do |x|
28
- # Configure the number of seconds used during
29
- # the warmup phase (default 2) and calculation phase (default 5)
30
- x.config(:time => 5, :warmup => 2)
31
-
32
- # These parameters can also be configured this way
33
- x.time = 5
34
- x.warmup = 2
35
-
36
- # Typical mode, runs the block as many times as it can
37
- x.report("addition") { 1 + 2 }
38
-
39
- # To reduce overhead, the number of iterations is passed in
40
- # and the block must run the code the specific number of times.
41
- # Used for when the workload is very small and any overhead
42
- # introduces incorrectable errors.
43
- x.report("addition2") do |times|
44
- i = 0
45
- while i < times
46
- 1 + 2
47
- i += 1
48
- end
49
- end
50
-
51
- # To reduce overhead even more, grafts the code given into
52
- # the loop that performs the iterations internally to reduce
53
- # overhead. Typically not needed, use the |times| form instead.
54
- x.report("addition3", "1 + 2")
55
-
56
- # Really long labels should be formatted correctly
57
- x.report("addition-test-long-label") { 1 + 2 }
58
-
59
- # Compare the iterations per second of the various reports!
60
- x.compare!
61
- end
62
- ```
63
-
64
- This will generate the following report:
65
-
66
- ```
67
- Calculating -------------------------------------
68
- addition 71.254k i/100ms
69
- addition2 68.658k i/100ms
70
- addition3 83.079k i/100ms
71
- addition-test-long-label
72
- 70.129k i/100ms
73
- -------------------------------------------------
74
- addition 4.955M (± 8.7%) i/s - 24.155M
75
- addition2 24.011M (± 9.5%) i/s - 114.246M
76
- addition3 23.958M (±10.1%) i/s - 115.064M
77
- addition-test-long-label
78
- 5.014M (± 9.1%) i/s - 24.545M
79
-
80
- Comparison:
81
- addition2: 24011974.8 i/s
82
- addition3: 23958619.8 i/s - 1.00x slower
83
- addition-test-long-label: 5014756.0 i/s - 4.79x slower
84
- addition: 4955278.9 i/s - 4.85x slower
85
- ```
86
-
87
- Benchmark/ips will report the number of iterations per second for a given block
88
- of code. When analyzing the results, notice the percent of [standard
89
- deviation](http://en.wikipedia.org/wiki/Standard\_deviation) which tells us how
90
- spread out our measurements are from the average. A high standard deviation
91
- could indicate the results having too much variability.
92
-
93
- One benefit to using this method is benchmark-ips automatically determines the
94
- data points for testing our code, so we can focus on the results instead of
95
- guessing iteration counts as we do with the traditional Benchmark library.
96
-
97
- ### Custom Suite
98
-
99
- Pass a custom suite to disable garbage collection during benchmark:
100
-
101
- ```ruby
102
- require 'benchmark/ips'
103
-
104
- # Enable and start GC before each job run. Disable GC afterwards.
105
- #
106
- # Inspired by https://www.omniref.com/ruby/2.2.1/symbols/Benchmark/bm?#annotation=4095926&line=182
107
- class GCSuite
108
- def warming(*)
109
- run_gc
110
- end
111
-
112
- def running(*)
113
- run_gc
114
- end
115
-
116
- def warmup_stats(*)
117
- end
118
-
119
- def add_report(*)
120
- end
121
-
122
- private
123
-
124
- def run_gc
125
- GC.enable
126
- GC.start
127
- GC.disable
128
- end
129
- end
130
-
131
- suite = GCSuite.new
132
-
133
- Benchmark.ips do |x|
134
- x.config(:suite => suite)
135
- x.report("job1") { ... }
136
- x.report("job2") { ... }
137
- end
138
- ```
139
-
140
- ### Independent benchmarking
141
-
142
- If you are comparing multiple implementations of a piece of code you may want
143
- to benchmark them in separate invocations of Ruby so that the measurements
144
- are independent of each other. You can do this with the `hold!` command.
145
-
146
- ```ruby
147
- Benchmark.ips do |x|
148
-
149
- # Hold results between multiple invocations of Ruby
150
- x.hold! 'filename'
151
-
152
- end
153
- ```
154
-
155
- This will run only one benchmarks each time you run the command, storing
156
- results in the specified file. The file is deleted when all results have been
157
- gathered and the report is shown.
158
-
159
- Alternatively, if you prefer a different approach, the `save!` command is
160
- available. Examples for [hold!](examples/hold.rb) and [save!](examples/save.rb) are available in
161
- the `examples/` directory.
162
-
163
-
164
- ### Multiple iterations
165
-
166
- In some cases you may want to run multiple iterations of the warmup and
167
- calculation stages and take only the last result for comparison. This is useful
168
- if you are benchmarking with an implementation of Ruby that optimizes using
169
- tracing or on-stack-replacement, because to those implementations the
170
- calculation phase may appear as new, unoptimized code.
171
-
172
- You can do this with the `iterations` option, which by default is `1`. The
173
- total time spent will then be `iterations * warmup + iterations * time` seconds.
174
-
175
- ```ruby
176
- Benchmark.ips do |x|
177
-
178
- x.config(:iterations => 3)
179
-
180
- # or
181
-
182
- x.iterations = 3
183
-
184
- end
185
- ```
186
-
187
- ### Online sharing
188
-
189
- If you want to quickly share your benchmark result with others, run you benchmark
190
- with `SHARE=1` argument. For example: `SHARE=1 ruby my_benchmark.rb`.
191
-
192
- Result will be sent to [benchmark.fyi](https://ips.fastruby.io/) and benchmark-ips
193
- will display the link to share the benchmark's result.
194
-
195
- If you want to run your own instance of [benchmark.fyi](https://github.com/evanphx/benchmark.fyi)
196
- and share it to that instance, you can do this: `SHARE_URL=https://ips.example.com ruby my_benchmark.rb`
197
-
198
- ### Advanced Statistics
199
-
200
- By default, the margin of error shown is plus-minus one standard deviation. If
201
- a more advanced statistical test is wanted, a bootstrap confidence interval
202
- can be calculated instead. A bootstrap confidence interval has the advantages of
203
- arguably being more mathematically sound for this application than a standard
204
- deviation, it additionally produces an error for relative slowdowns, which the
205
- standard deviation does not, and it is arguably more intuitive and actionable.
206
-
207
- When a bootstrap confidence interval is used, a median of the interval is used
208
- rather than the mean of the samples, which is what you get with the default
209
- standard deviation.
210
-
211
- The bootstrap confidence interval used is the one described by Tomas Kalibera.
212
- Note that for this technique to be valid your benchmark should have reached a
213
- non-periodic steady state with statistically independent samples (it should
214
- have warmed up) by the time measurements start.
215
-
216
- Using a bootstrap confidence internal requires that the 'kalibera' gem is
217
- installed separately. This gem is not a formal dependency, as by default it is
218
- not needed.
219
-
220
- ```
221
- gem install kalibera
222
- ```
223
-
224
- ```ruby
225
- Benchmark.ips do |x|
226
-
227
- # The default is :stats => :sd, which doesn't have a configurable confidence
228
- x.config(:stats => :bootstrap, :confidence => 95)
229
-
230
- # or
231
-
232
- x.stats = :bootstrap
233
- x.confidence = 95
234
-
235
- # confidence is 95% by default, so it can be omitted
236
-
237
- end
238
- ```
239
-
240
- ### Output as JSON
241
-
242
- You can generate output in JSON. If you want to write JSON to a file, pass filename to `json!` method:
243
-
244
- ```ruby
245
- Benchmark.ips do |x|
246
- x.report("some report") { }
247
- x.json! 'filename.json'
248
- end
249
- ```
250
-
251
- If you want to write JSON to STDOUT, pass `STDOUT` to `json!` method and set `quiet = true` before `json!`:
252
-
253
- ```ruby
254
- Benchmark.ips do |x|
255
- x.report("some report") { }
256
- x.quiet = true
257
- x.json! STDOUT
258
- end
259
- ```
260
-
261
- This is useful when the output from `benchmark-ips` becomes an input of other tools via stdin.
262
-
263
- ## REQUIREMENTS:
264
-
265
- * None!
266
-
267
- ## INSTALL:
268
-
269
- $ gem install benchmark-ips
270
-
271
- ## DEVELOPERS:
272
-
273
- After checking out the source, run:
274
-
275
- $ rake newb
276
-
277
- This task will install any missing dependencies, run the tests/specs,
278
- and generate the RDoc.
279
-
@@ -1,56 +0,0 @@
1
- Ruby is copyrighted free software by Yukihiro Matsumoto <matz@netlab.jp>.
2
- You can redistribute it and/or modify it under either the terms of the
3
- 2-clause BSDL (see the file BSDL), or the conditions below:
4
-
5
- 1. You may make and give away verbatim copies of the source form of the
6
- software without restriction, provided that you duplicate all of the
7
- original copyright notices and associated disclaimers.
8
-
9
- 2. You may modify your copy of the software in any way, provided that
10
- you do at least ONE of the following:
11
-
12
- a) place your modifications in the Public Domain or otherwise
13
- make them Freely Available, such as by posting said
14
- modifications to Usenet or an equivalent medium, or by allowing
15
- the author to include your modifications in the software.
16
-
17
- b) use the modified software only within your corporation or
18
- organization.
19
-
20
- c) give non-standard binaries non-standard names, with
21
- instructions on where to get the original software distribution.
22
-
23
- d) make other distribution arrangements with the author.
24
-
25
- 3. You may distribute the software in object code or binary form,
26
- provided that you do at least ONE of the following:
27
-
28
- a) distribute the binaries and library files of the software,
29
- together with instructions (in the manual page or equivalent)
30
- on where to get the original distribution.
31
-
32
- b) accompany the distribution with the machine-readable source of
33
- the software.
34
-
35
- c) give non-standard binaries non-standard names, with
36
- instructions on where to get the original software distribution.
37
-
38
- d) make other distribution arrangements with the author.
39
-
40
- 4. You may modify and include the part of the software into any other
41
- software (possibly commercial). But some files in the distribution
42
- are not written by the author, so that they are not under these terms.
43
-
44
- For the list of those files and their copying conditions, see the
45
- file LEGAL.
46
-
47
- 5. The scripts and library files supplied as input to or produced as
48
- output from the software do not automatically fall under the
49
- copyright of the software, but belong to whomever generated them,
50
- and may be sold commercially, and may be aggregated with this
51
- software.
52
-
53
- 6. THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR
54
- IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
55
- WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
56
- PURPOSE.