guard / listen

The Listen gem listens to file modifications and notifies you about the changes.
https://rubygems.org/gems/listen
MIT License
1.92k stars 246 forks source link

New release? #465

Closed nirvdrum closed 4 years ago

nirvdrum commented 4 years ago

Is there anything I can do to help get a new release out the door? I'd like to get the change that drops the ruby_dep dependency, which was merged in over a year ago. Since it's still a dependency, it's printing out false negatives about the level of support for my Ruby interpreter of choice (TruffleRuby).

As an open source maintainer myself, I realize that asking for a new release can be a touchy subject and is a thankless task. So, I sincerely apologize if I've approached a sensitive topic. I also don't like volunteering anyone else's time, so if there's some sort of release qualification testing you need done, please just let me know.

rymai commented 4 years ago

That's a totally legitimate request!

I can have a look on Monday unless someone else is faster. :)

Le ven. 27 sept. 2019 à 19:55, notifications@github.com a écrit :

Is there anything I can do to help get a new release out the door? I'd like to get the change that drops the ruby_dep dependency, which was merged in over a year ago. Since it's still a dependency, it's printing out false negatives about the level of support for my Ruby interpreter of choice (TruffleRuby).

As an open source maintainer myself, I realize that asking for a new release can be a touchy subject and is a thankless task. So, I sincerely apologize if I've approached a sensitive topic. I also don't like volunteering anyone else's time, so if there's some sort of release qualification testing you need done, please just let me know.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/guard/listen/issues/465?email_source=notifications&email_token=AAAAJEE63PQ4YIO46XD6GK3QLZCINA5CNFSM4I3JFIU2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HOG35OA, or mute the thread https://github.com/notifications/unsubscribe-auth/AAAAJEEU5PX4FE76OMEXZDTQLZCINANCNFSM4I3JFIUQ .

ioquatix commented 4 years ago

If you add me as a maintainer of the org I can help with this. but you'd also need to add me as a gem owner.

rymai commented 4 years ago

If you add me as a maintainer of the org I can help with this.

@ioquatix Done!

but you'd also need to add me as a gem owner.

and done! ❤️

ioquatix commented 4 years ago

Done.

mattbrictson commented 4 years ago

Could we get release notes for 3.2.0? 🙏 https://github.com/guard/listen/releases

ioquatix commented 4 years ago

Do you want to write it?

ioquatix commented 4 years ago

The best place to start would be to look through the git commit history... I only checked briefly and confirmed all specs passing do this release.

mattbrictson commented 4 years ago

The reason I asked is because I believe it is important when publishing a release to rubygems that the release is always accompanied by a set of release notes. If the notes are absent it can give the impression that code is being pushed that the publishers don't understand or hasn't been thoroughly reviewed, which seems dangerous in light of recent gem malware discoveries.

To be honest I do not feel comfortable writing the release notes myself since I am not a contributor and have no context as to the project's history or how the code is works. Are there no maintainers left that can do it? If not then I will give it a shot.

ioquatix commented 4 years ago

I did review the code thoroughly but the best source of why changes occurred right now is git diff and git log. If users who made commits or PRs didn’t update change log and it’s important we should ensure all such merge has it going forward. Open to ideas about best policy for this.

mattbrictson commented 4 years ago

I've tried a couple different approaches.

One option is to have a CHANGELOG file that is updated with each PR. Before merging, each PR has to include an update to the CHANGELOG. I have used Danger (a GitHub bot) to automatically enforce this so that maintainers don't have to pester contributors about it. The problems with this approach are:

  1. Contributors always forget to do it (hence the Danger bot to remind them)
  2. The CHANGELOG always has merge conflicts because every PR is touching the same part of the same file

In short, it adds friction to the PR process. Also for listen in particular, the CHANGELOG isn't even maintained anymore; it is a blank file that points to the GitHub Releases page. So this approach doesn't really fit the style of the project.

The second option that I am using in my projects these days is using GitHub Actions and release-drafter. This updates the GitHub Release Notes whenever a PR is merged; it automatically adds a bullet point to the release with the PR title, PR number, and author. It can even group the release notes by section based on PR labels. Then when you publish a release you can use the automated draft as-is, or do any manual tweaks as needed.

I'd be happy to set that up if you are interested in the latter approach. Here's how we set it up on capistrano: https://github.com/capistrano/capistrano/pull/2034

ioquatix commented 4 years ago

The 2nd approach you propose makes total sense. Happy to have you do it. Let me see if I can give you access...

ioquatix commented 4 years ago

@rymai would have to give you access, I'm not an admin.

ioquatix commented 4 years ago

Can you make a PR?

mattbrictson commented 4 years ago

Yes, I'll make a PR this week.

The owner of the guard GitHub organization will need to sign up for the GitHub Actions beta. Are you able to do that?

https://github.com/features/actions/signup

ioquatix commented 4 years ago

Nope back to @rymai

rymai commented 4 years ago

The owner of the guard GitHub organization will need to sign up for the GitHub Actions beta.

@mattbrictson Done, thanks!

mattbrictson commented 4 years ago

Sorry, haven't gotten to putting up a PR on this yet. Will try tomorrow.

mattbrictson commented 4 years ago

PR: #466

eregon commented 4 years ago

@ioquatix @rymai @mattbrictson Thank you all for the release!

For the record, these are the (incorrect) warnings shown by ruby_dep:

$ bundle exec rails s
RubyDep: WARNING: Your Ruby may not be supported.
RubyDep: WARNING: Your Ruby is: 2.6.2 'truffleruby' (unrecognized). If you need this version supported, please open an issue at http://github.com/e2/ruby_dep
RubyDep: WARNING: (To disable warnings, see:http://github.com/e2/ruby_dep/wiki/Disabling-warnings )

And the maintainer of ruby_dep seems unresponsive (https://github.com/e2/ruby_dep/pull/37), so I'm happy listendropped that dependency.

I made a PR to update listen in Rails: https://github.com/rails/rails/pull/37788