Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add deprecation message to rspec command #149

Merged
merged 4 commits into from
May 25, 2020
Merged

add deprecation message to rspec command #149

merged 4 commits into from
May 25, 2020

Conversation

doodzik
Copy link
Contributor

@doodzik doodzik commented May 25, 2020

This PR adds a message when the rspec test runner is invoked that it is deprecated.

reference https://github.com/Shopify/test-infra/issues/350

@doodzik doodzik requested review from edward, rafaelfranca and a team May 25, 2020 18:28
Copy link
Contributor

@wvanbergen wvanbergen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I prefer adding this to the README.

This is going to be obnoxious for projects that use it. They will see it on every run. And if you have a large spec suite, you're not going to use that warning as a reasonto rewrite all of it to minitest.

@doodzik doodzik requested a review from wvanbergen May 25, 2020 18:37
@doodzik doodzik dismissed wvanbergen’s stale review May 25, 2020 18:38

Made changes based on the review.

ruby/README.md Outdated Show resolved Hide resolved
ruby/README.md Outdated Show resolved Hide resolved
ruby/README.md Outdated Show resolved Hide resolved
Co-authored-by: Jessica Xie <jessica.xie@shopify.com>
@doodzik doodzik merged commit 943cbf1 into master May 25, 2020
@doodzik doodzik self-assigned this May 25, 2020
@ianks
Copy link

ianks commented Jun 18, 2020

Can this deprecation be re-considered? We are heavily reliant on ci-queue and RSpec and there is really no way for us to migrate to mini-test. Is it a problem with having maintainers? If so, I would be happy to help manage the load for RSpec. @jessicaxiejw @doodzik

@wvanbergen
Copy link
Contributor

Hello @ianks. We are standardizing on minitest at Shopify, and hence won't be supporting the RSpec implementation anymore. We have no plans to remove the RSpec implementation any time soon though.

Short-term, we are happy to review and merge any bug fixes that you may contribute. Long-term, I think it is better for the minitest and rspec implementations to not share the same repository. We haven't really put a lot of thought into this "split" yet, but maybe you have ideas?

@agis
Copy link

agis commented Jun 26, 2020

Heads up: We are working on an alternative implementation (pretty similar to ci-queue) that focuses solely on RSpec and solves some additional issues we encountered while evaluating ci-queue. We've been gradually rolling it the past few weeks and it's been working great until now. It might be of interest to you, @ianks: rspecq.

@ArturT
Copy link

ArturT commented Jul 30, 2020

@ianks I work on a similar problem of running tests in parallel on CI. Recently for RSpec, I built an integration to auto split slow RSpec test files by test examples to run CI build faster.
https://knapsackpro.com/faq/question/how-to-split-slow-rspec-test-files-by-test-examples-by-individual-it

There are 2 ways to split tests static or dynamic with queue and it works for all ruby test runners and some JS test runners like Jest or Cypress. Here is more technical examples:
https://docs.knapsackpro.com/2020/how-to-speed-up-ruby-and-javascript-tests-with-ci-parallelisation
Maybe you find it useful.

@jamie
Copy link

jamie commented Apr 29, 2022

We are standardizing on minitest at Shopify, and hence won't be supporting the RSpec implementation anymore.

Every so slightly offcopic, but is there any public discussion around what led Shopify to this decision? I'm rather curious as it does run contrary to larger community adoption.

@casperisfine
Copy link
Contributor

No public discussion no, but in short it's simply that only a small minority of our repos was using rspec, so maintaining all our various tools (not just ci-queue) to work with both Minitest and RSpec wasn't really worth the amount of work it required.

No specific beef against RSpec, and I encourage anyone willing to fork ci-queue to make and maintain a RSpec version of it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants