sqlite3 1.6.7-arm64-darwin → 1.6.8-arm64-darwin

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 06e7a2b06673d4e82a58a7ae2bae40d71c88bc3febec6a8480ac99210de8eb9c
4
- data.tar.gz: be280d7fc48fdf2e576296fdaa47e48c5224936958a8e7cb90445cdbceacce87
3
+ metadata.gz: 2959790f267545cadbc72d91425cac0f1add9975b21ce7e96fc6e572666091dd
4
+ data.tar.gz: a85c4ced75677691ab9cfdd6d138c5c01954a16c24ac4add0b0bc49bc469c9a9
5
5
  SHA512:
6
- metadata.gz: 8db519db54629bea9b1545fc3a9f103878c604fe94d5b9107ebc14f139bc79d1d99fa783a6bc6fc4d50f393f15f669396d0cefbaf5a5a3d8763e13458271995c
7
- data.tar.gz: d5545854058bb8ad245bd34b559c56688771138970b55b1c90aab00da4fcb7ef0782413234d83044fe2b75aeff757a5c4d18575831d188e74fd9f0178372c74c
6
+ metadata.gz: e0f977413f73b8e6aff7c12fd702faf96e30f5423134c27c3f9b531e8452531838c300ceec3abdca86c121ee25ff87281034ea25e6342effc1844291cde6495a
7
+ data.tar.gz: afed3842c8643342f1ecd000a480924e2bf89a1c672b030a37a98965cbd9d716aa10298f56ef899e5885fcff9f7242e37953cb5e0412e93f28b4433eb89d1319
data/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # sqlite3-ruby Changelog
2
2
 
