sequelizer 0.1.6 → 0.2.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.
Files changed (39) hide show
  1. checksums.yaml +4 -4
  2. data/.beads/.gitignore +54 -0
  3. data/.beads/.jsonl.lock +0 -0
  4. data/.beads/.migration-hint-ts +1 -0
  5. data/.beads/README.md +81 -0
  6. data/.beads/config.yaml +42 -0
  7. data/.beads/issues.jsonl +20 -0
  8. data/.beads/metadata.json +7 -0
  9. data/.coderabbit.yaml +94 -0
  10. data/.github/dependabot.yml +18 -0
  11. data/.github/workflows/dependabot-auto-merge.yml +36 -0
  12. data/.github/workflows/test.yml +44 -9
  13. data/AGENTS.md +126 -0
  14. data/CHANGELOG.md +17 -0
  15. data/CLAUDE.md +11 -0
  16. data/Gemfile +1 -1
  17. data/Gemfile.lock +84 -53
  18. data/config/platforms/base.csv +5 -0
  19. data/config/platforms/rdbms/athena.csv +4 -0
  20. data/config/platforms/rdbms/postgres.csv +3 -0
  21. data/config/platforms/rdbms/snowflake.csv +1 -0
  22. data/config/platforms/rdbms/spark.csv +3 -0
  23. data/lib/sequel/extensions/cold_col.rb +2 -2
  24. data/lib/sequel/extensions/funky.rb +136 -0
  25. data/lib/sequel/extensions/make_readyable.rb +0 -2
  26. data/lib/sequel/extensions/platform.rb +301 -0
  27. data/lib/sequelizer/options.rb +5 -1
  28. data/lib/sequelizer/version.rb +1 -1
  29. data/lib/sequelizer/yaml_config.rb +0 -1
  30. data/sequelizer.gemspec +10 -7
  31. data/test/lib/sequel/extensions/test_cold_col.rb +2 -2
  32. data/test/lib/sequel/extensions/test_make_readyable.rb +0 -1
  33. data/test/lib/sequel/extensions/test_platform.rb +222 -0
  34. data/test/lib/sequelizer/test_connection_maker.rb +2 -2
  35. data/test/lib/sequelizer/test_gemfile_modifier.rb +2 -2
  36. data/test/lib/sequelizer/test_options.rb +28 -0
  37. data/test/test_helper.rb +1 -0
  38. metadata +97 -19
  39. data/.claude/settings.local.json +0 -64
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.1.6
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Duryea
@@ -13,14 +13,14 @@ dependencies:
13
13
  name: bundler
14
14
  requirement: !ruby/object:Gem::Requirement
15
15
  requirements:
16
- - - "~>"
16
+ - - ">="
17
17
  - !ruby/object:Gem::Version
18
18
  version: '2.0'
19
19
  type: :development
20
20
  prerelease: false
21
21
  version_requirements: !ruby/object:Gem::Requirement
22
22
  requirements:
23
- - - "~>"
23
+ - - ">="
24
24
  - !ruby/object:Gem::Version
25
25
  version: '2.0'
26
26
  - !ruby/object:Gem::Dependency
@@ -43,28 +43,42 @@ dependencies:
43
43
  requirements:
44
44
  - - "~>"
45
45
  - !ruby/object:Gem::Version
46
- version: '2.3'
46
+ version: '3.0'
47
47
  type: :development
48
48
  prerelease: false
49
49
  version_requirements: !ruby/object:Gem::Requirement
50
50
  requirements:
51
51
  - - "~>"
52
52
  - !ruby/object:Gem::Version
53
- version: '2.3'
53
+ version: '3.0'
54
54
  - !ruby/object:Gem::Dependency
55
55
  name: minitest
56
56
  requirement: !ruby/object:Gem::Requirement
57
57
  requirements:
58
58
  - - "~>"
59
59
  - !ruby/object:Gem::Version
60
- version: '5.3'
60
+ version: '6.0'
61
61
  type: :development
62
62
  prerelease: false
63
63
  version_requirements: !ruby/object:Gem::Requirement
64
64
  requirements:
65
65
  - - "~>"
66
66
  - !ruby/object:Gem::Version
67
- version: '5.3'
67
+ version: '6.0'
68
+ - !ruby/object:Gem::Dependency
69
+ name: minitest-mock
70
+ requirement: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - "~>"
73
+ - !ruby/object:Gem::Version
74
+ version: '5.27'
75
+ type: :development
76
+ prerelease: false
77
+ version_requirements: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - "~>"
80
+ - !ruby/object:Gem::Version
81
+ version: '5.27'
68
82
  - !ruby/object:Gem::Dependency
69
83
  name: pg
70
84
  requirement: !ruby/object:Gem::Requirement
@@ -85,14 +99,14 @@ dependencies:
85
99
  requirements:
86
100
  - - "~>"
87
101
  - !ruby/object:Gem::Version
88
- version: '12.0'
102
+ version: '13.3'
89
103
  type: :development
90
104
  prerelease: false
91
105
  version_requirements: !ruby/object:Gem::Requirement
92
106
  requirements:
93
107
  - - "~>"
94
108
  - !ruby/object:Gem::Version
95
- version: '12.0'
109
+ version: '13.3'
96
110
  - !ruby/object:Gem::Dependency
97
111
  name: rubocop
98
112
  requirement: !ruby/object:Gem::Requirement
@@ -139,44 +153,90 @@ dependencies:
139
153
  name: activesupport
140
154
  requirement: !ruby/object:Gem::Requirement
141
155
  requirements:
142
- - - "~>"
156
+ - - ">="
157
+ - !ruby/object:Gem::Version
158
+ version: '7'
159
+ - - "<"
143
160
  - !ruby/object:Gem::Version
144
- version: '7.0'
161
+ version: '9'
145
162
  type: :runtime
146
163
  prerelease: false
147
164
  version_requirements: !ruby/object:Gem::Requirement
148
165
  requirements:
149
- - - "~>"
166
+ - - ">="
167
+ - !ruby/object:Gem::Version
168
+ version: '7'
169
+ - - "<"
150
170
  - !ruby/object:Gem::Version
151
- version: '7.0'
171
+ version: '9'
152
172
  - !ruby/object:Gem::Dependency
153
173
  name: dotenv
154
174
  requirement: !ruby/object:Gem::Requirement
155
175
  requirements:
156
- - - "~>"
176
+ - - ">="
157
177
  - !ruby/object:Gem::Version
158
178
  version: '2.1'
179
+ - - "<"
180
+ - !ruby/object:Gem::Version
181
+ version: '4.0'
159
182
  type: :runtime
160
183
  prerelease: false
161
184
  version_requirements: !ruby/object:Gem::Requirement
162
185
  requirements:
163
- - - "~>"
186
+ - - ">="
164
187
  - !ruby/object:Gem::Version
165
188
  version: '2.1'
189
+ - - "<"
190
+ - !ruby/object:Gem::Version
191
+ version: '4.0'
166
192
  - !ruby/object:Gem::Dependency
167
193
  name: hashie
168
194
  requirement: !ruby/object:Gem::Requirement
169
195
  requirements:
170
- - - "~>"
196
+ - - ">="
171
197
  - !ruby/object:Gem::Version
172
198
  version: '3.2'
199
+ - - "<"
200
+ - !ruby/object:Gem::Version
201
+ version: '6.0'
173
202
  type: :runtime
174
203
  prerelease: false
175
204
  version_requirements: !ruby/object:Gem::Requirement
176
205
  requirements:
177
- - - "~>"
206
+ - - ">="
178
207
  - !ruby/object:Gem::Version
179
208
  version: '3.2'
209
+ - - "<"
210
+ - !ruby/object:Gem::Version
211
+ version: '6.0'
212
+ - !ruby/object:Gem::Dependency
213
+ name: kvcsv
214
+ requirement: !ruby/object:Gem::Requirement
215
+ requirements:
216
+ - - "~>"
217
+ - !ruby/object:Gem::Version
218
+ version: '0.1'
219
+ type: :runtime
220
+ prerelease: false
221
+ version_requirements: !ruby/object:Gem::Requirement
222
+ requirements:
223
+ - - "~>"
224
+ - !ruby/object:Gem::Version
225
+ 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'
180
240
  - !ruby/object:Gem::Dependency
181
241
  name: sequel
182
242
  requirement: !ruby/object:Gem::Requirement
@@ -214,7 +274,14 @@ executables:
214
274
  extensions: []
215
275
  extra_rdoc_files: []
216
276
  files:
217
- - ".claude/settings.local.json"
277
+ - ".beads/.gitignore"
278
+ - ".beads/.jsonl.lock"
279
+ - ".beads/.migration-hint-ts"
280
+ - ".beads/README.md"
281
+ - ".beads/config.yaml"
282
+ - ".beads/issues.jsonl"
283
+ - ".beads/metadata.json"
284
+ - ".coderabbit.yaml"
218
285
  - ".devcontainer/.p10k.zsh"
219
286
  - ".devcontainer/.zshrc"
220
287
  - ".devcontainer/Dockerfile"
@@ -222,10 +289,13 @@ files:
222
289
  - ".devcontainer/devcontainer.json"
223
290
  - ".devcontainer/init-firewall.sh"
224
291
  - ".devcontainer/setup-credentials.sh"
292
+ - ".github/dependabot.yml"
293
+ - ".github/workflows/dependabot-auto-merge.yml"
225
294
  - ".github/workflows/test.yml"
226
295
  - ".gitignore"
227
296
  - ".overcommit.yml"
228
297
  - ".rubocop.yml"
298
+ - AGENTS.md
229
299
  - CHANGELOG.md
230
300
  - CLAUDE.md
231
301
  - Gemfile
@@ -235,13 +305,20 @@ files:
235
305
  - README.md
236
306
  - Rakefile
237
307
  - bin/sequelizer
