anemone 0.7.1 → 0.7.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,9 @@
1
+ == 0.7.2 / 2012-05-30
2
+
3
+ * Bug fixes
4
+
5
+ * Fix bug causing anchor links to have '#' converted to '%23'
6
+
1
7
  == 0.7.1 / 2012-01-20
2
8
 
3
9
  * Minor enhancements
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.7.1
1
+ 0.7.2
@@ -9,7 +9,7 @@ require 'anemone/storage/base'
9
9
 
10
10
  module Anemone
11
11
 
12
- VERSION = '0.7.1';
12
+ VERSION = '0.7.2';
13
13
 
14
14
  #
15
15
  # Convenience method to start a crawl
@@ -62,7 +62,7 @@ module Anemone
62
62
  doc.search("//a[@href]").each do |a|
63
63
  u = a['href']
64
64
  next if u.nil? or u.empty?
65
- abs = to_absolute(URI(URI.escape(u))) rescue next
65
+ abs = to_absolute(u) rescue next
66
66
  @links << abs if in_domain?(abs)
67
67
  end
68
68
  @links.uniq!
@@ -126,6 +126,14 @@ module Anemone
126
126
  end
127
127
  end
128
128
 
129
+ describe "#links" do
130
+ it "should not convert anchors to %23" do
131
+ page = @http.fetch_page(FakePage.new('', :body => '<a href="#top">Top</a>').url)
132
+ page.links.should have(1).link
133
+ page.links.first.to_s.should == SPEC_DOMAIN
134
+ end
135
+ end
136
+
129
137
  it "should detect, store and expose the base url for the page head" do
130
138
  base = "#{SPEC_DOMAIN}path/to/base_url/"
131
139
  page = @http.fetch_page(FakePage.new('body_test', {:base => base}).url)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: anemone
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.1
4
+ version: 0.7.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-01-20 00:00:00.000000000Z
12
+ date: 2012-05-30 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: nokogiri
16
- requirement: &23166540 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,15 @@ dependencies:
21
21
  version: 1.3.0
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *23166540
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: 1.3.0
25
30
  - !ruby/object:Gem::Dependency
26
31
  name: robotex
27
- requirement: &23166060 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
28
33
  none: false
29
34
  requirements:
30
35
  - - ! '>='
@@ -32,10 +37,15 @@ dependencies:
32
37
  version: 1.0.0
33
38
  type: :runtime
34
39
  prerelease: false
35
- version_requirements: *23166060
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: 1.0.0
36
46
  - !ruby/object:Gem::Dependency
37
47
  name: rake
38
- requirement: &23165600 !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
39
49
  none: false
40
50
  requirements:
41
51
  - - ! '>='
@@ -43,10 +53,15 @@ dependencies:
43
53
  version: 0.9.2
44
54
  type: :development
45
55
  prerelease: false
46
- version_requirements: *23165600
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: 0.9.2
47
62
  - !ruby/object:Gem::Dependency
48
63
  name: rdoc
49
- requirement: &23165140 !ruby/object:Gem::Requirement
64
+ requirement: !ruby/object:Gem::Requirement
50
65
  none: false
51
66
  requirements:
52
67
  - - ! '>='
@@ -54,10 +69,15 @@ dependencies:
54
69
  version: '3.12'
55
70
  type: :development
56
71
  prerelease: false
57
- version_requirements: *23165140
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '3.12'
58
78
  - !ruby/object:Gem::Dependency
59
79
  name: rspec
60
- requirement: &23164680 !ruby/object:Gem::Requirement
80
+ requirement: !ruby/object:Gem::Requirement
61
81
  none: false
62
82
  requirements:
63
83
  - - ! '>='
@@ -65,10 +85,15 @@ dependencies:
65
85
  version: 2.8.0
66
86
  type: :development
67
87
  prerelease: false
68
- version_requirements: *23164680
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: 2.8.0
69
94
  - !ruby/object:Gem::Dependency
70
95
  name: fakeweb
71
- requirement: &18439940 !ruby/object:Gem::Requirement
96
+ requirement: !ruby/object:Gem::Requirement
72
97
  none: false
