aruba 1.0.0.pre.alpha.2 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (135) hide show
  1. checksums.yaml +5 -5
  2. data/.github/PULL_REQUEST_TEMPLATE.md +2 -1
  3. data/.rspec +0 -1
  4. data/.rubocop.yml +46 -182
  5. data/.rubocop_todo.yml +216 -0
  6. data/.simplecov +7 -5
  7. data/.travis.yml +56 -40
  8. data/.yardopts +3 -0
  9. data/CHANGELOG.md +1312 -0
  10. data/CONTRIBUTING.md +175 -83
  11. data/Gemfile +5 -69
  12. data/LICENSE +1 -1
  13. data/README.md +58 -21
  14. data/Rakefile +27 -54
  15. data/appveyor.yml +7 -10
  16. data/aruba.gemspec +38 -19
  17. data/bin/console +3 -12
  18. data/cucumber.yml +4 -22
  19. data/exe/aruba +1 -1
  20. data/fixtures/cli-app/README.md +1 -1
  21. data/fixtures/cli-app/Rakefile +1 -1
  22. data/fixtures/cli-app/bin/aruba-test-cli +1 -1
  23. data/fixtures/cli-app/cli-app.gemspec +4 -4
  24. data/fixtures/cli-app/lib/cli/app.rb +1 -1
  25. data/fixtures/cli-app/lib/cli/app/suppress_simple_cov_output.rb +3 -3
  26. data/fixtures/cli-app/lib/cli/app/version.rb +1 -1
  27. data/fixtures/cli-app/spec/spec_helper.rb +3 -2
  28. data/fixtures/empty-app/Rakefile +1 -1
  29. data/fixtures/empty-app/cli-app.gemspec +4 -4
  30. data/fixtures/empty-app/lib/cli/app.rb +0 -2
  31. data/fixtures/empty-app/lib/cli/app/version.rb +1 -1
  32. data/fixtures/getting-started-app/Gemfile +1 -1
  33. data/lib/aruba/api.rb +8 -15
  34. data/lib/aruba/api/bundler.rb +16 -0
  35. data/lib/aruba/api/commands.rb +272 -0
  36. data/lib/aruba/api/core.rb +82 -43
  37. data/lib/aruba/api/environment.rb +24 -7
  38. data/lib/aruba/api/filesystem.rb +66 -64
  39. data/lib/aruba/api/text.rb +17 -11
  40. data/lib/aruba/aruba_path.rb +25 -111
  41. data/lib/aruba/basic_configuration.rb +8 -25
  42. data/lib/aruba/basic_configuration/option.rb +2 -2
  43. data/lib/aruba/cli.rb +4 -1
  44. data/lib/aruba/colorizer.rb +10 -99
  45. data/lib/aruba/command.rb +4 -0
  46. data/lib/aruba/config/jruby.rb +15 -5
  47. data/lib/aruba/config_wrapper.rb +17 -2
  48. data/lib/aruba/configuration.rb +107 -0
  49. data/lib/aruba/console.rb +5 -7
  50. data/lib/aruba/console/help.rb +5 -2
  51. data/lib/aruba/contracts/absolute_path.rb +3 -3
  52. data/lib/aruba/contracts/is_power_of_two.rb +2 -2
  53. data/lib/aruba/contracts/relative_path.rb +3 -3
  54. data/lib/aruba/cucumber.rb +0 -3
  55. data/lib/aruba/cucumber/command.rb +227 -190
  56. data/lib/aruba/cucumber/environment.rb +1 -1
  57. data/lib/aruba/cucumber/file.rb +56 -50
  58. data/lib/aruba/cucumber/hooks.rb +10 -63
  59. data/lib/aruba/cucumber/testing_frameworks.rb +76 -50
  60. data/lib/aruba/event_bus.rb +4 -2
  61. data/lib/aruba/event_bus/name_resolver.rb +10 -10
  62. data/lib/aruba/events.rb +2 -1
  63. data/lib/aruba/hooks.rb +3 -5
  64. data/lib/aruba/in_config_wrapper.rb +10 -3
  65. data/lib/aruba/initializer.rb +40 -34
  66. data/lib/aruba/matchers/base/base_matcher.rb +2 -11
  67. data/lib/aruba/matchers/base/message_indenter.rb +19 -0
  68. data/lib/aruba/matchers/base/object_formatter.rb +2 -7
  69. data/lib/aruba/matchers/collection/include_an_object.rb +11 -13
  70. data/lib/aruba/matchers/command/be_successfully_executed.rb +8 -4
  71. data/lib/aruba/matchers/command/have_exit_status.rb +16 -4
  72. data/lib/aruba/matchers/command/have_finished_in_time.rb +5 -5
  73. data/lib/aruba/matchers/command/have_output.rb +12 -5
  74. data/lib/aruba/matchers/command/have_output_on_stderr.rb +4 -2
  75. data/lib/aruba/matchers/command/have_output_on_stdout.rb +4 -2
  76. data/lib/aruba/matchers/command/have_output_size.rb +2 -2
  77. data/lib/aruba/matchers/directory/be_an_existing_directory.rb +5 -7
  78. data/lib/aruba/matchers/directory/have_sub_directory.rb +10 -7
  79. data/lib/aruba/matchers/file/be_a_command_found_in_path.rb +2 -4
  80. data/lib/aruba/matchers/file/be_an_existing_executable.rb +4 -6
  81. data/lib/aruba/matchers/file/be_an_existing_file.rb +5 -7
  82. data/lib/aruba/matchers/file/have_file_content.rb +4 -4
  83. data/lib/aruba/matchers/file/have_file_size.rb +8 -8
  84. data/lib/aruba/matchers/file/have_same_file_content.rb +9 -12
  85. data/lib/aruba/matchers/path/a_path_matching_pattern.rb +2 -4
  86. data/lib/aruba/matchers/path/be_an_absolute_path.rb +3 -5
  87. data/lib/aruba/matchers/path/be_an_existing_path.rb +4 -6
  88. data/lib/aruba/matchers/path/have_permissions.rb +8 -8
  89. data/lib/aruba/matchers/string/include_output_string.rb +8 -10
  90. data/lib/aruba/matchers/string/match_output_string.rb +9 -11
  91. data/lib/aruba/matchers/string/output_string_eq.rb +7 -9
  92. data/lib/aruba/platform.rb +0 -8
  93. data/lib/aruba/platforms/announcer.rb +60 -85
  94. data/lib/aruba/platforms/aruba_file_creator.rb +4 -2
  95. data/lib/aruba/platforms/aruba_fixed_size_file_creator.rb +8 -3
  96. data/lib/aruba/platforms/aruba_logger.rb +22 -2
  97. data/lib/aruba/platforms/command_monitor.rb +15 -102
  98. data/lib/aruba/platforms/determine_disk_usage.rb +56 -19
  99. data/lib/aruba/platforms/filesystem_status.rb +9 -9
  100. data/lib/aruba/platforms/local_environment.rb +2 -2
  101. data/lib/aruba/platforms/simple_table.rb +3 -11
  102. data/lib/aruba/platforms/unix_command_string.rb +7 -4
  103. data/lib/aruba/platforms/unix_environment_variables.rb +19 -26
  104. data/lib/aruba/platforms/unix_platform.rb +18 -39
  105. data/lib/aruba/platforms/unix_which.rb +3 -2
  106. data/lib/aruba/platforms/windows_command_string.rb +20 -7
  107. data/lib/aruba/platforms/windows_environment_variables.rb +42 -30
  108. data/lib/aruba/platforms/windows_platform.rb +4 -0
  109. data/lib/aruba/platforms/windows_which.rb +9 -4
  110. data/lib/aruba/processes/basic_process.rb +21 -27
  111. data/lib/aruba/processes/debug_process.rb +16 -5
  112. data/lib/aruba/processes/in_process.rb +20 -9
  113. data/lib/aruba/processes/spawn_process.rb +64 -36
  114. data/lib/aruba/rspec.rb +28 -31
  115. data/lib/aruba/runtime.rb +16 -7
  116. data/lib/aruba/setup.rb +32 -17
  117. data/lib/aruba/tasks/docker_helpers.rb +4 -2
  118. data/lib/aruba/version.rb +1 -1
  119. metadata +194 -64
  120. data/History.md +0 -612
  121. data/bin/bootstrap +0 -34
  122. data/bin/build +0 -3
  123. data/bin/release +0 -3
  124. data/fixtures/spawn_process/stderr.sh +0 -3
  125. data/lib/aruba/api/command.rb +0 -309
  126. data/lib/aruba/api/deprecated.rb +0 -895
  127. data/lib/aruba/api/rvm.rb +0 -44
  128. data/lib/aruba/config.rb +0 -101
  129. data/lib/aruba/cucumber/rvm.rb +0 -3
  130. data/lib/aruba/in_process.rb +0 -14
  131. data/lib/aruba/jruby.rb +0 -4
  132. data/lib/aruba/matchers/path/match_path_pattern.rb +0 -41
  133. data/lib/aruba/matchers/rspec_matcher_include_regexp.rb +0 -25
  134. data/lib/aruba/platforms/disk_usage_calculator.rb +0 -20
  135. data/lib/aruba/spawn_process.rb +0 -11
data/.simplecov CHANGED
@@ -1,10 +1,9 @@
1
- # Run simplecov by default
2
- SimpleCov.start unless ENV.key? 'ARUBA_NO_COVERAGE'
3
-
4
1
  SimpleCov.configure do
2
+ # Activate branch coverage
3
+ enable_coverage :branch
4
+
5
5
  # ignore this file
6
6
  add_filter '.simplecov'
7
- add_filter 'spec'
8
7
  add_filter 'features'
9
8
 
10
9
  # Rake tasks aren't tested with rspec
@@ -30,5 +29,8 @@ SimpleCov.configure do
30
29
 
31
30
  # Specs are reported on to ensure that all examples are being run and all
32
31
  # lets, befores, afters, etc are being used.
33
- add_group 'Specs', 'spec'
32
+ add_group 'Specs', 'spec/'
34
33
  end
34
+
35
+ # Run simplecov by default
36
+ SimpleCov.start unless ENV.key? 'ARUBA_NO_COVERAGE'
@@ -1,46 +1,62 @@
1
- sudo: false
2
1
  language: ruby
3
- script: bin/test
4
- install: bin/bootstrap --without development debug
5
- rvm:
6
- - 1.9.3
7
- - 2.0.0
8
- - 2.1.10
9
- - 2.2.7
10
- - 2.3.4
11
- - 2.4.1
12
- - ruby-head
13
- - jruby
14
- - jruby-20mode
15
- - jruby-21mode
16
- - jruby-9.1.12.0
17
- matrix:
2
+ script: bundle exec rake test
3
+ cache: bundler
4
+
5
+ jobs:
18
6
  include:
19
- - rvm: jruby-9.1.12.0
20
- env: JRUBY_OPTS='--dev'
21
- - rvm: jruby-9.1.12.0-20mode
22
- env: JRUBY_OPTS='--dev'
23
- - rvm: jruby-9.1.12.0-21mode
24
- env: JRUBY_OPTS='--dev'
7
+ - rvm: ruby-head
8
+ stage: test
9
+ os: linux
10
+ - rvm: ruby-head
11
+ os: osx
12
+ - rvm: 2.7
13
+ os: linux
14
+ - rvm: 2.7
15
+ os: osx
16
+ - rvm: 2.6
17
+ os: linux
18
+ - rvm: 2.6
19
+ os: osx
20
+ - rvm: 2.5
21
+ os: linux
22
+ - rvm: 2.5
23
+ os: osx
24
+ - rvm: 2.4
25
+ os: linux
26
+ - rvm: 2.4
27
+ os: osx
28
+ - rvm: 2.4.0
29
+ os: linux
30
+ - rvm: jruby-9.2
31
+ os: linux
32
+ - rvm: jruby-9.2
33
+ os: osx
34
+ script: bundle exec rake spec
35
+ - stage: lint
36
+ script: bundle exec rake lint
37
+ rvm: 2.6.3
38
+ os: linux
25
39
  allow_failures:
26
- - rvm: ruby-head
27
- - rvm: jruby-9.1.12.0
28
- env: JRUBY_OPTS='--dev'
29
- - rvm: jruby-9.1.12.0-20mode
30
- env: JRUBY_OPTS='--dev'
31
- - rvm: jruby-9.1.12.0-21mode
32
- env: JRUBY_OPTS='--dev'
40
+ - rvm: ruby-head
33
41
  fast_finish: true
34
- notifications:
35
- webhooks:
36
- urls:
37
- - https://webhooks.gitter.im/e/d4d9080e2a8c4910f609
42
+
43
+ branches:
44
+ only:
45
+ - master
46
+
47
+ # notifications:
48
+ # slack: cucumberbdd:oQFVhzsx4R94KWmjlejAJYnM
38
49
  env:
39
50
  global:
40
- - secure: l8uznA5K4K9mZ1krmP3lTMD8WcJ32qGxFOR3jubKHcOBSLB4xSzU2aIqjyJdO+rLzebkwamhJc8pGSIWOUDQYvFiX7splK+uEkbBJ5huAhXtLF4Qgl86bCWbEXYzN7rvn0DQfpJAovyFMNRMnfo70XhwqWzFsaYa7Z0YbqYsJE4=
41
- - JRUBY_OPTS='--dev'
42
- cache: apt
43
- addons:
44
- apt:
45
- packages:
46
- - zsh
51
+ - secure: l8uznA5K4K9mZ1krmP3lTMD8WcJ32qGxFOR3jubKHcOBSLB4xSzU2aIqjyJdO+rLzebkwamhJc8pGSIWOUDQYvFiX7splK+uEkbBJ5huAhXtLF4Qgl86bCWbEXYzN7rvn0DQfpJAovyFMNRMnfo70XhwqWzFsaYa7Z0YbqYsJE4=
52
+ - JAVA_OPTS="
53
+ --add-opens java.base/java.io=ALL-UNNAMED
54
+ --add-opens java.base/java.lang=ALL-UNNAMED
55
+ --add-opens java.base/java.util=ALL-UNNAMED
56
+ --add-opens java.base/java.lang.reflect=ALL-UNNAMED
57
+ --add-opens java.base/java.security.cert=ALL-UNNAMED
58
+ --add-opens java.base/java.security=ALL-UNNAMED
59
+ --add-opens java.base/javax.crypto=ALL-UNNAMED
60
+ --add-opens java.base/sun.nio.ch=ALL-UNNAMED
61
+ --add-opens java.base/java.nio.channels.spi=ALL-UNNAMED
62
+ --illegal-access=warn"
data/.yardopts CHANGED
@@ -1,5 +1,8 @@
1
1
  --output doc/yard
2
2
  --exclude features/
3
+ --exclude bin/bootstrap
4
+ --exclude bin/test
5
+ --exclude license
3
6
  --verbose
4
7
  --markup-provider kramdown
5
8
  --markup markdown
