Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package rubygem-listen for openSUSE:Factory 
checked in at 2021-08-27 21:43:24
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-listen (Old)
 and      /work/SRC/openSUSE:Factory/.rubygem-listen.new.1899 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rubygem-listen"

Fri Aug 27 21:43:24 2021 rev:16 rq:914169 version:3.7.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/rubygem-listen/rubygem-listen.changes    
2021-08-12 09:00:51.254228718 +0200
+++ /work/SRC/openSUSE:Factory/.rubygem-listen.new.1899/rubygem-listen.changes  
2021-08-27 21:43:34.437947577 +0200
@@ -1,0 +2,9 @@
+Wed Aug 25 06:31:40 UTC 2021 - Manuel Schnitzer <mschnit...@suse.com>
+
+- updated to version 3.7.0
+
+* issue #509: raise Listen::Error::INotifyMaxWatchesExceeded rather than abort 
(#545) @ColinDKelley
+* Plumb Silencer.new and use it #542 spec (#544) @ColinDKelley
+* fix: Avoid scanning and building entries for silenced directories (#542) 
@ElMassimo
+
+-------------------------------------------------------------------

Old:
----
  listen-3.6.0.gem

New:
----
  listen-3.7.0.gem

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ rubygem-listen.spec ++++++
--- /var/tmp/diff_new_pack.v0Hn3Q/_old  2021-08-27 21:43:35.009948239 +0200
+++ /var/tmp/diff_new_pack.v0Hn3Q/_new  2021-08-27 21:43:35.013948243 +0200
@@ -24,7 +24,7 @@
 #
 
 Name:           rubygem-listen
-Version:        3.6.0
+Version:        3.7.0
 Release:        0
 %define mod_name listen
 %define mod_full_name %{mod_name}-%{version}

++++++ listen-3.6.0.gem -> listen-3.7.0.gem ++++++
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/base.rb 
new/lib/listen/adapter/base.rb
--- old/lib/listen/adapter/base.rb      2021-07-21 01:57:48.000000000 +0200
+++ new/lib/listen/adapter/base.rb      2021-08-19 07:31:34.000000000 +0200
@@ -51,7 +51,7 @@
         # TODO: separate config per directory (some day maybe)
         change_config = Change::Config.new(config.queue, config.silencer)
         config.directories.each do |dir|
-          record = Record.new(dir)
+          record = Record.new(dir, config.silencer)
           snapshot = Change.new(change_config, record)
           @snapshots[dir] = snapshot
         end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/listen/adapter/linux.rb 
new/lib/listen/adapter/linux.rb
--- old/lib/listen/adapter/linux.rb     2021-07-21 01:57:48.000000000 +0200
+++ new/lib/listen/adapter/linux.rb     2021-08-19 07:31:34.000000000 +0200
@@ -24,17 +24,14 @@
       README_URL = 'https://github.com/guard/listen'\
         '/blob/master/README.md#increasing-the-amount-of-inotify-watchers'
 
-      INOTIFY_LIMIT_MESSAGE = <<-EOS
-        FATAL: Listen error: unable to monitor directories for changes.
-        Visit #{README_URL} for info on how to fix this.
-      EOS
-
       def _configure(directory, &callback)
         require 'rb-inotify'
         @worker ||= ::INotify::Notifier.new
         @worker.watch(directory.to_s, *options.events, &callback)
       rescue Errno::ENOSPC
-        abort(INOTIFY_LIMIT_MESSAGE)
+        raise ::Listen::Error::INotifyMaxWatchesExceeded, <<~EOS
+          Unable to monitor directories for changes because iNotify max 
watches exceeded. See #{README_URL} .
+        EOS
       end
 
       def _run
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/listen/error.rb new/lib/listen/error.rb
--- old/lib/listen/error.rb     2021-07-21 01:57:48.000000000 +0200
+++ new/lib/listen/error.rb     2021-08-19 07:31:34.000000000 +0200
@@ -6,5 +6,6 @@
   class Error < RuntimeError
     class NotStarted < Error; end
     class SymlinkLoop < Error; end
+    class INotifyMaxWatchesExceeded < Error; end
   end
 end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/listen/record.rb new/lib/listen/record.rb
--- old/lib/listen/record.rb    2021-07-21 01:57:48.000000000 +0200
+++ new/lib/listen/record.rb    2021-08-19 07:31:34.000000000 +0200
@@ -11,9 +11,10 @@
 
     attr_reader :root
 
-    def initialize(directory)
+    def initialize(directory, silencer)
       @tree = _auto_hash
       @root = directory.to_s
+      @silencer = silencer
     end
 
     def add_dir(rel_path)
@@ -98,6 +99,8 @@
 
     def _fast_build_dir(remaining, symlink_detector)
       entry = remaining.pop
+      return if @silencer.silenced?(entry.record_dir_key, :dir)
+
       children = entry.children # NOTE: children() implicitly tests if dir
       symlink_detector.verify_unwatched!(entry)
       children.each { |child| remaining << child }
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  2021-07-21 01:57:48.000000000 +0200
+++ new/lib/listen/silencer.rb  2021-08-19 07:31:34.000000000 +0200
@@ -57,23 +57,21 @@
       | ~
     )$}x.freeze
 
+    # TODO: deprecate these mutators; use attr_reader instead
     attr_accessor :only_patterns, :ignore_patterns
 
-    def initialize
-      configure({})
+    def initialize(**options)
+      configure(options)
     end
 
+    # TODO: deprecate this mutator
     def configure(options)
       @only_patterns = options[:only] ? Array(options[:only]) : nil
       @ignore_patterns = _init_ignores(options[:ignore], options[:ignore!])
     end
 
-    # Note: relative_path is temporarily expected to be a relative Pathname to
-    # make refactoring easier (ideally, it would take a string)
-
-    # TODO: switch type and path places - and verify
     def silenced?(relative_path, type)
-      path = relative_path.to_s
+      path = relative_path.to_s   # in case it is a Pathname
 
       _ignore?(path) || (only_patterns && type == :file && !_only?(path))
     end
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   2021-07-21 01:57:48.000000000 +0200
+++ new/lib/listen/version.rb   2021-08-19 07:31:34.000000000 +0200
@@ -1,5 +1,5 @@
 # frozen_string_literal: true
 
 module Listen
-  VERSION = '3.6.0'
+  VERSION = '3.7.0'
 end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata        2021-07-21 01:57:48.000000000 +0200
+++ new/metadata        2021-08-19 07:31:34.000000000 +0200
@@ -1,14 +1,14 @@
 --- !ruby/object:Gem::Specification
 name: listen
 version: !ruby/object:Gem::Version
-  version: 3.6.0
+  version: 3.7.0
 platform: ruby
 authors:
 - Thibaud Guillaume-Gentil
 autorequire: 
 bindir: bin
 cert_chain: []
-date: 2021-07-20 00:00:00.000000000 Z
+date: 2021-08-19 00:00:00.000000000 Z
 dependencies:
 - !ruby/object:Gem::Dependency
   name: rb-fsevent
@@ -103,9 +103,9 @@
   allowed_push_host: https://rubygems.org
   bug_tracker_uri: https://github.com/guard/listen/issues
   changelog_uri: https://github.com/guard/listen/releases
-  documentation_uri: https://www.rubydoc.info/gems/listen/3.6.0
+  documentation_uri: https://www.rubydoc.info/gems/listen/3.7.0
   homepage_uri: https://github.com/guard/listen
-  source_code_uri: https://github.com/guard/listen/tree/v3.6.0
+  source_code_uri: https://github.com/guard/listen/tree/v3.7.0
 post_install_message: 
 rdoc_options: []
 require_paths:

Reply via email to