rails-rfc6570 3.2.0 → 3.3.0

Sign up to get free protection for your applications and to get access to all the features.
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.