storable 0.5.3 → 0.5.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGES.txt +3 -1
- data/lib/storable.rb +11 -8
- data/storable.gemspec +1 -14
- metadata +5 -14
data/CHANGES.txt
CHANGED
@@ -1,11 +1,13 @@
|
|
1
1
|
STORABLE, CHANGES
|
2
2
|
|
3
|
+
#### 0.5.4 (2009-05-25) #############################
|
4
|
+
|
5
|
+
* CHANGE: Removed RedCloth dependency from gemspec.
|
3
6
|
|
4
7
|
#### 0.5.3 (2009-05-12) #############################
|
5
8
|
|
6
9
|
* FIXED: Corrected error handling when json not available (ignore and continue)
|
7
10
|
|
8
|
-
|
9
11
|
#### 0.5.2 (2009-05-12) #############################
|
10
12
|
|
11
13
|
* CHANGE: Put OrderedHash into Storable namespace and imported merge fix from Caesars
|
data/lib/storable.rb
CHANGED
@@ -22,7 +22,7 @@ require 'fileutils'
|
|
22
22
|
class Storable
|
23
23
|
require 'storable/orderedhash' if USE_ORDERED_HASH
|
24
24
|
unless defined?(SUPPORTED_FORMATS) # We can assume all are defined
|
25
|
-
VERSION = 0.5
|
25
|
+
VERSION = "0.5.4"
|
26
26
|
NICE_TIME_FORMAT = "%Y-%m-%d@%H:%M:%S".freeze
|
27
27
|
SUPPORTED_FORMATS = [:tsv, :csv, :yaml, :json, :s, :string].freeze
|
28
28
|
end
|
@@ -125,13 +125,17 @@ class Storable
|
|
125
125
|
def self.from_hash(from={})
|
126
126
|
return nil if !from || from.empty?
|
127
127
|
me = self.new
|
128
|
-
|
128
|
+
me.from_hash(from)
|
129
|
+
end
|
130
|
+
|
131
|
+
def from_hash(from={})
|
129
132
|
fnames = field_names
|
130
133
|
fnames.each_with_index do |key,index|
|
131
134
|
|
132
135
|
stored_value = from[key] || from[key.to_s] # support for symbol keys and string keys
|
133
136
|
|
134
|
-
# TODO: Correct this horrible implementation
|
137
|
+
# TODO: Correct this horrible implementation
|
138
|
+
# (sorry, me. It's just one of those days.) -- circa 2009-09-15
|
135
139
|
|
136
140
|
if field_types[index] == Array
|
137
141
|
((value ||= []) << stored_value).flatten
|
@@ -162,12 +166,11 @@ class Storable
|
|
162
166
|
end
|
163
167
|
end
|
164
168
|
|
165
|
-
|
169
|
+
self.send("#{key}=", value) if self.respond_to?("#{key}=")
|
166
170
|
end
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
me
|
171
|
+
|
172
|
+
self.postprocess
|
173
|
+
self
|
171
174
|
end
|
172
175
|
# Return the object data as a hash
|
173
176
|
# +with_titles+ is ignored.
|
data/storable.gemspec
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
@spec = Gem::Specification.new do |s|
|
2
2
|
s.name = "storable"
|
3
3
|
s.rubyforge_project = "storable"
|
4
|
-
s.version = "0.5.
|
4
|
+
s.version = "0.5.4"
|
5
5
|
s.summary = "Storable: Marshal Ruby classes into and out of multiple formats (yaml, json, csv, tsv)"
|
6
6
|
s.description = s.summary
|
7
7
|
s.author = "Delano Mandelbaum"
|
@@ -39,17 +39,4 @@
|
|
39
39
|
s.require_paths = %w[lib]
|
40
40
|
s.rubygems_version = '1.3.0'
|
41
41
|
|
42
|
-
if s.respond_to? :specification_version then
|
43
|
-
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
44
|
-
s.specification_version = 2
|
45
|
-
|
46
|
-
if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
|
47
|
-
s.add_runtime_dependency(%q<RedCloth>, [">= 4.0.4"])
|
48
|
-
else
|
49
|
-
s.add_dependency(%q<RedCloth>, [">= 4.0.4"])
|
50
|
-
end
|
51
|
-
else
|
52
|
-
s.add_dependency(%q<RedCloth>, [">= 4.0.4"])
|
53
|
-
end
|
54
|
-
|
55
42
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: storable
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Delano Mandelbaum
|
@@ -9,19 +9,10 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-
|
12
|
+
date: 2009-06-25 00:00:00 -04:00
|
13
13
|
default_executable:
|
14
|
-
dependencies:
|
15
|
-
|
16
|
-
name: RedCloth
|
17
|
-
type: :runtime
|
18
|
-
version_requirement:
|
19
|
-
version_requirements: !ruby/object:Gem::Requirement
|
20
|
-
requirements:
|
21
|
-
- - ">="
|
22
|
-
- !ruby/object:Gem::Version
|
23
|
-
version: 4.0.4
|
24
|
-
version:
|
14
|
+
dependencies: []
|
15
|
+
|
25
16
|
description: "Storable: Marshal Ruby classes into and out of multiple formats (yaml, json, csv, tsv)"
|
26
17
|
email: delano@solutious.com
|
27
18
|
executables: []
|
@@ -69,7 +60,7 @@ requirements: []
|
|
69
60
|
rubyforge_project: storable
|
70
61
|
rubygems_version: 1.3.2
|
71
62
|
signing_key:
|
72
|
-
specification_version:
|
63
|
+
specification_version: 3
|
73
64
|
summary: "Storable: Marshal Ruby classes into and out of multiple formats (yaml, json, csv, tsv)"
|
74
65
|
test_files: []
|
75
66
|
|