3
+ ## 1.6.8 / 2023-11-01
4
+
5
+ ### Dependencies
6
+
7
+ - Vendored sqlite is updated to [v3.44.0](https://sqlite.org/releaselog/3_44_0.html). @flavorjones
8
+ - rake-compiler-dock updated to v1.3.1 for precompiled native gems. @flavorjones
9
+
10
+
11
+ ### Added
12
+
13
+ - `SQLite3::Database.open` now returns the block result. Previously this returned the Database object. [#415] @toy
14
+ - Documentation improvement in `lib/sqlite3/database.rb`. [#421] @szTheory
15
+
16
+
3
17
  ## 1.6.7 / 2023-10-10
4
18
 
5
19
  ### Dependencies
data/Gemfile CHANGED
@@ -4,8 +4,7 @@ gemspec
4
4
 
5
5
  gem("minitest", "5.20.0")
6
6
  gem("rake-compiler", "1.2.5")
7
- gem("rake-compiler-dock", "1.3.0")
7
+ gem("rake-compiler-dock", "1.3.1")
8
8
  gem("rdoc", "6.5.0")
9
- gem("psych", "5.1.0")
10
9
 
11
10
  gem("ruby_memcheck", "2.2.0") if Gem::Platform.local.os == "linux"
data/dependencies.yml CHANGED
@@ -1,15 +1,14 @@
1
1
  # TODO: stop using symbols here once we no longer support Ruby 2.7 and can rely on symbolize_names
2
2
  :sqlite3:
3
3
  # checksum verified by first checking the published sha3(256) checksum against https://sqlite.org/download.html:
4
- # a7463a45ed58849200858e514b79f7e5f5d69850047897c5b659a78a0bc75cc1
4
+ # 6869046465eae886f1a9f2c8debeeba44d34328693aa77a5bd4a3cfed93d6556
5
5
  #
6
- # $ sha3sum -a 256 ports/archives/sqlite-autoconf-3430200.tar.gz
7
- # a7463a45ed58849200858e514b79f7e5f5d69850047897c5b659a78a0bc75cc1 ports/archives/sqlite-autoconf-3430200.tar.gz
6
+ # $ sha3sum -a 256 ports/archives/sqlite-autoconf-3440000.tar.gz
7
+ # 6869046465eae886f1a9f2c8debeeba44d34328693aa77a5bd4a3cfed93d6556 ports/archives/sqlite-autoconf-3440000.tar.gz
8
8
  #
9
- # $ sha256sum ports/archives/sqlite-autoconf-3430200.tar.gz
10
- # 6d422b6f62c4de2ca80d61860e3a3fb693554d2f75bb1aaca743ccc4d6f609f0 ports/archives/sqlite-autoconf-3430200.tar.gz
11
- #
12
- :version: "3.43.2"
9
+ # $ sha256sum ports/archives/sqlite-autoconf-3440000.tar.gz
10
+ # b9cd386e7cd22af6e0d2a0f06d0404951e1bef109e42ea06cc0450e10cd15550 ports/archives/sqlite-autoconf-3440000.tar.gz
11
+ :version: "3.44.0"
13
12
  :files:
14
- - :url: "https://sqlite.org/2023/sqlite-autoconf-3430200.tar.gz"
15
- :sha256: "6d422b6f62c4de2ca80d61860e3a3fb693554d2f75bb1aaca743ccc4d6f609f0"
13
+ - :url: "https://sqlite.org/2023/sqlite-autoconf-3440000.tar.gz"
14
+ :sha256: "b9cd386e7cd22af6e0d2a0f06d0404951e1bef109e42ea06cc0450e10cd15550"
Binary file
Binary file
Binary file
Binary file
@@ -18,7 +18,7 @@ module SQLite3
18
18
  # end
19
19
  # end
20
20
  #
21
- # It wraps the lower-level methods provides by the selected driver, and
21
+ # It wraps the lower-level methods provided by the selected driver, and
22
22
  # includes the Pragmas module for access to various pragma convenience
23
23
  # methods.
24
24
  #
@@ -39,7 +39,22 @@ module SQLite3
39
39
 
40
40
  class << self
41
41
 
42
- alias :open :new
42
+ # Without block works exactly as new.
43
+ # With block, like new closes the database at the end, but unlike new
44
+ # returns the result of the block instead of the database instance.
45
+ def open( *args )
46
+ database = new(*args)
47
+
48
+ if block_given?
49
+ begin
50
+ yield database
51
+ ensure
52
+ database.close
53
+ end
54
+ else
55
+ database
56
+ end
57
+ end
43
58
 
44
59
  # Quotes the given string, making it safe to use in an SQL statement.
45
60
  # It replaces all instances of the single-quote character with two
@@ -1,11 +1,11 @@
1
1
  module SQLite3
2
2
 
3
- VERSION = "1.6.7"
3
+ VERSION = "1.6.8"
4
4
 
5
5
  module VersionProxy
6
6
  MAJOR = 1
7
7
  MINOR = 6
8
- TINY = 7
8
+ TINY = 8
9
9
  BUILD = nil
10
10
 
11
11
  STRING = [ MAJOR, MINOR, TINY, BUILD ].compact.join( "." )
@@ -198,11 +198,25 @@ module SQLite3
198
198
 
199
199
  def test_new
200
200
  db = SQLite3::Database.new(':memory:')
201
- assert db
201
+ assert_instance_of(SQLite3::Database, db)
202
202
  ensure
203
203
  db.close if db
204
204
  end
205
205
 
206
+ def test_open
207
+ db = SQLite3::Database.open(':memory:')
208
+ assert_instance_of(SQLite3::Database, db)
209
+ ensure
210
+ db.close if db
211
+ end
212
+
213
+ def test_open_returns_block_result
214
+ result = SQLite3::Database.open(':memory:') do |db|
215
+ :foo
216
+ end
217
+ assert_equal :foo, result
218
+ end
219
+
206
220
  def test_new_yields_self
207
221
  thing = nil
208
222
  SQLite3::Database.new(':memory:') do |db|
@@ -211,6 +225,14 @@ module SQLite3
211
225
  assert_instance_of(SQLite3::Database, thing)
212
226
  end
213
227
 
228
+ def test_open_yields_self
229
+ thing = nil
230
+ SQLite3::Database.open(':memory:') do |db|
231
+ thing = db
232
+ end
233
+ assert_instance_of(SQLite3::Database, thing)
234
+ end
235
+
214
236
  def test_new_with_options
215
237
  # determine if Ruby is running on Big Endian platform
216
238
  utf16 = ([1].pack("I") == [1].pack("N")) ? "UTF-16BE" : "UTF-16LE"
@@ -221,7 +243,7 @@ module SQLite3
221
243
  db = SQLite3::Database.new(Iconv.conv(utf16, 'UTF-8', ':memory:'),
222
244
  :utf16 => true)
223
245
  end
224
- assert db
246
+ assert_instance_of(SQLite3::Database, db)
225
247
  ensure
226
248
  db.close if db
227
249
  end
@@ -241,6 +263,15 @@ module SQLite3
241
263
  assert thing.closed?
242
264
  end
243
265
 
266
+ def test_open_with_block_closes_self
267
+ thing = nil
268
+ SQLite3::Database.open(':memory:') do |db|
269
+ thing = db
270
+ assert !thing.closed?
271
+ end
272
+ assert thing.closed?
273
+ end
274
+
244
275
  def test_block_closes_self_even_raised
245
276
  thing = nil
246
277
  begin
@@ -253,6 +284,18 @@ module SQLite3
253
284
  assert thing.closed?
254
285
  end
255
286
 
287
+ def test_open_with_block_closes_self_even_raised
288
+ thing = nil
289
+ begin
290
+ SQLite3::Database.open(':memory:') do |db|
291
+ thing = db
292
+ raise
293
+ end
294
+ rescue
295
+ end
296
+ assert thing.closed?
297
+ end
298
+
256
299
  def test_prepare
257
300
  db = SQLite3::Database.new(':memory:')
258
301
  stmt = db.prepare('select "hello world"')
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sqlite3
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.7
4
+ version: 1.6.8
5
5
  platform: arm64-darwin
6
6
  authors:
7
7
  - Jamis Buck
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2023-10-10 00:00:00.000000000 Z
14
+ date: 2023-11-01 00:00:00.000000000 Z
15
15
  dependencies: []
16
16
  description: |
17
17
  Ruby library to interface with the SQLite3 database engine (http://www.sqlite.org). Precompiled