308
+ - config/platforms/base.csv
309
+ - config/platforms/rdbms/athena.csv
310
+ - config/platforms/rdbms/postgres.csv
311
+ - config/platforms/rdbms/snowflake.csv
312
+ - config/platforms/rdbms/spark.csv
238
313
  - examples/database.with_one_set_of_options.yml
239
314
  - examples/database.yml
240
315
  - examples/dot_env.txt
241
316
  - lib/sequel/extensions/cold_col.rb
242
317
  - lib/sequel/extensions/db_opts.rb
318
+ - lib/sequel/extensions/funky.rb
243
319
  - lib/sequel/extensions/make_readyable.rb
244
320
  - lib/sequel/extensions/more_sql.rb
321
+ - lib/sequel/extensions/platform.rb
245
322
  - lib/sequel/extensions/settable.rb
246
323
  - lib/sequel/extensions/sql_recorder.rb
247
324
  - lib/sequel/extensions/unionize.rb
@@ -261,6 +338,7 @@ files:
261
338
  - test/lib/sequel/extensions/test_db_opts.rb
262
339
  - test/lib/sequel/extensions/test_make_readyable.rb
263
340
  - test/lib/sequel/extensions/test_more_sql.rb
341
+ - test/lib/sequel/extensions/test_platform.rb
264
342
  - test/lib/sequel/extensions/test_settable.rb
265
343
  - test/lib/sequel/extensions/test_sql_recorder.rb
266
344
  - test/lib/sequel/extensions/test_unionize.rb
@@ -290,7 +368,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
290
368
  - !ruby/object:Gem::Version
291
369
  version: '0'
292
370
  requirements: []
293
- rubygems_version: 3.6.7
371
+ rubygems_version: 3.6.9
294
372
  specification_version: 4
295
373
  summary: Sequel database connections via config/database.yml or .env
296
374
  test_files: []
@@ -1,64 +0,0 @@
1
- {
2
- "permissions": {
3
- "allow": [
4
- "Bash(bundle install:*)",
5
- "Bash(bundle exec rubocop:*)",
6
- "Bash(rake lint)",
7
- "Bash(rake test)",
8
- "Bash(bundle list:*)",
9
- "Bash(gem list)",
10
- "Bash(bundle exec gem dependency:*)",
11
- "Bash(bundle exec rake:*)",
12
- "Bash(grep:*)",
13
- "Bash(gh repo edit:*)",
14
- "Bash(gh repo view:*)",
15
- "Bash(git branch:*)",
16
- "Bash(git remote set-head:*)",
17
- "Bash(mkdir:*)",
18
- "Bash(chmod:*)",
19
- "Bash(git worktree:*)",
20
- "Bash(docker build:*)",
21
- "Bash(find:*)",
22
- "Bash(bundle exec sequelizer:*)",
23
- "Bash(docker run:*)",
24
- "Bash(ls:*)",
25
- "Bash(git checkout:*)",
26
- "Bash(echo $DEVCONTAINER)",
27
- "Bash(ruby --version)",
28
- "Bash(git config:*)",
29
- "Bash(echo:*)",
30
- "Bash(docker compose:*)",
31
- "Bash(mv:*)",
32
- "Bash(rmdir:*)",
33
- "Bash(./.claude/claude:*)",
34
- "Bash(find:*)",
35
- "WebFetch(domain:docs.anthropic.com)",
36
- "Bash(env)",
37
- "Bash(git add:*)",
38
- "Bash(git commit:*)",
39
- "Bash(./test_claude_auth.sh:*)",
40
- "Bash(npm install:*)",
41
- "Bash(devcontainer build:*)",
42
- "Bash(devcontainer exec:*)",
43
- "Bash(devcontainer up:*)",
44
- "Bash(rm:*)",
45
- "WebFetch(domain:github.com)",
46
- "Bash(gem list:*)",
47
- "Bash(bundle check:*)",
48
- "Bash(timeout 600 bundle install)",
49
- "Bash(bundle exec overcommit:*)",
50
- "Bash(zsh:*)",
51
- "Read(//home/ryan/.local/share/mise/installs/ruby/3.4.4/lib/ruby/gems/3.4.0/gems/sequel-5.93.0/lib/sequel/extensions/**)",
52
- "Bash(zsh -l -c 'git status')",
53
- "Bash(zsh -l -c 'git reset HEAD')",
54
- "Bash(zsh -l -c 'git add test/lib/sequel/extensions/test_more_sql.rb')",
55
- "Bash(zsh -l -c 'git commit -m \"\"$(cat <<'\"''\"'EOF'\"''\"'\ntest: add comprehensive tests for more_sql extension\n\nAdd 13 test cases covering create_schema method functionality including\nbasic usage, option handling, edge cases, and extension registration.\n\nšŸ¤– Generated with [Claude Code](https://claude.ai/code)\n\nCo-Authored-By: Claude <noreply@anthropic.com>\nEOF\n)\"\"')",
56
- "Bash(zsh -l -c 'bundle exec rake test')",
57
- "Bash(zsh -l -c 'bundle exec rake lint')"
58
- ],
59
- "deny": []
60
- },
61
- "allowedDirectories": [
62
- "../"
63
- ]
64
- }