rails-rfc6570 3.2.0 → 3.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (281) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +31 -1
  3. data/README.md +3 -1
  4. data/lib/rails/rfc6570/version.rb +1 -1
  5. data/lib/rails/rfc6570.rb +10 -29
  6. data/rails-rfc6570.gemspec +1 -1
  7. data/spec/dummy/config/application.rb +5 -1
  8. data/spec/dummy/config/environments/test.rb +1 -1
  9. data/spec/rails/rfc6570/extensions/route_set_spec.rb +29 -0
  10. data/spec/rails/rfc6570/helper_spec.rb +44 -0
  11. data/spec/rails/rfc6570/visitor_spec.rb +12 -0
  12. data/spec/spec_helper.rb +6 -0
  13. data/vendor/bundle/ruby/{3.3.0/bundler/gems/rubocop-config-943facea9d8f → 3.4.0/bundler/gems/rubocop-config-67802c9d1826}/rubocop-config.gemspec +8 -8
  14. data/vendor/bundle/ruby/3.4.0/gems/actionpack-8.0.1/CHANGELOG.md +205 -0
  15. data/vendor/bundle/ruby/3.4.0/gems/actionview-8.0.1/CHANGELOG.md +67 -0
  16. data/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.1/CHANGELOG.md +157 -0
  17. data/vendor/bundle/ruby/{3.3.0/gems/io-console-0.7.2 → 3.4.0/gems/base64-0.2.0}/README.md +17 -15
  18. data/vendor/bundle/ruby/3.4.0/gems/benchmark-0.4.0/README.md +138 -0
  19. data/vendor/bundle/ruby/3.4.0/gems/benchmark-0.4.0/benchmark.gemspec +32 -0
  20. data/vendor/bundle/ruby/{3.3.0/gems/concurrent-ruby-1.3.4 → 3.4.0/gems/concurrent-ruby-1.3.5}/CHANGELOG.md +12 -2
  21. data/vendor/bundle/ruby/{3.3.0/gems/concurrent-ruby-1.3.4 → 3.4.0/gems/concurrent-ruby-1.3.5}/README.md +1 -1
  22. data/vendor/bundle/ruby/{3.3.0/gems/connection_pool-2.4.1 → 3.4.0/gems/connection_pool-2.5.0}/README.md +32 -0
  23. data/vendor/bundle/ruby/{3.3.0/gems/erubi-1.13.0 → 3.4.0/gems/erubi-1.13.1}/CHANGELOG +4 -0
  24. data/vendor/bundle/ruby/3.4.0/gems/logger-1.6.5/README.md +104 -0
  25. data/vendor/bundle/ruby/3.4.0/gems/logger-1.6.5/logger.gemspec +28 -0
  26. data/vendor/bundle/ruby/{3.3.0/gems/loofah-2.22.0 → 3.4.0/gems/loofah-2.24.0}/CHANGELOG.md +25 -0
  27. data/vendor/bundle/ruby/{3.3.0/gems/loofah-2.22.0 → 3.4.0/gems/loofah-2.24.0}/README.md +59 -12
  28. data/vendor/bundle/ruby/{3.3.0/gems/nokogiri-1.16.7-x86_64-linux → 3.4.0/gems/nokogiri-1.18.2-x86_64-linux-gnu}/LICENSE-DEPENDENCIES.md +6 -6
  29. data/vendor/bundle/ruby/{3.3.0/gems/nokogiri-1.16.7-x86_64-linux → 3.4.0/gems/nokogiri-1.18.2-x86_64-linux-gnu}/README.md +8 -5
  30. data/vendor/bundle/ruby/{3.3.0/gems/rack-3.1.7 → 3.4.0/gems/rack-3.1.9}/CHANGELOG.md +12 -0
  31. data/vendor/bundle/ruby/{3.3.0/gems/rails-html-sanitizer-1.6.0 → 3.4.0/gems/rails-html-sanitizer-1.6.2}/CHANGELOG.md +54 -0
  32. data/vendor/bundle/ruby/{3.3.0/gems/rails-html-sanitizer-1.6.0 → 3.4.0/gems/rails-html-sanitizer-1.6.2}/README.md +0 -4
  33. data/vendor/bundle/ruby/3.4.0/gems/securerandom-0.4.1/README.md +72 -0
  34. data/vendor/bundle/ruby/3.4.0/gems/uri-1.0.2/README.md +55 -0
  35. data/vendor/bundle/ruby/{3.3.0/gems/useragent-0.16.10 → 3.4.0/gems/useragent-0.16.11}/README.md +2 -2
  36. data/vendor/bundle/ruby/{3.3.0/specifications/actionpack-7.2.1.gemspec → 3.4.0/specifications/actionpack-8.0.1.gemspec} +11 -12
  37. data/vendor/bundle/ruby/{3.3.0/specifications/actionview-7.2.1.gemspec → 3.4.0/specifications/actionview-8.0.1.gemspec} +10 -10
  38. data/vendor/bundle/ruby/{3.3.0/specifications/activesupport-7.2.1.gemspec → 3.4.0/specifications/activesupport-8.0.1.gemspec} +9 -7
  39. data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/specifications/addressable-2.8.7.gemspec +1 -1
  40. data/vendor/bundle/ruby/3.4.0/specifications/base64-0.2.0.gemspec +23 -0
  41. data/vendor/bundle/ruby/3.4.0/specifications/benchmark-0.4.0.gemspec +23 -0
  42. data/vendor/bundle/ruby/{3.3.0/specifications/bigdecimal-3.1.8.gemspec → 3.4.0/specifications/bigdecimal-3.1.9.gemspec} +5 -5
  43. data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/specifications/builder-3.3.0.gemspec +1 -1
  44. data/vendor/bundle/ruby/{3.3.0/specifications/concurrent-ruby-1.3.4.gemspec → 3.4.0/specifications/concurrent-ruby-1.3.5.gemspec} +4 -4
  45. data/vendor/bundle/ruby/{3.3.0/specifications/connection_pool-2.4.1.gemspec → 3.4.0/specifications/connection_pool-2.5.0.gemspec} +5 -5
  46. data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/specifications/crass-1.0.6.gemspec +1 -1
  47. data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/specifications/diff-lcs-1.5.1.gemspec +1 -1
  48. data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/specifications/drb-2.2.1.gemspec +1 -1
  49. data/vendor/bundle/ruby/{3.3.0/specifications/erubi-1.13.0.gemspec → 3.4.0/specifications/erubi-1.13.1.gemspec} +5 -5
  50. data/vendor/bundle/ruby/{3.3.0/specifications/i18n-1.14.5.gemspec → 3.4.0/specifications/i18n-1.14.7.gemspec} +5 -5
  51. data/vendor/bundle/ruby/3.4.0/specifications/logger-1.6.5.gemspec +22 -0
  52. data/vendor/bundle/ruby/{3.3.0/specifications/loofah-2.22.0.gemspec → 3.4.0/specifications/loofah-2.24.0.gemspec} +6 -6
  53. data/vendor/bundle/ruby/{3.3.0/specifications/minitest-5.25.1.gemspec → 3.4.0/specifications/minitest-5.25.4.gemspec} +5 -5
  54. data/vendor/bundle/ruby/3.4.0/specifications/nokogiri-1.18.2-x86_64-linux-gnu.gemspec +31 -0
  55. data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/specifications/public_suffix-6.0.1.gemspec +1 -1
  56. data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/specifications/racc-1.8.1.gemspec +1 -1
  57. data/vendor/bundle/ruby/{3.3.0/specifications/rack-3.1.7.gemspec → 3.4.0/specifications/rack-3.1.9.gemspec} +5 -5
  58. data/vendor/bundle/ruby/{3.3.0/specifications/rack-session-2.0.0.gemspec → 3.4.0/specifications/rack-session-2.1.0.gemspec} +8 -6
  59. data/vendor/bundle/ruby/{3.3.0/specifications/rack-test-2.1.0.gemspec → 3.4.0/specifications/rack-test-2.2.0.gemspec} +5 -5
  60. data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/specifications/rails-dom-testing-2.2.0.gemspec +1 -1
  61. data/vendor/bundle/ruby/{3.3.0/specifications/rails-html-sanitizer-1.6.0.gemspec → 3.4.0/specifications/rails-html-sanitizer-1.6.2.gemspec} +7 -7
  62. data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/specifications/rake-13.2.1.gemspec +1 -1
  63. data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/specifications/rake-release-1.3.0.gemspec +1 -1
  64. data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/specifications/rspec-3.13.0.gemspec +1 -1
  65. data/vendor/bundle/ruby/{3.3.0/specifications/rspec-core-3.13.0.gemspec → 3.4.0/specifications/rspec-core-3.13.2.gemspec} +7 -7
  66. data/vendor/bundle/ruby/{3.3.0/specifications/rspec-expectations-3.13.2.gemspec → 3.4.0/specifications/rspec-expectations-3.13.3.gemspec} +6 -6
  67. data/vendor/bundle/ruby/{3.3.0/specifications/rspec-mocks-3.13.1.gemspec → 3.4.0/specifications/rspec-mocks-3.13.2.gemspec} +7 -7
  68. data/vendor/bundle/ruby/{3.3.0/specifications/rspec-support-3.13.1.gemspec → 3.4.0/specifications/rspec-support-3.13.2.gemspec} +8 -8
  69. data/vendor/bundle/ruby/3.4.0/specifications/securerandom-0.4.1.gemspec +23 -0
  70. data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/specifications/tzinfo-2.0.6.gemspec +1 -1
  71. data/vendor/bundle/ruby/3.4.0/specifications/uri-1.0.2.gemspec +23 -0
  72. data/vendor/bundle/ruby/{3.3.0/specifications/useragent-0.16.10.gemspec → 3.4.0/specifications/useragent-0.16.11.gemspec} +6 -6
  73. metadata +132 -262
  74. data/vendor/bundle/ruby/3.3.0/gems/actionpack-7.2.1/CHANGELOG.md +0 -154
  75. data/vendor/bundle/ruby/3.3.0/gems/actionview-7.2.1/CHANGELOG.md +0 -113
  76. data/vendor/bundle/ruby/3.3.0/gems/activesupport-7.2.1/CHANGELOG.md +0 -258
  77. data/vendor/bundle/ruby/3.3.0/gems/appraisal-2.5.0/MIT-LICENSE +0 -21
  78. data/vendor/bundle/ruby/3.3.0/gems/appraisal-2.5.0/README.md +0 -243
  79. data/vendor/bundle/ruby/3.3.0/gems/appraisal-2.5.0/appraisal.gemspec +0 -29
  80. data/vendor/bundle/ruby/3.3.0/gems/ast-2.4.2/LICENSE.MIT +0 -20
  81. data/vendor/bundle/ruby/3.3.0/gems/ast-2.4.2/README.YARD.md +0 -12
  82. data/vendor/bundle/ruby/3.3.0/gems/benchmark-ips-2.13.0/LICENSE +0 -20
  83. data/vendor/bundle/ruby/3.3.0/gems/benchmark-ips-2.13.0/README.md +0 -279
  84. data/vendor/bundle/ruby/3.3.0/gems/byebug-11.1.3/CHANGELOG.md +0 -934
  85. data/vendor/bundle/ruby/3.3.0/gems/byebug-11.1.3/LICENSE +0 -23
  86. data/vendor/bundle/ruby/3.3.0/gems/byebug-11.1.3/README.md +0 -199
  87. data/vendor/bundle/ruby/3.3.0/gems/coderay-1.1.3/MIT-LICENSE +0 -22
  88. data/vendor/bundle/ruby/3.3.0/gems/coderay-1.1.3/README_INDEX.rdoc +0 -123
  89. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/LICENSE +0 -21
  90. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/README.md +0 -409
  91. data/vendor/bundle/ruby/3.3.0/gems/docile-1.4.1/docile.gemspec +0 -36
  92. data/vendor/bundle/ruby/3.3.0/gems/irb-1.14.0/LICENSE.txt +0 -22
  93. data/vendor/bundle/ruby/3.3.0/gems/irb-1.14.0/README.md +0 -405
  94. data/vendor/bundle/ruby/3.3.0/gems/irb-1.14.0/irb.gemspec +0 -46
  95. data/vendor/bundle/ruby/3.3.0/gems/json-2.7.2/LICENSE +0 -56
  96. data/vendor/bundle/ruby/3.3.0/gems/json-2.7.2/README.md +0 -416
  97. data/vendor/bundle/ruby/3.3.0/gems/json-2.7.2/json.gemspec +0 -68
  98. data/vendor/bundle/ruby/3.3.0/gems/language_server-protocol-3.17.0.3/LICENSE.txt +0 -21
  99. data/vendor/bundle/ruby/3.3.0/gems/language_server-protocol-3.17.0.3/README.md +0 -88
  100. data/vendor/bundle/ruby/3.3.0/gems/method_source-1.1.0/CHANGELOG.md +0 -15
  101. data/vendor/bundle/ruby/3.3.0/gems/method_source-1.1.0/LICENSE +0 -22
  102. data/vendor/bundle/ruby/3.3.0/gems/method_source-1.1.0/README.markdown +0 -101
  103. data/vendor/bundle/ruby/3.3.0/gems/method_source-1.1.0/method_source.gemspec +0 -19
  104. data/vendor/bundle/ruby/3.3.0/gems/parallel-1.26.3/MIT-LICENSE.txt +0 -20
  105. data/vendor/bundle/ruby/3.3.0/gems/parser-3.3.4.2/LICENSE.txt +0 -25
  106. data/vendor/bundle/ruby/3.3.0/gems/parser-3.3.4.2/parser.gemspec +0 -43
  107. data/vendor/bundle/ruby/3.3.0/gems/pry-0.14.2/CHANGELOG.md +0 -1141
  108. data/vendor/bundle/ruby/3.3.0/gems/pry-0.14.2/LICENSE +0 -25
  109. data/vendor/bundle/ruby/3.3.0/gems/pry-0.14.2/README.md +0 -466
  110. data/vendor/bundle/ruby/3.3.0/gems/pry-0.14.2/lib/pry/slop/LICENSE +0 -20
  111. data/vendor/bundle/ruby/3.3.0/gems/pry-byebug-3.10.1/CHANGELOG.md +0 -230
  112. data/vendor/bundle/ruby/3.3.0/gems/pry-byebug-3.10.1/LICENSE +0 -20
  113. data/vendor/bundle/ruby/3.3.0/gems/pry-byebug-3.10.1/README.md +0 -189
  114. data/vendor/bundle/ruby/3.3.0/gems/railties-7.2.1/CHANGELOG.md +0 -361
  115. data/vendor/bundle/ruby/3.3.0/gems/railties-7.2.1/MIT-LICENSE +0 -20
  116. data/vendor/bundle/ruby/3.3.0/gems/railties-7.2.1/README.rdoc +0 -39
  117. data/vendor/bundle/ruby/3.3.0/gems/railties-7.2.1/lib/rails/generators/rails/app/templates/README.md.tt +0 -24
  118. data/vendor/bundle/ruby/3.3.0/gems/railties-7.2.1/lib/rails/generators/rails/plugin/templates/%name%.gemspec.tt +0 -28
  119. data/vendor/bundle/ruby/3.3.0/gems/railties-7.2.1/lib/rails/generators/rails/plugin/templates/MIT-LICENSE.tt +0 -20
  120. data/vendor/bundle/ruby/3.3.0/gems/railties-7.2.1/lib/rails/generators/rails/plugin/templates/README.md.tt +0 -28
  121. data/vendor/bundle/ruby/3.3.0/gems/rainbow-3.1.1/LICENSE +0 -20
  122. data/vendor/bundle/ruby/3.3.0/gems/rainbow-3.1.1/README.markdown +0 -227
  123. data/vendor/bundle/ruby/3.3.0/gems/rdoc-6.7.0/LICENSE.rdoc +0 -57
  124. data/vendor/bundle/ruby/3.3.0/gems/rdoc-6.7.0/README.rdoc +0 -129
  125. data/vendor/bundle/ruby/3.3.0/gems/regexp_parser-2.9.2/LICENSE +0 -22
  126. data/vendor/bundle/ruby/3.3.0/gems/regexp_parser-2.9.2/regexp_parser.gemspec +0 -34
  127. data/vendor/bundle/ruby/3.3.0/gems/reline-0.5.9/README.md +0 -94
  128. data/vendor/bundle/ruby/3.3.0/gems/rexml-3.3.6/LICENSE.txt +0 -22
  129. data/vendor/bundle/ruby/3.3.0/gems/rexml-3.3.6/README.md +0 -57
  130. data/vendor/bundle/ruby/3.3.0/gems/rspec-rails-6.1.4/LICENSE.md +0 -25
  131. data/vendor/bundle/ruby/3.3.0/gems/rspec-rails-6.1.4/README.md +0 -381
  132. data/vendor/bundle/ruby/3.3.0/gems/rubocop-1.65.1/LICENSE.txt +0 -20
  133. data/vendor/bundle/ruby/3.3.0/gems/rubocop-1.65.1/README.md +0 -251
  134. data/vendor/bundle/ruby/3.3.0/gems/rubocop-ast-1.32.1/LICENSE.txt +0 -20
  135. data/vendor/bundle/ruby/3.3.0/gems/rubocop-ast-1.32.1/README.md +0 -56
  136. data/vendor/bundle/ruby/3.3.0/gems/rubocop-capybara-2.21.0/CHANGELOG.md +0 -85
  137. data/vendor/bundle/ruby/3.3.0/gems/rubocop-capybara-2.21.0/MIT-LICENSE.md +0 -21
  138. data/vendor/bundle/ruby/3.3.0/gems/rubocop-capybara-2.21.0/README.md +0 -88
  139. data/vendor/bundle/ruby/3.3.0/gems/rubocop-factory_bot-2.26.1/CHANGELOG.md +0 -116
  140. data/vendor/bundle/ruby/3.3.0/gems/rubocop-factory_bot-2.26.1/MIT-LICENSE.md +0 -21
  141. data/vendor/bundle/ruby/3.3.0/gems/rubocop-factory_bot-2.26.1/README.md +0 -88
  142. data/vendor/bundle/ruby/3.3.0/gems/rubocop-performance-1.21.1/LICENSE.txt +0 -20
  143. data/vendor/bundle/ruby/3.3.0/gems/rubocop-performance-1.21.1/README.md +0 -97
  144. data/vendor/bundle/ruby/3.3.0/gems/rubocop-rspec-3.0.4/CHANGELOG.md +0 -1028
  145. data/vendor/bundle/ruby/3.3.0/gems/rubocop-rspec-3.0.4/MIT-LICENSE.md +0 -21
  146. data/vendor/bundle/ruby/3.3.0/gems/rubocop-rspec-3.0.4/README.md +0 -109
  147. data/vendor/bundle/ruby/3.3.0/gems/rubocop-rspec_rails-2.30.0/CHANGELOG.md +0 -84
  148. data/vendor/bundle/ruby/3.3.0/gems/rubocop-rspec_rails-2.30.0/MIT-LICENSE.md +0 -21
  149. data/vendor/bundle/ruby/3.3.0/gems/rubocop-rspec_rails-2.30.0/README.md +0 -90
  150. data/vendor/bundle/ruby/3.3.0/gems/ruby-progressbar-1.13.0/LICENSE.txt +0 -19
  151. data/vendor/bundle/ruby/3.3.0/gems/ruby-progressbar-1.13.0/README.md +0 -131
  152. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/CHANGELOG.md +0 -191
  153. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/LICENSE +0 -20
  154. data/vendor/bundle/ruby/3.3.0/gems/simplecov-0.22.0/README.md +0 -974
  155. data/vendor/bundle/ruby/3.3.0/gems/simplecov-cobertura-2.1.0/LICENSE +0 -202
  156. data/vendor/bundle/ruby/3.3.0/gems/simplecov-cobertura-2.1.0/README.md +0 -62
  157. data/vendor/bundle/ruby/3.3.0/gems/simplecov-cobertura-2.1.0/simplecov-cobertura.gemspec +0 -29
  158. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.12.3/CHANGELOG.md +0 -81
  159. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.12.3/LICENSE +0 -20
  160. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.12.3/README.md +0 -30
  161. data/vendor/bundle/ruby/3.3.0/gems/simplecov-html-0.12.3/simplecov-html.gemspec +0 -23
  162. data/vendor/bundle/ruby/3.3.0/gems/simplecov_json_formatter-0.1.4/CHANGELOG.md +0 -13
  163. data/vendor/bundle/ruby/3.3.0/gems/simplecov_json_formatter-0.1.4/README.md +0 -29
  164. data/vendor/bundle/ruby/3.3.0/gems/strscan-3.1.0/LICENSE.txt +0 -22
  165. data/vendor/bundle/ruby/3.3.0/gems/thor-1.3.1/LICENSE.md +0 -20
  166. data/vendor/bundle/ruby/3.3.0/gems/thor-1.3.1/README.md +0 -45
  167. data/vendor/bundle/ruby/3.3.0/gems/thor-1.3.1/thor.gemspec +0 -33
  168. data/vendor/bundle/ruby/3.3.0/gems/unicode-display_width-2.5.0/CHANGELOG.md +0 -196
  169. data/vendor/bundle/ruby/3.3.0/gems/unicode-display_width-2.5.0/MIT-LICENSE.txt +0 -22
  170. data/vendor/bundle/ruby/3.3.0/gems/unicode-display_width-2.5.0/README.md +0 -171
  171. data/vendor/bundle/ruby/3.3.0/gems/webrick-1.8.1/LICENSE.txt +0 -22
  172. data/vendor/bundle/ruby/3.3.0/gems/webrick-1.8.1/README.md +0 -61
  173. data/vendor/bundle/ruby/3.3.0/gems/webrick-1.8.1/webrick.gemspec +0 -70
  174. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.6.17/MIT-LICENSE +0 -20
  175. data/vendor/bundle/ruby/3.3.0/gems/zeitwerk-2.6.17/README.md +0 -1494
  176. data/vendor/bundle/ruby/3.3.0/specifications/appraisal-2.5.0.gemspec +0 -31
  177. data/vendor/bundle/ruby/3.3.0/specifications/ast-2.4.2.gemspec +0 -30
  178. data/vendor/bundle/ruby/3.3.0/specifications/benchmark-ips-2.13.0.gemspec +0 -28
  179. data/vendor/bundle/ruby/3.3.0/specifications/byebug-11.1.3.gemspec +0 -31
  180. data/vendor/bundle/ruby/3.3.0/specifications/coderay-1.1.3.gemspec +0 -25
  181. data/vendor/bundle/ruby/3.3.0/specifications/docile-1.4.1.gemspec +0 -22
  182. data/vendor/bundle/ruby/3.3.0/specifications/io-console-0.7.2.gemspec +0 -25
  183. data/vendor/bundle/ruby/3.3.0/specifications/irb-1.14.0.gemspec +0 -30
  184. data/vendor/bundle/ruby/3.3.0/specifications/json-2.7.2.gemspec +0 -0
  185. data/vendor/bundle/ruby/3.3.0/specifications/language_server-protocol-3.17.0.3.gemspec +0 -31
  186. data/vendor/bundle/ruby/3.3.0/specifications/method_source-1.1.0.gemspec +0 -21
  187. data/vendor/bundle/ruby/3.3.0/specifications/nokogiri-1.16.7-x86_64-linux.gemspec +0 -31
  188. data/vendor/bundle/ruby/3.3.0/specifications/parallel-1.26.3.gemspec +0 -21
  189. data/vendor/bundle/ruby/3.3.0/specifications/parser-3.3.4.2.gemspec +0 -37
  190. data/vendor/bundle/ruby/3.3.0/specifications/pry-0.14.2.gemspec +0 -29
  191. data/vendor/bundle/ruby/3.3.0/specifications/pry-byebug-3.10.1.gemspec +0 -28
  192. data/vendor/bundle/ruby/3.3.0/specifications/rackup-2.1.0.gemspec +0 -31
  193. data/vendor/bundle/ruby/3.3.0/specifications/railties-7.2.1.gemspec +0 -37
  194. data/vendor/bundle/ruby/3.3.0/specifications/rainbow-3.1.1.gemspec +0 -25
  195. data/vendor/bundle/ruby/3.3.0/specifications/rdoc-6.7.0.gemspec +0 -31
  196. data/vendor/bundle/ruby/3.3.0/specifications/regexp_parser-2.9.2.gemspec +0 -22
  197. data/vendor/bundle/ruby/3.3.0/specifications/reline-0.5.9.gemspec +0 -26
  198. data/vendor/bundle/ruby/3.3.0/specifications/rexml-3.3.6.gemspec +0 -29
  199. data/vendor/bundle/ruby/3.3.0/specifications/rspec-rails-6.1.4.gemspec +0 -37
  200. data/vendor/bundle/ruby/3.3.0/specifications/rubocop-1.65.1.gemspec +0 -39
  201. data/vendor/bundle/ruby/3.3.0/specifications/rubocop-ast-1.32.1.gemspec +0 -28
  202. data/vendor/bundle/ruby/3.3.0/specifications/rubocop-capybara-2.21.0.gemspec +0 -27
  203. data/vendor/bundle/ruby/3.3.0/specifications/rubocop-factory_bot-2.26.1.gemspec +0 -27
  204. data/vendor/bundle/ruby/3.3.0/specifications/rubocop-performance-1.21.1.gemspec +0 -29
  205. data/vendor/bundle/ruby/3.3.0/specifications/rubocop-rspec-3.0.4.gemspec +0 -28
  206. data/vendor/bundle/ruby/3.3.0/specifications/rubocop-rspec_rails-2.30.0.gemspec +0 -28
  207. data/vendor/bundle/ruby/3.3.0/specifications/ruby-progressbar-1.13.0.gemspec +0 -29
  208. data/vendor/bundle/ruby/3.3.0/specifications/simplecov-0.22.0.gemspec +0 -28
  209. data/vendor/bundle/ruby/3.3.0/specifications/simplecov-cobertura-2.1.0.gemspec +0 -29
  210. data/vendor/bundle/ruby/3.3.0/specifications/simplecov-html-0.12.3.gemspec +0 -21
  211. data/vendor/bundle/ruby/3.3.0/specifications/simplecov_json_formatter-0.1.4.gemspec +0 -21
  212. data/vendor/bundle/ruby/3.3.0/specifications/strscan-3.1.0.gemspec +0 -24
  213. data/vendor/bundle/ruby/3.3.0/specifications/thor-1.3.1.gemspec +0 -28
  214. data/vendor/bundle/ruby/3.3.0/specifications/unicode-display_width-2.5.0.gemspec +0 -29
  215. data/vendor/bundle/ruby/3.3.0/specifications/webrick-1.8.1.gemspec +0 -22
  216. data/vendor/bundle/ruby/3.3.0/specifications/zeitwerk-2.6.17.gemspec +0 -22
  217. /data/vendor/bundle/ruby/{3.3.0/bundler/gems/rubocop-config-943facea9d8f → 3.4.0/bundler/gems/rubocop-config-67802c9d1826}/LICENSE +0 -0
  218. /data/vendor/bundle/ruby/{3.3.0/bundler/gems/rubocop-config-943facea9d8f → 3.4.0/bundler/gems/rubocop-config-67802c9d1826}/README.md +0 -0
  219. /data/vendor/bundle/ruby/{3.3.0/gems/actionpack-7.2.1 → 3.4.0/gems/actionpack-8.0.1}/MIT-LICENSE +0 -0
  220. /data/vendor/bundle/ruby/{3.3.0/gems/actionpack-7.2.1 → 3.4.0/gems/actionpack-8.0.1}/README.rdoc +0 -0
  221. /data/vendor/bundle/ruby/{3.3.0/gems/actionview-7.2.1 → 3.4.0/gems/actionview-8.0.1}/MIT-LICENSE +0 -0
  222. /data/vendor/bundle/ruby/{3.3.0/gems/actionview-7.2.1 → 3.4.0/gems/actionview-8.0.1}/README.rdoc +0 -0
  223. /data/vendor/bundle/ruby/{3.3.0/gems/activesupport-7.2.1 → 3.4.0/gems/activesupport-8.0.1}/MIT-LICENSE +0 -0
  224. /data/vendor/bundle/ruby/{3.3.0/gems/activesupport-7.2.1 → 3.4.0/gems/activesupport-8.0.1}/README.rdoc +0 -0
  225. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/addressable-2.8.7/CHANGELOG.md +0 -0
  226. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/addressable-2.8.7/LICENSE.txt +0 -0
  227. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/addressable-2.8.7/README.md +0 -0
  228. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/addressable-2.8.7/addressable.gemspec +0 -0
  229. /data/vendor/bundle/ruby/{3.3.0/gems/drb-2.2.1 → 3.4.0/gems/base64-0.2.0}/LICENSE.txt +0 -0
  230. /data/vendor/bundle/ruby/{3.3.0/gems/bigdecimal-3.1.8 → 3.4.0/gems/bigdecimal-3.1.9}/LICENSE +0 -0
  231. /data/vendor/bundle/ruby/{3.3.0/gems/bigdecimal-3.1.8 → 3.4.0/gems/bigdecimal-3.1.9}/bigdecimal.gemspec +0 -0
  232. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/builder-3.3.0/MIT-LICENSE +0 -0
  233. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/builder-3.3.0/README.md +0 -0
  234. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/builder-3.3.0/builder.gemspec +0 -0
  235. /data/vendor/bundle/ruby/{3.3.0/gems/concurrent-ruby-1.3.4 → 3.4.0/gems/concurrent-ruby-1.3.5}/LICENSE.txt +0 -0
  236. /data/vendor/bundle/ruby/{3.3.0/gems/connection_pool-2.4.1 → 3.4.0/gems/connection_pool-2.5.0}/LICENSE +0 -0
  237. /data/vendor/bundle/ruby/{3.3.0/gems/connection_pool-2.4.1 → 3.4.0/gems/connection_pool-2.5.0}/connection_pool.gemspec +0 -0
  238. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/crass-1.0.6/LICENSE +0 -0
  239. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/crass-1.0.6/README.md +0 -0
  240. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/crass-1.0.6/crass.gemspec +0 -0
  241. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/diff-lcs-1.5.1/README.rdoc +0 -0
  242. /data/vendor/bundle/ruby/{3.3.0/gems/io-console-0.7.2 → 3.4.0/gems/drb-2.2.1}/LICENSE.txt +0 -0
  243. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/drb-2.2.1/drb.gemspec +0 -0
  244. /data/vendor/bundle/ruby/{3.3.0/gems/erubi-1.13.0 → 3.4.0/gems/erubi-1.13.1}/MIT-LICENSE +0 -0
  245. /data/vendor/bundle/ruby/{3.3.0/gems/erubi-1.13.0 → 3.4.0/gems/erubi-1.13.1}/README.rdoc +0 -0
  246. /data/vendor/bundle/ruby/{3.3.0/gems/i18n-1.14.5 → 3.4.0/gems/i18n-1.14.7}/MIT-LICENSE +0 -0
  247. /data/vendor/bundle/ruby/{3.3.0/gems/i18n-1.14.5 → 3.4.0/gems/i18n-1.14.7}/README.md +0 -0
  248. /data/vendor/bundle/ruby/{3.3.0/gems/loofah-2.22.0 → 3.4.0/gems/loofah-2.24.0}/MIT-LICENSE.txt +0 -0
  249. /data/vendor/bundle/ruby/{3.3.0/gems/minitest-5.25.1 → 3.4.0/gems/minitest-5.25.4}/README.rdoc +0 -0
  250. /data/vendor/bundle/ruby/{3.3.0/gems/nokogiri-1.16.7-x86_64-linux → 3.4.0/gems/nokogiri-1.18.2-x86_64-linux-gnu}/LICENSE.md +0 -0
  251. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/public_suffix-6.0.1/CHANGELOG.md +0 -0
  252. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/public_suffix-6.0.1/LICENSE.txt +0 -0
  253. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/public_suffix-6.0.1/README.md +0 -0
  254. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/racc-1.8.1/README.ja.rdoc +0 -0
  255. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/racc-1.8.1/README.rdoc +0 -0
  256. /data/vendor/bundle/ruby/{3.3.0/gems/rack-3.1.7 → 3.4.0/gems/rack-3.1.9}/MIT-LICENSE +0 -0
  257. /data/vendor/bundle/ruby/{3.3.0/gems/rack-3.1.7 → 3.4.0/gems/rack-3.1.9}/README.md +0 -0
  258. /data/vendor/bundle/ruby/{3.3.0/gems/rack-test-2.1.0 → 3.4.0/gems/rack-test-2.2.0}/MIT-LICENSE.txt +0 -0
  259. /data/vendor/bundle/ruby/{3.3.0/gems/rack-test-2.1.0 → 3.4.0/gems/rack-test-2.2.0}/README.md +0 -0
  260. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/rails-dom-testing-2.2.0/MIT-LICENSE +0 -0
  261. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/rails-dom-testing-2.2.0/README.md +0 -0
  262. /data/vendor/bundle/ruby/{3.3.0/gems/rails-html-sanitizer-1.6.0 → 3.4.0/gems/rails-html-sanitizer-1.6.2}/MIT-LICENSE +0 -0
  263. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/rake-13.2.1/MIT-LICENSE +0 -0
  264. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/rake-13.2.1/README.rdoc +0 -0
  265. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/rake-13.2.1/rake.gemspec +0 -0
  266. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/rake-release-1.3.0/LICENSE +0 -0
  267. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/rake-release-1.3.0/README.md +0 -0
  268. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/rake-release-1.3.0/rake-release.gemspec +0 -0
  269. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/rspec-3.13.0/LICENSE.md +0 -0
  270. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/rspec-3.13.0/README.md +0 -0
  271. /data/vendor/bundle/ruby/{3.3.0/gems/rspec-core-3.13.0 → 3.4.0/gems/rspec-core-3.13.2}/LICENSE.md +0 -0
  272. /data/vendor/bundle/ruby/{3.3.0/gems/rspec-core-3.13.0 → 3.4.0/gems/rspec-core-3.13.2}/README.md +0 -0
  273. /data/vendor/bundle/ruby/{3.3.0/gems/rspec-expectations-3.13.2 → 3.4.0/gems/rspec-expectations-3.13.3}/LICENSE.md +0 -0
  274. /data/vendor/bundle/ruby/{3.3.0/gems/rspec-expectations-3.13.2 → 3.4.0/gems/rspec-expectations-3.13.3}/README.md +0 -0
  275. /data/vendor/bundle/ruby/{3.3.0/gems/rspec-mocks-3.13.1 → 3.4.0/gems/rspec-mocks-3.13.2}/LICENSE.md +0 -0
  276. /data/vendor/bundle/ruby/{3.3.0/gems/rspec-mocks-3.13.1 → 3.4.0/gems/rspec-mocks-3.13.2}/README.md +0 -0
  277. /data/vendor/bundle/ruby/{3.3.0/gems/rspec-support-3.13.1 → 3.4.0/gems/rspec-support-3.13.2}/LICENSE.md +0 -0
  278. /data/vendor/bundle/ruby/{3.3.0/gems/rspec-support-3.13.1 → 3.4.0/gems/rspec-support-3.13.2}/README.md +0 -0
  279. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/tzinfo-2.0.6/LICENSE +0 -0
  280. /data/vendor/bundle/ruby/{3.3.0 → 3.4.0}/gems/tzinfo-2.0.6/README.md +0 -0
  281. /data/vendor/bundle/ruby/{3.3.0/gems/useragent-0.16.10 → 3.4.0/gems/useragent-0.16.11}/LICENSE +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d64ff59be5c243ac467801b36775e27e670b85ef0bdf404e9feddf1ee3c1c4cd
4
- data.tar.gz: 375ec93eec7b22b23f02d2c1dffba2476792556e8207b891544884d4cbc01155
3
+ metadata.gz: 9da33d88750739a23961a9f48f5b26c2bb5e979a38a73f7646407ce41437a599
4
+ data.tar.gz: f8083a5cbcda1e9fe0b8bea8417161a9ae9940d784098f1507e7cbcf52a73f32
5
5
  SHA512:
6
- metadata.gz: 12890982bffea5d806560c5593224532ef0f2807b18cdc534df9a3eefdd3b2282e2dbaeba03f03e4cea03cabcbd66f652fe78c6cadd44efbeb1ff3a042c620b0
7
- data.tar.gz: 244478acb92ecd39ea948b616ff5ffa7aad051cd0bab37b0088e7926fab380bfabe42ad8ca0264110e4f2547141d399f43ad2254c6420cb04acbb37c57270bf1
6
+ metadata.gz: 4342753841b8c3e94054412f1a275fc67be3ac6d2cde95fe16731e5d920a4e7b5e833c6dd4cb3a9b54f3f33be1ffda3a17a7f4be21e91fac8c5f3e192093da71
7
+ data.tar.gz: 5891d48dd9cbb1fe6a7b9a98b0cee339794d5f1da49cd7fa2e14e4314b22ed9729d1b8e3bd6c50fdfa136a777f8c3f21e3f484391b40d046cbba0059b2dad699
data/CHANGELOG.md CHANGED
@@ -11,17 +11,47 @@ This project adheres to [Semantic Versioning](http://semver.org/) and [Keep a Ch
11
11
 
12
12
  ### Changes
13
13
 
14
+ - Optimize named `*_rfc6570` helpers by removing unnecessary indirection
15
+ - Optimize `#rfc6570_routes` and `#rfc6570_route` helpers
16
+
14
17
  ### Fixes
15
18
 
19
+ - Fix up `RouteSet#to_rfc6570` and `NamedRouteCollection#to_rfc6570`
20
+
16
21
  ### Breaks
17
22
 
23
+ ## 3.4.0 - (2025-01-31)
24
+
25
+ ---
26
+
27
+ ### New
28
+
29
+ - Support for Ruby 3.4
30
+
31
+ ### Changes
32
+
33
+ - Optimize named `*_rfc6570` helpers by removing unnecessary indirection
34
+ - Optimize `#rfc6570_routes` and `#rfc6570_route` helpers
35
+
36
+ ### Fixes
37
+
38
+ - Fix up `RouteSet#to_rfc6570` and `NamedRouteCollection#to_rfc6570`
39
+
40
+ ## 3.3.0 - (2024-11-25)
41
+
42
+ ---
43
+
44
+ ### New
45
+
46
+ - Support Rails 8.0 by @jgraichen
47
+
18
48
  ## 3.2.0 - (2024-08-24)
19
49
 
20
50
  ---
21
51
 
22
52
  ### New
23
53
 
24
- - Add support for Rails 7.2
54
+ - Add support for Rails 7.2 by @jgraichen
25
55
 
26
56
  ## 3.1.0 - (2023-11-28)
27
57
 
data/README.md CHANGED
@@ -3,7 +3,9 @@
3
3
  [![Gem Version](https://img.shields.io/gem/v/rails-rfc6570?logo=ruby)](https://rubygems.org/gems/rails-rfc6570)
4
4
  [![Build Status](https://img.shields.io/github/actions/workflow/status/jgraichen/rails-rfc6570/test.yml?logo=github)](https://github.com/jgraichen/rails-rfc6570/actions/workflows/test.yml)
5
5
 
6
- Pragmatic access to your Rails routes as RFC6570 URI templates. Tested with Rails 6.1, 7.0, 7.1, 7.2 and Ruby 2.7, 3.0, 3.1, 3.2, 3.3.
6
+ Pragmatic access to your Rails routes as RFC6570 URI templates.
7
+
8
+ Tested with Rails 6.1, 7.0, 7.1, 7.2 and Ruby 2.7, 3.0, 3.1, 3.2, 3.3, and 3.4.
7
9
 
8
10
  ## Installation
9
11
 
@@ -4,7 +4,7 @@ module Rails
4
4
  module RFC6570
5
5
  module VERSION
6
6
  MAJOR = 3
7
- MINOR = 2
7
+ MINOR = 4
8
8
  PATCH = 0
9
9
  STAGE = nil
10
10
 
data/lib/rails/rfc6570.rb CHANGED
@@ -32,14 +32,14 @@ module Rails
32
32
 
33
33
  module Extensions
34
34
  module RouteSet
35
- def to_rfc6570(opts = {})
36
- routes.map {|r| r.to_rfc6570(opts) }
35
+ def to_rfc6570(**opts)
36
+ named_routes.to_rfc6570(**opts)
37
37
  end
38
38
  end
39
39
 
40
40
  module NamedRouteCollection
41
- def to_rfc6570(opts = {})
42
- routes.to_h {|n, r| [n, r.to_rfc6570(opts)] }
41
+ def to_rfc6570(**opts)
42
+ routes.to_h {|name, route| [name, route.to_rfc6570(**opts)] }
43
43
  end
44
44
 
45
45
  def define_rfc6570_helpers(name, route, mod, set)
@@ -53,25 +53,15 @@ module Rails
53
53
 
54
54
  mod.module_eval do
55
55
  define_method(rfc6570_name) do |**opts|
56
- ::Rails::RFC6570.build_url_template(self, route, **opts)
56
+ route.to_rfc6570(**opts, ctx: self)
57
57
  end
58
58
 
59
59
  define_method(rfc6570_url_name) do |**opts|
60
- ::Rails::RFC6570.build_url_template(
61
- self,
62
- route,
63
- **opts,
64
- path_only: false,
65
- )
60
+ route.to_rfc6570(**opts, ctx: self, path_only: false)
66
61
  end
67
62
 
68
63
  define_method(rfc6570_path_name) do |**opts|
69
- ::Rails::RFC6570.build_url_template(
70
- self,
71
- route,
72
- **opts,
73
- path_only: true,
74
- )
64
+ route.to_rfc6570(**opts, ctx: self, path_only: true)
75
65
  end
76
66
  end
77
67
 
@@ -98,16 +88,11 @@ module Rails
98
88
 
99
89
  module Helper
100
90
  def rfc6570_routes(**opts)
101
- routes = {}
102
- Rails.application.routes.named_routes.names.each do |key|
103
- routes[key] = rfc6570_route(key, **opts)
104
- end
105
-
106
- routes
91
+ _routes.named_routes.to_rfc6570(**opts, ctx: self)
107
92
  end
108
93
 
109
94
  def rfc6570_route(name, **opts)
110
- route = Rails.application.routes.named_routes[name]
95
+ route = _routes.named_routes[name]
111
96
  raise KeyError.new "No named routed for `#{name}'." unless route
112
97
 
113
98
  route.to_rfc6570(**opts, ctx: self)
@@ -130,15 +115,11 @@ module Rails
130
115
 
131
116
  def params_for(controller, action)
132
117
  ctr = "#{controller.camelize}Controller".constantize
133
- ctr.rfc6570_defs[action.to_sym] if ctr.respond_to?(:rfc6570_defs)
118
+ ctr.rfc6570_params_for(action.to_sym) if ctr.respond_to?(:rfc6570_params_for)
134
119
  rescue NameError
135
120
  nil
136
121
  end
137
122
 
138
- def build_url_template(ctx, route, **kwargs)
139
- route.to_rfc6570(ctx: ctx, **kwargs)
140
- end
141
-
142
123
  extend self # rubocop:disable Style/ModuleFunction
143
124
  end
144
125
  end
@@ -27,6 +27,6 @@ Gem::Specification.new do |spec|
27
27
 
28
28
  spec.required_ruby_version = '>= 2.7'
29
29
 
30
- spec.add_dependency 'actionpack', '>= 4.2', '< 8.0'
30
+ spec.add_dependency 'actionpack', '>= 4.2', '< 8.1'
31
31
  spec.add_dependency 'addressable', '~> 2.3'
32
32
  end
@@ -1,5 +1,10 @@
1
1
  require File.expand_path('../boot', __FILE__)
2
2
 
3
+ # Workaround for missing require "logger" in some Rails versions.
4
+ #
5
+ # See https://github.com/rails/rails/pull/54264.
6
+ require 'logger'
7
+
3
8
  require 'rails/all'
4
9
 
5
10
  Bundler.require(*Rails.groups)
@@ -19,4 +24,3 @@ module Dummy
19
24
  # config.i18n.default_locale = :de
20
25
  end
21
26
  end
22
-
@@ -21,7 +21,7 @@ Dummy::Application.configure do
21
21
  config.action_controller.perform_caching = false
22
22
 
23
23
  # Raise exceptions instead of rendering exception templates.
24
- config.action_dispatch.show_exceptions = false
24
+ config.action_dispatch.show_exceptions = :none
25
25
 
26
26
  # Disable request forgery protection in test environment.
27
27
  config.action_controller.allow_forgery_protection = false
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'spec_helper'
4
+
5
+ RSpec.describe Rails::RFC6570::Extensions::RouteSet do
6
+ subject(:route_set) do
7
+ ActionDispatch::Routing::RouteSet.new.tap do |routes|
8
+ routes.draw do
9
+ get '/path/:id', to: 'controller#action', as: :test1
10
+ end
11
+ end
12
+ end
13
+
14
+ let(:ctx) do
15
+ Class.new do
16
+ def url_options
17
+ {host: 'www.example.org'}
18
+ end
19
+ end.new
20
+ end
21
+
22
+ describe '#to_rfc6570' do
23
+ it 'returns dictionary of all named routes' do
24
+ expect(route_set.to_rfc6570(ctx: ctx)).to eq({
25
+ test1: Addressable::Template.new('http://www.example.org/path/{id}'),
26
+ })
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,44 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'spec_helper'
4
+
5
+ RSpec.describe Rails::RFC6570::Helper do
6
+ subject(:helper) do
7
+ routes = self.routes
8
+
9
+ Class.new do
10
+ def url_options
11
+ {host: 'www.example.org'}
12
+ end
13
+
14
+ include routes.url_helpers
15
+ include Rails::RFC6570::Helper
16
+ end.new
17
+ end
18
+
19
+ let(:routes) do
20
+ ActionDispatch::Routing::RouteSet.new.tap do |routes|
21
+ routes.draw do
22
+ get '/path/:id', to: 'controller#action', as: :test1
23
+ end
24
+ end
25
+ end
26
+
27
+ describe '#rfc6570_routes' do
28
+ it 'returns dictionary of all named routes' do
29
+ expect(helper.rfc6570_routes).to eq({
30
+ test1: Addressable::Template.new('http://www.example.org/path/{id}'),
31
+ })
32
+ end
33
+ end
34
+
35
+ describe '#rfc6570_route' do
36
+ it 'returns template for named route' do
37
+ expect(helper.rfc6570_route(:test1)).to eq Addressable::Template.new('http://www.example.org/path/{id}')
38
+ end
39
+
40
+ it 'raise KeyError with unknown named route' do
41
+ expect { helper.rfc6570_route(:not_found) }.to raise_error KeyError
42
+ end
43
+ end
44
+ end
@@ -20,12 +20,24 @@ RSpec.describe Rails::RFC6570::Visitor do
20
20
  it { is_expected.to eq %w[/ path / path] }
21
21
  end
22
22
 
23
+ describe '/path.:format' do
24
+ let(:path) { '/path.:format' }
25
+
26
+ it { is_expected.to eq %w[/ path . {format}] }
27
+ end
28
+
23
29
  describe '/:title' do
24
30
  let(:path) { '/:title' }
25
31
 
26
32
  it { is_expected.to eq %w[/ {title}] }
27
33
  end
28
34
 
35
+ describe '/:title.html' do
36
+ let(:path) { '/:title.html' }
37
+
38
+ it { is_expected.to eq %w[/ {title} . html] }
39
+ end
40
+
29
41
  describe '/:title(.:format)' do
30
42
  let(:path) { '/:title(.:format)' }
31
43
 
data/spec/spec_helper.rb CHANGED
@@ -30,4 +30,10 @@ end
30
30
 
31
31
  RSpec.configure do |config|
32
32
  config.order = 'random'
33
+
34
+ # Use the GitHub Annotations formatter for CI
35
+ if ENV['GITHUB_ACTIONS'] == 'true'
36
+ require 'rspec/github'
37
+ config.add_formatter RSpec::Github::Formatter
38
+ end
33
39
  end
@@ -1,31 +1,31 @@
1
1
  # -*- encoding: utf-8 -*-
2
- # stub: rubocop-config 11.0.0 ruby lib
2
+ # stub: rubocop-config 13.0.0 ruby lib
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "rubocop-config".freeze
6
- s.version = "11.0.0".freeze
6
+ s.version = "13.0.0".freeze
7
7
 
8
8
  s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
9
9
  s.metadata = { "allowed_push_host" => ".", "rubygems_mfa_required" => "true" } if s.respond_to? :metadata=
10
10
  s.require_paths = ["lib".freeze]
11
11
  s.authors = ["Jan Graichen".freeze]
12
- s.date = "2024-08-24"
12
+ s.date = "2025-01-31"
13
13
  s.email = ["jgraichen@altimos.de".freeze]
14
14
  s.files = ["LICENSE".freeze, "README.md".freeze, "default.yml".freeze]
15
15
  s.homepage = "https://github.com/jgraichen/rubocop-config".freeze
16
16
  s.licenses = ["MIT".freeze]
17
17
  s.required_ruby_version = Gem::Requirement.new(">= 2.7.0".freeze)
18
- s.rubygems_version = "3.5.11".freeze
18
+ s.rubygems_version = "3.6.2".freeze
19
19
  s.summary = "Shared rubocop config".freeze
20
20
 
21
- s.installed_by_version = "3.5.11".freeze if s.respond_to? :installed_by_version
21
+ s.installed_by_version = "3.6.2".freeze
22
22
 
23
23
  s.specification_version = 4
24
24
 
25
- s.add_runtime_dependency(%q<rubocop>.freeze, ["~> 1.65.0".freeze])
26
- s.add_runtime_dependency(%q<rubocop-performance>.freeze, ["~> 1.21.1".freeze])
27
- s.add_runtime_dependency(%q<rubocop-rspec>.freeze, ["~> 3.0.2".freeze])
25
+ s.add_runtime_dependency(%q<rubocop>.freeze, ["~> 1.70.0".freeze])
28
26
  s.add_runtime_dependency(%q<rubocop-capybara>.freeze, ["~> 2.21.0".freeze])
29
27
  s.add_runtime_dependency(%q<rubocop-factory_bot>.freeze, ["~> 2.26.1".freeze])
28
+ s.add_runtime_dependency(%q<rubocop-performance>.freeze, ["~> 1.23.0".freeze])
29
+ s.add_runtime_dependency(%q<rubocop-rspec>.freeze, ["~> 3.3.0".freeze])
30
30
  s.add_runtime_dependency(%q<rubocop-rspec_rails>.freeze, ["~> 2.30.0".freeze])
31
31
  end
@@ -0,0 +1,205 @@
1
+ ## Rails 8.0.1 (December 13, 2024) ##
2
+
3
+ * Add `ActionDispatch::Request::Session#store` method to conform Rack spec.
4
+
5
+ *Yaroslav*
6
+
7
+
8
+ ## Rails 8.0.0.1 (December 10, 2024) ##
9
+
10
+ * Add validation to content security policies to disallow spaces and semicolons.
11
+ Developers should use multiple arguments, and different directive methods instead.
12
+
13
+ [CVE-2024-54133]
14
+
15
+ *Gannon McGibbon*
16
+
17
+
18
+ ## Rails 8.0.0 (November 07, 2024) ##
19
+
20
+ * No changes.
21
+
22
+
23
+ ## Rails 8.0.0.rc2 (October 30, 2024) ##
24
+
25
+ * Fix routes with `::` in the path.
26
+
27
+ *Rafael Mendonça França*
28
+
29
+ * Maintain Rack 2 parameter parsing behaviour.
30
+
31
+ *Matthew Draper*
32
+
33
+
34
+ ## Rails 8.0.0.rc1 (October 19, 2024) ##
35
+
36
+ * Remove `Rails.application.config.action_controller.allow_deprecated_parameters_hash_equality`.
37
+
38
+ *Rafael Mendonça França*
39
+
40
+ * Improve `ActionController::TestCase` to expose a binary encoded `request.body`.
41
+
42
+ The rack spec clearly states:
43
+
44
+ > The input stream is an IO-like object which contains the raw HTTP POST data.
45
+ > When applicable, its external encoding must be “ASCII-8BIT” and it must be opened in binary mode.
46
+
47
+ Until now its encoding was generally UTF-8, which doesn't accurately reflect production
48
+ behavior.
49
+
50
+ *Jean Boussier*
51
+
52
+ * Update `ActionController::AllowBrowser` to support passing method names to `:block`
53
+
54
+ ```ruby
55
+ class ApplicationController < ActionController::Base
56
+ allow_browser versions: :modern, block: :handle_outdated_browser
57
+
58
+ private
59
+ def handle_outdated_browser
60
+ render file: Rails.root.join("public/custom-error.html"), status: :not_acceptable
61
+ end
62
+ end
63
+ ```
64
+
65
+ *Sean Doyle*
66
+
67
+ * Raise an `ArgumentError` when invalid `:only` or `:except` options are passed into `#resource` and `#resources`.
68
+
69
+ *Joshua Young*
70
+
71
+ ## Rails 8.0.0.beta1 (September 26, 2024) ##
72
+
73
+ * Fix non-GET requests not updating cookies in `ActionController::TestCase`.
74
+
75
+ *Jon Moss*, *Hartley McGuire*
76
+
77
+ * Update `ActionController::Live` to use a thread-pool to reuse threads across requests.
78
+
79
+ *Adam Renberg Tamm*
80
+
81
+ * Introduce safer, more explicit params handling method with `params#expect` such that
82
+ `params.expect(table: [ :attr ])` replaces `params.require(:table).permit(:attr)`
83
+
84
+ Ensures params are filtered with consideration for the expected
85
+ types of values, improving handling of params and avoiding ignorable
86
+ errors caused by params tampering.
87
+
88
+ ```ruby
89
+ # If the url is altered to ?person=hacked
90
+ # Before
91
+ params.require(:person).permit(:name, :age, pets: [:name])
92
+ # raises NoMethodError, causing a 500 and potential error reporting
93
+
94
+ # After
95
+ params.expect(person: [ :name, :age, pets: [[:name]] ])
96
+ # raises ActionController::ParameterMissing, correctly returning a 400 error
97
+ ```
98
+
99
+ You may also notice the new double array `[[:name]]`. In order to
100
+ declare when a param is expected to be an array of parameter hashes,
101
+ this new double array syntax is used to explicitly declare an array.
102
+ `expect` requires you to declare expected arrays in this way, and will
103
+ ignore arrays that are passed when, for example, `pet: [:name]` is used.
104
+
105
+ In order to preserve compatibility, `permit` does not adopt the new
106
+ double array syntax and is therefore more permissive about unexpected
107
+ types. Using `expect` everywhere is recommended.
108
+
109
+ We suggest replacing `params.require(:person).permit(:name, :age)`
110
+ with the direct replacement `params.expect(person: [:name, :age])`
111
+ to prevent external users from manipulating params to trigger 500
112
+ errors. A 400 error will be returned instead, using public/400.html
113
+
114
+ Usage of `params.require(:id)` should likewise be replaced with
115
+ `params.expect(:id)` which is designed to ensure that `params[:id]`
116
+ is a scalar and not an array or hash, also requiring the param.
117
+
118
+ ```ruby
119
+ # Before
120
+ User.find(params.require(:id)) # allows an array, altering behavior
121
+
122
+ # After
123
+ User.find(params.expect(:id)) # expect only returns non-blank permitted scalars (excludes Hash, Array, nil, "", etc)
124
+ ```
125
+
126
+ *Martin Emde*
127
+
128
+ * System Testing: Disable Chrome's search engine choice by default in system tests.
129
+
130
+ *glaszig*
131
+
132
+ * Fix `Request#raw_post` raising `NoMethodError` when `rack.input` is `nil`.
133
+
134
+ *Hartley McGuire*
135
+
136
+ * Remove `racc` dependency by manually writing `ActionDispatch::Journey::Scanner`.
137
+
138
+ *Gannon McGibbon*
139
+
140
+ * Speed up `ActionDispatch::Routing::Mapper::Scope#[]` by merging frame hashes.
141
+
142
+ *Gannon McGibbon*
143
+
144
+ * Allow bots to ignore `allow_browser`.
145
+
146
+ *Matthew Nguyen*
147
+
148
+ * Deprecate drawing routes with multiple paths to make routing faster.
149
+ You may use `with_options` or a loop to make drawing multiple paths easier.
150
+
151
+ ```ruby
152
+ # Before
153
+ get "/users", "/other_path", to: "users#index"
154
+
155
+ # After
156
+ get "/users", to: "users#index"
157
+ get "/other_path", to: "users#index"
158
+ ```
159
+
160
+ *Gannon McGibbon*
161
+
162
+ * Make `http_cache_forever` use `immutable: true`
163
+
164
+ *Nate Matykiewicz*
165
+
166
+ * Add `config.action_dispatch.strict_freshness`.
167
+
168
+ When set to `true`, the `ETag` header takes precedence over the `Last-Modified` header when both are present,
169
+ as specified by RFC 7232, Section 6.
170
+
171
+ Defaults to `false` to maintain compatibility with previous versions of Rails, but is enabled as part of
172
+ Rails 8.0 defaults.
173
+
174
+ *heka1024*
175
+
176
+ * Support `immutable` directive in Cache-Control
177
+
178
+ ```ruby
179
+ expires_in 1.minute, public: true, immutable: true
180
+ # Cache-Control: public, max-age=60, immutable
181
+ ```
182
+
183
+ *heka1024*
184
+
185
+ * Add `:wasm_unsafe_eval` mapping for `content_security_policy`
186
+
187
+ ```ruby
188
+ # Before
189
+ policy.script_src "'wasm-unsafe-eval'"
190
+
191
+ # After
192
+ policy.script_src :wasm_unsafe_eval
193
+ ```
194
+
195
+ *Joe Haig*
196
+
197
+ * Add `display_capture` and `keyboard_map` in `permissions_policy`
198
+
199
+ *Cyril Blaecke*
200
+
201
+ * Add `connect` route helper.
202
+
203
+ *Samuel Williams*
204
+
205
+ Please check [7-2-stable](https://github.com/rails/rails/blob/7-2-stable/actionpack/CHANGELOG.md) for previous changes.
@@ -0,0 +1,67 @@
1
+ ## Rails 8.0.1 (December 13, 2024) ##
2
+
3
+ * Fix a crash in ERB template error highlighting when the error occurs on a
4
+ line in the compiled template that is past the end of the source template.
5
+
6
+ *Martin Emde*
7
+
8
+ * Improve reliability of ERB template error highlighting.
9
+ Fix infinite loops and crashes in highlighting and
10
+ improve tolerance for alternate ERB handlers.
11
+
12
+ *Martin Emde*
13
+
14
+
15
+ ## Rails 8.0.0.1 (December 10, 2024) ##
16
+
17
+ * No changes.
18
+
19
+
20
+ ## Rails 8.0.0 (November 07, 2024) ##
21
+
22
+ * No changes.
23
+
24
+
25
+ ## Rails 8.0.0.rc2 (October 30, 2024) ##
26
+
27
+ * No changes.
28
+
29
+
30
+ ## Rails 8.0.0.rc1 (October 19, 2024) ##
31
+
32
+ * Remove deprecated support to passing a content to void tag elements on the `tag` builder.
33
+
34
+ *Rafael Mendonça França*
35
+
36
+ * Remove deprecated support to passing `nil` to the `model:` argument of `form_with`.
37
+
38
+ *Rafael Mendonça França*
39
+
40
+
41
+ ## Rails 8.0.0.beta1 (September 26, 2024) ##
42
+
43
+ * Enable DependencyTracker to evaluate renders with trailing interpolation.
44
+
45
+ ```erb
46
+ <%= render "maintenance_tasks/runs/info/#{run.status}" %>
47
+ ```
48
+
49
+ Previously, the DependencyTracker would ignore this render, but now it will
50
+ mark all partials in the "maintenance_tasks/runs/info" folder as
51
+ dependencies.
52
+
53
+ *Hartley McGuire*
54
+
55
+ * Rename `text_area` methods into `textarea`
56
+
57
+ Old names are still available as aliases.
58
+
59
+ *Sean Doyle*
60
+
61
+ * Rename `check_box*` methods into `checkbox*`.
62
+
63
+ Old names are still available as aliases.
64
+
65
+ *Jean Boussier*
66
+
67
+ Please check [7-2-stable](https://github.com/rails/rails/blob/7-2-stable/actionview/CHANGELOG.md) for previous changes.