guesswhat 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (446) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +9 -0
  3. data/CODE_OF_CONDUCT.md +49 -0
  4. data/Gemfile +4 -0
  5. data/README.md +36 -0
  6. data/Rakefile +4 -0
  7. data/bin/console +14 -0
  8. data/bin/setup +8 -0
  9. data/guesswhat.gemspec +25 -0
  10. data/lib/guesswhat/version.rb +3 -0
  11. data/lib/guesswhat.rb +5 -0
  12. data/tasks/rspec.rake +3 -0
  13. data/vendor/bundle/bin/console +23 -0
  14. data/vendor/bundle/bin/htmldiff +25 -0
  15. data/vendor/bundle/bin/ldiff +25 -0
  16. data/vendor/bundle/bin/rake +23 -0
  17. data/vendor/bundle/bin/rspec +23 -0
  18. data/vendor/bundle/bin/setup +23 -0
  19. data/vendor/bundle/cache/diff-lcs-1.2.5.gem +0 -0
  20. data/vendor/bundle/cache/rake-10.5.0.gem +0 -0
  21. data/vendor/bundle/cache/rspec-3.4.0.gem +0 -0
  22. data/vendor/bundle/cache/rspec-core-3.4.4.gem +0 -0
  23. data/vendor/bundle/cache/rspec-expectations-3.4.0.gem +0 -0
  24. data/vendor/bundle/cache/rspec-mocks-3.4.1.gem +0 -0
  25. data/vendor/bundle/cache/rspec-support-3.4.1.gem +0 -0
  26. data/vendor/bundle/gems/diff-lcs-1.2.5/.autotest +3 -0
  27. data/vendor/bundle/gems/diff-lcs-1.2.5/.gemtest +0 -0
  28. data/vendor/bundle/gems/diff-lcs-1.2.5/.hoerc +2 -0
  29. data/vendor/bundle/gems/diff-lcs-1.2.5/.rspec +2 -0
  30. data/vendor/bundle/gems/diff-lcs-1.2.5/.travis.yml +22 -0
  31. data/vendor/bundle/gems/diff-lcs-1.2.5/Contributing.rdoc +64 -0
  32. data/vendor/bundle/gems/diff-lcs-1.2.5/Gemfile +20 -0
  33. data/vendor/bundle/gems/diff-lcs-1.2.5/History.rdoc +152 -0
  34. data/vendor/bundle/gems/diff-lcs-1.2.5/License.rdoc +39 -0
  35. data/vendor/bundle/gems/diff-lcs-1.2.5/Manifest.txt +38 -0
  36. data/vendor/bundle/gems/diff-lcs-1.2.5/README.rdoc +85 -0
  37. data/vendor/bundle/gems/diff-lcs-1.2.5/Rakefile +41 -0
  38. data/vendor/bundle/gems/diff-lcs-1.2.5/autotest/discover.rb +1 -0
  39. data/vendor/bundle/gems/diff-lcs-1.2.5/bin/htmldiff +32 -0
  40. data/vendor/bundle/gems/diff-lcs-1.2.5/bin/ldiff +6 -0
  41. data/vendor/bundle/gems/diff-lcs-1.2.5/docs/COPYING.txt +339 -0
  42. data/vendor/bundle/gems/diff-lcs-1.2.5/docs/artistic.txt +127 -0
  43. data/vendor/bundle/gems/diff-lcs-1.2.5/lib/diff/lcs/array.rb +7 -0
  44. data/vendor/bundle/gems/diff-lcs-1.2.5/lib/diff/lcs/block.rb +37 -0
  45. data/vendor/bundle/gems/diff-lcs-1.2.5/lib/diff/lcs/callbacks.rb +322 -0
  46. data/vendor/bundle/gems/diff-lcs-1.2.5/lib/diff/lcs/change.rb +177 -0
  47. data/vendor/bundle/gems/diff-lcs-1.2.5/lib/diff/lcs/htmldiff.rb +149 -0
  48. data/vendor/bundle/gems/diff-lcs-1.2.5/lib/diff/lcs/hunk.rb +276 -0
  49. data/vendor/bundle/gems/diff-lcs-1.2.5/lib/diff/lcs/internals.rb +301 -0
  50. data/vendor/bundle/gems/diff-lcs-1.2.5/lib/diff/lcs/ldiff.rb +195 -0
  51. data/vendor/bundle/gems/diff-lcs-1.2.5/lib/diff/lcs/string.rb +5 -0
  52. data/vendor/bundle/gems/diff-lcs-1.2.5/lib/diff/lcs.rb +805 -0
  53. data/vendor/bundle/gems/diff-lcs-1.2.5/lib/diff-lcs.rb +3 -0
  54. data/vendor/bundle/gems/diff-lcs-1.2.5/spec/change_spec.rb +65 -0
  55. data/vendor/bundle/gems/diff-lcs-1.2.5/spec/diff_spec.rb +47 -0
  56. data/vendor/bundle/gems/diff-lcs-1.2.5/spec/hunk_spec.rb +72 -0
  57. data/vendor/bundle/gems/diff-lcs-1.2.5/spec/issues_spec.rb +24 -0
  58. data/vendor/bundle/gems/diff-lcs-1.2.5/spec/lcs_spec.rb +54 -0
  59. data/vendor/bundle/gems/diff-lcs-1.2.5/spec/patch_spec.rb +414 -0
  60. data/vendor/bundle/gems/diff-lcs-1.2.5/spec/sdiff_spec.rb +214 -0
  61. data/vendor/bundle/gems/diff-lcs-1.2.5/spec/spec_helper.rb +290 -0
  62. data/vendor/bundle/gems/diff-lcs-1.2.5/spec/traverse_balanced_spec.rb +310 -0
  63. data/vendor/bundle/gems/diff-lcs-1.2.5/spec/traverse_sequences_spec.rb +139 -0
  64. data/vendor/bundle/gems/rake-10.5.0/.autotest +7 -0
  65. data/vendor/bundle/gems/rake-10.5.0/.rubocop.yml +27 -0
  66. data/vendor/bundle/gems/rake-10.5.0/.togglerc +7 -0
  67. data/vendor/bundle/gems/rake-10.5.0/CONTRIBUTING.rdoc +38 -0
  68. data/vendor/bundle/gems/rake-10.5.0/History.rdoc +659 -0
  69. data/vendor/bundle/gems/rake-10.5.0/MIT-LICENSE +21 -0
  70. data/vendor/bundle/gems/rake-10.5.0/Manifest.txt +166 -0
  71. data/vendor/bundle/gems/rake-10.5.0/README.rdoc +139 -0
  72. data/vendor/bundle/gems/rake-10.5.0/Rakefile +81 -0
  73. data/vendor/bundle/gems/rake-10.5.0/bin/rake +33 -0
  74. data/vendor/bundle/gems/rake-10.5.0/doc/command_line_usage.rdoc +158 -0
  75. data/vendor/bundle/gems/rake-10.5.0/doc/example/Rakefile1 +38 -0
  76. data/vendor/bundle/gems/rake-10.5.0/doc/example/Rakefile2 +35 -0
  77. data/vendor/bundle/gems/rake-10.5.0/doc/example/a.c +6 -0
  78. data/vendor/bundle/gems/rake-10.5.0/doc/example/b.c +6 -0
  79. data/vendor/bundle/gems/rake-10.5.0/doc/example/main.c +11 -0
  80. data/vendor/bundle/gems/rake-10.5.0/doc/glossary.rdoc +42 -0
  81. data/vendor/bundle/gems/rake-10.5.0/doc/jamis.rb +591 -0
  82. data/vendor/bundle/gems/rake-10.5.0/doc/proto_rake.rdoc +127 -0
  83. data/vendor/bundle/gems/rake-10.5.0/doc/rake.1 +141 -0
  84. data/vendor/bundle/gems/rake-10.5.0/doc/rakefile.rdoc +624 -0
  85. data/vendor/bundle/gems/rake-10.5.0/doc/rational.rdoc +151 -0
  86. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.4.14.rdoc +23 -0
  87. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.4.15.rdoc +35 -0
  88. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.5.0.rdoc +53 -0
  89. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.5.3.rdoc +78 -0
  90. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.5.4.rdoc +46 -0
  91. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.6.0.rdoc +141 -0
  92. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.7.0.rdoc +119 -0
  93. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.7.1.rdoc +59 -0
  94. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.7.2.rdoc +121 -0
  95. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.7.3.rdoc +47 -0
  96. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.8.0.rdoc +114 -0
  97. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.8.2.rdoc +165 -0
  98. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.8.3.rdoc +112 -0
  99. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.8.4.rdoc +147 -0
  100. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.8.5.rdoc +53 -0
  101. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.8.6.rdoc +37 -0
  102. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.8.7.rdoc +55 -0
  103. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.0.rdoc +112 -0
  104. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.1.rdoc +52 -0
  105. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.2.2.rdoc +55 -0
  106. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.2.rdoc +49 -0
  107. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.3.rdoc +102 -0
  108. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.4.rdoc +60 -0
  109. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.5.rdoc +55 -0
  110. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-0.9.6.rdoc +64 -0
  111. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-10.0.0.rdoc +178 -0
  112. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-10.0.1.rdoc +58 -0
  113. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-10.0.2.rdoc +53 -0
  114. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-10.0.3.rdoc +191 -0
  115. data/vendor/bundle/gems/rake-10.5.0/doc/release_notes/rake-10.1.0.rdoc +61 -0
  116. data/vendor/bundle/gems/rake-10.5.0/lib/rake/alt_system.rb +110 -0
  117. data/vendor/bundle/gems/rake-10.5.0/lib/rake/application.rb +790 -0
  118. data/vendor/bundle/gems/rake-10.5.0/lib/rake/backtrace.rb +23 -0
  119. data/vendor/bundle/gems/rake-10.5.0/lib/rake/clean.rb +76 -0
  120. data/vendor/bundle/gems/rake-10.5.0/lib/rake/cloneable.rb +16 -0
  121. data/vendor/bundle/gems/rake-10.5.0/lib/rake/contrib/.document +1 -0
  122. data/vendor/bundle/gems/rake-10.5.0/lib/rake/contrib/compositepublisher.rb +21 -0
  123. data/vendor/bundle/gems/rake-10.5.0/lib/rake/contrib/ftptools.rb +137 -0
  124. data/vendor/bundle/gems/rake-10.5.0/lib/rake/contrib/publisher.rb +81 -0
  125. data/vendor/bundle/gems/rake-10.5.0/lib/rake/contrib/rubyforgepublisher.rb +18 -0
  126. data/vendor/bundle/gems/rake-10.5.0/lib/rake/contrib/sshpublisher.rb +61 -0
  127. data/vendor/bundle/gems/rake-10.5.0/lib/rake/contrib/sys.rb +4 -0
  128. data/vendor/bundle/gems/rake-10.5.0/lib/rake/cpu_counter.rb +125 -0
  129. data/vendor/bundle/gems/rake-10.5.0/lib/rake/default_loader.rb +14 -0
  130. data/vendor/bundle/gems/rake-10.5.0/lib/rake/dsl_definition.rb +201 -0
  131. data/vendor/bundle/gems/rake-10.5.0/lib/rake/early_time.rb +21 -0
  132. data/vendor/bundle/gems/rake-10.5.0/lib/rake/ext/core.rb +25 -0
  133. data/vendor/bundle/gems/rake-10.5.0/lib/rake/ext/module.rb +2 -0
  134. data/vendor/bundle/gems/rake-10.5.0/lib/rake/ext/pathname.rb +25 -0
  135. data/vendor/bundle/gems/rake-10.5.0/lib/rake/ext/string.rb +175 -0
  136. data/vendor/bundle/gems/rake-10.5.0/lib/rake/ext/time.rb +18 -0
  137. data/vendor/bundle/gems/rake-10.5.0/lib/rake/file_creation_task.rb +24 -0
  138. data/vendor/bundle/gems/rake-10.5.0/lib/rake/file_list.rb +428 -0
  139. data/vendor/bundle/gems/rake-10.5.0/lib/rake/file_task.rb +46 -0
  140. data/vendor/bundle/gems/rake-10.5.0/lib/rake/file_utils.rb +128 -0
  141. data/vendor/bundle/gems/rake-10.5.0/lib/rake/file_utils_ext.rb +144 -0
  142. data/vendor/bundle/gems/rake-10.5.0/lib/rake/gempackagetask.rb +4 -0
  143. data/vendor/bundle/gems/rake-10.5.0/lib/rake/invocation_chain.rb +56 -0
  144. data/vendor/bundle/gems/rake-10.5.0/lib/rake/invocation_exception_mixin.rb +16 -0
  145. data/vendor/bundle/gems/rake-10.5.0/lib/rake/late_time.rb +17 -0
  146. data/vendor/bundle/gems/rake-10.5.0/lib/rake/linked_list.rb +103 -0
  147. data/vendor/bundle/gems/rake-10.5.0/lib/rake/loaders/makefile.rb +53 -0
  148. data/vendor/bundle/gems/rake-10.5.0/lib/rake/multi_task.rb +13 -0
  149. data/vendor/bundle/gems/rake-10.5.0/lib/rake/name_space.rb +38 -0
  150. data/vendor/bundle/gems/rake-10.5.0/lib/rake/packagetask.rb +199 -0
  151. data/vendor/bundle/gems/rake-10.5.0/lib/rake/pathmap.rb +3 -0
  152. data/vendor/bundle/gems/rake-10.5.0/lib/rake/phony.rb +15 -0
  153. data/vendor/bundle/gems/rake-10.5.0/lib/rake/private_reader.rb +20 -0
  154. data/vendor/bundle/gems/rake-10.5.0/lib/rake/promise.rb +99 -0
  155. data/vendor/bundle/gems/rake-10.5.0/lib/rake/pseudo_status.rb +29 -0
  156. data/vendor/bundle/gems/rake-10.5.0/lib/rake/rake_module.rb +38 -0
  157. data/vendor/bundle/gems/rake-10.5.0/lib/rake/rake_test_loader.rb +22 -0
  158. data/vendor/bundle/gems/rake-10.5.0/lib/rake/rdoctask.rb +4 -0
  159. data/vendor/bundle/gems/rake-10.5.0/lib/rake/ruby182_test_unit_fix.rb +29 -0
  160. data/vendor/bundle/gems/rake-10.5.0/lib/rake/rule_recursion_overflow_error.rb +20 -0
  161. data/vendor/bundle/gems/rake-10.5.0/lib/rake/runtest.rb +27 -0
  162. data/vendor/bundle/gems/rake-10.5.0/lib/rake/scope.rb +42 -0
  163. data/vendor/bundle/gems/rake-10.5.0/lib/rake/task.rb +383 -0
  164. data/vendor/bundle/gems/rake-10.5.0/lib/rake/task_argument_error.rb +7 -0
  165. data/vendor/bundle/gems/rake-10.5.0/lib/rake/task_arguments.rb +98 -0
  166. data/vendor/bundle/gems/rake-10.5.0/lib/rake/task_manager.rb +307 -0
  167. data/vendor/bundle/gems/rake-10.5.0/lib/rake/tasklib.rb +24 -0
  168. data/vendor/bundle/gems/rake-10.5.0/lib/rake/testtask.rb +213 -0
  169. data/vendor/bundle/gems/rake-10.5.0/lib/rake/thread_history_display.rb +48 -0
  170. data/vendor/bundle/gems/rake-10.5.0/lib/rake/thread_pool.rb +164 -0
  171. data/vendor/bundle/gems/rake-10.5.0/lib/rake/trace_output.rb +22 -0
  172. data/vendor/bundle/gems/rake-10.5.0/lib/rake/version.rb +7 -0
  173. data/vendor/bundle/gems/rake-10.5.0/lib/rake/win32.rb +56 -0
  174. data/vendor/bundle/gems/rake-10.5.0/lib/rake.rb +79 -0
  175. data/vendor/bundle/gems/rake-10.5.0/rakelib/publish.rake +20 -0
  176. data/vendor/bundle/gems/rake-10.5.0/rakelib/test_times.rake +25 -0
  177. data/vendor/bundle/gems/rake-10.5.0/test/file_creation.rb +34 -0
  178. data/vendor/bundle/gems/rake-10.5.0/test/helper.rb +129 -0
  179. data/vendor/bundle/gems/rake-10.5.0/test/support/rakefile_definitions.rb +478 -0
  180. data/vendor/bundle/gems/rake-10.5.0/test/support/ruby_runner.rb +34 -0
  181. data/vendor/bundle/gems/rake-10.5.0/test/test_private_reader.rb +42 -0
  182. data/vendor/bundle/gems/rake-10.5.0/test/test_rake.rb +40 -0
  183. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_application.rb +643 -0
  184. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_application_options.rb +468 -0
  185. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_backtrace.rb +119 -0
  186. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_clean.rb +61 -0
  187. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_cpu_counter.rb +68 -0
  188. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_definitions.rb +84 -0
  189. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_directory_task.rb +76 -0
  190. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_dsl.rb +40 -0
  191. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_early_time.rb +31 -0
  192. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_extension.rb +59 -0
  193. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_file_creation_task.rb +56 -0
  194. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_file_list.rb +670 -0
  195. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_file_list_path_map.rb +8 -0
  196. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_file_task.rb +197 -0
  197. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_file_utils.rb +314 -0
  198. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_ftp_file.rb +74 -0
  199. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_functional.rb +482 -0
  200. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_invocation_chain.rb +64 -0
  201. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_late_time.rb +18 -0
  202. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_linked_list.rb +84 -0
  203. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_makefile_loader.rb +46 -0
  204. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_multi_task.rb +64 -0
  205. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_name_space.rb +57 -0
  206. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_package_task.rb +79 -0
  207. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_path_map.rb +168 -0
  208. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_path_map_explode.rb +34 -0
  209. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_path_map_partial.rb +18 -0
  210. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_pathname_extensions.rb +15 -0
  211. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_pseudo_status.rb +21 -0
  212. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_rake_test_loader.rb +20 -0
  213. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_reduce_compat.rb +26 -0
  214. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_require.rb +40 -0
  215. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_rules.rb +388 -0
  216. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_scope.rb +44 -0
  217. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_task.rb +393 -0
  218. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_task_argument_parsing.rb +119 -0
  219. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_task_arguments.rb +127 -0
  220. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_task_lib.rb +9 -0
  221. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_task_manager.rb +178 -0
  222. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_task_manager_argument_resolution.rb +19 -0
  223. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_task_with_arguments.rb +172 -0
  224. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_test_task.rb +146 -0
  225. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_thread_pool.rb +145 -0
  226. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_top_level_functions.rb +71 -0
  227. data/vendor/bundle/gems/rake-10.5.0/test/test_rake_win32.rb +72 -0
  228. data/vendor/bundle/gems/rake-10.5.0/test/test_thread_history_display.rb +101 -0
  229. data/vendor/bundle/gems/rake-10.5.0/test/test_trace_output.rb +52 -0
  230. data/vendor/bundle/gems/rspec-3.4.0/LICENSE.md +27 -0
  231. data/vendor/bundle/gems/rspec-3.4.0/README.md +39 -0
  232. data/vendor/bundle/gems/rspec-3.4.0/lib/rspec/version.rb +5 -0
  233. data/vendor/bundle/gems/rspec-3.4.0/lib/rspec.rb +3 -0
  234. data/vendor/bundle/gems/rspec-core-3.4.4/.document +5 -0
  235. data/vendor/bundle/gems/rspec-core-3.4.4/.yardopts +8 -0
  236. data/vendor/bundle/gems/rspec-core-3.4.4/Changelog.md +1972 -0
  237. data/vendor/bundle/gems/rspec-core-3.4.4/LICENSE.md +26 -0
  238. data/vendor/bundle/gems/rspec-core-3.4.4/README.md +384 -0
  239. data/vendor/bundle/gems/rspec-core-3.4.4/exe/rspec +4 -0
  240. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/autorun.rb +3 -0
  241. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/backtrace_formatter.rb +65 -0
  242. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/bisect/coordinator.rb +66 -0
  243. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/bisect/example_minimizer.rb +169 -0
  244. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/bisect/runner.rb +139 -0
  245. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/bisect/server.rb +61 -0
  246. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/configuration.rb +1869 -0
  247. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/configuration_options.rb +191 -0
  248. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/drb.rb +111 -0
  249. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/dsl.rb +96 -0
  250. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/example.rb +631 -0
  251. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/example_group.rb +816 -0
  252. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/example_status_persister.rb +235 -0
  253. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/filter_manager.rb +231 -0
  254. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/flat_map.rb +20 -0
  255. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/formatters/base_formatter.rb +70 -0
  256. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/formatters/base_text_formatter.rb +77 -0
  257. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/formatters/bisect_formatter.rb +68 -0
  258. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/formatters/bisect_progress_formatter.rb +144 -0
  259. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/formatters/console_codes.rb +65 -0
  260. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/formatters/deprecation_formatter.rb +223 -0
  261. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/formatters/documentation_formatter.rb +70 -0
  262. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/formatters/exception_presenter.rb +482 -0
  263. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/formatters/fallback_message_formatter.rb +28 -0
  264. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/formatters/helpers.rb +109 -0
  265. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/formatters/html_formatter.rb +151 -0
  266. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/formatters/html_printer.rb +414 -0
  267. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/formatters/html_snippet_extractor.rb +116 -0
  268. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/formatters/json_formatter.rb +96 -0
  269. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/formatters/profile_formatter.rb +68 -0
  270. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/formatters/progress_formatter.rb +28 -0
  271. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/formatters/protocol.rb +181 -0
  272. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/formatters/snippet_extractor.rb +136 -0
  273. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/formatters.rb +255 -0
  274. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/hooks.rb +638 -0
  275. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/memoized_helpers.rb +532 -0
  276. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/metadata.rb +498 -0
  277. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/metadata_filter.rb +231 -0
  278. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/minitest_assertions_adapter.rb +31 -0
  279. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/mocking_adapters/flexmock.rb +31 -0
  280. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/mocking_adapters/mocha.rb +57 -0
  281. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/mocking_adapters/null.rb +14 -0
  282. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/mocking_adapters/rr.rb +31 -0
  283. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/mocking_adapters/rspec.rb +32 -0
  284. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/notifications.rb +499 -0
  285. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/option_parser.rb +319 -0
  286. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/ordering.rb +158 -0
  287. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/pending.rb +165 -0
  288. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/profiler.rb +32 -0
  289. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/project_initializer/.rspec +2 -0
  290. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/project_initializer/spec/spec_helper.rb +96 -0
  291. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/project_initializer.rb +48 -0
  292. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/rake_task.rb +167 -0
  293. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/reporter.rb +236 -0
  294. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/ruby_project.rb +53 -0
  295. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/runner.rb +183 -0
  296. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/sandbox.rb +37 -0
  297. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/set.rb +49 -0
  298. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/shared_context.rb +55 -0
  299. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/shared_example_group.rb +212 -0
  300. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/shell_escape.rb +49 -0
  301. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/source/location.rb +13 -0
  302. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/source/node.rb +93 -0
  303. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/source/syntax_highlighter.rb +71 -0
  304. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/source/token.rb +86 -0
  305. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/source.rb +76 -0
  306. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/test_unit_assertions_adapter.rb +30 -0
  307. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/version.rb +9 -0
  308. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/warnings.rb +40 -0
  309. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core/world.rb +213 -0
  310. data/vendor/bundle/gems/rspec-core-3.4.4/lib/rspec/core.rb +181 -0
  311. data/vendor/bundle/gems/rspec-expectations-3.4.0/.document +5 -0
  312. data/vendor/bundle/gems/rspec-expectations-3.4.0/.yardopts +6 -0
  313. data/vendor/bundle/gems/rspec-expectations-3.4.0/Changelog.md +979 -0
  314. data/vendor/bundle/gems/rspec-expectations-3.4.0/LICENSE.md +25 -0
  315. data/vendor/bundle/gems/rspec-expectations-3.4.0/README.md +303 -0
  316. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/expectations/configuration.rb +164 -0
  317. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/expectations/expectation_target.rb +113 -0
  318. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/expectations/fail_with.rb +31 -0
  319. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/expectations/failure_aggregator.rb +194 -0
  320. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/expectations/handler.rb +170 -0
  321. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/expectations/minitest_integration.rb +31 -0
  322. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/expectations/syntax.rb +132 -0
  323. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/expectations/version.rb +8 -0
  324. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/expectations.rb +81 -0
  325. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/aliased_matcher.rb +116 -0
  326. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/all.rb +85 -0
  327. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/base_matcher.rb +181 -0
  328. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/be.rb +285 -0
  329. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/be_between.rb +77 -0
  330. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/be_instance_of.rb +22 -0
  331. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/be_kind_of.rb +16 -0
  332. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/be_within.rb +72 -0
  333. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/change.rb +354 -0
  334. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/compound.rb +272 -0
  335. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/contain_exactly.rb +286 -0
  336. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/cover.rb +24 -0
  337. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/eq.rb +40 -0
  338. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/eql.rb +34 -0
  339. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/equal.rb +81 -0
  340. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/exist.rb +86 -0
  341. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/has.rb +103 -0
  342. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/have_attributes.rb +114 -0
  343. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/include.rb +130 -0
  344. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/match.rb +106 -0
  345. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/operators.rb +128 -0
  346. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/output.rb +200 -0
  347. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/raise_error.rb +228 -0
  348. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/respond_to.rb +90 -0
  349. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/satisfy.rb +37 -0
  350. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/start_or_end_with.rb +94 -0
  351. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/throw_symbol.rb +132 -0
  352. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in/yield.rb +419 -0
  353. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/built_in.rb +52 -0
  354. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/composable.rb +185 -0
  355. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/dsl.rb +453 -0
  356. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/english_phrasing.rb +42 -0
  357. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/expecteds_for_multiple_diffs.rb +73 -0
  358. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/fail_matchers.rb +42 -0
  359. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/generated_descriptions.rb +42 -0
  360. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/matcher_delegator.rb +35 -0
  361. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers/matcher_protocol.rb +99 -0
  362. data/vendor/bundle/gems/rspec-expectations-3.4.0/lib/rspec/matchers.rb +1037 -0
  363. data/vendor/bundle/gems/rspec-mocks-3.4.1/.document +5 -0
  364. data/vendor/bundle/gems/rspec-mocks-3.4.1/.yardopts +6 -0
  365. data/vendor/bundle/gems/rspec-mocks-3.4.1/Changelog.md +991 -0
  366. data/vendor/bundle/gems/rspec-mocks-3.4.1/LICENSE.md +25 -0
  367. data/vendor/bundle/gems/rspec-mocks-3.4.1/README.md +445 -0
  368. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/any_instance/chain.rb +110 -0
  369. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/any_instance/error_generator.rb +31 -0
  370. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/any_instance/expect_chain_chain.rb +35 -0
  371. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/any_instance/expectation_chain.rb +48 -0
  372. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/any_instance/message_chains.rb +83 -0
  373. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/any_instance/proxy.rb +116 -0
  374. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/any_instance/recorder.rb +268 -0
  375. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/any_instance/stub_chain.rb +46 -0
  376. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/any_instance/stub_chain_chain.rb +27 -0
  377. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/any_instance.rb +11 -0
  378. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/argument_list_matcher.rb +100 -0
  379. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/argument_matchers.rb +320 -0
  380. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/configuration.rb +205 -0
  381. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/error_generator.rb +367 -0
  382. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/example_methods.rb +422 -0
  383. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/instance_method_stasher.rb +135 -0
  384. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/marshal_extension.rb +41 -0
  385. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/matchers/expectation_customization.rb +20 -0
  386. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/matchers/have_received.rb +128 -0
  387. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/matchers/receive.rb +130 -0
  388. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/matchers/receive_message_chain.rb +80 -0
  389. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/matchers/receive_messages.rb +75 -0
  390. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/message_chain.rb +87 -0
  391. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/message_expectation.rb +717 -0
  392. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/method_double.rb +287 -0
  393. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/method_reference.rb +192 -0
  394. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/mutate_const.rb +335 -0
  395. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/object_reference.rb +149 -0
  396. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/order_group.rb +81 -0
  397. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/proxy.rb +484 -0
  398. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/space.rb +238 -0
  399. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/standalone.rb +3 -0
  400. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/syntax.rb +325 -0
  401. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/targets.rb +97 -0
  402. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/test_double.rb +170 -0
  403. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/verifying_double.rb +129 -0
  404. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/verifying_message_expectation.rb +54 -0
  405. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/verifying_proxy.rb +213 -0
  406. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks/version.rb +9 -0
  407. data/vendor/bundle/gems/rspec-mocks-3.4.1/lib/rspec/mocks.rb +126 -0
  408. data/vendor/bundle/gems/rspec-support-3.4.1/Changelog.md +151 -0
  409. data/vendor/bundle/gems/rspec-support-3.4.1/LICENSE.md +23 -0
  410. data/vendor/bundle/gems/rspec-support-3.4.1/README.md +40 -0
  411. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/caller_filter.rb +83 -0
  412. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/comparable_version.rb +46 -0
  413. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/differ.rb +215 -0
  414. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/directory_maker.rb +63 -0
  415. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/encoded_string.rb +155 -0
  416. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/fuzzy_matcher.rb +48 -0
  417. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/hunk_generator.rb +47 -0
  418. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/matcher_definition.rb +42 -0
  419. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/method_signature_verifier.rb +290 -0
  420. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/mutex.rb +73 -0
  421. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/object_formatter.rb +108 -0
  422. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/recursive_const_methods.rb +76 -0
  423. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/reentrant_mutex.rb +53 -0
  424. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/ruby_features.rb +149 -0
  425. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/spec/deprecation_helpers.rb +64 -0
  426. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/spec/formatting_support.rb +9 -0
  427. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/spec/in_sub_process.rb +52 -0
  428. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/spec/library_wide_checks.rb +152 -0
  429. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/spec/shell_out.rb +71 -0
  430. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/spec/stderr_splitter.rb +63 -0
  431. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/spec/string_matcher.rb +46 -0
  432. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/spec/with_isolated_directory.rb +9 -0
  433. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/spec/with_isolated_stderr.rb +13 -0
  434. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/spec.rb +81 -0
  435. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/version.rb +7 -0
  436. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/version_checker.rb +53 -0
  437. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support/warnings.rb +39 -0
  438. data/vendor/bundle/gems/rspec-support-3.4.1/lib/rspec/support.rb +139 -0
  439. data/vendor/bundle/specifications/diff-lcs-1.2.5.gemspec +68 -0
  440. data/vendor/bundle/specifications/rake-10.5.0.gemspec +43 -0
  441. data/vendor/bundle/specifications/rspec-3.4.0.gemspec +42 -0
  442. data/vendor/bundle/specifications/rspec-core-3.4.4.gemspec +65 -0
  443. data/vendor/bundle/specifications/rspec-expectations-3.4.0.gemspec +50 -0
  444. data/vendor/bundle/specifications/rspec-mocks-3.4.1.gemspec +50 -0
  445. data/vendor/bundle/specifications/rspec-support-3.4.1.gemspec +41 -0
  446. metadata +532 -0
