activerecord-import 1.4.1 → 1.8.1

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 (63) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/test.yaml +53 -13
  3. data/.gitignore +4 -0
  4. data/.rubocop.yml +7 -4
  5. data/.rubocop_todo.yml +10 -16
  6. data/CHANGELOG.md +48 -1
  7. data/Dockerfile +23 -0
  8. data/Gemfile +15 -7
  9. data/README.markdown +44 -5
  10. data/Rakefile +1 -0
  11. data/activerecord-import.gemspec +4 -0
  12. data/benchmarks/benchmark.rb +3 -3
  13. data/benchmarks/lib/base.rb +2 -2
  14. data/benchmarks/lib/cli_parser.rb +2 -2
  15. data/docker-compose.yml +34 -0
  16. data/gemfiles/7.1.gemfile +3 -0
  17. data/gemfiles/7.2.gemfile +3 -0
  18. data/lib/activerecord-import/active_record/adapters/trilogy_adapter.rb +8 -0
  19. data/lib/activerecord-import/adapters/abstract_adapter.rb +6 -5
  20. data/lib/activerecord-import/adapters/mysql_adapter.rb +24 -18
  21. data/lib/activerecord-import/adapters/postgresql_adapter.rb +26 -18
  22. data/lib/activerecord-import/adapters/sqlite3_adapter.rb +29 -23
  23. data/lib/activerecord-import/adapters/trilogy_adapter.rb +7 -0
  24. data/lib/activerecord-import/import.rb +63 -28
  25. data/lib/activerecord-import/value_sets_parser.rb +1 -0
  26. data/lib/activerecord-import/version.rb +1 -1
  27. data/lib/activerecord-import.rb +0 -1
  28. data/test/adapters/trilogy.rb +9 -0
  29. data/test/database.yml.sample +7 -0
  30. data/test/github/database.yml +4 -0
  31. data/test/jdbcmysql/import_test.rb +3 -3
  32. data/test/jdbcpostgresql/import_test.rb +2 -2
  33. data/test/jdbcsqlite3/import_test.rb +2 -2
  34. data/test/makara_postgis/import_test.rb +2 -2
  35. data/test/models/author.rb +7 -0
  36. data/test/models/bike_maker.rb +1 -0
  37. data/test/models/book.rb +5 -2
  38. data/test/models/composite_book.rb +19 -0
  39. data/test/models/composite_chapter.rb +9 -0
  40. data/test/models/customer.rb +14 -4
  41. data/test/models/order.rb +13 -4
  42. data/test/models/tag.rb +6 -1
  43. data/test/models/tag_alias.rb +7 -1
  44. data/test/models/topic.rb +5 -0
  45. data/test/models/widget.rb +10 -3
  46. data/test/mysql2/import_test.rb +3 -3
  47. data/test/mysql2_makara/import_test.rb +3 -3
  48. data/test/mysqlspatial2/import_test.rb +3 -3
  49. data/test/postgis/import_test.rb +2 -2
  50. data/test/postgresql/import_test.rb +2 -2
  51. data/test/schema/generic_schema.rb +4 -1
  52. data/test/schema/jdbcpostgresql_schema.rb +1 -1
  53. data/test/schema/postgis_schema.rb +1 -1
  54. data/test/schema/postgresql_schema.rb +35 -4
  55. data/test/sqlite3/import_test.rb +2 -2
  56. data/test/support/postgresql/import_examples.rb +12 -0
  57. data/test/support/shared_examples/on_duplicate_key_update.rb +67 -10
  58. data/test/support/shared_examples/recursive_import.rb +67 -1
  59. data/test/test_helper.rb +6 -4
  60. data/test/trilogy/import_test.rb +7 -0
  61. data/test/value_sets_bytes_parser_test.rb +1 -1
  62. data/test/value_sets_records_parser_test.rb +1 -1
  63. metadata +24 -7
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activerecord-import
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.1
4
+ version: 1.8.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Zach Dennis
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-10-07 00:00:00.000000000 Z
11
+ date: 2024-09-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
@@ -51,6 +51,7 @@ files:
51
51
  - ".rubocop_todo.yml"
52
52
  - Brewfile
53
53
  - CHANGELOG.md
54
+ - Dockerfile
54
55
  - Gemfile
55
56
  - LICENSE
56
57
  - README.markdown
@@ -68,6 +69,7 @@ files:
68
69
  - benchmarks/models/test_memory.rb
69
70
  - benchmarks/models/test_myisam.rb
70
71
  - benchmarks/schema/mysql2_schema.rb
72
+ - docker-compose.yml
71
73
  - gemfiles/4.2.gemfile
72
74
  - gemfiles/5.0.gemfile
73
75
  - gemfiles/5.1.gemfile
@@ -75,6 +77,8 @@ files:
75
77
  - gemfiles/6.0.gemfile
76
78
  - gemfiles/6.1.gemfile
77
79
  - gemfiles/7.0.gemfile
