duckdb 0.6.1 → 0.7.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9967f34d6c3a9f9d30fc9c406043230d86ffe98d0ca5cf55e74a547f6877b756
4
- data.tar.gz: e28bce3d7b8410ceff6da630aaa54eab4d345bfab16748f9150dfef6e3836bfe
3
+ metadata.gz: 469588c48fb9f9d16254cd6f78f3fd4ceb1e6886e3fc859a507d635542ba50fa
4
+ data.tar.gz: 1ccee32eb696806c13da87d5c8825965575575e83c45e466712a69bfa107547e
5
5
  SHA512:
6
- metadata.gz: 834d11017be58ad60d8f8d8600e22f7e97dbac4ef2789921d2da8f76487e7df3c60a7458ece7e7d5f3fb7d1aca3bcf178557968131673055c2bf2d932bc982d6
7
- data.tar.gz: f63d824d611095b857310f6f2f1c432d0129be7bbc3d03cb339baf938bd00c43e7911689b988494e4613f4199abf72a1b08c022d7adac26cc29f2e13ecd49883
6
+ metadata.gz: ebd03d8e45cb57530924a62c94e02df312b6d93624c303a1f05fb1a886b9c92aaae208feaa4419774dc325ba4078c3d90b281819dbc695f0d5a37139c787a481
7
+ data.tar.gz: 6096e668ea12bd32950cea838844537ea3ed872398d944e88473f4efc9f9088320dc8f565cd62e9c48522596062a2034d3c89456afc4b2952df42d57492b0b2a
@@ -15,8 +15,8 @@ jobs:
15
15
  runs-on: macos-latest
16
16
  strategy:
17
17
  matrix:
18
- ruby: ['2.6.10', '2.7.7', '3.0.5', '3.1.3', '3.2.0', 'head']
19
- duckdb: ['0.5.1', '0.6.1']
18
+ ruby: ['2.7.7', '3.0.5', '3.1.3', '3.2.1', 'head']
19
+ duckdb: ['0.7.1', '0.6.1']
20
20
 
21
21
  steps:
22
22
  - uses: actions/checkout@v3
@@ -15,8 +15,8 @@ jobs:
15
15
  runs-on: ubuntu-latest
16
16
  strategy:
17
17
  matrix:
18
- ruby: ['2.6.10', '2.7.7', '3.0.5', '3.1.3', '3.2.0', 'head']
19
- duckdb: ['0.5.1', '0.6.1']
18
+ ruby: ['2.7.7', '3.0.5', '3.1.3', '3.2.1', 'head']
19
+ duckdb: ['0.7.1', '0.6.1']
20
20
 
21
21
  steps:
22
22
  - uses: actions/checkout@v3
@@ -15,8 +15,8 @@ jobs:
15
15
  runs-on: windows-latest
16
16
  strategy:
17
17
  matrix:
18
- ruby: ['2.6.10', '2.7.6', '3.0.4', '3.1.2', 'ucrt', 'mingw', 'head']
19
- duckdb: ['0.5.1', '0.6.1']
18
+ ruby: ['2.7.7', '3.0.5', '3.1.3', '3.2.1', 'ucrt', 'mingw', 'mswin', 'head']
19
+ duckdb: ['0.7.1', '0.6.1']
20
20
 
21
21
  steps:
22
22
  - uses: actions/checkout@v3
data/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # ChangeLog
2
2
 
3
+ - bump duckdb to 0.7.1
4
+ - fix docker build error on M1 Mac
5
+
6
+ # 0.7.0
7
+ - bump duckdb to 0.7.0
8
+ - fix have_func argument order
9
+ - remove unused variable in test
10
+ - add DuckDB::LIBRARY_VERSION
11
+ - add DuckDB::Result#_to_string_internal
12
+ - add DuckDB::Result#__to_hugeint_internal
13
+ - add DuckDB::Result#__to_decimal_internal
14
+ - add Ruby 3.2.1 on CI test
15
+ - add Ruby mswin on CI test
16
+ ## Breaking Change
17
+ - drop Ruby 2.6
18
+
3
19
  # 0.6.1
4
20
  - bump Ruby to 3.2.0 on CI
5
21
  - fix deprected warning (double_heap is deprecated in GC.verify_compaction_references) with Ruby 3.2.0 on CI
data/CONTRIBUTION.md CHANGED
@@ -1,5 +1,33 @@
1
1
  # Contribution Guide
2
2
 
3
+ ## Environment setup
4
+
5
+ ### With docker
6
+
7
+ 1. Fork the repository and `git clone` to your local machine.
8
+ 2. Build and access to docker container
9
+
10
+ ```
11
+ docker-compose build ubuntu
12
+ docker-compose run --rm ubuntu bash
13
+ ```
14
+
15
+ In case you want custom ruby or duckdb versions, use `--build-arg` options
16
+ ```
17
+ docker-compose build ubuntu --build-arg RUBY_VERSION=3.1.3 --build-arg DUCKDB_VERSION=0.6.0
18
+ ```
19
+
20
+ ### Without docker
21
+
22
+ 1. Install [Ruby](https://www.ruby-lang.org/) into your local machine.
23
+ 2. Install [duckdb](https://duckdb.org/) into your local machine.
24
+ 3. Fork the repository and `git clone` to your local machine.
25
+ 4. Run `bundle install`
26
+ 5. Run `rake build`
27
+ or you might run with C duckdb header and library directories:
28
+ `rake build -- --with-duckdb-include=/duckdb_header_directory --with-duckdb-lib=/duckdb_library_directory`
29
+
30
+
3
31
  ## Issue
4
32
 
5
33
  If you spot a problem, [search if an issue already exists](https://github.com/suketa/ruby-duckdb/issues).
@@ -8,17 +36,10 @@ If a related issue doesn't exist, you can open a [new issue](https://github.com/
8
36
 
9
37
  ## Fix Issues or Add New Features.
10
38
 
11
- 1. install [Ruby](https://www.ruby-lang.org/) into your local machine.
12
- 2. install [duckdb](https://duckdb.org/) into your local machine.
13
- 3. fork the repository and `git clone` to your local machine.
14
- 4. run `bundle install`
15
- 5. run `rake build`
16
- or you might run with C duckdb header and library directories:
17
- `rake build -- --with-duckdb-include=/duckdb_header_directory --with-duckdb-lib=/duckdb_library_directory`
18
- 6. run `rake test`
19
- 7. create new branch to change the code.
20
- 8. change the code.
21
- 9. write test.
22
- 10. run `rake test` and confirm all tests pass.
23
- 11. git push.
24
- 12. create PR.
39
+ 1. Run `rake test`
40
+ 2. Create new branch to change the code.
41
+ 3. Change the code.
42
+ 4. Write test.
43
+ 5. Run `rake test` and confirm all tests pass.
44
+ 6. Git push.
45
+ 7. Create PR.
data/Dockerfile ADDED
@@ -0,0 +1,21 @@
1
+ ARG RUBY_VERSION=3.2.1
2
+ FROM ruby:${RUBY_VERSION}
3
+
4
+ ARG DUCKDB_VERSION=0.7.1
5
+
6
+ RUN apt update -qq && \
7
+ apt install -y build-essential curl git wget
8
+
9
+ COPY getduckdb.sh .
10
+ RUN ./getduckdb.sh
11
+
12
+ RUN unzip duckdb.zip -d libduckdb
13
+ RUN mv libduckdb/duckdb.* /usr/local/include
14
+ RUN mv libduckdb/libduckdb.so /usr/local/lib
15
+ RUN ldconfig /usr/local/lib
16
+
17
+ COPY . /root/ruby-duckdb
18
+ WORKDIR /root/ruby-duckdb
19
+ RUN git config --global --add safe.directory /root/ruby-duckdb
20
+ RUN bundle install
21
+ RUN rake build
data/Gemfile.lock CHANGED
@@ -1,14 +1,14 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- duckdb (0.6.1)
4
+ duckdb (0.7.1)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
8
8
  specs:
9
- minitest (5.16.3)
9
+ minitest (5.17.0)
10
10
  rake (13.0.6)
11
- rake-compiler (1.2.0)
11
+ rake-compiler (1.2.1)
12
12
  rake
13
13
 
14
14
  PLATFORMS
@@ -21,6 +21,3 @@ DEPENDENCIES
21
21
  minitest (~> 5.0)
22
22
  rake (~> 13.0)
23
23
  rake-compiler
24
-
25
- BUNDLED WITH
26
- 2.3.22
@@ -0,0 +1,12 @@
1
+ version: '3'
2
+ services:
3
+ ubuntu:
4
+ build:
5
+ context: .
6
+ dockerfile: ./Dockerfile
7
+ args:
8
+ - RUBY_VERSION
9
+ - DUCKDB_VERSION
10
+ working_dir: /root/ruby-duckdb
11
+ volumes:
12
+ - .:/root/ruby-duckdb
data/duckdb.gemspec CHANGED
@@ -26,7 +26,7 @@ Gem::Specification.new do |spec|
26
26
  end
27
27
  spec.require_paths = ['lib']
28
28
  spec.extensions = ['ext/duckdb/extconf.rb']
29
- spec.required_ruby_version = '>= 2.6.0'
29
+ spec.required_ruby_version = '>= 2.7.0'
30
30
 
31
31
  spec.add_development_dependency 'bundler', '~> 2.3'
32
32
  spec.add_development_dependency 'minitest', '~> 5.0'
@@ -2,7 +2,7 @@ require 'mkmf'
2
2
 
3
3
  def duckdb_library_available?(func)
4
4
  header = find_header('duckdb.h') || find_header('duckdb.h', '/opt/homebrew/include')
5
- library = have_func('duckdb', func) || find_library('duckdb', func, '/opt/homebrew/opt/duckdb/lib')
5
+ library = have_func(func, 'duckdb.h') || find_library('duckdb', func, '/opt/homebrew/opt/duckdb/lib')
6
6
  header && library
7
7
  end
8
8
 
@@ -22,13 +22,10 @@ dir_config('duckdb')
22
22
 
23
23
  check_duckdb_library('duckdb_pending_prepared', '0.5.0')
24
24
 
25
- # check duckdb >= 0.3.3
26
- # ducdb >= 0.3.3 if duckdb_append_data_chunk() is defined.
27
- have_func('duckdb_append_data_chunk', 'duckdb.h')
28
-
29
25
  # check duckdb >= 0.6.0
30
26
  have_func('duckdb_value_string', 'duckdb.h')
31
27
 
32
- have_func('duckdb_free', 'duckdb.h')
28
+ # check duckdb >= 0.7.0
29
+ have_func('duckdb_extract_statements', 'duckdb.h')
33
30
 
34
31
  create_makefile('duckdb/duckdb_native')
@@ -68,7 +68,7 @@ static VALUE duckdb_prepared_statement_initialize(VALUE self, VALUE con, VALUE q
68
68
  static VALUE duckdb_prepared_statement_nparams(VALUE self) {
69
69
  rubyDuckDBPreparedStatement *ctx;
70
70
  TypedData_Get_Struct(self, rubyDuckDBPreparedStatement, &prepared_statement_data_type, ctx);
71
- return rb_int2big(duckdb_nparams(ctx->prepared_statement));
71
+ return ULL2NUM(duckdb_nparams(ctx->prepared_statement));
72
72
  }
73
73
 
74
74
 
@@ -86,7 +86,7 @@ static VALUE duckdb_prepared_statement_execute(VALUE self) {
86
86
  }
87
87
 
88
88
  static idx_t check_index(VALUE vidx) {
89
- idx_t idx = FIX2INT(vidx);
89
+ idx_t idx = NUM2ULL(vidx);
90
90
  if (idx <= 0) {
91
91
  rb_raise(rb_eArgError, "index of parameter must be greater than 0");
92
92
  }
data/ext/duckdb/result.c CHANGED
@@ -10,6 +10,8 @@ static VALUE to_ruby_obj_smallint(duckdb_result *result, idx_t col_idx, idx_t ro
10
10
  static VALUE to_ruby_obj_utinyint(duckdb_result *result, idx_t col_idx, idx_t row_idx);
11
11
  static VALUE to_ruby_obj_integer(duckdb_result *result, idx_t col_idx, idx_t row_idx);
12
12
  static VALUE to_ruby_obj_bigint(duckdb_result *result, idx_t col_idx, idx_t row_idx);
13
+ static VALUE to_ruby_obj_hugeint(duckdb_result *result, idx_t col_idx, idx_t row_idx);
14
+ static VALUE to_ruby_obj_decimal(duckdb_result *result, idx_t col_idx, idx_t row_idx);
13
15
  static VALUE to_ruby_obj_float(duckdb_result *result, idx_t col_idx, idx_t row_idx);
14
16
  static VALUE to_ruby_obj_double(duckdb_result *result, idx_t col_idx, idx_t row_idx);
15
17
  static VALUE to_ruby_obj_blob(duckdb_result *result, idx_t col_idx, idx_t row_idx);
@@ -24,9 +26,12 @@ static VALUE duckdb_result__to_smallint(VALUE oDuckDBResult, VALUE row_idx, VALU
24
26
  static VALUE duckdb_result__to_utinyint(VALUE oDuckDBResult, VALUE row_idx, VALUE col_idx);
25
27
  static VALUE duckdb_result__to_integer(VALUE oDuckDBResult, VALUE row_idx, VALUE col_idx);
26
28
  static VALUE duckdb_result__to_bigint(VALUE oDuckDBResult, VALUE row_idx, VALUE col_idx);
29
+ static VALUE duckdb_result___to_hugeint_internal(VALUE oDuckDBResult, VALUE row_idx, VALUE col_idx);
30
+ static VALUE duckdb_result___to_decimal_internal(VALUE oDuckDBResult, VALUE row_idx, VALUE col_idx);
27
31
  static VALUE duckdb_result__to_float(VALUE oDuckDBResult, VALUE row_idx, VALUE col_idx);
28
32
  static VALUE duckdb_result__to_double(VALUE oDuckDBResult, VALUE row_idx, VALUE col_idx);
29
33
  static VALUE duckdb_result__to_string(VALUE oDuckDBResult, VALUE row_idx, VALUE col_idx);
34
+ static VALUE duckdb_result__to_string_internal(VALUE oDuckDBResult, VALUE row_idx, VALUE col_idx);
30
35
  static VALUE duckdb_result__to_blob(VALUE oDuckDBResult, VALUE row_idx, VALUE col_idx);
31
36
  static VALUE duckdb_result__enum_internal_type(VALUE oDuckDBResult, VALUE col_idx);
32
37
  static VALUE duckdb_result__enum_dictionary_size(VALUE oDuckDBResult, VALUE col_idx);
@@ -82,7 +87,17 @@ static VALUE to_ruby_obj_integer(duckdb_result *result, idx_t col_idx, idx_t row
82
87
 
83
88
  static VALUE to_ruby_obj_bigint(duckdb_result *result, idx_t col_idx, idx_t row_idx) {
84
89
  int64_t i64val = duckdb_value_int64(result, col_idx, row_idx);
85
- return rb_int2big(i64val);
90
+ return LL2NUM(i64val);
91
+ }
92
+
93
+ static VALUE to_ruby_obj_hugeint(duckdb_result *result, idx_t col_idx, idx_t row_idx) {
94
+ duckdb_hugeint hugeint = duckdb_value_hugeint(result, col_idx, row_idx);
95
+ return rb_ary_new3(2, ULL2NUM(hugeint.lower), LL2NUM(hugeint.upper));
96
+ }
97
+
98
+ static VALUE to_ruby_obj_decimal(duckdb_result *result, idx_t col_idx, idx_t row_idx) {
99
+ duckdb_decimal decimal = duckdb_value_decimal(result, col_idx, row_idx);
100
+ return rb_ary_new3(4, ULL2NUM(decimal.value.lower), LL2NUM(decimal.value.upper), UINT2NUM(decimal.width), UINT2NUM(decimal.scale));
86
101
  }
87
102
 
88
103
  static VALUE to_ruby_obj_float(duckdb_result *result, idx_t col_idx, idx_t row_idx) {
@@ -255,6 +270,20 @@ static VALUE duckdb_result__to_bigint(VALUE oDuckDBResult, VALUE row_idx, VALUE
255
270
  return to_ruby_obj_bigint(&(ctx->result), NUM2LL(col_idx), NUM2LL(row_idx));
256
271
  }
257
272
 
273
+ static VALUE duckdb_result___to_hugeint_internal(VALUE oDuckDBResult, VALUE row_idx, VALUE col_idx) {
274
+ rubyDuckDBResult *ctx;
275
+ TypedData_Get_Struct(oDuckDBResult, rubyDuckDBResult, &result_data_type, ctx);
276
+
277
+ return to_ruby_obj_hugeint(&(ctx->result), NUM2LL(col_idx), NUM2LL(row_idx));
278
+ }
279
+
280
+ static VALUE duckdb_result___to_decimal_internal(VALUE oDuckDBResult, VALUE row_idx, VALUE col_idx) {
281
+ rubyDuckDBResult *ctx;
282
+ TypedData_Get_Struct(oDuckDBResult, rubyDuckDBResult, &result_data_type, ctx);
283
+
284
+ return to_ruby_obj_decimal(&(ctx->result), NUM2LL(col_idx), NUM2LL(row_idx));
285
+ }
286
+
258
287
  static VALUE duckdb_result__to_float(VALUE oDuckDBResult, VALUE row_idx, VALUE col_idx) {
259
288
  rubyDuckDBResult *ctx;
260
289
  TypedData_Get_Struct(oDuckDBResult, rubyDuckDBResult, &result_data_type, ctx);
@@ -295,6 +324,30 @@ static VALUE duckdb_result__to_string(VALUE oDuckDBResult, VALUE row_idx, VALUE
295
324
  return Qnil;
296
325
  }
297
326
 
327
+ static VALUE duckdb_result__to_string_internal(VALUE oDuckDBResult, VALUE row_idx, VALUE col_idx) {
328
+ rubyDuckDBResult *ctx;
329
+ #ifdef HAVE_DUCKDB_H_GE_V060
330
+ duckdb_string p;
331
+ #else
332
+ char *p;
333
+ #endif
334
+ VALUE obj;
335
+ TypedData_Get_Struct(oDuckDBResult, rubyDuckDBResult, &result_data_type, ctx);
336
+
337
+ #ifdef HAVE_DUCKDB_H_GE_V060
338
+ p = duckdb_value_string_internal(&(ctx->result), NUM2LL(col_idx), NUM2LL(row_idx));
339
+ if (p.data) {
340
+ obj = rb_utf8_str_new(p.data, p.size);
341
+ #else
342
+ p = duckdb_value_varchar_internal(&(ctx->result), NUM2LL(col_idx), NUM2LL(row_idx));
343
+ if (p) {
344
+ obj = rb_utf8_str_new_cstr(p);
345
+ #endif
346
+ return obj;
347
+ }
348
+ return Qnil;
349
+ }
350
+
298
351
  static VALUE duckdb_result__to_blob(VALUE oDuckDBResult, VALUE row_idx, VALUE col_idx) {
299
352
  rubyDuckDBResult *ctx;
300
353
  TypedData_Get_Struct(oDuckDBResult, rubyDuckDBResult, &result_data_type, ctx);
@@ -365,9 +418,12 @@ void init_duckdb_result(void) {
365
418
  rb_define_private_method(cDuckDBResult, "_to_utinyint", duckdb_result__to_utinyint, 2);
366
419
  rb_define_private_method(cDuckDBResult, "_to_integer", duckdb_result__to_integer, 2);
367
420
  rb_define_private_method(cDuckDBResult, "_to_bigint", duckdb_result__to_bigint, 2);
421
+ rb_define_private_method(cDuckDBResult, "__to_hugeint_internal", duckdb_result___to_hugeint_internal, 2);
422
+ rb_define_private_method(cDuckDBResult, "__to_decimal_internal", duckdb_result___to_decimal_internal, 2);
368
423
  rb_define_private_method(cDuckDBResult, "_to_float", duckdb_result__to_float, 2);
369
424
  rb_define_private_method(cDuckDBResult, "_to_double", duckdb_result__to_double, 2);
370
425
  rb_define_private_method(cDuckDBResult, "_to_string", duckdb_result__to_string, 2);
426
+ rb_define_private_method(cDuckDBResult, "_to_string_internal", duckdb_result__to_string_internal, 2);
371
427
  rb_define_private_method(cDuckDBResult, "_to_blob", duckdb_result__to_blob, 2);
372
428
  rb_define_private_method(cDuckDBResult, "_enum_internal_type", duckdb_result__enum_internal_type, 1);
373
429
  rb_define_private_method(cDuckDBResult, "_enum_dictionary_size", duckdb_result__enum_dictionary_size, 1);
@@ -4,14 +4,14 @@
4
4
  #include "ruby.h"
5
5
  #include <duckdb.h>
6
6
 
7
- #ifdef HAVE_DUCKDB_APPEND_DATA_CHUNK
8
- #define HAVE_DUCKDB_H_GE_V033 1
9
- #endif
10
-
11
7
  #ifdef HAVE_DUCKDB_VALUE_STRING
12
8
  #define HAVE_DUCKDB_H_GE_V060 1
13
9
  #endif
14
10
 
11
+ #ifdef HAVE_DUCKDB_EXTRACT_STATEMENTS
12
+ #define HAVE_DUCKDB_H_GE_V070 1
13
+ #endif
14
+
15
15
  #include "./error.h"
16
16
  #include "./database.h"
17
17
  #include "./connection.h"
data/getduckdb.sh ADDED
@@ -0,0 +1,10 @@
1
+ #!/bin/sh
2
+
3
+ MACHINE=`uname -m`
4
+
5
+ case "$MACHINE" in
6
+ "x86_64" ) ARC=amd64 ;;
7
+ "aarch64" ) ARC=aarch64 ;;
8
+ esac
9
+
10
+ wget -O duckdb.zip "https://github.com/duckdb/duckdb/releases/download/v$DUCKDB_VERSION/libduckdb-linux-$ARC.zip"
@@ -0,0 +1,3 @@
1
+ module DuckDB
2
+ LIBRARY_VERSION = library_version[1..] if defined? library_version
3
+ end
@@ -1,5 +1,5 @@
1
1
  module DuckDB
2
2
  # The version string of ruby-duckdb.
3
3
  # Currently, ruby-duckdb is NOT semantic versioning.
4
- VERSION = '0.6.1'.freeze
4
+ VERSION = '0.7.1'.freeze
5
5
  end
data/lib/duckdb.rb CHANGED
@@ -1,4 +1,5 @@
1
1
  require 'duckdb/duckdb_native'
2
+ require 'duckdb/library_version'
2
3
  require 'duckdb/version'
3
4
  require 'duckdb/converter'
4
5
  require 'duckdb/database'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: duckdb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.1
4
+ version: 0.7.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Masaki Suketa
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-12-30 00:00:00.000000000 Z
11
+ date: 2023-03-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -81,6 +81,7 @@ files:
81
81
  - ".gitignore"
82
82
  - CHANGELOG.md
83
83
  - CONTRIBUTION.md
84
+ - Dockerfile
84
85
  - Gemfile
85
86
  - Gemfile.lock
86
87
  - LICENSE
@@ -88,6 +89,7 @@ files:
88
89
  - Rakefile
89
90
  - bin/console
90
91
  - bin/setup
92
+ - docker-compose.yml
91
93
  - duckdb.gemspec
92
94
  - ext/duckdb/appender.c
93
95
  - ext/duckdb/appender.h
@@ -112,6 +114,7 @@ files:
112
114
  - ext/duckdb/ruby-duckdb.h
113
115
  - ext/duckdb/util.c
114
116
  - ext/duckdb/util.h
117
+ - getduckdb.sh
115
118
  - lib/duckdb.rb
116
119
  - lib/duckdb/appender.rb
117
120
  - lib/duckdb/column.rb
@@ -119,6 +122,7 @@ files:
119
122
  - lib/duckdb/connection.rb
120
123
  - lib/duckdb/converter.rb
121
124
  - lib/duckdb/database.rb
125
+ - lib/duckdb/library_version.rb
122
126
  - lib/duckdb/prepared_statement.rb
123
127
  - lib/duckdb/result.rb
124
128
  - lib/duckdb/version.rb
@@ -137,14 +141,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
137
141
  requirements:
138
142
  - - ">="
139
143
  - !ruby/object:Gem::Version
140
- version: 2.6.0
144
+ version: 2.7.0
141
145
  required_rubygems_version: !ruby/object:Gem::Requirement
142
146
  requirements:
143
147
  - - ">="
144
148
  - !ruby/object:Gem::Version
145
149
  version: '0'
146
150
  requirements: []
147
- rubygems_version: 3.4.1
151
+ rubygems_version: 3.4.6
148
152
  signing_key:
149
153
  specification_version: 4
150
154
  summary: This module is Ruby binding for DuckDB database engine.