Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package rubygem-excon for openSUSE:Factory checked in at 2022-12-14 14:10:49 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/rubygem-excon (Old) and /work/SRC/openSUSE:Factory/.rubygem-excon.new.1835 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rubygem-excon" Wed Dec 14 14:10:49 2022 rev:40 rq:1042634 version:0.94.0 Changes: -------- --- /work/SRC/openSUSE:Factory/rubygem-excon/rubygem-excon.changes 2022-10-31 10:44:25.836772385 +0100 +++ /work/SRC/openSUSE:Factory/.rubygem-excon.new.1835/rubygem-excon.changes 2022-12-14 14:10:59.539491415 +0100 @@ -1,0 +2,6 @@ +Wed Dec 7 11:19:31 UTC 2022 - Stephan Kulow <[email protected]> + +updated to version 0.94.0 + no changelog found + +------------------------------------------------------------------- Old: ---- excon-0.93.1.gem New: ---- excon-0.94.0.gem ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ rubygem-excon.spec ++++++ --- /var/tmp/diff_new_pack.4sV4oG/_old 2022-12-14 14:11:00.063494110 +0100 +++ /var/tmp/diff_new_pack.4sV4oG/_new 2022-12-14 14:11:00.067494131 +0100 @@ -24,7 +24,7 @@ # Name: rubygem-excon -Version: 0.93.1 +Version: 0.94.0 Release: 0 %define mod_name excon %define mod_full_name %{mod_name}-%{version} ++++++ excon-0.93.1.gem -> excon-0.94.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/excon/socket.rb new/lib/excon/socket.rb --- old/lib/excon/socket.rb 2022-10-20 15:22:51.000000000 +0200 +++ new/lib/excon/socket.rb 2022-11-08 15:55:49.000000000 +0100 @@ -40,12 +40,14 @@ def_delegators(:@socket, :close) + def initialize(data = {}) @data = data @nonblock = data[:nonblock] @port ||= @data[:port] || 80 @read_buffer = String.new @eof = false + @backend_eof = false connect end @@ -61,9 +63,22 @@ def readline if @nonblock && RUBY_VERSION.to_f > 1.8_7 - buffer = String.new - buffer << (read_nonblock(1) || raise(EOFError)) while buffer[-1] != "\n" - buffer + result = String.new + block = @read_buffer + @read_buffer = String.new + + loop do + idx = block.index("\n") + if idx.nil? + result << block + else + add_to_read_buffer(block.slice!(idx+1, block.length)) + result << block + break + end + block = read_nonblock(@data[:chunk_size]) || raise(EOFError) + end + result else # nonblock/legacy begin Timeout.timeout(@data[:read_timeout]) do @@ -172,20 +187,21 @@ end end + def add_to_read_buffer(str) + @read_buffer << str + @eof = false + end + def read_nonblock(max_length) begin - if max_length - until @read_buffer.length >= max_length - @read_buffer << @socket.read_nonblock(max_length - @read_buffer.length) - end - else - loop do - @read_buffer << @socket.read_nonblock(@data[:chunk_size]) - end + while !@backend_eof && (!max_length || @read_buffer.length < max_length) + @read_buffer << @socket.read_nonblock(@data[:chunk_size]) end rescue OpenSSL::SSL::SSLError => error if error.message == 'read would block' - select_with_timeout(@socket, :read) && retry + if @read_buffer.empty? + select_with_timeout(@socket, :read) && retry + end else raise(error) end @@ -195,10 +211,10 @@ select_with_timeout(@socket, :read) && retry end rescue EOFError - @eof = true + @backend_eof = true end - if max_length + ret = if max_length if @read_buffer.empty? nil # EOF met at beginning else @@ -208,6 +224,8 @@ # read until EOFError, so return everything @read_buffer.slice!(0, @read_buffer.length) end + @eof = @backend_eof && @read_buffer.empty? + ret end def read_block(max_length) @@ -219,9 +237,7 @@ raise(error) end rescue *READ_RETRY_EXCEPTION_CLASSES - if @read_buffer.empty? - select_with_timeout(@socket, :read) && retry - end + select_with_timeout(@socket, :read) && retry rescue EOFError @eof = true end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/excon/version.rb new/lib/excon/version.rb --- old/lib/excon/version.rb 2022-10-20 15:22:51.000000000 +0200 +++ new/lib/excon/version.rb 2022-11-08 15:55:49.000000000 +0100 @@ -1,4 +1,4 @@ # frozen_string_literal: true module Excon - VERSION = '0.93.1' + VERSION = '0.94.0' end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/metadata new/metadata --- old/metadata 2022-10-20 15:22:51.000000000 +0200 +++ new/metadata 2022-11-08 15:55:49.000000000 +0100 @@ -1,7 +1,7 @@ --- !ruby/object:Gem::Specification name: excon version: !ruby/object:Gem::Version - version: 0.93.1 + version: 0.94.0 platform: ruby authors: - dpiddy (Dan Peterson) @@ -10,7 +10,7 @@ autorequire: bindir: bin cert_chain: [] -date: 2022-10-20 00:00:00.000000000 Z +date: 2022-11-08 00:00:00.000000000 Z dependencies: - !ruby/object:Gem::Dependency name: rspec
