nori 2.0.0 → 2.0.3
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.md +17 -2
- data/lib/nori/version.rb +1 -1
- data/lib/nori/xml_utility_node.rb +0 -2
- data/spec/nori/api_spec.rb +2 -2
- data/spec/nori/nori_spec.rb +6 -4
- metadata +5 -5
data/CHANGELOG.md
CHANGED
@@ -1,4 +1,19 @@
|
|
1
|
-
|
1
|
+
|
2
|
+
# 2.0.3 (2013-01-10)
|
3
|
+
|
4
|
+
* Fix for remote code execution bug. For more in-depth information, read about the
|
5
|
+
recent [Rails hotfix](https://groups.google.com/forum/?fromgroups=#!topic/rubyonrails-security/61bkgvnSGTQ).
|
6
|
+
Please make sure to upgrade now!
|
7
|
+
|
8
|
+
# 2.0.2 (YANKED)
|
9
|
+
|
10
|
+
* Yanked because of a problem with XML that starts with an instruction tag.
|
11
|
+
|
12
|
+
# 2.0.1 (YANKED)
|
13
|
+
|
14
|
+
* Yanked because of a problem with XML that starts with an instruction tag.
|
15
|
+
|
16
|
+
# 2.0.0 (2012-12-12)
|
2
17
|
|
3
18
|
Please make sure to read the updated README for how to use the new version.
|
4
19
|
|
@@ -100,7 +115,7 @@ Please make sure to read the updated README for how to use the new version.
|
|
100
115
|
|
101
116
|
## 0.2.1 (2011-05-15)
|
102
117
|
|
103
|
-
* Fix: Changed XML attributes converted to Hash keys to be prefixed with an @-sign.
|
118
|
+
* Fix: Changed XML attributes converted to Hash keys to be prefixed with an @-sign.
|
104
119
|
This avoids problems with attributes and child nodes having the same name.
|
105
120
|
|
106
121
|
<multiRef id="id1">
|
data/lib/nori/version.rb
CHANGED
@@ -77,9 +77,7 @@ class Nori
|
|
77
77
|
self.typecasts["decimal"] = lambda { |v| v.nil? ? nil : BigDecimal(v.to_s) }
|
78
78
|
self.typecasts["double"] = lambda { |v| v.nil? ? nil : v.to_f }
|
79
79
|
self.typecasts["float"] = lambda { |v| v.nil? ? nil : v.to_f }
|
80
|
-
self.typecasts["symbol"] = lambda { |v| v.nil? ? nil : v.to_sym }
|
81
80
|
self.typecasts["string"] = lambda { |v| v.to_s }
|
82
|
-
self.typecasts["yaml"] = lambda { |v| v.nil? ? nil : YAML.load(v) }
|
83
81
|
self.typecasts["base64Binary"] = lambda { |v| v.unpack('m').first }
|
84
82
|
|
85
83
|
self.available_typecasts = self.typecasts.keys
|
data/spec/nori/api_spec.rb
CHANGED
@@ -72,7 +72,7 @@ describe Nori do
|
|
72
72
|
# parsers are loaded lazily by default
|
73
73
|
require "nori/parser/nokogiri"
|
74
74
|
|
75
|
-
Nori::Parser::Nokogiri.should_receive(:parse).
|
75
|
+
Nori::Parser::Nokogiri.should_receive(:parse).and_return({})
|
76
76
|
nori.parse("<any>thing</any>")
|
77
77
|
end
|
78
78
|
|
@@ -96,7 +96,7 @@ describe Nori do
|
|
96
96
|
# parsers are loaded lazily by default
|
97
97
|
require "nori/parser/rexml"
|
98
98
|
|
99
|
-
Nori::Parser::REXML.should_receive(:parse).
|
99
|
+
Nori::Parser::REXML.should_receive(:parse).and_return({})
|
100
100
|
nori(:parser => :rexml).parse("<any>thing</any>")
|
101
101
|
end
|
102
102
|
end
|
data/spec/nori/nori_spec.rb
CHANGED
@@ -348,7 +348,8 @@ describe Nori do
|
|
348
348
|
'approved' => nil,
|
349
349
|
'written_on' => nil,
|
350
350
|
'viewed_at' => nil,
|
351
|
-
'
|
351
|
+
# don't execute arbitary YAML code
|
352
|
+
'content' => { "@type" => "yaml" },
|
352
353
|
'parent_id' => nil,
|
353
354
|
'nil_true' => nil,
|
354
355
|
'namespaced' => nil
|
@@ -367,7 +368,7 @@ describe Nori do
|
|
367
368
|
<replies-close-in type="integer">2592000000</replies-close-in>
|
368
369
|
<written-on type="date">2003-07-16</written-on>
|
369
370
|
<viewed-at type="datetime">2003-07-16T09:28:00+0000</viewed-at>
|
370
|
-
<content type="yaml">--- \n1: should be an integer\n:message: Have a nice day\narray: \n- should-have-dashes: true\n should_have_underscores: true
|
371
|
+
<content type="yaml">--- \n1: should be an integer\n:message: Have a nice day\narray: \n- should-have-dashes: true\n should_have_underscores: true</content>
|
371
372
|
<author-email-address>david@loudthinking.com</author-email-address>
|
372
373
|
<parent-id></parent-id>
|
373
374
|
<ad-revenue type="decimal">1.5</ad-revenue>
|
@@ -388,12 +389,13 @@ describe Nori do
|
|
388
389
|
# Changed this line where the key is :message. The yaml specifies this as a symbol, and who am I to change what you specify
|
389
390
|
# The line in ActiveSupport is
|
390
391
|
# 'content' => { 'message' => "Have a nice day", 1 => "should be an integer", "array" => [{ "should-have-dashes" => true, "should_have_underscores" => true }] },
|
391
|
-
'content' =>
|
392
|
+
'content' => "--- \n1: should be an integer\n:message: Have a nice day\narray: \n- should-have-dashes: true\n should_have_underscores: true",
|
392
393
|
'author_email_address' => "david@loudthinking.com",
|
393
394
|
'parent_id' => nil,
|
394
395
|
'ad_revenue' => BigDecimal("1.50"),
|
395
396
|
'optimum_viewing_angle' => 135.0,
|
396
|
-
'
|
397
|
+
# don't create symbols from arbitary remote code
|
398
|
+
'resident' => "yes"
|
397
399
|
}
|
398
400
|
|
399
401
|
parse(topic_xml)["topic"].each do |k,v|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: nori
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date:
|
14
|
+
date: 2013-01-10 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: rake
|
@@ -109,7 +109,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
109
109
|
version: '0'
|
110
110
|
segments:
|
111
111
|
- 0
|
112
|
-
hash:
|
112
|
+
hash: 3728758796378487229
|
113
113
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
114
114
|
none: false
|
115
115
|
requirements:
|
@@ -118,10 +118,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
118
118
|
version: '0'
|
119
119
|
segments:
|
120
120
|
- 0
|
121
|
-
hash:
|
121
|
+
hash: 3728758796378487229
|
122
122
|
requirements: []
|
123
123
|
rubyforge_project: nori
|
124
|
-
rubygems_version: 1.8.
|
124
|
+
rubygems_version: 1.8.24
|
125
125
|
signing_key:
|
126
126
|
specification_version: 3
|
127
127
|
summary: XML to Hash translator
|