active_record_serialize_json 0.1.1 → 0.1.2

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/.gitignore ADDED
@@ -0,0 +1,6 @@
1
+ .*.sw[pon]
2
+ .DS_Store
3
+ .rvmrc
4
+ Gemfile.lock
5
+ coverage
6
+ pkg
data/.travis.yml ADDED
@@ -0,0 +1,9 @@
1
+ rvm:
2
+ - 1.8.7
3
+ - 1.9.2
4
+ - 1.9.3
5
+ - ruby-head
6
+ - ree
7
+ - rbx
8
+ before_script:
9
+ - "mysql -e 'create database test;'"
data/Gemfile ADDED
@@ -0,0 +1,5 @@
1
+ # vim: set filetype=ruby et sw=2 ts=2:
2
+
3
+ source :rubygems
4
+
5
+ gemspec
data/README.rdoc ADDED
@@ -0,0 +1,21 @@
1
+ == Description
2
+
3
+ Allows serialization of ruby data structures into text columns before Rails
4
+ version 3.1.
5
+
6
+ == Installation
7
+
8
+ You can use rubygems to fetch the gem and install it for you:
9
+
10
+ # gem install active_record_serialize_json
11
+
12
+ You can also put this line into your Rails Gemfile file
13
+
14
+ gem 'active_record_serialize_json'
15
+
16
+ and install the gem via
17
+
18
+ $ bundle
19
+
20
+ == Usage
21
+
data/Rakefile CHANGED
@@ -1,86 +1,22 @@
1
- begin
2
- require 'rake/gempackagetask'
3
- rescue LoadError
1
+ # vim: set filetype=ruby et sw=2 ts=2:
2
+
3
+ require 'gem_hadar'
4
+
5
+ GemHadar do
6
+ name 'active_record_serialize_json'
7
+ path_name 'active_record/serialize_json'
8
+ path_module 'ActiveRecord::SerializeJSON'
9
+ module_type :class
10
+ author 'Florian Frank'
11
+ email 'flori@ping.de'
12
+ homepage "http://github.com/flori/#{name}"
13
+ summary 'Serialize an ActiveRecord::Base attribute via JSON'
14
+ description "#{summary} in Ruby on Rails"
15
+ test_dir 'test'
16
+ ignore '.*.sw[pon]', 'pkg', 'Gemfile.lock', '.rvmrc', 'coverage', '.DS_Store'
17
+ readme 'README.rdoc'
18
+
19
+ dependency 'json', '~>1.6.0'
20
+ dependency 'activerecord', '<3.1'
21
+ dependency 'mysql2', '~>0.2.0'
4
22
  end
