acfs 1.7.0 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (237) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +144 -116
  3. data/README.md +19 -24
  4. data/acfs.gemspec +7 -10
  5. data/lib/acfs/collections/paginatable.rb +11 -11
  6. data/lib/acfs/configuration.rb +1 -1
  7. data/lib/acfs/errors.rb +6 -6
  8. data/lib/acfs/global.rb +2 -2
  9. data/lib/acfs/location.rb +1 -1
  10. data/lib/acfs/resource/attributes/uuid.rb +1 -1
  11. data/lib/acfs/resource/attributes.rb +1 -1
  12. data/lib/acfs/resource/dirty.rb +1 -1
  13. data/lib/acfs/resource/operational.rb +4 -4
  14. data/lib/acfs/resource/query_methods.rb +3 -3
  15. data/lib/acfs/response/status.rb +1 -1
  16. data/lib/acfs/service/middleware.rb +2 -2
  17. data/lib/acfs/singleton_resource.rb +2 -2
  18. data/lib/acfs/stub.rb +1 -1
  19. data/lib/acfs/version.rb +2 -2
  20. data/lib/acfs/yard.rb +1 -0
  21. data/spec/acfs/adapter/typhoeus_spec.rb +3 -3
  22. data/spec/acfs/configuration_spec.rb +1 -1
  23. data/spec/acfs/global_spec.rb +5 -5
  24. data/spec/acfs/location_spec.rb +1 -1
  25. data/spec/acfs/middleware/json_spec.rb +1 -1
  26. data/spec/acfs/middleware/message_pack_spec.rb +1 -1
  27. data/spec/acfs/operation_spec.rb +1 -1
  28. data/spec/acfs/resource/attributes/boolean_spec.rb +31 -31
  29. data/spec/acfs/resource/attributes/date_time_spec.rb +9 -9
  30. data/spec/acfs/resource/attributes/dict_spec.rb +10 -10
  31. data/spec/acfs/resource/attributes/float_spec.rb +11 -11
  32. data/spec/acfs/resource/attributes/integer_spec.rb +6 -6
  33. data/spec/acfs/resource/attributes/list_spec.rb +1 -1
  34. data/spec/acfs/resource/attributes/uuid_spec.rb +8 -8
  35. data/spec/acfs/resource/attributes_spec.rb +8 -8
  36. data/spec/acfs/resource/dirty_spec.rb +1 -1
  37. data/spec/acfs/resource/persistence_spec.rb +7 -7
  38. data/spec/acfs/resource/query_methods_spec.rb +1 -1
  39. data/spec/acfs/runner_spec.rb +12 -12
  40. data/spec/acfs/stub_spec.rb +13 -18
  41. data/spec/acfs_spec.rb +4 -4
  42. data/spec/spec_helper.rb +9 -5
  43. data/spec/support/hash.rb +1 -1
  44. data/vendor/bundle/ruby/3.4.0/bundler/gems/rubocop-config-67802c9d1826/LICENSE +21 -0
  45. data/vendor/bundle/ruby/3.4.0/bundler/gems/rubocop-config-67802c9d1826/README.md +23 -0
  46. data/vendor/bundle/ruby/3.4.0/bundler/gems/rubocop-config-67802c9d1826/rubocop-config.gemspec +31 -0
  47. data/vendor/bundle/ruby/3.4.0/gems/actionpack-8.0.1/CHANGELOG.md +205 -0
  48. data/vendor/bundle/ruby/3.4.0/gems/actionpack-8.0.1/MIT-LICENSE +21 -0
  49. data/vendor/bundle/ruby/3.4.0/gems/actionpack-8.0.1/README.rdoc +57 -0
  50. data/vendor/bundle/ruby/3.4.0/gems/actionview-8.0.1/CHANGELOG.md +67 -0
  51. data/vendor/bundle/ruby/3.4.0/gems/actionview-8.0.1/MIT-LICENSE +21 -0
  52. data/vendor/bundle/ruby/3.4.0/gems/actionview-8.0.1/README.rdoc +40 -0
  53. data/vendor/bundle/ruby/3.4.0/gems/activemodel-8.0.1/CHANGELOG.md +110 -0
  54. data/vendor/bundle/ruby/3.4.0/gems/activemodel-8.0.1/MIT-LICENSE +21 -0
  55. data/vendor/bundle/ruby/3.4.0/gems/activemodel-8.0.1/README.rdoc +266 -0
  56. data/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.1/CHANGELOG.md +157 -0
  57. data/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.1/MIT-LICENSE +20 -0
  58. data/vendor/bundle/ruby/3.4.0/gems/activesupport-8.0.1/README.rdoc +40 -0
  59. data/vendor/bundle/ruby/3.4.0/gems/addressable-2.8.7/CHANGELOG.md +301 -0
  60. data/vendor/bundle/ruby/3.4.0/gems/addressable-2.8.7/LICENSE.txt +202 -0
  61. data/vendor/bundle/ruby/3.4.0/gems/addressable-2.8.7/README.md +121 -0
  62. data/vendor/bundle/ruby/3.4.0/gems/addressable-2.8.7/addressable.gemspec +28 -0
  63. data/vendor/bundle/ruby/3.4.0/gems/appraisal-2.5.0/MIT-LICENSE +21 -0
  64. data/vendor/bundle/ruby/3.4.0/gems/appraisal-2.5.0/README.md +243 -0
  65. data/vendor/bundle/ruby/3.4.0/gems/appraisal-2.5.0/appraisal.gemspec +29 -0
  66. data/vendor/bundle/ruby/3.4.0/gems/base64-0.2.0/LICENSE.txt +22 -0
  67. data/vendor/bundle/ruby/3.4.0/gems/base64-0.2.0/README.md +48 -0
  68. data/vendor/bundle/ruby/3.4.0/gems/benchmark-0.4.0/README.md +138 -0
  69. data/vendor/bundle/ruby/3.4.0/gems/benchmark-0.4.0/benchmark.gemspec +32 -0
  70. data/vendor/bundle/ruby/3.4.0/gems/bigdecimal-3.1.9/LICENSE +56 -0
  71. data/vendor/bundle/ruby/3.4.0/gems/bigdecimal-3.1.9/bigdecimal.gemspec +57 -0
  72. data/vendor/bundle/ruby/3.4.0/gems/builder-3.3.0/MIT-LICENSE +20 -0
  73. data/vendor/bundle/ruby/3.4.0/gems/builder-3.3.0/README.md +258 -0
  74. data/vendor/bundle/ruby/3.4.0/gems/builder-3.3.0/builder.gemspec +49 -0
  75. data/vendor/bundle/ruby/3.4.0/gems/concurrent-ruby-1.3.5/CHANGELOG.md +603 -0
  76. data/vendor/bundle/ruby/3.4.0/gems/concurrent-ruby-1.3.5/LICENSE.txt +21 -0
  77. data/vendor/bundle/ruby/3.4.0/gems/concurrent-ruby-1.3.5/README.md +407 -0
  78. data/vendor/bundle/ruby/3.4.0/gems/connection_pool-2.5.0/LICENSE +20 -0
  79. data/vendor/bundle/ruby/3.4.0/gems/connection_pool-2.5.0/README.md +167 -0
  80. data/vendor/bundle/ruby/3.4.0/gems/connection_pool-2.5.0/connection_pool.gemspec +24 -0
  81. data/vendor/bundle/ruby/3.4.0/gems/crack-1.0.0/LICENSE +20 -0
  82. data/vendor/bundle/ruby/3.4.0/gems/crack-1.0.0/README.md +43 -0
  83. data/vendor/bundle/ruby/3.4.0/gems/crass-1.0.6/LICENSE +18 -0
  84. data/vendor/bundle/ruby/3.4.0/gems/crass-1.0.6/README.md +192 -0
  85. data/vendor/bundle/ruby/3.4.0/gems/crass-1.0.6/crass.gemspec +31 -0
  86. data/vendor/bundle/ruby/3.4.0/gems/diff-lcs-1.5.1/License.md +41 -0
  87. data/vendor/bundle/ruby/3.4.0/gems/diff-lcs-1.5.1/README.rdoc +84 -0
  88. data/vendor/bundle/ruby/3.4.0/gems/drb-2.2.1/LICENSE.txt +22 -0
  89. data/vendor/bundle/ruby/3.4.0/gems/drb-2.2.1/drb.gemspec +41 -0
  90. data/vendor/bundle/ruby/3.4.0/gems/erubi-1.13.1/CHANGELOG +111 -0
  91. data/vendor/bundle/ruby/3.4.0/gems/erubi-1.13.1/MIT-LICENSE +21 -0
  92. data/vendor/bundle/ruby/3.4.0/gems/erubi-1.13.1/README.rdoc +151 -0
  93. data/vendor/bundle/ruby/3.4.0/gems/ethon-0.16.0/CHANGELOG.md +375 -0
  94. data/vendor/bundle/ruby/3.4.0/gems/ethon-0.16.0/LICENSE +20 -0
  95. data/vendor/bundle/ruby/3.4.0/gems/ethon-0.16.0/README.md +118 -0
  96. data/vendor/bundle/ruby/3.4.0/gems/ethon-0.16.0/ethon.gemspec +26 -0
  97. data/vendor/bundle/ruby/3.4.0/gems/ffi-1.17.1-x86_64-linux-gnu/CHANGELOG.md +465 -0
  98. data/vendor/bundle/ruby/3.4.0/gems/ffi-1.17.1-x86_64-linux-gnu/LICENSE +24 -0
  99. data/vendor/bundle/ruby/3.4.0/gems/ffi-1.17.1-x86_64-linux-gnu/LICENSE.SPECS +22 -0
  100. data/vendor/bundle/ruby/3.4.0/gems/ffi-1.17.1-x86_64-linux-gnu/README.md +137 -0
  101. data/vendor/bundle/ruby/3.4.0/gems/ffi-1.17.1-x86_64-linux-gnu/ffi.gemspec +42 -0
  102. data/vendor/bundle/ruby/3.4.0/gems/hashdiff-1.1.2/LICENSE +19 -0
  103. data/vendor/bundle/ruby/3.4.0/gems/hashdiff-1.1.2/README.md +298 -0
  104. data/vendor/bundle/ruby/3.4.0/gems/hashdiff-1.1.2/changelog.md +119 -0
  105. data/vendor/bundle/ruby/3.4.0/gems/hashdiff-1.1.2/hashdiff.gemspec +39 -0
  106. data/vendor/bundle/ruby/3.4.0/gems/i18n-1.14.6/MIT-LICENSE +20 -0
  107. data/vendor/bundle/ruby/3.4.0/gems/i18n-1.14.6/README.md +127 -0
  108. data/vendor/bundle/ruby/3.4.0/gems/json-2.9.1/README.md +195 -0
  109. data/vendor/bundle/ruby/3.4.0/gems/json-2.9.1/json.gemspec +64 -0
  110. data/vendor/bundle/ruby/3.4.0/gems/logger-1.6.5/README.md +104 -0
  111. data/vendor/bundle/ruby/3.4.0/gems/logger-1.6.5/logger.gemspec +28 -0
  112. data/vendor/bundle/ruby/3.4.0/gems/loofah-2.24.0/CHANGELOG.md +591 -0
  113. data/vendor/bundle/ruby/3.4.0/gems/loofah-2.24.0/MIT-LICENSE.txt +23 -0
  114. data/vendor/bundle/ruby/3.4.0/gems/loofah-2.24.0/README.md +410 -0
  115. data/vendor/bundle/ruby/3.4.0/gems/minitest-5.25.4/README.rdoc +835 -0
  116. data/vendor/bundle/ruby/3.4.0/gems/multi_json-1.15.0/CHANGELOG.md +275 -0
  117. data/vendor/bundle/ruby/3.4.0/gems/multi_json-1.15.0/LICENSE.md +20 -0
  118. data/vendor/bundle/ruby/3.4.0/gems/multi_json-1.15.0/README.md +121 -0
  119. data/vendor/bundle/ruby/3.4.0/gems/nokogiri-1.18.1-x86_64-linux-gnu/LICENSE-DEPENDENCIES.md +2224 -0
  120. data/vendor/bundle/ruby/3.4.0/gems/nokogiri-1.18.1-x86_64-linux-gnu/LICENSE.md +9 -0
  121. data/vendor/bundle/ruby/3.4.0/gems/nokogiri-1.18.1-x86_64-linux-gnu/README.md +293 -0
  122. data/vendor/bundle/ruby/3.4.0/gems/public_suffix-6.0.1/CHANGELOG.md +491 -0
  123. data/vendor/bundle/ruby/3.4.0/gems/public_suffix-6.0.1/LICENSE.txt +22 -0
  124. data/vendor/bundle/ruby/3.4.0/gems/public_suffix-6.0.1/README.md +222 -0
  125. data/vendor/bundle/ruby/3.4.0/gems/racc-1.8.1/ChangeLog +846 -0
  126. data/vendor/bundle/ruby/3.4.0/gems/racc-1.8.1/README.ja.rdoc +58 -0
  127. data/vendor/bundle/ruby/3.4.0/gems/racc-1.8.1/README.rdoc +60 -0
  128. data/vendor/bundle/ruby/3.4.0/gems/rack-3.1.8/CHANGELOG.md +998 -0
  129. data/vendor/bundle/ruby/3.4.0/gems/rack-3.1.8/MIT-LICENSE +20 -0
  130. data/vendor/bundle/ruby/3.4.0/gems/rack-3.1.8/README.md +328 -0
  131. data/vendor/bundle/ruby/3.4.0/gems/rack-session-2.1.0/license.md +72 -0
  132. data/vendor/bundle/ruby/3.4.0/gems/rack-session-2.1.0/readme.md +47 -0
  133. data/vendor/bundle/ruby/3.4.0/gems/rack-test-2.2.0/MIT-LICENSE.txt +20 -0
  134. data/vendor/bundle/ruby/3.4.0/gems/rack-test-2.2.0/README.md +139 -0
  135. data/vendor/bundle/ruby/3.4.0/gems/rails-dom-testing-2.2.0/MIT-LICENSE +23 -0
  136. data/vendor/bundle/ruby/3.4.0/gems/rails-dom-testing-2.2.0/README.md +91 -0
  137. data/vendor/bundle/ruby/3.4.0/gems/rails-html-sanitizer-1.6.2/CHANGELOG.md +255 -0
  138. data/vendor/bundle/ruby/3.4.0/gems/rails-html-sanitizer-1.6.2/MIT-LICENSE +23 -0
  139. data/vendor/bundle/ruby/3.4.0/gems/rails-html-sanitizer-1.6.2/README.md +267 -0
  140. data/vendor/bundle/ruby/3.4.0/gems/rake-13.2.1/MIT-LICENSE +21 -0
  141. data/vendor/bundle/ruby/3.4.0/gems/rake-13.2.1/README.rdoc +155 -0
  142. data/vendor/bundle/ruby/3.4.0/gems/rake-13.2.1/rake.gemspec +101 -0
  143. data/vendor/bundle/ruby/3.4.0/gems/rake-release-1.3.0/LICENSE +21 -0
  144. data/vendor/bundle/ruby/3.4.0/gems/rake-release-1.3.0/README.md +107 -0
  145. data/vendor/bundle/ruby/3.4.0/gems/rake-release-1.3.0/rake-release.gemspec +23 -0
  146. data/vendor/bundle/ruby/3.4.0/gems/rexml-3.4.0/LICENSE.txt +22 -0
  147. data/vendor/bundle/ruby/3.4.0/gems/rexml-3.4.0/README.md +57 -0
  148. data/vendor/bundle/ruby/3.4.0/gems/rspec-3.13.0/LICENSE.md +27 -0
  149. data/vendor/bundle/ruby/3.4.0/gems/rspec-3.13.0/README.md +47 -0
  150. data/vendor/bundle/ruby/3.4.0/gems/rspec-collection_matchers-1.2.1/Changelog.md +68 -0
  151. data/vendor/bundle/ruby/3.4.0/gems/rspec-collection_matchers-1.2.1/LICENSE.txt +27 -0
  152. data/vendor/bundle/ruby/3.4.0/gems/rspec-collection_matchers-1.2.1/README.md +76 -0
  153. data/vendor/bundle/ruby/3.4.0/gems/rspec-collection_matchers-1.2.1/rspec-collection_matchers.gemspec +33 -0
  154. data/vendor/bundle/ruby/3.4.0/gems/rspec-core-3.13.2/Changelog.md +2415 -0
  155. data/vendor/bundle/ruby/3.4.0/gems/rspec-core-3.13.2/LICENSE.md +26 -0
  156. data/vendor/bundle/ruby/3.4.0/gems/rspec-core-3.13.2/README.md +389 -0
  157. data/vendor/bundle/ruby/3.4.0/gems/rspec-expectations-3.13.3/Changelog.md +1352 -0
  158. data/vendor/bundle/ruby/3.4.0/gems/rspec-expectations-3.13.3/LICENSE.md +25 -0
  159. data/vendor/bundle/ruby/3.4.0/gems/rspec-expectations-3.13.3/README.md +326 -0
  160. data/vendor/bundle/ruby/3.4.0/gems/rspec-its-2.0.0/Changelog.md +73 -0
  161. data/vendor/bundle/ruby/3.4.0/gems/rspec-its-2.0.0/LICENSE.txt +27 -0
  162. data/vendor/bundle/ruby/3.4.0/gems/rspec-its-2.0.0/README.md +104 -0
  163. data/vendor/bundle/ruby/3.4.0/gems/rspec-its-2.0.0/rspec-its.gemspec +31 -0
  164. data/vendor/bundle/ruby/3.4.0/gems/rspec-mocks-3.13.2/Changelog.md +1299 -0
  165. data/vendor/bundle/ruby/3.4.0/gems/rspec-mocks-3.13.2/LICENSE.md +25 -0
  166. data/vendor/bundle/ruby/3.4.0/gems/rspec-mocks-3.13.2/README.md +465 -0
  167. data/vendor/bundle/ruby/3.4.0/gems/rspec-support-3.13.2/Changelog.md +408 -0
  168. data/vendor/bundle/ruby/3.4.0/gems/rspec-support-3.13.2/LICENSE.md +23 -0
  169. data/vendor/bundle/ruby/3.4.0/gems/rspec-support-3.13.2/README.md +40 -0
  170. data/vendor/bundle/ruby/3.4.0/gems/securerandom-0.4.1/README.md +72 -0
  171. data/vendor/bundle/ruby/3.4.0/gems/thor-1.3.2/LICENSE.md +20 -0
  172. data/vendor/bundle/ruby/3.4.0/gems/thor-1.3.2/README.md +45 -0
  173. data/vendor/bundle/ruby/3.4.0/gems/thor-1.3.2/thor.gemspec +33 -0
  174. data/vendor/bundle/ruby/3.4.0/gems/typhoeus-1.4.1/CHANGELOG.md +410 -0
  175. data/vendor/bundle/ruby/3.4.0/gems/typhoeus-1.4.1/LICENSE +22 -0
  176. data/vendor/bundle/ruby/3.4.0/gems/typhoeus-1.4.1/README.md +588 -0
  177. data/vendor/bundle/ruby/3.4.0/gems/typhoeus-1.4.1/typhoeus.gemspec +25 -0
  178. data/vendor/bundle/ruby/3.4.0/gems/tzinfo-2.0.6/LICENSE +19 -0
  179. data/vendor/bundle/ruby/3.4.0/gems/tzinfo-2.0.6/README.md +406 -0
  180. data/vendor/bundle/ruby/3.4.0/gems/uri-1.0.2/README.md +55 -0
  181. data/vendor/bundle/ruby/3.4.0/gems/useragent-0.16.11/LICENSE +20 -0
  182. data/vendor/bundle/ruby/3.4.0/gems/useragent-0.16.11/README.md +42 -0
  183. data/vendor/bundle/ruby/3.4.0/gems/webmock-3.24.0/CHANGELOG.md +2104 -0
  184. data/vendor/bundle/ruby/3.4.0/gems/webmock-3.24.0/LICENSE +20 -0
  185. data/vendor/bundle/ruby/3.4.0/gems/webmock-3.24.0/README.md +1222 -0
  186. data/vendor/bundle/ruby/3.4.0/specifications/actionpack-8.0.1.gemspec +36 -0
  187. data/vendor/bundle/ruby/3.4.0/specifications/actionview-8.0.1.gemspec +33 -0
  188. data/vendor/bundle/ruby/3.4.0/specifications/activemodel-8.0.1.gemspec +26 -0
  189. data/vendor/bundle/ruby/3.4.0/specifications/activesupport-8.0.1.gemspec +38 -0
  190. data/vendor/bundle/ruby/3.4.0/specifications/addressable-2.8.7.gemspec +30 -0
  191. data/vendor/bundle/ruby/3.4.0/specifications/appraisal-2.5.0.gemspec +31 -0
  192. data/vendor/bundle/ruby/3.4.0/specifications/base64-0.2.0.gemspec +23 -0
  193. data/vendor/bundle/ruby/3.4.0/specifications/benchmark-0.4.0.gemspec +23 -0
  194. data/vendor/bundle/ruby/3.4.0/specifications/bigdecimal-3.1.9.gemspec +25 -0
  195. data/vendor/bundle/ruby/3.4.0/specifications/builder-3.3.0.gemspec +22 -0
  196. data/vendor/bundle/ruby/3.4.0/specifications/concurrent-ruby-1.3.5.gemspec +24 -0
  197. data/vendor/bundle/ruby/3.4.0/specifications/connection_pool-2.5.0.gemspec +28 -0
  198. data/vendor/bundle/ruby/3.4.0/specifications/crack-1.0.0.gemspec +27 -0
  199. data/vendor/bundle/ruby/3.4.0/specifications/crass-1.0.6.gemspec +27 -0
  200. data/vendor/bundle/ruby/3.4.0/specifications/diff-lcs-1.5.1.gemspec +37 -0
  201. data/vendor/bundle/ruby/3.4.0/specifications/drb-2.2.1.gemspec +22 -0
  202. data/vendor/bundle/ruby/3.4.0/specifications/erubi-1.13.1.gemspec +29 -0
  203. data/vendor/bundle/ruby/3.4.0/specifications/ethon-0.16.0.gemspec +24 -0
  204. data/vendor/bundle/ruby/3.4.0/specifications/ffi-1.17.1-x86_64-linux-gnu.gemspec +31 -0
  205. data/vendor/bundle/ruby/3.4.0/specifications/hashdiff-1.1.2.gemspec +30 -0
  206. data/vendor/bundle/ruby/3.4.0/specifications/i18n-1.14.6.gemspec +27 -0
  207. data/vendor/bundle/ruby/3.4.0/specifications/json-2.9.1.gemspec +0 -0
  208. data/vendor/bundle/ruby/3.4.0/specifications/logger-1.6.5.gemspec +22 -0
  209. data/vendor/bundle/ruby/3.4.0/specifications/loofah-2.24.0.gemspec +27 -0
  210. data/vendor/bundle/ruby/3.4.0/specifications/minitest-5.25.4.gemspec +31 -0
  211. data/vendor/bundle/ruby/3.4.0/specifications/multi_json-1.15.0.gemspec +26 -0
  212. data/vendor/bundle/ruby/3.4.0/specifications/nokogiri-1.18.1-x86_64-linux-gnu.gemspec +31 -0
  213. data/vendor/bundle/ruby/3.4.0/specifications/public_suffix-6.0.1.gemspec +24 -0
  214. data/vendor/bundle/ruby/3.4.0/specifications/racc-1.8.1.gemspec +28 -0
  215. data/vendor/bundle/ruby/3.4.0/specifications/rack-3.1.8.gemspec +31 -0
  216. data/vendor/bundle/ruby/3.4.0/specifications/rack-session-2.1.0.gemspec +30 -0
  217. data/vendor/bundle/ruby/3.4.0/specifications/rack-test-2.2.0.gemspec +29 -0
  218. data/vendor/bundle/ruby/3.4.0/specifications/rails-dom-testing-2.2.0.gemspec +28 -0
  219. data/vendor/bundle/ruby/3.4.0/specifications/rails-html-sanitizer-1.6.2.gemspec +27 -0
  220. data/vendor/bundle/ruby/3.4.0/specifications/rake-13.2.1.gemspec +26 -0
  221. data/vendor/bundle/ruby/3.4.0/specifications/rake-release-1.3.0.gemspec +26 -0
  222. data/vendor/bundle/ruby/3.4.0/specifications/rexml-3.4.0.gemspec +25 -0
  223. data/vendor/bundle/ruby/3.4.0/specifications/rspec-3.13.0.gemspec +31 -0
  224. data/vendor/bundle/ruby/3.4.0/specifications/rspec-collection_matchers-1.2.1.gemspec +27 -0
  225. data/vendor/bundle/ruby/3.4.0/specifications/rspec-core-3.13.2.gemspec +39 -0
  226. data/vendor/bundle/ruby/3.4.0/specifications/rspec-expectations-3.13.3.gemspec +33 -0
  227. data/vendor/bundle/ruby/3.4.0/specifications/rspec-its-2.0.0.gemspec +27 -0
  228. data/vendor/bundle/ruby/3.4.0/specifications/rspec-mocks-3.13.2.gemspec +33 -0
  229. data/vendor/bundle/ruby/3.4.0/specifications/rspec-support-3.13.2.gemspec +29 -0
  230. data/vendor/bundle/ruby/3.4.0/specifications/securerandom-0.4.1.gemspec +23 -0
  231. data/vendor/bundle/ruby/3.4.0/specifications/thor-1.3.2.gemspec +28 -0
  232. data/vendor/bundle/ruby/3.4.0/specifications/typhoeus-1.4.1.gemspec +24 -0
  233. data/vendor/bundle/ruby/3.4.0/specifications/tzinfo-2.0.6.gemspec +30 -0
  234. data/vendor/bundle/ruby/3.4.0/specifications/uri-1.0.2.gemspec +23 -0
  235. data/vendor/bundle/ruby/3.4.0/specifications/useragent-0.16.11.gemspec +25 -0
  236. data/vendor/bundle/ruby/3.4.0/specifications/webmock-3.24.0.gemspec +45 -0
  237. metadata +204 -67
