- Restore support for passing custom command lines as PARALLEL_TESTS_EXECUTABLE.
- Restored the
--verbose-process-command
and--verbose-rerun-command
options, removed in version 4.0.0. See #952.--verbose-command
continues to be supported and is equivalent to set the 2 options above.
- Added
--failure-exit-code [INT]
flag to specify a custom exit code when tests fail. This option allows users to define a specific exit code that the test suite should return if any tests fail.
- The
--allow-duplicates
flag now runs duplicate tests in different groups
- Add
--allow-duplicates
flag to support re-running 1 spec multiple times
- do not crash when a pid file was already deleted when trying to delete it
Rails 5.2 and gherkin fixes
- Support for running tasks against individual databases in a multi-database setup with Rails >= 6.1 (#930)
- Sort the output of
runtime_logger
for RSpec to show slowest tests first - Add new
ParallelTests::RSpec::VerboseLogger
to output detailed information about each example and it's process as it starts and finishes.
- Support for RSpec turnip feature files.
- Drop support for RSpec 2.
- Document unexpected behavior where the
--only-group
flag will also set a grouping strategy.
- Fix $TEST_ENV_NUMBER replacing code to not affect all processes (#905)
- Remove duplicate raise codes. (#897)
- Avoid double sending int while also not breaking debugging #891
- Avoid double sending of SIGINT to subprocesses #889
- The
--verbose-process-command
and--verbose-rerun-command
are combined into--verbose-command
. See #884. - Drop ruby 2.6 support
- Drop support for ruby 2.5
--quiet
no longer prints 'Using recorded test runtime'
- Grouping by scenarios now works for tests that are nested under Rules.
- Raise a custom
RuntimeLogTooSmallError
exception when the runtime log is too small instead of a genericRuntimeError
.
- Running rake tasks with number of processes or extra args
- Changed Rake subtasks to always use the same Rake executable as the parent process.
- Fixed
NoMethodError
exception when running Rake taskparallel:setup
.
- Subprocesses execute without a shell.
- Support Ruby 2.5 / 2.6
- Drop support for ruby 2.5 / 2.6
- Tested on ruby 3.0 and 3.1
- Added Rails 7.0 to fixtures
- Fixes deprecation warning around the usage of
ActiveRecord::Base.schema_format
and deprecation in Rails 7.1
- None
- None
- All cucumber options are now pushed to the end of the command invocation
- Fixes an issue where the
--retry
flag wouldn't work correctly
- Fixes an issue where the
- None
- Added
--highest-exit-status
option to return the highest exit status to allow sub-processes to send things other than 1
- None
- Drop ruby 2.4 support
- Run default test folder if no arguments are passed.
- None
- None
- None
- Do not use db:structure for rails 6.1
- None
- Add support for specifying exactly how isolated processes run tests with 'specify-groups' option.
- Refactorings for rubocop
- None
- None
- Colorize summarized RSpec results.(#787).
- replace deprecated db:structure by db:schema (#801).
- Added support for multiple isolated processes.
- RAILS_ENV cannot be specified for rake tasks (#776).
- None
- Rake tasks will no longer run against development environment when using a Spring-ified rake binstub (#776).
--fail-fast
stops all groups if one group fails. Can be used to stop all groups if one test failed by usingfail-fast
in the test-framework too (for example rspec via--test-options '--fail-fast'
or in.rspec_parallel
).
- The
--group-by
flag with valuesteps
andfeatures
now requires end users to add thecuke_modeler
gem to their Gemfile (#762).
- Cucumber 4 support (#762)
- Fix a bundler deprecation when running specs (#761)
- remove name override logic that never worked (#758)
- Drop ruby 2.3 support (#760)
- Drop ruby 2.2 support (#759)
- Calculate unknown runtimes lazily when running tests grouped by runtime (#750).
- File paths passed from the CLI are now cleaned (consecutive slashes and useless dots removed) (#748).
- Add project metadata to gemspec (#739).
- Fix bundler deprecation warning related to
bundle show
) (#744). - Fix numerous flakey tests (#736, #741).
- Support db:structure:dump and load structure in parallel (#732).
- Add note to the README about using the spring-commands-parallel-tests gem to automatically patch and enable Spring (#731).
- Refactor logic in the
parallel:prepare
task (#737). - Update README to use :sql schema format.
- Fix loading of the
version
file when using a local git repo with Bundler (#730).
- Eliminate some ruby warnings relating to ambiguous arguments, unused variables, a redefined method, and uninitialized instance variables (#712).
- Fix NameError due to not requiring
shellwords
(#707).
--verbose-process-command
, which prints the command that will be executed by each process before it begins (#697).--verbose-rerun-command
, which prints the command executed by that process after a process fails (#697).
simulate_output_for_ci
now outputs dots (.
) even after the first parallel thread finishes (#673).
- Typo in CLI options (#672).
- Support for new Cucumber tag expressions syntax (#668).
db:test:purge
is nowdb:purge
so it can be used in any environment, not just thetest
environment. This change is backwards compatible. (#665).- Tests against Rails 5.1 and 5.2 ([#663])(#663)).
- Update formatter to use Cucumber events API instead of deprecated API (#664)
- Commands and their respective outputs are now grouped together when using the
verbose
andserialize-output
flags together (#660).
- Improve accuracy when recording example times (#661).
- Dropped support for Ruby 2.0 (#661).
- Rake task now passes through additional arguments to the CLI (#656).
No docs yet. Contributions welcome!