Hello community, here is the log from the commit of package rubygem-listen for openSUSE:Factory checked in at 2020-03-07 21:38:39 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/rubygem-listen (Old) and /work/SRC/openSUSE:Factory/.rubygem-listen.new.26092 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rubygem-listen" Sat Mar 7 21:38:39 2020 rev:12 rq:773780 version:3.2.1 Changes: -------- --- /work/SRC/openSUSE:Factory/rubygem-listen/rubygem-listen.changes 2016-07-21 07:57:34.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.rubygem-listen.new.26092/rubygem-listen.changes 2020-03-07 21:38:41.124290253 +0100 @@ -1,0 +2,6 @@ +Mon Feb 10 15:03:43 UTC 2020 - Stephan Kulow <[email protected]> + +- updated to version 3.2.1 + see installed CHANGELOG.md + +------------------------------------------------------------------- Old: ---- listen-3.1.5.gem New: ---- listen-3.2.1.gem ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ rubygem-listen.spec ++++++ --- /var/tmp/diff_new_pack.WtC1rO/_old 2020-03-07 21:38:42.120290925 +0100 +++ /var/tmp/diff_new_pack.WtC1rO/_new 2020-03-07 21:38:42.136290937 +0100 @@ -1,7 +1,7 @@ # # spec file for package rubygem-listen # -# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -12,7 +12,7 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # @@ -24,17 +24,19 @@ # Name: rubygem-listen -Version: 3.1.5 +Version: 3.2.1 Release: 0 %define mod_name listen %define mod_full_name %{mod_name}-%{version} BuildRoot: %{_tmppath}/%{name}-%{version}-build -BuildRequires: %{ruby >= 2.2.3} +BuildRequires: %{ruby < 3} +BuildRequires: %{ruby => 2.2} +BuildRequires: %{ruby >= 2.2.7} BuildRequires: %{rubygem gem2rpm} BuildRequires: ruby-macros >= 5 BuildRequires: update-alternatives -Url: https://github.com/guard/listen -Source: http://rubygems.org/gems/%{mod_full_name}.gem +URL: https://github.com/guard/listen +Source: https://rubygems.org/gems/%{mod_full_name}.gem Source1: gem2rpm.yml Summary: Listen to file modifications License: MIT ++++++ listen-3.1.5.gem -> listen-3.2.1.gem ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/CONTRIBUTING.md new/CONTRIBUTING.md --- old/CONTRIBUTING.md 2016-05-18 04:21:28.000000000 +0200 +++ new/CONTRIBUTING.md 2019-12-05 14:04:45.000000000 +0100 @@ -31,8 +31,15 @@ * Make sure your patches are well tested. All specs run with `rake spec` must pass. * Update the [Yard](http://yardoc.org/) documentation. * Update the [README](https://github.com/guard/listen/blob/master/README.md). -* Update the [CHANGELOG](https://github.com/guard/listen/blob/master/CHANGELOG.md) for noteworthy changes. * Please **do not change** the version number. +The title of your PR will automatically be included in the release notes for the next version of the gem. A maintainer can add one of the following GitHub labels to the PR to automatically categorize it when the release notes are generated: + +- ⚠️ Breaking +- ✨ Feature +- 🐛 Bug Fix +- 📚 Docs +- 🏠 Housekeeping + For questions please join us in our [Google group](http://groups.google.com/group/guard-dev) or on `#guard` (irc.freenode.net). diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/README.md new/README.md --- old/README.md 2016-05-18 04:21:28.000000000 +0200 +++ new/README.md 2019-12-05 14:04:45.000000000 +0100 @@ -1,12 +1,10 @@ -## IMPORTANT: [Ruby 2.1 is officially outdated and unsupported!](https://www.ruby-lang.org/en/news/2016/03/30/ruby-2-1-9-released/) Please upgrade to Ruby 2.2 before installing Listen! - -### (To install for older versions, update Bundler to a prerelease version: `gem install bundler --pre` and Bundler should correctly resolve to an earlier gems for your given Ruby version). +## IMPORTANT: If you cannot install Listen (e.g. on Travis/CI builds), [a workaround is here](https://github.com/guard/listen/wiki/Ruby-version-requirements) :exclamation: Listen is currently accepting more maintainers. Please [read this](https://github.com/guard/guard/wiki/Maintainers) if you're interested in joining the team. # Listen -[](http://badge.fury.io/rb/listen) [](https://travis-ci.org/guard/listen) [](https://gemnasium.com/guard/listen) [](https://codeclimate.com/github/guard/listen) [](https://coveralls.io/r/guard/listen) +[](http://badge.fury.io/rb/listen) [](https://travis-ci.org/guard/listen) [](https://codeclimate.com/github/guard/listen) [](https://coveralls.io/r/guard/listen) The Listen gem listens to file modifications and notifies you about the changes. @@ -31,7 +29,8 @@ * Specs suite on JRuby and Rubinius aren't reliable on Travis CI, but should work. * Windows and \*BSD adapter aren't continuously and automatically tested. * OSX adapter has some performance limitations ([#342](https://github.com/guard/listen/issues/342)). -* Ruby < 2.2.x is no longer supported - upgrade to Ruby 2.2 or 2.3 +* Ruby < 2.2.x is no longer supported - upgrade to Ruby 2.2 or 2.3. +* Listeners do not notify across forked processes, if you wish for multiple processes to receive change notifications you must [listen inside of each process](https://github.com/guard/listen/issues/398#issuecomment-223957952). Pull requests or help is very welcome for these. @@ -170,7 +169,7 @@ ## Debugging -Setting the environment variable `LISTEN_GEM_DEBUGGING=1` sets up the INFO level logger, while `LISTEN_GEM_DEBUGGING=2` sets up the DEBUG level logger. +Setting the environment variable `LISTEN_GEM_DEBUGGING=1` sets up the INFO level logger, while `LISTEN_GEM_DEBUGGING=2` sets up the DEBUG level logger. You can also set `Listen.logger` to a custom logger. @@ -263,11 +262,29 @@ For questions please join us in our [Google group](http://groups.google.com/group/guard-dev) or on `#guard` (irc.freenode.net). +## Releasing + +### Prerequisites + +* You must have commit rights to the GitHub repository. +* You must have push rights for rubygems.org. + +### How to release + +1. Run `bundle install` to make sure that you have all the gems necessary for testing and releasing. +2. **Ensure all tests are passing by running `bundle exec rake`.** +3. Determine which would be the correct next version number according to [semver](http://semver.org/). +4. Update the version in `./lib/listen/version.rb`. +5. Update the version in the Install section of `./README.md` (`gem 'listen', '~> X.Y'`). +6. Commit the version in a single commit, the message should be "Preparing vX.Y.Z" +7. Run `bundle exec rake release:full`; this will tag, push to GitHub, and publish to rubygems.org. +8. Update and publish the release notes on the [GitHub releases page](https://github.com/guard/listen/releases) if necessary + ## Acknowledgments * [Michael Kessler (netzpirat)][] for having written the [initial specs](https://github.com/guard/listen/commit/1e457b13b1bb8a25d2240428ce5ed488bafbed1f). * [Travis Tilley (ttilley)][] for this awesome work on [fssm][] & [rb-fsevent][]. -* [Nathan Weizenbaum (nex3)][] for [rb-inotify][], a thorough inotify wrapper. +* [Natalie Weizenbaum (nex3)][] for [rb-inotify][], a thorough inotify wrapper. * [Mathieu Arnold (mat813)][] for [rb-kqueue][], a simple kqueue wrapper. * [Maher Sallam][] for [wdm][], windows support wouldn't exist without him. * [Yehuda Katz (wycats)][] for [vigilo][], that has been a great source of inspiration. @@ -287,7 +304,7 @@ [fssm]: https://github.com/ttilley/fssm [rb-fsevent]: https://github.com/thibaudgg/rb-fsevent [Mathieu Arnold (mat813)]: https://github.com/mat813 -[Nathan Weizenbaum (nex3)]: https://github.com/nex3 +[Natalie Weizenbaum (nex3)]: https://github.com/nex3 [rb-inotify]: https://github.com/nex3/rb-inotify [stereobooster]: https://github.com/stereobooster [rb-fchange]: https://github.com/stereobooster/rb-fchange Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/listen/adapter/darwin.rb new/lib/listen/adapter/darwin.rb --- old/lib/listen/adapter/darwin.rb 2016-05-18 04:21:28.000000000 +0200 +++ new/lib/listen/adapter/darwin.rb 2019-12-05 14:04:45.000000000 +0100 @@ -22,11 +22,11 @@ EOS def self.usable? - require 'rb-fsevent' version = RbConfig::CONFIG['target_os'][OS_REGEXP, :major_version] return false unless version return true if version.to_i >= 13 # darwin13 is OS X 10.9 + require 'rb-fsevent' fsevent_version = Gem::Version.new(FSEvent::VERSION) return true if fsevent_version <= Gem::Version.new('0.9.4') Kernel.warn INCOMPATIBLE_GEM_VERSION @@ -35,58 +35,45 @@ private - # NOTE: each directory gets a DIFFERENT callback! def _configure(dir, &callback) - opts = { latency: options.latency } - - @workers ||= ::Queue.new - @workers << FSEvent.new.tap do |worker| - _log :debug, "fsevent: watching: #{dir.to_s.inspect}" - worker.watch(dir.to_s, opts, &callback) - end + @callbacks[dir] = callback end def _run - first = @workers.pop - - # NOTE: _run is called within a thread, so run every other - # worker in it's own thread - _run_workers_in_background(_to_array(@workers)) - _run_worker(first) - end - - def _process_event(dir, event) - _log :debug, "fsevent: processing event: #{event.inspect}" - event.each do |path| - new_path = Pathname.new(path.sub(%r{\/$}, '')) - _log :debug, "fsevent: #{new_path}" - # TODO: does this preserve symlinks? - rel_path = new_path.relative_path_from(dir).to_s - _queue_change(:dir, dir, rel_path, recursive: true) + require 'rb-fsevent' + worker = FSEvent.new + dirs_to_watch = @callbacks.keys.map(&:to_s) + _log(:info) { "fsevent: watching: #{dirs_to_watch.inspect}" } + worker.watch(dirs_to_watch, { latency: options.latency }, &method(:_process_changes)) + Listen::Internals::ThreadPool.add { _run_worker(worker) } + end + + def _process_changes(dirs) + dirs.each do |dir| + dir = Pathname.new(dir.sub(%r{\/$}, '')) + + @callbacks.each do |watched_dir, callback| + if watched_dir.eql?(dir) || Listen::Directory.ascendant_of?(watched_dir, dir) + callback.call(dir) + end + end end end + def _process_event(dir, path) + _log(:debug) { "fsevent: processing path: #{path.inspect}" } + # TODO: does this preserve symlinks? + rel_path = path.relative_path_from(dir).to_s + _queue_change(:dir, dir, rel_path, recursive: true) + end + def _run_worker(worker) - _log :debug, "fsevent: running worker: #{worker.inspect}" + _log(:debug) { "fsevent: running worker: #{worker.inspect}" } worker.run rescue format_string = 'fsevent: running worker failed: %s:%s called from: %s' _log_exception format_string, caller end - - def _run_workers_in_background(workers) - workers.each do |worker| - # NOTE: while passing local variables to the block below is not - # thread safe, using 'worker' from the enumerator above is ok - Listen::Internals::ThreadPool.add { _run_worker(worker) } - end - end - - def _to_array(queue) - workers = [] - workers << queue.pop until queue.empty? - workers - end end end end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/listen/directory.rb new/lib/listen/directory.rb --- old/lib/listen/directory.rb 2016-05-18 04:21:28.000000000 +0200 +++ new/lib/listen/directory.rb 2019-12-05 14:04:45.000000000 +0100 @@ -53,6 +53,12 @@ raise end + def self.ascendant_of?(base, other) + other.ascend do |ascendant| + break true if base == ascendant + end + end + def self._async_changes(snapshot, path, previous, options) fail "Not a Pathname: #{path.inspect}" unless path.respond_to?(:children) previous.each do |entry, data| diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/listen/queue_optimizer.rb new/lib/listen/queue_optimizer.rb --- old/lib/listen/queue_optimizer.rb 2016-05-18 04:21:28.000000000 +0200 +++ new/lib/listen/queue_optimizer.rb 2019-12-05 14:04:45.000000000 +0100 @@ -107,15 +107,15 @@ def _detect_possible_editor_save(changes) return unless changes.size == 2 - from_type = from_change = from = nil - to_type = to_change = to_dir = to = nil + from_type = from = nil + to_type = to_dir = to = nil changes.each do |data| case data[1] when :moved_from - from_type, from_change, _, from, = data + from_type, _from_change, _, from, = data when :moved_to - to_type, to_change, to_dir, to, = data + to_type, _to_change, to_dir, to, = data else return nil end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/listen/silencer.rb new/lib/listen/silencer.rb --- old/lib/listen/silencer.rb 2016-05-18 04:21:28.000000000 +0200 +++ new/lib/listen/silencer.rb 2019-12-05 14:04:45.000000000 +0100 @@ -46,6 +46,9 @@ ) ) + # Mutagen sync temporary files + | \.mutagen-temporary.* + # other files | \.DS_Store | \.tmp diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/listen/version.rb new/lib/listen/version.rb --- old/lib/listen/version.rb 2016-05-18 04:21:28.000000000 +0200 +++ new/lib/listen/version.rb 2019-12-05 14:04:45.000000000 +0100 @@ -1,3 +1,3 @@ module Listen - VERSION = '3.1.5'.freeze + VERSION = '3.2.1'.freeze end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/listen.rb new/lib/listen.rb --- old/lib/listen.rb 2016-05-18 04:21:28.000000000 +0200 +++ new/lib/listen.rb 2019-12-05 14:04:45.000000000 +0100 @@ -4,11 +4,6 @@ require 'listen/internals/thread_pool' -# Show warnings about vulnerabilities, bugs and outdated Rubies, since previous -# versions aren't tested or officially supported. -require 'ruby_dep/warning' -RubyDep::Warning.new.show_warnings - # Always set up logging by default first time file is required # # NOTE: If you need to clear the logger completely, do so *after* diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/metadata new/metadata --- old/metadata 2016-05-18 04:21:28.000000000 +0200 +++ new/metadata 2019-12-05 14:04:45.000000000 +0100 @@ -1,14 +1,14 @@ --- !ruby/object:Gem::Specification name: listen version: !ruby/object:Gem::Version - version: 3.1.5 + version: 3.2.1 platform: ruby authors: - Thibaud Guillaume-Gentil autorequire: bindir: bin cert_chain: [] -date: 2016-05-18 00:00:00.000000000 Z +date: 2019-12-05 00:00:00.000000000 Z dependencies: - !ruby/object:Gem::Dependency name: rb-fsevent @@ -16,20 +16,20 @@ requirements: - - "~>" - !ruby/object:Gem::Version - version: '0.9' + version: '0.10' - - ">=" - !ruby/object:Gem::Version - version: 0.9.4 + version: 0.10.3 type: :runtime prerelease: false version_requirements: !ruby/object:Gem::Requirement requirements: - - "~>" - !ruby/object:Gem::Version - version: '0.9' + version: '0.10' - - ">=" - !ruby/object:Gem::Version - version: 0.9.4 + version: 0.10.3 - !ruby/object:Gem::Dependency name: rb-inotify requirement: !ruby/object:Gem::Requirement @@ -39,7 +39,7 @@ version: '0.9' - - ">=" - !ruby/object:Gem::Version - version: 0.9.7 + version: 0.9.10 type: :runtime prerelease: false version_requirements: !ruby/object:Gem::Requirement @@ -49,35 +49,21 @@ version: '0.9' - - ">=" - !ruby/object:Gem::Version - version: 0.9.7 -- !ruby/object:Gem::Dependency - name: ruby_dep - requirement: !ruby/object:Gem::Requirement - requirements: - - - "~>" - - !ruby/object:Gem::Version - version: '1.2' - type: :runtime - prerelease: false - version_requirements: !ruby/object:Gem::Requirement - requirements: - - - "~>" - - !ruby/object:Gem::Version - version: '1.2' + version: 0.9.10 - !ruby/object:Gem::Dependency name: bundler requirement: !ruby/object:Gem::Requirement requirements: - - - "~>" + - - ">=" - !ruby/object:Gem::Version - version: '1.12' + version: '0' type: :development prerelease: false version_requirements: !ruby/object:Gem::Requirement requirements: - - - "~>" + - - ">=" - !ruby/object:Gem::Version - version: '1.12' + version: '0' description: The Listen gem listens to file modifications and notifies you about the changes. Works everywhere! email: [email protected] @@ -137,17 +123,15 @@ version: '2.2' - - ">=" - !ruby/object:Gem::Version - version: 2.2.3 + version: 2.2.7 required_rubygems_version: !ruby/object:Gem::Requirement requirements: - - ">=" - !ruby/object:Gem::Version version: '0' requirements: [] -rubyforge_project: -rubygems_version: 2.5.1 +rubygems_version: 3.0.6 signing_key: specification_version: 4 summary: Listen to file modifications test_files: [] -has_rdoc:
