Hello community,

here is the log from the commit of package rubygem-childprocess for 
openSUSE:Factory checked in at 2020-09-12 00:12:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-childprocess (Old)
 and      /work/SRC/openSUSE:Factory/.rubygem-childprocess.new.4249 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rubygem-childprocess"

Sat Sep 12 00:12:44 2020 rev:28 rq:829970 version:4.0.0

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/rubygem-childprocess/rubygem-childprocess.changes    
    2019-11-13 13:27:02.275617031 +0100
+++ 
/work/SRC/openSUSE:Factory/.rubygem-childprocess.new.4249/rubygem-childprocess.changes
      2020-09-12 00:13:24.141265226 +0200
@@ -1,0 +2,11 @@
+Wed Aug 26 14:53:48 UTC 2020 - Dan Čermák <[email protected]>
+
+- New upstream release 4.0.0
+
+  * [#167](https://github.com/enkessler/childprocess/pull/167): Fix detach 
behavior on Windows
+  * [#168](https://github.com/enkessler/childprocess/pull/168): Drop support 
for Ruby 2.3
+
+- packaging changes:
+  * drop development only files
+
+-------------------------------------------------------------------

Old:
----
  childprocess-3.0.0.gem

New:
----
  childprocess-4.0.0.gem

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

Other differences:
------------------
++++++ rubygem-childprocess.spec ++++++
--- /var/tmp/diff_new_pack.FM61mD/_old  2020-09-12 00:13:25.301266336 +0200
+++ /var/tmp/diff_new_pack.FM61mD/_new  2020-09-12 00:13:25.305266340 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package rubygem-childprocess
 #
-# Copyright (c) 2019 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
@@ -24,15 +24,15 @@
 #
 
 Name:           rubygem-childprocess
-Version:        3.0.0
+Version:        4.0.0
 Release:        0
 %define mod_name childprocess
 %define mod_full_name %{mod_name}-%{version}
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
-BuildRequires:  %{ruby >= 2.3.0}
+BuildRequires:  %{ruby >= 2.4.0}
 BuildRequires:  %{rubygem gem2rpm}
 BuildRequires:  ruby-macros >= 5
-Url:            http://github.com/enkessler/childprocess
+URL:            http://github.com/enkessler/childprocess
 Source:         https://rubygems.org/gems/%{mod_full_name}.gem
 Source1:        gem2rpm.yml
 Summary:        A simple and reliable solution for controlling external 
programs
@@ -51,6 +51,10 @@
 %gem_install \
   --doc-files="CHANGELOG.md LICENSE README.md" \
   -f
+# MANUAL
+# delete custom files here or do other fancy stuff
+find %{buildroot}/%{_libdir}/ruby/gems/ \( -name '.document' -o -name 
'.travis.yml' -o -name '.gitignore' -o -name '.rspec' \) | xargs rm
+# /MANUAL
 
 %gem_packages
 

++++++ childprocess-3.0.0.gem -> childprocess-4.0.0.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/.travis.yml new/.travis.yml
--- old/.travis.yml     2019-09-20 15:31:04.000000000 +0200
+++ new/.travis.yml     2020-06-18 08:32:02.000000000 +0200
@@ -4,7 +4,6 @@
 
 rvm:
   - rbx-3
-  - 2.3
   - 2.4
   - 2.5
   - 2.6
@@ -16,9 +15,7 @@
 
 before_install:
   - "echo 'gem: --no-document' > ~/.gemrc"
-  # RubyGems update is supported for Ruby 2.3 and later
-  - ruby -e "system('gem update --system') if Gem::Version.new(RUBY_VERSION) 
>= Gem::Version.new('2.3')"
-  - gem install bundler --version '~> 1.17'
+  - gem install bundler
 
 before_script:
   - 'export JAVA_OPTS="${JAVA_OPTS_FOR_SPECS}"'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/CHANGELOG.md new/CHANGELOG.md
--- old/CHANGELOG.md    2019-09-20 15:31:04.000000000 +0200
+++ new/CHANGELOG.md    2020-06-18 08:32:02.000000000 +0200
@@ -1,6 +1,10 @@
+### Version 4.0.0 / 2020-06-18
+
+* [#167](https://github.com/enkessler/childprocess/pull/167): Fix detach 
behavior on Windows
+
 ### Version 3.0.0 / 2019-09-20
 
-* [#156](https://github.com/enkessler/childprocess/pull/156)Remove unused 
`rubyforge_project` from gemspec
+* [#156](https://github.com/enkessler/childprocess/pull/156): Remove unused 
`rubyforge_project` from gemspec
 * [#160](https://github.com/enkessler/childprocess/pull/160): Remove extension 
to conditionally install `ffi` gem on Windows platforms
 * [#160](https://github.com/enkessler/childprocess/pull/160): Remove runtime 
dependency on `rake` gem
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/README.md new/README.md
--- old/README.md       2019-09-20 15:31:04.000000000 +0200
+++ new/README.md       2020-06-18 08:32:02.000000000 +0200
@@ -14,7 +14,7 @@
 
 # Requirements
 
-* Ruby 2.3+, JRuby 9+
+* Ruby 2.4+, JRuby 9+
 
 Windows users **must** ensure the `ffi` gem (`>= 1.0.11`) is installed in 
order to use ChildProcess.
 
@@ -69,21 +69,33 @@
 ```ruby
 r, w = IO.pipe
 
-proc = ChildProcess.build("echo", "foo")
-proc.io.stdout = proc.io.stderr = w
-proc.start
-
-Thread.new {
-  begin
-    loop do
-      print r.readpartial(8192)
+begin
+  process = ChildProcess.build("sh" , "-c",
+                               "for i in {1..3}; do echo $i; sleep 1; done")
+  process.io.stdout = w
+  process.start # This results in a fork, inheriting the write end of the pipe.
+
+  # Close parent's copy of the write end of the pipe so when the (forked) child
+  # process closes its write end of the pipe the parent receives EOF when
+  # attempting to read from it. If the parent leaves its write end open, it
+  # will not detect EOF.
+  w.close
+
+  thread = Thread.new do
+    begin
+      loop do
+        print r.readpartial(16384)
+      end
+    rescue EOFError
+      # Child has closed the write end of the pipe
     end
-  rescue EOFError
   end
-}
 
-proc.wait
-w.close
+  process.wait
+  thread.join
+ensure
+  r.close
+end
 ```
 
 Note that if you just want to get the output of a command, the backtick method 
on Kernel may be a better fit.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/appveyor.yml new/appveyor.yml
--- old/appveyor.yml    2019-09-20 15:31:04.000000000 +0200
+++ new/appveyor.yml    2020-06-18 08:32:02.000000000 +0200
@@ -4,12 +4,6 @@
   matrix:
     - CHILDPROCESS_POSIX_SPAWN: true
       CHILDPROCESS_UNSET: should-be-unset
-      RUBY_VERSION: 23-x64
-    - CHILDPROCESS_POSIX_SPAWN: false
-      CHILDPROCESS_UNSET: should-be-unset
-      RUBY_VERSION: 23-x64
-    - CHILDPROCESS_POSIX_SPAWN: true
-      CHILDPROCESS_UNSET: should-be-unset
       RUBY_VERSION: 24-x64
     - CHILDPROCESS_POSIX_SPAWN: false
       CHILDPROCESS_UNSET: should-be-unset
Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/childprocess.gemspec new/childprocess.gemspec
--- old/childprocess.gemspec    2019-09-20 15:31:04.000000000 +0200
+++ new/childprocess.gemspec    2020-06-18 08:32:02.000000000 +0200
@@ -18,7 +18,7 @@
   s.test_files    = `git ls-files -- spec/*`.split("\n")
   s.require_paths = ["lib"]
 
-  s.required_ruby_version = '>= 2.3.0'
+  s.required_ruby_version = '>= 2.4.0'
 
   s.add_development_dependency "rspec", "~> 3.0"
   s.add_development_dependency "yard", "~> 0.0"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/childprocess/version.rb 
new/lib/childprocess/version.rb
--- old/lib/childprocess/version.rb     2019-09-20 15:31:04.000000000 +0200
+++ new/lib/childprocess/version.rb     2020-06-18 08:32:02.000000000 +0200
@@ -1,3 +1,3 @@
 module ChildProcess
-  VERSION = '3.0.0'
+  VERSION = '4.0.0'
 end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/childprocess/windows/process.rb 
new/lib/childprocess/windows/process.rb
--- old/lib/childprocess/windows/process.rb     2019-09-20 15:31:04.000000000 
+0200
+++ new/lib/childprocess/windows/process.rb     2020-06-18 08:32:02.000000000 
+0200
@@ -71,7 +71,7 @@
         @handle = Handle.open @pid
 
         if leader?
-          @job = Job.new
+          @job = Job.new(detach?, true)
           @job << @handle
         end
 
@@ -93,7 +93,7 @@
 
 
       class Job
-        def initialize
+        def initialize(detach, leader)
           @pointer = Lib.create_job_object(nil, nil)
 
           if @pointer.nil? || @pointer.null?
@@ -101,7 +101,8 @@
           end
 
           basic = JobObjectBasicLimitInformation.new
-          basic[:LimitFlags] = JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE | 
JOB_OBJECT_LIMIT_BREAKAWAY_OK
+          basic[:LimitFlags] |= JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE if !detach
+          basic[:LimitFlags] |= JOB_OBJECT_LIMIT_BREAKAWAY_OK if leader
 
           extended = JobObjectExtendedLimitInformation.new
           extended[:BasicLimitInformation] = basic
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata        2019-09-20 15:31:04.000000000 +0200
+++ new/metadata        2020-06-18 08:32:02.000000000 +0200
@@ -1,7 +1,7 @@
 --- !ruby/object:Gem::Specification
 name: childprocess
 version: !ruby/object:Gem::Version
-  version: 3.0.0
+  version: 4.0.0
 platform: ruby
 authors:
 - Jari Bakken
@@ -10,7 +10,7 @@
 autorequire: 
 bindir: bin
 cert_chain: []
-date: 2019-09-20 00:00:00.000000000 Z
+date: 2020-06-18 00:00:00.000000000 Z
 dependencies:
 - !ruby/object:Gem::Dependency
   name: rspec
@@ -123,14 +123,14 @@
   requirements:
   - - ">="
     - !ruby/object:Gem::Version
-      version: 2.3.0
+      version: 2.4.0
 required_rubygems_version: !ruby/object:Gem::Requirement
   requirements:
   - - ">="
     - !ruby/object:Gem::Version
       version: '0'
 requirements: []
-rubygems_version: 3.0.3
+rubygems_version: 3.1.1
 signing_key: 
 specification_version: 4
 summary: A simple and reliable solution for controlling external programs 
running

++++++ gem2rpm.yml ++++++
--- /var/tmp/diff_new_pack.FM61mD/_old  2020-09-12 00:13:25.417266447 +0200
+++ /var/tmp/diff_new_pack.FM61mD/_new  2020-09-12 00:13:25.417266447 +0200
@@ -33,9 +33,9 @@
 #   export USE_VENDORED_LIBEV="no"
 #   %endif
 # ## used by gem2rpm
-# :post_install: |-
-#   # delete custom files here or do other fancy stuff
-#   install -D -m 0644 %{S:1} %{buildroot}%{_bindir}/gem2rpm-opensuse
+:post_install: |-
+  # delete custom files here or do other fancy stuff
+  find %{buildroot}/%{_libdir}/ruby/gems/ \( -name '.document' -o -name 
'.travis.yml' -o -name '.gitignore' -o -name '.rspec' \) | xargs rm
 # ## used by gem2rpm
 # :testsuite_command: |-
 #   (pushd %{buildroot}%{gem_base}/gems/%{mod_full_name} && rake test)


Reply via email to