80
+ - gemfiles/7.1.gemfile
81
+ - gemfiles/7.2.gemfile
78
82
  - lib/activerecord-import.rb
79
83
  - lib/activerecord-import/active_record/adapters/abstract_adapter.rb
80
84
  - lib/activerecord-import/active_record/adapters/jdbcmysql_adapter.rb
@@ -84,12 +88,14 @@ files:
84
88
  - lib/activerecord-import/active_record/adapters/postgresql_adapter.rb
85
89
  - lib/activerecord-import/active_record/adapters/seamless_database_pool_adapter.rb
86
90
  - lib/activerecord-import/active_record/adapters/sqlite3_adapter.rb
91
+ - lib/activerecord-import/active_record/adapters/trilogy_adapter.rb
87
92
  - lib/activerecord-import/adapters/abstract_adapter.rb
88
93
  - lib/activerecord-import/adapters/em_mysql2_adapter.rb
89
94
  - lib/activerecord-import/adapters/mysql2_adapter.rb
90
95
  - lib/activerecord-import/adapters/mysql_adapter.rb
91
96
  - lib/activerecord-import/adapters/postgresql_adapter.rb
92
97
  - lib/activerecord-import/adapters/sqlite3_adapter.rb
98
+ - lib/activerecord-import/adapters/trilogy_adapter.rb
93
99
  - lib/activerecord-import/base.rb
94
100
  - lib/activerecord-import/import.rb
95
101
  - lib/activerecord-import/mysql2.rb
@@ -111,6 +117,7 @@ files:
111
117
  - test/adapters/seamless_database_pool.rb
112
118
  - test/adapters/spatialite.rb
113
119
  - test/adapters/sqlite3.rb
120
+ - test/adapters/trilogy.rb
114
121
  - test/database.yml.sample
115
122
  - test/github/database.yml
116
123
  - test/import_test.rb
@@ -121,11 +128,14 @@ files:
121
128
  - test/models/account.rb
122
129
  - test/models/alarm.rb
123
130
  - test/models/animal.rb
131
+ - test/models/author.rb
124
132
  - test/models/bike_maker.rb
125
133
  - test/models/book.rb
126
134
  - test/models/car.rb
127
135
  - test/models/card.rb
128
136
  - test/models/chapter.rb
137
+ - test/models/composite_book.rb
138
+ - test/models/composite_chapter.rb
129
139
  - test/models/customer.rb
130
140
  - test/models/deck.rb
131
141
  - test/models/dictionary.rb
@@ -169,13 +179,15 @@ files:
169
179
  - test/support/sqlite3/import_examples.rb
170
180
  - test/synchronize_test.rb
171
181
  - test/test_helper.rb
182
+ - test/trilogy/import_test.rb
172
183
  - test/value_sets_bytes_parser_test.rb
173
184
  - test/value_sets_records_parser_test.rb
174
185
  homepage: https://github.com/zdennis/activerecord-import
175
186
  licenses:
176
187
  - MIT
177
- metadata: {}
178
- post_install_message:
188
+ metadata:
189
+ changelog_uri: https://github.com/zdennis/activerecord-import/blob/master/CHANGELOG.md
190
+ post_install_message:
179
191
  rdoc_options: []
180
192
  require_paths:
181
193
  - lib
@@ -190,8 +202,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
190
202
  - !ruby/object:Gem::Version
191
203
  version: '0'
192
204
  requirements: []
193
- rubygems_version: 3.0.3.1
194
- signing_key:
205
+ rubygems_version: 3.3.9
206
+ signing_key:
195
207
  specification_version: 4
196
208
  summary: Bulk insert extension for ActiveRecord
197
209
  test_files:
@@ -208,6 +220,7 @@ test_files:
208
220
  - test/adapters/seamless_database_pool.rb
209
221
  - test/adapters/spatialite.rb
210
222
  - test/adapters/sqlite3.rb
223
+ - test/adapters/trilogy.rb
211
224
  - test/database.yml.sample
212
225
  - test/github/database.yml
213
226
  - test/import_test.rb
@@ -218,11 +231,14 @@ test_files:
218
231
  - test/models/account.rb
219
232
  - test/models/alarm.rb
220
233
  - test/models/animal.rb
234
+ - test/models/author.rb
221
235
  - test/models/bike_maker.rb
222
236
  - test/models/book.rb
223
237
  - test/models/car.rb
224
238
  - test/models/card.rb
225
239
  - test/models/chapter.rb
240
+ - test/models/composite_book.rb
241
+ - test/models/composite_chapter.rb
226
242
  - test/models/customer.rb
227
243
  - test/models/deck.rb
228
244
  - test/models/dictionary.rb
@@ -266,5 +282,6 @@ test_files:
266
282
  - test/support/sqlite3/import_examples.rb
267
283
  - test/synchronize_test.rb
268
284
  - test/test_helper.rb
285
+ - test/trilogy/import_test.rb
269
286
  - test/value_sets_bytes_parser_test.rb
270
287
  - test/value_sets_records_parser_test.rb