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

Release rspec-rails 4 #2265

Closed
benoittgt opened this issue Jan 15, 2020 · 28 comments
Closed

Release rspec-rails 4 #2265

benoittgt opened this issue Jan 15, 2020 · 28 comments
Labels

Comments

@benoittgt
Copy link
Member

Hello

This is an issue to follow the release of rspec-rails 4.

As mentioned in #2242 (comment) we have pending PR/issue that needs review or work.

I think we should tag them with v4.0 or set a milestone to help us to work on.

At the moment I don't know where I could help.

Thanks 🌝

@benoittgt benoittgt added the v4.0 label Jan 15, 2020
@JonRowe
Copy link
Member

JonRowe commented Jan 15, 2020

I think its just #2242 and #1938 that are really holding me off releasing

@klyonrad
Copy link
Contributor

klyonrad commented Jan 19, 2020

I think that this behaviour (scaffolding creates controller specs and empty request spec that I introduced would irritate some users. Please check if you can confirm this problem

@micodel
Copy link

micodel commented Jan 28, 2020

Why update the README to state 4.0 before its release?

Could not find gem 'rspec-rails (~> 4.0)' in any of the gem sources listed in your Gemfile.

@JonRowe
Copy link
Member

JonRowe commented Jan 28, 2020

Readme refers to the current branch and commit, the relevant branches refer to their relevant versions.

@micodel I've added a note making this more clear. Its common practise however.

@micodel
Copy link

micodel commented Jan 28, 2020

I'm sure you are more experienced than me 😅, but what about having some sort of versioned 4.0 rc branch with a living README, and letting master (aka the main page README) reflect the latest stable release? I have seen this implemented in other gems and its a nice touch

@JonRowe
Copy link
Member

JonRowe commented Jan 28, 2020

Thats really not how Github works, the default branch is the target of all PRs and is thus expected to be the core development branch, you can change what that branch is but it is always the default landing branch. Thus you should always assume the README.md is for the development branch and check the releasing strategy accordingly.

@JonRowe
Copy link
Member

JonRowe commented Jan 28, 2020

We could not have the current version being worked on in the readme but we've been on the verge of releasing 4.0.0 for months so we updated it when we merged that branch ready to release and it just hasn't happened yet 😂

@benoittgt
Copy link
Member Author

benoittgt commented Mar 10, 2020

I think we can already release the 4.0. Then iterate for the upcoming features.

But maybe @JonRowe you want to fix the remaning issue/pr first? https://github.com/rspec/rspec-rails/labels/v4.0

@klyonrad
Copy link
Contributor

As mentioned, I introduced a bug with the generate request specs PR

this behaviour (scaffolding creates controller specs and empty request spec

So maybe we should revert it, release and then iterate

@JonRowe
Copy link
Member

JonRowe commented Mar 10, 2020

So we need to release those remaining issues in a major release, so if not 4.0.0 then they'll have to wait until 5.0.0 however I really don't want to ship controller specs generated in 4.0.0

@JonRowe
Copy link
Member

JonRowe commented Mar 13, 2020

I'm going to ship the latest changes as rc1 at some point today, and maybe look towards releasing fully next week.

@JonRowe JonRowe closed this as completed Mar 24, 2020
@JonRowe JonRowe reopened this Mar 24, 2020
@JonRowe
Copy link
Member

JonRowe commented Mar 24, 2020

So 4.0.0 is on rubygems (🎉 ) but these still need doing:

  • docs on rspec.info
  • docs on relish
  • blog post about 4.0.0 and the "journey" thanking everyone
  • announce it

@pirj
Copy link
Member

pirj commented Mar 24, 2020

Hooray!

@benoittgt
Copy link
Member Author

Thanks a lot. Do you need help for the remaining tasks @JonRowe?

@JonRowe
Copy link
Member

JonRowe commented Mar 24, 2020

@benoittgt do you want to tackle the docs onto rspec.info? and if anyone has bits for the blog post, I'm going to try to tackle that tomorrow evening...

@JonRowe
Copy link
Member

JonRowe commented Mar 24, 2020

@pirj are you looking at how to get jruby green again? I might just push up a temporary allow-failures setting...

@benoittgt
Copy link
Member Author

@JonRowe yes for rdoc!

@pirj
Copy link
Member

pirj commented Mar 24, 2020

I'm waiting for Travis to pick up newer JRuby for their RVM cache, still not there. However, I'm not 100% certain it will fix all the problems in JRuby build jobs.
Allow-failures sounds good 👍

@benoittgt
Copy link
Member Author

Doc is merged and deployed. http://rspec.info/documentation/4.0/rspec-rails/RSpec/Rails.html

rspec/rspec.github.io#136

@choosen
Copy link
Contributor

choosen commented Apr 27, 2020

There is no info about activecable generators: https://relishapp.com/rspec/rspec-rails/docs/generators

@pirj
Copy link
Member

pirj commented Apr 27, 2020

@choosen
Copy link
Contributor

choosen commented Apr 27, 2020

https://relishapp.com/rspec/rspec-rails/v/4-0/docs/generator-specs
we don't cover here the specs:

  • mailbox
  • scaffold

system I was wrong about them: they are last on the list

I'm not familiar with that to compose content for those pages : )

Edit: Should I add it as an issue?

@benoittgt
Copy link
Member Author

Can I help on this? #2265 (comment)

@JonRowe
Copy link
Member

JonRowe commented Apr 29, 2020

@benoittgt theres a rake task to run to gather the stats for the blog post, theres also a need to outline some of the new features, I've not had time to sit down and do that, if you're keen to start it that'd be a great help

@benoittgt
Copy link
Member Author

benoittgt commented Apr 29, 2020

Stats

Ok. I read rspec/rspec-dev#43 (comment)

Use rake version_stats[vX.(Y - 1).0...vX.Y] to get version stats for post.

In the case of Rails I did rake version_stats[v3.9.1...v4.0.0]. It gives me:

### rspec-rails:

* **Total Commits**: 258
* **Merged pull requests**: 56
* **27 contributors**: Andrew White, Anton Rieder, Benoit Tigeot, Jon Rowe, David Revelo, Giovanni Kock Bonetti, Ignatius Reza, James Dabbs, Joel AZEMAR, John Hawthorn, Jonathan Rochkind, Kieran O'Grady, Moshe Kamensky, OKURA Masafumi, Olle Jonsson, Pedro Paiva, Phil Pirozhkov, Sam Phippen, Seb Jacobs, Tanbir Hasan, Viacheslav Bobrov, Vladimir Dementyev, Xavier Shay, alpaca-tc, pavel, ta1kt0me

Reduced changelog

Enhancements:

* Adds support for Rails 6. (Penelope Phippen, Benoit Tigeot, Jon Rowe, #2071)
* Adds support for JRuby on Rails 5.2 and 6
* Add support for parameterised mailers (Ignatius Reza, #2125)
* Add ActionMailbox spec helpers and test type (James Dabbs, #2119)
* Add ActionCable spec helpers and test type (Vladimir Dementyev, #2113)
* Default to generating request specs rather than controller specs when generating a controller (Luka Lüdicke, #2222)
* Add routing spec template as an option for generating controller specs.
  (David Revelo, #2134)
* Add argument matcher support to `have_enqueued_*` matchers. (Phil Pirozhkov, #2206)
* Switch generated templates to use ruby 1.9 hash keys. (Tanbir Hasan, #2224)
* Add `have_been_performed`/`have_performed_job`/`perform_job` ActiveJob
  matchers (Isaac Seymour, #1785)
* The scaffold generator now generates request specs in preference to controller specs. (Luka Lüdicke, #2288)
* Add configuration option to disable ActiveRecord. (Jon Rowe, Phil Pirozhkov, Hermann Mayer, #2266)
*  Set `ActionDispatch::SystemTesting::Server.silence_puma = true` when running system specs to avoid displaying logs. (ta1kt0me, Benoit Tigeot, #2289)

Bug Fixes:

* Replace `before_teardown` as well as `after_teardown` to ensure screenshots
  are generated correctly. (Jon Rowe, #2164)
* Restore previous conditional check for setting `default_url_options` in feature specs, prevents a `NoMethodError` in some scenarios. (Eugene Kenny, #2277)
* Allow changing `ActiveJob::Base.queue_adapter` inside a system spec. (Jonathan Rochkind, #2242)
* `rails generate generator` command now creates related spec file (Joel Azemar, #2217)
* Relax upper `capybara` version constraint to allow for Capybara 3.x (Phil Pirozhkov, #2281)
* Clear ActionMailer test mailbox after each example (Benoit Tigeot, #2293)

Breaking Changes:

* Drops support for Rails below 5.0
* Drops support for Ruby below 2.3

Is it ok for you?

@pirj
Copy link
Member

pirj commented Apr 29, 2020

Co-Authored-By: Jon Rowe

Seems redundant. Might need a manual recalc after removal 😆

@benoittgt
Copy link
Member Author

@pirj Thanks. Removed :)

@JonRowe
Copy link
Member

JonRowe commented May 2, 2020

Its a good start for a PR! Generally we talk about what the change log means rather than just printing it, so we wouldn't mention things like Adds support for JRuby on Rails 5.2 and 6 as an item on their own as they are pretty self explanatory but we would prehaps mention it in a paragraph about rails 6 support.

Do you want to chuck it up on a pr on the website and then prehaps we can make contributions as we go

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

No branches or pull requests

6 participants