sequelizer 0.3.0 → 0.4.0

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.
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sequelizer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Duryea
@@ -136,79 +136,81 @@ dependencies:
136
136
  - !ruby/object:Gem::Version
137
137
  version: '0.25'
138
138
  - !ruby/object:Gem::Dependency
139
- name: simplecov
139
+ name: rubocop-rails-omakase
140
140
  requirement: !ruby/object:Gem::Requirement
141
141
  requirements:
142
142
  - - "~>"
143
143
  - !ruby/object:Gem::Version
144
- version: '1.0'
144
+ version: '1.1'
145
145
  type: :development
146
146
  prerelease: false
147
147
  version_requirements: !ruby/object:Gem::Requirement
148
148
  requirements:
149
149
  - - "~>"
150
150
  - !ruby/object:Gem::Version
151
- version: '1.0'
151
+ version: '1.1'
152
152
  - !ruby/object:Gem::Dependency
153
- name: activesupport
153
+ name: rubocop-rake
154
154
  requirement: !ruby/object:Gem::Requirement
155
155
  requirements:
156
- - - ">="
157
- - !ruby/object:Gem::Version
158
- version: '7'
159
- - - "<"
156
+ - - "~>"
160
157
  - !ruby/object:Gem::Version
161
- version: '9'
162
- type: :runtime
158
+ version: '0.7'
159
+ type: :development
163
160
  prerelease: false
164
161
  version_requirements: !ruby/object:Gem::Requirement
165
162
  requirements:
166
- - - ">="
167
- - !ruby/object:Gem::Version
168
- version: '7'
169
- - - "<"
163
+ - - "~>"
170
164
  - !ruby/object:Gem::Version
171
- version: '9'
165
+ version: '0.7'
172
166
  - !ruby/object:Gem::Dependency
173
- name: dotenv
167
+ name: rubocop-sequel
174
168
  requirement: !ruby/object:Gem::Requirement
175
169
  requirements:
176
- - - ">="
177
- - !ruby/object:Gem::Version
178
- version: '2.1'
179
- - - "<"
170
+ - - "~>"
180
171
  - !ruby/object:Gem::Version
181
- version: '4.0'
182
- type: :runtime
172
+ version: '0.4'
173
+ type: :development
183
174
  prerelease: false
184
175
  version_requirements: !ruby/object:Gem::Requirement
185
176
  requirements:
186
- - - ">="
177
+ - - "~>"
187
178
  - !ruby/object:Gem::Version
188
- version: '2.1'
189
- - - "<"
179
+ version: '0.4'
180
+ - !ruby/object:Gem::Dependency
181
+ name: simplecov
182
+ requirement: !ruby/object:Gem::Requirement
183
+ requirements:
184
+ - - "~>"
190
185
  - !ruby/object:Gem::Version
191
- version: '4.0'
186
+ version: '1.0'
187
+ type: :development
188
+ prerelease: false
189
+ version_requirements: !ruby/object:Gem::Requirement
190
+ requirements:
191
+ - - "~>"
192
+ - !ruby/object:Gem::Version
193
+ version: '1.0'
192
194
  - !ruby/object:Gem::Dependency
193
- name: hashie
195
+ name: dotenv
194
196
  requirement: !ruby/object:Gem::Requirement
195
197
  requirements:
196
198
  - - ">="
197
199
  - !ruby/object:Gem::Version
198
- version: '3.2'
200
+ version: '2.1'
199
201
  - - "<"
200
202
  - !ruby/object:Gem::Version
201
- version: '6.0'
203
+ version: '4.0'
202
204
  type: :runtime
203
205
  prerelease: false
204
206
  version_requirements: !ruby/object:Gem::Requirement
205
207
  requirements:
206
208
  - - ">="
207
209
  - !ruby/object:Gem::Version
208
- version: '3.2'
210
+ version: '2.1'
209
211
  - - "<"
210
212
  - !ruby/object:Gem::Version
211
- version: '6.0'
213
+ version: '4.0'
212
214
  - !ruby/object:Gem::Dependency
213
215
  name: kvcsv
214
216
  requirement: !ruby/object:Gem::Requirement
@@ -223,20 +225,6 @@ dependencies:
223
225
  - - "~>"
224
226
  - !ruby/object:Gem::Version
225
227
  version: '0.1'
226
- - !ruby/object:Gem::Dependency
227
- name: pp
228
- requirement: !ruby/object:Gem::Requirement
229
- requirements:
230
- - - ">="
231
- - !ruby/object:Gem::Version
232
- version: '0'
233
- type: :runtime
234
- prerelease: false
235
- version_requirements: !ruby/object:Gem::Requirement
236
- requirements:
237
- - - ">="
238
- - !ruby/object:Gem::Version
239
- version: '0'
240
228
  - !ruby/object:Gem::Dependency
241
229
  name: sequel
242
230
  requirement: !ruby/object:Gem::Requirement
@@ -266,7 +254,7 @@ dependencies:
266
254
  - !ruby/object:Gem::Version
