sqlite3 1.3.12-x64-mingw32 → 1.5.0.rc2-x64-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. checksums.yaml +5 -5
  2. data/.gemtest +0 -0
  3. data/{API_CHANGES.rdoc → API_CHANGES.md} +3 -4
  4. data/CHANGELOG.md +425 -0
  5. data/CONTRIBUTING.md +24 -0
  6. data/Gemfile +2 -14
  7. data/LICENSE-DEPENDENCIES +20 -0
  8. data/README.md +233 -0
  9. data/ext/sqlite3/aggregator.c +273 -0
  10. data/ext/sqlite3/aggregator.h +12 -0
  11. data/ext/sqlite3/database.c +171 -206
  12. data/ext/sqlite3/database.h +2 -0
  13. data/ext/sqlite3/exception.c +6 -2
  14. data/ext/sqlite3/extconf.rb +236 -55
  15. data/ext/sqlite3/sqlite3.c +12 -1
  16. data/ext/sqlite3/sqlite3_ruby.h +3 -7
  17. data/ext/sqlite3/statement.c +15 -20
  18. data/faq/faq.md +431 -0
  19. data/faq/faq.yml +1 -1
  20. data/lib/sqlite3/2.6/sqlite3_native.so +0 -0
  21. data/lib/sqlite3/2.7/sqlite3_native.so +0 -0
  22. data/lib/sqlite3/3.0/sqlite3_native.so +0 -0
  23. data/lib/sqlite3/constants.rb +2 -1
  24. data/lib/sqlite3/database.rb +202 -52
  25. data/lib/sqlite3/errors.rb +1 -10
  26. data/lib/sqlite3/pragmas.rb +17 -19
  27. data/lib/sqlite3/resultset.rb +2 -10
  28. data/lib/sqlite3/statement.rb +2 -1
  29. data/lib/sqlite3/translator.rb +1 -1
  30. data/lib/sqlite3/version.rb +4 -4
  31. data/test/helper.rb +9 -0
  32. data/test/test_database.rb +127 -11
  33. data/test/test_database_flags.rb +95 -0
  34. data/test/test_database_readwrite.rb +41 -0
  35. data/test/test_integration.rb +12 -81
  36. data/test/test_integration_aggregate.rb +336 -0
  37. data/test/test_integration_resultset.rb +0 -17
  38. data/test/test_sqlite3.rb +9 -0
  39. data/test/test_statement.rb +12 -9
  40. metadata +55 -85
  41. data/CHANGELOG.rdoc +0 -292
  42. data/Manifest.txt +0 -52
  43. data/README.rdoc +0 -118
  44. data/Rakefile +0 -10
  45. data/lib/sqlite3/2.0/sqlite3_native.so +0 -0
  46. data/lib/sqlite3/2.1/sqlite3_native.so +0 -0
  47. data/lib/sqlite3/2.2/sqlite3_native.so +0 -0
  48. data/lib/sqlite3/2.3/sqlite3_native.so +0 -0
  49. data/setup.rb +0 -1333
  50. data/tasks/faq.rake +0 -9
  51. data/tasks/gem.rake +0 -38
  52. data/tasks/native.rake +0 -52
  53. data/tasks/vendor_sqlite3.rake +0 -97
@@ -0,0 +1,336 @@
1
+ require 'helper'
2
+
3
+ class TC_Integration_Aggregate < SQLite3::TestCase
4
+ def setup
5
+ @db = SQLite3::Database.new(":memory:")
6
+ @db.transaction do
7
+ @db.execute "create table foo ( a integer primary key, b text, c integer )"
8
+ @db.execute "insert into foo ( b, c ) values ( 'foo', 10 )"
9
+ @db.execute "insert into foo ( b, c ) values ( 'bar', 11 )"
10
+ @db.execute "insert into foo ( b, c ) values ( 'bar', 12 )"
11
+ end
12
+ end
13
+
14
+ def teardown
15
+ @db.close
16
+ end
17
+
18
+ def test_create_aggregate_without_block
19
+ step = proc do |ctx,a|
20
+ ctx[:sum] ||= 0
21
+ ctx[:sum] += a.to_i
22
+ end
23
+
24
+ final = proc { |ctx| ctx.result = ctx[:sum] }
25
+
26
+ @db.create_aggregate( "accumulate", 1, step, final )
27
+
28
+ value = @db.get_first_value( "select accumulate(a) from foo" )
29
+ assert_equal 6, value
30
+
31
+ # calling #get_first_value twice don't add up to the latest result
32
+ value = @db.get_first_value( "select accumulate(a) from foo" )
33
+ assert_equal 6, value
34
+ end
35
+
36
+ def test_create_aggregate_with_block
37
+ @db.create_aggregate( "accumulate", 1 ) do
38
+ step do |ctx,a|
39
+ ctx[:sum] ||= 0
40
+ ctx[:sum] += a.to_i
41
+ end
42
+
43
+ finalize { |ctx| ctx.result = ctx[:sum] }
44
+ end
45
+
46
+ value = @db.get_first_value( "select accumulate(a) from foo" )
47
+ assert_equal 6, value
48
+ end
49
+
50
+ def test_create_aggregate_with_group_by
51
+ @db.create_aggregate( "accumulate", 1 ) do
52
+ step do |ctx,a|
53
+ ctx[:sum] ||= 0
54
+ ctx[:sum] += a.to_i
55
+ end
56
+
57
+ finalize { |ctx| ctx.result = ctx[:sum] }
58
+ end
59
+
60
+ values = @db.execute( "select b, accumulate(c) from foo group by b order by b" )
61
+ assert_equal "bar", values[0][0]
62
+ assert_equal 23, values[0][1]
63
+ assert_equal "foo", values[1][0]
64
+ assert_equal 10, values[1][1]
65
+ end
66
+
67
+ def test_create_aggregate_with_the_same_function_twice_in_a_query
68
+ @db.create_aggregate( "accumulate", 1 ) do
69
+ step do |ctx,a|
70
+ ctx[:sum] ||= 0
71
+ ctx[:sum] += a.to_i
72
+ end
73
+
74
+ finalize { |ctx| ctx.result = ctx[:sum] }
75
+ end
76
+
77
+ values = @db.get_first_row( "select accumulate(a), accumulate(c) from foo" )
78
+ assert_equal 6, values[0]
79
+ assert_equal 33, values[1]
80
+ end
81
+
82
+ def test_create_aggregate_with_two_different_functions
83
+ @db.create_aggregate( "accumulate", 1 ) do
84
+ step do |ctx,a|
85
+ ctx[:sum] ||= 0
86
+ ctx[:sum] += a.to_i
87
+ end
88
+
89
+ finalize { |ctx| ctx.result = ctx[:sum] }
90
+ end
91
+
92
+ @db.create_aggregate( "multiply", 1 ) do
93
+ step do |ctx,a|
94
+ ctx[:sum] ||= 1
95
+ ctx[:sum] *= a.to_i
96
+ end
97
+
98
+ finalize { |ctx| ctx.result = ctx[:sum] }
99
+ end
100
+
101
+ GC.start
102
+
103
+ values = @db.get_first_row( "select accumulate(a), multiply(c) from foo" )
104
+ assert_equal 6, values[0]
105
+ assert_equal 1320, values[1]
106
+
107
+ value = @db.get_first_value( "select accumulate(c) from foo")
108
+ assert_equal 33, value
109
+
110
+ value = @db.get_first_value( "select multiply(a) from foo")
111
+ assert_equal 6, value
112
+ end
113
+
114
+ def test_create_aggregate_overwrite_function
115
+ @db.create_aggregate( "accumulate", 1 ) do
116
+ step do |ctx,a|
117
+ ctx[:sum] ||= 0
118
+ ctx[:sum] += a.to_i
119
+ end
120
+
121
+ finalize { |ctx| ctx.result = ctx[:sum] }
122
+ end
123
+
124
+ value = @db.get_first_value( "select accumulate(c) from foo")
125
+ assert_equal 33, value
126
+
127
+ GC.start
128
+
129
+ @db.create_aggregate( "accumulate", 1 ) do
130
+ step do |ctx,a|
131
+ ctx[:sum] ||= 1
132
+ ctx[:sum] *= a.to_i
133
+ end
134
+
135
+ finalize { |ctx| ctx.result = ctx[:sum] }
136
+ end
137
+
138
+ value = @db.get_first_value( "select accumulate(c) from foo")
139
+ assert_equal 1320, value
140
+ end
141
+
142
+ def test_create_aggregate_overwrite_function_with_different_arity
143
+ @db.create_aggregate( "accumulate", -1 ) do
144
+ step do |ctx,*args|
145
+ ctx[:sum] ||= 0
146
+ args.each { |a| ctx[:sum] += a.to_i }
147
+ end
148
+
149
+ finalize { |ctx| ctx.result = ctx[:sum] }
150
+ end
151
+
152
+ @db.create_aggregate( "accumulate", 2 ) do
153
+ step do |ctx,a,b|
154
+ ctx[:sum] ||= 1
155
+ ctx[:sum] *= (a.to_i + b.to_i)
156
+ end
157
+
158
+ finalize { |ctx| ctx.result = ctx[:sum] }
159
+ end
160
+
161
+ GC.start
162
+
163
+ values = @db.get_first_row( "select accumulate(c), accumulate(a,c) from foo")
164
+ assert_equal 33, values[0]
165
+ assert_equal 2145, values[1]
166
+ end
167
+
168
+ def test_create_aggregate_with_invalid_arity
169
+ assert_raise ArgumentError do
170
+ @db.create_aggregate( "accumulate", 1000 ) do
171
+ step {|ctx,*args| }
172
+ finalize { |ctx| }
173
+ end
174
+ end
175
+ end
176
+
177
+ class CustomException < Exception
178
+ end
179
+
180
+ def test_create_aggregate_with_exception_in_step
181
+ @db.create_aggregate( "raiseexception", 1 ) do
182
+ step do |ctx,a|
183
+ raise CustomException.new( "bogus aggregate handler" )
184
+ end
185
+
186
+ finalize { |ctx| ctx.result = 42 }
187
+ end
188
+
189
+ assert_raise CustomException do
190
+ @db.get_first_value( "select raiseexception(a) from foo")
191
+ end
192
+ end
193
+
194
+ def test_create_aggregate_with_exception_in_finalize
195
+ @db.create_aggregate( "raiseexception", 1 ) do
196
+ step do |ctx,a|
197
+ raise CustomException.new( "bogus aggregate handler" )
198
+ end
199
+
200
+ finalize do |ctx|
201
+ raise CustomException.new( "bogus aggregate handler" )
202
+ end
203
+ end
204
+
205
+ assert_raise CustomException do
206
+ @db.get_first_value( "select raiseexception(a) from foo")
207
+ end
208
+ end
209
+
210
+ def test_create_aggregate_with_no_data
211
+ @db.create_aggregate( "accumulate", 1 ) do
212
+ step do |ctx,a|
213
+ ctx[:sum] ||= 0
214
+ ctx[:sum] += a.to_i
215
+ end
216
+
217
+ finalize { |ctx| ctx.result = ctx[:sum] || 0 }
218
+ end
219
+
220
+ value = @db.get_first_value(
221
+ "select accumulate(a) from foo where a = 100" )
222
+ assert_equal 0, value
223
+ end
224
+
225
+ class AggregateHandler
226
+ class << self
227
+ def arity; 1; end
228
+ def text_rep; SQLite3::Constants::TextRep::ANY; end
229
+ def name; "multiply"; end
230
+ end
231
+ def step(ctx, a)
232
+ ctx[:buffer] ||= 1
233
+ ctx[:buffer] *= a.to_i
234
+ end
235
+ def finalize(ctx); ctx.result = ctx[:buffer]; end
236
+ end
237
+
238
+ def test_aggregate_initialized_twice
239
+ initialized = 0
240
+ handler = Class.new(AggregateHandler) do
241
+ define_method(:initialize) do
242
+ initialized += 1
243
+ super()
244
+ end
245
+ end
246
+
247
+ @db.create_aggregate_handler handler
248
+ @db.get_first_value( "select multiply(a) from foo" )
249
+ @db.get_first_value( "select multiply(a) from foo" )
250
+ assert_equal 2, initialized
251
+ end
252
+
253
+ def test_create_aggregate_handler_call_with_wrong_arity
254
+ @db.create_aggregate_handler AggregateHandler
255
+
256
+ assert_raise(SQLite3::SQLException) do
257
+ @db.get_first_value( "select multiply(a,c) from foo" )
258
+ end
259
+ end
260
+
261
+ class RaiseExceptionStepAggregateHandler
262
+ class << self
263
+ def arity; 1; end
264
+ def text_rep; SQLite3::Constants::TextRep::ANY; end
265
+ def name; "raiseexception"; end
266
+ end
267
+ def step(ctx, a)
268
+ raise CustomException.new( "bogus aggregate handler" )
269
+ end
270
+ def finalize(ctx); ctx.result = nil; end
271
+ end
272
+
273
+ def test_create_aggregate_handler_with_exception_step
274
+ @db.create_aggregate_handler RaiseExceptionStepAggregateHandler
275
+ assert_raise CustomException do
276
+ @db.get_first_value( "select raiseexception(a) from foo")
277
+ end
278
+ end
279
+
280
+ class RaiseExceptionNewAggregateHandler
281
+ class << self
282
+ def name; "raiseexception"; end
283
+ end
284
+ def initialize
285
+ raise CustomException.new( "bogus aggregate handler" )
286
+ end
287
+ def step(ctx, a); end
288
+ def finalize(ctx); ctx.result = nil; end
289
+ end
290
+
291
+ def test_create_aggregate_handler_with_exception_new
292
+ @db.create_aggregate_handler RaiseExceptionNewAggregateHandler
293
+ assert_raise CustomException do
294
+ @db.get_first_value( "select raiseexception(a) from foo")
295
+ end
296
+ end
297
+
298
+ def test_create_aggregate_handler
299
+ @db.create_aggregate_handler AggregateHandler
300
+ value = @db.get_first_value( "select multiply(a) from foo" )
301
+ assert_equal 6, value
302
+ end
303
+
304
+ class AccumulateAggregator
305
+ def step(*args)
306
+ @sum ||= 0
307
+ args.each { |a| @sum += a.to_i }
308
+ end
309
+
310
+ def finalize
311
+ @sum
312
+ end
313
+ end
314
+
315
+ class AccumulateAggregator2
316
+ def step(a, b)
317
+ @sum ||= 1
318
+ @sum *= (a.to_i + b.to_i)
319
+ end
320
+
321
+ def finalize
322
+ @sum
323
+ end
324
+ end
325
+
326
+ def test_define_aggregator_with_two_different_arities
327
+ @db.define_aggregator( "accumulate", AccumulateAggregator.new )
328
+ @db.define_aggregator( "accumulate", AccumulateAggregator2.new )
329
+
330
+ GC.start
331
+
332
+ values = @db.get_first_row( "select accumulate(c), accumulate(a,c) from foo")
333
+ assert_equal 33, values[0]
334
+ assert_equal 2145, values[1]
335
+ end
336
+ end
@@ -105,23 +105,6 @@ class TC_ResultSet < SQLite3::TestCase
105
105
  assert_equal hash[1], "foo"
106
106
  end
107
107
 
108
- def test_tainted_results_as_hash
109
- @db.results_as_hash = true
110
- @result.reset( 1 )
111
- row = @result.next
112
- row.each do |_, v|
113
- assert(v.tainted?) if String === v
114
- end
115
- end
116
-
117
- def test_tainted_row_values
118
- @result.reset( 1 )
119
- row = @result.next
120
- row.each do |v|
121
- assert(v.tainted?) if String === v
122
- end
123
- end
124
-
125
108
  def test_each
126
109
  called = 0
127
110
  @result.reset( 1, 2 )
data/test/test_sqlite3.rb CHANGED
@@ -17,5 +17,14 @@ module SQLite3
17
17
  refute SQLite3.threadsafe?
18
18
  end
19
19
  end
20
+
21
+ def test_version_strings
22
+ skip if SQLite3::VERSION.include?("test") # see set-version-to-timestamp rake task
23
+ assert_equal(SQLite3::VERSION, SQLite3::VersionProxy::STRING)
24
+ end
25
+
26
+ def test_compiled_version_and_loaded_version
27
+ assert_equal(SQLite3::SQLITE_VERSION, SQLite3::SQLITE_LOADED_VERSION)
28
+ end
20
29
  end
21
30
  end
@@ -34,7 +34,7 @@ module SQLite3
34
34
  # UNIQUE constraint failed: *table_name*.*column_name*
35
35
  # Older versions of SQLite return:
36
36
  # column *column_name* is not unique
37
- assert_match /(column(s)? .* (is|are) not unique|UNIQUE constraint failed: .*)/, exception.message
37
+ assert_match(/(column(s)? .* (is|are) not unique|UNIQUE constraint failed: .*)/, exception.message)
38
38
  end
39
39
 
40
40
  ###
@@ -119,7 +119,15 @@ module SQLite3
119
119
  assert_equal [nil], result
120
120
  end
121
121
 
122
- def test_bind_blobs
122
+ def test_bind_blob
123
+ @db.execute('create table foo(text BLOB)')
124
+ stmt = SQLite3::Statement.new(@db, 'insert into foo(text) values (?)')
125
+ stmt.bind_param(1, SQLite3::Blob.new('hello'))
126
+ stmt.execute
127
+ row = @db.execute('select * from foo')
128
+
129
+ assert_equal ['hello'], row.first
130
+ assert_equal ['blob'], row.first.types
123
131
  end
124
132
 
125
133
  def test_bind_64
@@ -190,11 +198,6 @@ module SQLite3
190
198
  assert_equal ['foo'], r
191
199
  end
192
200
 
193
- def test_tainted
194
- r = @stmt.step
195
- assert r.first.tainted?
196
- end
197
-
198
201
  def test_step_twice
199
202
  assert_not_nil @stmt.step
200
203
  assert !@stmt.done?
@@ -216,7 +219,7 @@ module SQLite3
216
219
 
217
220
  def test_column_name
218
221
  assert_equal "'foo'", @stmt.column_name(0)
219
- assert_equal nil, @stmt.column_name(10)
222
+ assert_nil @stmt.column_name(10)
220
223
  end
221
224
 
222
225
  def test_bind_parameter_count
@@ -243,7 +246,7 @@ module SQLite3
243
246
  assert stmt.execute('employee-2')
244
247
  end
245
248
 
246
- def test_clear_bindings
249
+ def test_clear_bindings!
247
250
  stmt = @db.prepare('select ?, ?')
248
251
  stmt.bind_param 1, "foo"
249
252
  stmt.bind_param 2, "bar"
metadata CHANGED
@@ -1,16 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sqlite3
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.12
4
+ version: 1.5.0.rc2
5
5
  platform: x64-mingw32
6
6
  authors:
7
7
  - Jamis Buck
8
8
  - Luis Lavena
9
9
  - Aaron Patterson
10
- autorequire:
10
+ autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2016-10-09 00:00:00.000000000 Z
13
+ date: 2022-08-30 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: minitest
@@ -18,98 +18,62 @@ dependencies:
18
18
  requirements:
19
19
  - - "~>"
20
20
  - !ruby/object:Gem::Version
21
- version: '5.9'
21
+ version: '5.15'
22
22
  type: :development
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
26
  - - "~>"
27
27
  - !ruby/object:Gem::Version
28
- version: '5.9'
29
- - !ruby/object:Gem::Dependency
30
- name: rdoc
31
- requirement: !ruby/object:Gem::Requirement
32
- requirements:
33
- - - "~>"
34
- - !ruby/object:Gem::Version
35
- version: '4.0'
36
- type: :development
37
- prerelease: false
38
- version_requirements: !ruby/object:Gem::Requirement
39
- requirements:
40
- - - "~>"
41
- - !ruby/object:Gem::Version
42
- version: '4.0'
28
+ version: '5.15'
43
29
  - !ruby/object:Gem::Dependency
44
30
  name: rake-compiler
45
31
  requirement: !ruby/object:Gem::Requirement
46
32
  requirements:
47
33
  - - "~>"
48
34
  - !ruby/object:Gem::Version
49
- version: 0.9.3
35
+ version: 1.2.0
50
36
  type: :development
51
37
  prerelease: false
52
38
  version_requirements: !ruby/object:Gem::Requirement
53
39
  requirements:
54
40
  - - "~>"
55
41
  - !ruby/object:Gem::Version
56
- version: 0.9.3
42
+ version: 1.2.0
57
43
  - !ruby/object:Gem::Dependency
58
44
  name: rake-compiler-dock
59
45
  requirement: !ruby/object:Gem::Requirement
60
46
  requirements:
61
47
  - - "~>"
62
48
  - !ruby/object:Gem::Version
63
- version: 0.5.2
49
+ version: 1.2.1
64
50
  type: :development
65
51
  prerelease: false
66
52
  version_requirements: !ruby/object:Gem::Requirement
67
53
  requirements:
68
54
  - - "~>"
69
55
  - !ruby/object:Gem::Version
70
- version: 0.5.2
56
+ version: 1.2.1
71
57
  - !ruby/object:Gem::Dependency
72
- name: mini_portile
58
+ name: rdoc
73
59
  requirement: !ruby/object:Gem::Requirement
74
60
  requirements:
75
- - - "~>"
61
+ - - ">="
76
62
  - !ruby/object:Gem::Version
77
- version: 0.6.2
78
- type: :development
79
- prerelease: false
80
- version_requirements: !ruby/object:Gem::Requirement
81
- requirements:
82
- - - "~>"
83
- - !ruby/object:Gem::Version
84
- version: 0.6.2
85
- - !ruby/object:Gem::Dependency
86
- name: hoe-bundler
87
- requirement: !ruby/object:Gem::Requirement
88
- requirements:
89
- - - "~>"
63
+ version: '4.0'
64
+ - - "<"
90
65
  - !ruby/object:Gem::Version
91
- version: '1.0'
66
+ version: '7'
92
67
  type: :development
93
68
  prerelease: false
94
69
  version_requirements: !ruby/object:Gem::Requirement
95
70
  requirements:
96
- - - "~>"
97
- - !ruby/object:Gem::Version
98
- version: '1.0'
99
- - !ruby/object:Gem::Dependency
100
- name: hoe
101
- requirement: !ruby/object:Gem::Requirement
102
- requirements:
103
- - - "~>"
71
+ - - ">="
104
72
  - !ruby/object:Gem::Version
105
- version: '3.15'
106
- type: :development
107
- prerelease: false
108
- version_requirements: !ruby/object:Gem::Requirement
109
- requirements:
110
- - - "~>"
73
+ version: '4.0'
74
+ - - "<"
111
75
  - !ruby/object:Gem::Version
112
- version: '3.15'
76
+ version: '7'
113
77
  description: |-
114
78
  This module allows Ruby programs to interface with the SQLite3
115
79
  database engine (http://www.sqlite.org). You must have the
@@ -117,30 +81,30 @@ description: |-
117
81
 
118
82
  Note that this module is only compatible with SQLite 3.6.16 or newer.
119
83
  email:
120
- - jamis@37signals.com
121
- - luislavena@gmail.com
122
- - aaron@tenderlovemaking.com
123
84
  executables: []
124
85
  extensions: []
125
86
  extra_rdoc_files:
126
- - API_CHANGES.rdoc
127
- - CHANGELOG.rdoc
128
- - Manifest.txt
129
- - README.rdoc
87
+ - API_CHANGES.md
88
+ - CHANGELOG.md
89
+ - README.md
90
+ - ext/sqlite3/aggregator.c
130
91
  - ext/sqlite3/backup.c
131
92
  - ext/sqlite3/database.c
132
93
  - ext/sqlite3/exception.c
133
94
  - ext/sqlite3/sqlite3.c
134
95
  - ext/sqlite3/statement.c
135
96
  files:
136
- - API_CHANGES.rdoc
137
- - CHANGELOG.rdoc
97
+ - ".gemtest"
98
+ - API_CHANGES.md
99
+ - CHANGELOG.md
100
+ - CONTRIBUTING.md
138
101
  - ChangeLog.cvs
139
102
  - Gemfile
140
103
  - LICENSE
141
- - Manifest.txt
142
- - README.rdoc
143
- - Rakefile
104
+ - LICENSE-DEPENDENCIES
105
+ - README.md
106
+ - ext/sqlite3/aggregator.c
107
+ - ext/sqlite3/aggregator.h
144
108
  - ext/sqlite3/backup.c
145
109
  - ext/sqlite3/backup.h
146
110
  - ext/sqlite3/database.c
@@ -152,13 +116,13 @@ files:
152
116
  - ext/sqlite3/sqlite3_ruby.h
153
117
  - ext/sqlite3/statement.c
154
118
  - ext/sqlite3/statement.h
119
+ - faq/faq.md
155
120
  - faq/faq.rb
156
121
  - faq/faq.yml
157
122
  - lib/sqlite3.rb
158
- - lib/sqlite3/2.0/sqlite3_native.so
159
- - lib/sqlite3/2.1/sqlite3_native.so
160
- - lib/sqlite3/2.2/sqlite3_native.so
161
- - lib/sqlite3/2.3/sqlite3_native.so
123
+ - lib/sqlite3/2.6/sqlite3_native.so
124
+ - lib/sqlite3/2.7/sqlite3_native.so
125
+ - lib/sqlite3/3.0/sqlite3_native.so
162
126
  - lib/sqlite3/constants.rb
163
127
  - lib/sqlite3/database.rb
164
128
  - lib/sqlite3/errors.rb
@@ -168,19 +132,17 @@ files:
168
132
  - lib/sqlite3/translator.rb
169
133
  - lib/sqlite3/value.rb
170
134
  - lib/sqlite3/version.rb
171
- - setup.rb
172
- - tasks/faq.rake
173
- - tasks/gem.rake
174
- - tasks/native.rake
175
- - tasks/vendor_sqlite3.rake
176
135
  - test/helper.rb
177
136
  - test/test_backup.rb
178
137
  - test/test_collation.rb
179
138
  - test/test_database.rb
139
+ - test/test_database_flags.rb
180
140
  - test/test_database_readonly.rb
141
+ - test/test_database_readwrite.rb
181
142
  - test/test_deprecated.rb
182
143
  - test/test_encoding.rb
183
144
  - test/test_integration.rb
145
+ - test/test_integration_aggregate.rb
184
146
  - test/test_integration_open_close.rb
185
147
  - test/test_integration_pending.rb
186
148
  - test/test_integration_resultset.rb
@@ -191,28 +153,36 @@ files:
191
153
  - test/test_statement_execute.rb
192
154
  homepage: https://github.com/sparklemotion/sqlite3-ruby
193
155
  licenses:
194
- - BSD-3
195
- metadata: {}
196
- post_install_message:
156
+ - BSD-3-Clause
157
+ metadata:
158
+ homepage_uri: https://github.com/sparklemotion/sqlite3-ruby
159
+ bug_tracker_uri: https://github.com/sparklemotion/sqlite3-ruby/issues
160
+ documentation_uri: https://www.rubydoc.info/gems/sqlite3
161
+ changelog_uri: https://github.com/sparklemotion/sqlite3-ruby/blob/master/CHANGELOG.md
162
+ source_code_uri: https://github.com/sparklemotion/sqlite3-ruby
163
+ rubygems_mfa_required: 'true'
164
+ post_install_message:
197
165
  rdoc_options:
198
166
  - "--main"
199
- - README.rdoc
167
+ - README.md
200
168
  require_paths:
201
169
  - lib
202
170
  required_ruby_version: !ruby/object:Gem::Requirement
203
171
  requirements:
204
172
  - - ">="
205
173
  - !ruby/object:Gem::Version
206
- version: 1.8.7
174
+ version: '2.6'
175
+ - - "<"
176
+ - !ruby/object:Gem::Version
177
+ version: 3.1.dev
207
178
  required_rubygems_version: !ruby/object:Gem::Requirement
208
179
  requirements:
209
- - - ">="
180
+ - - ">"
210
181
  - !ruby/object:Gem::Version
211
- version: 1.3.5
182
+ version: 1.3.1
212
183
  requirements: []
213
- rubyforge_project:
214
- rubygems_version: 2.5.1
215
- signing_key:
184
+ rubygems_version: 3.3.4
185
+ signing_key:
216
186
  specification_version: 4
217
187
  summary: This module allows Ruby programs to interface with the SQLite3 database engine
218
188
  (http://www.sqlite.org)