curb 0.7.12 → 0.7.13
Sign up to get free protection for your applications and to get access to all the features.
- data/README +16 -3
- data/ext/curb.h +2 -2
- data/ext/curb_easy.c +6 -6
- data/tests/tc_curl_easy.rb +2 -2
- metadata +26 -40
data/README
CHANGED
@@ -45,14 +45,19 @@ documentation with:
|
|
45
45
|
|
46
46
|
$ rake doc
|
47
47
|
|
48
|
-
##
|
48
|
+
## Usage & examples
|
49
|
+
|
50
|
+
Curb provides two classes:
|
51
|
+
|
52
|
+
+ Curl::Easy - simple API, for day-to-day tasks.
|
53
|
+
+ Curl::Multi - more advanced API, for operating on multiple URLs simultaneously.
|
49
54
|
|
50
55
|
### Simple fetch via HTTP:
|
51
56
|
|
52
57
|
c = Curl::Easy.perform("http://www.google.co.uk")
|
53
58
|
puts c.body_str
|
54
59
|
|
55
|
-
|
60
|
+
Same thing, more manual:
|
56
61
|
|
57
62
|
c = Curl::Easy.new("http://www.google.co.uk")
|
58
63
|
c.perform
|
@@ -65,7 +70,7 @@ documentation with:
|
|
65
70
|
curl.verbose = true
|
66
71
|
end
|
67
72
|
|
68
|
-
|
73
|
+
Same thing, more manual:
|
69
74
|
|
70
75
|
c = Curl::Easy.new("http://www.google.co.uk") do |curl|
|
71
76
|
curl.headers["User-Agent"] = "myapp-0.0"
|
@@ -74,6 +79,14 @@ documentation with:
|
|
74
79
|
|
75
80
|
c.perform
|
76
81
|
|
82
|
+
### HTTP basic authentication:
|
83
|
+
|
84
|
+
c = Curl::Easy.new("http://github.com/")
|
85
|
+
c.http_auth_types = :basic
|
86
|
+
c.username = 'foo'
|
87
|
+
c.password = 'bar'
|
88
|
+
c.perform
|
89
|
+
|
77
90
|
### Supplying custom handlers:
|
78
91
|
|
79
92
|
c = Curl::Easy.new("http://www.google.co.uk")
|
data/ext/curb.h
CHANGED
@@ -20,12 +20,12 @@
|
|
20
20
|
#include "curb_macros.h"
|
21
21
|
|
22
22
|
// These should be managed from the Rake 'release' task.
|
23
|
-
#define CURB_VERSION "0.7.
|
23
|
+
#define CURB_VERSION "0.7.13"
|
24
24
|
#define CURB_VER_NUM 712
|
25
25
|
#define CURB_VER_MAJ 0
|
26
26
|
#define CURB_VER_MIN 7
|
27
27
|
#define CURB_VER_MIC 1
|
28
|
-
#define CURB_VER_PATCH
|
28
|
+
#define CURB_VER_PATCH 3
|
29
29
|
|
30
30
|
|
31
31
|
// Maybe not yet defined in Ruby
|
data/ext/curb_easy.c
CHANGED
@@ -1907,16 +1907,16 @@ VALUE ruby_curl_easy_setup( ruby_curl_easy *rbce ) {
|
|
1907
1907
|
curl_easy_setopt(curl, CURLOPT_USERPWD, NULL);
|
1908
1908
|
}
|
1909
1909
|
|
1910
|
-
if (
|
1911
|
-
curl_easy_setopt(curl, CURLOPT_PROXY, rb_easy_get_str("proxy_url"));
|
1912
|
-
} else {
|
1910
|
+
if (rb_easy_nil("proxy_url")) {
|
1913
1911
|
curl_easy_setopt(curl, CURLOPT_PROXY, NULL);
|
1912
|
+
} else {
|
1913
|
+
curl_easy_setopt(curl, CURLOPT_PROXY, rb_easy_get_str("proxy_url"));
|
1914
1914
|
}
|
1915
1915
|
|
1916
|
-
if (
|
1917
|
-
curl_easy_setopt(curl, CURLOPT_PROXYUSERPWD, rb_easy_get_str("proxy_pwd"));
|
1918
|
-
} else {
|
1916
|
+
if (rb_easy_nil("proxypwd")) {
|
1919
1917
|
curl_easy_setopt(curl, CURLOPT_PROXYUSERPWD, NULL);
|
1918
|
+
} else {
|
1919
|
+
curl_easy_setopt(curl, CURLOPT_PROXYUSERPWD, rb_easy_get_str("proxypwd"));
|
1920
1920
|
}
|
1921
1921
|
|
1922
1922
|
// body/header procs
|
data/tests/tc_curl_easy.rb
CHANGED
@@ -224,7 +224,7 @@ class TestCurbCurlEasy < Test::Unit::TestCase
|
|
224
224
|
|
225
225
|
assert_equal $TEST_URL, c.url
|
226
226
|
assert_equal "http://some.proxy", c.proxy_url
|
227
|
-
|
227
|
+
|
228
228
|
c.proxy_url = nil
|
229
229
|
assert_equal $TEST_URL, c.url
|
230
230
|
assert_nil c.proxy_url
|
@@ -566,7 +566,7 @@ class TestCurbCurlEasy < Test::Unit::TestCase
|
|
566
566
|
def test_post_remote
|
567
567
|
curl = Curl::Easy.new(TestServlet.url)
|
568
568
|
curl.http_post([Curl::PostField.content('document_id', 5)])
|
569
|
-
assert_equal "POST\
|
569
|
+
assert_equal "POST\ndocument_id=5", curl.unescape(curl.body_str)
|
570
570
|
end
|
571
571
|
|
572
572
|
def test_post_remote_is_easy_handle
|
metadata
CHANGED
@@ -1,35 +1,29 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: curb
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
prerelease:
|
6
|
-
segments:
|
7
|
-
- 0
|
8
|
-
- 7
|
9
|
-
- 12
|
10
|
-
version: 0.7.12
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.7.13
|
5
|
+
prerelease:
|
11
6
|
platform: ruby
|
12
|
-
authors:
|
7
|
+
authors:
|
13
8
|
- Ross Bamford
|
14
9
|
- Todd A. Fisher
|
15
10
|
autorequire:
|
16
11
|
bindir: bin
|
17
12
|
cert_chain: []
|
18
|
-
|
19
|
-
date: 2011-02-23 00:00:00 -05:00
|
13
|
+
date: 2011-03-17 00:00:00.000000000 -04:00
|
20
14
|
default_executable:
|
21
15
|
dependencies: []
|
22
|
-
|
23
|
-
|
16
|
+
description: Curb (probably CUrl-RuBy or something) provides Ruby-language bindings
|
17
|
+
for the libcurl(3), a fully-featured client-side URL transfer library. cURL and
|
18
|
+
libcurl live at http://curl.haxx.se/
|
24
19
|
email: todd.fisher@gmail.com
|
25
20
|
executables: []
|
26
|
-
|
27
|
-
extensions:
|
21
|
+
extensions:
|
28
22
|
- ext/extconf.rb
|
29
|
-
extra_rdoc_files:
|
23
|
+
extra_rdoc_files:
|
30
24
|
- LICENSE
|
31
25
|
- README
|
32
|
-
files:
|
26
|
+
files:
|
33
27
|
- LICENSE
|
34
28
|
- README
|
35
29
|
- Rakefile
|
@@ -72,40 +66,32 @@ files:
|
|
72
66
|
has_rdoc: true
|
73
67
|
homepage: http://curb.rubyforge.org/
|
74
68
|
licenses: []
|
75
|
-
|
76
69
|
post_install_message:
|
77
|
-
rdoc_options:
|
70
|
+
rdoc_options:
|
78
71
|
- --main
|
79
72
|
- README
|
80
|
-
require_paths:
|
73
|
+
require_paths:
|
81
74
|
- lib
|
82
75
|
- ext
|
83
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
76
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
84
77
|
none: false
|
85
|
-
requirements:
|
86
|
-
- -
|
87
|
-
- !ruby/object:Gem::Version
|
88
|
-
|
89
|
-
|
90
|
-
- 0
|
91
|
-
version: "0"
|
92
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
78
|
+
requirements:
|
79
|
+
- - ! '>='
|
80
|
+
- !ruby/object:Gem::Version
|
81
|
+
version: '0'
|
82
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
93
83
|
none: false
|
94
|
-
requirements:
|
95
|
-
- -
|
96
|
-
- !ruby/object:Gem::Version
|
97
|
-
|
98
|
-
segments:
|
99
|
-
- 0
|
100
|
-
version: "0"
|
84
|
+
requirements:
|
85
|
+
- - ! '>='
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: '0'
|
101
88
|
requirements: []
|
102
|
-
|
103
89
|
rubyforge_project: curb
|
104
|
-
rubygems_version: 1.
|
90
|
+
rubygems_version: 1.6.2
|
105
91
|
signing_key:
|
106
92
|
specification_version: 3
|
107
93
|
summary: Ruby libcurl bindings
|
108
|
-
test_files:
|
94
|
+
test_files:
|
109
95
|
- tests/alltests.rb
|
110
96
|
- tests/bug_curb_easy_blocks_ruby_threads.rb
|
111
97
|
- tests/bug_curb_easy_post_with_string_no_content_length_header.rb
|