5
- require 'rake/clean'
6
- require 'rbconfig'
7
- include Config
8
-
9
- PKG_NAME = 'active_record_serialize_json'
10
- PKG_VERSION = File.read('VERSION').chomp
11
- PKG_FILES = FileList['**/*'].exclude(/^(doc|CVS|pkg|coverage)/)
12
- PKG_SUMMARY = 'Serialize an ActiveRecord::Base attribute via JSON'
13
- PKG_RDOC_OPTIONS = [ '--main', 'README', '--title', PKG_SUMMARY ]
14
- CLEAN.include 'coverage', 'doc'
15
-
16
- desc "Testing library"
17
- task :test do
18
- ruby %{-Ilib test/serialize_json_test.rb}
19
- end
20
-
21
- desc "Testing library (with coverage)"
22
- task :coverage do
23
- sh %{rcov -Ilib test/serialize_json_test.rb}
24
- end
25
-
26
- desc "Installing library"
27
- task :install do
28
- ruby 'install.rb'
29
- end
30
-
31
- desc "Creating documentation"
32
- task :doc do
33
- sh 'rdoc', *(PKG_RDOC_OPTIONS + Dir['lib/**/*.rb'] + [ 'README' ])
34
- end
35
-
36
- if defined? Gem
37
- spec = Gem::Specification.new do |s|
38
- s.name = PKG_NAME
39
- s.version = PKG_VERSION
40
- s.summary = PKG_SUMMARY
41
- s.description = PKG_SUMMARY + ' in Ruby on Rails'
42
-
43
- s.files = PKG_FILES.to_a.sort
44
-
45
- s.require_path = 'lib'
46
-
47
- s.rdoc_options = PKG_RDOC_OPTIONS
48
- s.extra_rdoc_files << 'README'
49
- #s.test_files << 'test/serialize_json_test.rb'
50
-
51
- s.author = "Florian Frank"
52
- s.email = "flori@ping.de"
53
- s.homepage = "http://flori.github.com/#{PKG_NAME}"
54
- s.rubyforge_project = "#{PKG_NAME}"
55
- s.add_dependency 'json', '~>1.0'
56
- s.add_dependency 'activerecord'
57
- end
58
-
59
- Rake::GemPackageTask.new(spec) do |pkg|
60
- pkg.need_tar = true
61
- pkg.package_files += PKG_FILES
62
- end
63
- end
64
-
65
- desc m = "Writing version information for #{PKG_VERSION}"
66
- task :version do
67
- puts m
68
- File.open(File.join('lib', 'active_record', 'serialize_json', 'version.rb'), 'w') do |v|
69
- v.puts <<EOT
70
- module ActiveRecord
71
- module SerializeJSON
72
- # ActiveRecord::SerializeJSON version
73
- VERSION = '#{PKG_VERSION}'
74
- VERSION_ARRAY = VERSION.split(/\\./).map { |x| x.to_i } # :nodoc:
75
- VERSION_MAJOR = VERSION_ARRAY[0] # :nodoc:
76
- VERSION_MINOR = VERSION_ARRAY[1] # :nodoc:
77
- VERSION_BUILD = VERSION_ARRAY[2] # :nodoc:
78
- end
79
- end
80
- EOT
81
- end
82
- end
83
-
84
- task :default => [ :version, :test ]
85
-
86
- task :release => [ :clean, :version, :package ]
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.1
1
+ 0.1.2
@@ -0,0 +1,41 @@
1
+ # -*- encoding: utf-8 -*-
2
+
3
+ Gem::Specification.new do |s|
4
+ s.name = "active_record_serialize_json"
5
+ s.version = "0.1.2"
6
+
7
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
8
+ s.authors = ["Florian Frank"]
9
+ s.date = "2011-12-09"
10
+ s.description = "Serialize an ActiveRecord::Base attribute via JSON in Ruby on Rails"
11
+ s.email = "flori@ping.de"
12
+ s.extra_rdoc_files = ["README.rdoc", "lib/active_record/serialize_json/version.rb", "lib/active_record/serialize_json.rb", "lib/active_record_serialize_json.rb"]
13
+ s.files = [".gitignore", ".travis.yml", "CHANGES", "Gemfile", "README.rdoc", "Rakefile", "VERSION", "active_record_serialize_json.gemspec", "lib/active_record/serialize_json.rb", "lib/active_record/serialize_json/version.rb", "lib/active_record_serialize_json.rb", "test/serialize_json_test.rb"]
14
+ s.homepage = "http://github.com/flori/active_record_serialize_json"
15
+ s.rdoc_options = ["--title", "ActiveRecordSerializeJson - Serialize an ActiveRecord::Base attribute via JSON", "--main", "README.rdoc"]
16
+ s.require_paths = ["lib"]
17
+ s.rubygems_version = "1.8.10"
18
+ s.summary = "Serialize an ActiveRecord::Base attribute via JSON"
19
+ s.test_files = ["test/serialize_json_test.rb"]
20
+
21
+ if s.respond_to? :specification_version then
22
+ s.specification_version = 3
23
+
24
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
25
+ s.add_development_dependency(%q<gem_hadar>, ["~> 0.1.4"])
26
+ s.add_runtime_dependency(%q<json>, ["~> 1.6.0"])
27
+ s.add_runtime_dependency(%q<activerecord>, ["< 3.1"])
28
+ s.add_runtime_dependency(%q<mysql2>, ["~> 0.2.0"])
29
+ else
30
+ s.add_dependency(%q<gem_hadar>, ["~> 0.1.4"])
31
+ s.add_dependency(%q<json>, ["~> 1.6.0"])
32
+ s.add_dependency(%q<activerecord>, ["< 3.1"])
33
+ s.add_dependency(%q<mysql2>, ["~> 0.2.0"])
34
+ end
35
+ else
36
+ s.add_dependency(%q<gem_hadar>, ["~> 0.1.4"])
37
+ s.add_dependency(%q<json>, ["~> 1.6.0"])
38
+ s.add_dependency(%q<activerecord>, ["< 3.1"])
39
+ s.add_dependency(%q<mysql2>, ["~> 0.2.0"])
40
+ end
41
+ end
@@ -1,8 +1,10 @@
1
- require 'active_record/base'
1
+ require 'active_record'
2
2
  require 'json'