@@ -0,0 +1,1972 @@
1
+ ### Development
2
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.4.4...3-4-maintenance)
3
+
4
+ ### 3.4.4 / 2016-03-09
5
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.4.3...3.4.4)
6
+
7
+ Bug Fixes:
8
+
9
+ * Fix `RSpec::Core::RakeTask` so that it works with Rake 11.
10
+ (Travis Grathwell, #2197)
11
+
12
+ ### 3.4.3 / 2016-02-19
13
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.4.2...3.4.3)
14
+
15
+ Bug Fixes:
16
+
17
+ * Prevent a `TypeError` from occuring when running via the rake task when
18
+ Ruby crashes. (Patrik Wenger, #2161)
19
+ * Only consider example and group declaration lines from a specific file
20
+ when applying line number filtering, instead of considering all
21
+ declaration lines from all spec files. (Myron Marston, #2170)
22
+ * Fix failure snippet extraction so that snippets that contain `do-end` style
23
+ block and end with `end`-only line can be extracted properly.
24
+ (Yuji Nakayama, #2173)
25
+
26
+ ### 3.4.2 / 2016-01-26
27
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.4.1...v3.4.2)
28
+
29
+ Bug Fixes:
30
+
31
+ * Fix `rspec --profile` when an example calls `abort` or `exit`.
32
+ (Bradley Schaefer, #2144)
33
+ * Fix `--drb` so that when no DRb server is running, it prevents
34
+ the DRb connection error from being listed as the cause of all
35
+ expectation failures. (Myron Marston, #2156)
36
+ * Fix syntax highlighter so that it works when the `coderay` gem is
37
+ installed as a rubygem but not already available on your load path
38
+ (as happens when you use bundler). (Myron Marston, #2159)
39
+
40
+ ### 3.4.1 / 2015-11-18
41
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.4.0...v3.4.1)
42
+
43
+ Bug Fixes:
44
+
45
+ * Fix backtrace formatter to handle backtraces that are `nil`.
46
+ (Myron Marston, #2118)
47
+
48
+ ### 3.4.0 / 2015-11-11
49
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.3.2...v3.4.0)
50
+
51
+ Enhancements:
52
+
53
+ * Combine multiple `--pattern` arguments making them equivalent to
54
+ `--pattern=1,2,...,n`. (Jon Rowe, #2002)
55
+ * Improve `inspect` and `to_s` output for `RSpec::Core::Example`
56
+ objects, replacing Ruby's excessively verbose output. (Gavin Miller, #1922)
57
+ * Add `silence_filter_announcements` configuration option.
58
+ (David Raffensperger, #2007)
59
+ * Add optional `example_finished` notification to the reporter protocol for
60
+ when you don't care about the example outcome. (Jon Rowe, #2013)
61
+ * Switch `--bisect` to a recursion-based bisection algorithm rather than
62
+ a permutation-based one. This better handles cases where an example
63
+ depends upon multiple other examples instead of just one and minimizes
64
+ the number of runs necessary to determine that an example set cannot be
65
+ minimized further. (Simon Coffey, #1997)
66
+ * Allow simple filters (e.g. `:symbol` key only) to be triggered by truthey
67
+ values. (Tim Mertens, #2035)
68
+ * Remove unneeded warning about need for `ansicon` on Windows when using
69
+ RSpec's `--color` option. (Ashley Engelund, #2038)
70
+ * Add option to configure RSpec to raise errors when issuing warnings.
71
+ (Jon Rowe, #2052)
72
+ * Append the root `cause` of a failure or error to the printed failure
73
+ output when a `cause` is available. (Adam Magan)
74
+ * Stop rescuing `NoMemoryError`, `SignalExcepetion`, `Interrupt` and
75
+ `SystemExit`. It is dangerous to interfere with these. (Myron Marston, #2063)
76
+ * Add `config.project_source_dirs` setting which RSpec uses to determine
77
+ if a backtrace line comes from your project source or from some
78
+ external library. It defaults to `spec`, `lib` and `app` but can be
79
+ configured differently. (Myron Marston, #2088)
80
+ * Improve failure line detection so that it looks for the failure line
81
+ in any project source directory instead of just in the spec file.
82
+ In addition, if no backtrace lines can be found from a project source
83
+ file, we fall back to displaying the source of the first backtrace
84
+ line. This should virtually eliminate the "Unable to find matching
85
+ line from backtrace" messages. (Myron Marston, #2088)
86
+ * Add support for `:extra_failure_lines` example metadata that will
87
+ be appended to the failure output. (bootstraponline, #2092).
88
+ * Add `RSpec::Core::Example#duplicate_with` to produce new examples
89
+ with cloned metadata. (bootstraponline, #2098)
90
+ * Add `RSpec::Core::Configuration#on_example_group_definition` to register
91
+ hooks to be invoked when example groups are created. (bootstraponline, #2094)
92
+ * Add `add_example` and `remove_example` to `RSpec::Core::ExampleGroup` to
93
+ allow manipulating an example groups examples. (bootstraponline, #2095)
94
+ * Display multiline failure source lines in failure output when Ripper is
95
+ available (MRI >= 1.9.2, and JRuby >= 1.7.5 && < 9.0.0.0.rc1).
96
+ (Yuji Nakayama, #2083)
97
+ * Add `max_displayed_failure_line_count` configuration option
98
+ (defaults to 10). (Yuji Nakayama, #2083)
99
+ * Enhance `fail_fast` option so it can take a number (e.g. `--fail-fast=3`)
100
+ to force the run to abort after the specified number of failures.
101
+ (Jack Scotti, #2065)
102
+ * Syntax highlight the failure snippets in text formatters when `color`
103
+ is enabled and the `coderay` gem is installed on a POSIX system.
104
+ (Myron Marston, #2109)
105
+
106
+ Bug Fixes:
107
+
108
+ * Lock `example_status_persistence_file` when reading from and writing
109
+ to it to prevent race conditions when multiple processes try to use
110
+ it. (Ben Woosley, #2029)
111
+ * Fix regression in 3.3 that caused spec file names with square brackets in
112
+ them (such as `1[]_spec.rb`) to not be loaded properly. (Myron Marston, #2041)
113
+ * Fix output encoding issue caused by ASCII literal on 1.9.3 (Jon Rowe, #2072)
114
+ * Fix requires in `rspec/core/rake_task.rb` to avoid double requires
115
+ seen by some users. (Myron Marston, #2101)
116
+
117
+ ### 3.3.2 / 2015-07-15
118
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.3.1...v3.3.2)
119
+
120
+ Bug Fixes:
121
+
122
+ * Fix formatters to handle exceptions for which `backtrace` returns `nil`.
123
+ (Myron Marston, #2023)
124
+ * Fix duplicate formatter detection so that it allows subclasses of formatters
125
+ to be added. (Sebastián Tello, #2019)
126
+
127
+ ### 3.3.1 / 2015-06-18
128
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.3.0...v3.3.1)
129
+
130
+ Bug Fixes:
131
+
132
+ * Correctly run `before(:suite)` (and friends) in the context of an example
133
+ group instance, thus making the expected RSpec environment available.
134
+ (Jon Rowe, #1986)
135
+
136
+ ### 3.3.0 / 2015-06-12
137
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.2.3...v3.3.0)
138
+
139
+ Enhancements:
140
+
141
+ * Expose the reporter used to run examples via `RSpec::Core::Example#reporter`.
142
+ (Jon Rowe, #1866)
143
+ * Make `RSpec::Core::Reporter#message` a public supported API. (Jon Rowe, #1866)
144
+ * Allow custom formatter events to be published via
145
+ `RSpec::Core::Reporter#publish(event_name, hash_of_attributes)`. (Jon Rowe, #1869)
146
+ * Remove dependency on the standard library `Set` and replace with `RSpec::Core::Set`.
147
+ (Jon Rowe, #1870)
148
+ * Assign a unique id to each example and group so that they can be
149
+ uniquely identified, even for shared examples (and similar situations)
150
+ where the location isn't unique. (Myron Marston, #1884)
151
+ * Use the example id in the rerun command printed for failed examples
152
+ when the location is not unique. (Myron Marston, #1884)
153
+ * Add `config.example_status_persistence_file_path` option, which is
154
+ used to persist the last run status of each example. (Myron Marston, #1888)
155
+ * Add `:last_run_status` metadata to each example, which indicates what
156
+ happened the last time an example ran. (Myron Marston, #1888)
157
+ * Add `--only-failures` CLI option which filters to only the examples
158
+ that failed the last time they ran. (Myron Marston, #1888)
159
+ * Add `--next-failure` CLI option which allows you to repeatedly focus
160
+ on just one of the currently failing examples, then move on to the
161
+ next failure, etc. (Myron Marston, #1888)
162
+ * Make `--order random` ordering stable, so that when you rerun a
163
+ subset with a given seed, the examples will be order consistently
164
+ relative to each other. (Myron Marston, #1908)
165
+ * Set example group constant earlier so errors when evaluating the context
166
+ include the example group name (Myron Marson, #1911)
167
+ * Make `let` and `subject` threadsafe. (Josh Cheek, #1858)
168
+ * Add version information into the JSON formatter. (Mark Swinson, #1883)
169
+ * Add `--bisect` CLI option, which will repeatedly run your suite in
170
+ order to isolate the failures to the smallest reproducible case.
171
+ (Myron Marston, #1917)
172
+ * For `config.include`, `config.extend` and `config.prepend`, apply the
173
+ module to previously defined matching example groups. (Eugene Kenny, #1935)
174
+ * When invalid options are parsed, notify users where they came from
175
+ (e.g. `.rspec` or `~/.rspec` or `ENV['SPEC_OPTS']`) so they can
176
+ easily find the source of the problem. (Myron Marston, #1940)
177
+ * Add pending message contents to the json formatter output. (Jon Rowe, #1949)
178
+ * Add shared group backtrace to the output displayed by the built-in
179
+ formatters for pending examples that have been fixed. (Myron Marston, #1946)
180
+ * Add support for `:aggregate_failures` metadata. Tag an example or
181
+ group with this metadata and it'll use rspec-expectations'
182
+ `aggregate_failures` feature to allow multiple failures in an example
183
+ and list them all, rather than aborting on the first failure. (Myron
184
+ Marston, #1946)
185
+ * When no formatter implements #message add a fallback to prevent those
186
+ messages being lost. (Jon Rowe, #1980)
187
+ * Profiling examples now takes into account time spent in `before(:context)`
188
+ hooks. (Denis Laliberté, Jon Rowe, #1971)
189
+ * Improve failure output when an example has multiple exceptions, such
190
+ as one from an `it` block and one from an `after` block. (Myron Marston, #1985)
191
+
192
+ Bug Fixes:
193
+
194
+ * Handle invalid UTF-8 strings within exception methods. (Benjamin Fleischer, #1760)
195
+ * Fix Rake Task quoting of file names with quotes to work properly on
196
+ Windows. (Myron Marston, #1887)
197
+ * Fix `RSpec::Core::RakeTask#failure_message` so that it gets printed
198
+ when the task failed. (Myron Marston, #1905)
199
+ * Make `let` work properly when defined in a shared context that is applied
200
+ to an individual example via metadata. (Myron Marston, #1912)
201
+ * Ensure `rspec/autorun` respects configuration defaults. (Jon Rowe, #1933)
202
+ * Prevent modules overriding example group defined methods when included,
203
+ prepended or extended by config defined after an example group. (Eugene Kenny, #1935)
204
+ * Fix regression which caused shared examples to be mistakenly run when specs
205
+ where filtered to a particular location. (Ben Axnick, #1963)
206
+ * Fix time formatting logic so that it displays 70 seconds as "1 minute,
207
+ 10 seconds" rather than "1 minute, 1 second". (Paul Brennan, #1984)
208
+ * Fix regression where the formatter loader would allow duplicate formatters.
209
+ (Jon Rowe, #1990)
210
+
211
+ ### 3.2.3 / 2015-04-06
212
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.2.2...v3.2.3)
213
+
214
+ Bug Fixes:
215
+
216
+ * Fix how the DSL methods are defined so that RSpec is compatible with
217
+ gems that define methods of the same name on `Kernel` (such as
218
+ the `its-it` gem). (Alex Kwiatkowski, Ryan Ong, #1907)
219
+ * Fix `before(:context) { skip }` so that it does not wrongly cause the
220
+ spec suite to exit with a non-zero status when no examples failed.
221
+ (Myron Marston, #1926)
222
+
223
+ ### 3.2.2 / 2015-03-11
224
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.2.1...v3.2.2)
225
+
226
+ Bug Fixes:
227
+
228
+ * Fix regression in 3.2.0 that allowed tag-filtered examples to
229
+ run even if there was a location filter applied to the spec
230
+ file that was intended to limit the file to other examples.
231
+ (#1894, Myron Marston)
232
+
233
+ ### 3.2.1 / 2015-02-23
234
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.2.0...v3.2.1)
235
+
236
+ Bug Fixes:
237
+
238
+ * Notify start-of-run seed _before_ `start` notification rather than
239
+ _after_ so that formatters like Fuubar work properly. (Samuel Esposito, #1882)
240
+
241
+ ### 3.2.0 / 2015-02-03
242
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.1.7...v3.2.0)
243
+
244
+ Enhancements:
245
+
246
+ * Improve the `inspect` output of example groups. (Mike Dalton, #1687)
247
+ * When rake task fails, only output the command if `verbose` flag is
248
+ set. (Ben Snape, #1704)
249
+ * Add `RSpec.clear_examples` as a clear way to reset examples in between
250
+ spec runs, whilst retaining user configuration. (Alexey Fedorov, #1706)
251
+ * Reduce string allocations when defining and running examples by 70%
252
+ and 50% respectively. (Myron Marston, #1738)
253
+ * Removed dependency on pathname from stdlib. (Sam Phippen, #1703)
254
+ * Improve the message presented when a user hits Ctrl-C.
255
+ (Alex Chaffee #1717, #1742)
256
+ * Improve shared example group inclusion backtrace displayed
257
+ in failed example output so that it works for all methods
258
+ of including shared example groups and shows all inclusion
259
+ locations. (Myron Marston, #1763)
260
+ * Issue seed notification at start (as well as the end) of the reporter
261
+ run. (Arlandis Word, #1761)
262
+ * Improve the documentation of around hooks. (Jim Kingdon, #1772)
263
+ * Support prepending of modules into example groups from config and allow
264
+ filtering based on metadata. (Arlandis Word, #1806)
265
+ * Emit warnings when `:suite` hooks are registered on an example group
266
+ (where it has always been ignored) or are registered with metadata
267
+ (which has always been ignored). (Myron Marston, #1805)
268
+ * Provide a friendly error message when users call RSpec example group
269
+ APIs (e.g. `context`, `describe`, `it`, `let`, `before`, etc) from
270
+ within an example where those APIs are unavailable. (Myron Marston, #1819)
271
+ * Provide a friendly error message when users call RSpec example
272
+ APIs (e.g. `expect`, `double`, `stub_const`, etc) from
273
+ within an example group where those APIs are unavailable.
274
+ (Myron Marston, #1819)
275
+ * Add new `RSpec::Core::Sandbox.sandboxed { }` API that facilitates
276
+ testing RSpec with RSpec, allowing you to define example groups
277
+ and example from within an example without affecting the global
278
+ `RSpec.world` state. (Tyler Ball, 1808)
279
+ * Apply line-number filters only to the files they are scoped to,
280
+ allowing you to mix filtered and unfiltered files. (Myron Marston, #1839)
281
+ * When dumping pending examples, include the failure details so that you
282
+ don't have to un-pend the example to see it. (Myron Marston, #1844)
283
+ * Make `-I` option support multiple values when separated by
284
+ `File::PATH_SEPARATOR`, such as `rspec -I foo:bar`. This matches
285
+ the behavior of Ruby's `-I` option. (Fumiaki Matsushima, #1855).
286
+ * Treat each example as having a singleton example group for the
287
+ purposes of applying metadata-based features that normally apply
288
+ to example groups to individually tagged examples. For example,
289
+ `RSpec.shared_context "Uses redis", :uses_redis` will now apply
290
+ to individual examples tagged with `:uses_redis`, as will
291
+ `config.include RedisHelpers, :uses_redis`, and
292
+ `config.before(:context, :uses_redis) { }`, etc. (Myron Marston, #1749)
293
+
294
+ Bug Fixes:
295
+
296
+ * When assigning generated example descriptions, surface errors
297
+ raised by `matcher.description` in the example description.
298
+ (Myron Marston, #1771)
299
+ * Don't consider expectations from `after` hooks when generating
300
+ example descriptions. (Myron Marston, #1771)
301
+ * Don't apply metadata-filtered config hooks to examples in groups
302
+ with matching metadata when those examples override the parent
303
+ metadata value to not match. (Myron Marston, #1796)
304
+ * Fix `config.expect_with :minitest` so that `skip` uses RSpec's
305
+ implementation rather than Minitest's. (Jonathan Rochkind, #1822)
306
+ * Fix `NameError` caused when duplicate example group aliases are defined and
307
+ the DSL is not globally exposed. (Aaron Kromer, #1825)
308
+ * When a shared example defined in an external file fails, use the host
309
+ example group (from a loaded spec file) for the re-run command to
310
+ ensure the command will actually work. (Myron Marston, #1835)
311
+ * Fix location filtering to work properly for examples defined in
312
+ a nested example group within a shared example group defined in
313
+ an external file. (Bradley Schaefer, Xavier Shay, Myron Marston, #1837)
314
+ * When a pending example fails (as expected) due to a mock expectation,
315
+ set `RSpec::Core::Example::ExecutionResult#pending_exception` --
316
+ previously it was not being set but should have been. (Myron Marston, #1844)
317
+ * Fix rake task to work when `rspec-core` is installed in a directory
318
+ containing a space. (Guido Günther, #1845)
319
+ * Fix regression in 3.1 that caused `describe Regexp` to raise errors.
320
+ (Durran Jordan, #1853)
321
+ * Fix regression in 3.x that caused the profile information to be printed
322
+ after the summary. (Max Lincoln, #1857)
323
+ * Apply `--seed` before loading `--require` files so that required files
324
+ can access the provided seed. (Myron Marston, #1745)
325
+ * Handle `RSpec::Core::Formatters::DeprecationFormatter::FileStream` being
326
+ reopened with an IO stream, which sometimes happens with spring.
327
+ (Kevin Mook, #1757)
328
+
329
+ ### 3.1.7 / 2014-10-11
330
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.1.6...v3.1.7)
331
+
332
+ Bug Fixes:
333
+
334
+ * Fix `Metadata.relative_path` so that for a current directory of
335
+ `/foo/bar`, `/foo/bar_1` is not wrongly converted to `._1`.
336
+ (Akos Vandra, #1730)
337
+ * Prevent constant lookup mistakenly finding `RSpec::ExampleGroups` generated
338
+ constants on 1.9.2 by appending a trailing `_` to the generated names.
339
+ (Jon Rowe, #1737)
340
+ * Fix bug in `:pending` metadata. If it got set in any way besides passing
341
+ it as part of the metadata literal passed to `it` (such as by using
342
+ `define_derived_metadata`), it did not have the desired effect,
343
+ instead marking the example as `:passed`. (Myron Marston, #1739)
344
+
345
+ ### 3.1.6 / 2014-10-08
346
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.1.5...v3.1.6)
347
+
348
+ Bug Fixes:
349
+
350
+ * Fix regression in rake task pattern handling, that prevented patterns
351
+ that were relative from the current directory rather than from `spec`
352
+ from working properly. (Myron Marston, #1734)
353
+ * Prevent rake task from generating duplicate load path entries.
354
+ (Myron Marston, #1735)
355
+
356
+ ### 3.1.5 / 2014-09-29
357
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.1.4...v3.1.5)
358
+
359
+ Bug Fixes:
360
+
361
+ * Fix issue with the rake task incorrectly escaping strings on Windows.
362
+ (Jon Rowe #1718)
363
+ * Support absolute path patterns. While this wasn't officially supported
364
+ previously, setting `rake_task.pattern` to an absolute path pattern in
365
+ RSpec 3.0 and before worked since it delegated to `FileList` internally
366
+ (but now just forwards the pattern on to the `rspec` command).
367
+ (Myron Marston, #1726)
368
+
369
+ ### 3.1.4 / 2014-09-18
370
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.1.3...v3.1.4)
371
+
372
+ Bug Fixes:
373
+
374
+ * Fix implicit `subject` when using `describe false` or `describe nil`
375
+ so that it returns the provided primitive rather than the string
376
+ representation. (Myron Marston, #1710)
377
+ * Fix backtrace filtering to allow code in subdirectories of your
378
+ current working directory (such as vendor/bundle/...) to be filtered
379
+ from backtraces. (Myron Marston, #1708)
380
+
381
+ ### 3.1.3 / 2014-09-15
382
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.1.2...v3.1.3)
383
+
384
+ Bug Fixes:
385
+
386
+ * Fix yet another regression in rake task pattern handling, to allow
387
+ `task.pattern = FileList["..."]` to work. That was never intended
388
+ to be supported but accidentally worked in 3.0 and earlier.
389
+ (Myron Marston, #1701)
390
+ * Fix pattern handling so that files are normalized to absolute paths
391
+ before subtracting the `--exclude-pattern` matched files from the
392
+ `--pattern` matched files so that it still works even if the patterns
393
+ are in slightly different forms (e.g. one starting with `./`).
394
+ (Christian Nelson, #1698)
395
+
396
+ ### 3.1.2 / 2014-09-08
397
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.1.1...v3.1.2)
398
+
399
+ Bug Fixes:
400
+
401
+ * Fix another regression in rake task pattern handling, so that patterns
402
+ that start with `./` still work. (Christian Nelson, #1696)
403
+
404
+ ### 3.1.1 / 2014-09-05
405
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.1.0...v3.1.1)
406
+
407
+ Bug Fixes:
408
+
409
+ * Fix a regression in rake task pattern handling, so that `rake_task.pattern = array`
410
+ works again. While we never intended to support array values (or even knew that worked!),
411
+ the implementation from 3.0 and earlier used `FileList` internally, which allows arrays.
412
+ The fix restores the old behavior. (Myron Marston, #1694)
413
+
414
+ ### 3.1.0 / 2014-09-04
415
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.0.4...v3.1.0)
416
+
417
+ Enhancements:
418
+
419
+ * Update files generated by `rspec --init` so that warnings are enabled
420
+ in commented out section of `spec_helper` rather than `.rspec` so users
421
+ have to consciously opt-in to the setting. (Andrew Hooker, #1572)
422
+ * Update `spec_helper` generated by `rspec --init` so that it sets the new
423
+ rspec-expectations `include_chain_clauses_in_custom_matcher_descriptions`
424
+ config option (which will be on by default in RSpec 4) and also sets the
425
+ rspec-mocks `verify_partial_doubles` option (which will also default
426
+ to on in RSpec 4). (Myron Marston, #1647)
427
+ * Provide an `inspect` output for example procsy objects (used in around
428
+ hooks) that doesn't make them look like procs. (Jon Rowe, #1620)
429
+ * Remove a few unneeded `require` statements from
430
+ `rspec/core/rake_task.rb`, making it even more lighterweight.
431
+ (Myron Marston, #1640)
432
+ * Allow rspec-core to be used when neither rspec-mocks or
433
+ rspec-expectations are installed, without requiring any
434
+ user configuration. (Sam Phippen, Myron Marston, #1615)
435
+ * Don't filter out gems from backtraces by default. (The RSpec
436
+ gems will still be filtered). User feedback has indicated
437
+ that including gems in default backtraces will be useful.
438
+ (Myron Marston, #1641)
439
+ * Add new `config.filter_gems_from_backtrace "rack", "rake"` API
440
+ to easily filter the named gems from backtraces. (Myron Marston, #1682)
441
+ * Fix default backtrace filters so that the RSpec binary is
442
+ excluded when installing RSpec as a bundler `:git` dependency.
443
+ (Myron Marston, #1648)
444
+ * Simplify command generated by the rake task so that it no longer
445
+ includes unnecessary `-S`. (Myron Marston, #1559)
446
+ * Add `--exclude-pattern` CLI option, `config.exclude_pattern =` config
447
+ option and `task.exclude_pattern =` rake task config option. Matching
448
+ files will be excluded. (John Gesimondo, Myron Marston, #1651, #1671)
449
+ * When an around hook fails to execute the example, mark it as
450
+ pending (rather than passing) so the user is made aware of the
451
+ fact that the example did not actually run. (Myron Marston, #1660)
452
+ * Remove dependency on `FileUtils` from the standard library so that users do
453
+ not get false positives where their code relies on it but they are not
454
+ requiring it. (Sam Phippen, #1565)
455
+
456
+ Bug Fixes:
457
+
458
+ * Fix rake task `t.pattern =` option so that it does not run all specs
459
+ when it matches no files, by passing along a `--pattern` option to
460
+ the `rspec` command, rather than resolving the file list and passing
461
+ along the files individually. (Evgeny Zislis, #1653)
462
+ * Fix rake task default pattern so that it follows symlinks properly.
463
+ (Myron Marston, #1672)
464
+ * Fix default pattern used with `rspec` command so that it follows
465
+ symlinks properly. (Myron Marston, #1672)
466
+ * Change how we assign constant names to example group classes so that
467
+ it avoids a problem with `describe "Core"`. (Daniela Wellisz, #1679)
468
+ * Handle rendering exceptions that have a different encoding than that
469
+ of their original source file. (Jon Rowe, #1681)
470
+ * Allow access to message_lines without colour for failed examples even
471
+ when they're part of a shared example group. (tomykaira, #1689)
472
+
473
+ ### 3.0.4 / 2014-08-14
474
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.0.3...v3.0.4)
475
+
476
+ Bug Fixes:
477
+
478
+ * Fix processing order of CLI options so that if `config.files_to_run`
479
+ is accessed from a file loaded by `--require`, `--pattern` is still
480
+ applied. (Myron Marston, #1652)
481
+ * Fix `config.pattern=` so that it still takes affect even if
482
+ `config.files_to_run` has already been accessed. (Myron Marston, #1652)
483
+
484
+ ### 3.0.3 / 2014-07-21
485
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.0.2...v3.0.3)
486
+
487
+ Bug Fixes:
488
+
489
+ * Properly convert both parts of a description into strings before
490
+ concatenation. (@nicklink483, #1636)
491
+ * Exclude the working directory when figuring out folders to ignore.
492
+ (Jon Rowe, Myron Marston, #1616)
493
+ * Allow `::RSpec::Core::Notifications::FailedExampleNotification#message_lines`
494
+ to be accessed without a colouriser. (@tomykaira, #1637)
495
+
496
+ ### 3.0.2 / 2014-06-19
497
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.0.1...v3.0.2)
498
+
499
+ Bug Fixes:
500
+
501
+ * Fix regression in CLI option handling that prevented `--tag slow`
502
+ passed at the command line from overriding `--tag ~slow` in `.rspec`.
503
+ (Colin Jones, #1602)
504
+ * Fix metadata `:example_group` deprecation warning so that it gets
505
+ issued at the call site of the configuration that specified it as
506
+ a filter rather than later when an example group is defined.
507
+ (Myron Marston, #1562)
508
+ * Make the line that is printed when a shared example group fails indicating
509
+ where the concrete example group is white, separating it from the stack trace
510
+ that is produced for the failure. (Sam Phippen, Jon Rowe, #1606)
511
+
512
+ ### 3.0.1 / 2014-06-12
513
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.0.0...v3.0.1)
514
+
515
+ Bug Fixes:
516
+
517
+ * Fix a couple ruby warnings caused by rspec-core when loaded.
518
+ (Prem Sichanugrist, #1584)
519
+ * Example groups named `Config` will no longer cause a Ruby warning to be
520
+ issued. (Jimmy Cuadra, #1580)
521
+
522
+ ### 3.0.0 / 2014-06-01
523
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.0.0.rc1...v3.0.0)
524
+
525
+ Bug Fixes:
526
+
527
+ * Fix `BaseTextFormatter` so that it does not re-close a closed output
528
+ stream. (Myron Marston)
529
+ * Fix regression in metadata that caused the metadata hash of a top-level
530
+ example group to have a `:parent_example_group` key even though it has
531
+ no parent example group. (Myron Marston)
532
+
533
+ Enhancements:
534
+
535
+ * Alter the default `spec_helper.rb` to no longer recommend
536
+ `config.full_backtrace = true` see #1536 for discussion. (Jon Rowe)
537
+
538
+ ### 3.0.0.rc1 / 2014-05-18
539
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.0.0.beta2...v3.0.0.rc1)
540
+
541
+ Breaking Changes for 3.0.0:
542
+
543
+ * Change `described_class` so that in a nested group like `describe
544
+ MyClass`, it returns `MyClass` rather than the outer group's described
545
+ class. (Myron Marston)
546
+ * Refactor filter manager so that it no longer subclasses Hash and has a
547
+ tighter, more domain-specific interface. (Sergey Pchelincev)
548
+ * Remove legacy colours definitions from `BaseTextFormatter`. (Jon Rowe)
549
+ * Remove console color definitions from `BaseTextFormatter`. (Jon Rowe)
550
+ * Restructure example group metadata so that the computed keys are
551
+ exposed directly off of the metadata hash rather than being on
552
+ a nested `:example_group` subhash. In addition, the parent example
553
+ group metadata is now available as `[:parent_example_group]` rather
554
+ than `[:example_group][:example_group]`. Deprecated access via the
555
+ old key structure is still provided. (Myron Marston)
556
+ * Remove `:describes` metadata key. It duplicates `:described_class`
557
+ for no good reason. Deprecated access via `:describes` is still
558
+ provided. (Myron Marston)
559
+ * Rename `:example_group_block` metadata key to `:block`.
560
+ (Myron Marston)
561
+ * Remove deprecated `RSpec::Core::Example#options`. (Myron Marston)
562
+ * Move `BaseTextFormatter#colorize_summary` to `SummaryNotification#colorize_with`
563
+ (Jon Rowe).
564
+ * `describe some_hash` treated `some_hash` as metadata in RSpec 2.x but
565
+ will treat it as the described object in RSpec 3.0. Metadata must
566
+ always come after the description args. (Myron Marston)
567
+ * Remove deprecated `display_name` alias of `ExampleGroup.description`.
568
+ (Myron Marston)
569
+ * Remove deprecated `describes` alias of `ExampleGroup.described_class`.
570
+ (Myron Marston)
571
+ * Remove deprecated `RSpec::Core::ExampleGroup.alias_it_behaves_like_to`.
572
+ Use `RSpec::Core::Configuration#alias_it_behaves_like_to` instead.
573
+ (Myron Marston)
574
+ * Remove deprecated `RSpec::Core::ExampleGroup.alias_example_to`.
575
+ Use `RSpec::Core::Configuration#alias_example_to` instead.
576
+ (Myron Marston)
577
+ * Removed `focused` example alias and change example/group aliases
578
+ `fit`, `focus`, `fcontext` and `fdescribe` to no longer include
579
+ `:focused => true` metadata. They only contain `:focus => true`
580
+ metadata now. This means that you will need to filter them with
581
+ `filter_run :focus`, not `filter_run :focused`. (Myron Marston)
582
+ * Remove `--line-number` filtering. It's semantically dubious since it's
583
+ a global filter (potentially applied to multiple files) but there's no
584
+ meaningful connection between the same line number in multiple files.
585
+ Instead use the `rspec path/to/spec.rb:23:46` form, which is terser
586
+ and makes more sense as it is scoped to a file. (Myron Marston)
587
+ * Remove `--default_path` as an alias for `--default-path`. (Jon Rowe)
588
+ * Remove deprecated `share_examples_for`. There's still
589
+ `shared_examples` and `shared_examples_for`. (Myron Marston)
590
+ * Rename `RSpec::Core::Configuration#warnings` to
591
+ `RSpec::Core::Configuration#warnings?` since it's a boolean flag.
592
+ (Myron Marston)
593
+ * RSpec's global state is no longer reset after a spec run. This gives
594
+ more flexibility to alternate runners to decide when and if they
595
+ want the state reset. Alternate runners are now responsible for
596
+ calling this (or doing a similar reset) if they are going to run
597
+ the spec suite multiple times in the same process. (Sam Phippen)
598
+ * Merge `RSpec::Core::CommandLine` (never formally declared public)
599
+ into `RSpec::Core::Runner`. (Myron Marston)
600
+ * Remove `color_enabled` as an alias of `color`. (Jon Rowe)
601
+ * Remove `backtrace_cleaner` as an alias of `backtrace_formatter`. (Jon Rowe)
602
+ * Remove `filename_pattern` as an alias of `pattern`. (Jon Rowe)
603
+ * Extract support for legacy formatters to `rspec-legacy_formatters`. (Jon Rowe)
604
+ * `RSpec::Configuration#formatters` now returns a dup to prevent mutation. (Jon Rowe)
605
+ * Replace `stdlib` as an available expectation framework with `test_unit` and
606
+ `minitest`. (Aaron Kromer)
607
+ * Remove backtrace formatting helpers from `BaseTextFormatter`. (Jon Rowe)
608
+ * Extract profiler support to `ProfileFormatter` and `ProfileNotification`.
609
+ Formatters should implement `dump_profile` if they wish to respond to `--profile`.
610
+ (Jon Rowe)
611
+ * Extract remaining formatter state to reporter and notifications. Introduce
612
+ `ExamplesNotification` to share information about examples that was previously
613
+ held in `BaseFormatter`. (Jon Rowe)
614
+
615
+ Enhancements:
616
+
617
+ * Add `config.default_formatter` attribute, which can be used to set a
618
+ formatter which will only be used if no other formatter is set
619
+ (e.g. via `--formatter`). (Myron Marston)
620
+ * Support legacy colour definitions in `LegacyFormatterAdaptor`. (Jon Rowe)
621
+ * Migrate `execution_result` (exposed by metadata) from a hash to a
622
+ first-class object with appropriate attributes. `status` is now
623
+ stored and returned as a symbol rather than a string. It retains
624
+ deprecated hash behavior for backwards compatibility. (Myron Marston)
625
+ * Provide console code helper for formatters. (Jon Rowe)
626
+ * Use raw ruby hashes for the metadata hashes rather than a subclass of
627
+ a hash. Computed metadata entries are now computed in advance rather
628
+ than being done lazily on first access. (Myron Marston)
629
+ * Add `:block` metadata entry to the example metadata, bringing
630
+ parity with `:block` in the example group metadata. (Myron Marston)
631
+ * Add `fspecify` and `fexample` as aliases of `specify` and `example`
632
+ with `:focus => true` metadata for parity with `fit`. (Myron Marston)
633
+ * Add legacy support for `colorize_summary`. (Jon Rowe)
634
+ * Restructure runner so it can be more easily customized in a subclass
635
+ for an alternate runner. (Ben Hoskings)
636
+ * Document `RSpec::Core::ConfigurationOptions` as an officially
637
+ supported public API. (Myron Marston)
638
+ * Add `--deprecation-out` CLI option which directs deprecation warnings
639
+ to the named file. (Myron Marston)
640
+ * Minitest 5 compatability for `expect_with :stdlib` (now available as
641
+ `expect_with :minitest`). (Xavier Shay)
642
+ * Reporter now notifies formatters of the load time of RSpec and your
643
+ specs via `StartNotification` and `SummaryNotification`. (Jon Rowe)
644
+ * Add `disable_monkey_patching!` config option that disables all monkey
645
+ patching from whatever pieces of RSpec you use. (Alexey Fedorov)
646
+ * Add `Pathname` support for setting all output streams. (Aaron Kromer)
647
+ * Add `config.define_derived_metadata`, which can be used to apply
648
+ additional metadata to all groups or examples that match a given
649
+ filter. (Myron Marston)
650
+ * Provide formatted and colorized backtraces via `FailedExampleNotification`
651
+ and send `PendingExampleFixedNotifications` when the error is due to a
652
+ passing spec you expect to fail. (Jon Rowe)
653
+ * Add `dump_profile` to formatter API to allow formatters to implement
654
+ support for `--profile`. (Jon Rowe)
655
+ * Allow colourising text via `ConsoleCodes` with RSpec 'states'
656
+ (e.g. `:success`, `:failure`) rather than direct colour codes. (Jon Rowe)
657
+ * Expose `fully_formatted` methods off the formatter notification objects
658
+ that make it easy for a custom formatter to produce formatted output
659
+ like rspec-core's. (Myron Marston)
660
+
661
+ Bug Fixes:
662
+
663
+ * Fix `spec_helper.rb` file generated by `rspec --init` so that the
664
+ recommended settings correctly use the documentation formatter
665
+ when running one file. (Myron Marston)
666
+ * Fix ordering problem where descriptions were generated after
667
+ tearing down mocks, which resulted in unexpected exceptions.
668
+ (Bradley Schaefer, Aaron Kromer, Andrey Savchenko)
669
+ * Allow a symbol to be used as an implicit subject (e.g. `describe
670
+ :foo`). (Myron Marston)
671
+ * Prevent creating an isolated context (i.e. using `RSpec.describe`) when
672
+ already inside a context. There is no reason to do this, and it could
673
+ potentially cause unexpected bugs. (Xavier Shay)
674
+ * Fix shared example group scoping so that when two shared example
675
+ groups share the same name at different levels of nested contexts,
676
+ the one in the nearest context is used. (Myron Marston)
677
+ * Fix `--warnings` option so that it enables warnings immediately so
678
+ that it applies to files loaded by `--require`. (Myron Marston)
679
+ * Issue a warning when you set `config.deprecation_stream` too late for
680
+ it to take effect because the reporter has already been setup. (Myron Marston)
681
+ * Add the full `RSpec::Core::Example` interface to the argument yielded
682
+ to `around` hooks. (Myron Marston)
683
+ * Line number always takes precendence when running specs with filters.
684
+ (Xavier Shay)
685
+ * Ensure :if and :unless metadata filters are treated as a special case
686
+ and are always in-effect. (Bradley Schaefer)
687
+ * Ensure the currently running installation of RSpec is used when
688
+ the rake task shells out to `rspec`, even if a newer version is also
689
+ installed. (Postmodern)
690
+ * Using a legacy formatter as default no longer causes an infinite loop.
691
+ (Xavier Shay)
692
+
693
+ ### 3.0.0.beta2 / 2014-02-17
694
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v3.0.0.beta1...v3.0.0.beta2)
695
+
696
+ Breaking Changes for 3.0.0:
697
+
698
+ * Make `mock_with` option more strict. Strings are no longer supported
699
+ (e.g. `mock_with "mocha"`) -- use a symbol instead. Also, unrecognized
700
+ values will now result in an error rather than falling back to the
701
+ null mocking adapter. If you want to use the null mocking adapter,
702
+ use `mock_with :nothing` (as has been documented for a long time).
703
+ (Myron Marston)
704
+ * Remove support for overriding RSpec's built-in `:if` and `:unless`
705
+ filters. (Ashish Dixit)
706
+ * Custom formatters are now required to call
707
+ `RSpec::Core::Formatters.register(formatter_class, *notifications)`
708
+ where `notifications` is the list of events the formatter wishes to
709
+ be notified about. Notifications are handled by methods matching the
710
+ names on formatters. This allows us to add or remove notifications
711
+ without breaking existing formatters. (Jon Rowe)
712
+ * Change arguments passed to formatters. Rather than passing multiple
713
+ arguments (which limits are ability to add additional arguments as
714
+ doing so would break existing formatters), we now pass a notification
715
+ value object that exposes the same data via attributes. This will
716
+ allow us to add new bits of data to a notification event without
717
+ breaking existing formatters. (Jon Rowe)
718
+ * Remove support for deprecated `:alias` option for
719
+ `RSpec.configuration.add_setting`. (Myron Marston)
720
+ * Remove support for deprecated `RSpec.configuration.requires = [...]`.
721
+ (Myron Marston)
722
+ * Remove support for deprecated `--formatter` CLI option. (Myron Marston)
723
+ * Remove support for deprecated `--configure` CLI option. (Myron Marston)
724
+ * Remove support for deprecated `RSpec::Core::RakeTask#spec_opts=`.
725
+ (Myron Marston)
726
+ * An example group level `pending` block or `:pending` metadata now executes
727
+ the example and cause a failure if it passes, otherwise it will be pending if
728
+ it fails. The old "never run" behaviour is still used for `xexample`, `xit`,
729
+ and `xspecify`, or via a new `skip` method or `:skip` metadata option.
730
+ (Xavier Shay)
731
+ * After calling `pending` inside an example, the remainder of the example will
732
+ now be run. If it passes a failure is raised, otherwise the example is marked
733
+ pending. The old "never run" behaviour is provided a by a new `skip` method.
734
+ (Xavier Shay)
735
+ * Pending blocks inside an example have been removed as a feature with no
736
+ direct replacement. Use `skip` or `pending` without a block. (Xavier Shay)
737
+ * Pending statement is no longer allowed in `before(:all)` hooks. Use `skip`
738
+ instead. (Xavier Shay)
739
+ * Remove `show_failures_in_pending_blocks` configuration option. (Xavier Shay)
740
+ * Remove support for specifying the documentation formatter using
741
+ 's', 'n', 'spec' or 'nested'. (Jon Rowe)
742
+
743
+ Enhancements:
744
+
745
+ * Add example run time to JSON formatter output. (Karthik Kastury)
746
+ * Add more suggested settings to the files generated by
747
+ `rspec --init`. (Myron Marston)
748
+ * Add `config.alias_example_group_to`, which can be used to define a
749
+ new method that defines an example group with the provided metadata.
750
+ (Michi Huber)
751
+ * Add `xdescribe` and `xcontext` as shortcuts to skip an example group.
752
+ (Myron Marston)
753
+ * Add `fdescribe` and `fcontext` as shortcuts to focus an example group.
754
+ (Myron Marston)
755
+ * Don't autorun specs via `#at_exit` by default. `require 'rspec/autorun'`
756
+ is only needed when running specs via `ruby`, as it always has been.
757
+ Running specs via `rake` or `rspec` are both unaffected. (Ben Hoskings)
758
+ * Add `expose_dsl_globally` config option, defaulting to true. When disabled
759
+ it will remove the monkey patches rspec-core adds to `main` and `Module`
760
+ (e.g. `describe`, `shared_examples_for`, etc). (Jon Rowe)
761
+ * Expose RSpec DSL entry point methods (`describe`,
762
+ `shared_examples_for`, etc) on the `RSpec` constant. Intended for use
763
+ when `expose_dsl_globally` is set to `false`. (Jon Rowe)
764
+ * For consistency, expose all example group aliases (including
765
+ `context`) on the `RSpec` constant. If `expose_dsl_globally` is set to
766
+ `true`, also expose them on `main` and `Module`. Historically, only `describe`
767
+ was exposed. (Jon Rowe, Michi Huber)
768
+ * Add hook scope `:example` as an alias for `:each`, and `:context` as an alias
769
+ for `:all`. (John Feminella)
770
+
771
+ Bug Fixes:
772
+
773
+ * Fix failure (undefined method `path`) in end-of-run summary
774
+ when `raise_errors_for_deprecations!` is configured. (Myron Marston)
775
+ * Issue error when attempting to use `-i` or `--I` on command line,
776
+ too close to `-I` to be considered short hand for `--init`. (Jon Rowe)
777
+ * Prevent adding formatters to an output target if the same
778
+ formatter has already been added to that output. (Alex Peattie)
779
+ * Allow a matcher-generated example description to be used when
780
+ the example is pending. (Myron Marston)
781
+ * Ensure the configured `failure_exit_code` is used by the rake
782
+ task when there is a failure. (Jon Rowe)
783
+ * Restore behaviour whereby system exclusion filters take priority over working
784
+ directory (was broken in beta1). (Jon Rowe)
785
+ * Prevent RSpec mangling file names that have substrings containing `line_number`
786
+ or `default_path`. (Matijs van Zuijlen)
787
+ * Fix failure line detection so that it handles relative file paths
788
+ (which can happen when running specs through `ruby` using `rspec/autorun`).
789
+ (Myron Marston, #1829)
790
+
791
+ ### 3.0.0.beta1 / 2013-11-07
792
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.99.1...v3.0.0.beta1)
793
+
794
+ Breaking Changes for 3.0.0:
795
+
796
+ * Remove explicit support for 1.8.6. (Jon Rowe)
797
+ * Remove `RSpec::Core::ExampleGroup#example` and
798
+ `RSpec::Core::ExampleGroup#running_example` methods. If you need
799
+ access to the example (e.g. to get its metadata), use a block arg
800
+ instead. (David Chelimsky)
801
+ * Remove `TextMateFormatter`, it has been moved to `rspec-tmbundle`.
802
+ (Aaron Kromer)
803
+ * Remove RCov integration. (Jon Rowe)
804
+ * Remove deprecated support for RSpec 1 constructs (Myron Marston):
805
+ * The `Spec` and `Rspec` constants (rather than `RSpec`).
806
+ * `Spec::Runner.configure` rather than `RSpec.configure`.
807
+ * `Rake::SpecTask` rather than `RSpec::Core::RakeTask`.
808
+ * Remove deprecated support for `share_as`. (Myron Marston)
809
+ * Remove `--debug` option (and corresponding option on
810
+ `RSpec::Core::Configuration`). Instead, use `-r<debugger gem name>` to
811
+ load whichever debugger gem you wish to use (e.g. `ruby-debug`,
812
+ `debugger`, or `pry`). (Myron Marston)
813
+ * Extract Autotest support to a seperate gem. (Jon Rowe)
814
+ * Raise an error when a `let` or `subject` declaration is
815
+ accessed in a `before(:all)` or `after(:all)` hook. (Myron Marston)
816
+ * Extract `its` support to a separate gem. (Peter Alfvin)
817
+ * Disallow use of a shared example group from sibling contexts, making them
818
+ fully isolated. 2.14 and 2.99 allowed this but printed a deprecation warning.
819
+ (Jon Rowe)
820
+ * Remove `RSpec::Core::Configuration#output` and
821
+ `RSpec::Core::Configuration#out` aliases of
822
+ `RSpec::Core::Configuration#output_stream`. (Myron Marston)
823
+ * Remove legacy ordering APIs deprecated in 2.99.0.beta1. (Myron
824
+ Marston)
825
+
826
+ Enhancements:
827
+
828
+ * Replace unmaintained syntax gem with coderay gem. (Xavier Shay)
829
+ * Times in profile output are now bold instead of `failure_color`.
830
+ (Matthew Boedicker)
831
+ * Add `--no-fail-fast` command line option. (Gonzalo Rodríguez-Baltanás Díaz)
832
+ * Runner now considers the local system ip address when running under Drb.
833
+ (Adrian CB)
834
+ * JsonFormatter now includes `--profile` information. (Alex / @MasterLambaster)
835
+ * Always treat symbols passed as metadata args as hash
836
+ keys with true values. RSpec 2 supported this with the
837
+ `treat_symbols_as_metadata_keys_with_true_values` but
838
+ now this behavior is always enabled. (Myron Marston)
839
+ * Add `--dry-run` option, which prints the formatter output
840
+ of your suite without running any examples or hooks.
841
+ (Thomas Stratmann, Myron Marston)
842
+ * Document the configuration options and default values in the `spec_helper.rb`
843
+ file that is generated by RSpec. (Parker Selbert)
844
+ * Give generated example group classes a friendly name derived
845
+ from the docstring, rather than something like "Nested_2".
846
+ (Myron Marston)
847
+ * Avoid affecting randomization of user code when shuffling
848
+ examples so that users can count on their own seeds
849
+ working. (Travis Herrick)
850
+ * Ordering is no longer a single global property of the test suite.
851
+ Each group can pick an ordering using `:order` metadata. (Andy
852
+ Lindeman, Sam Phippen, Myron Marston)
853
+ * Allow named custom ordering strategies to be registered, which can
854
+ then be used on individual example groups. (Andy Lindeman, Sam
855
+ Phippen, Myron Marston)
856
+
857
+ Deprecations:
858
+
859
+ * `treat_symbols_as_metadata_keys_with_true_values` is deprecated and no
860
+ longer has an affect now that the behavior it enabled is always
861
+ enabled. (Myron Marston)
862
+
863
+ ### 2.99.2 / 2014-08-19
864
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.99.1...v2.99.2)
865
+
866
+ Enhancements:
867
+
868
+ * Improve deprecation warning for RSpec 3 change in `describe <a symbol>`
869
+ behavior. (Jon Rowe, #1667)
870
+
871
+ ### 2.99.1 / 2014-06-19
872
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.99.0...v2.99.1)
873
+
874
+ Bug Fixes:
875
+
876
+ * Add missing deprecation warning for when `RSpec::Core::Runner` is used
877
+ multiple times in the same process. In 2.x RSpec's global state was
878
+ automatically cleared between runs but in 3.0 you need to call `RSpec.reset`
879
+ manually in these situations. (Sam Phippen, #1587)
880
+ * Prevent deprecation being accidentally issues when doubles used with `be_`
881
+ matchers due to automatically generated descriptions. (Jon Rowe, #1573)
882
+ * Load `rspec/core` when loading `rspec/core/rake_task` to ensure we can
883
+ issue deprecations correctly. (Jon Rowe, #1612)
884
+
885
+ ### 2.99.0 / 2014-06-01
886
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.99.0.rc1...v2.99.0)
887
+
888
+ Bug Fixes:
889
+
890
+ * Fix `BaseTextFormatter` so that it does not re-close a closed output
891
+ stream. (Myron Marston)
892
+ * Use `RSpec::Configuration#backtrace_exclusion_patterns` rather than the
893
+ deprecated `RSpec::Configuration#backtrace_clean_patterns` when mocking
894
+ with rr. (David Dollar)
895
+
896
+ ### 2.99.0.rc1 / 2014-05-18
897
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.99.0.beta2...v2.99.0.rc1)
898
+
899
+ Enhancements:
900
+
901
+ * Add `--deprecation-out` CLI option which directs deprecation warnings
902
+ to the named file. (Myron Marston)
903
+ * Backport support for `skip` in metadata to skip execution of an example.
904
+ (Xavier Shay, #1472)
905
+ * Add `Pathname` support for setting all output streams. (Aaron Kromer)
906
+ * Add `test_unit` and `minitest` expectation frameworks. (Aaron Kromer)
907
+
908
+ Deprecations:
909
+
910
+ * Deprecate `RSpec::Core::Pending::PendingDeclaredInExample`, use
911
+ `SkipDeclaredInExample` instead. (Xavier Shay)
912
+ * Issue a deprecation when `described_class` is accessed from within
913
+ a nested `describe <SomeClass>` example group, since `described_class`
914
+ will return the innermost described class in RSpec 3 rather than the
915
+ outermost described class, as it behaved in RSpec 2. (Myron Marston)
916
+ * Deprecate `RSpec::Core::FilterManager::DEFAULT_EXCLUSIONS`,
917
+ `RSpec::Core::FilterManager::STANDALONE_FILTERS` and use of
918
+ `#empty_without_conditional_filters?` on those filters. (Sergey Pchelincev)
919
+ * Deprecate `RSpec::Core::Example#options` in favor of
920
+ `RSpec::Core::Example#metadata`. (Myron Marston)
921
+ * Issue warning when passing a symbol or hash to `describe` or `context`
922
+ as the first argument. In RSpec 2.x this would be treated as metadata
923
+ but in RSpec 3 it'll be treated as the described object. To continue
924
+ having it treated as metadata, pass a description before the symbol or
925
+ hash. (Myron Marston)
926
+ * Deprecate `RSpec::Core::BaseTextFormatter::VT100_COLORS` and
927
+ `RSpec::Core::BaseTextFormatter::VT100_COLOR_CODES` in favour
928
+ of `RSpec::Core::BaseTextFormatter::ConsoleCodes::VT100_CODES` and
929
+ `RSpec::Core::BaseTextFormatter::ConsoleCodes::VT100_CODE_VALUES`.
930
+ (Jon Rowe)
931
+ * Deprecate `RSpec::Core::ExampleGroup.display_name` in favor of
932
+ `RSpec::Core::ExampleGroup.description`. (Myron Marston)
933
+ * Deprecate `RSpec::Core::ExampleGroup.describes` in favor of
934
+ `RSpec::Core::ExampleGroup.described_class`. (Myron Marston)
935
+ * Deprecate `RSpec::Core::ExampleGroup.alias_example_to` in favor of
936
+ `RSpec::Core::Configuration#alias_example_to`. (Myron Marston)
937
+ * Deprecate `RSpec::Core::ExampleGroup.alias_it_behaves_like_to` in favor
938
+ of `RSpec::Core::Configuration#alias_it_behaves_like_to`. (Myron Marston)
939
+ * Deprecate `RSpec::Core::ExampleGroup.focused` in favor of
940
+ `RSpec::Core::ExampleGroup.focus`. (Myron Marston)
941
+ * Add deprecation warning for `config.filter_run :focused` since
942
+ example aliases `fit` and `focus` will no longer include
943
+ `:focused` metadata but will continue to include `:focus`. (Myron Marston)
944
+ * Deprecate filtering by `:line_number` (e.g. `--line-number` from the
945
+ CLI). Use location filtering instead. (Myron Marston)
946
+ * Deprecate `--default_path` as an alternative to `--default-path`. (Jon Rowe)
947
+ * Deprecate `RSpec::Core::Configuration#warnings` in favor of
948
+ `RSpec::Core::Configuration#warnings?`. (Myron Marston)
949
+ * Deprecate `share_examples_for` in favor of `shared_examples_for` or
950
+ just `shared_examples`. (Myron Marston)
951
+ * Deprecate `RSpec::Core::CommandLine` in favor of
952
+ `RSpec::Core::Runner`. (Myron Marston)
953
+ * Deprecate `#color_enabled`, `#color_enabled=` and `#color?` in favour of
954
+ `#color`, `#color=` and `#color_enabled? output`. (Jon Rowe)
955
+ * Deprecate `#filename_pattern` in favour of `#pattern`. (Jon Rowe)
956
+ * Deprecate `#backtrace_cleaner` in favour of `#backtrace_formatter`. (Jon Rowe)
957
+ * Deprecate mutating `RSpec::Configuration#formatters`. (Jon Rowe)
958
+ * Deprecate `stdlib` as an available expectation framework in favour of
959
+ `test_unit` and `minitest`. (Aaron Kromer)
960
+
961
+ Bug Fixes:
962
+
963
+ * Issue a warning when you set `config.deprecation_stream` too late for
964
+ it to take effect because the reporter has already been setup. (Myron Marston)
965
+ * `skip` with a block should not execute the block. (Xavier Shay)
966
+
967
+ ### 2.99.0.beta2 / 2014-02-17
968
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.99.0.beta1...v2.99.0.beta2)
969
+
970
+ Enhancements:
971
+
972
+ * Add `is_expected` for one-liners that read well with the
973
+ `expect`-based syntax. `is_expected` is simply defined as
974
+ `expect(subject)` and can be used in an expression like:
975
+ `it { is_expected.to read_well }`. (Myron Marston)
976
+ * Backport `skip` from RSpec 3, which acts like `pending` did in RSpec 2
977
+ when not given a block, since the behavior of `pending` is changing in
978
+ RSpec 3. (Xavier Shay)
979
+
980
+ Deprecations:
981
+
982
+ * Deprecate inexact `mock_with` config options. RSpec 3 will only support
983
+ the exact symbols `:rspec`, `:mocha`, `:flexmock`, `:rr` or `:nothing`
984
+ (or any module that implements the adapter interface). RSpec 2 did
985
+ fuzzy matching but this will not be supported going forward.
986
+ (Myron Marston)
987
+ * Deprecate `show_failures_in_pending_blocks` config option. To achieve
988
+ the same behavior as the option enabled, you can use a custom
989
+ formatter instead. (Xavier Shay)
990
+ * Add a deprecation warning for the fact that the behavior of `pending`
991
+ is changing in RSpec 3 -- rather than skipping the example (as it did
992
+ in 2.x when no block was provided), it will run the example and mark
993
+ it as failed if no exception is raised. Use `skip` instead to preserve
994
+ the old behavior. (Xavier Shay)
995
+ * Deprecate 's', 'n', 'spec' and 'nested' as aliases for documentation
996
+ formatter. (Jon Rowe)
997
+ * Deprecate `RSpec::Core::Reporter#abort` in favor of
998
+ `RSpec::Core::Reporter#finish`. (Jon Rowe)
999
+
1000
+ Bug Fixes:
1001
+
1002
+ * Fix failure (undefined method `path`) in end-of-run summary
1003
+ when `raise_errors_for_deprecations!` is configured. (Myron Marston)
1004
+ * Fix issue were overridding spec ordering from the command line wasn't
1005
+ fully recognised interally. (Jon Rowe)
1006
+
1007
+ ### 2.99.0.beta1 / 2013-11-07
1008
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.14.7...v2.99.0.beta1)
1009
+
1010
+ Enhancements
1011
+
1012
+ * Block-based DSL methods that run in the context of an example
1013
+ (`it`, `before(:each)`, `after(:each)`, `let` and `subject`)
1014
+ now yield the example as a block argument. (David Chelimsky)
1015
+ * Warn when the name of more than one example group is submitted to
1016
+ `include_examples` and it's aliases. (David Chelimsky)
1017
+ * Add `expose_current_running_example_as` config option for
1018
+ use during the upgrade process when external gems use the
1019
+ deprecated `RSpec::Core::ExampleGroup#example` and
1020
+ `RSpec::Core::ExampleGroup#running_example` methods. (Myron Marston)
1021
+ * Limit spamminess of deprecation messages. (Bradley Schaefer, Loren Segal)
1022
+ * Add `config.raise_errors_for_deprecations!` option, which turns
1023
+ deprecations warnings into errors to surface the full backtrace
1024
+ of the call site. (Myron Marston)
1025
+
1026
+ Deprecations
1027
+
1028
+ * Deprecate `RSpec::Core::ExampleGroup#example` and
1029
+ `RSpec::Core::ExampleGroup#running_example` methods. If you need
1030
+ access to the example (e.g. to get its metadata), use a block argument
1031
+ instead. (David Chelimsky)
1032
+ * Deprecate use of `autotest/rspec2` in favour of `rspec-autotest`. (Jon Rowe)
1033
+ * Deprecate RSpec's built-in debugger support. Use a CLI option like
1034
+ `-rruby-debug` (for the ruby-debug gem) or `-rdebugger` (for the
1035
+ debugger gem) instead. (Myron Marston)
1036
+ * Deprecate `RSpec.configuration.treat_symbols_as_metadata_keys_with_true_values = false`.
1037
+ RSpec 3 will not support having this option set to `false`. (Myron Marston)
1038
+ * Deprecate accessing a `let` or `subject` declaration in
1039
+ a `after(:all)` hook. (Myron Marston, Jon Rowe)
1040
+ * Deprecate built-in `its` usage in favor of `rspec-its` gem due to planned
1041
+ removal in RSpec 3. (Peter Alfvin)
1042
+ * Deprecate `RSpec::Core::PendingExampleFixedError` in favor of
1043
+ `RSpec::Core::Pending::PendingExampleFixedError`. (Myron Marston)
1044
+ * Deprecate `RSpec::Core::Configuration#out` and
1045
+ `RSpec::Core::Configuration#output` in favor of
1046
+ `RSpec::Core::Configuration#output_stream`. (Myron Marston)
1047
+ * Deprecate legacy ordering APIs.
1048
+ * You should use `register_ordering(:global)` instead of these:
1049
+ * `RSpec::Core::Configuration#order_examples`
1050
+ * `RSpec::Core::Configuration#order_groups`
1051
+ * `RSpec::Core::Configuration#order_groups_and_examples`
1052
+ * These are deprecated with no replacement because in RSpec 3
1053
+ ordering is a property of individual example groups rather than
1054
+ just a global property of the entire test suite:
1055
+ * `RSpec::Core::Configuration#order`
1056
+ * `RSpec::Core::Configuration#randomize?`
1057
+ * `--order default` is deprecated in favor of `--order defined`
1058
+ (Myron Marston)
1059
+
1060
+ ### 2.14.8 / 2014-02-27
1061
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.14.7...v2.14.8)
1062
+
1063
+ Bug fixes:
1064
+
1065
+ * Fix regression with the `textmateformatter` that prevented backtrace links
1066
+ from being clickable. (Stefan Daschek)
1067
+
1068
+ ### 2.14.7 / 2013-10-29
1069
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.14.6...v2.14.7)
1070
+
1071
+ Bug fixes:
1072
+
1073
+ * Fix regression in 2.14.6 that broke the Fivemat formatter.
1074
+ It depended upon either
1075
+ `example.execution_result[:exception].pending_fixed?` (which
1076
+ was removed in 2.14.6 to fix an issue with frozen error objects)
1077
+ or `RSpec::Core::PendingExampleFixedError` (which was renamed
1078
+ to `RSpec::Core::Pending::PendingExampleFixedError` in 2.8.
1079
+ This fix makes a constant alias for the old error name.
1080
+ (Myron Marston)
1081
+
1082
+ ### 2.14.6 / 2013-10-15
1083
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.14.5...v2.14.6)
1084
+
1085
+ Bug fixes:
1086
+
1087
+ * Format stringified numbers correctly when mathn library is loaded.
1088
+ (Jay Hayes)
1089
+ * Fix an issue that prevented the use of frozen error objects. (Lars
1090
+ Gierth)
1091
+
1092
+ ### 2.14.5 / 2013-08-13
1093
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.14.4...v2.14.5)
1094
+
1095
+ Bug fixes:
1096
+
1097
+ * Fix a `NoMethodError` that was being raised when there were no shared
1098
+ examples or contexts declared and `RSpec.world.reset` is invoked.
1099
+ (thepoho, Jon Rowe, Myron Marston)
1100
+ * Fix a deprecation warning that was being incorrectly displayed when
1101
+ `shared_examples` are declared at top level in a `module` scope.
1102
+ (Jon Rowe)
1103
+ * Fix after(:all) hooks so consecutive (same context) scopes will run even if
1104
+ one raises an error. (Jon Rowe, Trejkaz)
1105
+ * JsonFormatter no longer dies if `dump_profile` isn't defined (Alex / @MasterLambaster, Jon Rowe)
1106
+
1107
+ ### 2.14.4 / 2013-07-21
1108
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.14.3...v2.14.4)
1109
+
1110
+ Bug fixes
1111
+
1112
+ * Fix regression in 2.14: ensure configured requires (via `-r` option)
1113
+ are loaded before spec files are loaded. This allows the spec files
1114
+ to programatically change the file pattern (Jon Rowe).
1115
+ * Autoload `RSpec::Mocks` and `RSpec::Expectations` when referenced if
1116
+ they are not already loaded (`RSpec::Matches` has been autoloaded
1117
+ for a while). In the `rspec` gem, we changed it recently to stop
1118
+ loading `rspec/mocks` and `rspec/expectations` by default, as some
1119
+ users reported problems where they were intending to use mocha,
1120
+ not rspec-mocks, but rspec-mocks was loaded and causing a conflict.
1121
+ rspec-core loads mocks and expectations at the appropriate time, so
1122
+ it seemed like a safe change -- but caused a problem for some authors
1123
+ of libraries that integrate with RSpec. This fixes that problem.
1124
+ (Myron Marston)
1125
+ * Gracefully handle a command like `rspec --profile path/to/spec.rb`:
1126
+ the `path/to/spec.rb` arg was being wrongly treated as the `profile`
1127
+ integer arg, which got cast `0` using `to_i`, causing no profiled
1128
+ examples to be printed. (Jon Rowe)
1129
+
1130
+ ### 2.14.3 / 2013-07-13
1131
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.14.2...v2.14.3)
1132
+
1133
+ Bug fixes
1134
+
1135
+ * Fix deprecation notices issued from `RSpec::Core::RakeTask` so
1136
+ that they work properly when all of rspec-core is not loaded.
1137
+ (This was a regression in 2.14) (Jon Rowe)
1138
+
1139
+ ### 2.14.2 / 2013-07-09
1140
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.14.1...v2.14.2)
1141
+
1142
+ Bug fixes
1143
+
1144
+ * Fix regression caused by 2.14.1 release: formatters that
1145
+ report that they `respond_to?` a notification, but had
1146
+ no corresponding method would raise an error when registered.
1147
+ The new fix is to just implement `start` on the deprecation
1148
+ formatter to fix the original JRuby/ruby-debug issue.
1149
+ (Jon Rowe)
1150
+
1151
+ ### 2.14.1 / 2013-07-08
1152
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.14.0...v2.14.1)
1153
+
1154
+ Bug fixes
1155
+
1156
+ * Address deprecation formatter failure when using `ruby-debug` on
1157
+ JRuby: fix `RSpec::Core::Reporter` to not send a notification
1158
+ when the formatter's implementation of the notification method
1159
+ comes from `Kernel` (Alex Portnov, Jon Rowe).
1160
+
1161
+ ### 2.14.0 / 2013-07-06
1162
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.14.0.rc1...v2.14.0)
1163
+
1164
+ Enhancements
1165
+
1166
+ * Apply focus to examples defined with `fit` (equivalent of
1167
+ `it "description", focus: true`) (Michael de Silva)
1168
+
1169
+ Bug fix
1170
+
1171
+ * Ensure methods defined by `let` take precedence over others
1172
+ when there is a name collision (e.g. from an included module).
1173
+ (Jon Rowe, Andy Lindeman and Myron Marston)
1174
+
1175
+ ### 2.14.0.rc1 / 2013-05-27
1176
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.13.1...v2.14.0.rc1)
1177
+
1178
+ Enhancements
1179
+
1180
+ * Improved Windows detection inside Git Bash, for better `--color` handling.
1181
+ * Add profiling of the slowest example groups to `--profile` option.
1182
+ The output is sorted by the slowest average example groups.
1183
+ * Don't show slow examples if there's a failure and both `--fail-fast`
1184
+ and `--profile` options are used (Paweł Gościcki).
1185
+ * Rather than always adding `spec` to the load path, add the configured
1186
+ `--default-path` to the load path (which defaults to `spec`). This
1187
+ better supports folks who choose to put their specs in a different
1188
+ directory (John Feminella).
1189
+ * Add some logic to test time duration precision. Make it a
1190
+ function of time, dropping precision as the time increases. (Aaron Kromer)
1191
+ * Add new `backtrace_inclusion_patterns` config option. Backtrace lines
1192
+ that match one of these patterns will _always_ be included in the
1193
+ backtrace, even if they match an exclusion pattern, too (Sam Phippen).
1194
+ * Support ERB trim mode using the `-` when parsing `.rspec` as ERB
1195
+ (Gabor Garami).
1196
+ * Give a better error message when let and subject are called without a block.
1197
+ (Sam Phippen).
1198
+ * List the precedence of `.rspec-local` in the configuration documentation
1199
+ (Sam Phippen)
1200
+ * Support `{a,b}` shell expansion syntax in `--pattern` option
1201
+ (Konstantin Haase).
1202
+ * Add cucumber documentation for --require command line option
1203
+ (Bradley Schaefer)
1204
+ * Expose configuration options via config:
1205
+ * `config.libs` returns the libs configured to be added onto the load path
1206
+ * `full_backtrace?` returns the state of the backtrace cleaner
1207
+ * `debug?` returns true when the debugger is loaded
1208
+ * `line_numbers` returns the line numbers we are filtering by (if any)
1209
+ * `full_description` returns the RegExp used to filter descriptions
1210
+ (Jon Rowe)
1211
+ * Add setters for RSpec.world and RSpec.configuration (Alex Soulim)
1212
+ * Configure ruby's warning behaviour with `--warnings` (Jon Rowe)
1213
+ * Fix an obscure issue on old versions of `1.8.7` where `Time.dup` wouldn't
1214
+ allow access to `Time.now` (Jon Rowe)
1215
+ * Make `shared_examples_for` context aware, so that keys may be safely reused
1216
+ in multiple contexts without colliding. (Jon Rowe)
1217
+ * Add a configurable `deprecation_stream` (Jon Rowe)
1218
+ * Publish deprecations through a formatter (David Chelimsky)
1219
+
1220
+ Bug fixes
1221
+
1222
+ * Make JSON formatter behave the same when it comes to `--profile` as
1223
+ the text formatter (Paweł Gościcki).
1224
+ * Fix named subjects so that if an inner group defines a method that
1225
+ overrides the named method, `subject` still retains the originally
1226
+ declared value (Myron Marston).
1227
+ * Fix random ordering so that it does not cause `rand` in examples in
1228
+ nested sibling contexts to return the same value (Max Shytikov).
1229
+ * Use the new `backtrace_inclusion_patterns` config option to ensure
1230
+ that folks who develop code in a directory matching one of the default
1231
+ exclusion patterns (e.g. `gems`) still get the normal backtrace
1232
+ filtering (Sam Phippen).
1233
+ * Fix ordering of `before` hooks so that `before` hooks declared in
1234
+ `RSpec.configure` run before `before` hooks declared in a shared
1235
+ context (Michi Huber and Tejas Dinkar).
1236
+ * Fix `Example#full_description` so that it gets filled in by the last
1237
+ matcher description (as `Example#description` already did) when no
1238
+ doc string has been provided (David Chelimsky).
1239
+ * Fix the memoized methods (`let` and `subject`) leaking `define_method`
1240
+ as a `public` method. (Thomas Holmes and Jon Rowe) (#873)
1241
+ * Fix warnings coming from the test suite. (Pete Higgins)
1242
+
1243
+ Deprecations
1244
+
1245
+ * Deprecate `Configuration#backtrace_clean_patterns` in favor of
1246
+ `Configuration#backtrace_exclusion_patterns` for greater consistency
1247
+ and symmetry with new `backtrace_inclusion_patterns` config option
1248
+ (Sam Phippen).
1249
+ * Deprecate `Configuration#requires=` in favor of using ruby's
1250
+ `require`. Requires specified by the command line can still be
1251
+ accessed by the `Configuration#require` reader. (Bradley Schaefer)
1252
+ * Deprecate calling `SharedExampleGroups` defined across sibling contexts
1253
+ (Jon Rowe)
1254
+
1255
+ ### 2.13.1 / 2013-03-12
1256
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.13.0...v2.13.1)
1257
+
1258
+ Bug fixes
1259
+
1260
+ * Use hook classes as proxies rather than extending hook blocks to support
1261
+ lambdas for before/after/around hooks. (David Chelimsky)
1262
+ * Fix regression in 2.13.0 that caused confusing behavior when overriding
1263
+ a named subject with an unnamed subject in an inner group and then
1264
+ referencing the outer group subject's name. The fix for this required
1265
+ us to disallow using `super` in a named subject (which is confusing,
1266
+ anyway -- named subjects create 2 methods, so which method on the
1267
+ parent example group are you `super`ing to?) but `super` in an unnamed
1268
+ subject continues to work (Myron Marston).
1269
+ * Do not allow a referenced `let` or `subject` in `before(:all)` to cause
1270
+ other `let` declarations to leak across examples (Myron Marston).
1271
+ * Work around odd ruby 1.9 bug with `String#match` that was triggered
1272
+ by passing it a regex from a `let` declaration. For more info, see
1273
+ http://bugs.ruby-lang.org/issues/8059 (Aaron Kromer).
1274
+ * Add missing `require 'set'` to `base_text_formatter.rb` (Tom
1275
+ Anderson).
1276
+
1277
+ Deprecations
1278
+
1279
+ * Deprecate accessing `let` or `subject` declarations in `before(:all)`.
1280
+ These were not intended to be called in a `before(:all)` hook, as
1281
+ they exist to define state that is reset between each example, while
1282
+ `before(:all)` exists to define state that is shared across examples
1283
+ in an example group (Myron Marston).
1284
+
1285
+ ### 2.13.0 / 2013-02-23
1286
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.12.2...v2.13.0)
1287
+
1288
+ Enhancements
1289
+
1290
+ * Allow `--profile` option to take a count argument that
1291
+ determines the number of slow examples to dump
1292
+ (Greggory Rothmeier).
1293
+ * Add `subject!` that is the analog to `let!`. It defines an
1294
+ explicit subject and sets a `before` hook that will invoke
1295
+ the subject (Zubin Henner).
1296
+ * Fix `let` and `subject` declaration so that `super`
1297
+ and `return` can be used in them, just like in a normal
1298
+ method. (Myron Marston)
1299
+ * Allow output colors to be configured individually.
1300
+ (Charlie Maffitt)
1301
+ * Always dump slow examples when `--profile` option is given,
1302
+ even when an example failed (Myron Marston).
1303
+
1304
+ Bug fixes
1305
+
1306
+ * Don't blow up when dumping error output for instances
1307
+ of anonymous error classes (Myron Marston).
1308
+ * Fix default backtrace filters so lines from projects
1309
+ containing "gems" in the name are not filtered, but
1310
+ lines from installed gems still are (Myron Marston).
1311
+ * Fix autotest command so that is uses double quotes
1312
+ rather than single quotes for windows compatibility
1313
+ (Jonas Tingeborn).
1314
+ * Fix `its` so that uses of `subject` in a `before` or `let`
1315
+ declaration in the parent group continue to reference the
1316
+ parent group's subject. (Olek Janiszewski)
1317
+
1318
+ ### 2.12.2 / 2012-12-13
1319
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.12.1...v2.12.2)
1320
+
1321
+ Bug fixes
1322
+
1323
+ * Fix `RSpec::Core::RakeTask` so that it is compatible with rake 0.8.7
1324
+ on ruby 1.8.7. We had accidentally broke it in the 2.12 release
1325
+ (Myron Marston).
1326
+ * Fix `RSpec::Core::RakeTask` so it is tolerant of the `Rspec` constant
1327
+ for backwards compatibility (Patrick Van Stee)
1328
+
1329
+ ### 2.12.1 / 2012-12-01
1330
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.12.0...v2.12.1)
1331
+
1332
+ Bug fixes
1333
+
1334
+ * Specs are run even if another at\_exit hook calls `exit`. This allows
1335
+ Test::Unit and RSpec to run together. (Suraj N. Kurapati)
1336
+ * Fix full doc string concatenation so that it handles the case of a
1337
+ method string (e.g. "#foo") being nested under a context string
1338
+ (e.g. "when it is tuesday"), so that we get "when it is tuesday #foo"
1339
+ rather than "when it is tuesday#foo". (Myron Marston)
1340
+ * Restore public API I unintentionally broke in 2.12.0:
1341
+ `RSpec::Core::Formatters::BaseFormatter#format_backtrce(backtrace, example)`
1342
+ (Myron Marston).
1343
+
1344
+ ### 2.12.0 / 2012-11-12
1345
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.11.1...v2.12.0)
1346
+
1347
+ Enhancements
1348
+
1349
+ * Add support for custom ordering strategies for groups and examples.
1350
+ (Myron Marston)
1351
+ * JSON Formatter (Alex Chaffee)
1352
+ * Refactor rake task internals (Sam Phippen)
1353
+ * Refactor HtmlFormatter (Pete Hodgson)
1354
+ * Autotest supports a path to Ruby that contains spaces (dsisnero)
1355
+ * Provide a helpful warning when a shared example group is redefined.
1356
+ (Mark Burns).
1357
+ * `--default_path` can be specified as `--default-line`. `--line_number` can be
1358
+ specified as `--line-number`. Hyphens are more idiomatic command line argument
1359
+ separators (Sam Phippen).
1360
+ * A more useful error message is shown when an invalid command line option is
1361
+ used (Jordi Polo).
1362
+ * Add `format_docstrings { |str| }` config option. It can be used to
1363
+ apply formatting rules to example group and example docstrings.
1364
+ (Alex Tan)
1365
+ * Add support for an `.rspec-local` options file. This is intended to
1366
+ allow individual developers to set options in a git-ignored file that
1367
+ override the common project options in `.rspec`. (Sam Phippen)
1368
+ * Support for mocha 0.13.0. (Andy Lindeman)
1369
+
1370
+ Bug fixes
1371
+
1372
+ * Remove override of `ExampleGroup#ancestors`. This is a core ruby method that
1373
+ RSpec shouldn't override. Instead, define `ExampleGroup#parent_groups`. (Myron
1374
+ Marston)
1375
+ * Limit monkey patching of shared example/context declaration methods
1376
+ (`shared_examples_for`, etc.) to just the objects that need it rather than
1377
+ every object in the system (Myron Marston).
1378
+ * Fix Metadata#fetch to support computed values (Sam Goldman).
1379
+ * Named subject can now be referred to from within subject block in a nested
1380
+ group (tomykaira).
1381
+ * Fix `fail_fast` so that it properly exits when an error occurs in a
1382
+ `before(:all) hook` (Bradley Schaefer).
1383
+ * Make the order spec files are loaded consistent, regardless of the
1384
+ order of the files returned by the OS or the order passed at
1385
+ the command line (Jo Liss and Sam Phippen).
1386
+ * Ensure instance variables from `before(:all)` are always exposed
1387
+ from `after(:all)`, even if an error occurs in `before(:all)`
1388
+ (Sam Phippen).
1389
+ * `rspec --init` no longer generates an incorrect warning about `--configure`
1390
+ being deprecated (Sam Phippen).
1391
+ * Fix pluralization of `1 seconds` (Odin Dutton)
1392
+ * Fix ANSICON url (Jarmo Pertman)
1393
+ * Use dup of Time so reporting isn't clobbered by examples that modify Time
1394
+ without properly restoring it. (David Chelimsky)
1395
+
1396
+ Deprecations
1397
+
1398
+ * `share_as` is no longer needed. `shared_context` and/or
1399
+ `RSpec::SharedContext` provide better mechanisms (Sam Phippen).
1400
+ * Deprecate `RSpec.configuration` with a block (use `RSpec.configure`).
1401
+
1402
+
1403
+ ### 2.11.1 / 2012-07-18
1404
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.11.0...v2.11.1)
1405
+
1406
+ Bug fixes
1407
+
1408
+ * Fix the way we autoload RSpec::Matchers so that custom matchers can be
1409
+ defined before rspec-core has been configured to definitely use
1410
+ rspec-expectations. (Myron Marston)
1411
+ * Fix typo in --help message printed for -e option. (Jo Liss)
1412
+ * Fix ruby warnings. (Myron Marston)
1413
+ * Ignore mock expectation failures when the example has already failed.
1414
+ Mock expectation failures have always been ignored in this situation,
1415
+ but due to my changes in 27059bf1 it was printing a confusing message.
1416
+ (Myron Marston).
1417
+
1418
+ ### 2.11.0 / 2012-07-07
1419
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.10.1...v2.11.0)
1420
+
1421
+ Enhancements
1422
+
1423
+ * Support multiple `--example` options. (Daniel Doubrovkine @dblock)
1424
+ * Named subject e.g. `subject(:article) { Article.new }`
1425
+ * 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/)
1426
+ for background.
1427
+ * thanks to Bradley Schaefer for suggesting it and Avdi Grimm for almost
1428
+ suggesting it.
1429
+ * `config.mock_with` and `config.expect_with` yield custom config object to a
1430
+ block if given
1431
+ * aids decoupling from rspec-core's configuation
1432
+ * `include_context` and `include_examples` support a block, which gets eval'd
1433
+ in the current context (vs the nested context generated by `it_behaves_like`).
1434
+ * Add `config.order = 'random'` to the `spec_helper.rb` generated by `rspec
1435
+ --init`.
1436
+ * Delay the loading of DRb (Myron Marston).
1437
+ * Limit monkey patching of `describe` onto just the objects that need it rather
1438
+ than every object in the system (Myron Marston).
1439
+
1440
+ Bug fixes
1441
+
1442
+ * Support alternative path separators. For example, on Windows, you can now do
1443
+ this: `rspec spec\subdir`. (Jarmo Pertman @jarmo)
1444
+ * When an example raises an error and an after or around hook does as
1445
+ well, print out the hook error. Previously, the error was silenced and
1446
+ the user got no feedback about what happened. (Myron Marston)
1447
+ * `--require` and `-I` are merged among different configuration sources (Andy
1448
+ Lindeman)
1449
+ * Delegate to mocha methods instead of aliasing them in mocha adapter.
1450
+
1451
+ ### 2.10.1 / 2012-05-19
1452
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.10.0...v2.10.1)
1453
+
1454
+ Bug fixes
1455
+
1456
+ * `RSpec.reset` properly reinits configuration and world
1457
+ * Call `to_s` before `split` on exception messages that might not always be
1458
+ Strings (slyphon)
1459
+
1460
+ ### 2.10.0 / 2012-05-03
1461
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.9.0...v2.10.0)
1462
+
1463
+ Enhancements
1464
+
1465
+ * Add `prepend_before` and `append_after` hooks (preethiramdev)
1466
+ * intended for extension libs
1467
+ * restores rspec-1 behavior
1468
+ * Reporting of profiled examples (moro)
1469
+ * Report the total amount of time taken for the top slowest examples.
1470
+ * Report what percentage the slowest examples took from the total runtime.
1471
+
1472
+ Bug fixes
1473
+
1474
+ * Properly parse `SPEC_OPTS` options.
1475
+ * `example.description` returns the location of the example if there is no
1476
+ explicit description or matcher-generated description.
1477
+ * RDoc fixes (Grzegorz Świrski)
1478
+ * Do not modify example ancestry when dumping errors (Michael Grosser)
1479
+
1480
+ ### 2.9.0 / 2012-03-17
1481
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.8.0...v2.9.0)
1482
+
1483
+ Enhancements
1484
+
1485
+ * Support for "X minutes X seconds" spec run duration in formatter. (uzzz)
1486
+ * Strip whitespace from group and example names in doc formatter.
1487
+ * Removed spork-0.9 shim. If you're using spork-0.8.x, you'll need to upgrade
1488
+ to 0.9.0.
1489
+
1490
+ Bug fixes
1491
+
1492
+ * Restore `--full_backtrace` option
1493
+ * Ensure that values passed to `config.filter_run` are respected when running
1494
+ over DRb (using spork).
1495
+ * Ensure shared example groups are reset after a run (as example groups are).
1496
+ * Remove `rescue false` from calls to filters represented as Procs
1497
+ * Ensure `described_class` gets the closest constant (pyromaniac)
1498
+ * In "autorun", don't run the specs in the `at_exit` hook if there was an
1499
+ exception (most likely due to a SyntaxError). (sunaku)
1500
+ * Don't extend groups with modules already used to extend ancestor groups.
1501
+ * `its` correctly memoizes nil or false values (Yamada Masaki)
1502
+
1503
+ ### 2.8.0 / 2012-01-04
1504
+
1505
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.8.0.rc2...v2.8.0)
1506
+
1507
+ Bug fixes
1508
+
1509
+ * For metadata filtering, restore passing the entire array to the proc, rather
1510
+ than each item in the array (weidenfreak)
1511
+ * Ensure each spec file is loaded only once
1512
+ * Fixes a bug that caused all the examples in a file to be run when
1513
+ referenced twice with line numbers in a command, e.g.
1514
+ * `rspec path/to/file:37 path/to/file:42`
1515
+
1516
+ ### 2.8.0.rc2 / 2011-12-19
1517
+
1518
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.8.0.rc1...v2.8.0.rc2)
1519
+
1520
+ Enhancments
1521
+
1522
+ * new `--init` command (Peter Schröder)
1523
+ * generates `spec/spec_helper.rb`
1524
+ * deletes obsolete files (on confirmation)
1525
+ * merged with and deprecates `--configure` command, which generated
1526
+ `.rspec`
1527
+ * use `require_relative` when available (Ian Leitch)
1528
+ * `include_context` and `include_examples` accept params (Calvin Bascom)
1529
+ * print the time for every example in the html formatter (Richie Vos)
1530
+ * several tasty refactoring niblets (Sasha)
1531
+ * `it "does something", :x => [:foo,'bar',/baz/] (Ivan Neverov)
1532
+ * supports matching n command line tag values with an example or group
1533
+
1534
+ ### 2.8.0.rc1 / 2011-11-06
1535
+
1536
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.7.1...v2.8.0.rc1)
1537
+
1538
+ Enhancements
1539
+
1540
+ * `--order` (Justin Ko)
1541
+ * run examples in random order: `--order rand`
1542
+ * specify the seed: `--order rand:123`
1543
+ * `--seed SEED`
1544
+ * equivalent of `--order rand:SEED`
1545
+ * SharedContext supports `let` (David Chelimsky)
1546
+ * Filter improvements (David Chelimsky)
1547
+ * override opposing tags from the command line
1548
+ * override RSpec.configure tags from the command line
1549
+ * `--line_number 37` overrides all other filters
1550
+ * `path/to/file.rb:37` overrides all other filters
1551
+ * refactor: consolidate filter management in a FilterManger object
1552
+ * Eliminate Ruby warnings (Matijs van Zuijlen)
1553
+ * Make reporter.report an API (David Chelimsky)
1554
+ * supports extension tools like interative_rspec
1555
+
1556
+ Changes
1557
+
1558
+ * change `config.color_enabled` (getter/setter/predicate) to `color` to align
1559
+ with `--[no]-color` CLI option.
1560
+ * `color_enabled` is still supported for now, but will likley be deprecated
1561
+ in a 2.x release so we can remove it in 3.0.
1562
+
1563
+ Bug fixes
1564
+
1565
+ * Make sure the `bar` in `--tag foo:bar` makes it to DRb (Aaron Gibralter)
1566
+ * Fix bug where full descriptions of groups nested 3 deep were repeated.
1567
+ * Restore report of time to run to start after files are loaded.
1568
+ * fixes bug where run times were cumalitive in spork
1569
+ * fixes compatibility with time-series metrics
1570
+ * Don't error out when `config.mock_with` or `expect_with` is re-specifying the
1571
+ current config (Myron Marston)
1572
+
1573
+ * Deprecations
1574
+ * :alias option on `configuration.add_setting`. Use `:alias_with` on the
1575
+ original setting declaration instead.
1576
+
1577
+ ### 2.7.1 / 2011-10-20
1578
+
1579
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.7.0...v2.7.1)
1580
+
1581
+ Bug fixes
1582
+
1583
+ * tell autotest the correct place to find the rspec executable
1584
+
1585
+ ### 2.7.0 / 2011-10-16
1586
+
1587
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.6.4...v2.7.0)
1588
+
1589
+ NOTE: RSpec's release policy dictates that there should not be any backward
1590
+ incompatible changes in minor releases, but we're making an exception to
1591
+ release a change to how RSpec interacts with other command line tools.
1592
+
1593
+ As of 2.7.0, you must explicity `require "rspec/autorun"` unless you use the
1594
+ `rspec` command (which already does this for you).
1595
+
1596
+ Enhancements
1597
+
1598
+ * Add `example.exception` (David Chelimsky)
1599
+ * `--default_path` command line option (Justin Ko)
1600
+ * support multiple `--line_number` options (David J. Hamilton)
1601
+ * also supports `path/to/file.rb:5:9` (runs examples on lines 5 and 9)
1602
+ * Allow classes/modules to be used as shared example group identifiers (Arthur
1603
+ Gunn)
1604
+ * Friendly error message when shared context cannot be found (Sławosz
1605
+ Sławiński)
1606
+ * Clear formatters when resetting config (John Bintz)
1607
+ * Add `xspecify` and xexample as temp-pending methods (David Chelimsky)
1608
+ * Add `--no-drb` option (Iain Hecker)
1609
+ * Provide more accurate run time by registering start time before code is
1610
+ loaded (David Chelimsky)
1611
+ * reverted in 2.8.0
1612
+ * Rake task default pattern finds specs in symlinked dirs (Kelly Felkins)
1613
+ * Rake task no longer does anything to invoke bundler since Bundler already
1614
+ handles it for us. Thanks to Andre Arko for the tip.
1615
+ * Add `--failure-exit-code` option (Chris Griego)
1616
+
1617
+ Bug fixes
1618
+
1619
+ * Include `Rake::DSL` to remove deprecation warnings in Rake > 0.8.7 (Pivotal
1620
+ Casebook)
1621
+ * Only eval `let` block once even if it returns `nil` (Adam Meehan)
1622
+ * Fix `--pattern` option (wasn't being recognized) (David Chelimsky)
1623
+ * Only implicitly `require "rspec/autorun"` with the `rspec` command (David
1624
+ Chelimsky)
1625
+ * Ensure that rspec's `at_exit` defines the exit code (Daniel Doubrovkine)
1626
+ * Show the correct snippet in the HTML and TextMate formatters (Brian Faherty)
1627
+
1628
+ ### 2.6.4 / 2011-06-06
1629
+
1630
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.6.3...v2.6.4)
1631
+
1632
+ NOTE: RSpec's release policy dictates that there should not be new
1633
+ functionality in patch releases, but this minor enhancement slipped in by
1634
+ accident. As it doesn't add a new API, we decided to leave it in rather than
1635
+ roll back this release.
1636
+
1637
+ Enhancements
1638
+
1639
+ * Add summary of commands to run individual failed examples.
1640
+
1641
+ Bug fixes
1642
+
1643
+ * Support exclusion filters in DRb. (Yann Lugrin)
1644
+ * Fix --example escaping when run over DRb. (Elliot Winkler)
1645
+ * Use standard ANSI codes for color formatting so colors work in a wider set of
1646
+ color schemes.
1647
+
1648
+ ### 2.6.3 / 2011-05-24
1649
+
1650
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.6.2...v2.6.3)
1651
+
1652
+ Bug fixes
1653
+
1654
+ * Explicitly convert exit code to integer, avoiding TypeError when return
1655
+ value of run is IO object proxied by `DRb::DRbObject` (Julian Scheid)
1656
+ * Clarify behavior of `--example` command line option
1657
+ * Build using a rubygems-1.6.2 to avoid downstream yaml parsing error
1658
+
1659
+ ### 2.6.2 / 2011-05-21
1660
+
1661
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.6.1...v2.6.2)
1662
+
1663
+ Bug fixes
1664
+
1665
+ * Warn rather than raise when HOME env var is not defined
1666
+ * Properly merge command-line exclusions with default :if and :unless (joshcooper)
1667
+
1668
+ ### 2.6.1 / 2011-05-19
1669
+
1670
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.6.0...v2.6.1)
1671
+
1672
+ Bug fixes
1673
+
1674
+ * Don't extend nil when filters are nil
1675
+ * `require 'rspec/autorun'` when running rcov.
1676
+
1677
+ ### 2.6.0 / 2011-05-12
1678
+
1679
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.5.1...v2.6.0)
1680
+
1681
+ Enhancements
1682
+
1683
+ * `shared_context` (Damian Nurzynski)
1684
+ * extend groups matching specific metadata with:
1685
+ * method definitions
1686
+ * subject declarations
1687
+ * let/let! declarations
1688
+ * etc (anything you can do in a group)
1689
+ * `its([:key])` works for any subject with #[]. (Peter Jaros)
1690
+ * `treat_symbols_as_metadata_keys_with_true_values` (Myron Marston)
1691
+ * Print a deprecation warning when you configure RSpec after defining an
1692
+ example. All configuration should happen before any examples are defined.
1693
+ (Myron Marston)
1694
+ * Pass the exit status of a DRb run to the invoking process. This causes specs
1695
+ run via DRb to not just return true or false. (Ilkka Laukkanen)
1696
+ * Refactoring of `ConfigurationOptions#parse_options` (Rodrigo Rosenfeld Rosas)
1697
+ * Report excluded filters in runner output (tip from andyl)
1698
+ * Clean up messages for filters/tags.
1699
+ * Restore --pattern/-P command line option from rspec-1
1700
+ * Support false as well as true in config.full_backtrace= (Andreas Tolf
1701
+ Tolfsen)
1702
+
1703
+ Bug fixes
1704
+
1705
+ * Don't stumble over an exception without a message (Hans Hasselberg)
1706
+ * Remove non-ascii characters from comments that were choking rcov (Geoffrey
1707
+ Byers)
1708
+ * Fixed backtrace so it doesn't include lines from before the autorun at_exit
1709
+ hook (Myron Marston)
1710
+ * Include RSpec::Matchers when first example group is defined, rather than just
1711
+ before running the examples. This works around an obscure bug in ruby 1.9
1712
+ that can cause infinite recursion. (Myron Marston)
1713
+ * Don't send `example_group_[started|finished]` to formatters for empty groups.
1714
+ * Get specs passing on jruby (Sidu Ponnappa)
1715
+ * Fix bug where mixing nested groups and outer-level examples gave
1716
+ unpredictable :line_number behavior (Artur Małecki)
1717
+ * Regexp.escape the argument to --example (tip from Elliot Winkler)
1718
+ * Correctly pass/fail pending block with message expectations
1719
+ * CommandLine returns exit status (0/1) instead of true/false
1720
+ * Create path to formatter output file if it doesn't exist (marekj).
1721
+
1722
+
1723
+ ### 2.5.1 / 2011-02-06
1724
+
1725
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.5.0...v2.5.1)
1726
+
1727
+ NOTE: this release breaks compatibility with rspec/autotest/bundler
1728
+ integration, but does so in order to greatly simplify it.
1729
+
1730
+ With this release, if you want the generated autotest command to include
1731
+ 'bundle exec', require Autotest's bundler plugin in a .autotest file in the
1732
+ project's root directory or in your home directory:
1733
+
1734
+ require "autotest/bundler"
1735
+
1736
+ Now you can just type 'autotest' on the commmand line and it will work as you expect.
1737
+
1738
+ If you don't want 'bundle exec', there is nothing you have to do.
1739
+
1740
+ ### 2.5.0 / 2011-02-05
1741
+
1742
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.4.0...v2.5.0)
1743
+
1744
+ Enhancements
1745
+
1746
+ * Autotest::Rspec2 parses command line args passed to autotest after '--'
1747
+ * --skip-bundler option for autotest command
1748
+ * Autotest regexp fixes (Jon Rowe)
1749
+ * Add filters to html and textmate formatters (Daniel Quimper)
1750
+ * Explicit passing of block (need for JRuby 1.6) (John Firebaugh)
1751
+
1752
+ Bug fixes
1753
+
1754
+ * fix dom IDs in HTML formatter (Brian Faherty)
1755
+ * fix bug with --drb + formatters when not running in drb
1756
+ * include --tag options in drb args (monocle)
1757
+ * fix regression so now SPEC_OPTS take precedence over CLI options again (Roman
1758
+ Chernyatchik)
1759
+ * only call its(:attribute) once (failing example from Brian Dunn)
1760
+ * fix bizarre bug where rspec would hang after String.alias :to_int :to_i
1761
+ (Damian Nurzynski)
1762
+
1763
+ Deprecations
1764
+
1765
+ * implicit inclusion of 'bundle exec' when Gemfile present (use autotest's
1766
+ bundler plugin instead)
1767
+
1768
+ ### 2.4.0 / 2011-01-02
1769
+
1770
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.3.1...v2.4.0)
1771
+
1772
+ Enhancements
1773
+
1774
+ * start the debugger on -d so the stack trace is visible when it stops
1775
+ (Clifford Heath)
1776
+ * apply hook filtering to examples as well as groups (Myron Marston)
1777
+ * support multiple formatters, each with their own output
1778
+ * show exception classes in failure messages unless they come from RSpec
1779
+ matchers or message expectations
1780
+ * before(:all) { pending } sets all examples to pending
1781
+
1782
+ Bug fixes
1783
+
1784
+ * fix bug due to change in behavior of reject in Ruby 1.9.3-dev (Shota
1785
+ Fukumori)
1786
+ * fix bug when running in jruby: be explicit about passing block to super (John
1787
+ Firebaugh)
1788
+ * rake task doesn't choke on paths with quotes (Janmejay Singh)
1789
+ * restore --options option from rspec-1
1790
+ * require 'ostruct' to fix bug with its([key]) (Kim Burgestrand)
1791
+ * --configure option generates .rspec file instead of autotest/discover.rb
1792
+
1793
+ ### 2.3.1 / 2010-12-16
1794
+
1795
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.3.0...v2.3.1)
1796
+
1797
+ Bug fixes
1798
+
1799
+ * send debugger warning message to $stdout if RSpec.configuration.error_stream
1800
+ has not been defined yet.
1801
+ * HTML Formatter _finally_ properly displays nested groups (Jarmo Pertman)
1802
+ * eliminate some warnings when running RSpec's own suite (Jarmo Pertman)
1803
+
1804
+ ### 2.3.0 / 2010-12-12
1805
+
1806
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.2.1...v2.3.0)
1807
+
1808
+ Enhancements
1809
+
1810
+ * tell autotest to use "rspec2" if it sees a .rspec file in the project's root
1811
+ directory
1812
+ * replaces the need for ./autotest/discover.rb, which will not work with
1813
+ all versions of ZenTest and/or autotest
1814
+ * config.expect_with
1815
+ * :rspec # => rspec/expectations
1816
+ * :stdlib # => test/unit/assertions
1817
+ * :rspec, :stdlib # => both
1818
+
1819
+ Bug fixes
1820
+
1821
+ * fix dev Gemfile to work on non-mac-os machines (Lake Denman)
1822
+ * ensure explicit subject is only eval'd once (Laszlo Bacsi)
1823
+
1824
+ ### 2.2.1 / 2010-11-28
1825
+
1826
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.2.0...v2.2.1)
1827
+
1828
+ Bug fixes
1829
+ * alias_method instead of override Kernel#method_missing (John Wilger)
1830
+ * changed --autotest to --tty in generated command (MIKAMI Yoshiyuki)
1831
+ * revert change to debugger (had introduced conflict with Rails)
1832
+ * also restored --debugger/-debug option
1833
+
1834
+ ### 2.2.0 / 2010-11-28
1835
+
1836
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.1.0...v2.2.0)
1837
+
1838
+ Deprecations/changes
1839
+
1840
+ * --debug/-d on command line is deprecated and now has no effect
1841
+ * win32console is now ignored; Windows users must use ANSICON for color support
1842
+ (Bosko Ivanisevic)
1843
+
1844
+ Enhancements
1845
+
1846
+ * When developing locally rspec-core now works with the rspec-dev setup or your
1847
+ local gems
1848
+ * Raise exception with helpful message when rspec-1 is loaded alongside rspec-2
1849
+ (Justin Ko)
1850
+ * debugger statements _just work_ as long as ruby-debug is installed
1851
+ * otherwise you get warned, but not fired
1852
+ * Expose example.metadata in around hooks
1853
+ * Performance improvments (much faster now)
1854
+
1855
+ Bug fixes
1856
+
1857
+ * Make sure --fail-fast makes it across drb
1858
+ * Pass -Ilib:spec to rcov
1859
+
1860
+ ### 2.1.0 / 2010-11-07
1861
+
1862
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.0.1...v2.1.0)
1863
+
1864
+ Enhancments
1865
+
1866
+ * Add skip_bundler option to rake task to tell rake task to ignore the presence
1867
+ of a Gemfile (jfelchner)
1868
+ * Add gemfile option to rake task to tell rake task what Gemfile to look for
1869
+ (defaults to 'Gemfile')
1870
+ * Allow passing caller trace into Metadata to support extensions (Glenn
1871
+ Vanderburg)
1872
+ * Add deprecation warning for Spec::Runner.configure to aid upgrade from
1873
+ RSpec-1
1874
+ * Add deprecated Spec::Rake::SpecTask to aid upgrade from RSpec-1
1875
+ * Add 'autospec' command with helpful message to aid upgrade from RSpec-1
1876
+ * Add support for filtering with tags on CLI (Lailson Bandeira)
1877
+ * Add a helpful message about RUBYOPT when require fails in bin/rspec (slyphon)
1878
+ * Add "-Ilib" to the default rcov options (Tianyi Cui)
1879
+ * Make the expectation framework configurable (default rspec, of course)
1880
+ (Justin Ko)
1881
+ * Add 'pending' to be conditional (Myron Marston)
1882
+ * Add explicit support for :if and :unless as metadata keys for conditional run
1883
+ of examples (Myron Marston)
1884
+ * Add --fail-fast command line option (Jeff Kreeftmeijer)
1885
+
1886
+ Bug fixes
1887
+
1888
+ * Eliminate stack overflow with "subject { self }"
1889
+ * Require 'rspec/core' in the Raketask (ensures it required when running rcov)
1890
+
1891
+ ### 2.0.1 / 2010-10-18
1892
+
1893
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.0.0...v2.0.1)
1894
+
1895
+ Bug fixes
1896
+
1897
+ * Restore color when using spork + autotest
1898
+ * Pending examples without docstrings render the correct message (Josep M.
1899
+ Bach)
1900
+ * Fixed bug where a failure in a spec file ending in anything but _spec.rb
1901
+ would fail in a confusing way.
1902
+ * Support backtrace lines from erb templates in html formatter (Alex Crichton)
1903
+
1904
+ ### 2.0.0 / 2010-10-10
1905
+
1906
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.0.0.rc...v2.0.0)
1907
+
1908
+ RSpec-1 compatibility
1909
+
1910
+ * Rake task uses ENV["SPEC"] as file list if present
1911
+
1912
+ Bug fixes
1913
+
1914
+ * Bug Fix: optparse --out foo.txt (Leonardo Bessa)
1915
+ * Suppress color codes for non-tty output (except autotest)
1916
+
1917
+ ### 2.0.0.rc / 2010-10-05
1918
+
1919
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.0.0.beta.22...v2.0.0.rc)
1920
+
1921
+ Enhancements
1922
+
1923
+ * implicitly require unknown formatters so you don't have to require the file
1924
+ explicitly on the commmand line (Michael Grosser)
1925
+ * add --out/-o option to assign output target
1926
+ * added fail_fast configuration option to abort on first failure
1927
+ * support a Hash subject (its([:key]) { should == value }) (Josep M. Bach)
1928
+
1929
+ Bug fixes
1930
+
1931
+ * Explicitly require rspec version to fix broken rdoc task (Hans de Graaff)
1932
+ * Ignore backtrace lines that come from other languages, like Java or
1933
+ Javascript (Charles Lowell)
1934
+ * Rake task now does what is expected when setting (or not setting)
1935
+ fail_on_error and verbose
1936
+ * Fix bug in which before/after(:all) hooks were running on excluded nested
1937
+ groups (Myron Marston)
1938
+ * Fix before(:all) error handling so that it fails examples in nested groups,
1939
+ too (Myron Marston)
1940
+
1941
+ ### 2.0.0.beta.22 / 2010-09-12
1942
+
1943
+ [Full Changelog](http://github.com/rspec/rspec-core/compare/v2.0.0.beta.20...v2.0.0.beta.22)
1944
+
1945
+ Enhancements
1946
+
1947
+ * removed at_exit hook
1948
+ * CTRL-C stops the run (almost) immediately
1949
+ * first it cleans things up by running the appropriate after(:all) and
1950
+ after(:suite) hooks
1951
+ * then it reports on any examples that have already run
1952
+ * cleaned up rake task
1953
+ * generate correct task under variety of conditions
1954
+ * options are more consistent
1955
+ * deprecated redundant options
1956
+ * run 'bundle exec autotest' when Gemfile is present
1957
+ * support ERB in .rspec options files (Justin Ko)
1958
+ * depend on bundler for development tasks (Myron Marston)
1959
+ * add example_group_finished to formatters and reporter (Roman Chernyatchik)
1960
+
1961
+ Bug fixes
1962
+
1963
+ * support paths with spaces when using autotest (Andreas Neuhaus)
1964
+ * fix module_exec with ruby 1.8.6 (Myron Marston)
1965
+ * remove context method from top-level
1966
+ * was conflicting with irb, for example
1967
+ * errors in before(:all) are now reported correctly (Chad Humphries)
1968
+
1969
+ Removals
1970
+
1971
+ * removed -o --options-file command line option
1972
+ * use ./.rspec and ~/.rspec