@@ -0,0 +1,1312 @@
1
+ # CHANGELOG
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ This project adheres to [Semantic Versioning][1].
6
+
7
+ This document is formatted according to the principles of [Keep A CHANGELOG][2].
8
+
9
+ ## [1.0.1]
10
+
11
+ ### Bug fixes
12
+
13
+ * Allow use of Aruba with Cucumber 4 ([#715] by [mvz])
14
+
15
+ ### Code quality and documentation improvements
16
+
17
+ * Fix RuboCop offenses ([#693] and [#708] by [luke-hill], [#710], [#711] and
18
+ [#712] by [mvz])
19
+ * Use recent Rake version in fixtures ([#709] by [mvz])
20
+ * Repair YARD annotations ([#707] by [olleolleolle])
21
+
22
+ ## [1.0.0]
23
+
24
+ ### Breaking changes compared to Aruba 0.14.x
25
+
26
+ * Support for Ruby 2.3 and lower has been dropped
27
+ * Deprecated functionality has been removed
28
+ * The home directory is set to aruba's working directory by default
29
+
30
+ ### Detailed changes compared to 1.0.0.pre.alpha.5
31
+
32
+ * Update simplecov ([#704] by [mvz])
33
+ * Several cuke improvements ([#703] by [mvz])
34
+ * Find relative commands from the current Aruba directory ([#702] by [mvz])
35
+ * Update development dependencies ([#701] by [mvz])
36
+ * Clean up linting and fix environment nesting ([#698] by [mvz])
37
+ * Update build configuration ([#696] by [mvz])
38
+ * Fix cd behavior with absolute paths and home directory ([#692] by [mvz])
39
+ * Improve `expand_path` warnings ([#687] by [deivid-rodriguez])
40
+ * Remove unneeded appveyor step ([#690] by [deivid-rodriguez])
41
+ * Fix travis.yml lint task ([#689] by [deivid-rodriguez])
42
+ * Fix cucumber deprecations ([#688] by [deivid-rodriguez])
43
+ * Update gemspec: Metadata and RDoc options ([#686] by [mvz])
44
+ * Update dependencies and fix RuboCop offenses ([#683] by [mvz])
45
+ * Init: Conditionally prefix the `gem aruba` line with a carriage return ([#570] by [xtrasimplicity])
46
+ * Update supported set of rubies([#679] by [mvz])
47
+
48
+ ## [1.0.0.pre.alpha.5]
49
+
50
+ * Improve command failure message ([#675] by [deivid-rodriguez])
51
+ * Bump childprocess dependency ([#674] by [mvz])
52
+ * Suppress keyword argument warnings in Ruby 2.7 ([#672] by [koic])
53
+ * Refactor: Uncouple some of aruba's step definition code ([#666] by [luke-hill])
54
+ * Fix several JRuby build issues
55
+ ([bb770e2e](https://github.com/cucumber/aruba/commit/bb770e2e82ec09807b07eed1f4a124612eeee3f4),
56
+ [#669] and [#671] by [mvz])
57
+ * Clean up build ([#663] by [mvz])
58
+ * Handle announcing combined with DebugProcess ([#665] by [mvz])
59
+ * Allow both 'a' and 'the' in step, as documented ([#660] by [mvz])
60
+ * Fix rubocop issues ([#654] and [#659] by [luke-hill])
61
+ * Fix up JRuby build ([#657] by [mvz])
62
+ * Improve documentation for the `@debug` annotation ([#656] by [mvz])
63
+ * Support windows internal commands ([#655] by [xtrasimplicity])
64
+ * Do not set binmode on output temp files ([#652] by [mvz])
65
+ * Fix JRuby builds ([#637] by [mvz])
66
+ * Restore previously removed behaviors ([#644] by [mvz])
67
+ * Improve cucumber features ([#643] by [mvz])
68
+ * Move development dependency information to gemspec ([#631] by [luke-hill])
69
+ * Fix JRuby before :command helper hook ([#635] by [mvz])
70
+ * Replace problematic AnsiColor module with simple implementation ([#636] by [mvz])
71
+ * Drop Ruby 2.2 support ([#616] by [mvz] and [luke-hill])
72
+
73
+ ## [1.0.0.pre.alpha.4]
74
+
75
+ * Improve documentation: GitHub is not Github ([#629] by [amatsuda])
76
+ * TimeoutError is deprecated in favor of Timeout::Error ([#628] by [amatsuda])
77
+ * Allow use with Cucumber 3.x ([#626] by [mvz])
78
+
79
+ ## [1.0.0.pre.alpha.3]
80
+
81
+ ### Added
82
+
83
+ * Allow `#expand_path` to be used with absolute paths. This will emit a warning,
84
+ which can be silenced with a configuration option ([#540] by [mvz])
85
+ * Allow decimal seconds in Cucumber steps that set Aruba timeout values
86
+ ([#544] by [mvz])
87
+ * Make `have_file_content` diffable ([#562] by [cllns])
88
+ * Restore `@disable-bundler` hook ([#560] by [mvz])
89
+
90
+ ### Changed
91
+
92
+ * Improve documentation for users and developers ([#454], [#456], [#457], [#460],
93
+ [#459], [#461], [#475], [#494] by [olleolleolle], [maxmeyer], [mvz])
94
+ * Make forgetting `setup_aruba` a hard failure ([#510] by [mvz])
95
+ * Update dependencies ([#511], [#541], [#553] by [mvz], [#528] by [maxmeyer], [#615] by [luke-hill] and [mvz])
96
+ * Improve output of `#have_output` matcher ([#546] by [mvz])
97
+ * Removed `have_same_file_content_like` and `a_file_with_same_content_like`
98
+ matchers, in favour of `have_same_file_content_as` and
99
+ `a_file_with_same_content_as` ([#555] by [xtrasimplicity])
100
+
101
+ ### Removed
102
+
103
+ * Remove deprecated functionality ([#483], [#488], [#508] by [mvz])
104
+ * Remove broken RVM-related step definition ([#587] by [mvz])
105
+ * Drop support for Rubies below 2.2 ([#613] by [luke-hill])
106
+
107
+ ### Bug fixes
108
+
109
+ * Fix UTF-8 issues with jRuby ([#462] by [stamhankar999])
110
+ * Allow slashes in file matching regex ([#512] by [scottj97] with [richardxia])
111
+ * Avoid duplicate output appearing in certain cases ([#517] by [maxmeyer] and [mvz])
112
+ * Fix `@no-clobber` breaking process management ([#535] by [doudou])
113
+ * Fix command spawning when spaces occur in the path ([#520] by [mvz])
114
+ * Make exit in in-process runner behave like real Kernel#exit ([#594] by [grosser])
115
+ * Improve compatibility with Windows ([#618] by [mvz])
116
+ - Upcase ENV keys on Windows
117
+ - Properly escape command and arguments on Windows
118
+ - Use correct path separator on Windows
119
+
120
+ ### Developer experience and internal changes
121
+
122
+ * Fix test suite failures ([#452], [#497] by [maxmeyer] and [mvz]; [#487], [#509] by [mvz])
123
+ * Remove development gems for unsupported Rubinius platform ([#464] by [maxmeyer])
124
+ * Update `license_finder` dependency ([#466] by [maxmeyer])
125
+ * Restrict branches to run Travis ([#471] by [junaruga])
126
+ * Maintain Travis builds ([#476] by [maxmeyer]; [#493] [#532], [#536] by [mvz]; [#542], [#596], [#607] by [olleolleolle])
127
+ * Rename History.md to CHANGELOG.md and fix links and formatting, etc. to bring
128
+ it in line with [cucumber/cucumber#521] ([#481], [#482] by [jaysonesmith])
129
+ * Fix YARD documentation issues ([#491] [olleolleolle])
130
+ * Change maintainership ([#495], [#523] by [maxmeyer])
131
+ * Remove commented-out code ([#498] by [olleolleolle])
132
+ * Documentation fixups ([#504] by [roschaefer]; [#530] by [xtrasimplicity]; [#606] by [olleolleolle])
133
+ * Add 'stale' bot ([#507] by [maxmeyer]
134
+ * Update RuboCop and fix some offenses ([#514], [#537] by [mvz])
135
+ * Mark scenarios requiring external commands ([#515] [mvz])
136
+ * Remove cucumber features related to Aruba development ([#522], [#543], [#544] [mvz])
137
+ * Avoid long waits in feature suite ([#544] [mvz])
138
+ * Clean up internally used cuke tags and their implementation ([#548] by [mvz])
139
+ * Test with Ruby 2.5 and 2.6 ([#554] by [nicolasleger], [#578] by [mvz])
140
+ * Fix tests on Debian. ([#575] by [Heinrich])
141
+ * Update development dependencies ([#580] by [mvz])
142
+ * Start work on unifying still and master branches ([#583], [#584] by [mvz])
143
+ * Update CONTRIBUTING.md and drop bin/bootstrap ([#593] by [olleolleolle])
144
+ * Point to https version of GitHub repo URL ([#623] by [amatsuda])
145
+
146
+ ## [1.0.0.pre.alpha.2]
147
+
148
+ * Update examples for usage in README
149
+ * Fix environment manipulation ([#442])
150
+ * Update supported ruby versions in .travis.yml ([#449])
151
+ * Use `license_finder` version which is usable for rubies `< 2.3` ([#451])
152
+ * Wrap test runners in `bundle exec` ([#447])
153
+ * Fix wording in README ([#445])
154
+ * Restructure README and upload feature files to cucumber.pro ([#444])
155
+
156
+ ## [1.0.0.pre.alpha.1]
157
+
158
+ Note: These are changes w.r.t. Aruba version 0.14.1.
159
+
160
+ * Use new proposed structure for gems by bundler ([#439])
161
+ * Rename methods which run commands ([#438])
162
+ * Fix dependency error for install ([#427])
163
+ * Actually fail the build if rake test fails ([#433])
164
+ * Improve frozen-string-literals compatibility. ([#436])
165
+ * Fix running commands on Windows ([#387])
166
+ * Fix running commands on Windows ([#387])
167
+ * Set permissions to values which are supported on Windows ([#398], [#388])
168
+ * Remove Aruba::Reporting ([#389])
169
+ * Rename bin/cli to bin/aruba-test-cli to prevent name conflict ([#390])
170
+ * Drop support for `ruby < 1.9.3` and rubinius ([#385])
171
+ * Fixed wrong number of arguments in `Aruba::Platforms::WindowsEnvironmentVariables#delete`
172
+ ([#349], [#358] by [e2])
173
+ * Fixed colors in `script/bootstrap` ( [#352], [e2])
174
+ * Fixed use of removed `Utils`-module ([#347], [e2])
175
+ * Fixed exception handler in BasicProcess ([#357], [e2])
176
+ * Fixed step to check for existing of files ([#375], [rubbish])
177
+ * Fixed unset instance variable ([#372], [e2])
178
+ * Added vision and hints to project README ([#366])
179
+ * Fixed setting environment variables on Windows ([#358], [e2])
180
+ * Fixed the logic to determine disk usage ([#359], [e2])
181
+ * Prefixed exception in `rescue`-call to make it fail with a proper error
182
+ message ([#376])
183
+ * Run and build aruba in isolated environment via docker ([#353] by [e2], [#382])
184
+ * Run container with docker-compose without making docker-compose a required
185
+ dependency. Rake tasks read in the docker-compose.yml instead ([#382])
186
+ * Document developer rake tasks via cucumber features ([#382])
187
+ * Add more hints to CONTRIBUTING.md ([#382])
188
+ * Add TESTING.md (WIP) ([#382], [e2])
189
+ * Cleanup rake tasks via separate namespaces ([#382])
190
+ * Some more minor fixes ([#382])
191
+ * Don't run feature test if executable required for test is not installed
192
+ (python, bash, zsh, javac, ...) ([#382])
193
+ * Support for rubies older than 1.9.3 is discontinued - e.g 1.8.7 and 1.9.2
194
+ * aruba requires "cucumber 2" for the feature steps. The rest of aruba should
195
+ be usable by whatever testing framework you are using.
196
+ * Overwriting methods for configuration is discontinued. You need to use
197
+ `aruba.config.<variable>` or `Aruba.configure { |config| config.<variable>`
198
+ instead.
199
+ * "aruba/reporting" will be removed. Please use `@debug`-tag + `byebug`,
200
+ `debugger`, `pry` to troubleshoot your feature tests.
201
+ * Set environment variables will have only effect on `#run` and the like +
202
+ `#with_environment { }`.
203
+ * The process environment will be fully resetted between tests. Sharing state
204
+ via ENV['VAR'] = 'shared state' between tests will not be possible anymore.
205
+ Please make that obvious by using explicit steps or use the aruba API for
206
+ that.
207
+ * There will be a major cleanup for command execution. There will be only
208
+ `run` and `run_simple` left. `run_interactive` is replaced by `run`.
209
+ * Setting the root directory of aruba via method overwrite or configuration -
210
+ this should be your project root directory where the test suite is run.
211
+ * The direct use of "InProcess", "DebugProcess" and "SpawnProcess" is not
212
+ supported anymore. You need to use "Command" instead. But be careful, it has
213
+ a different API.
214
+ * HOME can be configured via `Aruba.configure {}` and defaults to
215
+ `File.join(aruba.config.root_directory, aruba.config.working_directory?)`
216
+ if `aruba/cucumber` or `aruba/rspec` is used.
217
+ * Use different working directories based on test suite - RSpec, Cucumber.
218
+ It's `tmp/rspec` and `tmp/cucumber` now to make sure they do not overwrite
219
+ the test results from each other.
220
+ * The use of `@interactive` is discontinued. You need to use
221
+ `#last_command_started`-method to get access to the interactively started
222
+ command.
223
+ * If multiple commands have been started, each output has to be check
224
+ separately
225
+
226
+ Scenario: Detect stdout from all processes
227
+ When I run `printf "hello world!\n"`
228
+ And I run `cat` interactively
229
+ And I type "hola"
230
+ And I type ""
231
+ Then the stdout should contain:
232
+ """
233
+ hello world!
234
+ """
235
+ And the stdout should contain:
236
+ """
237
+ hola
238
+ """
239
+ And the stderr should not contain anything
240
+
241
+ ## [0.14.14]
242
+
243
+ * Support Ruby 2.7 ([#677])
244
+
245
+ ## [0.14.13]
246
+
247
+ * Loosen dependency on thor ([#676])
248
+ * Mark setting of `root_directory` as deprecated in documentation ([#571])
249
+
250
+ ## [0.14.12]
251
+
252
+ * Loosen dependency on childprocess ([#673])
253
+ * Fix Travis build ([#668])
254
+ * Handle announcing with DebugProcess ([#664])
255
+
256
+ ## [0.14.11]
257
+
258
+ * Loosen childprocess dependency ([#658])
259
+ * Do not set binmode on output temp files, so automatic line ending conversion works ([#650])
260
+ * Improve deprecation suggestions ([#647])
261
+ * Backport fixes to code organization, layout and spelling ([#645])
262
+
263
+ ## [0.14.10]
264
+
265
+ * Backport replacement of problematic AnsiColor module with simple
266
+ implementation ([#642])
267
+ * Undo preprecation of `#all_output`, `#all_stdout`, `#all_stderr` and
268
+ `#in_current_directory` API methods, as well as of checking the combined
269
+ output from all commands in cucumber steps ([#638])
270
+ * Warn when deprecated files `aruba/in_process` and `aruba/spawn_process` are
271
+ required ([#639])
272
+ * Backport allowing decimal timeout values ([#621])
273
+ * Move deprecated cucumber steps into a separate file ([#622])
274
+ * Backport renaming of bin/cli in features ([#620])
275
+ * Improve build set for CI ([#611])
276
+ * Make JRuby before :command helper hook work on the environment the command
277
+ will actually be run in ([#610], [#612])
278
+ * Reorganize spec files to match master branch ([#603])
279
+ * Reorganize feature files to match master branch ([#602])
280
+
281
+ ## [0.14.9]
282
+
283
+ * Formally deprecate `#use_clean_gemset` ([#597])
284
+ * Improve deprecation messages ([#601])
285
+ * Do not replace entire environment inside `#cd` block ([#604])
286
+
287
+ ## [0.14.8]
288
+
289
+ * Deprecate `#run` and `#run_simple` in favor of `#run_command` and
290
+ `#run_command_and_stop` ([#585])
291
+ * Update dependencies, most notably loosening the dependency on `childprocess`
292
+ ([#591])
293
+ * Properly warn about deprecated use of the run methods with one positional
294
+ option ([#588])
295
+
296
+ ## [0.14.7]
297
+
298
+ * Fix Cucumber steps to use `have_same_file_content_as` matcher ([#572])
299
+ * Update dependencies, most notably loosening the dependency on `ffi` ([#581])
300
+
301
+ ## [0.14.6]
302
+
303
+ * Document and fix `@disable-bundler` hook ([#561])
304
+ * Deprecate `have_same_file_content_like` and `a_file_with_same_content_like`
305
+ in favor of `have_same_file_content_as` and `a_file_with_same_content_as` ([#557])
306
+
307
+ ## [0.14.5]
308
+
309
+ * Loosen dependency on child_process ([#551])
310
+
311
+ ## [0.14.4]
312
+
313
+ * Fix command spawning when run in directories with spaces ([#490])
314
+ * Ensure setup is still done when using `@no-clobber` ([#529])
315
+ * Make `#expand_path` handle absolute paths correctly ([#486])
316
+
317
+ ## [0.14.3]
318
+
319
+ * Fix path bug ([#422])
320
+ * Ensure non-deprecated methods do not use deprecated methods ([#489])
321
+ * Update dependency on childprocess ([#516])
322
+ * Fix encoding output on JRuby ([#516])
323
+
324
+ ## [0.14.2]
325
+
326
+ * Handle empty `JRUBY_OPTS` on JRuby
327
+
328
+ ## [0.14.1]
329
+
330
+ * Fixed bug in framework step
331
+
332
+ ## [0.14.0]
333
+
334
+ * Add `<project_root>/exe` to search path for commands: This is the new default
335
+ if you setup a project with bundler.
336
+ * Add some more steps to modify environment
337
+
338
+ ## [0.13.0]
339
+
340
+ * Add two new hooks for rspec and cucumber to make troubleshooting feature
341
+ files easier ([#338]):
342
+ * `command_content`: Outputs command content - helpful for scripts
343
+ * `command_filesystem_status`: Outputs information like group, owner, mode,
344
+ atime, mtime
345
+ * Add generator to create ad hoc script file ([#323], [AdrieanKhisbe])
346
+ * Colored announcer output similar to the color of `cucumber` tags: cyan
347
+ * Fixed bug in announcer. It announces infomation several times due to
348
+ duplicate announce-calls.
349
+ * Refactorings to internal `#simple_table`-method (internal)
350
+ * Refactored Announcer, now it supports blocks for announce as well (internal)
351
+ * Fix circular require warnings ([#339])
352
+ * Fix use of old instances variable `@io_wait` ([#341]). Now the
353
+ default value for `io_wait_timeout` can be set correctly.
354
+ * Make it possible to announce information on command error, using a new option
355
+ called `activate_announcer_on_command_failure` ([#335], [njam])
356
+ * Re-integrate `event-bus`-library into `aruba`-core ([#342])
357
+
358
+ ## [0.12.0]
359
+
360
+ * Add matcher to check if a command can be found in PATH ([#336])
361
+ * Fixed issue with environment variables set by external libraries ([#321], [#320])
362
+
363
+ ## [0.11.2]
364
+
365
+ * Fixed problem with positional arguments in `#run_simple()` ([#322])
366
+
367
+ ## [0.11.1]
368
+
369
+ * Use fixed version of event-bus
370
+ * Refactored and improved documentation (feature tests) in [#309]
371
+
372
+ ## [0.11.0]
373
+
374
+ * Accidently pushed to rubygems.org - yanked it afterwards
375
+
376
+ ## [0.11.0.pre4]
377
+
378
+ * Fixed syntax for Hash on ruby 1.8.7
379
+ * Reorder rubies in .travis.yml
380
+
381
+ ## [0.11.0.pre3]
382
+
383
+ * Fixed syntax for proc on ruby 1.8.7
384
+
385
+ ## [0.11.0.pre2]
386
+
387
+ * Integrate `EventBus` to decouple announcers from starting, stopping commands
388
+ etc. This uses nearly the same implementation like `cucumber`. ([#309])
389
+ * Starting/Stopping a command directly (`command.start`, `command.stop`) is now
390
+ reported to the command monitor and `last_command_stopped` is updated
391
+ correctly
392
+ * Added `#restart` to `Command` to make it possible to restart a command
393
+ * Added check to prevent a command which has already been started, to be
394
+ started again. Otherwise you've got hidden commands which are not stopped
395
+ after a cucumber/rspec/minitest run.
396
+ * Adding alot of documentation to `aruba`
397
+ * Refactored `#run`: Now it wants you to pass a `Hash` containing the options.
398
+ The old syntax is still supported, but is deprecated.
399
+ * Added `#find_command` as experimental feature. It searches the started
400
+ commands from last to first.
401
+ * Added `be_an_executable` matcher
402
+
403
+
404
+ ## [0.11.0.pre]
405
+
406
+ * Set stop signal which should be used to stop a process after a timeout or
407
+ used to terminate a process. This can be used to stop processes running
408
+ docker + "systemd". If you send a systemd-enable container SIGINT it will be
409
+ stopped.
410
+ * Added a configurable amount of time after a command was started -
411
+ `startup_wait_time`. Otherwise you get problems when a process takes to long to
412
+ startup when you run in background and want to sent it a signal.
413
+ * Replace `<variable>` in commandline, e.g. `<pid-last-command-started>`
414
+ [experimental]
415
+ * Added announce formatter for time spans, e.g. `startup_wait_time`
416
+ * All process classes, e.g. `BasicProcess`, `SpawnProcess`, etc., are marked as
417
+ private. Users should use `#run('cmd')` and not use the classes directly.
418
+ * `rvm`-methods are deprecated. They are too ruby specific.
419
+
420
+
421
+ ## [0.10.2]
422
+
423
+ * Fixed problem in regex after merge of step definitions
424
+
425
+
426
+ ## [0.10.1]
427
+
428
+ * Merged remove steps for file and directory from 4 into 2 step definitions
429
+
430
+
431
+ ## [0.10.0]
432
+
433
+ * Fix `"#exit_timeout" is deprecated` error ([#314])
434
+
435
+ ## [0.10.0.pre2]
436
+
437
+ * Take over code from `RSpec::Support::ObjectFormatter` since `rspec-support`
438
+ is not intended for public use.
439
+
440
+ ## [0.10.0.pre]
441
+
442
+ * Add some new steps to make writing documentation easier using "cucumber",
443
+ "rspec", "minitest" together with "aruba" - see [Feature](features/getting_started/supported_testing_frameworks.feature)
444
+ for some examples
445
+ * Write output of commands directly to disk if SpawnProcess is used
446
+ (see [85d74fcc](https://github.com/cucumber/aruba/commit/85d74fcca4fff4e753776925d8b003cddaa8041d))
447
+ * Refactored API of cucumber steps to reduce the need for more methods and make
448
+ it easier for users to write their own steps ([#306])
449
+ * Added `aruba init` to the cli command to setup environment for aruba (issue
450
+ [#308])
451
+ * Added new method `delete_environment_variable` to remove environment variable
452
+ * Added work around because of method name conflict between Capybara and RSpec
453
+ ([1939c404](https://github.com/cucumber/aruba/commit/1939c4049d5195ffdd967485f50119bdd86e98a0))
454
+
455
+
456
+ ## [0.9.0]
457
+
458
+ * Fix feature test
459
+ * Fix ordering in console
460
+ * Fix bug in console handling SIGINT
461
+ * Deprecated Aruba/Reporting before we remove it
462
+
463
+ ## [0.9.0.pre2]
464
+
465
+ * Redefine `#to_s` and `#inspect` for BasicProcess to reduce the sheer amount of
466
+ information, if a command produces a lot of output
467
+ * Added new matcher `#all_objects` to check if an object is included + an error
468
+ message for failures which is similar to the `#all`-matcher of `RSpec`
469
+ * Add `have_output`-, `have_output_on_stderr`, `have_output_on_stdout`-matchers
470
+ * Replace all `assert_*` and `check_*`-methods through expectations
471
+ * Add hook `@announce-output` to output both, stderr and stdout
472
+ * Add a lot of documentation ([#260])
473
+ * Replace `#last_command` through `#last_command_started` and
474
+ `#last_command_stopped` to make it more explicit
475
+ * Improve syntax highlighting in cucumber feature tests by adding programming
476
+ language to `"""`-blocks
477
+ * Rename tags `@ignore-*` to `@unsupported-on-*`
478
+ * Introduce our own `BaseMatcher`-class to remove the dependency to `RSpec`'s
479
+ private matcher APIs
480
+ * Now we make the process started via `SpawnProcess` the leader of the group to
481
+ kill all sub-processes more reliably
482
+
483
+
484
+ ## [0.9.0.pre]
485
+
486
+ * Improve documentation for filesystem api and move it to feature tests
487
+ * Add logger to aruba. Its output can be captured by rspec.
488
+ * Fix incorrect deprecation message for `check_file_presence` ([#292])
489
+ * Fix for Gemfile excludes windows for many gems ([#282])
490
+ * Make feature tests compatible with ruby 1.9.2
491
+ * Gather disk usage for file(s) ([#294])
492
+ * Replace `keep_ansi` config option by `remove_ansi_escape_sequences` option
493
+ * Split up `#unescape` into `#extract_text` and `#unescape_text`
494
+ * Use `UnixPlatform` and `WindowsPlatform` to make code for different platforms
495
+ maintainable
496
+ * Work around `ENV`-bug in JRuby by using `#dup` on `ENV.to_h` ([jruby/jruby#316])
497
+ * Speed up test on JRuby by using `--dev`-flag
498
+ * Work around problems when copying files with `cp` on MRI-ruby 1.9.2
499
+ * Add `cmd.exe /c` for SpawnProcess on Windows ([#302])
500
+ * Split up `#which` for Windows and Unix/Linux ([#304])
501
+ * Add `aruba console` command to play around with aruba ([#305])
502
+
503
+
504
+ ## [0.8.1]
505
+
506
+ * Fix problem if working directory of aruba does not exist ([#286])
507
+ * Re-add removed method `only_processes`
508
+ * Fixed problem with last exit status
509
+ * Added appveyor to run tests of aruba on Windows ([#287])
510
+ * Make the home directory configurable and use Around/around-hook to apply it
511
+ * Add announcer to output the full environment before a command is run
512
+ * Use `prepend_environment_variable` to modify PATH for rspec integration
513
+ * Add `VERSION` constant to aruba and use it for code which should be activated on >= 1.0.0
514
+
515
+ ## [0.8.0]
516
+
517
+ * Build with cucumber 1.3.x on ruby 1.8.7, with cucumber 2.x on all other platforms
518
+ * Fixed bugs in aruba's cucumber steps
519
+ * Disable use of `win32/file`
520
+ * Fixed bug in `in_current_dir*` not returning the result of the block
521
+ * Fixed checks for file content
522
+ * Fixed selectors for DebugProcess and InProcess to support sub-classes as well
523
+
524
+
525
+ ## [0.8.0.pre3]
526
+
527
+ * Depend on cucumber 1.3.x for compatibility on ruby 1.8.7
528
+ * Change PWD and OLDPW when `cd('path') {}` is used within that block
529
+ * Make nesting of `cd` possible
530
+ * Make `run` inside `cd` possible
531
+ * Fixed some bugs
532
+ * Move `Aruba.proces = InProcess|SpawnProcess|DebugProcess` to `aruba.config`
533
+ * Deprecate direct use of `InProcess|SpawnProcess|DebugProcess`. Now `Command`
534
+ needs to be used
535
+ * Add new configuration options `command_launcher` and `main_klass` for
536
+ deprecation of old-style `Aruba.process = <class>`, `:spawn` is the default
537
+ value for the `command_launcher`-option
538
+ * Added checks for version of `rspec-expectations` to support older `rspec`
539
+ versions like `2.11`
540
+ * Now each `path/to/dir` pushed to `aruba.current_directory` is `pop`ed as whole
541
+ * Make testing of `aruba.current_directory` easier by supporting `end_with?` and `start_with?`
542
+
543
+ ## [0.8.0.pre2]
544
+
545
+ * Relax requirement on rspec-expectations (3.3 -> 2.11)
546
+
547
+ ## [0.8.0.pre]
548
+
549
+ * Make aruba compatible with "ruby 1.8.7" and "ruby 1.9.3" again ([#279])
550
+ * Move more and more documentation to cucumber steps ([#268])
551
+ * Refactoring of test suits, now rspec tests run randomly
552
+ * Move Aruba constants to configuration class ([#271])
553
+ * Added runtime configuration via `aruba.config` which is reset for each test run
554
+ * Refactored hooks: now there are `after()` and `before()`-hooks, old
555
+ `before_cmd`-hook is still working, but is deprecated, added new
556
+ `after(:command)`-hook.
557
+ * Refactored jruby-startup helper
558
+ * Cleanup API by moving deprecated methods to separate class
559
+ * Cleanup Core API - reduced to `cd`, `expand_path`, `setup_aruba` and use
560
+ `expand_path` wherever possible ([#253])
561
+ * Better isolation for environment variable manipulation - really helpful from 1.0.0 on
562
+ * Move configuration files like `jruby.rb` to `aruba/config/`-directory
563
+ * Change default exit timeout to 15 seconds to work around long running processes on travis
564
+ * Use of instance variables like `@aruba_timeout_seconds` or
565
+ `@aruba_io_wait_seconds` are deprecated.
566
+ Use `Aruba.configure do |config| config.exit_timeout = 10` etc. for this.
567
+
568
+ ## [0.7.4]
569
+ * Really Fixed post install message
570
+
571
+ ## [0.7.3]
572
+ * Fixed post install message
573
+
574
+ ## [0.7.2]
575
+
576
+ * Do not trigger Announcer API deprecation warning ([#277])
577
+
578
+ ## [0.7.1]
579
+
580
+ * Do not break if `@interactive` is used
581
+
582
+ ## [0.7.0]
583
+
584
+ * Introducing `root_directory` ([#232])
585
+ * Introducing fixtures directory ([#224])
586
+ * Make sure a file/directory does not exist + Cleanup named file/directory steps ([#234])
587
+ * Make matcher `have_permisions` public and add documentation ([#239])
588
+ * Added matcher for file content ([#238])
589
+ * Add rspec integrator ([#244])
590
+ * Deprecate `_file` and `_directory` in method names ([#243])
591
+ * Improve development environment ([#240])
592
+ * Cleanup process management ([#257])
593
+ * Make path content available through matchers and api metchods ([#250])
594
+ * Refactor announcer to support user defined announce channels (fixes [#267])
595
+ * `InProcess` requires that the working directory is determined on runtime not no loadtime
596
+
597
+ ## [0.6.2]
598
+
599
+ * Fixed minor [#223])
600
+ * Added support for ruby 2.1.3 -- 2.1.5
601
+ * Added support for comparison to a fixture file
602
+
603
+ ## [0.6.1]
604
+
605
+ * Added support for ruby 2.1.2
606
+ * Added support for `~` expansion
607
+ * Added support for `with_env`
608
+
609
+ ## [0.6.0]
610
+
611
+ * Dropped support for ruby 1.8
612
+ * Added support for ruby 2.1.0 and 2.1.1
613
+ * Added rspec 3.0.0 support
614
+
615
+ ## [0.5.4]
616
+
617
+ * Added support for piping in files ([#154], [maxmeyer], dg-vrnetze)
618
+ * Added cucumber steps for environment variables ([#156], dg-vrnetze)
619
+ * Added support for file mode ([#157], [maxmeyer], dg-vrnetze)
620
+
621
+ ## [0.5.3]
622
+
623
+ * Fix for UTF-8 support ([#151], [mattwynne], [jarl-dk])
624
+ * Fix for open file leakage ([#150], [JonRowe])
625
+
626
+ ## [0.5.2]
627
+
628
+ * Plugin API for greater speed. Test Ruby CLI programs in a single Ruby process ([#148], [aslakhellesoy])
629
+ * Fix memory leak when several commands are executed in a single run ([#144], [y-higuchi])
630
+
631
+ ## [0.5.1]
632
+
633
+ * Individual timeout settings when running commands ([#124], [jarl-dk])
634
+ * Varous fixes for JRuby tests, should now work on more versions of JRuby
635
+
636
+ ## [0.5.0]
637
+
638
+ * Add `#with_file_content` to the DSL ([#110], [argent-smith])
639
+ * Make JRuby performance tweaks optional ([#102], [taylor], [#125], [alindeman])
640
+ * Add `assert_partial_output_interactive` so you can peek at the output from a running process ([#104], [taylor])
641
+ * Add `assert_not_matching_output` ([#111], [argent-smith])
642
+ * Add `remove_dir` ([#121], [LTe])
643
+
644
+ ## [0.4.11]
645
+
646
+ * Fix duplicated output ([#91], [robertwahler], [mattwynne])
647
+ * Fix Gemspec format ([#101], [mattwynne])
648
+
649
+ ## [0.4.10]
650
+
651
+ * Fix broken JRuby file following rename of hook ([tdreyno])
652
+ * Add terminate method to API ([taylor])
653
+
654
+ ## [0.4.9]
655
+
656
+ * Rename `before_run` hook to `before_cmd` ([mattwynne])
657
+ * Fix 1.8.7 compatibility ([#95], [davetron5000])
658
+
659
+ ## [0.4.8]
660
+
661
+ * Add `before_run` hook ([mattwynne])
662
+ * Add JRuby performance tweaks ([#93], [myronmarston], [mattwynne])
663
+ * Invalid/Corrupt spec file for 0.4.7 - undefined method call for nil:Nilclass ([#47], [aslakhellesoy])
664
+
665
+ ## [0.4.7]
666
+
667
+ * Remove rdiscount dependency. ([#85], [aslakhellesoy])
668
+ * Pin to ffi 1.0.9 since 1.0.10 is broken. ([aslakhellesoy])
669
+ * Added file size specific steps to the Aruba API. ([#89], [hectcastro])
670
+
671
+ ## [0.4.6]
672
+
673
+ * Upgraded deps to latest gems. ([aslakhellesoy])
674
+ * Added Regexp support to `Aruba::Api#assert_no_partial_output`. ([aslakhellesoy])
675
+
676
+ ## [0.4.5]
677
+
678
+ * Better assertion failure message when an exit code is not as expected.
679
+ ([mattwynne])
680
+
681
+ ## [0.4.4]
682
+
683
+ * Fix various bugs with interative processes. ([mattwynne])
684
+
685
+ ## [0.4.3]
686
+
687
+ * Aruba reporting now creates an index file for reports, linking them all
688
+ together. ([aslakhellesoy])
689
+
690
+ ## [0.4.2]
691
+
692
+ * Appending to a file creates the parent directory if it doesn't exist.
693
+ ([aslakhellesoy])
694
+
695
+ ## [0.4.1]
696
+
697
+ * Move more logic into Aruba::Api ([aslakhellesoy])
698
+
699
+ ## [0.4.0]
700
+
701
+ * New, awesome HTML reporting feature that captures everything that happens
702
+ during a scenario. ([aslakhellesoy])
703
+ * ANSI escapes from output are stripped by default. Override this with the @ansi
704
+ tag. ([aslakhellesoy])
705
+
706
+ ## [0.3.7]
707
+
708
+ * Make `Aruba::Api#get_process` return the last executed process with passed cmd
709
+ ([greyblake])
710
+ * Replace announce with puts to comply with cucumber 0.10.6 ([aslakhellesoy])
711
+ * Fix childprocess STDIN to be synchronous ([#40], [#71], [lithium3141])
712
+
713
+ ## [0.3.6]
714
+
715
+ * Changed default value of `@aruba_timeout_seconds` from 1 to 3. ([aslakhellesoy])
716
+ * Separate hooks and steps to make it easier to build your own steps on top of
717
+ Aruba's API ([msassak])
718
+ * `@no-clobber` to prevent cleanup before each scenario ([msassak])
719
+
720
+ ## [0.3.5]
721
+
722
+ * Store processes in an array to ensure order of operations on Ruby 1.8.x
723
+ ([#48] [msassak])
724
+
725
+ ## [0.3.4]
726
+
727
+ * Use backticks (\`) instead of quotes (") to specify command line. Quote still
728
+ works, but is deprecated. ([aeden], [aslakhellesoy])
729
+
730
+ ## [0.3.3]
731
+
732
+ * Updated RSpec development requirement to 2.5 ([rspeicher], [msassak],
733
+ [aslakhellesoy])
734
+ * Updated RubyGems dependency to 1.6.1 ([rspeicher])
735
+
736
+ ## [0.3.2]
737
+
738
+ * Wrong number of args in the When I overwrite step ([aslakhellesoy])
739
+
740
+ ## [0.3.1]
741
+
742
+ * Broken 0.3.0 release ([#43], [#44], [msassak])
743
+ * Quotes (") and newline (\n) in step arguments are no longer unescaped. ([aslakhellesoy])
744
+
745
+ ## [0.3.0]
746
+
747
+ * Remove latency introduced in the 0.2.8 release ([#42], [msassak])
748
+ * New stepdef `Then /^the stdout should contain:$/ do |partial_output|` ([aslakhellesoy])
749
+ * Quotes (") and newline (\n) in step arguments no longer need to be backslash-escaped. ([aslakhellesoy])
750
+
751
+ ## [0.2.8]
752
+
753
+ * Replaced `background_process` with `childprocess`, a cross-platform process control
754
+ library. This will allow Aruba to run on Windows and JRuby in addition to \*nix
755
+ MRI. ([#16], [#27], [#31], [msassak], [jarib], [mattwynne], [aknuds1])
756
+
757
+ ## [0.2.7]
758
+
759
+ * Upgrade to Cucumber 0.10.0. ([aslakhellesoy])
760
+ * `require 'aruba'` does nothing - you have to `require 'aruba/cucumber'` now. This
761
+ is to prevent bundler from loading it when we don't want to. ([aslakhellesoy])
762
+ * Outputting a lot of data causes process to time out ([#30], [msassak])
763
+
764
+ ## [0.2.6]
765
+
766
+ * You can set `@aruba_timeout_seconds` in a Before hook to tell Aruba to wait
767
+ for a process to complete. Default: 1 second. ([aslakhellesoy])
768
+ * Fixed small bug in `/^the stdout should contain exactly:$/` ([aslakhellesoy])
769
+
770
+ ## [0.2.5]
771
+
772
+ * Added 'a file named "whatever" should (not) exist' ([rspeicher])
773
+ * Added 'a directory named "whatever" should (not) exist' ([rspeicher])
774
+ * Added /^the stderr should contain exactly:"$/ ([aslakhellesoy])
775
+ * Added /^the stdout should contain exactly:"$/ ([aslakhellesoy])
776
+ * Added /it should pass with exactly:/ ([aslakhellesoy])
777
+ * @announce, @announce-dir and @announce-cmd for interactive processes ([msassak])
778
+ * Add step defs for detecting output, stdout and stderr by process name ([msassak])
779
+ * Stop all processes before verifying filesystem changes to ensure async operations
780
+ are complete ([#17], [msassak])
781
+ * Outputting large amounts of data causes run steps to hang ([#18], [msassak])
782
+
783
+ ## [0.2.4]
784
+
785
+ * Added step definitions for removing files and checking presence of a single
786
+ file. ([aslakhellesoy])
787
+
788
+ ## [0.2.3]
789
+
790
+ * Directory should not exist gives false-positive ([#13], [#15], [nruth])
791
+ * Added step definitions for comparing file contents with regexps ([#9],
792
+ [aslakhellesoy])
793
+ * Always put ./bin at the beginning of $PATH to make it easier to run own
794
+ executables ([#7], [aslakhellesoy])
795
+ * Communication with interactive processes ([#4], [msassak])
796
+ * Remove hyphens separating stdout and stderr ([aknuds1])
797
+
798
+ ## [0.2.2]
799
+
800
+ * Added a @bin tag that sets up './bin' first on the path ([aslakhellesoy])
801
+ * Richer API making aruba easier to use from Ruby code. (Mark Nijhof, [aslakhellesoy])
802
+ * No more support for RVM. Use rvm 1.9.2,1.8.7 exec cucumber .... instead. (Mark Nijhof, [aslakhellesoy])
803
+
804
+ ## [0.2.1]
805
+
806
+ * Always compare with RSpec should =~ instead of should match. This gives a diff when there is no match. ([aslakhellesoy])
807
+
808
+ ## [0.2.0]
809
+
810
+ * Added aruba.gemspec. ([dchelimsky])
811
+ * Several step definitions regarding output have changed. ([#1], [aslakhellesoy])
812
+
813
+ - /^I should see "([^\"]*)"$/
814
+ + /^the output should contain "([^"]*)"$/
815
+
816
+ - /^I should not see "([^\"]*)"$/
817
+ + /^the output should not contain "([^"]*)"$/
818
+
819
+ - /^I should see:$/
820
+ + /^the output should contain:$/
821
+
822
+ - /^I should not see:$/
823
+ + /^the output should not contain:$/
824
+
825
+ - /^I should see exactly "([^\"]*)"$/
826
+ + /^the output should contain exactly "([^"]*)"$/
827
+
828
+ - /^I should see exactly:$/
829
+ + /^the output should contain exactly:$/
830
+
831
+ - /^I should see matching \/([^\/]*)\/$/
832
+ + /^the output should match \/([^\/]*)\/$/
833
+
834
+ - /^I should see matching:$/
835
+ + /^the output should match:$/
836
+
837
+ ## [0.1.9]
838
+
839
+ * If the GOTGEMS environment variable is set, bundler won't run (faster). ([aslakhellesoy])
840
+
841
+ ## [0.1.8]
842
+
843
+ * Use // instead of "" for "I should see matching" step. ([aslakhellesoy])
844
+ * Replace rvm gemset character '%' with '@' for rvm 0.1.24 ([#5], Ashley Moran)
845
+ * Support gem bundler, making it easier to specify gems. ([aslakhellesoy])
846
+
847
+ ## [0.1.7]
848
+
849
+ * New @announce-stderr tag ([robertwahler])
850
+ * New "I should see matching" steps using Regexp ([robertwahler])
851
+
852
+ ## [0.1.6]
853
+
854
+ * `When /^I successfully run "(.*)"$/` now prints the combined output if exit
855
+ status is not 0. ([aslakhellesoy])
856
+ * Add bundle to list of common ruby scripts. ([aslakhellesoy])
857
+
858
+ ## [0.1.5]
859
+
860
+ * Added ability to map rvm versions to a specific version with config/aruba-rvm.yml. ([aslakhellesoy])
861
+ * Check for presence of files. ([aslakhellesoy])
862
+ * Allow specification of rvm gemsets. ([aslakhellesoy])
863
+ * Detect ruby commands and use current ruby when rvm is not explicitly used. ([aslakhellesoy])
864
+ * Added support for rvm, making it possible to choose Ruby interpreter. ([aslakhellesoy])
865
+ * Added @announce-cmd, @announce-stdout and @announce tags, useful for seeing what's executed and outputted. ([aslakhellesoy])
866
+
867
+ ## [0.1.4]
868
+
869
+ * New step definition for appending to a file ([aslakhellesoy])
870
+
871
+ ## [0.1.3]
872
+
873
+ * New step definition for cd (change directory) ([aslakhellesoy])
874
+
875
+ ## [0.1.2]
876
+
877
+ * Separated API from Cucumber step definitions, makes this usable without Cucumber. ([aslakhellesoy])
878
+
879
+ ## [0.1.1]
880
+
881
+ * Better Regexp escaping ([dchelimsky])
882
+
883
+ ## [0.1.0]
884
+
885
+ * First release ([dchelimsky] and [aslakhellesoy])
886
+
887
+ <!-- Contributors -->
888
+
889
+ [AdrieanKhisbe]: https://github.com/AdrieanKhisbe
890
+ [Heinrich]: https://github.com/Heinrich
891
+ [JonRowe]: https://github.com/JonRowe
892
+ [LTe]: https://github.com/LTe
893
+ [aeden]: https://github.com/aeden
894
+ [aknuds1]: https://github.com/aknuds1
895
+ [alindeman]: https://github.com/alindeman
896
+ [amatsuda]: https://github.com/amatsuda
897
+ [argent-smith]: https://github.com/argent-smith
898
+ [aslakhellesoy]: https://github.com/aslakhellesoy
899
+ [cllns]: https://github.com/cllns
900
+ [davetron5000]: https://github.com/davetron5000
901
+ [dchelimsky]: https://github.com/dchelimsky
902
+ [deivid-rodriguez]: https://github.com/deivid-rodriguez
903
+ [doudou]: https://github.com/doudou
904
+ [e2]: https://github.com/e2
905
+ [greyblake]: https://github.com/greyblake
906
+ [grosser]: https://github.com/grosser
907
+ [hectcastro]: https://github.com/hectcastro
908
+ [jarib]: https://github.com/jarib
909
+ [jarl-dk]: https://github.com/jarl-dk
910
+ [jaysonesmith]: https://github.com/jaysonesmith
911
+ [junaruga]: https://github.com/junaruga
912
+ [koic]: https://github.com/koic
913
+ [lithium3141]: https://github.com/lithium3141
914
+ [luke-hill]: https://github.com/luke-hill
915
+ [mattwynne]: https://github.com/mattwynne
916
+ [maxmeyer]: https://github.com/maxmeyer
917
+ [msassak]: https://github.com/msassak
918
+ [mvz]: https://github.com/mvz
919
+ [myronmarston]: https://github.com/myronmarston
920
+ [nicolasleger]: https://github.com/nicolasleger
921
+ [njam]: https://github.com/njam
922
+ [nruth]: https://github.com/nruth
923
+ [olleolleolle]: https://github.com/olleolleolle
924
+ [richardxia]: https://github.com/richardxia
925
+ [robertwahler]: https://github.com/robertwahler
926
+ [roschaefer]: https://github.com/roschaefer
927
+ [rspeicher]: https://github.com/rspeicher
928
+ [rubbish]: https://github.com/rubbish
929
+ [scottj97]: https://github.com/scottj97
930
+ [stamhankar999]: https://github.com/stamhankar999
931
+ [taylor]: https://github.com/taylor
932
+ [tdreyno]: https://github.com/tdreyno
933
+ [xtrasimplicity]: https://github.com/xtrasimplicity
934
+ [y-higuchi]: https://github.com/y-higuchi
935
+
936
+ <!-- issues & pull requests -->
937
+
938
+ [#715]: https://github.com/cucumber/aruba/pull/715
939
+ [#712]: https://github.com/cucumber/aruba/pull/712
940
+ [#711]: https://github.com/cucumber/aruba/pull/711
941
+ [#710]: https://github.com/cucumber/aruba/pull/710
942
+ [#709]: https://github.com/cucumber/aruba/pull/709
943
+ [#708]: https://github.com/cucumber/aruba/pull/708
944
+ [#707]: https://github.com/cucumber/aruba/pull/707
945
+ [#704]: https://github.com/cucumber/aruba/pull/704
946
+ [#703]: https://github.com/cucumber/aruba/pull/703
947
+ [#702]: https://github.com/cucumber/aruba/pull/702
948
+ [#701]: https://github.com/cucumber/aruba/pull/701
949
+ [#698]: https://github.com/cucumber/aruba/pull/698
950
+ [#696]: https://github.com/cucumber/aruba/pull/696
951
+ [#693]: https://github.com/cucumber/aruba/pull/693
952
+ [#692]: https://github.com/cucumber/aruba/pull/692
953
+ [#690]: https://github.com/cucumber/aruba/pull/690
954
+ [#689]: https://github.com/cucumber/aruba/pull/689
955
+ [#688]: https://github.com/cucumber/aruba/pull/688
956
+ [#687]: https://github.com/cucumber/aruba/pull/687
957
+ [#686]: https://github.com/cucumber/aruba/pull/686
958
+ [#683]: https://github.com/cucumber/aruba/pull/683
959
+ [#679]: https://github.com/cucumber/aruba/pull/679
960
+ [#677]: https://github.com/cucumber/aruba/pull/677
961
+ [#676]: https://github.com/cucumber/aruba/pull/676
962
+ [#675]: https://github.com/cucumber/aruba/pull/675
963
+ [#674]: https://github.com/cucumber/aruba/pull/674
964
+ [#673]: https://github.com/cucumber/aruba/pull/673
965
+ [#672]: https://github.com/cucumber/aruba/pull/672
966
+ [#671]: https://github.com/cucumber/aruba/pull/671
967
+ [#669]: https://github.com/cucumber/aruba/pull/669
968
+ [#668]: https://github.com/cucumber/aruba/pull/668
969
+ [#666]: https://github.com/cucumber/aruba/pull/666
970
+ [#665]: https://github.com/cucumber/aruba/pull/665
971
+ [#664]: https://github.com/cucumber/aruba/pull/664
972
+ [#663]: https://github.com/cucumber/aruba/pull/663
973
+ [#660]: https://github.com/cucumber/aruba/pull/660
974
+ [#659]: https://github.com/cucumber/aruba/pull/659
975
+ [#658]: https://github.com/cucumber/aruba/pull/658
976
+ [#657]: https://github.com/cucumber/aruba/pull/657
977
+ [#656]: https://github.com/cucumber/aruba/pull/656
978
+ [#655]: https://github.com/cucumber/aruba/pull/655
979
+ [#654]: https://github.com/cucumber/aruba/pull/654
980
+ [#652]: https://github.com/cucumber/aruba/pull/652
981
+ [#650]: https://github.com/cucumber/aruba/pull/650
982
+ [#647]: https://github.com/cucumber/aruba/pull/647
983
+ [#645]: https://github.com/cucumber/aruba/pull/645
984
+ [#644]: https://github.com/cucumber/aruba/pull/644
985
+ [#643]: https://github.com/cucumber/aruba/pull/643
986
+ [#642]: https://github.com/cucumber/aruba/pull/642
987
+ [#639]: https://github.com/cucumber/aruba/pull/639
988
+ [#638]: https://github.com/cucumber/aruba/pull/638
989
+ [#637]: https://github.com/cucumber/aruba/pull/637
990
+ [#636]: https://github.com/cucumber/aruba/pull/636
991
+ [#635]: https://github.com/cucumber/aruba/pull/635
992
+ [#631]: https://github.com/cucumber/aruba/pull/631
993
+ [#629]: https://github.com/cucumber/aruba/pull/629
994
+ [#628]: https://github.com/cucumber/aruba/pull/628
995
+ [#626]: https://github.com/cucumber/aruba/pull/626
996
+ [#623]: https://github.com/cucumber/aruba/pull/623
997
+ [#622]: https://github.com/cucumber/aruba/pull/622
998
+ [#621]: https://github.com/cucumber/aruba/pull/621
999
+ [#620]: https://github.com/cucumber/aruba/pull/620
1000
+ [#618]: https://github.com/cucumber/aruba/pull/618
1001
+ [#616]: https://github.com/cucumber/aruba/pull/616
1002
+ [#615]: https://github.com/cucumber/aruba/pull/615
1003
+ [#613]: https://github.com/cucumber/aruba/pull/613
1004
+ [#612]: https://github.com/cucumber/aruba/pull/612
1005
+ [#611]: https://github.com/cucumber/aruba/pull/611
1006
+ [#610]: https://github.com/cucumber/aruba/pull/610
1007
+ [#607]: https://github.com/cucumber/aruba/pull/607
1008
+ [#606]: https://github.com/cucumber/aruba/pull/606
1009
+ [#604]: https://github.com/cucumber/aruba/pull/604
1010
+ [#603]: https://github.com/cucumber/aruba/pull/603
1011
+ [#602]: https://github.com/cucumber/aruba/pull/602
1012
+ [#601]: https://github.com/cucumber/aruba/pull/601
1013
+ [#597]: https://github.com/cucumber/aruba/pull/597
1014
+ [#596]: https://github.com/cucumber/aruba/pull/596
1015
+ [#594]: https://github.com/cucumber/aruba/pull/594
1016
+ [#593]: https://github.com/cucumber/aruba/pull/593
1017
+ [#591]: https://github.com/cucumber/aruba/pull/591
1018
+ [#588]: https://github.com/cucumber/aruba/pull/588
1019
+ [#587]: https://github.com/cucumber/aruba/pull/587
1020
+ [#585]: https://github.com/cucumber/aruba/pull/585
1021
+ [#584]: https://github.com/cucumber/aruba/pull/584
1022
+ [#583]: https://github.com/cucumber/aruba/pull/583
1023
+ [#582]: https://github.com/cucumber/aruba/pull/582
1024
+ [#581]: https://github.com/cucumber/aruba/pull/581
1025
+ [#580]: https://github.com/cucumber/aruba/pull/580
1026
+ [#578]: https://github.com/cucumber/aruba/pull/578
1027
+ [#575]: https://github.com/cucumber/aruba/pull/575
1028
+ [#572]: https://github.com/cucumber/aruba/pull/572
1029
+ [#571]: https://github.com/cucumber/aruba/pull/571
1030
+ [#570]: https://github.com/cucumber/aruba/pull/570
1031
+ [#562]: https://github.com/cucumber/aruba/pull/562
1032
+ [#561]: https://github.com/cucumber/aruba/pull/561
1033
+ [#560]: https://github.com/cucumber/aruba/pull/560
1034
+ [#557]: https://github.com/cucumber/aruba/pull/557
1035
+ [#555]: https://github.com/cucumber/aruba/pull/555
1036
+ [#554]: https://github.com/cucumber/aruba/pull/554
1037
+ [#553]: https://github.com/cucumber/aruba/pull/553
1038
+ [#551]: https://github.com/cucumber/aruba/pull/551
1039
+ [#548]: https://github.com/cucumber/aruba/pull/548
1040
+ [#546]: https://github.com/cucumber/aruba/pull/546
1041
+ [#544]: https://github.com/cucumber/aruba/pull/544
1042
+ [#543]: https://github.com/cucumber/aruba/pull/543
1043
+ [#542]: https://github.com/cucumber/aruba/pull/542
1044
+ [#541]: https://github.com/cucumber/aruba/pull/541
1045
+ [#540]: https://github.com/cucumber/aruba/pull/540
1046
+ [#537]: https://github.com/cucumber/aruba/pull/537
1047
+ [#536]: https://github.com/cucumber/aruba/pull/536
1048
+ [#535]: https://github.com/cucumber/aruba/pull/535
1049
+ [#532]: https://github.com/cucumber/aruba/pull/532
1050
+ [#530]: https://github.com/cucumber/aruba/pull/530
1051
+ [#529]: https://github.com/cucumber/aruba/pull/529
1052
+ [#528]: https://github.com/cucumber/aruba/pull/528
1053
+ [#523]: https://github.com/cucumber/aruba/pull/523
1054
+ [#522]: https://github.com/cucumber/aruba/pull/522
1055
+ [#520]: https://github.com/cucumber/aruba/pull/520
1056
+ [#517]: https://github.com/cucumber/aruba/pull/517
1057
+ [#516]: https://github.com/cucumber/aruba/pull/516
1058
+ [#515]: https://github.com/cucumber/aruba/pull/515
1059
+ [#514]: https://github.com/cucumber/aruba/pull/514
1060
+ [#512]: https://github.com/cucumber/aruba/pull/512
1061
+ [#511]: https://github.com/cucumber/aruba/pull/511
1062
+ [#510]: https://github.com/cucumber/aruba/pull/510
1063
+ [#509]: https://github.com/cucumber/aruba/pull/509
1064
+ [#508]: https://github.com/cucumber/aruba/pull/508
1065
+ [#507]: https://github.com/cucumber/aruba/pull/507
1066
+ [#504]: https://github.com/cucumber/aruba/pull/504
1067
+ [#498]: https://github.com/cucumber/aruba/pull/498
1068
+ [#497]: https://github.com/cucumber/aruba/pull/497
1069
+ [#495]: https://github.com/cucumber/aruba/pull/495
1070
+ [#494]: https://github.com/cucumber/aruba/pull/494
1071
+ [#493]: https://github.com/cucumber/aruba/pull/493
1072
+ [#491]: https://github.com/cucumber/aruba/pull/491
1073
+ [#490]: https://github.com/cucumber/aruba/pull/490
1074
+ [#489]: https://github.com/cucumber/aruba/pull/489
1075
+ [#488]: https://github.com/cucumber/aruba/pull/488
1076
+ [#487]: https://github.com/cucumber/aruba/pull/487
1077
+ [#486]: https://github.com/cucumber/aruba/pull/486
1078
+ [#483]: https://github.com/cucumber/aruba/pull/483
1079
+ [#482]: https://github.com/cucumber/aruba/pull/482
1080
+ [#481]: https://github.com/cucumber/aruba/pull/481
1081
+ [#476]: https://github.com/cucumber/aruba/pull/476
1082
+ [#475]: https://github.com/cucumber/aruba/pull/475
1083
+ [#471]: https://github.com/cucumber/aruba/pull/471
1084
+ [#466]: https://github.com/cucumber/aruba/pull/466
1085
+ [#464]: https://github.com/cucumber/aruba/pull/464
1086
+ [#462]: https://github.com/cucumber/aruba/pull/462
1087
+ [#461]: https://github.com/cucumber/aruba/pull/461
1088
+ [#460]: https://github.com/cucumber/aruba/pull/460
1089
+ [#459]: https://github.com/cucumber/aruba/pull/459
1090
+ [#457]: https://github.com/cucumber/aruba/pull/457
1091
+ [#456]: https://github.com/cucumber/aruba/pull/456
1092
+ [#454]: https://github.com/cucumber/aruba/pull/454
1093
+ [#452]: https://github.com/cucumber/aruba/pull/452
1094
+ [#451]: https://github.com/cucumber/aruba/issues/451
1095
+ [#449]: https://github.com/cucumber/aruba/issues/449
1096
+ [#447]: https://github.com/cucumber/aruba/issues/447
1097
+ [#445]: https://github.com/cucumber/aruba/issues/445
1098
+ [#444]: https://github.com/cucumber/aruba/issues/444
1099
+ [#442]: https://github.com/cucumber/aruba/issues/442
1100
+ [#439]: https://github.com/cucumber/aruba/issues/439
1101
+ [#438]: https://github.com/cucumber/aruba/issues/438
1102
+ [#436]: https://github.com/cucumber/aruba/issues/436
1103
+ [#433]: https://github.com/cucumber/aruba/issues/433
1104
+ [#427]: https://github.com/cucumber/aruba/issues/427
1105
+ [#422]: https://github.com/cucumber/aruba/issues/422
1106
+ [#398]: https://github.com/cucumber/aruba/issues/398
1107
+ [#390]: https://github.com/cucumber/aruba/issues/390
1108
+ [#389]: https://github.com/cucumber/aruba/issues/389
1109
+ [#388]: https://github.com/cucumber/aruba/issues/388
1110
+ [#387]: https://github.com/cucumber/aruba/issues/387
1111
+ [#385]: https://github.com/cucumber/aruba/issues/385
1112
+ [#382]: https://github.com/cucumber/aruba/issues/382
1113
+ [#376]: https://github.com/cucumber/aruba/issues/376
1114
+ [#375]: https://github.com/cucumber/aruba/issues/375
1115
+ [#372]: https://github.com/cucumber/aruba/issues/372
1116
+ [#366]: https://github.com/cucumber/aruba/issues/366
1117
+ [#359]: https://github.com/cucumber/aruba/issues/359
1118
+ [#358]: https://github.com/cucumber/aruba/issues/358
1119
+ [#357]: https://github.com/cucumber/aruba/issues/357
1120
+ [#353]: https://github.com/cucumber/aruba/issues/353
1121
+ [#352]: https://github.com/cucumber/aruba/issues/352
1122
+ [#349]: https://github.com/cucumber/aruba/issues/349
1123
+ [#347]: https://github.com/cucumber/aruba/issues/347
1124
+ [#342]: https://github.com/cucumber/aruba/issues/342
1125
+ [#341]: https://github.com/cucumber/aruba/issues/341
1126
+ [#339]: https://github.com/cucumber/aruba/issues/339
1127
+ [#338]: https://github.com/cucumber/aruba/issues/338
1128
+ [#336]: https://github.com/cucumber/aruba/issues/336
1129
+ [#335]: https://github.com/cucumber/aruba/issues/335
1130
+ [#323]: https://github.com/cucumber/aruba/issues/323
1131
+ [#322]: https://github.com/cucumber/aruba/issues/322
1132
+ [#321]: https://github.com/cucumber/aruba/issues/321
1133
+ [#320]: https://github.com/cucumber/aruba/issues/320
1134
+ [#314]: https://github.com/cucumber/aruba/issues/314
1135
+ [#309]: https://github.com/cucumber/aruba/issues/309
1136
+ [#308]: https://github.com/cucumber/aruba/issues/308
1137
+ [#306]: https://github.com/cucumber/aruba/issues/306
1138
+ [#305]: https://github.com/cucumber/aruba/issues/305
1139
+ [#304]: https://github.com/cucumber/aruba/issues/304
1140
+ [#302]: https://github.com/cucumber/aruba/issues/302
1141
+ [#294]: https://github.com/cucumber/aruba/issues/294
1142
+ [#292]: https://github.com/cucumber/aruba/issues/292
1143
+ [#287]: https://github.com/cucumber/aruba/issues/287
1144
+ [#286]: https://github.com/cucumber/aruba/issues/286
1145
+ [#282]: https://github.com/cucumber/aruba/issues/282
1146
+ [#279]: https://github.com/cucumber/aruba/issues/279
1147
+ [#277]: https://github.com/cucumber/aruba/issues/277
1148
+ [#271]: https://github.com/cucumber/aruba/issues/271
1149
+ [#268]: https://github.com/cucumber/aruba/issues/268
1150
+ [#267]: https://github.com/cucumber/aruba/issues/267
1151
+ [#260]: https://github.com/cucumber/aruba/issues/260
1152
+ [#257]: https://github.com/cucumber/aruba/issues/257
1153
+ [#253]: https://github.com/cucumber/aruba/issues/253
1154
+ [#250]: https://github.com/cucumber/aruba/issues/250
1155
+ [#244]: https://github.com/cucumber/aruba/issues/244
1156
+ [#243]: https://github.com/cucumber/aruba/issues/243
1157
+ [#240]: https://github.com/cucumber/aruba/issues/240
1158
+ [#239]: https://github.com/cucumber/aruba/issues/239
1159
+ [#238]: https://github.com/cucumber/aruba/issues/238
1160
+ [#234]: https://github.com/cucumber/aruba/issues/234
1161
+ [#232]: https://github.com/cucumber/aruba/issues/232
1162
+ [#224]: https://github.com/cucumber/aruba/issues/224
1163
+ [#223]: https://github.com/cucumber/aruba/issues/223
1164
+ [#157]: https://github.com/cucumber/aruba/issues/157
1165
+ [#156]: https://github.com/cucumber/aruba/issues/156
1166
+ [#154]: https://github.com/cucumber/aruba/issues/154
1167
+ [#151]: https://github.com/cucumber/aruba/issues/151
1168
+ [#150]: https://github.com/cucumber/aruba/issues/150
1169
+ [#148]: https://github.com/cucumber/aruba/issues/148
1170
+ [#144]: https://github.com/cucumber/aruba/issues/144
1171
+ [#125]: https://github.com/cucumber/aruba/issues/125
1172
+ [#124]: https://github.com/cucumber/aruba/issues/124
1173
+ [#121]: https://github.com/cucumber/aruba/issues/121
1174
+ [#111]: https://github.com/cucumber/aruba/issues/111
1175
+ [#110]: https://github.com/cucumber/aruba/issues/110
1176
+ [#104]: https://github.com/cucumber/aruba/issues/104
1177
+ [#102]: https://github.com/cucumber/aruba/issues/102
1178
+ [#101]: https://github.com/cucumber/aruba/issues/101
1179
+ [#95]: https://github.com/cucumber/aruba/issues/95
1180
+ [#93]: https://github.com/cucumber/aruba/issues/93
1181
+ [#91]: https://github.com/cucumber/aruba/issues/91
1182
+ [#89]: https://github.com/cucumber/aruba/issues/89
1183
+ [#85]: https://github.com/cucumber/aruba/issues/85
1184
+ [#71]: https://github.com/cucumber/aruba/issues/71
1185
+ [#48]: https://github.com/cucumber/aruba/issues/48
1186
+ [#47]: https://github.com/cucumber/aruba/issues/47
1187
+ [#44]: https://github.com/cucumber/aruba/issues/44
1188
+ [#43]: https://github.com/cucumber/aruba/issues/43
1189
+ [#42]: https://github.com/cucumber/aruba/issues/42
1190
+ [#40]: https://github.com/cucumber/aruba/issues/40
1191
+ [#31]: https://github.com/cucumber/aruba/issues/31
1192
+ [#30]: https://github.com/cucumber/aruba/issues/30
1193
+ [#27]: https://github.com/cucumber/aruba/issues/27
1194
+ [#18]: https://github.com/cucumber/aruba/issues/18
1195
+ [#17]: https://github.com/cucumber/aruba/issues/17
1196
+ [#16]: https://github.com/cucumber/aruba/issues/16
1197
+ [#15]: https://github.com/cucumber/aruba/issues/15
1198
+ [#13]: https://github.com/cucumber/aruba/issues/13
1199
+ [#9]: https://github.com/cucumber/aruba/issues/9
1200
+ [#7]: https://github.com/cucumber/aruba/issues/7
1201
+ [#5]: https://github.com/cucumber/aruba/issues/5
1202
+ [#4]: https://github.com/cucumber/aruba/issues/4
1203
+ [#1]: https://github.com/cucumber/aruba/issues/1
1204
+
1205
+ [cucumber/cucumber#521]: https://github.com/cucumber/cucumber/issues/521
1206
+ [jruby/jruby#316]: https://github.com/jruby/jruby/issues/316
1207
+
1208
+ <!-- Releases -->
1209
+
1210
+ [Unreleased]: https://github.com/cucumber/aruba/compare/v1.0.1...master
1211
+ [1.0.1]: https://github.com/cucumber/aruba/compare/v1.0.0...v1.0.1
1212
+ [1.0.0]: https://github.com/cucumber/aruba/compare/v1.0.0.pre.alpha.5...v1.0.0
1213
+ [1.0.0.pre.alpha.5]: https://github.com/cucumber/aruba/compare/v1.0.0.pre.alpha.4...v1.0.0.pre.alpha.5
1214
+ [1.0.0.pre.alpha.4]: https://github.com/cucumber/aruba/compare/v1.0.0.pre.alpha.3...v1.0.0.pre.alpha.4
1215
+ [1.0.0.pre.alpha.3]: https://github.com/cucumber/aruba/compare/v1.0.0.pre.alpha.2...v1.0.0.pre.alpha.3
1216
+ [1.0.0.pre.alpha.2]: https://github.com/cucumber/aruba/compare/v1.0.0.pre.alpha.1...v1.0.0.pre.alpha.2
1217
+ [1.0.0.pre.alpha.1]: https://github.com/cucumber/aruba/compare/v0.14.1...v1.0.0.pre.alpha.1
1218
+ [0.14.14]: https://github.com/cucumber/aruba/compare/v0.14.13...v0.14.14
1219
+ [0.14.13]: https://github.com/cucumber/aruba/compare/v0.14.12...v0.14.13
1220
+ [0.14.12]: https://github.com/cucumber/aruba/compare/v0.14.11...v0.14.12
1221
+ [0.14.11]: https://github.com/cucumber/aruba/compare/v0.14.10...v0.14.11
1222
+ [0.14.10]: https://github.com/cucumber/aruba/compare/v0.14.9...v0.14.10
1223
+ [0.14.9]: https://github.com/cucumber/aruba/compare/v0.14.8...v0.14.9
1224
+ [0.14.8]: https://github.com/cucumber/aruba/compare/v0.14.7...v0.14.8
1225
+ [0.14.7]: https://github.com/cucumber/aruba/compare/v0.14.6...v0.14.7
1226
+ [0.14.6]: https://github.com/cucumber/aruba/compare/v0.14.5...v0.14.6
1227
+ [0.14.5]: https://github.com/cucumber/aruba/compare/v0.14.4...v0.14.5
1228
+ [0.14.4]: https://github.com/cucumber/aruba/compare/v0.14.3...v0.14.4
1229
+ [0.14.3]: https://github.com/cucumber/aruba/compare/v0.14.2...v0.14.3
1230
+ [0.14.2]: https://github.com/cucumber/aruba/compare/v0.14.1...v0.14.2
1231
+ [0.14.1]: https://github.com/cucumber/aruba/compare/v0.14.0...v0.14.1
1232
+ [0.14.0]: https://github.com/cucumber/aruba/compare/v0.13.0...v0.14.0
1233
+ [0.13.0]: https://github.com/cucumber/aruba/compare/v0.12.0...v0.13.0
1234
+ [0.12.0]: https://github.com/cucumber/aruba/compare/v0.11.2...v0.12.0
1235
+ [0.11.2]: https://github.com/cucumber/aruba/compare/v0.11.1...v0.11.2
1236
+ [0.11.1]: https://github.com/cucumber/aruba/compare/v0.11.0...v0.11.1
1237
+ [0.11.0]: https://github.com/cucumber/aruba/compare/v0.11.0.pre4...v0.11.0
1238
+ [0.11.0.pre4]: https://github.com/cucumber/aruba/compare/v0.11.0.pre3...v0.11.0.pre4
1239
+ [0.11.0.pre3]: https://github.com/cucumber/aruba/compare/v0.11.0.pre2...v0.11.0.pre3
1240
+ [0.11.0.pre2]: https://github.com/cucumber/aruba/compare/v0.11.0.pre...v0.11.0.pre2
1241
+ [0.11.0.pre]: https://github.com/cucumber/aruba/compare/v0.10.2...v0.11.0.pre
1242
+ [0.10.2]: https://github.com/cucumber/aruba/compare/v0.10.1...v0.10.2
1243
+ [0.10.1]: https://github.com/cucumber/aruba/compare/v0.10.0...v0.10.1
1244
+ [0.10.0]: https://github.com/cucumber/aruba/compare/v0.10.0.pre2...v0.10.0
1245
+ [0.10.0.pre2]: https://github.com/cucumber/aruba/compare/v0.10.0.pre...v0.10.0.pre2
1246
+ [0.10.0.pre]: https://github.com/cucumber/aruba/compare/v0.9.0...v0.10.0
1247
+ [0.9.0]: https://github.com/cucumber/aruba/compare/v0.9.0.pre2...v0.9.0
1248
+ [0.9.0.pre2]: https://github.com/cucumber/aruba/compare/v0.9.0.pre...v0.9.0.pre2
1249
+ [0.9.0.pre]: https://github.com/cucumber/aruba/compare/v0.8.1...v0.9.0.pre
1250
+ [0.8.1]: https://github.com/cucumber/aruba/compare/v0.8.0...v0.8.1
1251
+ [0.8.0]: https://github.com/cucumber/aruba/compare/v0.8.0.pre3...v0.8.0
1252
+ [0.8.0.pre3]: https://github.com/cucumber/aruba/compare/v0.8.0.pre2...v0.8.0.pre3
1253
+ [0.8.0.pre2]: https://github.com/cucumber/aruba/compare/v0.8.0...v0.8.0.pre2
1254
+ [0.8.0.pre]: https://github.com/cucumber/aruba/compare/v0.7.4...v0.8.0.pre
1255
+ [0.7.4]: https://github.com/cucumber/aruba/compare/v0.7.2...v0.7.4
1256
+ [0.7.3]: https://github.com/cucumber/aruba/compare/v0.7.2...v0.7.3
1257
+ [0.7.2]: https://github.com/cucumber/aruba/compare/v0.7.1...v0.7.2
1258
+ [0.7.1]: https://github.com/cucumber/aruba/compare/v0.7.0...v0.7.1
1259
+ [0.7.0]: https://github.com/cucumber/aruba/compare/v0.6.2...v0.7.0
1260
+ [0.6.2]: https://github.com/cucumber/aruba/compare/v0.6.1...v0.6.2
1261
+ [0.6.1]: https://github.com/cucumber/aruba/compare/v0.6.0...v0.6.1
1262
+ [0.6.0]: https://github.com/cucumber/aruba/compare/v0.5.4...v0.6.0
1263
+ [0.5.4]: https://github.com/cucumber/aruba/compare/v0.5.3...v0.5.4
1264
+ [0.5.3]: https://github.com/cucumber/aruba/compare/v0.5.2...v0.5.3
1265
+ [0.5.2]: https://github.com/cucumber/aruba/compare/v0.5.1...v0.5.2
1266
+ [0.5.1]: https://github.com/cucumber/aruba/compare/v0.5.0...v0.5.1
1267
+ [0.5.0]: https://github.com/cucumber/aruba/compare/v0.4.10...v0.5.0
1268
+ [0.4.11]: https://github.com/cucumber/aruba/compare/v0.4.10...v0.4.11
1269
+ [0.4.10]: https://github.com/cucumber/aruba/compare/v0.4.9...v0.4.10
1270
+ [0.4.9]: https://github.com/cucumber/aruba/compare/v0.4.8...v0.4.9
1271
+ [0.4.8]: https://github.com/cucumber/aruba/compare/v0.4.7...v0.4.8
1272
+ [0.4.7]: https://github.com/cucumber/aruba/compare/v0.4.6...v0.4.7
1273
+ [0.4.6]: https://github.com/cucumber/aruba/compare/v0.4.5...v0.4.6
1274
+ [0.4.5]: https://github.com/cucumber/aruba/compare/v0.4.4...v0.4.5
1275
+ [0.4.4]: https://github.com/cucumber/aruba/compare/v0.4.3...v0.4.4
1276
+ [0.4.3]: https://github.com/cucumber/aruba/compare/v0.4.2...v0.4.3
1277
+ [0.4.2]: https://github.com/cucumber/aruba/compare/v0.4.1...v0.4.2
1278
+ [0.4.1]: https://github.com/cucumber/aruba/compare/v0.4.0...v0.4.1
1279
+ [0.4.0]: https://github.com/cucumber/aruba/compare/v0.3.7...v0.4.0
1280
+ [0.3.7]: https://github.com/cucumber/aruba/compare/v0.3.6...v0.3.7
1281
+ [0.3.6]: https://github.com/cucumber/aruba/compare/v0.3.5...v0.3.6
1282
+ [0.3.5]: https://github.com/cucumber/aruba/compare/v0.3.4...v0.3.5
1283
+ [0.3.4]: https://github.com/cucumber/aruba/compare/v0.3.3...v0.3.4
1284
+ [0.3.3]: https://github.com/cucumber/aruba/compare/v0.3.2...v0.3.3
1285
+ [0.3.2]: https://github.com/cucumber/aruba/compare/v0.3.1...v0.3.2
1286
+ [0.3.1]: https://github.com/cucumber/aruba/compare/v0.3.0...v0.3.1
1287
+ [0.3.0]: https://github.com/cucumber/aruba/compare/v0.2.8...v0.3.0
1288
+ [0.2.8]: https://github.com/cucumber/aruba/compare/v0.2.7...v0.2.8
1289
+ [0.2.7]: https://github.com/cucumber/aruba/compare/v0.2.6...v0.2.7
1290
+ [0.2.6]: https://github.com/cucumber/aruba/compare/v0.2.5...v0.2.6
1291
+ [0.2.5]: https://github.com/cucumber/aruba/compare/v0.2.4...v0.2.5
1292
+ [0.2.4]: https://github.com/cucumber/aruba/compare/v0.2.3...v0.2.4
1293
+ [0.2.3]: https://github.com/cucumber/aruba/compare/v0.2.2...v0.2.3
1294
+ [0.2.2]: https://github.com/cucumber/aruba/compare/v0.2.1...v0.2.2
1295
+ [0.2.1]: https://github.com/cucumber/aruba/compare/v0.2.0...v0.2.1
1296
+ [0.2.0]: https://github.com/cucumber/aruba/compare/v0.1.9...v0.2.0
1297
+ [0.1.9]: https://github.com/cucumber/aruba/compare/v0.1.8...v0.1.9
1298
+ [0.1.8]: https://github.com/cucumber/aruba/compare/v0.1.7...v0.1.8
1299
+ [0.1.7]: https://github.com/cucumber/aruba/compare/v0.1.6...v0.1.7
1300
+ [0.1.6]: https://github.com/cucumber/aruba/compare/v0.1.5...v0.1.6
1301
+ [0.1.5]: https://github.com/cucumber/aruba/compare/v0.1.4...v0.1.5
1302
+ [0.1.4]: https://github.com/cucumber/aruba/compare/v0.1.3...v0.1.4
1303
+ [0.1.3]: https://github.com/cucumber/aruba/compare/v0.1.2...v0.1.3
1304
+ [0.1.2]: https://github.com/cucumber/aruba/compare/v0.1.1...v0.1.2
1305
+ [0.1.1]: https://github.com/cucumber/aruba/compare/v0.1.0...v0.1.1
1306
+ [0.1.0]: https://github.com/cucumber/aruba/compare/ed6a175d23aaff62dbf355706996f276f304ae8b...v0.1.1
1307
+
1308
+ <!-- Other links -->
1309
+
1310
+ [1]: http://semver.org
1311
+ [2]: http://keepachangelog.com
1312
+ [3]: https://github.com/cucumber/aruba/blob/master/CONTRIBUTING.md