73
98
  requirements:
74
99
  - - ! '>='
@@ -76,10 +101,15 @@ dependencies:
76
101
  version: 1.3.0
77
102
  type: :development
78
103
  prerelease: false
79
- version_requirements: *18439940
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: 1.3.0
80
110
  - !ruby/object:Gem::Dependency
81
111
  name: redis
82
- requirement: &21684560 !ruby/object:Gem::Requirement
112
+ requirement: !ruby/object:Gem::Requirement
83
113
  none: false
84
114
  requirements:
85
115
  - - ! '>='
@@ -87,10 +117,15 @@ dependencies:
87
117
  version: 2.2.0
88
118
  type: :development
89
119
  prerelease: false
90
- version_requirements: *21684560
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ! '>='
124
+ - !ruby/object:Gem::Version
125
+ version: 2.2.0
91
126
  - !ruby/object:Gem::Dependency
92
127
  name: mongo
93
- requirement: &21856420 !ruby/object:Gem::Requirement
128
+ requirement: !ruby/object:Gem::Requirement
94
129
  none: false
95
130
  requirements:
96
131
  - - ! '>='
@@ -98,10 +133,15 @@ dependencies:
98
133
  version: 1.3.1
99
134
  type: :development
100
135
  prerelease: false
101
- version_requirements: *21856420
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ! '>='
140
+ - !ruby/object:Gem::Version
141
+ version: 1.3.1
102
142
  - !ruby/object:Gem::Dependency
103
143
  name: bson_ext
104
- requirement: &21924200 !ruby/object:Gem::Requirement
144
+ requirement: !ruby/object:Gem::Requirement
105
145
  none: false
106
146
  requirements:
107
147
  - - ! '>='
@@ -109,10 +149,15 @@ dependencies:
109
149
  version: 1.3.1
110
150
  type: :development
111
151
  prerelease: false
112
- version_requirements: *21924200
152
+ version_requirements: !ruby/object:Gem::Requirement
153
+ none: false
154
+ requirements:
155
+ - - ! '>='
156
+ - !ruby/object:Gem::Version
157
+ version: 1.3.1
113
158
  - !ruby/object:Gem::Dependency
114
159
  name: tokyocabinet
115
- requirement: &22177700 !ruby/object:Gem::Requirement
160
+ requirement: !ruby/object:Gem::Requirement
116
161
  none: false
117
162
  requirements:
118
163
  - - ! '>='
@@ -120,10 +165,15 @@ dependencies:
120
165
  version: '1.29'
121
166
  type: :development
122
167
  prerelease: false
123
- version_requirements: *22177700
168
+ version_requirements: !ruby/object:Gem::Requirement
169
+ none: false
170
+ requirements:
171
+ - - ! '>='
172
+ - !ruby/object:Gem::Version
173
+ version: '1.29'
124
174
  - !ruby/object:Gem::Dependency
125
175
  name: kyotocabinet-ruby
126
- requirement: &22411440 !ruby/object:Gem::Requirement
176
+ requirement: !ruby/object:Gem::Requirement
127
177
  none: false
128
178
  requirements:
129
179
  - - ! '>='
@@ -131,10 +181,15 @@ dependencies:
131
181
  version: 1.27.1
132
182
  type: :development
133
183
  prerelease: false
134
- version_requirements: *22411440
184
+ version_requirements: !ruby/object:Gem::Requirement
185
+ none: false
186
+ requirements:
187
+ - - ! '>='
188
+ - !ruby/object:Gem::Version
189
+ version: 1.27.1
135
190
  - !ruby/object:Gem::Dependency
136
191
  name: sqlite3
137
- requirement: &22845660 !ruby/object:Gem::Requirement
192
+ requirement: !ruby/object:Gem::Requirement
138
193
  none: false
139
194
  requirements:
140
195
  - - ! '>='
@@ -142,7 +197,12 @@ dependencies:
142
197
  version: 1.3.4
143
198
  type: :development
144
199
  prerelease: false
145
- version_requirements: *22845660
200
+ version_requirements: !ruby/object:Gem::Requirement
201
+ none: false
202
+ requirements:
203
+ - - ! '>='
204
+ - !ruby/object:Gem::Version
205
+ version: 1.3.4
146
206
  description:
147
207
  email:
148
208
  executables:
@@ -156,39 +216,40 @@ files:
156
216
  - CHANGELOG.rdoc
157
217
  - README.rdoc
158
218
  - Rakefile
159
- - lib/anemone.rb
160
- - lib/anemone/cookie_store.rb
161
219
  - lib/anemone/page.rb
220
+ - lib/anemone/cli.rb
162
221
  - lib/anemone/storage.rb
222
+ - lib/anemone/tentacle.rb
163
223
  - lib/anemone/page_store.rb
164
- - lib/anemone/storage/tokyo_cabinet.rb
165
224
  - lib/anemone/storage/pstore.rb
166
225
  - lib/anemone/storage/kyoto_cabinet.rb
226
+ - lib/anemone/storage/redis.rb
227
+ - lib/anemone/storage/sqlite3.rb
228
+ - lib/anemone/storage/tokyo_cabinet.rb
229
+ - lib/anemone/storage/base.rb
167
230
  - lib/anemone/storage/mongodb.rb
168
231
  - lib/anemone/storage/exceptions.rb
169
- - lib/anemone/storage/base.rb
170
- - lib/anemone/storage/sqlite3.rb
171
- - lib/anemone/storage/redis.rb
172
- - lib/anemone/exceptions.rb
173
- - lib/anemone/cli.rb
174
- - lib/anemone/tentacle.rb
175
- - lib/anemone/http.rb
176
- - lib/anemone/core.rb
177
- - lib/anemone/cli/serialize.rb
232
+ - lib/anemone/cookie_store.rb
233
+ - lib/anemone/cli/count.rb
178
234
  - lib/anemone/cli/pagedepth.rb
179
- - lib/anemone/cli/cron.rb
180
235
  - lib/anemone/cli/url_list.rb
181
- - lib/anemone/cli/count.rb
182
- - spec/core_spec.rb
183
- - spec/anemone_spec.rb
236
+ - lib/anemone/cli/serialize.rb
237
+ - lib/anemone/cli/cron.rb
238
+ - lib/anemone/http.rb
239
+ - lib/anemone/core.rb
240
+ - lib/anemone/exceptions.rb
241
+ - lib/anemone.rb
242
+ - spec/fakeweb_helper.rb
184
243
  - spec/spec_helper.rb
185
244
  - spec/page_store_spec.rb
186
- - spec/page_spec.rb
187
245
  - spec/cookie_store_spec.rb
188
- - spec/fakeweb_helper.rb
189
- - spec/http_spec.rb
246
+ - spec/core_spec.rb
247
+ - spec/page_spec.rb
190
248
  - spec/storage_spec.rb
191
- - bin/anemone
249
+ - spec/http_spec.rb
250
+ - spec/anemone_spec.rb
251
+ - !binary |-
252
+ YmluL2FuZW1vbmU=
192
253
  homepage: http://anemone.rubyforge.org
193
254
  licenses: []
194
255
  post_install_message:
@@ -213,17 +274,17 @@ required_rubygems_version: !ruby/object:Gem::Requirement
213
274
  version: '0'
214
275
  requirements: []
215
276
  rubyforge_project: anemone
216
- rubygems_version: 1.8.15
277
+ rubygems_version: 1.8.21
217
278
  signing_key:
218
279
  specification_version: 3
219
280
  summary: Anemone web-spider framework
220
281
  test_files:
221
- - spec/core_spec.rb
222
- - spec/anemone_spec.rb
282
+ - spec/fakeweb_helper.rb
223
283
  - spec/spec_helper.rb
224
284
  - spec/page_store_spec.rb
225
- - spec/page_spec.rb
226
285
  - spec/cookie_store_spec.rb
227
- - spec/fakeweb_helper.rb
228
- - spec/http_spec.rb
286
+ - spec/core_spec.rb
287
+ - spec/page_spec.rb
229
288
  - spec/storage_spec.rb
289
+ - spec/http_spec.rb
290
+ - spec/anemone_spec.rb