red-arrow 6.0.1 → 9.0.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 (69) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +10 -0
  3. data/ext/arrow/arrow.cpp +12 -0
  4. data/ext/arrow/converters.hpp +49 -10
  5. data/ext/arrow/extconf.rb +7 -5
  6. data/ext/arrow/raw-records.cpp +3 -2
  7. data/ext/arrow/red-arrow.hpp +7 -0
  8. data/ext/arrow/values.cpp +3 -2
  9. data/lib/arrow/array-builder.rb +40 -6
  10. data/lib/arrow/array-computable.rb +37 -0
  11. data/lib/arrow/array.rb +16 -0
  12. data/lib/arrow/chunked-array.rb +21 -0
  13. data/lib/arrow/column.rb +28 -0
  14. data/lib/arrow/data-type.rb +2 -1
  15. data/lib/arrow/datum.rb +2 -0
  16. data/lib/arrow/day-time-interval-array-builder.rb +29 -0
  17. data/lib/arrow/decimal128-array-builder.rb +16 -6
  18. data/lib/arrow/decimal128.rb +14 -0
  19. data/lib/arrow/decimal256-array-builder.rb +16 -6
  20. data/lib/arrow/decimal256.rb +14 -0
  21. data/lib/arrow/field.rb +44 -3
  22. data/lib/arrow/function.rb +52 -0
  23. data/lib/arrow/list-data-type.rb +1 -6
  24. data/lib/arrow/loader.rb +19 -0
  25. data/lib/arrow/month-day-nano-interval-array-builder.rb +29 -0
  26. data/lib/arrow/s3-global-options.rb +38 -0
  27. data/lib/arrow/sort-key.rb +61 -55
  28. data/lib/arrow/sort-options.rb +8 -8
  29. data/lib/arrow/string-array-builder.rb +30 -0
  30. data/lib/arrow/table-loader.rb +99 -62
  31. data/lib/arrow/table-saver.rb +7 -2
  32. data/lib/arrow/table.rb +78 -0
  33. data/lib/arrow/time-unit.rb +31 -0
  34. data/lib/arrow/time32-array-builder.rb +2 -14
  35. data/lib/arrow/time32-data-type.rb +9 -38
  36. data/lib/arrow/time64-array-builder.rb +2 -14
  37. data/lib/arrow/time64-data-type.rb +9 -38
  38. data/lib/arrow/timestamp-array-builder.rb +2 -14
  39. data/lib/arrow/timestamp-data-type.rb +9 -34
  40. data/lib/arrow/version.rb +1 -1
  41. data/red-arrow.gemspec +2 -11
  42. data/test/helper.rb +2 -0
  43. data/test/raw-records/test-basic-arrays.rb +30 -0
  44. data/test/raw-records/test-dense-union-array.rb +27 -0
  45. data/test/raw-records/test-dictionary-array.rb +341 -0
  46. data/test/raw-records/test-list-array.rb +39 -0
  47. data/test/raw-records/test-map-array.rb +37 -0
  48. data/test/raw-records/test-sparse-union-array.rb +27 -0
  49. data/test/raw-records/test-struct-array.rb +30 -0
  50. data/test/test-array-builder.rb +62 -0
  51. data/test/test-chunked-array.rb +6 -0
  52. data/test/test-column.rb +31 -0
  53. data/test/test-decimal128-array-builder.rb +14 -0
  54. data/test/test-decimal128-array.rb +5 -2
  55. data/test/test-decimal128.rb +26 -2
  56. data/test/test-decimal256-array-builder.rb +14 -0
  57. data/test/test-decimal256-array.rb +5 -2
  58. data/test/test-decimal256.rb +26 -2
  59. data/test/test-field.rb +26 -0
  60. data/test/test-function.rb +48 -14
  61. data/test/test-table.rb +204 -6
  62. data/test/values/test-basic-arrays.rb +30 -0
  63. data/test/values/test-dense-union-array.rb +27 -0
  64. data/test/values/test-dictionary-array.rb +325 -0
  65. data/test/values/test-list-array.rb +39 -0
  66. data/test/values/test-map-array.rb +33 -0
  67. data/test/values/test-sparse-union-array.rb +27 -0
  68. data/test/values/test-struct-array.rb +30 -0
  69. metadata +95 -196
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: red-arrow
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.0.1
4
+ version: 9.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Apache Arrow Developers
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-11-19 00:00:00.000000000 Z
11
+ date: 2022-08-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bigdecimal
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 2.0.3
19
+ version: 3.1.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: 2.0.3
26
+ version: 3.1.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: extpp
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -44,14 +44,14 @@ dependencies:
44
44
  requirements:
45
45
  - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: 3.4.9
47
+ version: 3.5.0
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: 3.4.9
54
+ version: 3.5.0
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: native-package-installer
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -80,118 +80,6 @@ dependencies:
80
80
  - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
- - !ruby/object:Gem::Dependency
84
- name: benchmark-driver
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - ">="
88
- - !ruby/object:Gem::Version
89
- version: '0'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: bundler
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- version: '0'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: '0'
111
- - !ruby/object:Gem::Dependency
112
- name: faker
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - ">="
116
- - !ruby/object:Gem::Version
117
- version: '0'
118
- type: :development
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - ">="
123
- - !ruby/object:Gem::Version
124
- version: '0'
125
- - !ruby/object:Gem::Dependency
126
- name: fiddle
127
- requirement: !ruby/object:Gem::Requirement
128
- requirements:
129
- - - ">="
130
- - !ruby/object:Gem::Version
131
- version: 1.0.9
132
- type: :development
133
- prerelease: false
134
- version_requirements: !ruby/object:Gem::Requirement
135
- requirements:
136
- - - ">="
137
- - !ruby/object:Gem::Version
138
- version: 1.0.9
139
- - !ruby/object:Gem::Dependency
140
- name: rake
141
- requirement: !ruby/object:Gem::Requirement
142
- requirements:
143
- - - ">="
144
- - !ruby/object:Gem::Version
145
- version: '0'
146
- type: :development
147
- prerelease: false
148
- version_requirements: !ruby/object:Gem::Requirement
149
- requirements:
150
- - - ">="
151
- - !ruby/object:Gem::Version
152
- version: '0'
153
- - !ruby/object:Gem::Dependency
154
- name: redcarpet
155
- requirement: !ruby/object:Gem::Requirement
156
- requirements:
157
- - - ">="
158
- - !ruby/object:Gem::Version
159
- version: '0'
160
- type: :development
161
- prerelease: false
162
- version_requirements: !ruby/object:Gem::Requirement
163
- requirements:
164
- - - ">="
165
- - !ruby/object:Gem::Version
166
- version: '0'
167
- - !ruby/object:Gem::Dependency
168
- name: test-unit
169
- requirement: !ruby/object:Gem::Requirement
170
- requirements:
171
- - - ">="
172
- - !ruby/object:Gem::Version
173
- version: '0'
174
- type: :development
175
- prerelease: false
176
- version_requirements: !ruby/object:Gem::Requirement
177
- requirements:
178
- - - ">="
179
- - !ruby/object:Gem::Version
180
- version: '0'
181
- - !ruby/object:Gem::Dependency
182
- name: yard
183
- requirement: !ruby/object:Gem::Requirement
184
- requirements:
185
- - - ">="
186
- - !ruby/object:Gem::Version
187
- version: '0'
188
- type: :development
189
- prerelease: false
190
- version_requirements: !ruby/object:Gem::Requirement
191
- requirements:
192
- - - ">="
193
- - !ruby/object:Gem::Version
194
- version: '0'
195
83
  description: Apache Arrow is a common in-memory columnar data store. It's useful to
196
84
  share and process large data.
197
85
  email:
@@ -221,6 +109,7 @@ files:
221
109
  - lib/arrow/aggregate-node-options.rb
222
110
  - lib/arrow/aggregation.rb
223
111
  - lib/arrow/array-builder.rb
112
+ - lib/arrow/array-computable.rb
224
113
  - lib/arrow/array.rb
225
114
  - lib/arrow/bigdecimal-extension.rb
226
115
  - lib/arrow/binary-dictionary-array-builder.rb
@@ -239,6 +128,7 @@ files:
239
128
  - lib/arrow/date64-array-builder.rb
240
129
  - lib/arrow/date64-array.rb
241
130
  - lib/arrow/datum.rb
131
+ - lib/arrow/day-time-interval-array-builder.rb
242
132
  - lib/arrow/decimal128-array-builder.rb
243
133
  - lib/arrow/decimal128-array.rb
244
134
  - lib/arrow/decimal128-data-type.rb
@@ -258,6 +148,7 @@ files:
258
148
  - lib/arrow/file-system.rb
259
149
  - lib/arrow/fixed-size-binary-array-builder.rb
260
150
  - lib/arrow/fixed-size-binary-array.rb
151
+ - lib/arrow/function.rb
261
152
  - lib/arrow/generic-filterable.rb
262
153
  - lib/arrow/generic-takeable.rb
263
154
  - lib/arrow/group.rb
@@ -267,6 +158,7 @@ files:
267
158
  - lib/arrow/map-array-builder.rb
268
159
  - lib/arrow/map-array.rb
269
160
  - lib/arrow/map-data-type.rb
161
+ - lib/arrow/month-day-nano-interval-array-builder.rb
270
162
  - lib/arrow/null-array-builder.rb
271
163
  - lib/arrow/null-array.rb
272
164
  - lib/arrow/path-extension.rb
@@ -280,6 +172,7 @@ files:
280
172
  - lib/arrow/record-containable.rb
281
173
  - lib/arrow/record.rb
282
174
  - lib/arrow/rolling-window.rb
175
+ - lib/arrow/s3-global-options.rb
283
176
  - lib/arrow/scalar.rb
284
177
  - lib/arrow/schema.rb
285
178
  - lib/arrow/slicer.rb
@@ -287,6 +180,7 @@ files:
287
180
  - lib/arrow/sort-options.rb
288
181
  - lib/arrow/source-node-options.rb
289
182
  - lib/arrow/sparse-union-data-type.rb
183
+ - lib/arrow/string-array-builder.rb
290
184
  - lib/arrow/string-dictionary-array-builder.rb
291
185
  - lib/arrow/struct-array-builder.rb
292
186
  - lib/arrow/struct-array.rb
@@ -300,6 +194,7 @@ files:
300
194
  - lib/arrow/table-table-formatter.rb
301
195
  - lib/arrow/table.rb
302
196
  - lib/arrow/tensor.rb
197
+ - lib/arrow/time-unit.rb
303
198
  - lib/arrow/time.rb
304
199
  - lib/arrow/time32-array-builder.rb
305
200
  - lib/arrow/time32-array.rb
@@ -327,6 +222,7 @@ files:
327
222
  - test/helper/omittable.rb
328
223
  - test/raw-records/test-basic-arrays.rb
329
224
  - test/raw-records/test-dense-union-array.rb
225
+ - test/raw-records/test-dictionary-array.rb
330
226
  - test/raw-records/test-list-array.rb
331
227
  - test/raw-records/test-map-array.rb
332
228
  - test/raw-records/test-multiple-columns.rb
@@ -402,6 +298,7 @@ files:
402
298
  - test/test-timestamp-data-type.rb
403
299
  - test/values/test-basic-arrays.rb
404
300
  - test/values/test-dense-union-array.rb
301
+ - test/values/test-dictionary-array.rb
405
302
  - test/values/test-list-array.rb
406
303
  - test/values/test-map-array.rb
407
304
  - test/values/test-sparse-union-array.rb
@@ -410,7 +307,7 @@ homepage: https://arrow.apache.org/
410
307
  licenses:
411
308
  - Apache-2.0
412
309
  metadata:
413
- msys2_mingw_dependencies: arrow>=6.0.1
310
+ msys2_mingw_dependencies: arrow>=9.0.0
414
311
  post_install_message:
415
312
  rdoc_options: []
416
313
  require_paths:
@@ -426,101 +323,103 @@ required_rubygems_version: !ruby/object:Gem::Requirement
426
323
  - !ruby/object:Gem::Version
427
324
  version: '0'
428
325
  requirements: []
429
- rubygems_version: 3.2.27
326
+ rubygems_version: 3.3.15
430
327
  signing_key:
431
328
  specification_version: 4
432
329
  summary: Red Arrow is the Ruby bindings of Apache Arrow
433
330
  test_files:
434
- - test/test-decimal256-array-builder.rb
435
- - test/test-time64-data-type.rb
436
- - test/test-sort-options.rb
437
- - test/test-feather.rb
438
- - test/test-map-array-builder.rb
439
- - test/test-decimal128.rb
440
- - test/test-struct-array.rb
441
- - test/test-string-dictionary-array-builder.rb
442
- - test/test-data-type.rb
443
- - test/test-list-data-type.rb
444
- - test/test-expression.rb
445
- - test/test-dense-union-data-type.rb
446
- - test/test-decimal256-array.rb
331
+ - test/fixture/TestOrcFile.test1.orc
332
+ - test/fixture/float-integer.csv
333
+ - test/fixture/integer-float.csv
334
+ - test/fixture/null-with-double-quote.csv
335
+ - test/fixture/null-without-double-quote.csv
336
+ - test/fixture/with-header-float.csv
337
+ - test/fixture/with-header.csv
338
+ - test/fixture/without-header-float.csv
339
+ - test/fixture/without-header.csv
340
+ - test/helper/fixture.rb
341
+ - test/helper/omittable.rb
447
342
  - test/helper.rb
448
- - test/test-record-batch.rb
449
- - test/test-table.rb
343
+ - test/raw-records/test-basic-arrays.rb
344
+ - test/raw-records/test-dense-union-array.rb
345
+ - test/raw-records/test-dictionary-array.rb
346
+ - test/raw-records/test-list-array.rb
347
+ - test/raw-records/test-map-array.rb
348
+ - test/raw-records/test-multiple-columns.rb
349
+ - test/raw-records/test-sparse-union-array.rb
350
+ - test/raw-records/test-struct-array.rb
351
+ - test/raw-records/test-table.rb
450
352
  - test/run-test.rb
451
- - test/test-timestamp-array.rb
452
- - test/test-date32-array.rb
453
- - test/test-map-array.rb
454
353
  - test/test-array-builder.rb
354
+ - test/test-array.rb
355
+ - test/test-bigdecimal.rb
356
+ - test/test-binary-dictionary-array-builder.rb
357
+ - test/test-boolean-scalar.rb
358
+ - test/test-buffer.rb
359
+ - test/test-chunked-array.rb
360
+ - test/test-column.rb
361
+ - test/test-csv-loader.rb
362
+ - test/test-data-type.rb
363
+ - test/test-date32-array.rb
455
364
  - test/test-date64-array.rb
456
- - test/test-record-batch-file-reader.rb
365
+ - test/test-decimal128-array-builder.rb
366
+ - test/test-decimal128-array.rb
457
367
  - test/test-decimal128-data-type.rb
458
- - test/test-time.rb
459
- - test/test-timestamp-data-type.rb
368
+ - test/test-decimal128.rb
369
+ - test/test-decimal256-array-builder.rb
370
+ - test/test-decimal256-array.rb
371
+ - test/test-decimal256-data-type.rb
460
372
  - test/test-decimal256.rb
373
+ - test/test-dense-union-data-type.rb
461
374
  - test/test-dictionary-array.rb
462
- - test/test-fixed-size-binary-array-builder.rb
463
- - test/test-column.rb
375
+ - test/test-dictionary-data-type.rb
376
+ - test/test-expression.rb
377
+ - test/test-feather.rb
464
378
  - test/test-field.rb
465
- - test/test-decimal128-array.rb
466
- - test/test-csv-loader.rb
467
- - test/test-bigdecimal.rb
379
+ - test/test-file-output-stream.rb
380
+ - test/test-fixed-size-binary-array-builder.rb
468
381
  - test/test-fixed-size-binary-array.rb
469
- - test/test-list-array.rb
470
- - test/test-decimal256-data-type.rb
471
- - test/test-time64-array.rb
472
- - test/test-boolean-scalar.rb
473
- - test/test-rolling-window.rb
474
- - test/test-dictionary-data-type.rb
475
- - test/fixture/integer-float.csv
476
- - test/fixture/without-header-float.csv
477
- - test/fixture/null-with-double-quote.csv
478
- - test/fixture/with-header-float.csv
479
- - test/fixture/TestOrcFile.test1.orc
480
- - test/fixture/null-without-double-quote.csv
481
- - test/fixture/without-header.csv
482
- - test/fixture/with-header.csv
483
- - test/fixture/float-integer.csv
484
- - test/test-orc.rb
485
- - test/test-null-array.rb
486
- - test/test-time32-data-type.rb
487
- - test/test-struct-data-type.rb
488
- - test/test-sort-indices.rb
489
- - test/test-group.rb
490
- - test/test-sort-key.rb
491
- - test/test-buffer.rb
492
382
  - test/test-float-scalar.rb
493
- - test/values/test-struct-array.rb
494
- - test/values/test-map-array.rb
495
- - test/values/test-basic-arrays.rb
496
- - test/values/test-list-array.rb
497
- - test/values/test-dense-union-array.rb
498
- - test/values/test-sparse-union-array.rb
499
383
  - test/test-function.rb
500
- - test/test-memory-view.rb
501
- - test/test-record-batch-reader.rb
502
- - test/test-slicer.rb
384
+ - test/test-group.rb
503
385
  - test/test-list-array-builder.rb
504
- - test/test-sparse-union-data-type.rb
386
+ - test/test-list-array.rb
387
+ - test/test-list-data-type.rb
388
+ - test/test-map-array-builder.rb
389
+ - test/test-map-array.rb
390
+ - test/test-map-data-type.rb
391
+ - test/test-memory-view.rb
392
+ - test/test-null-array.rb
393
+ - test/test-orc.rb
505
394
  - test/test-record-batch-builder.rb
506
- - test/raw-records/test-struct-array.rb
507
- - test/raw-records/test-table.rb
508
- - test/raw-records/test-map-array.rb
509
- - test/raw-records/test-basic-arrays.rb
510
- - test/raw-records/test-list-array.rb
511
- - test/raw-records/test-dense-union-array.rb
512
- - test/raw-records/test-sparse-union-array.rb
513
- - test/raw-records/test-multiple-columns.rb
514
- - test/test-array.rb
515
- - test/test-file-output-stream.rb
395
+ - test/test-record-batch-file-reader.rb
516
396
  - test/test-record-batch-iterator.rb
517
- - test/test-tensor.rb
518
- - test/test-decimal128-array-builder.rb
519
- - test/test-chunked-array.rb
397
+ - test/test-record-batch-reader.rb
398
+ - test/test-record-batch.rb
399
+ - test/test-rolling-window.rb
520
400
  - test/test-schema.rb
521
- - test/test-map-data-type.rb
522
- - test/test-binary-dictionary-array-builder.rb
401
+ - test/test-slicer.rb
402
+ - test/test-sort-indices.rb
403
+ - test/test-sort-key.rb
404
+ - test/test-sort-options.rb
405
+ - test/test-sparse-union-data-type.rb
406
+ - test/test-string-dictionary-array-builder.rb
523
407
  - test/test-struct-array-builder.rb
524
- - test/helper/fixture.rb
525
- - test/helper/omittable.rb
408
+ - test/test-struct-array.rb
409
+ - test/test-struct-data-type.rb
410
+ - test/test-table.rb
411
+ - test/test-tensor.rb
412
+ - test/test-time.rb
526
413
  - test/test-time32-array.rb
414
+ - test/test-time32-data-type.rb
415
+ - test/test-time64-array.rb
416
+ - test/test-time64-data-type.rb
417
+ - test/test-timestamp-array.rb
418
+ - test/test-timestamp-data-type.rb
419
+ - test/values/test-basic-arrays.rb
420
+ - test/values/test-dense-union-array.rb
421
+ - test/values/test-dictionary-array.rb
422
+ - test/values/test-list-array.rb
423
+ - test/values/test-map-array.rb
424
+ - test/values/test-sparse-union-array.rb
425
+ - test/values/test-struct-array.rb