rails--rails/actioncable
Eugene Kenny ee525ff663 Load framework test files in deterministic order
`Dir.glob` doesn't guarantee the order of its results:

https://ruby-doc.org/core-2.6.5/Dir.html#method-c-glob

> Case sensitivity depends on your system (File::FNM_CASEFOLD is
> ignored), as does the order in which the results are returned.

Minitest stores a list of all test cases in the order that they were
defined; it shuffles them before they're run, but doesn't sort them:

https://github.com/seattlerb/minitest/blob/v5.13.0/lib/minitest.rb#L1048
https://github.com/seattlerb/minitest/blob/v5.13.0/lib/minitest.rb#L156

This means that the order in which framework tests run is platform
dependent, and running a test command that failed in CI locally won't
necessarily reproduce the error, even when the same seed is provided.

`Rake::FileList` resolves glob patterns to a sorted list of files:

https://github.com/ruby/rake/blob/v13.0.1/lib/rake/file_list.rb#L408

By using `Rake::FileList` instead of `Dir.glob`, framework tests will
always run in the same order when given the same seed, and reproducing
order dependent CI failures will be easier.
2019-12-16 16:55:06 +00:00
..
app Fix typo in ACa documentation [ci skip] 2019-10-28 11:09:22 -04:00
bin
lib Implicitly assert no exception is raised in block assertions 2019-10-07 11:01:24 +02:00
test Enforce that actioncable compiled JS bundle is in sync with source code 2019-10-19 02:26:31 +02:00
.babelrc
.eslintrc
.gitignore Ensure @rails/actioncable package contains complete source 2019-08-15 09:19:59 -04:00
CHANGELOG.md Fixup CHANGELOGs [ci skip] 2019-11-24 09:20:00 +09:00
MIT-LICENSE Bump license years for 2019 2018-12-31 10:24:38 +07:00
README.md Updated links from http to https in guides, docs, etc 2019-03-09 16:43:47 +05:30
Rakefile Load framework test files in deterministic order 2019-12-16 16:55:06 +00:00
actioncable.gemspec Add bug tracker/documentation/mailing list URIs to the gemspecs 2019-10-11 20:47:19 -04:00
karma.conf.js s/Travis/Buildkite/ 2019-04-09 11:28:49 +09:30
package.json update package.json files to use https homepage value 2019-10-02 12:00:11 +02:00
rollup.config.js
rollup.config.test.js

README.md

Action Cable Integrated WebSockets for Rails

Action Cable seamlessly integrates WebSockets with the rest of your Rails application. It allows for real-time features to be written in Ruby in the same style and form as the rest of your Rails application, while still being performant and scalable. It's a full-stack offering that provides both a client-side JavaScript framework and a server-side Ruby framework. You have access to your full domain model written with Active Record or your ORM of choice.

You can read more about Action Cable in the Action Cable Overview guide.

Support

API documentation is at:

Bug reports for the Ruby on Rails project can be filed here:

Feature requests should be discussed on the rails-core mailing list here: