Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock
Please unblock package ruby-httpclient
The latest upload fixes RC bug #674308, which affects testing as well as
unstable. Follows attached a debdiff between the version currently in testing
and the one that was just uploaded, and here is the corresponding changelog
entry:
ruby-httpclient (2.2.4-2) unstable; urgency=low
* debian/patches/0001-Remove-Hash-element-order-dependency.patch: cherry
picked from upstream to remove dependency of the tests upon the ordering
of hash keys (Closes: #674308)
-- Antonio Terceiro <terceiro@debian.org> Sun, 08 Jul 2012 18:20:13 -0300
unblock ruby-httpclient/2.2.4-2
-- System Information:
Debian Release: wheezy/sid
APT prefers unstable
APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Kernel: Linux 3.2.0-3-amd64 (SMP w/4 CPU cores)
Locale: LANG=pt_BR.utf8, LC_CTYPE=pt_BR.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
--
Antonio Terceiro <terceiro@debian.org>
diff -Nru ruby-httpclient-2.2.4/debian/changelog ruby-httpclient-2.2.4/debian/changelog
--- ruby-httpclient-2.2.4/debian/changelog 2012-03-15 11:06:05.000000000 -0300
+++ ruby-httpclient-2.2.4/debian/changelog 2012-07-08 18:21:01.000000000 -0300
@@ -1,3 +1,11 @@
+ruby-httpclient (2.2.4-2) unstable; urgency=low
+
+ * debian/patches/0001-Remove-Hash-element-order-dependency.patch: cherry
+ picked from upstream to remove dependency of the tests upon the ordering
+ of hash keys (Closes: #674308)
+
+ -- Antonio Terceiro <terceiro@debian.org> Sun, 08 Jul 2012 18:20:13 -0300
+
ruby-httpclient (2.2.4-1) unstable; urgency=low
* New upstream version
diff -Nru ruby-httpclient-2.2.4/debian/patches/0001-Remove-Hash-element-order-dependency.patch ruby-httpclient-2.2.4/debian/patches/0001-Remove-Hash-element-order-dependency.patch
--- ruby-httpclient-2.2.4/debian/patches/0001-Remove-Hash-element-order-dependency.patch 1969-12-31 21:00:00.000000000 -0300
+++ ruby-httpclient-2.2.4/debian/patches/0001-Remove-Hash-element-order-dependency.patch 2012-07-08 18:17:18.000000000 -0300
@@ -0,0 +1,285 @@
+From 5f4a3433dbd8a9d3e7737ec4adb8095d61f1c961 Mon Sep 17 00:00:00 2001
+From: Hiroshi Nakamura <nahi@ruby-lang.org>
+Date: Wed, 14 Dec 2011 15:41:46 +0900
+Subject: [PATCH] Remove Hash element order dependency
+
+For 1.8.7 and Rubinius.
+---
+ test/helper.rb | 4 +++
+ test/test_http-access2.rb | 35 ++++++++++++---------
+ test/test_httpclient.rb | 76 +++++++++++++++++++++++++++------------------
+ 3 files changed, 70 insertions(+), 45 deletions(-)
+
+diff --git a/test/helper.rb b/test/helper.rb
+index adf7fc6..f01048e 100644
+--- a/test/helper.rb
++++ b/test/helper.rb
+@@ -96,4 +96,8 @@ module Helper
+ end
+ t
+ end
++
++ def params(str)
++ HTTP::Message.parse(str).inject({}) { |r, (k, v)| r[k] = v.first; r }
++ end
+ end
+diff --git a/test/test_http-access2.rb b/test/test_http-access2.rb
+index 7629faa..65b9f06 100644
+--- a/test/test_http-access2.rb
++++ b/test/test_http-access2.rb
+@@ -227,44 +227,51 @@ class TestClient < Test::Unit::TestCase
+
+ def test_head
+ assert_equal("head", @client.head(serverurl + 'servlet').header["x-head"][0])
+- res = @client.head(serverurl + 'servlet', {1=>2, 3=>4})
+- assert_equal('1=2&3=4', res.header["x-query"][0])
++ param = {'1'=>'2', '3'=>'4'}
++ res = @client.head(serverurl + 'servlet', param)
++ assert_equal(param, params(res.header["x-query"][0]))
+ end
+
+ def test_get
+ assert_equal("get", @client.get(serverurl + 'servlet').content)
+- res = @client.get(serverurl + 'servlet', {1=>2, 3=>4})
+- assert_equal('1=2&3=4', res.header["x-query"][0])
++ param = {'1'=>'2', '3'=>'4'}
++ res = @client.get(serverurl + 'servlet', param)
++ assert_equal(param, params(res.header["x-query"][0]))
+ end
+
+ def test_post
+ assert_equal("post", @client.post(serverurl + 'servlet').content)
+- res = @client.get(serverurl + 'servlet', {1=>2, 3=>4})
+- assert_equal('1=2&3=4', res.header["x-query"][0])
++ param = {'1'=>'2', '3'=>'4'}
++ res = @client.get(serverurl + 'servlet', param)
++ assert_equal(param, params(res.header["x-query"][0]))
+ end
+
+ def test_put
+ assert_equal("put", @client.put(serverurl + 'servlet').content)
+- res = @client.get(serverurl + 'servlet', {1=>2, 3=>4})
+- assert_equal('1=2&3=4', res.header["x-query"][0])
++ param = {'1'=>'2', '3'=>'4'}
++ res = @client.get(serverurl + 'servlet', param)
++ assert_equal(param, params(res.header["x-query"][0]))
+ end
+
+ def test_delete
+ assert_equal("delete", @client.delete(serverurl + 'servlet').content)
+- res = @client.get(serverurl + 'servlet', {1=>2, 3=>4})
+- assert_equal('1=2&3=4', res.header["x-query"][0])
++ param = {'1'=>'2', '3'=>'4'}
++ res = @client.get(serverurl + 'servlet', param)
++ assert_equal(param, params(res.header["x-query"][0]))
+ end
+
+ def test_options
+ assert_equal("options", @client.options(serverurl + 'servlet').content)
+- res = @client.get(serverurl + 'servlet', {1=>2, 3=>4})
+- assert_equal('1=2&3=4', res.header["x-query"][0])
++ param = {'1'=>'2', '3'=>'4'}
++ res = @client.get(serverurl + 'servlet', param)
++ assert_equal(param, params(res.header["x-query"][0]))
+ end
+
+ def test_trace
+ assert_equal("trace", @client.trace(serverurl + 'servlet').content)
+- res = @client.get(serverurl + 'servlet', {1=>2, 3=>4})
+- assert_equal('1=2&3=4', res.header["x-query"][0])
++ param = {'1'=>'2', '3'=>'4'}
++ res = @client.get(serverurl + 'servlet', param)
++ assert_equal(param, params(res.header["x-query"][0]))
+ end
+
+ def test_get_query
+diff --git a/test/test_httpclient.rb b/test/test_httpclient.rb
+index 1dbb52b..b7dccd3 100644
+--- a/test/test_httpclient.rb
++++ b/test/test_httpclient.rb
+@@ -538,26 +538,29 @@ EOS
+
+ def test_head
+ assert_equal("head", @client.head(serverurl + 'servlet').header["x-head"][0])
+- res = @client.head(serverurl + 'servlet', {1=>2, 3=>4})
+- assert_equal('1=2&3=4', res.header["x-query"][0])
++ param = {'1'=>'2', '3'=>'4'}
++ res = @client.head(serverurl + 'servlet', param)
++ assert_equal(param, params(res.header["x-query"][0]))
+ end
+
+ def test_head_async
+- conn = @client.head_async(serverurl + 'servlet', {1=>2, 3=>4})
++ param = {'1'=>'2', '3'=>'4'}
++ conn = @client.head_async(serverurl + 'servlet', param)
+ Thread.pass while !conn.finished?
+ res = conn.pop
+- assert_equal('1=2&3=4', res.header["x-query"][0])
++ assert_equal(param, params(res.header["x-query"][0]))
+ end
+
+ def test_get
+ assert_equal("get", @client.get(serverurl + 'servlet').content)
+- res = @client.get(serverurl + 'servlet', {1=>2, 3=>4})
+- assert_equal('1=2&3=4', res.header["x-query"][0])
++ param = {'1'=>'2', '3'=>'4'}
++ res = @client.get(serverurl + 'servlet', param)
++ assert_equal(param, params(res.header["x-query"][0]))
+ assert_nil(res.contenttype)
+ #
+ url = serverurl.to_s + 'servlet?5=6&7=8'
+- res = @client.get(url, {1=>2, 3=>4})
+- assert_equal('1=2&3=4&5=6&7=8', res.header["x-query"][0])
++ res = @client.get(url, param)
++ assert_equal(param.merge("5"=>"6", "7"=>"8"), params(res.header["x-query"][0]))
+ assert_nil(res.contenttype)
+ end
+
+@@ -568,10 +571,11 @@ EOS
+ end
+
+ def test_get_async
+- conn = @client.get_async(serverurl + 'servlet', {1=>2, 3=>4})
++ param = {'1'=>'2', '3'=>'4'}
++ conn = @client.get_async(serverurl + 'servlet', param)
+ Thread.pass while !conn.finished?
+ res = conn.pop
+- assert_equal('1=2&3=4', res.header["x-query"][0])
++ assert_equal(param, params(res.header["x-query"][0]))
+ end
+
+ def test_get_async_for_largebody
+@@ -603,8 +607,9 @@ EOS
+
+ def test_post
+ assert_equal("post", @client.post(serverurl + 'servlet').content[0, 4])
+- res = @client.post(serverurl + 'servlet', {1=>2, 3=>4})
+- assert_equal('1=2&3=4', res.header["x-query"][0])
++ param = {'1'=>'2', '3'=>'4'}
++ res = @client.post(serverurl + 'servlet', param)
++ assert_equal(param, params(res.header["x-query"][0]))
+ end
+
+ def test_post_follow_redirect
+@@ -614,20 +619,21 @@ EOS
+ end
+
+ def test_post_with_content_type
++ param = [['1', '2'], ['3', '4']]
+ ext = {'content-type' => 'application/x-www-form-urlencoded', 'hello' => 'world'}
+ assert_equal("post", @client.post(serverurl + 'servlet').content[0, 4], ext)
+- res = @client.post(serverurl + 'servlet', {1=>2, 3=>4}, ext)
+- assert_equal('1=2&3=4', res.header["x-query"][0])
++ res = @client.post(serverurl + 'servlet', param, ext)
++ assert_equal(Hash[param], params(res.header["x-query"][0]))
+ #
+ ext = [['content-type', 'multipart/form-data'], ['hello', 'world']]
+ assert_equal("post", @client.post(serverurl + 'servlet').content[0, 4], ext)
+- res = @client.post(serverurl + 'servlet', {1=>2, 3=>4}, ext)
++ res = @client.post(serverurl + 'servlet', param, ext)
+ assert_match(/Content-Disposition: form-data; name="1"/, res.content)
+ assert_match(/Content-Disposition: form-data; name="3"/, res.content)
+ #
+ ext = {'content-type' => 'multipart/form-data; boundary=hello'}
+ assert_equal("post", @client.post(serverurl + 'servlet').content[0, 4], ext)
+- res = @client.post(serverurl + 'servlet', {1=>2, 3=>4}, ext)
++ res = @client.post(serverurl + 'servlet', param, ext)
+ assert_match(/Content-Disposition: form-data; name="1"/, res.content)
+ assert_match(/Content-Disposition: form-data; name="3"/, res.content)
+ assert_equal("post,--hello\r\nContent-Disposition: form-data; name=\"1\"\r\n\r\n2\r\n--hello\r\nContent-Disposition: form-data; name=\"3\"\r\n\r\n4\r\n--hello--\r\n\r\n", res.content)
+@@ -677,10 +683,11 @@ EOS
+ end
+
+ def test_post_async
+- conn = @client.post_async(serverurl + 'servlet', {1=>2, 3=>4})
++ param = {'1'=>'2', '3'=>'4'}
++ conn = @client.post_async(serverurl + 'servlet', param)
+ Thread.pass while !conn.finished?
+ res = conn.pop
+- assert_equal('1=2&3=4', res.header["x-query"][0])
++ assert_equal(param, params(res.header["x-query"][0]))
+ end
+
+ def test_post_with_block
+@@ -693,7 +700,8 @@ EOS
+ assert_nil(res.content)
+ #
+ called = false
+- res = @client.post(serverurl + 'servlet', {1=>2, 3=>4}) { |str|
++ param = [['1', '2'], ['3', '4']]
++ res = @client.post(serverurl + 'servlet', param) { |str|
+ assert_equal('post,1=2&3=4', str)
+ called = true
+ }
+@@ -735,8 +743,9 @@ EOS
+
+ def test_put
+ assert_equal("put", @client.put(serverurl + 'servlet').content)
+- res = @client.put(serverurl + 'servlet', {1=>2, 3=>4})
+- assert_equal('1=2&3=4', res.header["x-query"][0])
++ param = {'1'=>'2', '3'=>'4'}
++ res = @client.put(serverurl + 'servlet', param)
++ assert_equal(param, params(res.header["x-query"][0]))
+ end
+
+ def test_put_bytesize
+@@ -746,10 +755,11 @@ EOS
+ end
+
+ def test_put_async
+- conn = @client.put_async(serverurl + 'servlet', {1=>2, 3=>4})
++ param = {'1'=>'2', '3'=>'4'}
++ conn = @client.put_async(serverurl + 'servlet', param)
+ Thread.pass while !conn.finished?
+ res = conn.pop
+- assert_equal('1=2&3=4', res.header["x-query"][0])
++ assert_equal(param, params(res.header["x-query"][0]))
+ end
+
+ def test_delete
+@@ -787,30 +797,34 @@ EOS
+
+ def test_proppatch
+ assert_equal("proppatch", @client.proppatch(serverurl + 'servlet').content)
+- res = @client.proppatch(serverurl + 'servlet', {1=>2, 3=>4})
++ param = {'1'=>'2', '3'=>'4'}
++ res = @client.proppatch(serverurl + 'servlet', param)
+ assert_equal('proppatch', res.content)
+- assert_equal('1=2&3=4', res.header["x-query"][0])
++ assert_equal(param, params(res.header["x-query"][0]))
+ end
+
+ def test_proppatch_async
+- conn = @client.proppatch_async(serverurl + 'servlet', {1=>2, 3=>4})
++ param = {'1'=>'2', '3'=>'4'}
++ conn = @client.proppatch_async(serverurl + 'servlet', param)
+ Thread.pass while !conn.finished?
+ res = conn.pop
+ assert_equal('proppatch', res.content.read)
+- assert_equal('1=2&3=4', res.header["x-query"][0])
++ assert_equal(param, params(res.header["x-query"][0]))
+ end
+
+ def test_trace
+ assert_equal("trace", @client.trace(serverurl + 'servlet').content)
+- res = @client.trace(serverurl + 'servlet', {1=>2, 3=>4})
+- assert_equal('1=2&3=4', res.header["x-query"][0])
++ param = {'1'=>'2', '3'=>'4'}
++ res = @client.trace(serverurl + 'servlet', param)
++ assert_equal(param, params(res.header["x-query"][0]))
+ end
+
+ def test_trace_async
+- conn = @client.trace_async(serverurl + 'servlet', {1=>2, 3=>4})
++ param = {'1'=>'2', '3'=>'4'}
++ conn = @client.trace_async(serverurl + 'servlet', param)
+ Thread.pass while !conn.finished?
+ res = conn.pop
+- assert_equal('1=2&3=4', res.header["x-query"][0])
++ assert_equal(param, params(res.header["x-query"][0]))
+ end
+
+ def test_chunked
+--
+1.7.10
+
diff -Nru ruby-httpclient-2.2.4/debian/patches/series ruby-httpclient-2.2.4/debian/patches/series
--- ruby-httpclient-2.2.4/debian/patches/series 1969-12-31 21:00:00.000000000 -0300
+++ ruby-httpclient-2.2.4/debian/patches/series 2012-07-08 18:19:01.000000000 -0300
@@ -0,0 +1 @@
+0001-Remove-Hash-element-order-dependency.patch
Attachment:
signature.asc
Description: Digital signature