Hello community,

here is the log from the commit of package rubygem-rack-1_6 for 
openSUSE:Factory checked in at 2017-06-08 15:01:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rubygem-rack-1_6 (Old)
 and      /work/SRC/openSUSE:Factory/.rubygem-rack-1_6.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rubygem-rack-1_6"

Thu Jun  8 15:01:19 2017 rev:3 rq:497695 version:1.6.8

Changes:
--------
--- /work/SRC/openSUSE:Factory/rubygem-rack-1_6/rubygem-rack-1_6.changes        
2016-11-14 20:14:00.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.rubygem-rack-1_6.new/rubygem-rack-1_6.changes   
2017-06-08 15:01:20.293121418 +0200
@@ -1,0 +2,6 @@
+Tue May 23 10:12:19 UTC 2017 - co...@suse.com
+
+- updated to version 1.6.8
+ see installed HISTORY.md
+
+-------------------------------------------------------------------

Old:
----
  rack-1.6.5.gem

New:
----
  rack-1.6.8.gem

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

Other differences:
------------------
++++++ rubygem-rack-1_6.spec ++++++
--- /var/tmp/diff_new_pack.4DtGZs/_old  2017-06-08 15:01:20.849042961 +0200
+++ /var/tmp/diff_new_pack.4DtGZs/_new  2017-06-08 15:01:20.857041832 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package rubygem-rack-1_6
 #
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2017 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-1_6
-Version:        1.6.5
+Version:        1.6.8
 Release:        0
 %define mod_name rack
 %define mod_full_name %{mod_name}-%{version}

++++++ rack-1.6.5.gem -> rack-1.6.8.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/rack/mock.rb new/lib/rack/mock.rb
--- old/lib/rack/mock.rb        2016-11-10 22:54:16.000000000 +0100
+++ new/lib/rack/mock.rb        2017-05-16 23:28:07.000000000 +0200
@@ -91,13 +91,7 @@
 
       env = DEFAULT_ENV.dup
 
-      env[REQUEST_METHOD] = opts[:method] ? opts[:method].to_s.upcase : "GET"
-      env["SERVER_NAME"] = uri.host || "example.org"
-      env["SERVER_PORT"] = uri.port ? uri.port.to_s : "80"
-      env[QUERY_STRING] = uri.query.to_s
-      env[PATH_INFO] = (!uri.path || uri.path.empty?) ? "/" : uri.path
-      env["rack.url_scheme"] = uri.scheme || "http"
-      env["HTTPS"] = env["rack.url_scheme"] == "https" ? "on" : "off"
+      env_with_encoding(env, opts, uri)
 
       env[SCRIPT_NAME] = opts[:script_name] || ""
 
@@ -148,6 +142,28 @@
 
       env
     end
+
+    if "<3".respond_to? :b
+      def self.env_with_encoding(env, opts, uri)
+        env[REQUEST_METHOD] = (opts[:method] ? opts[:method].to_s.upcase : 
"GET").b
+        env["SERVER_NAME"] = (uri.host || "example.org").b
+        env["SERVER_PORT"] = (uri.port ? uri.port.to_s : "80").b
+        env[QUERY_STRING] = (uri.query.to_s).b
+        env[PATH_INFO] = ((!uri.path || uri.path.empty?) ? "/" : uri.path).b
+        env["rack.url_scheme"] = (uri.scheme || "http").b
+        env["HTTPS"] = (env["rack.url_scheme"] == "https" ? "on" : "off").b
+      end
+    else
+      def self.env_with_encoding(env, opts, uri)
+        env[REQUEST_METHOD] = opts[:method] ? opts[:method].to_s.upcase : "GET"
+        env["SERVER_NAME"] = uri.host || "example.org"
+        env["SERVER_PORT"] = uri.port ? uri.port.to_s : "80"
+        env[QUERY_STRING] = uri.query.to_s
+        env[PATH_INFO] = (!uri.path || uri.path.empty?) ? "/" : uri.path
+        env["rack.url_scheme"] = uri.scheme || "http"
+        env["HTTPS"] = env["rack.url_scheme"] == "https" ? "on" : "off"
+      end
+    end
   end
 
   # Rack::MockResponse provides useful helpers for testing your apps.
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    2016-11-10 22:54:16.000000000 +0100
+++ new/lib/rack/multipart/parser.rb    2017-05-16 23:28:07.000000000 +0200
@@ -6,7 +6,6 @@
 
     class Parser
       BUFSIZE = 16384
-
       DUMMY = Struct.new(:parse).new
 
       def self.create(env)
@@ -19,7 +18,7 @@
         content_length = content_length.to_i if content_length
 
         tempfile = env['rack.multipart.tempfile_factory'] ||
-          lambda { |filename, content_type| Tempfile.new(["RackMultipart", 
::File.extname(filename)]) }
+          lambda { |filename, content_type| Tempfile.new(["RackMultipart", 
::File.extname(filename.gsub("\0".freeze, '%00'.freeze))]) }
         bufsize = env['rack.multipart.buffer_size'] || BUFSIZE
 
         new($1, io, content_length, env, tempfile, bufsize)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rack/server.rb new/lib/rack/server.rb
--- old/lib/rack/server.rb      2016-11-10 22:54:16.000000000 +0100
+++ new/lib/rack/server.rb      2017-05-16 23:28:07.000000000 +0200
@@ -1,4 +1,5 @@
 require 'optparse'
+require 'fileutils'
 
 
 module Rack
@@ -352,7 +353,7 @@
 
       def write_pid
         ::File.open(options[:pid], ::File::CREAT | ::File::EXCL | 
::File::WRONLY ){ |f| f.write("#{Process.pid}") }
-        at_exit { ::File.delete(options[:pid]) if ::File.exist?(options[:pid]) 
}
+        at_exit { ::FileUtils.rm_f(options[:pid]) }
       rescue Errno::EEXIST
         check_pid!
         retry
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/lib/rack.rb new/lib/rack.rb
--- old/lib/rack.rb     2016-11-10 22:54:15.000000000 +0100
+++ new/lib/rack.rb     2017-05-16 23:28:07.000000000 +0200
@@ -20,7 +20,7 @@
 
   # Return the Rack release as a dotted string.
   def self.release
-    "1.6.5"
+    "1.6.8"
   end
   PATH_INFO      = 'PATH_INFO'.freeze
   REQUEST_METHOD = 'REQUEST_METHOD'.freeze
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/metadata new/metadata
--- old/metadata        2016-11-10 22:54:15.000000000 +0100
+++ new/metadata        2017-05-16 23:28:06.000000000 +0200
@@ -1,38 +1,38 @@
 --- !ruby/object:Gem::Specification
 name: rack
 version: !ruby/object:Gem::Version
-  version: 1.6.5
+  version: 1.6.8
 platform: ruby
 authors:
 - Christian Neukirchen
-autorequire: 
+autorequire:
 bindir: bin
 cert_chain: []
-date: 2016-11-10 00:00:00.000000000 Z
+date: 2017-05-16 00:00:00.000000000 Z
 dependencies:
 - !ruby/object:Gem::Dependency
-  name: bacon
   requirement: !ruby/object:Gem::Requirement
     requirements:
     - - ">="
       - !ruby/object:Gem::Version
         version: '0'
-  type: :development
+  name: bacon
   prerelease: false
+  type: :development
   version_requirements: !ruby/object:Gem::Requirement
     requirements:
     - - ">="
       - !ruby/object:Gem::Version
         version: '0'
 - !ruby/object:Gem::Dependency
-  name: rake
   requirement: !ruby/object:Gem::Requirement
     requirements:
     - - ">="
       - !ruby/object:Gem::Version
         version: '0'
-  type: :development
+  name: rake
   prerelease: false
+  type: :development
   version_requirements: !ruby/object:Gem::Requirement
     requirements:
     - - ">="
@@ -165,6 +165,7 @@
 - test/multipart/filename_and_no_name
 - test/multipart/filename_with_escaped_quotes
 - test/multipart/filename_with_escaped_quotes_and_modification_param
+- test/multipart/filename_with_null_byte
 - test/multipart/filename_with_percent_escaped_quotes
 - test/multipart/filename_with_unescaped_percentages
 - test/multipart/filename_with_unescaped_percentages2
@@ -239,7 +240,7 @@
 licenses:
 - MIT
 metadata: {}
-post_install_message: 
+post_install_message:
 rdoc_options: []
 require_paths:
 - lib
@@ -255,8 +256,8 @@
       version: '0'
 requirements: []
 rubyforge_project: rack
-rubygems_version: 2.5.1
-signing_key: 
+rubygems_version: 2.6.8
+signing_key:
 specification_version: 4
 summary: a modular Ruby webserver interface
 test_files:
@@ -309,4 +310,4 @@
 - test/spec_utils.rb
 - test/spec_version.rb
 - test/spec_webrick.rb
-has_rdoc: 
+has_rdoc:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rack.gemspec new/rack.gemspec
--- old/rack.gemspec    2016-11-10 22:54:16.000000000 +0100
+++ new/rack.gemspec    2017-05-16 23:28:07.000000000 +0200
@@ -1,6 +1,6 @@
 Gem::Specification.new do |s|
   s.name            = "rack"
-  s.version         = "1.6.5"
+  s.version         = "1.6.8"
   s.platform        = Gem::Platform::RUBY
   s.summary         = "a modular Ruby webserver interface"
   s.license         = "MIT"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/test/multipart/filename_with_null_byte 
new/test/multipart/filename_with_null_byte
--- old/test/multipart/filename_with_null_byte  1970-01-01 01:00:00.000000000 
+0100
+++ new/test/multipart/filename_with_null_byte  2017-05-16 23:28:07.000000000 
+0200
@@ -0,0 +1,7 @@
+--AaB03x
+Content-Type: image/jpeg
+Content-Disposition: attachment; name="files"; filename="flowers.exe%00.jpg"
+Content-Description: a complete map of the human genome
+
+contents
+--AaB03x--
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/test/spec_mock.rb new/test/spec_mock.rb
--- old/test/spec_mock.rb       2016-11-10 22:54:16.000000000 +0100
+++ new/test/spec_mock.rb       2017-05-16 23:28:07.000000000 +0200
@@ -211,6 +211,26 @@
     Rack::MockRequest.new(capp).get('/', :lint => true)
     called.should.equal true
   end
+
+  if "<3".respond_to? :b
+    should "defaults encoding to ASCII 8BIT" do
+      req = Rack::MockRequest.env_for("/foo")
+
+      keys = [
+        Rack::REQUEST_METHOD,
+        "SERVER_NAME",
+        "SERVER_PORT",
+        Rack::QUERY_STRING,
+        Rack::PATH_INFO,
+        "rack.url_scheme",
+        "HTTPS"
+      ]
+
+      keys.each do |k|
+        req[k].encoding.should.equal Encoding::ASCII_8BIT
+      end
+    end
+  end
 end
 
 describe Rack::MockResponse do
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/test/spec_multipart.rb new/test/spec_multipart.rb
--- old/test/spec_multipart.rb  2016-11-10 22:54:16.000000000 +0100
+++ new/test/spec_multipart.rb  2017-05-16 23:28:07.000000000 +0200
@@ -261,6 +261,16 @@
     params["files"].size.should.equal 252
   end
 
+  should "parse multipart form with a null byte in the filename" do
+    env = Rack::MockRequest.env_for '/', 
multipart_fixture(:filename_with_null_byte)
+    params = Rack::Multipart.parse_multipart(env)
+    if "<3".respond_to?(:encoding)
+      params["files"][:filename].should.equal "flowers.exe\u0000.jpg"
+    else
+      params["files"][:filename].should.equal "flowers.exe\000.jpg"
+    end
+  end
+
   should "parse multipart/mixed" do
     env = Rack::MockRequest.env_for("/", multipart_fixture(:mixed_files))
     params = Rack::Utils::Multipart.parse_multipart(env)


Reply via email to