mongify 0.9 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,6 @@
1
+ == 1.0.0 / 28 May 2013
2
+ * Fixed issue with MySql when specifying port (thanks to sebastianmarr)
3
+ * Added information Mongify-Mongoid
1
4
  == 0.9 / 08 Feb 2013
2
5
  * Changed Mongify Syntax (thanks to tanema)
3
6
  * Improved error handling
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- mongify (0.9)
4
+ mongify (1.0.0)
5
5
  activerecord (>= 3.0.3)
6
6
  activesupport (>= 3.0.3)
7
7
  bson_ext (~> 1.8.2)
data/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2011 Andrew Kalek, Anlek Consulting
1
+ Copyright (c) 2011-2013 Andrew Kalek, Anlek Consulting
2
2
 
3
3
  Permission is hereby granted, free of charge, to any person obtaining
4
4
  a copy of this software and associated documentation files (the
@@ -250,6 +250,10 @@ More documentation can be found at {Mongify::Database::Column}
250
250
  Mongify has been tested on Ruby 1.8.7-p330 and Ruby 1.9.2-p136
251
251
  If you have any issues, please feel free to report them here: {issue tracker}[https://github.com/anlek/mongify/issues]
252
252
 
253
+ == Additional Tools
254
+
255
+ As of May 2013, we've released a add-on tool to Mongify called {Mongify-Mongoid}[https://github.com/anlek/mongify-mongoid] which lets you use the translation.rb file to generate Mongoid models for you. It will take care of the fields, relations (most of the way) and timestamps for you. This should save you some time re-typing all the models by hand.
256
+ Check out the gem at: {http://rubygems.org/gems/mongify-mongoid}[http://rubygems.org/gems/mongify-mongoid]
253
257
 
254
258
  == TODO
255
259
  * Allow deeper embedding
@@ -291,7 +295,7 @@ Reach me at:
291
295
 
292
296
  == License
293
297
 
294
- Copyright (c) 2011 Andrew Kalek, Anlek Consulting
298
+ Copyright (c) 2011 - 2013 Andrew Kalek, Anlek Consulting
295
299
 
296
300
  Permission is hereby granted, free of charge, to any person obtaining
297
301
  a copy of this software and associated documentation files (the
data/Rakefile CHANGED
@@ -54,7 +54,7 @@ namespace :test do
54
54
  namespace :mysql do
55
55
  desc "Setup a mysql database based on the spec/support/database.yml settings"
56
56
  task :setup do
57
- require 'spec/support/config_reader'
57
+ require './spec/support/config_reader'
58
58
  require 'active_record'
59
59
  ::CONNECTION_CONFIG = ConfigReader.new('spec/support/database.yml')
60
60
  ActiveRecord::Base.establish_connection(CONNECTION_CONFIG.mysql)
@@ -9,6 +9,8 @@ module Mongify
9
9
  REQUIRED_FIELDS = %w{host}
10
10
  # List of all the available fields to make up a connection
11
11
  AVAILABLE_FIELDS = %w{adapter host username password database socket port encoding}
12
+ # List of all fields that should be forced to a string
13
+ STRING_FIELDS = %w{adapter}
12
14
 
13
15
  def initialize(options=nil)
14
16
  if options
@@ -56,7 +58,8 @@ module Mongify
56
58
  super(method)
57
59
  end
58
60
 
59
- # Building set and/or return functions for AVAILABLE_FIELDS
61
+ # Building set and/or return functions for AVAILABLE_FIELDS.
62
+ # STRING_FIELDS are forced into string.
60
63
  # Example:
61
64
  #
62
65
  # def host(value=nil)
@@ -67,9 +70,16 @@ module Mongify
67
70
  def method_missing(method, *args)
68
71
  method_name = method.to_s
69
72
  if AVAILABLE_FIELDS.include?(method_name.to_s)
73
+
74
+ if STRING_FIELDS.include?(method_name.to_s)
75
+ assignment = "@#{method_name} = value.to_s"
76
+ else
77
+ assignment = "@#{method_name} = value"
78
+ end
79
+
70
80
  class_eval <<-EOF
71
81
  def #{method_name}(value=nil)
72
- @#{method_name} = value.to_s unless value.nil?
82
+ #{assignment} unless value.nil?
73
83
  @#{method_name}
74
84
  end
75
85
  EOF
@@ -1,4 +1,4 @@
1
1
  module Mongify
2
2
  # Mongify's Current Version Number
3
- VERSION = "0.9"
3
+ VERSION = "1.0.0"
4
4
  end
@@ -47,6 +47,11 @@ describe Mongify::Database::BaseConnection do
47
47
  @base_connection.adapter.should == 'sqlite'
48
48
  end
49
49
 
50
+ it "should leave port argument as an integer" do
51
+ @base_connection.port 3333
52
+ @base_connection.port.should == 3333
53
+ end
54
+
50
55
  context "hash" do
51
56
  before(:each) do
52
57
  @adapter = 'baseDB'
metadata CHANGED
@@ -2,239 +2,239 @@
2
2
  name: mongify
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: '0.9'
5
+ version: 1.0.0
6
6
  platform: ruby
7
7
  authors:
8
8
  - Andrew Kalek
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-02-08 00:00:00.000000000 Z
12
+ date: 2013-05-28 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
+ prerelease: false
16
+ name: activerecord
15
17
  type: :runtime
16
18
  version_requirements: !ruby/object:Gem::Requirement
17
- none: false
18
19
  requirements:
19
20
  - - ! '>='
20
21
  - !ruby/object:Gem::Version
21
22
  version: 3.0.3
22
- name: activerecord
23
- prerelease: false
24
- requirement: !ruby/object:Gem::Requirement
25
23
  none: false
24
+ requirement: !ruby/object:Gem::Requirement
26
25
  requirements:
27
26
  - - ! '>='
28
27
  - !ruby/object:Gem::Version
29
28
  version: 3.0.3
29
+ none: false
30
30
  - !ruby/object:Gem::Dependency
31
+ prerelease: false
32
+ name: activesupport
31
33
  type: :runtime
32
34
  version_requirements: !ruby/object:Gem::Requirement
33
- none: false
34
35
  requirements:
35
36
  - - ! '>='
36
37
  - !ruby/object:Gem::Version
37
38
  version: 3.0.3
38
- name: activesupport
39
- prerelease: false
40
- requirement: !ruby/object:Gem::Requirement
41
39
  none: false
40
+ requirement: !ruby/object:Gem::Requirement
42
41
  requirements:
43
42
  - - ! '>='
44
43
  - !ruby/object:Gem::Version
45
44
  version: 3.0.3
45
+ none: false
46
46
  - !ruby/object:Gem::Dependency
47
+ prerelease: false
48
+ name: mongo
47
49
  type: :runtime
48
50
  version_requirements: !ruby/object:Gem::Requirement
49
- none: false
50
51
  requirements:
51
52
  - - ~>
52
53
  - !ruby/object:Gem::Version
53
54
  version: 1.8.2
54
- name: mongo
55
- prerelease: false
56
- requirement: !ruby/object:Gem::Requirement
57
55
  none: false
56
+ requirement: !ruby/object:Gem::Requirement
58
57
  requirements:
59
58
  - - ~>
60
59
  - !ruby/object:Gem::Version
61
60
  version: 1.8.2
61
+ none: false
62
62
  - !ruby/object:Gem::Dependency
63
+ prerelease: false
64
+ name: bson_ext
63
65
  type: :runtime
64
66
  version_requirements: !ruby/object:Gem::Requirement
65
- none: false
66
67
  requirements:
67
68
  - - ~>
68
69
  - !ruby/object:Gem::Version
69
70
  version: 1.8.2
70
- name: bson_ext
71
- prerelease: false
72
- requirement: !ruby/object:Gem::Requirement
73
71
  none: false
72
+ requirement: !ruby/object:Gem::Requirement
74
73
  requirements:
75
74
  - - ~>
76
75
  - !ruby/object:Gem::Version
77
76
  version: 1.8.2
77
+ none: false
78
78
  - !ruby/object:Gem::Dependency
79
+ prerelease: false
80
+ name: highline
79
81
  type: :runtime
80
82
  version_requirements: !ruby/object:Gem::Requirement
81
- none: false
82
83
  requirements:
83
84
  - - ! '>='
84
85
  - !ruby/object:Gem::Version
85
86
  version: 1.6.1
86
- name: highline
87
- prerelease: false
88
- requirement: !ruby/object:Gem::Requirement
89
87
  none: false
88
+ requirement: !ruby/object:Gem::Requirement
90
89
  requirements:
91
90
  - - ! '>='
92
91
  - !ruby/object:Gem::Version
93
92
  version: 1.6.1
93
+ none: false
94
94
  - !ruby/object:Gem::Dependency
95
+ prerelease: false
96
+ name: rspec
95
97
  type: :development
96
98
  version_requirements: !ruby/object:Gem::Requirement
97
- none: false
98
99
  requirements:
99
100
  - - ! '>='
100
101
  - !ruby/object:Gem::Version
101
102
  version: '2.0'
102
- name: rspec
103
- prerelease: false
104
- requirement: !ruby/object:Gem::Requirement
105
103
  none: false
104
+ requirement: !ruby/object:Gem::Requirement
106
105
  requirements:
107
106
  - - ! '>='
108
107
  - !ruby/object:Gem::Version
109
108
  version: '2.0'
109
+ none: false
110
110
  - !ruby/object:Gem::Dependency
111
+ prerelease: false
112
+ name: rcov
111
113
  type: :development
112
114
  version_requirements: !ruby/object:Gem::Requirement
113
- none: false
114
115
  requirements:
115
116
  - - ! '>='
116
117
  - !ruby/object:Gem::Version
117
118
  version: 0.9.9
118
- name: rcov
119
- prerelease: false
120
- requirement: !ruby/object:Gem::Requirement
121
119
  none: false
120
+ requirement: !ruby/object:Gem::Requirement
122
121
  requirements:
123
122
  - - ! '>='
124
123
  - !ruby/object:Gem::Version
125
124
  version: 0.9.9
125
+ none: false
126
126
  - !ruby/object:Gem::Dependency
127
+ prerelease: false
128
+ name: cucumber
127
129
  type: :development
128
130
  version_requirements: !ruby/object:Gem::Requirement
129
- none: false
130
131
  requirements:
131
132
  - - ! '>='
132
133
  - !ruby/object:Gem::Version
133
134
  version: '0.10'
134
- name: cucumber
135
- prerelease: false
136
- requirement: !ruby/object:Gem::Requirement
137
135
  none: false
136
+ requirement: !ruby/object:Gem::Requirement
138
137
  requirements:
139
138
  - - ! '>='
140
139
  - !ruby/object:Gem::Version
141
140
  version: '0.10'
141
+ none: false
142
142
  - !ruby/object:Gem::Dependency
143
+ prerelease: false
144
+ name: mocha
143
145
  type: :development
144
146
  version_requirements: !ruby/object:Gem::Requirement
145
- none: false
146
147
  requirements:
147
148
  - - ! '>='
148
149
  - !ruby/object:Gem::Version
149
150
  version: 0.9.8
150
- name: mocha
151
- prerelease: false
152
- requirement: !ruby/object:Gem::Requirement
153
151
  none: false
152
+ requirement: !ruby/object:Gem::Requirement
154
153
  requirements:
155
154
  - - ! '>='
156
155
  - !ruby/object:Gem::Version
157
156
  version: 0.9.8
157
+ none: false
158
158
  - !ruby/object:Gem::Dependency
159
+ prerelease: false
160
+ name: yard
159
161
  type: :development
160
162
  version_requirements: !ruby/object:Gem::Requirement
161
- none: false
162
163
  requirements:
163
164
  - - ! '>='
164
165
  - !ruby/object:Gem::Version
165
166
  version: 0.5.3
166
- name: yard
167
- prerelease: false
168
- requirement: !ruby/object:Gem::Requirement
169
167
  none: false
168
+ requirement: !ruby/object:Gem::Requirement
170
169
  requirements:
171
170
  - - ! '>='
172
171
  - !ruby/object:Gem::Version
173
172
  version: 0.5.3
173
+ none: false
174
174
  - !ruby/object:Gem::Dependency
175
+ prerelease: false
176
+ name: sqlite3-ruby
175
177
  type: :development
176
178
  version_requirements: !ruby/object:Gem::Requirement
177
- none: false
178
179
  requirements:
179
180
  - - ! '>='
180
181
  - !ruby/object:Gem::Version
181
182
  version: '1.3'
182
- name: sqlite3-ruby
183
- prerelease: false
184
- requirement: !ruby/object:Gem::Requirement
185
183
  none: false
184
+ requirement: !ruby/object:Gem::Requirement
186
185
  requirements:
187
186
  - - ! '>='
188
187
  - !ruby/object:Gem::Version
189
188
  version: '1.3'
189
+ none: false
190
190
  - !ruby/object:Gem::Dependency
191
+ prerelease: false
192
+ name: mysql2
191
193
  type: :development
192
194
  version_requirements: !ruby/object:Gem::Requirement
193
- none: false
194
195
  requirements:
195
196
  - - ~>
196
197
  - !ruby/object:Gem::Version
197
198
  version: 0.2.7
198
- name: mysql2
199
- prerelease: false
200
- requirement: !ruby/object:Gem::Requirement
201
199
  none: false
200
+ requirement: !ruby/object:Gem::Requirement
202
201
  requirements:
203
202
  - - ~>
204
203
  - !ruby/object:Gem::Version
205
204
  version: 0.2.7
205
+ none: false
206
206
  - !ruby/object:Gem::Dependency
207
+ prerelease: false
208
+ name: watchr
207
209
  type: :development
208
210
  version_requirements: !ruby/object:Gem::Requirement
209
- none: false
210
211
  requirements:
211
212
  - - ! '>='
212
213
  - !ruby/object:Gem::Version
213
214
  version: '0.6'
214
- name: watchr
215
- prerelease: false
216
- requirement: !ruby/object:Gem::Requirement
217
215
  none: false
216
+ requirement: !ruby/object:Gem::Requirement
218
217
  requirements:
219
218
  - - ! '>='
220
219
  - !ruby/object:Gem::Version
221
220
  version: '0.6'
221
+ none: false
222
222
  - !ruby/object:Gem::Dependency
223
+ prerelease: false
224
+ name: rake
223
225
  type: :development
224
226
  version_requirements: !ruby/object:Gem::Requirement
225
- none: false
226
227
  requirements:
227
228
  - - ! '>='
228
229
  - !ruby/object:Gem::Version
229
230
  version: '0'
230
- name: rake
231
- prerelease: false
232
- requirement: !ruby/object:Gem::Requirement
233
231
  none: false
232
+ requirement: !ruby/object:Gem::Requirement
234
233
  requirements:
235
234
  - - ! '>='
236
235
  - !ruby/object:Gem::Version
237
236
  version: '0'
237
+ none: false
238
238
  description: Mongify allows you to map your sql data into a mongodb document database
239
239
  with a simple DSL.
240
240
  email:
@@ -328,23 +328,23 @@ rdoc_options:
328
328
  require_paths:
329
329
  - lib
330
330
  required_ruby_version: !ruby/object:Gem::Requirement
331
- none: false
332
331
  requirements:
333
332
  - - ! '>='
334
333
  - !ruby/object:Gem::Version
335
334
  version: 1.8.7
336
- required_rubygems_version: !ruby/object:Gem::Requirement
337
335
  none: false
336
+ required_rubygems_version: !ruby/object:Gem::Requirement
338
337
  requirements:
339
338
  - - ! '>='
340
339
  - !ruby/object:Gem::Version
341
340
  segments:
342
341
  - 0
343
- hash: 2090311925620854324
342
+ hash: -4583031450737885618
344
343
  version: '0'
344
+ none: false
345
345
  requirements: []
346
346
  rubyforge_project:
347
- rubygems_version: 1.8.25
347
+ rubygems_version: 1.8.23
348
348
  signing_key:
349
349
  specification_version: 3
350
350
  summary: Translate your SQL data to MongoDB with ease