Hello community,

here is the log from the commit of package rubygem-rack for openSUSE:Factory 
checked in at 2019-04-08 10:39:18
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-rack (Old)
 and      /work/SRC/openSUSE:Factory/.rubygem-rack.new.3908 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rubygem-rack"

Mon Apr  8 10:39:18 2019 rev:15 rq:692038 version:2.0.7

Changes:
--------
--- /work/SRC/openSUSE:Factory/rubygem-rack/rubygem-rack.changes        
2018-11-13 17:43:34.220127192 +0100
+++ /work/SRC/openSUSE:Factory/.rubygem-rack.new.3908/rubygem-rack.changes      
2019-04-08 10:40:32.523298437 +0200
@@ -1,0 +2,7 @@
+Sat Apr  6 17:52:23 UTC 2019 - manuel <[email protected]>
+
+- updated to version 2.0.7
+
+  no changelog found
+
+-------------------------------------------------------------------

Old:
----
  rack-2.0.6.gem

New:
----
  rack-2.0.7.gem

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

Other differences:
------------------
++++++ rubygem-rack.spec ++++++
--- /var/tmp/diff_new_pack.bKJ3pU/_old  2019-04-08 10:40:33.331298633 +0200
+++ /var/tmp/diff_new_pack.bKJ3pU/_new  2019-04-08 10:40:33.343298636 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package rubygem-rack
 #
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -24,7 +24,7 @@
 #
 
 Name:           rubygem-rack
-Version:        2.0.6
+Version:        2.0.7
 Release:        0
 %define mod_name rack
 %define mod_full_name %{mod_name}-%{version}

++++++ rack-2.0.6.gem -> rack-2.0.7.gem ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/SPEC new/SPEC
--- old/SPEC    2018-11-05 20:29:36.000000000 +0100
+++ new/SPEC    2019-04-02 18:54:06.000000000 +0200
@@ -60,8 +60,8 @@
                            the presence or absence of the
                            appropriate HTTP header in the
                            request. See
-                           <a 
href="https://tools.ietf.org/html/rfc3875#section-4.1.18";>
-                           RFC3875 section 4.1.18</a> for
+                           {https://tools.ietf.org/html/rfc3875#section-4.1.18
+                           RFC3875 section 4.1.18} for
                            specific behavior.
 In addition to this, the Rack environment must include these
 Rack-specific variables:
@@ -98,13 +98,12 @@
 Additional environment specifications have approved to
 standardized middleware APIs.  None of these are required to
 be implemented by the server.
-<tt>rack.session</tt>:: A hash like interface for storing
-                        request session data.
+<tt>rack.session</tt>:: A hash like interface for storing request session data.
                         The store must implement:
-                        store(key, value)         (aliased as []=);
-                        fetch(key, default = nil) (aliased as []);
-                        delete(key);
-                        clear;
+                         store(key, value)         (aliased as []=);
+                         fetch(key, default = nil) (aliased as []);
+                         delete(key);
+                         clear;
 <tt>rack.logger</tt>:: A common object interface for logging messages.
                        The object must implement:
                         info(message, &block)
Binary files old/checksums.yaml.gz and new/checksums.yaml.gz differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rack/multipart/parser.rb 
new/lib/rack/multipart/parser.rb
--- old/lib/rack/multipart/parser.rb    2018-11-05 20:29:36.000000000 +0100
+++ new/lib/rack/multipart/parser.rb    2019-04-02 18:54:06.000000000 +0200
@@ -39,8 +39,6 @@
           str
         end
 
-        def eof?; @content_length == @cursor; end
-
         def rewind
           @io.rewind
         end
@@ -65,11 +63,11 @@
         io = BoundedIO.new(io, content_length) if content_length
 
         parser = new(boundary, tmpfile, bufsize, qp)
-        parser.on_read io.read(bufsize), io.eof?
+        parser.on_read io.read(bufsize)
 
         loop do
           break if parser.state == :DONE
-          parser.on_read io.read(bufsize), io.eof?
+          parser.on_read io.read(bufsize)
         end
 
         io.rewind
@@ -181,8 +179,8 @@
         @collector = Collector.new tempfile
       end
 
-      def on_read content, eof
-        handle_empty_content!(content, eof)
+      def on_read content
+        handle_empty_content!(content)
         @buf << content
         run_parser
       end
@@ -358,10 +356,9 @@
       end
 
 
-      def handle_empty_content!(content, eof)
+      def handle_empty_content!(content)
         if content.nil? || content.empty?
-          raise EOFError if eof
-          return true
+          raise EOFError
         end
       end
     end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rack/request.rb new/lib/rack/request.rb
--- old/lib/rack/request.rb     2018-11-05 20:29:36.000000000 +0100
+++ new/lib/rack/request.rb     2019-04-02 18:54:06.000000000 +0200
@@ -261,7 +261,7 @@
 
         forwarded_ips = split_ip_addresses(get_header('HTTP_X_FORWARDED_FOR'))
 
-        return reject_trusted_ip_addresses(forwarded_ips).last || 
get_header("REMOTE_ADDR")
+        return reject_trusted_ip_addresses(forwarded_ips).last || 
forwarded_ips.first || get_header("REMOTE_ADDR")
       end
 
       # The media type (type/subtype) portion of the CONTENT_TYPE header
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rack.rb new/lib/rack.rb
--- old/lib/rack.rb     2018-11-05 20:29:36.000000000 +0100
+++ new/lib/rack.rb     2019-04-02 18:54:06.000000000 +0200
@@ -18,7 +18,7 @@
     VERSION.join(".")
   end
 
-  RELEASE = "2.0.6"
+  RELEASE = "2.0.7"
 
   # Return the Rack release as a dotted string.
   def self.release
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata        2018-11-05 20:29:36.000000000 +0100
+++ new/metadata        2019-04-02 18:54:06.000000000 +0200
@@ -1,14 +1,14 @@
 --- !ruby/object:Gem::Specification
 name: rack
 version: !ruby/object:Gem::Version
-  version: 2.0.6
+  version: 2.0.7
 platform: ruby
 authors:
 - Leah Neukirchen
 autorequire: 
 bindir: bin
 cert_chain: []
-date: 2018-11-05 00:00:00.000000000 Z
+date: 2019-04-02 00:00:00.000000000 Z
 dependencies:
 - !ruby/object:Gem::Dependency
   name: minitest
@@ -275,59 +275,59 @@
       version: '0'
 requirements: []
 rubyforge_project: 
-rubygems_version: 2.7.6
+rubygems_version: 2.6.13
 signing_key: 
 specification_version: 4
 summary: a modular Ruby webserver interface
 test_files:
-- test/spec_multipart.rb
+- test/spec_auth_basic.rb
+- test/spec_auth_digest.rb
+- test/spec_body_proxy.rb
+- test/spec_builder.rb
+- test/spec_cascade.rb
+- test/spec_cgi.rb
+- test/spec_chunked.rb
+- test/spec_common_logger.rb
+- test/spec_conditional_get.rb
+- test/spec_config.rb
+- test/spec_content_length.rb
+- test/spec_content_type.rb
 - test/spec_deflater.rb
-- test/spec_static.rb
-- test/spec_session_cookie.rb
-- test/spec_session_pool.rb
+- test/spec_directory.rb
 - test/spec_etag.rb
-- test/spec_version.rb
+- test/spec_events.rb
+- test/spec_fastcgi.rb
+- test/spec_file.rb
 - test/spec_handler.rb
-- test/spec_thin.rb
-- test/spec_session_abstract_id.rb
-- test/spec_mime.rb
-- test/spec_recursive.rb
-- test/spec_null_logger.rb
+- test/spec_head.rb
+- test/spec_lint.rb
+- test/spec_lobster.rb
+- test/spec_lock.rb
+- test/spec_logger.rb
 - test/spec_media_type.rb
-- test/spec_cgi.rb
 - test/spec_method_override.rb
-- test/spec_content_type.rb
-- test/spec_session_abstract_session_hash.rb
+- test/spec_mime.rb
+- test/spec_mock.rb
+- test/spec_multipart.rb
+- test/spec_null_logger.rb
+- test/spec_recursive.rb
 - test/spec_request.rb
-- test/spec_chunked.rb
-- test/spec_show_exceptions.rb
+- test/spec_response.rb
+- test/spec_rewindable_input.rb
 - test/spec_runtime.rb
-- test/spec_fastcgi.rb
-- test/spec_common_logger.rb
-- test/spec_builder.rb
-- test/spec_config.rb
-- test/spec_utils.rb
 - test/spec_sendfile.rb
-- test/spec_lobster.rb
-- test/spec_lint.rb
-- test/spec_conditional_get.rb
-- test/spec_tempfile_reaper.rb
-- test/spec_mock.rb
 - test/spec_server.rb
-- test/spec_directory.rb
-- test/spec_webrick.rb
-- test/spec_response.rb
-- test/spec_file.rb
+- test/spec_session_abstract_id.rb
+- test/spec_session_abstract_session_hash.rb
+- test/spec_session_cookie.rb
+- test/spec_session_memcache.rb
+- test/spec_session_pool.rb
+- test/spec_show_exceptions.rb
 - test/spec_show_status.rb
-- test/spec_body_proxy.rb
-- test/spec_logger.rb
-- test/spec_auth_digest.rb
+- test/spec_static.rb
+- test/spec_tempfile_reaper.rb
+- test/spec_thin.rb
 - test/spec_urlmap.rb
-- test/spec_events.rb
-- test/spec_cascade.rb
-- test/spec_auth_basic.rb
-- test/spec_head.rb
-- test/spec_lock.rb
-- test/spec_rewindable_input.rb
-- test/spec_session_memcache.rb
-- test/spec_content_length.rb
+- test/spec_utils.rb
+- test/spec_version.rb
+- test/spec_webrick.rb
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/test/spec_request.rb new/test/spec_request.rb
--- old/test/spec_request.rb    2018-11-05 20:29:36.000000000 +0100
+++ new/test/spec_request.rb    2019-04-02 18:54:06.000000000 +0200
@@ -1286,7 +1286,16 @@
     res.body.must_equal '2.2.2.3'
   end
 
-  it "regard local addresses as proxies" do
+  it "preserves ip for trusted proxy chain" do
+    mock = Rack::MockRequest.new(Rack::Lint.new(ip_app))
+    res = mock.get '/',
+      'HTTP_X_FORWARDED_FOR' => '192.168.0.11, 192.168.0.7',
+      'HTTP_CLIENT_IP' => '127.0.0.1'
+    res.body.must_equal '192.168.0.11'
+
+  end
+
+  it "regards local addresses as proxies" do
     req = make_request(Rack::MockRequest.env_for("/"))
     req.trusted_proxy?('127.0.0.1').must_equal 0
     req.trusted_proxy?('10.0.0.1').must_equal 0


Reply via email to