aruba 1.0.0.pre.alpha.2 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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