@@ -0,0 +1,2415 @@
1
+ ### Development
2
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.13.2...3-13-maintenance)
3
+
4
+ ### 3.13.2 / 2024-10-18
5
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.13.1...v3.13.2)
6
+
7
+ Bug fixes:
8
+
9
+ * `RSpec::Configuration#requires` will reflect files already required, whilst requiring
10
+ them. (Jon Rowe, #3117)
11
+
12
+ ### 3.13.1 / 2024-09-02
13
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.13.0...v3.13.1)
14
+
15
+ Bug fixes:
16
+
17
+ * Sort ids to run as the original order to fix `--bisect`. (Maki Kawahara, #3093)
18
+
19
+ ### 3.13.0 / 2024-02-04
20
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.12.3...v3.13.0)
21
+
22
+ Enhancements:
23
+
24
+ * Support the `--backtrace` flag when using the JSON formatter. (Matt Larraz, #2980)
25
+ * Ignore commented out lines in CLI config files (e.g. `.rspec`). (Junichi Ito, #2984)
26
+ * Add `pending_failure_output` config option to allow skipping backtraces or
27
+ muting pending specs output. (Phil Pirozhkov, #2957)
28
+ * Process `--dry-run` before configuration flags that read files so that introspecting
29
+ it returns the correct value. (Xenor Chang, #3008)
30
+ * Allow specifying custom ordering strategies via `--order`. (Jon Rowe, #3025)
31
+ * Use the improved `syntax_suggest` output for `SyntaxError` when available.
32
+ (Richard Schneeman, #3015, #3026)
33
+ * Add config option (`RSpec::Core::Configuration#full_cause_backtrace`) to print the
34
+ entire backtrace of an exception cause. (David Taylor, #3046)
35
+
36
+ ### 3.12.3 / 2024-02-04
37
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.12.2...v3.12.3)
38
+
39
+ Bug fixes:
40
+
41
+ * Use `__send__` in output wrapper to avoid issues with IO objects that implement `send`
42
+ like `Socket`. (Richard Platel, #3045)
43
+
44
+ ### 3.12.2 / 2023-04-18
45
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.12.1...v3.12.2)
46
+
47
+ Bug fixes:
48
+
49
+ * Remove link to outdated documentation in generated output. (Jon Rowe, #3035)
50
+
51
+ ### 3.12.1 / 2023-02-03
52
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.12.0...v3.12.1)
53
+
54
+ Bug fixes:
55
+
56
+ * Prevent multiple calls to `extra_failure_lines` from adding additional whitespace
57
+ around them when the lines already contain whitespace. (Jon Rowe, #3006)
58
+
59
+ ### 3.12.0 / 2022-10-26
60
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.11.0...v3.12.0)
61
+
62
+ * No changes, released to support other gems.
63
+
64
+ ### 3.11.0 / 2022-02-09
65
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.10.2...v3.11.0)
66
+
67
+ Enhancements:
68
+
69
+ * Improve pluralisation of words ending with `s` (like process). (Joshua Pinter, #2779)
70
+ * Add ordering by file modification time (most recent first). (Matheus Richard, #2778)
71
+ * Add `to_s` to reserved names for #let and #subject. (Nick Flückiger, #2886)
72
+ * Introduce `RSpec.current_scope` to expose the current scope in which
73
+ RSpec is executing. e.g. `:before_example_hook`, `:example` etc. (@odinhb, #2895)
74
+ * Add named bold colours as options for custom colours. (#2913, #2914)
75
+ * Warn when (but not prevent) a `SystemExit` occurs. (Jared Beck, #2926)
76
+
77
+ ### 3.10.2 / 2022-01-27
78
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.10.1...v3.10.2)
79
+
80
+ Bug fixes:
81
+
82
+ * Ensure bisect communication uses consistent encoding. (Mike Jarema, #2852)
83
+ * Fix exception presenter when the root cause exception has nil backtrace.
84
+ (Zinovyev Ivan, #2903)
85
+ * Fix `inspect` output of `RSpec::Core::Example::Procsy` to namespace correctly.
86
+ (Keiko Kaneko, #2915)
87
+ * Ensure formatters not exposing `#output` will not crash duplicate check.
88
+ (@niceking, #2916)
89
+
90
+ ### 3.10.1 / 2020-12-27
91
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.10.0...v3.10.1)
92
+
93
+ Bug fixes:
94
+
95
+ * RSpec warning output was missing deprecations from Ruby, these are now included.
96
+ (Jon Rowe, #2811)
97
+
98
+ ### 3.10.0 / 2020-10-30
99
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.9.3...v3.10.0)
100
+
101
+ Enhancements:
102
+
103
+ * Memoize `RSpec::Core::Formatters::ExceptionPresenter#exception_lines` to improve performance
104
+ with slow exception messages. (Maxime Lapointe, #2743)
105
+ * Add configuration for an error exit code (to disambiguate errored builds from failed builds
106
+ by exit status). (Dana Sherson, #2749)
107
+
108
+ ### 3.9.3 / 2020-09-30
109
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.9.2...v3.9.3)
110
+
111
+ Bug Fixes:
112
+
113
+ * Declare `ruby2_keywords` on `method_missing` for other gems. (Jon Rowe, #2731)
114
+ * Ensure custom error codes are returned from bisect runs. (Jon Rowe, #2732)
115
+ * Ensure `RSpec::Core::Configuration` predicate config methods return booleans.
116
+ (Marc-André Lafortune, #2736)
117
+ * Prevent `rspec --bisect` from generating zombie processes while executing
118
+ bisect runs. (Benoit Tigeot, Jon Rowe, #2739)
119
+ * Predicates for pending examples, (in `RSpec::Core::Example`, `#pending?`, `#skipped?` and
120
+ `#pending_fixed?`) now return boolean values rather than truthy values.
121
+ (Marc-André Lafortune, #2756, #2758)
122
+ * Exceptions which have a message which cannot be cast to a string will no longer
123
+ cause a crash. (Jon Rowe, #2761)
124
+
125
+ ### 3.9.2 / 2020-05-02
126
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.9.1...v3.9.2)
127
+
128
+ Bug Fixes:
129
+
130
+ * Emit a warning when `around` hook is used with `:context` scope
131
+ (Phil Pirozhkov, #2687)
132
+ * Prevent invalid implementations of `Exception#cause` from being treated as a
133
+ valid cause (and causing strange errors) in `RSpec::Core::Formatters::ExceptionPresenter`.
134
+ (Jon Rowe, #2703)
135
+ * Correctly detect patterns when `rspec_opts` is an array in `RSpec::Core::RakeTask`.
136
+ (Marc-André Lafortune, #2704)
137
+ * Make `RSpec.clear_examples` reset example counts for example groups. This fixes
138
+ an issue with re-running specs not matching ids. (Agis Anastasopoulos, #2723)
139
+
140
+ ### 3.9.1 / 2019-12-28
141
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.9.0...v3.9.1)
142
+
143
+ Bug Fixes:
144
+
145
+ * Prevent bisect command from blocking when number of specs exceeds file
146
+ descriptor limit on OSX or Linux. (Benoit Tigeot, #2669)
147
+ * Prevent warnings being issued on Ruby 2.7.0. (Jon Rowe, #2680)
148
+
149
+ ### 3.9.0 / 2019-10-07
150
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.8.2...v3.9.0)
151
+
152
+ Enhancements:
153
+
154
+ * Improve the handling of errors during loading support files, if a file
155
+ errors before loading specs, RSpec will now skip loading the specs.
156
+ (David Rodríguez, #2568)
157
+ * Add support for --example-matches to run examples by regular expression.
158
+ (Sam Joseph, Matt Rider, @okothkongo1, #2586)
159
+ * Add `did_you_mean` suggestions for file names encountering a `LoadError`
160
+ outside of examples. (@obromios, #2601)
161
+ * Add a minimalist quick fix style formatter, only outputs failures as
162
+ `file:line:message`. (Romain Tartière, #2614)
163
+ * Convert string number values to integer when used for `RSpec::Configuration#fail_fast`
164
+ (Viktor Fonic, #2634)
165
+ * Issue warning when invalid values are used for `RSpec::Configuration#fail_fast`
166
+ (Viktor Fonic, #2634)
167
+ * Add support for running the Rake task in a clean environment.
168
+ (Jon Rowe, #2632)
169
+ * Indent messages by there example group / example in the documentation formatter.
170
+ (Samuel Williams, #2649)
171
+
172
+ ### 3.8.2 / 2019-06-29
173
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.8.1...v3.8.2)
174
+
175
+ Bug Fixes:
176
+
177
+ * Fix `config.define_derived_metadata` so that cascades are not triggered
178
+ until metadata has been assigned to the example or example group
179
+ (Myron Marston, #2635).
180
+
181
+ ### 3.8.1 / 2019-06-13
182
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.8.0...v3.8.1)
183
+
184
+ Bug Fixes:
185
+
186
+ * Handle RSpec description(s) with japanese chars in CP932 encoded files.
187
+ (Benoit Tigeot, #2575)
188
+ * When defining `let` methods that overwrite an existing method, prevent
189
+ a warning being issued by removing the old definition. (Jon Rowe, #2593)
190
+ * Prevent warning on Ruby 2.6.0-rc1 (Keiji Yoshimi, #2582)
191
+ * Fix `config.define_derived_metadata` so that it supports cascades.
192
+ (Myron Marston, #2630).
193
+
194
+ ### 3.8.0 / 2018-08-04
195
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.7.1...v3.8.0)
196
+
197
+ Enhancements:
198
+
199
+ * Improve shell escaping used by `RSpec::Core::RakeTask` and `--bisect` so
200
+ that it works on `Pathname` objects. (Andrew Vit, #2479)
201
+ * Nicely format errors encountered while loading files specified
202
+ by `--require` option. (Myron Marston, #2504)
203
+ * Significantly improve the performance of `--bisect` on platforms that
204
+ support forking by replacing the shell-based runner with one that uses
205
+ forking so that RSpec and the application environment can be booted only
206
+ once, instead of once per spec run. (Myron Marston, #2511)
207
+ * Provide a configuration API to pick which bisect runner is used for
208
+ `--bisect`. Pick a runner via `config.bisect_runner = :shell` or
209
+ `config.bisect_runner = :fork` in a file loaded by a `--require`
210
+ option passed at the command line or set in `.rspec`. (Myron Marston, #2511)
211
+ * Support the [XDG Base Directory
212
+ Specification](https://specifications.freedesktop.org/basedir-spec/latest/)
213
+ for the global options file. `~/.rspec` is still supported when no
214
+ options file is found in `$XDG_CONFIG_HOME/rspec/options` (Magnus Bergmark, #2538)
215
+ * Extract `RSpec.world.prepare_example_filtering` that sets up the
216
+ example filtering for custom RSpec runners. (Oleg Pudeyev, #2552)
217
+
218
+ Bug Fixes:
219
+
220
+ * Prevent an `ArgumentError` when truncating backtraces with two identical
221
+ backtraces. (Systho, #2515, Benoit Tigeot, #2539)
222
+
223
+ ### 3.7.1 / 2018-01-02
224
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.7.0...v3.7.1)
225
+
226
+ Bug Fixes:
227
+
228
+ * Work around duplicate config hook regression introduced
229
+ by Ruby 2.5's lazy proc allocation. (Myron Marston, #2497)
230
+
231
+ ### 3.7.0 / 2017-10-17
232
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.6.0...v3.7.0)
233
+
234
+ Enhancements:
235
+
236
+ * Add `-n` alias for `--next-failure`. (Ian Ker-Seymer, #2434)
237
+ * Improve compatibility with `--enable-frozen-string-literal` option
238
+ on Ruby 2.3+. (Pat Allan, #2425, #2427, #2437)
239
+ * Do not run `:context` hooks for example groups that have been skipped.
240
+ (Devon Estes, #2442)
241
+ * Add `errors_outside_of_examples_count` to the JSON formatter.
242
+ (Takeshi Arabiki, #2448)
243
+
244
+ Bug Fixes:
245
+
246
+ * Improve compatibility with frozen string literal flag. (#2425, Pat Allan)
247
+
248
+ ### 3.6.0 / 2017-05-04
249
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.6.0.beta2...v3.6.0)
250
+
251
+ Enhancements:
252
+
253
+ * Add seed information to JSON formatter output. (#2388, Mitsutaka Mimura)
254
+ * Include example id in the JSON formatter output. (#2369, Xavier Shay)
255
+ * Respect changes to `config.output_stream` after formatters have been
256
+ setup. (#2401, #2419, Ilya Lavrov)
257
+
258
+ Bug Fixes:
259
+
260
+ * Delay formatter loading until the last minute to allow accessing the reporter
261
+ without triggering formatter setup. (Jon Rowe, #2243)
262
+ * Ensure context hook failures running before an example can access the
263
+ reporter. (Jon Jensen, #2387)
264
+ * Multiple fixes to allow using the runner multiple times within the same
265
+ process: `RSpec.clear_examples` resets the formatter and no longer clears
266
+ shared examples, and streams can be used across multiple runs rather than
267
+ being closed after the first. (#2368, Xavier Shay)
268
+ * Prevent unexpected `example_group_finished` notifications causing an error.
269
+ (#2396, VTJamie)
270
+ * Fix bugs where `config.when_first_matching_example_defined` hooks would fire
271
+ multiple times in some cases. (Yuji Nakayama, #2400)
272
+ * Default `last_run_status` to "unknown" when the `status` field in the
273
+ persistence file contains an unrecognized value. (#2360, matrinox)
274
+ * Prevent `let` from defining an `initialize` method. (#2414, Jon Rowe)
275
+
276
+ ### 3.6.0.beta2 / 2016-12-12
277
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.6.0.beta1...v3.6.0.beta2)
278
+
279
+ Enhancements:
280
+
281
+ * Include count of errors occurring outside examples in default summaries.
282
+ (#2351, Jon Rowe)
283
+ * Warn when including shared example groups recursively. (#2356, Jon Rowe)
284
+ * Improve failure snippet syntax highlighting with CodeRay to highlight
285
+ RSpec "keywords" like `expect`. (#2358, Myron Marston)
286
+
287
+ ### 3.6.0.beta1 / 2016-10-09
288
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.5.4...v3.6.0.beta1)
289
+
290
+ Enhancements:
291
+
292
+ * Warn when duplicate shared examples definitions are loaded due to being
293
+ defined in files matching the spec pattern (e.g. `_spec.rb`) (#2278, Devon Estes)
294
+ * Improve metadata filtering so that it can match against any object
295
+ that implements `===` instead of treating regular expressions as
296
+ special. (Myron Marston, #2294)
297
+ * Improve `rspec -v` so that it prints out the versions of each part of
298
+ RSpec to prevent confusion. (Myron Marston, #2304)
299
+ * Add `config.fail_if_no_examples` option which causes RSpec to fail if
300
+ no examples are found. (Ewa Czechowska, #2302)
301
+ * Nicely format errors encountered while loading spec files.
302
+ (Myron Marston, #2323)
303
+ * Improve the API for enabling and disabling color output (Josh
304
+ Justice, #2321):
305
+ * Automatically enable color if the output is a TTY, since color is
306
+ nearly always desirable if the output can handle it.
307
+ * Introduce new CLI flag to force color on (`--force-color`), even
308
+ if the output is not a TTY. `--no-color` continues to work as well.
309
+ * Introduce `config.color_mode` for configuring the color from Ruby.
310
+ `:automatic` is the default and will produce color if the output is
311
+ a TTY. `:on` forces it on and `:off` forces it off.
312
+
313
+ ### 3.5.4 / 2016-09-30
314
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.5.3...v3.5.4)
315
+
316
+ Bug Fixes:
317
+
318
+ * Remove accumulated `ExampleGroup` constants when reseting RSpec,
319
+ preventing a memory leak. (TravisSpangle, #2328)
320
+
321
+ ### 3.5.3 / 2016-09-02
322
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.5.2...v3.5.3)
323
+
324
+ Bug Fixes:
325
+
326
+ * When applying shared group metadata to a host group, overwrite
327
+ conflicting keys if the value in the host group was inherited from
328
+ a parent group instead of being specified at that level.
329
+ (Myron Marston, #2307)
330
+ * Handle errors in `:suite` hooks and provide the same nicely formatted
331
+ output as errors that happen in examples. (Myron Marston, #2316)
332
+ * Set the exit status to non-zero when an error occurs in an
333
+ `after(:context)` hook. (Myron Marston, #2320)
334
+
335
+ ### 3.5.2 / 2016-07-28
336
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.5.1...v3.5.2)
337
+
338
+ Bug Fixes:
339
+
340
+ * Wait to report `example_finished` until the example's `execution_result`
341
+ has been completely filled in. (Myron Marston, #2291)
342
+ * Make sure example block is still available when using `duplicate_with`
343
+ to clone examples. (bootstraponline, #2298)
344
+ * Don't include the default `--pattern` in the Rake task when
345
+ `rspec_opts` specifies its own. (Jon Rowe, #2305)
346
+
347
+ ### 3.5.1 / 2016-07-06
348
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.5.0...v3.5.1)
349
+
350
+ Bug Fixes:
351
+
352
+ * Ensure that config hooks that are added to existing example groups are
353
+ added only once. (Eugene Kenny, #2280)
354
+
355
+ ### 3.5.0 / 2016-07-01
356
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.5.0.beta4...v3.5.0)
357
+
358
+ Enhancements:
359
+
360
+ * Include any `SPEC_OPTS` in reproduction command printed at the end of
361
+ a bisect run. (Simon Coffey, #2274)
362
+
363
+ Bug Fixes:
364
+
365
+ * Handle `--bisect` in `SPEC_OPTS` environment variable correctly so as
366
+ to avoid infinite recursion. (Simon Coffey, #2271)
367
+
368
+ ### 3.5.0.beta4 / 2016-06-05
369
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.5.0.beta3...v3.5.0.beta4)
370
+
371
+ Enhancements:
372
+
373
+ * Filter out bundler stackframes from backtraces by default, since
374
+ Bundler 1.12 now includes its own frames in stack traces produced
375
+ by using `bundle exec`. (Myron Marston, #2240)
376
+ * HTML Formatter uses exception presenter to get failure message
377
+ for consistency with other formatters. (@mrageh, #2222)
378
+ * Load spec files in the order of the directories or files passed
379
+ at the command line, making it easy to make some specs run before
380
+ others in a one-off manner. For example, `rspec spec/unit
381
+ spec/acceptance --order defined` will run unit specs before acceptance
382
+ specs. (Myron Marston, #2253)
383
+ * Add new `config.include_context` API for configuring global or
384
+ filtered inclusion of shared contexts in example groups.
385
+ (Myron Marston, #2256)
386
+ * Add new `config.shared_context_metadata_behavior = :apply_to_host_groups`
387
+ option, which causes shared context metadata to be inherited by the
388
+ metadata hash of all host groups and examples instead of configuring
389
+ implicit auto-inclusion based on the passed metadata. (Myron Marston, #2256)
390
+
391
+ Bug Fixes:
392
+
393
+ * Fix `--bisect` so it works on large spec suites that were previously triggering
394
+ "Argument list too long errors" due to all the spec locations being passed as
395
+ CLI args. (Matt Jones, #2223).
396
+ * Fix deprecated `:example_group`-based filtering so that it properly
397
+ applies to matching example groups. (Myron Marston, #2234)
398
+ * Fix `NoMethodError` caused by Java backtraces on JRuby. (Michele Piccirillo, #2244)
399
+
400
+ ### 3.5.0.beta3 / 2016-04-02
401
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.5.0.beta2...v3.5.0.beta3)
402
+
403
+ Enhancements:
404
+
405
+ * Add new `config.filter_run_when_matching` API, intended to replace
406
+ the combination of `config.filter_run` and
407
+ `config.run_all_when_everything_filtered` (Myron Marston, #2206)
408
+
409
+ Bug Fixes:
410
+
411
+ * Use the encoded string logic for source extraction. (Jon Rowe, #2183)
412
+ * Fix rounding issue in duration formatting helper. (Fabersky, Jon Rowe, #2208)
413
+ * Fix failure snippet extraction so that `def-end` snippets
414
+ ending with `end`-only line can be extracted properly.
415
+ (Yuji Nakayama, #2215)
416
+
417
+ ### 3.5.0.beta2 / 2016-03-10
418
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.5.0.beta1...v3.5.0.beta2)
419
+
420
+ Enhancements:
421
+
422
+ * Remove unneeded `:execution_result` example group metadata, saving a
423
+ bit of memory. (Myron Marston, #2172)
424
+ * Apply hooks registered with `config` to previously defined groups.
425
+ (Myron Marston, #2189)
426
+ * `RSpec::Core::Configuration#reporter` is now public API under SemVer.
427
+ (Jon Rowe, #2193)
428
+ * Add new `config.when_first_matching_example_defined` hook. (Myron
429
+ Marston, #2175)
430
+
431
+ ### 3.5.0.beta1 / 2016-02-06
432
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.4.4...v3.5.0.beta1)
433
+
434
+ Enhancements:
435
+
436
+ * Add `RSpec::Core::ExampleGroup.currently_executing_a_context_hook?`,
437
+ primarily for use by rspec-rails. (Sam Phippen, #2131)
438
+
439
+ Bug Fixes:
440
+
441
+ * Ensure `MultipleExceptionError` does not contain a recursive reference
442
+ to itself. (Sam Phippen, #2133)
443
+
444
+ ### 3.4.4 / 2016-03-09
445
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.4.3...v3.4.4)
446
+
447
+ Bug Fixes:
448
+
449
+ * Fix `RSpec::Core::RakeTask` so that it works with Rake 11.
450
+ (Travis Grathwell, #2197)
451
+
452
+ ### 3.4.3 / 2016-02-19
453
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.4.2...v3.4.3)
454
+
455
+ Bug Fixes:
456
+
457
+ * Prevent a `TypeError` from occurring when running via the rake task when
458
+ Ruby crashes. (Patrik Wenger, #2161)
459
+ * Only consider example and group declaration lines from a specific file
460
+ when applying line number filtering, instead of considering all
461
+ declaration lines from all spec files. (Myron Marston, #2170)
462
+ * Fix failure snippet extraction so that snippets that contain `do-end` style
463
+ block and end with `end`-only line can be extracted properly.
464
+ (Yuji Nakayama, #2173)
465
+ * Prevent infinite recursion when an exception is caused by itself.
466
+ (Jon Rowe, #2128)
467
+
468
+ ### 3.4.2 / 2016-01-26
469
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.4.1...v3.4.2)
470
+
471
+ Bug Fixes:
472
+
473
+ * Fix `rspec --profile` when an example calls `abort` or `exit`.
474
+ (Bradley Schaefer, #2144)
475
+ * Fix `--drb` so that when no DRb server is running, it prevents
476
+ the DRb connection error from being listed as the cause of all
477
+ expectation failures. (Myron Marston, #2156)
478
+ * Fix syntax highlighter so that it works when the `coderay` gem is
479
+ installed as a rubygem but not already available on your load path
480
+ (as happens when you use bundler). (Myron Marston, #2159)
481
+
482
+ ### 3.4.1 / 2015-11-18
483
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.4.0...v3.4.1)
484
+
485
+ Bug Fixes:
486
+
487
+ * Fix backtrace formatter to handle backtraces that are `nil`.
488
+ (Myron Marston, #2118)
489
+
490
+ ### 3.4.0 / 2015-11-11
491
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.3.2...v3.4.0)
492
+
493
+ Enhancements:
494
+
495
+ * Combine multiple `--pattern` arguments making them equivalent to
496
+ `--pattern=1,2,...,n`. (Jon Rowe, #2002)
497
+ * Improve `inspect` and `to_s` output for `RSpec::Core::Example`
498
+ objects, replacing Ruby's excessively verbose output. (Gavin Miller, #1922)
499
+ * Add `silence_filter_announcements` configuration option.
500
+ (David Raffensperger, #2007)
501
+ * Add optional `example_finished` notification to the reporter protocol for
502
+ when you don't care about the example outcome. (Jon Rowe, #2013)
503
+ * Switch `--bisect` to a recursion-based bisection algorithm rather than
504
+ a permutation-based one. This better handles cases where an example
505
+ depends upon multiple other examples instead of just one and minimizes
506
+ the number of runs necessary to determine that an example set cannot be
507
+ minimized further. (Simon Coffey, #1997)
508
+ * Allow simple filters (e.g. `:symbol` key only) to be triggered by truthey
509
+ values. (Tim Mertens, #2035)
510
+ * Remove unneeded warning about need for `ansicon` on Windows when using
511
+ RSpec's `--color` option. (Ashley Engelund, #2038)
512
+ * Add option to configure RSpec to raise errors when issuing warnings.
513
+ (Jon Rowe, #2052)
514
+ * Append the root `cause` of a failure or error to the printed failure
515
+ output when a `cause` is available. (Adam Magan)
516
+ * Stop rescuing `NoMemoryError`, `SignalExcepetion`, `Interrupt` and
517
+ `SystemExit`. It is dangerous to interfere with these. (Myron Marston, #2063)
518
+ * Add `config.project_source_dirs` setting which RSpec uses to determine
519
+ if a backtrace line comes from your project source or from some
520
+ external library. It defaults to `spec`, `lib` and `app` but can be
521
+ configured differently. (Myron Marston, #2088)
522
+ * Improve failure line detection so that it looks for the failure line
523
+ in any project source directory instead of just in the spec file.
524
+ In addition, if no backtrace lines can be found from a project source
525
+ file, we fall back to displaying the source of the first backtrace
526
+ line. This should virtually eliminate the "Unable to find matching
527
+ line from backtrace" messages. (Myron Marston, #2088)
528
+ * Add support for `:extra_failure_lines` example metadata that will
529
+ be appended to the failure output. (bootstraponline, #2092).
530
+ * Add `RSpec::Core::Example#duplicate_with` to produce new examples
531
+ with cloned metadata. (bootstraponline, #2098)
532
+ * Add `RSpec::Core::Configuration#on_example_group_definition` to register
533
+ hooks to be invoked when example groups are created. (bootstraponline, #2094)
534
+ * Add `add_example` and `remove_example` to `RSpec::Core::ExampleGroup` to
535
+ allow manipulating an example groups examples. (bootstraponline, #2095)
536
+ * Display multiline failure source lines in failure output when Ripper is
537
+ available (MRI >= 1.9.2, and JRuby >= 1.7.5 && < 9.0.0.0.rc1).
538
+ (Yuji Nakayama, #2083)
539
+ * Add `max_displayed_failure_line_count` configuration option
540
+ (defaults to 10). (Yuji Nakayama, #2083)
541
+ * Enhance `fail_fast` option so it can take a number (e.g. `--fail-fast=3`)
542
+ to force the run to abort after the specified number of failures.
543
+ (Jack Scotti, #2065)
544
+ * Syntax highlight the failure snippets in text formatters when `color`
545
+ is enabled and the `coderay` gem is installed on a POSIX system.
546
+ (Myron Marston, #2109)
547
+
548
+ Bug Fixes:
549
+
550
+ * Lock `example_status_persistence_file` when reading from and writing
551
+ to it to prevent race conditions when multiple processes try to use
552
+ it. (Ben Woosley, #2029)
553
+ * Fix regression in 3.3 that caused spec file names with square brackets in
554
+ them (such as `1[]_spec.rb`) to not be loaded properly. (Myron Marston, #2041)
555
+ * Fix output encoding issue caused by ASCII literal on 1.9.3 (Jon Rowe, #2072)
556
+ * Fix requires in `rspec/core/rake_task.rb` to avoid double requires
557
+ seen by some users. (Myron Marston, #2101)
558
+
559
+ ### 3.3.2 / 2015-07-15
560
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.3.1...v3.3.2)
561
+
562
+ Bug Fixes:
563
+
564
+ * Fix formatters to handle exceptions for which `backtrace` returns `nil`.
565
+ (Myron Marston, #2023)
566
+ * Fix duplicate formatter detection so that it allows subclasses of formatters
567
+ to be added. (Sebastián Tello, #2019)
568
+
569
+ ### 3.3.1 / 2015-06-18
570
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.3.0...v3.3.1)
571
+
572
+ Bug Fixes:
573
+
574
+ * Correctly run `before(:suite)` (and friends) in the context of an example
575
+ group instance, thus making the expected RSpec environment available.
576
+ (Jon Rowe, #1986)
577
+
578
+ ### 3.3.0 / 2015-06-12
579
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.2.3...v3.3.0)
580
+
581
+ Enhancements:
582
+
583
+ * Expose the reporter used to run examples via `RSpec::Core::Example#reporter`.
584
+ (Jon Rowe, #1866)
585
+ * Make `RSpec::Core::Reporter#message` a public supported API. (Jon Rowe, #1866)
586
+ * Allow custom formatter events to be published via
587
+ `RSpec::Core::Reporter#publish(event_name, hash_of_attributes)`. (Jon Rowe, #1869)
588
+ * Remove dependency on the standard library `Set` and replace with `RSpec::Core::Set`.
589
+ (Jon Rowe, #1870)
590
+ * Assign a unique id to each example and group so that they can be
591
+ uniquely identified, even for shared examples (and similar situations)
592
+ where the location isn't unique. (Myron Marston, #1884)
593
+ * Use the example id in the rerun command printed for failed examples
594
+ when the location is not unique. (Myron Marston, #1884)
595
+ * Add `config.example_status_persistence_file_path` option, which is
596
+ used to persist the last run status of each example. (Myron Marston, #1888)
597
+ * Add `:last_run_status` metadata to each example, which indicates what
598
+ happened the last time an example ran. (Myron Marston, #1888)
599
+ * Add `--only-failures` CLI option which filters to only the examples
600
+ that failed the last time they ran. (Myron Marston, #1888)
601
+ * Add `--next-failure` CLI option which allows you to repeatedly focus
602
+ on just one of the currently failing examples, then move on to the
603
+ next failure, etc. (Myron Marston, #1888)
604
+ * Make `--order random` ordering stable, so that when you rerun a
605
+ subset with a given seed, the examples will be order consistently
606
+ relative to each other. (Myron Marston, #1908)
607
+ * Set example group constant earlier so errors when evaluating the context
608
+ include the example group name (Myron Marson, #1911)
609
+ * Make `let` and `subject` threadsafe. (Josh Cheek, #1858)
610
+ * Add version information into the JSON formatter. (Mark Swinson, #1883)
611
+ * Add `--bisect` CLI option, which will repeatedly run your suite in
612
+ order to isolate the failures to the smallest reproducible case.
613
+ (Myron Marston, #1917)
614
+ * For `config.include`, `config.extend` and `config.prepend`, apply the
615
+ module to previously defined matching example groups. (Eugene Kenny, #1935)
616
+ * When invalid options are parsed, notify users where they came from
617
+ (e.g. `.rspec` or `~/.rspec` or `ENV['SPEC_OPTS']`) so they can
618
+ easily find the source of the problem. (Myron Marston, #1940)
619
+ * Add pending message contents to the json formatter output. (Jon Rowe, #1949)
620
+ * Add shared group backtrace to the output displayed by the built-in
621
+ formatters for pending examples that have been fixed. (Myron Marston, #1946)
622
+ * Add support for `:aggregate_failures` metadata. Tag an example or
623
+ group with this metadata and it'll use rspec-expectations'
624
+ `aggregate_failures` feature to allow multiple failures in an example
625
+ and list them all, rather than aborting on the first failure. (Myron
626
+ Marston, #1946)
627
+ * When no formatter implements #message add a fallback to prevent those
628
+ messages being lost. (Jon Rowe, #1980)
629
+ * Profiling examples now takes into account time spent in `before(:context)`
630
+ hooks. (Denis Laliberté, Jon Rowe, #1971)
631
+ * Improve failure output when an example has multiple exceptions, such
632
+ as one from an `it` block and one from an `after` block. (Myron Marston, #1985)
633
+
634
+ Bug Fixes:
635
+
636
+ * Handle invalid UTF-8 strings within exception methods. (Benjamin Fleischer, #1760)
637
+ * Fix Rake Task quoting of file names with quotes to work properly on
638
+ Windows. (Myron Marston, #1887)
639
+ * Fix `RSpec::Core::RakeTask#failure_message` so that it gets printed
640
+ when the task failed. (Myron Marston, #1905)
641
+ * Make `let` work properly when defined in a shared context that is applied
642
+ to an individual example via metadata. (Myron Marston, #1912)
643
+ * Ensure `rspec/autorun` respects configuration defaults. (Jon Rowe, #1933)
644
+ * Prevent modules overriding example group defined methods when included,
645
+ prepended or extended by config defined after an example group. (Eugene Kenny, #1935)
646
+ * Fix regression which caused shared examples to be mistakenly run when specs
647
+ where filtered to a particular location. (Ben Axnick, #1963)
648
+ * Fix time formatting logic so that it displays 70 seconds as "1 minute,
649
+ 10 seconds" rather than "1 minute, 1 second". (Paul Brennan, #1984)
650
+ * Fix regression where the formatter loader would allow duplicate formatters.
651
+ (Jon Rowe, #1990)
652
+
653
+ ### 3.2.3 / 2015-04-06
654
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.2.2...v3.2.3)
655
+
656
+ Bug Fixes:
657
+
658
+ * Fix how the DSL methods are defined so that RSpec is compatible with
659
+ gems that define methods of the same name on `Kernel` (such as
660
+ the `its-it` gem). (Alex Kwiatkowski, Ryan Ong, #1907)
661
+ * Fix `before(:context) { skip }` so that it does not wrongly cause the
662
+ spec suite to exit with a non-zero status when no examples failed.
663
+ (Myron Marston, #1926)
664
+
665
+ ### 3.2.2 / 2015-03-11
666
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.2.1...v3.2.2)
667
+
668
+ Bug Fixes:
669
+
670
+ * Fix regression in 3.2.0 that allowed tag-filtered examples to
671
+ run even if there was a location filter applied to the spec
672
+ file that was intended to limit the file to other examples.
673
+ (#1894, Myron Marston)
674
+
675
+ ### 3.2.1 / 2015-02-23
676
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.2.0...v3.2.1)
677
+
678
+ Bug Fixes:
679
+
680
+ * Notify start-of-run seed _before_ `start` notification rather than
681
+ _after_ so that formatters like Fuubar work properly. (Samuel Esposito, #1882)
682
+
683
+ ### 3.2.0 / 2015-02-03
684
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.1.7...v3.2.0)
685
+
686
+ Enhancements:
687
+
688
+ * Improve the `inspect` output of example groups. (Mike Dalton, #1687)
689
+ * When rake task fails, only output the command if `verbose` flag is
690
+ set. (Ben Snape, #1704)
691
+ * Add `RSpec.clear_examples` as a clear way to reset examples in between
692
+ spec runs, whilst retaining user configuration. (Alexey Fedorov, #1706)
693
+ * Reduce string allocations when defining and running examples by 70%
694
+ and 50% respectively. (Myron Marston, #1738)
695
+ * Removed dependency on pathname from stdlib. (Sam Phippen, #1703)
696
+ * Improve the message presented when a user hits Ctrl-C.
697
+ (Alex Chaffee #1717, #1742)
698
+ * Improve shared example group inclusion backtrace displayed
699
+ in failed example output so that it works for all methods
700
+ of including shared example groups and shows all inclusion
701
+ locations. (Myron Marston, #1763)
702
+ * Issue seed notification at start (as well as the end) of the reporter
703
+ run. (Arlandis Word, #1761)
704
+ * Improve the documentation of around hooks. (Jim Kingdon, #1772)
705
+ * Support prepending of modules into example groups from config and allow
706
+ filtering based on metadata. (Arlandis Word, #1806)
707
+ * Emit warnings when `:suite` hooks are registered on an example group
708
+ (where it has always been ignored) or are registered with metadata
709
+ (which has always been ignored). (Myron Marston, #1805)
710
+ * Provide a friendly error message when users call RSpec example group
711
+ APIs (e.g. `context`, `describe`, `it`, `let`, `before`, etc) from
712
+ within an example where those APIs are unavailable. (Myron Marston, #1819)
713
+ * Provide a friendly error message when users call RSpec example
714
+ APIs (e.g. `expect`, `double`, `stub_const`, etc) from
715
+ within an example group where those APIs are unavailable.
716
+ (Myron Marston, #1819)
717
+ * Add new `RSpec::Core::Sandbox.sandboxed { }` API that facilitates
718
+ testing RSpec with RSpec, allowing you to define example groups
719
+ and example from within an example without affecting the global
720
+ `RSpec.world` state. (Tyler Ball, 1808)
721
+ * Apply line-number filters only to the files they are scoped to,
722
+ allowing you to mix filtered and unfiltered files. (Myron Marston, #1839)
723
+ * When dumping pending examples, include the failure details so that you
724
+ don't have to un-pend the example to see it. (Myron Marston, #1844)
725
+ * Make `-I` option support multiple values when separated by
726
+ `File::PATH_SEPARATOR`, such as `rspec -I foo:bar`. This matches
727
+ the behavior of Ruby's `-I` option. (Fumiaki Matsushima, #1855).
728
+ * Treat each example as having a singleton example group for the
729
+ purposes of applying metadata-based features that normally apply
730
+ to example groups to individually tagged examples. For example,
731
+ `RSpec.shared_context "Uses redis", :uses_redis` will now apply
732
+ to individual examples tagged with `:uses_redis`, as will
733
+ `config.include RedisHelpers, :uses_redis`, and
734
+ `config.before(:context, :uses_redis) { }`, etc. (Myron Marston, #1749)
735
+
736
+ Bug Fixes:
737
+
738
+ * When assigning generated example descriptions, surface errors
739
+ raised by `matcher.description` in the example description.
740
+ (Myron Marston, #1771)
741
+ * Don't consider expectations from `after` hooks when generating
742
+ example descriptions. (Myron Marston, #1771)
743
+ * Don't apply metadata-filtered config hooks to examples in groups
744
+ with matching metadata when those examples override the parent
745
+ metadata value to not match. (Myron Marston, #1796)
746
+ * Fix `config.expect_with :minitest` so that `skip` uses RSpec's
747
+ implementation rather than Minitest's. (Jonathan Rochkind, #1822)
748
+ * Fix `NameError` caused when duplicate example group aliases are defined and
749
+ the DSL is not globally exposed. (Aaron Kromer, #1825)
750
+ * When a shared example defined in an external file fails, use the host
751
+ example group (from a loaded spec file) for the re-run command to
752
+ ensure the command will actually work. (Myron Marston, #1835)
753
+ * Fix location filtering to work properly for examples defined in
754
+ a nested example group within a shared example group defined in
755
+ an external file. (Bradley Schaefer, Xavier Shay, Myron Marston, #1837)
756
+ * When a pending example fails (as expected) due to a mock expectation,
757
+ set `RSpec::Core::Example::ExecutionResult#pending_exception` --
758
+ previously it was not being set but should have been. (Myron Marston, #1844)
759
+ * Fix rake task to work when `rspec-core` is installed in a directory
760
+ containing a space. (Guido Günther, #1845)
761
+ * Fix regression in 3.1 that caused `describe Regexp` to raise errors.
762
+ (Durran Jordan, #1853)
763
+ * Fix regression in 3.x that caused the profile information to be printed
764
+ after the summary. (Max Lincoln, #1857)
765
+ * Apply `--seed` before loading `--require` files so that required files
766
+ can access the provided seed. (Myron Marston, #1745)
767
+ * Handle `RSpec::Core::Formatters::DeprecationFormatter::FileStream` being
768
+ reopened with an IO stream, which sometimes happens with spring.
769
+ (Kevin Mook, #1757)
770
+
771
+ ### 3.1.7 / 2014-10-11
772
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.1.6...v3.1.7)
773
+
774
+ Bug Fixes:
775
+
776
+ * Fix `Metadata.relative_path` so that for a current directory of
777
+ `/foo/bar`, `/foo/bar_1` is not wrongly converted to `._1`.
778
+ (Akos Vandra, #1730)
779
+ * Prevent constant lookup mistakenly finding `RSpec::ExampleGroups` generated
780
+ constants on 1.9.2 by appending a trailing `_` to the generated names.
781
+ (Jon Rowe, #1737)
782
+ * Fix bug in `:pending` metadata. If it got set in any way besides passing
783
+ it as part of the metadata literal passed to `it` (such as by using
784
+ `define_derived_metadata`), it did not have the desired effect,
785
+ instead marking the example as `:passed`. (Myron Marston, #1739)
786
+
787
+ ### 3.1.6 / 2014-10-08
788
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.1.5...v3.1.6)
789
+
790
+ Bug Fixes:
791
+
792
+ * Fix regression in rake task pattern handling, that prevented patterns
793
+ that were relative from the current directory rather than from `spec`
794
+ from working properly. (Myron Marston, #1734)
795
+ * Prevent rake task from generating duplicate load path entries.
796
+ (Myron Marston, #1735)
797
+
798
+ ### 3.1.5 / 2014-09-29
799
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.1.4...v3.1.5)
800
+
801
+ Bug Fixes:
802
+
803
+ * Fix issue with the rake task incorrectly escaping strings on Windows.
804
+ (Jon Rowe #1718)
805
+ * Support absolute path patterns. While this wasn't officially supported
806
+ previously, setting `rake_task.pattern` to an absolute path pattern in
807
+ RSpec 3.0 and before worked since it delegated to `FileList` internally
808
+ (but now just forwards the pattern on to the `rspec` command).
809
+ (Myron Marston, #1726)
810
+
811
+ ### 3.1.4 / 2014-09-18
812
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.1.3...v3.1.4)
813
+
814
+ Bug Fixes:
815
+
816
+ * Fix implicit `subject` when using `describe false` or `describe nil`
817
+ so that it returns the provided primitive rather than the string
818
+ representation. (Myron Marston, #1710)
819
+ * Fix backtrace filtering to allow code in subdirectories of your
820
+ current working directory (such as vendor/bundle/...) to be filtered
821
+ from backtraces. (Myron Marston, #1708)
822
+
823
+ ### 3.1.3 / 2014-09-15
824
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.1.2...v3.1.3)
825
+
826
+ Bug Fixes:
827
+
828
+ * Fix yet another regression in rake task pattern handling, to allow
829
+ `task.pattern = FileList["..."]` to work. That was never intended
830
+ to be supported but accidentally worked in 3.0 and earlier.
831
+ (Myron Marston, #1701)
832
+ * Fix pattern handling so that files are normalized to absolute paths
833
+ before subtracting the `--exclude-pattern` matched files from the
834
+ `--pattern` matched files so that it still works even if the patterns
835
+ are in slightly different forms (e.g. one starting with `./`).
836
+ (Christian Nelson, #1698)
837
+
838
+ ### 3.1.2 / 2014-09-08
839
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.1.1...v3.1.2)
840
+
841
+ Bug Fixes:
842
+
843
+ * Fix another regression in rake task pattern handling, so that patterns
844
+ that start with `./` still work. (Christian Nelson, #1696)
845
+
846
+ ### 3.1.1 / 2014-09-05
847
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.1.0...v3.1.1)
848
+
849
+ Bug Fixes:
850
+
851
+ * Fix a regression in rake task pattern handling, so that `rake_task.pattern = array`
852
+ works again. While we never intended to support array values (or even knew that worked!),
853
+ the implementation from 3.0 and earlier used `FileList` internally, which allows arrays.
854
+ The fix restores the old behavior. (Myron Marston, #1694)
855
+
856
+ ### 3.1.0 / 2014-09-04
857
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.0.4...v3.1.0)
858
+
859
+ Enhancements:
860
+
861
+ * Update files generated by `rspec --init` so that warnings are enabled
862
+ in commented out section of `spec_helper` rather than `.rspec` so users
863
+ have to consciously opt-in to the setting. (Andrew Hooker, #1572)
864
+ * Update `spec_helper` generated by `rspec --init` so that it sets the new
865
+ rspec-expectations `include_chain_clauses_in_custom_matcher_descriptions`
866
+ config option (which will be on by default in RSpec 4) and also sets the
867
+ rspec-mocks `verify_partial_doubles` option (which will also default
868
+ to on in RSpec 4). (Myron Marston, #1647)
869
+ * Provide an `inspect` output for example procsy objects (used in around
870
+ hooks) that doesn't make them look like procs. (Jon Rowe, #1620)
871
+ * Remove a few unneeded `require` statements from
872
+ `rspec/core/rake_task.rb`, making it even more lighterweight.
873
+ (Myron Marston, #1640)
874
+ * Allow rspec-core to be used when neither rspec-mocks or
875
+ rspec-expectations are installed, without requiring any
876
+ user configuration. (Sam Phippen, Myron Marston, #1615)
877
+ * Don't filter out gems from backtraces by default. (The RSpec
878
+ gems will still be filtered). User feedback has indicated
879
+ that including gems in default backtraces will be useful.
880
+ (Myron Marston, #1641)
881
+ * Add new `config.filter_gems_from_backtrace "rack", "rake"` API
882
+ to easily filter the named gems from backtraces. (Myron Marston, #1682)
883
+ * Fix default backtrace filters so that the RSpec binary is
884
+ excluded when installing RSpec as a bundler `:git` dependency.
885
+ (Myron Marston, #1648)
886
+ * Simplify command generated by the rake task so that it no longer
887
+ includes unnecessary `-S`. (Myron Marston, #1559)
888
+ * Add `--exclude-pattern` CLI option, `config.exclude_pattern =` config
889
+ option and `task.exclude_pattern =` rake task config option. Matching
890
+ files will be excluded. (John Gesimondo, Myron Marston, #1651, #1671)
891
+ * When an around hook fails to execute the example, mark it as
892
+ pending (rather than passing) so the user is made aware of the
893
+ fact that the example did not actually run. (Myron Marston, #1660)
894
+ * Remove dependency on `FileUtils` from the standard library so that users do
895
+ not get false positives where their code relies on it but they are not
896
+ requiring it. (Sam Phippen, #1565)
897
+
898
+ Bug Fixes:
899
+
900
+ * Fix rake task `t.pattern =` option so that it does not run all specs
901
+ when it matches no files, by passing along a `--pattern` option to
902
+ the `rspec` command, rather than resolving the file list and passing
903
+ along the files individually. (Evgeny Zislis, #1653)
904
+ * Fix rake task default pattern so that it follows symlinks properly.
905
+ (Myron Marston, #1672)
906
+ * Fix default pattern used with `rspec` command so that it follows
907
+ symlinks properly. (Myron Marston, #1672)
908
+ * Change how we assign constant names to example group classes so that
909
+ it avoids a problem with `describe "Core"`. (Daniela Wellisz, #1679)
910
+ * Handle rendering exceptions that have a different encoding than that
911
+ of their original source file. (Jon Rowe, #1681)
912
+ * Allow access to message_lines without colour for failed examples even
913
+ when they're part of a shared example group. (tomykaira, #1689)
914
+
915
+ ### 3.0.4 / 2014-08-14
916
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.0.3...v3.0.4)
917
+
918
+ Bug Fixes:
919
+
920
+ * Fix processing order of CLI options so that if `config.files_to_run`
921
+ is accessed from a file loaded by `--require`, `--pattern` is still
922
+ applied. (Myron Marston, #1652)
923
+ * Fix `config.pattern=` so that it still takes affect even if
924
+ `config.files_to_run` has already been accessed. (Myron Marston, #1652)
925
+
926
+ ### 3.0.3 / 2014-07-21
927
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.0.2...v3.0.3)
928
+
929
+ Bug Fixes:
930
+
931
+ * Properly convert both parts of a description into strings before
932
+ concatenation. (@nicklink483, #1636)
933
+ * Exclude the working directory when figuring out folders to ignore.
934
+ (Jon Rowe, Myron Marston, #1616)
935
+ * Allow `::RSpec::Core::Notifications::FailedExampleNotification#message_lines`
936
+ to be accessed without a colouriser. (@tomykaira, #1637)
937
+
938
+ ### 3.0.2 / 2014-06-19
939
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.0.1...v3.0.2)
940
+
941
+ Bug Fixes:
942
+
943
+ * Fix regression in CLI option handling that prevented `--tag slow`
944
+ passed at the command line from overriding `--tag ~slow` in `.rspec`.
945
+ (Colin Jones, #1602)
946
+ * Fix metadata `:example_group` deprecation warning so that it gets
947
+ issued at the call site of the configuration that specified it as
948
+ a filter rather than later when an example group is defined.
949
+ (Myron Marston, #1562)
950
+ * Make the line that is printed when a shared example group fails indicating
951
+ where the concrete example group is white, separating it from the stack trace
952
+ that is produced for the failure. (Sam Phippen, Jon Rowe, #1606)
953
+
954
+ ### 3.0.1 / 2014-06-12
955
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.0.0...v3.0.1)
956
+
957
+ Bug Fixes:
958
+
959
+ * Fix a couple ruby warnings caused by rspec-core when loaded.
960
+ (Prem Sichanugrist, #1584)
961
+ * Example groups named `Config` will no longer cause a Ruby warning to be
962
+ issued. (Jimmy Cuadra, #1580)
963
+
964
+ ### 3.0.0 / 2014-06-01
965
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.0.0.rc1...v3.0.0)
966
+
967
+ Bug Fixes:
968
+
969
+ * Fix `BaseTextFormatter` so that it does not re-close a closed output
970
+ stream. (Myron Marston)
971
+ * Fix regression in metadata that caused the metadata hash of a top-level
972
+ example group to have a `:parent_example_group` key even though it has
973
+ no parent example group. (Myron Marston)
974
+
975
+ Enhancements:
976
+
977
+ * Alter the default `spec_helper.rb` to no longer recommend
978
+ `config.full_backtrace = true` see #1536 for discussion. (Jon Rowe)
979
+
980
+ ### 3.0.0.rc1 / 2014-05-18
981
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.0.0.beta2...v3.0.0.rc1)
982
+
983
+ Breaking Changes for 3.0.0:
984
+
985
+ * Change `described_class` so that in a nested group like `describe
986
+ MyClass`, it returns `MyClass` rather than the outer group's described
987
+ class. (Myron Marston)
988
+ * Refactor filter manager so that it no longer subclasses Hash and has a
989
+ tighter, more domain-specific interface. (Sergey Pchelincev)
990
+ * Remove legacy colours definitions from `BaseTextFormatter`. (Jon Rowe)
991
+ * Remove console color definitions from `BaseTextFormatter`. (Jon Rowe)
992
+ * Restructure example group metadata so that the computed keys are
993
+ exposed directly off of the metadata hash rather than being on
994
+ a nested `:example_group` subhash. In addition, the parent example
995
+ group metadata is now available as `[:parent_example_group]` rather
996
+ than `[:example_group][:example_group]`. Deprecated access via the
997
+ old key structure is still provided. (Myron Marston)
998
+ * Remove `:describes` metadata key. It duplicates `:described_class`
999
+ for no good reason. Deprecated access via `:describes` is still
1000
+ provided. (Myron Marston)
1001
+ * Rename `:example_group_block` metadata key to `:block`.
1002
+ (Myron Marston)
1003
+ * Remove deprecated `RSpec::Core::Example#options`. (Myron Marston)
1004
+ * Move `BaseTextFormatter#colorize_summary` to `SummaryNotification#colorize_with`
1005
+ (Jon Rowe).
1006
+ * `describe some_hash` treated `some_hash` as metadata in RSpec 2.x but
1007
+ will treat it as the described object in RSpec 3.0. Metadata must
1008
+ always come after the description args. (Myron Marston)
1009
+ * Remove deprecated `display_name` alias of `ExampleGroup.description`.
1010
+ (Myron Marston)
1011
+ * Remove deprecated `describes` alias of `ExampleGroup.described_class`.
1012
+ (Myron Marston)
1013
+ * Remove deprecated `RSpec::Core::ExampleGroup.alias_it_behaves_like_to`.
1014
+ Use `RSpec::Core::Configuration#alias_it_behaves_like_to` instead.
1015
+ (Myron Marston)
1016
+ * Remove deprecated `RSpec::Core::ExampleGroup.alias_example_to`.
1017
+ Use `RSpec::Core::Configuration#alias_example_to` instead.
1018
+ (Myron Marston)
1019
+ * Removed `focused` example alias and change example/group aliases
1020
+ `fit`, `focus`, `fcontext` and `fdescribe` to no longer include
1021
+ `:focused => true` metadata. They only contain `:focus => true`
1022
+ metadata now. This means that you will need to filter them with
1023
+ `filter_run :focus`, not `filter_run :focused`. (Myron Marston)
1024
+ * Remove `--line-number` filtering. It's semantically dubious since it's
1025
+ a global filter (potentially applied to multiple files) but there's no
1026
+ meaningful connection between the same line number in multiple files.
1027
+ Instead use the `rspec path/to/spec.rb:23:46` form, which is terser
1028
+ and makes more sense as it is scoped to a file. (Myron Marston)
1029
+ * Remove `--default_path` as an alias for `--default-path`. (Jon Rowe)
1030
+ * Remove deprecated `share_examples_for`. There's still
1031
+ `shared_examples` and `shared_examples_for`. (Myron Marston)
1032
+ * Rename `RSpec::Core::Configuration#warnings` to
1033
+ `RSpec::Core::Configuration#warnings?` since it's a boolean flag.
1034
+ (Myron Marston)
1035
+ * RSpec's global state is no longer reset after a spec run. This gives
1036
+ more flexibility to alternate runners to decide when and if they
1037
+ want the state reset. Alternate runners are now responsible for
1038
+ calling this (or doing a similar reset) if they are going to run
1039
+ the spec suite multiple times in the same process. (Sam Phippen)
1040
+ * Merge `RSpec::Core::CommandLine` (never formally declared public)
1041
+ into `RSpec::Core::Runner`. (Myron Marston)
1042
+ * Remove `color_enabled` as an alias of `color`. (Jon Rowe)
1043
+ * Remove `backtrace_cleaner` as an alias of `backtrace_formatter`. (Jon Rowe)
1044
+ * Remove `filename_pattern` as an alias of `pattern`. (Jon Rowe)
1045
+ * Extract support for legacy formatters to `rspec-legacy_formatters`. (Jon Rowe)
1046
+ * `RSpec::Configuration#formatters` now returns a dup to prevent mutation. (Jon Rowe)
1047
+ * Replace `stdlib` as an available expectation framework with `test_unit` and
1048
+ `minitest`. (Aaron Kromer)
1049
+ * Remove backtrace formatting helpers from `BaseTextFormatter`. (Jon Rowe)
1050
+ * Extract profiler support to `ProfileFormatter` and `ProfileNotification`.
1051
+ Formatters should implement `dump_profile` if they wish to respond to `--profile`.
1052
+ (Jon Rowe)
1053
+ * Extract remaining formatter state to reporter and notifications. Introduce
1054
+ `ExamplesNotification` to share information about examples that was previously
1055
+ held in `BaseFormatter`. (Jon Rowe)
1056
+
1057
+ Enhancements:
1058
+
1059
+ * Add `config.default_formatter` attribute, which can be used to set a
1060
+ formatter which will only be used if no other formatter is set
1061
+ (e.g. via `--formatter`). (Myron Marston)
1062
+ * Support legacy colour definitions in `LegacyFormatterAdaptor`. (Jon Rowe)
1063
+ * Migrate `execution_result` (exposed by metadata) from a hash to a
1064
+ first-class object with appropriate attributes. `status` is now
1065
+ stored and returned as a symbol rather than a string. It retains
1066
+ deprecated hash behavior for backwards compatibility. (Myron Marston)
1067
+ * Provide console code helper for formatters. (Jon Rowe)
1068
+ * Use raw ruby hashes for the metadata hashes rather than a subclass of
1069
+ a hash. Computed metadata entries are now computed in advance rather
1070
+ than being done lazily on first access. (Myron Marston)
1071
+ * Add `:block` metadata entry to the example metadata, bringing
1072
+ parity with `:block` in the example group metadata. (Myron Marston)
1073
+ * Add `fspecify` and `fexample` as aliases of `specify` and `example`
1074
+ with `:focus => true` metadata for parity with `fit`. (Myron Marston)
1075
+ * Add legacy support for `colorize_summary`. (Jon Rowe)
1076
+ * Restructure runner so it can be more easily customized in a subclass
1077
+ for an alternate runner. (Ben Hoskings)
1078
+ * Document `RSpec::Core::ConfigurationOptions` as an officially
1079
+ supported public API. (Myron Marston)
1080
+ * Add `--deprecation-out` CLI option which directs deprecation warnings
1081
+ to the named file. (Myron Marston)
1082
+ * Minitest 5 compatability for `expect_with :stdlib` (now available as
1083
+ `expect_with :minitest`). (Xavier Shay)
1084
+ * Reporter now notifies formatters of the load time of RSpec and your
1085
+ specs via `StartNotification` and `SummaryNotification`. (Jon Rowe)
1086
+ * Add `disable_monkey_patching!` config option that disables all monkey
1087
+ patching from whatever pieces of RSpec you use. (Alexey Fedorov)
1088
+ * Add `Pathname` support for setting all output streams. (Aaron Kromer)
1089
+ * Add `config.define_derived_metadata`, which can be used to apply
1090
+ additional metadata to all groups or examples that match a given
1091
+ filter. (Myron Marston)
1092
+ * Provide formatted and colorized backtraces via `FailedExampleNotification`
1093
+ and send `PendingExampleFixedNotifications` when the error is due to a
1094
+ passing spec you expect to fail. (Jon Rowe)
1095
+ * Add `dump_profile` to formatter API to allow formatters to implement
1096
+ support for `--profile`. (Jon Rowe)
1097
+ * Allow colourising text via `ConsoleCodes` with RSpec 'states'
1098
+ (e.g. `:success`, `:failure`) rather than direct colour codes. (Jon Rowe)
1099
+ * Expose `fully_formatted` methods off the formatter notification objects
1100
+ that make it easy for a custom formatter to produce formatted output
1101
+ like rspec-core's. (Myron Marston)
1102
+
1103
+ Bug Fixes:
1104
+
1105
+ * Fix `spec_helper.rb` file generated by `rspec --init` so that the
1106
+ recommended settings correctly use the documentation formatter
1107
+ when running one file. (Myron Marston)
1108
+ * Fix ordering problem where descriptions were generated after
1109
+ tearing down mocks, which resulted in unexpected exceptions.
1110
+ (Bradley Schaefer, Aaron Kromer, Andrey Savchenko)
1111
+ * Allow a symbol to be used as an implicit subject (e.g. `describe
1112
+ :foo`). (Myron Marston)
1113
+ * Prevent creating an isolated context (i.e. using `RSpec.describe`) when
1114
+ already inside a context. There is no reason to do this, and it could
1115
+ potentially cause unexpected bugs. (Xavier Shay)
1116
+ * Fix shared example group scoping so that when two shared example
1117
+ groups share the same name at different levels of nested contexts,
1118
+ the one in the nearest context is used. (Myron Marston)
1119
+ * Fix `--warnings` option so that it enables warnings immediately so
1120
+ that it applies to files loaded by `--require`. (Myron Marston)
1121
+ * Issue a warning when you set `config.deprecation_stream` too late for
1122
+ it to take effect because the reporter has already been setup. (Myron Marston)
1123
+ * Add the full `RSpec::Core::Example` interface to the argument yielded
1124
+ to `around` hooks. (Myron Marston)
1125
+ * Line number always takes precendence when running specs with filters.
1126
+ (Xavier Shay)
1127
+ * Ensure :if and :unless metadata filters are treated as a special case
1128
+ and are always in-effect. (Bradley Schaefer)
1129
+ * Ensure the currently running installation of RSpec is used when
1130
+ the rake task shells out to `rspec`, even if a newer version is also
1131
+ installed. (Postmodern)
1132
+ * Using a legacy formatter as default no longer causes an infinite loop.
1133
+ (Xavier Shay)
1134
+
1135
+ ### 3.0.0.beta2 / 2014-02-17
1136
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.0.0.beta1...v3.0.0.beta2)
1137
+
1138
+ Breaking Changes for 3.0.0:
1139
+
1140
+ * Make `mock_with` option more strict. Strings are no longer supported
1141
+ (e.g. `mock_with "mocha"`) -- use a symbol instead. Also, unrecognized
1142
+ values will now result in an error rather than falling back to the
1143
+ null mocking adapter. If you want to use the null mocking adapter,
1144
+ use `mock_with :nothing` (as has been documented for a long time).
1145
+ (Myron Marston)
1146
+ * Remove support for overriding RSpec's built-in `:if` and `:unless`
1147
+ filters. (Ashish Dixit)
1148
+ * Custom formatters are now required to call
1149
+ `RSpec::Core::Formatters.register(formatter_class, *notifications)`
1150
+ where `notifications` is the list of events the formatter wishes to
1151
+ be notified about. Notifications are handled by methods matching the
1152
+ names on formatters. This allows us to add or remove notifications
1153
+ without breaking existing formatters. (Jon Rowe)
1154
+ * Change arguments passed to formatters. Rather than passing multiple
1155
+ arguments (which limits are ability to add additional arguments as
1156
+ doing so would break existing formatters), we now pass a notification
1157
+ value object that exposes the same data via attributes. This will
1158
+ allow us to add new bits of data to a notification event without
1159
+ breaking existing formatters. (Jon Rowe)
1160
+ * Remove support for deprecated `:alias` option for
1161
+ `RSpec.configuration.add_setting`. (Myron Marston)
1162
+ * Remove support for deprecated `RSpec.configuration.requires = [...]`.
1163
+ (Myron Marston)
1164
+ * Remove support for deprecated `--formatter` CLI option. (Myron Marston)
1165
+ * Remove support for deprecated `--configure` CLI option. (Myron Marston)
1166
+ * Remove support for deprecated `RSpec::Core::RakeTask#spec_opts=`.
1167
+ (Myron Marston)
1168
+ * An example group level `pending` block or `:pending` metadata now executes
1169
+ the example and cause a failure if it passes, otherwise it will be pending if
1170
+ it fails. The old "never run" behaviour is still used for `xexample`, `xit`,
1171
+ and `xspecify`, or via a new `skip` method or `:skip` metadata option.
1172
+ (Xavier Shay)
1173
+ * After calling `pending` inside an example, the remainder of the example will
1174
+ now be run. If it passes a failure is raised, otherwise the example is marked
1175
+ pending. The old "never run" behaviour is provided a by a new `skip` method.
1176
+ (Xavier Shay)
1177
+ * Pending blocks inside an example have been removed as a feature with no
1178
+ direct replacement. Use `skip` or `pending` without a block. (Xavier Shay)
1179
+ * Pending statement is no longer allowed in `before(:all)` hooks. Use `skip`
1180
+ instead. (Xavier Shay)
1181
+ * Remove `show_failures_in_pending_blocks` configuration option. (Xavier Shay)
1182
+ * Remove support for specifying the documentation formatter using
1183
+ 's', 'n', 'spec' or 'nested'. (Jon Rowe)
1184
+
1185
+ Enhancements:
1186
+
1187
+ * Add example run time to JSON formatter output. (Karthik Kastury)
1188
+ * Add more suggested settings to the files generated by
1189
+ `rspec --init`. (Myron Marston)
1190
+ * Add `config.alias_example_group_to`, which can be used to define a
1191
+ new method that defines an example group with the provided metadata.
1192
+ (Michi Huber)
1193
+ * Add `xdescribe` and `xcontext` as shortcuts to skip an example group.
1194
+ (Myron Marston)
1195
+ * Add `fdescribe` and `fcontext` as shortcuts to focus an example group.
1196
+ (Myron Marston)
1197
+ * Don't autorun specs via `#at_exit` by default. `require 'rspec/autorun'`
1198
+ is only needed when running specs via `ruby`, as it always has been.
1199
+ Running specs via `rake` or `rspec` are both unaffected. (Ben Hoskings)
1200
+ * Add `expose_dsl_globally` config option, defaulting to true. When disabled
1201
+ it will remove the monkey patches rspec-core adds to `main` and `Module`
1202
+ (e.g. `describe`, `shared_examples_for`, etc). (Jon Rowe)
1203
+ * Expose RSpec DSL entry point methods (`describe`,
1204
+ `shared_examples_for`, etc) on the `RSpec` constant. Intended for use
1205
+ when `expose_dsl_globally` is set to `false`. (Jon Rowe)
1206
+ * For consistency, expose all example group aliases (including
1207
+ `context`) on the `RSpec` constant. If `expose_dsl_globally` is set to
1208
+ `true`, also expose them on `main` and `Module`. Historically, only `describe`
1209
+ was exposed. (Jon Rowe, Michi Huber)
1210
+ * Add hook scope `:example` as an alias for `:each`, and `:context` as an alias
1211
+ for `:all`. (John Feminella)
1212
+
1213
+ Bug Fixes:
1214
+
1215
+ * Fix failure (undefined method `path`) in end-of-run summary
1216
+ when `raise_errors_for_deprecations!` is configured. (Myron Marston)
1217
+ * Issue error when attempting to use `-i` or `--I` on command line,
1218
+ too close to `-I` to be considered short hand for `--init`. (Jon Rowe)
1219
+ * Prevent adding formatters to an output target if the same
1220
+ formatter has already been added to that output. (Alex Peattie)
1221
+ * Allow a matcher-generated example description to be used when
1222
+ the example is pending. (Myron Marston)
1223
+ * Ensure the configured `failure_exit_code` is used by the rake
1224
+ task when there is a failure. (Jon Rowe)
1225
+ * Restore behaviour whereby system exclusion filters take priority over working
1226
+ directory (was broken in beta1). (Jon Rowe)
1227
+ * Prevent RSpec mangling file names that have substrings containing `line_number`
1228
+ or `default_path`. (Matijs van Zuijlen)
1229
+ * Fix failure line detection so that it handles relative file paths
1230
+ (which can happen when running specs through `ruby` using `rspec/autorun`).
1231
+ (Myron Marston, #1829)
1232
+
1233
+ ### 3.0.0.beta1 / 2013-11-07
1234
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.99.1...v3.0.0.beta1)
1235
+
1236
+ Breaking Changes for 3.0.0:
1237
+
1238
+ * Remove explicit support for 1.8.6. (Jon Rowe)
1239
+ * Remove `RSpec::Core::ExampleGroup#example` and
1240
+ `RSpec::Core::ExampleGroup#running_example` methods. If you need
1241
+ access to the example (e.g. to get its metadata), use a block arg
1242
+ instead. (David Chelimsky)
1243
+ * Remove `TextMateFormatter`, it has been moved to `rspec-tmbundle`.
1244
+ (Aaron Kromer)
1245
+ * Remove RCov integration. (Jon Rowe)
1246
+ * Remove deprecated support for RSpec 1 constructs (Myron Marston):
1247
+ * The `Spec` and `Rspec` constants (rather than `RSpec`).
1248
+ * `Spec::Runner.configure` rather than `RSpec.configure`.
1249
+ * `Rake::SpecTask` rather than `RSpec::Core::RakeTask`.
1250
+ * Remove deprecated support for `share_as`. (Myron Marston)
1251
+ * Remove `--debug` option (and corresponding option on
1252
+ `RSpec::Core::Configuration`). Instead, use `-r<debugger gem name>` to
1253
+ load whichever debugger gem you wish to use (e.g. `ruby-debug`,
1254
+ `debugger`, or `pry`). (Myron Marston)
1255
+ * Extract Autotest support to a seperate gem. (Jon Rowe)
1256
+ * Raise an error when a `let` or `subject` declaration is
1257
+ accessed in a `before(:all)` or `after(:all)` hook. (Myron Marston)
1258
+ * Extract `its` support to a separate gem. (Peter Alfvin)
1259
+ * Disallow use of a shared example group from sibling contexts, making them
1260
+ fully isolated. 2.14 and 2.99 allowed this but printed a deprecation warning.
1261
+ (Jon Rowe)
1262
+ * Remove `RSpec::Core::Configuration#output` and
1263
+ `RSpec::Core::Configuration#out` aliases of
1264
+ `RSpec::Core::Configuration#output_stream`. (Myron Marston)
1265
+ * Remove legacy ordering APIs deprecated in 2.99.0.beta1. (Myron
1266
+ Marston)
1267
+
1268
+ Enhancements:
1269
+
1270
+ * Replace unmaintained syntax gem with coderay gem. (Xavier Shay)
1271
+ * Times in profile output are now bold instead of `failure_color`.
1272
+ (Matthew Boedicker)
1273
+ * Add `--no-fail-fast` command line option. (Gonzalo Rodríguez-Baltanás Díaz)
1274
+ * Runner now considers the local system ip address when running under Drb.
1275
+ (Adrian CB)
1276
+ * JsonFormatter now includes `--profile` information. (Alex / @MasterLambaster)
1277
+ * Always treat symbols passed as metadata args as hash
1278
+ keys with true values. RSpec 2 supported this with the
1279
+ `treat_symbols_as_metadata_keys_with_true_values` but
1280
+ now this behavior is always enabled. (Myron Marston)
1281
+ * Add `--dry-run` option, which prints the formatter output
1282
+ of your suite without running any examples or hooks.
1283
+ (Thomas Stratmann, Myron Marston)
1284
+ * Document the configuration options and default values in the `spec_helper.rb`
1285
+ file that is generated by RSpec. (Parker Selbert)
1286
+ * Give generated example group classes a friendly name derived
1287
+ from the docstring, rather than something like "Nested_2".
1288
+ (Myron Marston)
1289
+ * Avoid affecting randomization of user code when shuffling
1290
+ examples so that users can count on their own seeds
1291
+ working. (Travis Herrick)
1292
+ * Ordering is no longer a single global property of the test suite.
1293
+ Each group can pick an ordering using `:order` metadata. (Andy
1294
+ Lindeman, Sam Phippen, Myron Marston)
1295
+ * Allow named custom ordering strategies to be registered, which can
1296
+ then be used on individual example groups. (Andy Lindeman, Sam
1297
+ Phippen, Myron Marston)
1298
+
1299
+ Deprecations:
1300
+
1301
+ * `treat_symbols_as_metadata_keys_with_true_values` is deprecated and no
1302
+ longer has an affect now that the behavior it enabled is always
1303
+ enabled. (Myron Marston)
1304
+
1305
+ ### 2.99.2 / 2014-08-19
1306
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.99.1...v2.99.2)
1307
+
1308
+ Enhancements:
1309
+
1310
+ * Improve deprecation warning for RSpec 3 change in `describe <a symbol>`
1311
+ behavior. (Jon Rowe, #1667)
1312
+
1313
+ ### 2.99.1 / 2014-06-19
1314
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.99.0...v2.99.1)
1315
+
1316
+ Bug Fixes:
1317
+
1318
+ * Add missing deprecation warning for when `RSpec::Core::Runner` is used
1319
+ multiple times in the same process. In 2.x RSpec's global state was
1320
+ automatically cleared between runs but in 3.0 you need to call `RSpec.reset`
1321
+ manually in these situations. (Sam Phippen, #1587)
1322
+ * Prevent deprecation being accidentally issues when doubles used with `be_`
1323
+ matchers due to automatically generated descriptions. (Jon Rowe, #1573)
1324
+ * Load `rspec/core` when loading `rspec/core/rake_task` to ensure we can
1325
+ issue deprecations correctly. (Jon Rowe, #1612)
1326
+
1327
+ ### 2.99.0 / 2014-06-01
1328
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.99.0.rc1...v2.99.0)
1329
+
1330
+ Bug Fixes:
1331
+
1332
+ * Fix `BaseTextFormatter` so that it does not re-close a closed output
1333
+ stream. (Myron Marston)
1334
+ * Use `RSpec::Configuration#backtrace_exclusion_patterns` rather than the
1335
+ deprecated `RSpec::Configuration#backtrace_clean_patterns` when mocking
1336
+ with rr. (David Dollar)
1337
+
1338
+ ### 2.99.0.rc1 / 2014-05-18
1339
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.99.0.beta2...v2.99.0.rc1)
1340
+
1341
+ Enhancements:
1342
+
1343
+ * Add `--deprecation-out` CLI option which directs deprecation warnings
1344
+ to the named file. (Myron Marston)
1345
+ * Backport support for `skip` in metadata to skip execution of an example.
1346
+ (Xavier Shay, #1472)
1347
+ * Add `Pathname` support for setting all output streams. (Aaron Kromer)
1348
+ * Add `test_unit` and `minitest` expectation frameworks. (Aaron Kromer)
1349
+
1350
+ Deprecations:
1351
+
1352
+ * Deprecate `RSpec::Core::Pending::PendingDeclaredInExample`, use
1353
+ `SkipDeclaredInExample` instead. (Xavier Shay)
1354
+ * Issue a deprecation when `described_class` is accessed from within
1355
+ a nested `describe <SomeClass>` example group, since `described_class`
1356
+ will return the innermost described class in RSpec 3 rather than the
1357
+ outermost described class, as it behaved in RSpec 2. (Myron Marston)
1358
+ * Deprecate `RSpec::Core::FilterManager::DEFAULT_EXCLUSIONS`,
1359
+ `RSpec::Core::FilterManager::STANDALONE_FILTERS` and use of
1360
+ `#empty_without_conditional_filters?` on those filters. (Sergey Pchelincev)
1361
+ * Deprecate `RSpec::Core::Example#options` in favor of
1362
+ `RSpec::Core::Example#metadata`. (Myron Marston)
1363
+ * Issue warning when passing a symbol or hash to `describe` or `context`
1364
+ as the first argument. In RSpec 2.x this would be treated as metadata
1365
+ but in RSpec 3 it'll be treated as the described object. To continue
1366
+ having it treated as metadata, pass a description before the symbol or
1367
+ hash. (Myron Marston)
1368
+ * Deprecate `RSpec::Core::BaseTextFormatter::VT100_COLORS` and
1369
+ `RSpec::Core::BaseTextFormatter::VT100_COLOR_CODES` in favour
1370
+ of `RSpec::Core::BaseTextFormatter::ConsoleCodes::VT100_CODES` and
1371
+ `RSpec::Core::BaseTextFormatter::ConsoleCodes::VT100_CODE_VALUES`.
1372
+ (Jon Rowe)
1373
+ * Deprecate `RSpec::Core::ExampleGroup.display_name` in favor of
1374
+ `RSpec::Core::ExampleGroup.description`. (Myron Marston)
1375
+ * Deprecate `RSpec::Core::ExampleGroup.describes` in favor of
1376
+ `RSpec::Core::ExampleGroup.described_class`. (Myron Marston)
1377
+ * Deprecate `RSpec::Core::ExampleGroup.alias_example_to` in favor of
1378
+ `RSpec::Core::Configuration#alias_example_to`. (Myron Marston)
1379
+ * Deprecate `RSpec::Core::ExampleGroup.alias_it_behaves_like_to` in favor
1380
+ of `RSpec::Core::Configuration#alias_it_behaves_like_to`. (Myron Marston)
1381
+ * Deprecate `RSpec::Core::ExampleGroup.focused` in favor of
1382
+ `RSpec::Core::ExampleGroup.focus`. (Myron Marston)
1383
+ * Add deprecation warning for `config.filter_run :focused` since
1384
+ example aliases `fit` and `focus` will no longer include
1385
+ `:focused` metadata but will continue to include `:focus`. (Myron Marston)
1386
+ * Deprecate filtering by `:line_number` (e.g. `--line-number` from the
1387
+ CLI). Use location filtering instead. (Myron Marston)
1388
+ * Deprecate `--default_path` as an alternative to `--default-path`. (Jon Rowe)
1389
+ * Deprecate `RSpec::Core::Configuration#warnings` in favor of
1390
+ `RSpec::Core::Configuration#warnings?`. (Myron Marston)
1391
+ * Deprecate `share_examples_for` in favor of `shared_examples_for` or
1392
+ just `shared_examples`. (Myron Marston)
1393
+ * Deprecate `RSpec::Core::CommandLine` in favor of
1394
+ `RSpec::Core::Runner`. (Myron Marston)
1395
+ * Deprecate `#color_enabled`, `#color_enabled=` and `#color?` in favour of
1396
+ `#color`, `#color=` and `#color_enabled? output`. (Jon Rowe)
1397
+ * Deprecate `#filename_pattern` in favour of `#pattern`. (Jon Rowe)
1398
+ * Deprecate `#backtrace_cleaner` in favour of `#backtrace_formatter`. (Jon Rowe)
1399
+ * Deprecate mutating `RSpec::Configuration#formatters`. (Jon Rowe)
1400
+ * Deprecate `stdlib` as an available expectation framework in favour of
1401
+ `test_unit` and `minitest`. (Aaron Kromer)
1402
+
1403
+ Bug Fixes:
1404
+
1405
+ * Issue a warning when you set `config.deprecation_stream` too late for
1406
+ it to take effect because the reporter has already been setup. (Myron Marston)
1407
+ * `skip` with a block should not execute the block. (Xavier Shay)
1408
+
1409
+ ### 2.99.0.beta2 / 2014-02-17
1410
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.99.0.beta1...v2.99.0.beta2)
1411
+
1412
+ Enhancements:
1413
+
1414
+ * Add `is_expected` for one-liners that read well with the
1415
+ `expect`-based syntax. `is_expected` is simply defined as
1416
+ `expect(subject)` and can be used in an expression like:
1417
+ `it { is_expected.to read_well }`. (Myron Marston)
1418
+ * Backport `skip` from RSpec 3, which acts like `pending` did in RSpec 2
1419
+ when not given a block, since the behavior of `pending` is changing in
1420
+ RSpec 3. (Xavier Shay)
1421
+
1422
+ Deprecations:
1423
+
1424
+ * Deprecate inexact `mock_with` config options. RSpec 3 will only support
1425
+ the exact symbols `:rspec`, `:mocha`, `:flexmock`, `:rr` or `:nothing`
1426
+ (or any module that implements the adapter interface). RSpec 2 did
1427
+ fuzzy matching but this will not be supported going forward.
1428
+ (Myron Marston)
1429
+ * Deprecate `show_failures_in_pending_blocks` config option. To achieve
1430
+ the same behavior as the option enabled, you can use a custom
1431
+ formatter instead. (Xavier Shay)
1432
+ * Add a deprecation warning for the fact that the behavior of `pending`
1433
+ is changing in RSpec 3 -- rather than skipping the example (as it did
1434
+ in 2.x when no block was provided), it will run the example and mark
1435
+ it as failed if no exception is raised. Use `skip` instead to preserve
1436
+ the old behavior. (Xavier Shay)
1437
+ * Deprecate 's', 'n', 'spec' and 'nested' as aliases for documentation
1438
+ formatter. (Jon Rowe)
1439
+ * Deprecate `RSpec::Core::Reporter#abort` in favor of
1440
+ `RSpec::Core::Reporter#finish`. (Jon Rowe)
1441
+
1442
+ Bug Fixes:
1443
+
1444
+ * Fix failure (undefined method `path`) in end-of-run summary
1445
+ when `raise_errors_for_deprecations!` is configured. (Myron Marston)
1446
+ * Fix issue were overridding spec ordering from the command line wasn't
1447
+ fully recognised interally. (Jon Rowe)
1448
+
1449
+ ### 2.99.0.beta1 / 2013-11-07
1450
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.14.7...v2.99.0.beta1)
1451
+
1452
+ Enhancements
1453
+
1454
+ * Block-based DSL methods that run in the context of an example
1455
+ (`it`, `before(:each)`, `after(:each)`, `let` and `subject`)
1456
+ now yield the example as a block argument. (David Chelimsky)
1457
+ * Warn when the name of more than one example group is submitted to
1458
+ `include_examples` and it's aliases. (David Chelimsky)
1459
+ * Add `expose_current_running_example_as` config option for
1460
+ use during the upgrade process when external gems use the
1461
+ deprecated `RSpec::Core::ExampleGroup#example` and
1462
+ `RSpec::Core::ExampleGroup#running_example` methods. (Myron Marston)
1463
+ * Limit spamminess of deprecation messages. (Bradley Schaefer, Loren Segal)
1464
+ * Add `config.raise_errors_for_deprecations!` option, which turns
1465
+ deprecations warnings into errors to surface the full backtrace
1466
+ of the call site. (Myron Marston)
1467
+
1468
+ Deprecations
1469
+
1470
+ * Deprecate `RSpec::Core::ExampleGroup#example` and
1471
+ `RSpec::Core::ExampleGroup#running_example` methods. If you need
1472
+ access to the example (e.g. to get its metadata), use a block argument
1473
+ instead. (David Chelimsky)
1474
+ * Deprecate use of `autotest/rspec2` in favour of `rspec-autotest`. (Jon Rowe)
1475
+ * Deprecate RSpec's built-in debugger support. Use a CLI option like
1476
+ `-rruby-debug` (for the ruby-debug gem) or `-rdebugger` (for the
1477
+ debugger gem) instead. (Myron Marston)
1478
+ * Deprecate `RSpec.configuration.treat_symbols_as_metadata_keys_with_true_values = false`.
1479
+ RSpec 3 will not support having this option set to `false`. (Myron Marston)
1480
+ * Deprecate accessing a `let` or `subject` declaration in
1481
+ a `after(:all)` hook. (Myron Marston, Jon Rowe)
1482
+ * Deprecate built-in `its` usage in favor of `rspec-its` gem due to planned
1483
+ removal in RSpec 3. (Peter Alfvin)
1484
+ * Deprecate `RSpec::Core::PendingExampleFixedError` in favor of
1485
+ `RSpec::Core::Pending::PendingExampleFixedError`. (Myron Marston)
1486
+ * Deprecate `RSpec::Core::Configuration#out` and
1487
+ `RSpec::Core::Configuration#output` in favor of
1488
+ `RSpec::Core::Configuration#output_stream`. (Myron Marston)
1489
+ * Deprecate legacy ordering APIs.
1490
+ * You should use `register_ordering(:global)` instead of these:
1491
+ * `RSpec::Core::Configuration#order_examples`
1492
+ * `RSpec::Core::Configuration#order_groups`
1493
+ * `RSpec::Core::Configuration#order_groups_and_examples`
1494
+ * These are deprecated with no replacement because in RSpec 3
1495
+ ordering is a property of individual example groups rather than
1496
+ just a global property of the entire test suite:
1497
+ * `RSpec::Core::Configuration#order`
1498
+ * `RSpec::Core::Configuration#randomize?`
1499
+ * `--order default` is deprecated in favor of `--order defined`
1500
+ (Myron Marston)
1501
+
1502
+ ### 2.14.8 / 2014-02-27
1503
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.14.7...v2.14.8)
1504
+
1505
+ Bug fixes:
1506
+
1507
+ * Fix regression with the `textmateformatter` that prevented backtrace links
1508
+ from being clickable. (Stefan Daschek)
1509
+
1510
+ ### 2.14.7 / 2013-10-29
1511
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.14.6...v2.14.7)
1512
+
1513
+ Bug fixes:
1514
+
1515
+ * Fix regression in 2.14.6 that broke the Fivemat formatter.
1516
+ It depended upon either
1517
+ `example.execution_result[:exception].pending_fixed?` (which
1518
+ was removed in 2.14.6 to fix an issue with frozen error objects)
1519
+ or `RSpec::Core::PendingExampleFixedError` (which was renamed
1520
+ to `RSpec::Core::Pending::PendingExampleFixedError` in 2.8.
1521
+ This fix makes a constant alias for the old error name.
1522
+ (Myron Marston)
1523
+
1524
+ ### 2.14.6 / 2013-10-15
1525
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.14.5...v2.14.6)
1526
+
1527
+ Bug fixes:
1528
+
1529
+ * Format stringified numbers correctly when mathn library is loaded.
1530
+ (Jay Hayes)
1531
+ * Fix an issue that prevented the use of frozen error objects. (Lars
1532
+ Gierth)
1533
+
1534
+ ### 2.14.5 / 2013-08-13
1535
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.14.4...v2.14.5)
1536
+
1537
+ Bug fixes:
1538
+
1539
+ * Fix a `NoMethodError` that was being raised when there were no shared
1540
+ examples or contexts declared and `RSpec.world.reset` is invoked.
1541
+ (thepoho, Jon Rowe, Myron Marston)
1542
+ * Fix a deprecation warning that was being incorrectly displayed when
1543
+ `shared_examples` are declared at top level in a `module` scope.
1544
+ (Jon Rowe)
1545
+ * Fix after(:all) hooks so consecutive (same context) scopes will run even if
1546
+ one raises an error. (Jon Rowe, Trejkaz)
1547
+ * JsonFormatter no longer dies if `dump_profile` isn't defined (Alex / @MasterLambaster, Jon Rowe)
1548
+
1549
+ ### 2.14.4 / 2013-07-21
1550
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.14.3...v2.14.4)
1551
+
1552
+ Bug fixes
1553
+
1554
+ * Fix regression in 2.14: ensure configured requires (via `-r` option)
1555
+ are loaded before spec files are loaded. This allows the spec files
1556
+ to programatically change the file pattern (Jon Rowe).
1557
+ * Autoload `RSpec::Mocks` and `RSpec::Expectations` when referenced if
1558
+ they are not already loaded (`RSpec::Matches` has been autoloaded
1559
+ for a while). In the `rspec` gem, we changed it recently to stop
1560
+ loading `rspec/mocks` and `rspec/expectations` by default, as some
1561
+ users reported problems where they were intending to use mocha,
1562
+ not rspec-mocks, but rspec-mocks was loaded and causing a conflict.
1563
+ rspec-core loads mocks and expectations at the appropriate time, so
1564
+ it seemed like a safe change -- but caused a problem for some authors
1565
+ of libraries that integrate with RSpec. This fixes that problem.
1566
+ (Myron Marston)
1567
+ * Gracefully handle a command like `rspec --profile path/to/spec.rb`:
1568
+ the `path/to/spec.rb` arg was being wrongly treated as the `profile`
1569
+ integer arg, which got cast `0` using `to_i`, causing no profiled
1570
+ examples to be printed. (Jon Rowe)
1571
+
1572
+ ### 2.14.3 / 2013-07-13
1573
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.14.2...v2.14.3)
1574
+
1575
+ Bug fixes
1576
+
1577
+ * Fix deprecation notices issued from `RSpec::Core::RakeTask` so
1578
+ that they work properly when all of rspec-core is not loaded.
1579
+ (This was a regression in 2.14) (Jon Rowe)
1580
+
1581
+ ### 2.14.2 / 2013-07-09
1582
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.14.1...v2.14.2)
1583
+
1584
+ Bug fixes
1585
+
1586
+ * Fix regression caused by 2.14.1 release: formatters that
1587
+ report that they `respond_to?` a notification, but had
1588
+ no corresponding method would raise an error when registered.
1589
+ The new fix is to just implement `start` on the deprecation
1590
+ formatter to fix the original JRuby/ruby-debug issue.
1591
+ (Jon Rowe)
1592
+
1593
+ ### 2.14.1 / 2013-07-08
1594
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.14.0...v2.14.1)
1595
+
1596
+ Bug fixes
1597
+
1598
+ * Address deprecation formatter failure when using `ruby-debug` on
1599
+ JRuby: fix `RSpec::Core::Reporter` to not send a notification
1600
+ when the formatter's implementation of the notification method
1601
+ comes from `Kernel` (Alex Portnov, Jon Rowe).
1602
+
1603
+ ### 2.14.0 / 2013-07-06
1604
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.14.0.rc1...v2.14.0)
1605
+
1606
+ Enhancements
1607
+
1608
+ * Apply focus to examples defined with `fit` (equivalent of
1609
+ `it "description", focus: true`) (Michael de Silva)
1610
+
1611
+ Bug fix
1612
+
1613
+ * Ensure methods defined by `let` take precedence over others
1614
+ when there is a name collision (e.g. from an included module).
1615
+ (Jon Rowe, Andy Lindeman and Myron Marston)
1616
+
1617
+ ### 2.14.0.rc1 / 2013-05-27
1618
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.13.1...v2.14.0.rc1)
1619
+
1620
+ Enhancements
1621
+
1622
+ * Improved Windows detection inside Git Bash, for better `--color` handling.
1623
+ * Add profiling of the slowest example groups to `--profile` option.
1624
+ The output is sorted by the slowest average example groups.
1625
+ * Don't show slow examples if there's a failure and both `--fail-fast`
1626
+ and `--profile` options are used (Paweł Gościcki).
1627
+ * Rather than always adding `spec` to the load path, add the configured
1628
+ `--default-path` to the load path (which defaults to `spec`). This
1629
+ better supports folks who choose to put their specs in a different
1630
+ directory (John Feminella).
1631
+ * Add some logic to test time duration precision. Make it a
1632
+ function of time, dropping precision as the time increases. (Aaron Kromer)
1633
+ * Add new `backtrace_inclusion_patterns` config option. Backtrace lines
1634
+ that match one of these patterns will _always_ be included in the
1635
+ backtrace, even if they match an exclusion pattern, too (Sam Phippen).
1636
+ * Support ERB trim mode using the `-` when parsing `.rspec` as ERB
1637
+ (Gabor Garami).
1638
+ * Give a better error message when let and subject are called without a block.
1639
+ (Sam Phippen).
1640
+ * List the precedence of `.rspec-local` in the configuration documentation
1641
+ (Sam Phippen)
1642
+ * Support `{a,b}` shell expansion syntax in `--pattern` option
1643
+ (Konstantin Haase).
1644
+ * Add cucumber documentation for --require command line option
1645
+ (Bradley Schaefer)
1646
+ * Expose configuration options via config:
1647
+ * `config.libs` returns the libs configured to be added onto the load path
1648
+ * `full_backtrace?` returns the state of the backtrace cleaner
1649
+ * `debug?` returns true when the debugger is loaded
1650
+ * `line_numbers` returns the line numbers we are filtering by (if any)
1651
+ * `full_description` returns the RegExp used to filter descriptions
1652
+ (Jon Rowe)
1653
+ * Add setters for RSpec.world and RSpec.configuration (Alex Soulim)
1654
+ * Configure ruby's warning behaviour with `--warnings` (Jon Rowe)
1655
+ * Fix an obscure issue on old versions of `1.8.7` where `Time.dup` wouldn't
1656
+ allow access to `Time.now` (Jon Rowe)
1657
+ * Make `shared_examples_for` context aware, so that keys may be safely reused
1658
+ in multiple contexts without colliding. (Jon Rowe)
1659
+ * Add a configurable `deprecation_stream` (Jon Rowe)
1660
+ * Publish deprecations through a formatter (David Chelimsky)
1661
+
1662
+ Bug fixes
1663
+
1664
+ * Make JSON formatter behave the same when it comes to `--profile` as
1665
+ the text formatter (Paweł Gościcki).
1666
+ * Fix named subjects so that if an inner group defines a method that
1667
+ overrides the named method, `subject` still retains the originally
1668
+ declared value (Myron Marston).
1669
+ * Fix random ordering so that it does not cause `rand` in examples in
1670
+ nested sibling contexts to return the same value (Max Shytikov).
1671
+ * Use the new `backtrace_inclusion_patterns` config option to ensure
1672
+ that folks who develop code in a directory matching one of the default
1673
+ exclusion patterns (e.g. `gems`) still get the normal backtrace
1674
+ filtering (Sam Phippen).
1675
+ * Fix ordering of `before` hooks so that `before` hooks declared in
1676
+ `RSpec.configure` run before `before` hooks declared in a shared
1677
+ context (Michi Huber and Tejas Dinkar).
1678
+ * Fix `Example#full_description` so that it gets filled in by the last
1679
+ matcher description (as `Example#description` already did) when no
1680
+ doc string has been provided (David Chelimsky).
1681
+ * Fix the memoized methods (`let` and `subject`) leaking `define_method`
1682
+ as a `public` method. (Thomas Holmes and Jon Rowe) (#873)
1683
+ * Fix warnings coming from the test suite. (Pete Higgins)
1684
+
1685
+ Deprecations
1686
+
1687
+ * Deprecate `Configuration#backtrace_clean_patterns` in favor of
1688
+ `Configuration#backtrace_exclusion_patterns` for greater consistency
1689
+ and symmetry with new `backtrace_inclusion_patterns` config option
1690
+ (Sam Phippen).
1691
+ * Deprecate `Configuration#requires=` in favor of using ruby's
1692
+ `require`. Requires specified by the command line can still be
1693
+ accessed by the `Configuration#require` reader. (Bradley Schaefer)
1694
+ * Deprecate calling `SharedExampleGroups` defined across sibling contexts
1695
+ (Jon Rowe)
1696
+
1697
+ ### 2.13.1 / 2013-03-12
1698
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.13.0...v2.13.1)
1699
+
1700
+ Bug fixes
1701
+
1702
+ * Use hook classes as proxies rather than extending hook blocks to support
1703
+ lambdas for before/after/around hooks. (David Chelimsky)
1704
+ * Fix regression in 2.13.0 that caused confusing behavior when overriding
1705
+ a named subject with an unnamed subject in an inner group and then
1706
+ referencing the outer group subject's name. The fix for this required
1707
+ us to disallow using `super` in a named subject (which is confusing,
1708
+ anyway -- named subjects create 2 methods, so which method on the
1709
+ parent example group are you `super`ing to?) but `super` in an unnamed
1710
+ subject continues to work (Myron Marston).
1711
+ * Do not allow a referenced `let` or `subject` in `before(:all)` to cause
1712
+ other `let` declarations to leak across examples (Myron Marston).
1713
+ * Work around odd ruby 1.9 bug with `String#match` that was triggered
1714
+ by passing it a regex from a `let` declaration. For more info, see
1715
+ http://bugs.ruby-lang.org/issues/8059 (Aaron Kromer).
1716
+ * Add missing `require 'set'` to `base_text_formatter.rb` (Tom
1717
+ Anderson).
1718
+
1719
+ Deprecations
1720
+
1721
+ * Deprecate accessing `let` or `subject` declarations in `before(:all)`.
1722
+ These were not intended to be called in a `before(:all)` hook, as
1723
+ they exist to define state that is reset between each example, while
1724
+ `before(:all)` exists to define state that is shared across examples
1725
+ in an example group (Myron Marston).
1726
+
1727
+ ### 2.13.0 / 2013-02-23
1728
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.12.2...v2.13.0)
1729
+
1730
+ Enhancements
1731
+
1732
+ * Allow `--profile` option to take a count argument that
1733
+ determines the number of slow examples to dump
1734
+ (Greggory Rothmeier).
1735
+ * Add `subject!` that is the analog to `let!`. It defines an
1736
+ explicit subject and sets a `before` hook that will invoke
1737
+ the subject (Zubin Henner).
1738
+ * Fix `let` and `subject` declaration so that `super`
1739
+ and `return` can be used in them, just like in a normal
1740
+ method. (Myron Marston)
1741
+ * Allow output colors to be configured individually.
1742
+ (Charlie Maffitt)
1743
+ * Always dump slow examples when `--profile` option is given,
1744
+ even when an example failed (Myron Marston).
1745
+
1746
+ Bug fixes
1747
+
1748
+ * Don't blow up when dumping error output for instances
1749
+ of anonymous error classes (Myron Marston).
1750
+ * Fix default backtrace filters so lines from projects
1751
+ containing "gems" in the name are not filtered, but
1752
+ lines from installed gems still are (Myron Marston).
1753
+ * Fix autotest command so that is uses double quotes
1754
+ rather than single quotes for windows compatibility
1755
+ (Jonas Tingeborn).
1756
+ * Fix `its` so that uses of `subject` in a `before` or `let`
1757
+ declaration in the parent group continue to reference the
1758
+ parent group's subject. (Olek Janiszewski)
1759
+
1760
+ ### 2.12.2 / 2012-12-13
1761
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.12.1...v2.12.2)
1762
+
1763
+ Bug fixes
1764
+
1765
+ * Fix `RSpec::Core::RakeTask` so that it is compatible with rake 0.8.7
1766
+ on ruby 1.8.7. We had accidentally broke it in the 2.12 release
1767
+ (Myron Marston).
1768
+ * Fix `RSpec::Core::RakeTask` so it is tolerant of the `Rspec` constant
1769
+ for backwards compatibility (Patrick Van Stee)
1770
+
1771
+ ### 2.12.1 / 2012-12-01
1772
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.12.0...v2.12.1)
1773
+
1774
+ Bug fixes
1775
+
1776
+ * Specs are run even if another at\_exit hook calls `exit`. This allows
1777
+ Test::Unit and RSpec to run together. (Suraj N. Kurapati)
1778
+ * Fix full doc string concatenation so that it handles the case of a
1779
+ method string (e.g. "#foo") being nested under a context string
1780
+ (e.g. "when it is tuesday"), so that we get "when it is tuesday #foo"
1781
+ rather than "when it is tuesday#foo". (Myron Marston)
1782
+ * Restore public API I unintentionally broke in 2.12.0:
1783
+ `RSpec::Core::Formatters::BaseFormatter#format_backtrce(backtrace, example)`
1784
+ (Myron Marston).
1785
+
1786
+ ### 2.12.0 / 2012-11-12
1787
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.11.1...v2.12.0)
1788
+
1789
+ Enhancements
1790
+
1791
+ * Add support for custom ordering strategies for groups and examples.
1792
+ (Myron Marston)
1793
+ * JSON Formatter (Alex Chaffee)
1794
+ * Refactor rake task internals (Sam Phippen)
1795
+ * Refactor HtmlFormatter (Pete Hodgson)
1796
+ * Autotest supports a path to Ruby that contains spaces (dsisnero)
1797
+ * Provide a helpful warning when a shared example group is redefined.
1798
+ (Mark Burns).
1799
+ * `--default_path` can be specified as `--default-line`. `--line_number` can be
1800
+ specified as `--line-number`. Hyphens are more idiomatic command line argument
1801
+ separators (Sam Phippen).
1802
+ * A more useful error message is shown when an invalid command line option is
1803
+ used (Jordi Polo).
1804
+ * Add `format_docstrings { |str| }` config option. It can be used to
1805
+ apply formatting rules to example group and example docstrings.
1806
+ (Alex Tan)
1807
+ * Add support for an `.rspec-local` options file. This is intended to
1808
+ allow individual developers to set options in a git-ignored file that
1809
+ override the common project options in `.rspec`. (Sam Phippen)
1810
+ * Support for mocha 0.13.0. (Andy Lindeman)
1811
+
1812
+ Bug fixes
1813
+
1814
+ * Remove override of `ExampleGroup#ancestors`. This is a core ruby method that
1815
+ RSpec shouldn't override. Instead, define `ExampleGroup#parent_groups`. (Myron
1816
+ Marston)
1817
+ * Limit monkey patching of shared example/context declaration methods
1818
+ (`shared_examples_for`, etc.) to just the objects that need it rather than
1819
+ every object in the system (Myron Marston).
1820
+ * Fix Metadata#fetch to support computed values (Sam Goldman).
1821
+ * Named subject can now be referred to from within subject block in a nested
1822
+ group (tomykaira).
1823
+ * Fix `fail_fast` so that it properly exits when an error occurs in a
1824
+ `before(:all) hook` (Bradley Schaefer).
1825
+ * Make the order spec files are loaded consistent, regardless of the
1826
+ order of the files returned by the OS or the order passed at
1827
+ the command line (Jo Liss and Sam Phippen).
1828
+ * Ensure instance variables from `before(:all)` are always exposed
1829
+ from `after(:all)`, even if an error occurs in `before(:all)`
1830
+ (Sam Phippen).
1831
+ * `rspec --init` no longer generates an incorrect warning about `--configure`
1832
+ being deprecated (Sam Phippen).
1833
+ * Fix pluralization of `1 seconds` (Odin Dutton)
1834
+ * Fix ANSICON url (Jarmo Pertman)
1835
+ * Use dup of Time so reporting isn't clobbered by examples that modify Time
1836
+ without properly restoring it. (David Chelimsky)
1837
+
1838
+ Deprecations
1839
+
1840
+ * `share_as` is no longer needed. `shared_context` and/or
1841
+ `RSpec::SharedContext` provide better mechanisms (Sam Phippen).
1842
+ * Deprecate `RSpec.configuration` with a block (use `RSpec.configure`).
1843
+
1844
+
1845
+ ### 2.11.1 / 2012-07-18
1846
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.11.0...v2.11.1)
1847
+
1848
+ Bug fixes
1849
+
1850
+ * Fix the way we autoload RSpec::Matchers so that custom matchers can be
1851
+ defined before rspec-core has been configured to definitely use
1852
+ rspec-expectations. (Myron Marston)
1853
+ * Fix typo in --help message printed for -e option. (Jo Liss)
1854
+ * Fix ruby warnings. (Myron Marston)
1855
+ * Ignore mock expectation failures when the example has already failed.
1856
+ Mock expectation failures have always been ignored in this situation,
1857
+ but due to my changes in 27059bf1 it was printing a confusing message.
1858
+ (Myron Marston).
1859
+
1860
+ ### 2.11.0 / 2012-07-07
1861
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.10.1...v2.11.0)
1862
+
1863
+ Enhancements
1864
+
1865
+ * Support multiple `--example` options. (Daniel Doubrovkine @dblock)
1866
+ * Named subject e.g. `subject(:article) { Article.new }`
1867
+ * see [http://blog.davidchelimsky.net/2012/05/13/spec-smell-explicit-use-of-subject/](http://blog.davidchelimsky.net/2012/05/13/spec-smell-explicit-use-of-subject/)
1868
+ for background.
1869
+ * thanks to Bradley Schaefer for suggesting it and Avdi Grimm for almost
1870
+ suggesting it.
1871
+ * `config.mock_with` and `config.expect_with` yield custom config object to a
1872
+ block if given
1873
+ * aids decoupling from rspec-core's configuation
1874
+ * `include_context` and `include_examples` support a block, which gets eval'd
1875
+ in the current context (vs the nested context generated by `it_behaves_like`).
1876
+ * Add `config.order = 'random'` to the `spec_helper.rb` generated by `rspec
1877
+ --init`.
1878
+ * Delay the loading of DRb (Myron Marston).
1879
+ * Limit monkey patching of `describe` onto just the objects that need it rather
1880
+ than every object in the system (Myron Marston).
1881
+
1882
+ Bug fixes
1883
+
1884
+ * Support alternative path separators. For example, on Windows, you can now do
1885
+ this: `rspec spec\subdir`. (Jarmo Pertman @jarmo)
1886
+ * When an example raises an error and an after or around hook does as
1887
+ well, print out the hook error. Previously, the error was silenced and
1888
+ the user got no feedback about what happened. (Myron Marston)
1889
+ * `--require` and `-I` are merged among different configuration sources (Andy
1890
+ Lindeman)
1891
+ * Delegate to mocha methods instead of aliasing them in mocha adapter.
1892
+
1893
+ ### 2.10.1 / 2012-05-19
1894
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.10.0...v2.10.1)
1895
+
1896
+ Bug fixes
1897
+
1898
+ * `RSpec.reset` properly reinits configuration and world
1899
+ * Call `to_s` before `split` on exception messages that might not always be
1900
+ Strings (slyphon)
1901
+
1902
+ ### 2.10.0 / 2012-05-03
1903
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.9.0...v2.10.0)
1904
+
1905
+ Enhancements
1906
+
1907
+ * Add `prepend_before` and `append_after` hooks (preethiramdev)
1908
+ * intended for extension libs
1909
+ * restores rspec-1 behavior
1910
+ * Reporting of profiled examples (moro)
1911
+ * Report the total amount of time taken for the top slowest examples.
1912
+ * Report what percentage the slowest examples took from the total runtime.
1913
+
1914
+ Bug fixes
1915
+
1916
+ * Properly parse `SPEC_OPTS` options.
1917
+ * `example.description` returns the location of the example if there is no
1918
+ explicit description or matcher-generated description.
1919
+ * RDoc fixes (Grzegorz Świrski)
1920
+ * Do not modify example ancestry when dumping errors (Michael Grosser)
1921
+
1922
+ ### 2.9.0 / 2012-03-17
1923
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.8.0...v2.9.0)
1924
+
1925
+ Enhancements
1926
+
1927
+ * Support for "X minutes X seconds" spec run duration in formatter. (uzzz)
1928
+ * Strip whitespace from group and example names in doc formatter.
1929
+ * Removed spork-0.9 shim. If you're using spork-0.8.x, you'll need to upgrade
1930
+ to 0.9.0.
1931
+
1932
+ Bug fixes
1933
+
1934
+ * Restore `--full_backtrace` option
1935
+ * Ensure that values passed to `config.filter_run` are respected when running
1936
+ over DRb (using spork).
1937
+ * Ensure shared example groups are reset after a run (as example groups are).
1938
+ * Remove `rescue false` from calls to filters represented as Procs
1939
+ * Ensure `described_class` gets the closest constant (pyromaniac)
1940
+ * In "autorun", don't run the specs in the `at_exit` hook if there was an
1941
+ exception (most likely due to a SyntaxError). (sunaku)
1942
+ * Don't extend groups with modules already used to extend ancestor groups.
1943
+ * `its` correctly memoizes nil or false values (Yamada Masaki)
1944
+
1945
+ ### 2.8.0 / 2012-01-04
1946
+
1947
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.8.0.rc2...v2.8.0)
1948
+
1949
+ Bug fixes
1950
+
1951
+ * For metadata filtering, restore passing the entire array to the proc, rather
1952
+ than each item in the array (weidenfreak)
1953
+ * Ensure each spec file is loaded only once
1954
+ * Fixes a bug that caused all the examples in a file to be run when
1955
+ referenced twice with line numbers in a command, e.g.
1956
+ * `rspec path/to/file:37 path/to/file:42`
1957
+
1958
+ ### 2.8.0.rc2 / 2011-12-19
1959
+
1960
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.8.0.rc1...v2.8.0.rc2)
1961
+
1962
+ Enhancments
1963
+
1964
+ * new `--init` command (Peter Schröder)
1965
+ * generates `spec/spec_helper.rb`
1966
+ * deletes obsolete files (on confirmation)
1967
+ * merged with and deprecates `--configure` command, which generated
1968
+ `.rspec`
1969
+ * use `require_relative` when available (Ian Leitch)
1970
+ * `include_context` and `include_examples` accept params (Calvin Bascom)
1971
+ * print the time for every example in the html formatter (Richie Vos)
1972
+ * several tasty refactoring niblets (Sasha)
1973
+ * `it "does something", :x => [:foo,'bar',/baz/] (Ivan Neverov)
1974
+ * supports matching n command line tag values with an example or group
1975
+
1976
+ ### 2.8.0.rc1 / 2011-11-06
1977
+
1978
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.7.1...v2.8.0.rc1)
1979
+
1980
+ Enhancements
1981
+
1982
+ * `--order` (Justin Ko)
1983
+ * run examples in random order: `--order rand`
1984
+ * specify the seed: `--order rand:123`
1985
+ * `--seed SEED`
1986
+ * equivalent of `--order rand:SEED`
1987
+ * SharedContext supports `let` (David Chelimsky)
1988
+ * Filter improvements (David Chelimsky)
1989
+ * override opposing tags from the command line
1990
+ * override RSpec.configure tags from the command line
1991
+ * `--line_number 37` overrides all other filters
1992
+ * `path/to/file.rb:37` overrides all other filters
1993
+ * refactor: consolidate filter management in a FilterManger object
1994
+ * Eliminate Ruby warnings (Matijs van Zuijlen)
1995
+ * Make reporter.report an API (David Chelimsky)
1996
+ * supports extension tools like interative_rspec
1997
+
1998
+ Changes
1999
+
2000
+ * change `config.color_enabled` (getter/setter/predicate) to `color` to align
2001
+ with `--[no]-color` CLI option.
2002
+ * `color_enabled` is still supported for now, but will likley be deprecated
2003
+ in a 2.x release so we can remove it in 3.0.
2004
+
2005
+ Bug fixes
2006
+
2007
+ * Make sure the `bar` in `--tag foo:bar` makes it to DRb (Aaron Gibralter)
2008
+ * Fix bug where full descriptions of groups nested 3 deep were repeated.
2009
+ * Restore report of time to run to start after files are loaded.
2010
+ * fixes bug where run times were cumalitive in spork
2011
+ * fixes compatibility with time-series metrics
2012
+ * Don't error out when `config.mock_with` or `expect_with` is re-specifying the
2013
+ current config (Myron Marston)
2014
+
2015
+ * Deprecations
2016
+ * :alias option on `configuration.add_setting`. Use `:alias_with` on the
2017
+ original setting declaration instead.
2018
+
2019
+ ### 2.7.1 / 2011-10-20
2020
+
2021
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.7.0...v2.7.1)
2022
+
2023
+ Bug fixes
2024
+
2025
+ * tell autotest the correct place to find the rspec executable
2026
+
2027
+ ### 2.7.0 / 2011-10-16
2028
+
2029
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.6.4...v2.7.0)
2030
+
2031
+ NOTE: RSpec's release policy dictates that there should not be any backward
2032
+ incompatible changes in minor releases, but we're making an exception to
2033
+ release a change to how RSpec interacts with other command line tools.
2034
+
2035
+ As of 2.7.0, you must explicity `require "rspec/autorun"` unless you use the
2036
+ `rspec` command (which already does this for you).
2037
+
2038
+ Enhancements
2039
+
2040
+ * Add `example.exception` (David Chelimsky)
2041
+ * `--default_path` command line option (Justin Ko)
2042
+ * support multiple `--line_number` options (David J. Hamilton)
2043
+ * also supports `path/to/file.rb:5:9` (runs examples on lines 5 and 9)
2044
+ * Allow classes/modules to be used as shared example group identifiers (Arthur
2045
+ Gunn)
2046
+ * Friendly error message when shared context cannot be found (Sławosz
2047
+ Sławiński)
2048
+ * Clear formatters when resetting config (John Bintz)
2049
+ * Add `xspecify` and xexample as temp-pending methods (David Chelimsky)
2050
+ * Add `--no-drb` option (Iain Hecker)
2051
+ * Provide more accurate run time by registering start time before code is
2052
+ loaded (David Chelimsky)
2053
+ * reverted in 2.8.0
2054
+ * Rake task default pattern finds specs in symlinked dirs (Kelly Felkins)
2055
+ * Rake task no longer does anything to invoke bundler since Bundler already
2056
+ handles it for us. Thanks to Andre Arko for the tip.
2057
+ * Add `--failure-exit-code` option (Chris Griego)
2058
+
2059
+ Bug fixes
2060
+
2061
+ * Include `Rake::DSL` to remove deprecation warnings in Rake > 0.8.7 (Pivotal
2062
+ Casebook)
2063
+ * Only eval `let` block once even if it returns `nil` (Adam Meehan)
2064
+ * Fix `--pattern` option (wasn't being recognized) (David Chelimsky)
2065
+ * Only implicitly `require "rspec/autorun"` with the `rspec` command (David
2066
+ Chelimsky)
2067
+ * Ensure that rspec's `at_exit` defines the exit code (Daniel Doubrovkine)
2068
+ * Show the correct snippet in the HTML and TextMate formatters (Brian Faherty)
2069
+
2070
+ ### 2.6.4 / 2011-06-06
2071
+
2072
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.6.3...v2.6.4)
2073
+
2074
+ NOTE: RSpec's release policy dictates that there should not be new
2075
+ functionality in patch releases, but this minor enhancement slipped in by
2076
+ accident. As it doesn't add a new API, we decided to leave it in rather than
2077
+ roll back this release.
2078
+
2079
+ Enhancements
2080
+
2081
+ * Add summary of commands to run individual failed examples.
2082
+
2083
+ Bug fixes
2084
+
2085
+ * Support exclusion filters in DRb. (Yann Lugrin)
2086
+ * Fix --example escaping when run over DRb. (Elliot Winkler)
2087
+ * Use standard ANSI codes for color formatting so colors work in a wider set of
2088
+ color schemes.
2089
+
2090
+ ### 2.6.3 / 2011-05-24
2091
+
2092
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.6.2...v2.6.3)
2093
+
2094
+ Bug fixes
2095
+
2096
+ * Explicitly convert exit code to integer, avoiding TypeError when return
2097
+ value of run is IO object proxied by `DRb::DRbObject` (Julian Scheid)
2098
+ * Clarify behavior of `--example` command line option
2099
+ * Build using a rubygems-1.6.2 to avoid downstream yaml parsing error
2100
+
2101
+ ### 2.6.2 / 2011-05-21
2102
+
2103
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.6.1...v2.6.2)
2104
+
2105
+ Bug fixes
2106
+
2107
+ * Warn rather than raise when HOME env var is not defined
2108
+ * Properly merge command-line exclusions with default :if and :unless (joshcooper)
2109
+
2110
+ ### 2.6.1 / 2011-05-19
2111
+
2112
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.6.0...v2.6.1)
2113
+
2114
+ Bug fixes
2115
+
2116
+ * Don't extend nil when filters are nil
2117
+ * `require 'rspec/autorun'` when running rcov.
2118
+
2119
+ ### 2.6.0 / 2011-05-12
2120
+
2121
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.5.1...v2.6.0)
2122
+
2123
+ Enhancements
2124
+
2125
+ * `shared_context` (Damian Nurzynski)
2126
+ * extend groups matching specific metadata with:
2127
+ * method definitions
2128
+ * subject declarations
2129
+ * let/let! declarations
2130
+ * etc (anything you can do in a group)
2131
+ * `its([:key])` works for any subject with #[]. (Peter Jaros)
2132
+ * `treat_symbols_as_metadata_keys_with_true_values` (Myron Marston)
2133
+ * Print a deprecation warning when you configure RSpec after defining an
2134
+ example. All configuration should happen before any examples are defined.
2135
+ (Myron Marston)
2136
+ * Pass the exit status of a DRb run to the invoking process. This causes specs
2137
+ run via DRb to not just return true or false. (Ilkka Laukkanen)
2138
+ * Refactoring of `ConfigurationOptions#parse_options` (Rodrigo Rosenfeld Rosas)
2139
+ * Report excluded filters in runner output (tip from andyl)
2140
+ * Clean up messages for filters/tags.
2141
+ * Restore --pattern/-P command line option from rspec-1
2142
+ * Support false as well as true in config.full_backtrace= (Andreas Tolf
2143
+ Tolfsen)
2144
+
2145
+ Bug fixes
2146
+
2147
+ * Don't stumble over an exception without a message (Hans Hasselberg)
2148
+ * Remove non-ascii characters from comments that were choking rcov (Geoffrey
2149
+ Byers)
2150
+ * Fixed backtrace so it doesn't include lines from before the autorun at_exit
2151
+ hook (Myron Marston)
2152
+ * Include RSpec::Matchers when first example group is defined, rather than just
2153
+ before running the examples. This works around an obscure bug in ruby 1.9
2154
+ that can cause infinite recursion. (Myron Marston)
2155
+ * Don't send `example_group_[started|finished]` to formatters for empty groups.
2156
+ * Get specs passing on jruby (Sidu Ponnappa)
2157
+ * Fix bug where mixing nested groups and outer-level examples gave
2158
+ unpredictable :line_number behavior (Artur Małecki)
2159
+ * Regexp.escape the argument to --example (tip from Elliot Winkler)
2160
+ * Correctly pass/fail pending block with message expectations
2161
+ * CommandLine returns exit status (0/1) instead of true/false
2162
+ * Create path to formatter output file if it doesn't exist (marekj).
2163
+
2164
+
2165
+ ### 2.5.1 / 2011-02-06
2166
+
2167
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.5.0...v2.5.1)
2168
+
2169
+ NOTE: this release breaks compatibility with rspec/autotest/bundler
2170
+ integration, but does so in order to greatly simplify it.
2171
+
2172
+ With this release, if you want the generated autotest command to include
2173
+ 'bundle exec', require Autotest's bundler plugin in a .autotest file in the
2174
+ project's root directory or in your home directory:
2175
+
2176
+ require "autotest/bundler"
2177
+
2178
+ Now you can just type 'autotest' on the command line and it will work as you expect.
2179
+
2180
+ If you don't want 'bundle exec', there is nothing you have to do.
2181
+
2182
+ ### 2.5.0 / 2011-02-05
2183
+
2184
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.4.0...v2.5.0)
2185
+
2186
+ Enhancements
2187
+
2188
+ * Autotest::Rspec2 parses command line args passed to autotest after '--'
2189
+ * --skip-bundler option for autotest command
2190
+ * Autotest regexp fixes (Jon Rowe)
2191
+ * Add filters to html and textmate formatters (Daniel Quimper)
2192
+ * Explicit passing of block (need for JRuby 1.6) (John Firebaugh)
2193
+
2194
+ Bug fixes
2195
+
2196
+ * fix dom IDs in HTML formatter (Brian Faherty)
2197
+ * fix bug with --drb + formatters when not running in drb
2198
+ * include --tag options in drb args (monocle)
2199
+ * fix regression so now SPEC_OPTS take precedence over CLI options again (Roman
2200
+ Chernyatchik)
2201
+ * only call its(:attribute) once (failing example from Brian Dunn)
2202
+ * fix bizarre bug where rspec would hang after String.alias :to_int :to_i
2203
+ (Damian Nurzynski)
2204
+
2205
+ Deprecations
2206
+
2207
+ * implicit inclusion of 'bundle exec' when Gemfile present (use autotest's
2208
+ bundler plugin instead)
2209
+
2210
+ ### 2.4.0 / 2011-01-02
2211
+
2212
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.3.1...v2.4.0)
2213
+
2214
+ Enhancements
2215
+
2216
+ * start the debugger on -d so the stack trace is visible when it stops
2217
+ (Clifford Heath)
2218
+ * apply hook filtering to examples as well as groups (Myron Marston)
2219
+ * support multiple formatters, each with their own output
2220
+ * show exception classes in failure messages unless they come from RSpec
2221
+ matchers or message expectations
2222
+ * before(:all) { pending } sets all examples to pending
2223
+
2224
+ Bug fixes
2225
+
2226
+ * fix bug due to change in behavior of reject in Ruby 1.9.3-dev (Shota
2227
+ Fukumori)
2228
+ * fix bug when running in jruby: be explicit about passing block to super (John
2229
+ Firebaugh)
2230
+ * rake task doesn't choke on paths with quotes (Janmejay Singh)
2231
+ * restore --options option from rspec-1
2232
+ * require 'ostruct' to fix bug with its([key]) (Kim Burgestrand)
2233
+ * --configure option generates .rspec file instead of autotest/discover.rb
2234
+
2235
+ ### 2.3.1 / 2010-12-16
2236
+
2237
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.3.0...v2.3.1)
2238
+
2239
+ Bug fixes
2240
+
2241
+ * send debugger warning message to $stdout if RSpec.configuration.error_stream
2242
+ has not been defined yet.
2243
+ * HTML Formatter _finally_ properly displays nested groups (Jarmo Pertman)
2244
+ * eliminate some warnings when running RSpec's own suite (Jarmo Pertman)
2245
+
2246
+ ### 2.3.0 / 2010-12-12
2247
+
2248
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.2.1...v2.3.0)
2249
+
2250
+ Enhancements
2251
+
2252
+ * tell autotest to use "rspec2" if it sees a .rspec file in the project's root
2253
+ directory
2254
+ * replaces the need for ./autotest/discover.rb, which will not work with
2255
+ all versions of ZenTest and/or autotest
2256
+ * config.expect_with
2257
+ * :rspec # => rspec/expectations
2258
+ * :stdlib # => test/unit/assertions
2259
+ * :rspec, :stdlib # => both
2260
+
2261
+ Bug fixes
2262
+
2263
+ * fix dev Gemfile to work on non-mac-os machines (Lake Denman)
2264
+ * ensure explicit subject is only eval'd once (Laszlo Bacsi)
2265
+
2266
+ ### 2.2.1 / 2010-11-28
2267
+
2268
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.2.0...v2.2.1)
2269
+
2270
+ Bug fixes
2271
+
2272
+ * alias_method instead of override Kernel#method_missing (John Wilger)
2273
+ * changed --autotest to --tty in generated command (MIKAMI Yoshiyuki)
2274
+ * revert change to debugger (had introduced conflict with Rails)
2275
+ * also restored --debugger/-debug option
2276
+
2277
+ ### 2.2.0 / 2010-11-28
2278
+
2279
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.1.0...v2.2.0)
2280
+
2281
+ Deprecations/changes
2282
+
2283
+ * --debug/-d on command line is deprecated and now has no effect
2284
+ * win32console is now ignored; Windows users must use ANSICON for color support
2285
+ (Bosko Ivanisevic)
2286
+
2287
+ Enhancements
2288
+
2289
+ * When developing locally rspec-core now works with the rspec-dev setup or your
2290
+ local gems
2291
+ * Raise exception with helpful message when rspec-1 is loaded alongside rspec-2
2292
+ (Justin Ko)
2293
+ * debugger statements _just work_ as long as ruby-debug is installed
2294
+ * otherwise you get warned, but not fired
2295
+ * Expose example.metadata in around hooks
2296
+ * Performance improvments (much faster now)
2297
+
2298
+ Bug fixes
2299
+
2300
+ * Make sure --fail-fast makes it across drb
2301
+ * Pass -Ilib:spec to rcov
2302
+
2303
+ ### 2.1.0 / 2010-11-07
2304
+
2305
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.0.1...v2.1.0)
2306
+
2307
+ Enhancments
2308
+
2309
+ * Add skip_bundler option to rake task to tell rake task to ignore the presence
2310
+ of a Gemfile (jfelchner)
2311
+ * Add gemfile option to rake task to tell rake task what Gemfile to look for
2312
+ (defaults to 'Gemfile')
2313
+ * Allow passing caller trace into Metadata to support extensions (Glenn
2314
+ Vanderburg)
2315
+ * Add deprecation warning for Spec::Runner.configure to aid upgrade from
2316
+ RSpec-1
2317
+ * Add deprecated Spec::Rake::SpecTask to aid upgrade from RSpec-1
2318
+ * Add 'autospec' command with helpful message to aid upgrade from RSpec-1
2319
+ * Add support for filtering with tags on CLI (Lailson Bandeira)
2320
+ * Add a helpful message about RUBYOPT when require fails in bin/rspec (slyphon)
2321
+ * Add "-Ilib" to the default rcov options (Tianyi Cui)
2322
+ * Make the expectation framework configurable (default rspec, of course)
2323
+ (Justin Ko)
2324
+ * Add 'pending' to be conditional (Myron Marston)
2325
+ * Add explicit support for :if and :unless as metadata keys for conditional run
2326
+ of examples (Myron Marston)
2327
+ * Add --fail-fast command line option (Jeff Kreeftmeijer)
2328
+
2329
+ Bug fixes
2330
+
2331
+ * Eliminate stack overflow with "subject { self }"
2332
+ * Require 'rspec/core' in the Raketask (ensures it required when running rcov)
2333
+
2334
+ ### 2.0.1 / 2010-10-18
2335
+
2336
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.0.0...v2.0.1)
2337
+
2338
+ Bug fixes
2339
+
2340
+ * Restore color when using spork + autotest
2341
+ * Pending examples without docstrings render the correct message (Josep M.
2342
+ Bach)
2343
+ * Fixed bug where a failure in a spec file ending in anything but _spec.rb
2344
+ would fail in a confusing way.
2345
+ * Support backtrace lines from erb templates in html formatter (Alex Crichton)
2346
+
2347
+ ### 2.0.0 / 2010-10-10
2348
+
2349
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.0.0.rc...v2.0.0)
2350
+
2351
+ RSpec-1 compatibility
2352
+
2353
+ * Rake task uses ENV["SPEC"] as file list if present
2354
+
2355
+ Bug fixes
2356
+
2357
+ * Bug Fix: optparse --out foo.txt (Leonardo Bessa)
2358
+ * Suppress color codes for non-tty output (except autotest)
2359
+
2360
+ ### 2.0.0.rc / 2010-10-05
2361
+
2362
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.0.0.beta.22...v2.0.0.rc)
2363
+
2364
+ Enhancements
2365
+
2366
+ * implicitly require unknown formatters so you don't have to require the file
2367
+ explicitly on the command line (Michael Grosser)
2368
+ * add --out/-o option to assign output target
2369
+ * added fail_fast configuration option to abort on first failure
2370
+ * support a Hash subject (its([:key]) { should == value }) (Josep M. Bach)
2371
+
2372
+ Bug fixes
2373
+
2374
+ * Explicitly require rspec version to fix broken rdoc task (Hans de Graaff)
2375
+ * Ignore backtrace lines that come from other languages, like Java or
2376
+ Javascript (Charles Lowell)
2377
+ * Rake task now does what is expected when setting (or not setting)
2378
+ fail_on_error and verbose
2379
+ * Fix bug in which before/after(:all) hooks were running on excluded nested
2380
+ groups (Myron Marston)
2381
+ * Fix before(:all) error handling so that it fails examples in nested groups,
2382
+ too (Myron Marston)
2383
+
2384
+ ### 2.0.0.beta.22 / 2010-09-12
2385
+
2386
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.0.0.beta.20...v2.0.0.beta.22)
2387
+
2388
+ Enhancements
2389
+
2390
+ * removed at_exit hook
2391
+ * CTRL-C stops the run (almost) immediately
2392
+ * first it cleans things up by running the appropriate after(:all) and
2393
+ after(:suite) hooks
2394
+ * then it reports on any examples that have already run
2395
+ * cleaned up rake task
2396
+ * generate correct task under variety of conditions
2397
+ * options are more consistent
2398
+ * deprecated redundant options
2399
+ * run 'bundle exec autotest' when Gemfile is present
2400
+ * support ERB in .rspec options files (Justin Ko)
2401
+ * depend on bundler for development tasks (Myron Marston)
2402
+ * add example_group_finished to formatters and reporter (Roman Chernyatchik)
2403
+
2404
+ Bug fixes
2405
+
2406
+ * support paths with spaces when using autotest (Andreas Neuhaus)
2407
+ * fix module_exec with ruby 1.8.6 (Myron Marston)
2408
+ * remove context method from top-level
2409
+ * was conflicting with irb, for example
2410
+ * errors in before(:all) are now reported correctly (Chad Humphries)
2411
+
2412
+ Removals
2413
+
2414
+ * removed -o --options-file command line option
2415
+ * use ./.rspec and ~/.rspec