267
255
  version: '1.0'
268
256
  description: Easily establish a connection to a database via Sequel gem using options
269
- specified in config/database.yml or .env files
257
+ specified in config/sequelizer.yml or .env files
270
258
  email:
271
259
  - aguynamedryan@gmail.com
272
260
  executables:
@@ -298,10 +286,7 @@ files:
298
286
  - lib/sequelizer/cli.rb
299
287
  - lib/sequelizer/connection_maker.rb
300
288
  - lib/sequelizer/env_config.rb
301
- - lib/sequelizer/gemfile_modifier.rb
302
- - lib/sequelizer/monkey_patches/database_in_after_connect.rb
303
289
  - lib/sequelizer/options.rb
304
- - lib/sequelizer/options_hash.rb
305
290
  - lib/sequelizer/version.rb
306
291
  - lib/sequelizer/yaml_config.rb
307
292
  homepage: https://github.com/outcomesinsights/sequelizer
@@ -325,5 +310,5 @@ required_rubygems_version: !ruby/object:Gem::Requirement
325
310
  requirements: []
326
311
  rubygems_version: 4.0.20
327
312
  specification_version: 4
328
- summary: Sequel database connections via config/database.yml or .env
313
+ summary: Sequel database connections via config/sequelizer.yml or .env
329
314
  test_files: []
@@ -1,91 +0,0 @@
1
- require_relative 'options'
2
-
3
- module Sequelizer
4
- class GemfileModifier
5
-
6
- attr_reader :options
7
-
8
- def initialize(options = {})
9
- @options = options
10
- end
11
-
12
- def modify
13
- check_for_gemfile
14
- if gemfile_needs_modification?
15
- modify_gemfile
16
- run_bundle unless options['skip-bundle']
17
- else
18
- puts 'Gemfile needs no modification'
19
- end
20
- end
21
-
22
- private
23
-
24
- def modify_gemfile
25
- puts %(Adding "#{gem_line}" to Gemfile)
26
- return if options['dry-run']
27
-
28
- File.write(gemfile, modified_lines.join("\n"))
29
- end
30
-
31
- def proper_gem
32
- opts = Options.new
33
- @proper_gem ||= case opts.adapter
34
- when 'postgres'
35
- 'pg'
36
- when 'sqlite'
37
- 'sqlite3'
38
- when 'mysql'
39
- 'mysql2'
40
- when 'tinytds'
41
- 'tiny_tds'
42
- when 'oracle'
43
- 'ruby-oci8'
44
- when nil
45
- raise 'No database adapter defined in your Sequelizer configuration'
46
- else
47
- raise "Don't know which database gem to use with adapter: #{opts.adapter}"
48
- end
49
- end
50
-
51
- def gem_line
52
- "gem '#{proper_gem}'"
53
- end
54
-
55
- def gem_line_comment
56
- '# ADDED BY SEQUELIZER'
57
- end
58
-
59
- def full_gem_line
60
- [gem_line, gem_line_comment].join(' ')
61
- end
62
-
63
- def gemfile_needs_modification?
64
- !(gemfile_lines.include?(gem_line) || gemfile_lines.include?(full_gem_line))
65
- end
66
-
67
- def gemfile_lines
68
- @gemfile_lines ||= File.readlines(gemfile).map(&:chomp)
69
- end
70
-
71
- def modified_lines
72
- gemfile_lines.grep_v(Regexp.new(gem_line_comment)) + [full_gem_line]
73
- end
74
-
75
- def check_for_gemfile
76
- return if gemfile.exist?
77
-
78
- raise "Could not find Gemfile in current directory: #{Pathname.pwd}"
79
- end
80
-
81
- def run_bundle
82
- puts 'Running `bundle install` to update dependencies'
83
- system('bundle install')
84
- end
85
-
86
- def gemfile
87
- @gemfile ||= Pathname.new('Gemfile')
88
- end
89
-
90
- end
91
- end
@@ -1,28 +0,0 @@
1
- module Sequel
2
- class ConnectionPool
3
-
4
- # Return a new connection by calling the connection proc with the given server name,
5
- # and checking for connection errors.
6
- def make_new(server)
7
- begin
8
- conn = @db.connect(server)
9
- if (ac = @after_connect)
10
- case ac.arity
11
- when 3
12
- ac.call(conn, server, @db)
13
- when 2
14
- ac.call(conn, server)
15
- else
16
- ac.call(conn)
17
- end
18
- end
19
- rescue StandardError => e
20
- raise Sequel.convert_exception_class(e, Sequel::DatabaseConnectionError)
21
- end
22
- raise(Sequel::DatabaseConnectionError, 'Connection parameters not valid') unless conn
23
-
24
- conn
25
- end
26
-
27
- end
28
- end
@@ -1,9 +0,0 @@
1
- require 'hashie'
2
- module Sequelizer
3
- class OptionsHash < Hash
4
-
5
- include Hashie::Extensions::IndifferentAccess
6
- include Hashie::Extensions::MergeInitializer
7
-
8
- end
9
- end