3
3
 
4
4
  module ActiveRecord
5
5
  class SerializeJSON
6
+ require 'active_record/serialize_json/version'
7
+
6
8
  def initialize(attribute, opts = {})
7
9
  @attribute = attribute.to_s.to_sym
8
10
  @serialize = opts[:serialize] || {}
@@ -33,7 +35,7 @@ module ActiveRecord
33
35
 
34
36
  def self.serialize(value, opts = {})
35
37
  opts ||= {}
36
- result = value.to_json(opts)
38
+ result = JSON(value, opts)
37
39
  result =~ /\A\s*[{\[]/ and result
38
40
  end
39
41
 
@@ -1,10 +1,8 @@
1
- module ActiveRecord
2
- module SerializeJSON
3
- # ActiveRecord::SerializeJSON version
4
- VERSION = '0.1.1'
5
- VERSION_ARRAY = VERSION.split(/\./).map { |x| x.to_i } # :nodoc:
6
- VERSION_MAJOR = VERSION_ARRAY[0] # :nodoc:
7
- VERSION_MINOR = VERSION_ARRAY[1] # :nodoc:
8
- VERSION_BUILD = VERSION_ARRAY[2] # :nodoc:
9
- end
1
+ class ActiveRecord::SerializeJSON
2
+ # ActiveRecord::SerializeJSON version
3
+ VERSION = '0.1.2'
4
+ VERSION_ARRAY = VERSION.split(/\./).map { |x| x.to_i } # :nodoc:
5
+ VERSION_MAJOR = VERSION_ARRAY[0] # :nodoc:
6
+ VERSION_MINOR = VERSION_ARRAY[1] # :nodoc:
7
+ VERSION_BUILD = VERSION_ARRAY[2] # :nodoc:
10
8
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: active_record_serialize_json
3
3
  version: !ruby/object:Gem::Version
4
- hash: 25
5
- prerelease: false
4
+ hash: 31
5
+ prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- - 1
10
- version: 0.1.1
9
+ - 2
10
+ version: 0.1.2
11
11
  platform: ruby
12
12
  authors:
13
13
  - Florian Frank
@@ -15,13 +15,28 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-05-31 00:00:00 +02:00
19
- default_executable:
18
+ date: 2011-12-09 00:00:00 Z
20
19
  dependencies:
21
20
  - !ruby/object:Gem::Dependency
22
- name: json
21
+ name: gem_hadar
23
22
  prerelease: false
24
23
  requirement: &id001 !ruby/object:Gem::Requirement
24
+ none: false
25
+ requirements:
26
+ - - ~>
27
+ - !ruby/object:Gem::Version
28
+ hash: 19
29
+ segments:
30
+ - 0
31
+ - 1
32
+ - 4
33
+ version: 0.1.4
34
+ type: :development
35
+ version_requirements: *id001
36
+ - !ruby/object:Gem::Dependency
37
+ name: json
38
+ prerelease: false
39
+ requirement: &id002 !ruby/object:Gem::Requirement
25
40
  none: false
26
41
  requirements:
27
42
  - - ~>
@@ -29,24 +44,42 @@ dependencies:
29
44
  hash: 15
30
45
  segments:
31
46
  - 1
47
+ - 6
32
48
  - 0
33
- version: "1.0"
49
+ version: 1.6.0
34
50
  type: :runtime
35
- version_requirements: *id001
51
+ version_requirements: *id002
36
52
  - !ruby/object:Gem::Dependency
37
53
  name: activerecord
38
54
  prerelease: false
39
- requirement: &id002 !ruby/object:Gem::Requirement
55
+ requirement: &id003 !ruby/object:Gem::Requirement
40
56
  none: false
41
57
  requirements:
42
- - - ">="
58
+ - - <
43
59
  - !ruby/object:Gem::Version
44
- hash: 3
60
+ hash: 5
61
+ segments:
62
+ - 3
63
+ - 1
64
+ version: "3.1"
65
+ type: :runtime
66
+ version_requirements: *id003
67
+ - !ruby/object:Gem::Dependency
68
+ name: mysql2
69
+ prerelease: false
70
+ requirement: &id004 !ruby/object:Gem::Requirement
71
+ none: false
72
+ requirements:
73
+ - - ~>
74
+ - !ruby/object:Gem::Version
75
+ hash: 23
45
76
  segments:
46
77
  - 0
47
- version: "0"
78
+ - 2
79
+ - 0
80
+ version: 0.2.0
48
81
  type: :runtime
49
- version_requirements: *id002
82
+ version_requirements: *id004
50
83
  description: Serialize an ActiveRecord::Base attribute via JSON in Ruby on Rails
51
84
  email: flori@ping.de
52
85
  executables: []
@@ -54,26 +87,32 @@ executables: []
54
87
  extensions: []
55
88
 
56
89
  extra_rdoc_files:
57
- - README
90
+ - README.rdoc
91
+ - lib/active_record/serialize_json/version.rb
92
+ - lib/active_record/serialize_json.rb
93
+ - lib/active_record_serialize_json.rb
58
94
  files:
95
+ - .gitignore
96
+ - .travis.yml
59
97
  - CHANGES
60
- - README
98
+ - Gemfile
99
+ - README.rdoc
61
100
  - Rakefile
62
101
  - VERSION
102
+ - active_record_serialize_json.gemspec
63
103
  - lib/active_record/serialize_json.rb
64
104
  - lib/active_record/serialize_json/version.rb
65
105
  - lib/active_record_serialize_json.rb
66
106
  - test/serialize_json_test.rb
67
- has_rdoc: true
68
- homepage: http://flori.github.com/active_record_serialize_json
107
+ homepage: http://github.com/flori/active_record_serialize_json
69
108
  licenses: []
70
109
 
71
110
  post_install_message:
72
111
  rdoc_options:
73
- - --main
74
- - README
75
112
  - --title
76
- - Serialize an ActiveRecord::Base attribute via JSON
113
+ - ActiveRecordSerializeJson - Serialize an ActiveRecord::Base attribute via JSON
114
+ - --main
115
+ - README.rdoc
77
116
  require_paths:
78
117
  - lib
79
118
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -96,10 +135,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
96
135
  version: "0"
97
136
  requirements: []
98
137
 
99
- rubyforge_project: active_record_serialize_json
100
- rubygems_version: 1.3.7
138
+ rubyforge_project:
139
+ rubygems_version: 1.8.10
101
140
  signing_key:
102
141
  specification_version: 3
103
142
  summary: Serialize an ActiveRecord::Base attribute via JSON
104
- test_files: []
105
-
143
+ test_files:
144
+ - test/serialize_json_test.rb
data/README DELETED
@@ -1,25 +0,0 @@
1
- == Description
2
-
3
- == Download
4
-
5
- The latest version of the <b>active_record_serialize_json</b> source archive can be
6
- found at
7
-
8
- * http://www.ping.de/~flori
9
-
10
- == Installation
11
-
12
- You can use rubygems to fetch the gem and install it for you:
13
-
14
- # gem install active_record_serialize_json
15
-
16
- You can also put this line into your Rails environment.rb file
17
-
18
- config.gem 'active_record_serialize_json'
19
-
20
- and install the gem via
21
-
22
- $ rake gems:install
23
-
24
- == Usage
25
-