sqlite3 2.4.0 → 2.5.0.rc1

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: d7072ef601e918956fb58ac179ce3f2a0c15c902f351a4c481aa96de1d914737
4
- data.tar.gz: ef4ebff5ce7115c648328b15d4fef3815ef87d758a88f75efa312bd02f2a0985
3
+ metadata.gz: acaf05cd64d42ef4e5fb84ac2f46f5b3c73af0c16da41251796e73ed5b2e6bf7
4
+ data.tar.gz: 7251ef9f03cde93cabb787fd792dff45b41abf2c62c561ff24d528462e24a2ea
5
5
  SHA512:
6
- metadata.gz: ee54dbf7fa2f6c323e7d98203f2e60ea41b1369ba758a0e58334d75e867b232e77fdedd3e9348d35a53716f996c1ce3cabe6dd776d468ab971ee24ee94f30714
7
- data.tar.gz: 98389cc2e59650e1963ee24bdaaf5d13f1bfb10da4b333a2dbba4beb55f219ffbe65fa512086f206b9ed29471f5ab1e646c5e4e34dc9882aff682378d73274ed
6
+ metadata.gz: 42a3933c2d8877bc9f3f795e4613f566ec6aa739075f6119af52cc5a668b260a2222885e7968f3ce5703d458b3286382166b7536a241351b00944ebd58dd71c8
7
+ data.tar.gz: be80f3d5a1e2815f8e36417af5979f792c31f84856f677ce0cc56e3c528a96ca7fd2aeb60680b4265b46c091a186dff3c3656a9482abd39a72cece5a1f7821be
data/CHANGELOG.md CHANGED
@@ -1,5 +1,36 @@
1
1
  # sqlite3-ruby Changelog
2
2
 
3
+ ## 2.5.0.rc1 / 2024-12-14
4
+
5
+ ### Ruby
6
+
7
+ This release introduces native gem packages that include Ruby 3.4.
8
+
9
+
10
+ ## 2.4.1 / 2024-12-08
11
+
12
+ ### Dependencies
13
+
14
+ - Vendored sqlite is updated to [v3.47.2](https://sqlite.org/releaselog/3_47.2.html) #593 @flavorjones
15
+
16
+ The description from the upstream maintainers is:
17
+
18
+ > SQLite version 3.47.2, now available, fixes an important bug that first appeared in the 3.47.0
19
+ > release. In SQLite versions 3.47.0 and 3.47.1, if you try to convert a string into a
20
+ > floating-point value and the first 16 significant digits of the value are exactly
21
+ > "1844674407370955", then the floating-point number generated might be incorrect. The problem
22
+ > only affects x64 and i386 CPUs, so it does not affect you if you are running on ARM. And it only
23
+ > affects releases 3.47.0 and 3.47.1. **If you are running SQLite versions 3.47.0 or 3.47.1, then
24
+ > upgrading is recommended.**
25
+
26
+ Saving you a click, you should upgrade if you're running sqlite3-ruby v2.1.1 or later.
27
+
28
+
29
+ ### Fixed
30
+
31
+ - Prevent unnecessary "Invalid Reference" warnings from the `ForkSafety` module when GC runs during the "after fork" hook. #592 @flavorjones
32
+
33
+
3
34
  ## 2.4.0 / 2024-12-03
4
35
 
5
36
  ### Added
data/README.md CHANGED
@@ -9,20 +9,20 @@ Note that this module is only compatible with SQLite 3.6.16 or newer.
9
9
  * Source code: https://github.com/sparklemotion/sqlite3-ruby
10
10
  * Mailing list: http://groups.google.com/group/sqlite3-ruby
11
11
  * Download: http://rubygems.org/gems/sqlite3
12
- * Documentation: http://www.rubydoc.info/gems/sqlite3
12
+ * Documentation: https://sparklemotion.github.io/sqlite3-ruby/
13
13
 
14
14
  [![Test suite](https://github.com/sparklemotion/sqlite3-ruby/actions/workflows/ci.yml/badge.svg)](https://github.com/sparklemotion/sqlite3-ruby/actions/workflows/ci.yml)
15
15
 
16
16
 
17
17
  ## Quick start
18
18
 
19
- For help understanding the SQLite3 Ruby API, please read the [FAQ](./FAQ.md) and the [full API documentation](https://rubydoc.info/gems/sqlite3).
19
+ For help understanding the SQLite3 Ruby API, please read the [FAQ](./FAQ.md) and the [full API documentation](https://sparklemotion.github.io/sqlite3-ruby/).
20
20
 
21
21
  A few key classes whose APIs are often-used are:
22
22
 
23
- - SQLite3::Database ([rdoc](https://rubydoc.info/gems/sqlite3/SQLite3/Database))
24
- - SQLite3::Statement ([rdoc](https://rubydoc.info/gems/sqlite3/SQLite3/Statement))
25
- - SQLite3::ResultSet ([rdoc](https://rubydoc.info/gems/sqlite3/SQLite3/ResultSet))
23
+ - SQLite3::Database ([rdoc](https://sparklemotion.github.io/sqlite3-ruby/SQLite3/Database.html))
24
+ - SQLite3::Statement ([rdoc](https://sparklemotion.github.io/sqlite3-ruby/SQLite3/Statement.html))
25
+ - SQLite3::ResultSet ([rdoc](https://sparklemotion.github.io/sqlite3-ruby/SQLite3/ResultSet.html))
26
26
 
27
27
  If you have any questions that you feel should be addressed in the FAQ, please send them to [the mailing list](http://groups.google.com/group/sqlite3-ruby) or open a [discussion thread](https://github.com/sparklemotion/sqlite3-ruby/discussions/categories/q-a).
28
28
 
data/dependencies.yml CHANGED
@@ -1,13 +1,13 @@
1
1
  sqlite3:
2
2
  # checksum verified by first checking the published sha3(256) checksum against https://sqlite.org/download.html:
3
- # c6c1756fbeb1e34e0ee31f8609bfc1fd4630b3faadde71a28ad3a55df259d854
3
+ # 52cd4a2304b627abbabe1a438ba853d0f6edb8e2774fcb5773c7af11077afe94
4
4
  #
5
- # $ sha3sum -a 256 ports/archives/sqlite-autoconf-3470100.tar.gz
6
- # c6c1756fbeb1e34e0ee31f8609bfc1fd4630b3faadde71a28ad3a55df259d854 ports/archives/sqlite-autoconf-3470100.tar.gz
5
+ # $ sha3sum -a 256 ports/archives/sqlite-autoconf-3470200.tar.gz
6
+ # 52cd4a2304b627abbabe1a438ba853d0f6edb8e2774fcb5773c7af11077afe94 ports/archives/sqlite-autoconf-3470200.tar.gz
7
7
  #
8
- # $ sha256sum ports/archives/sqlite-autoconf-3470100.tar.gz
9
- # 416a6f45bf2cacd494b208fdee1beda509abda951d5f47bc4f2792126f01b452 ports/archives/sqlite-autoconf-3470100.tar.gz
10
- version: "3.47.1"
8
+ # $ sha256sum ports/archives/sqlite-autoconf-3470200.tar.gz
9
+ # f1b2ee412c28d7472bc95ba996368d6f0cdcf00362affdadb27ed286c179540b ports/archives/sqlite-autoconf-3470200.tar.gz
10
+ version: "3.47.2"
11
11
  files:
12
- - url: "https://sqlite.org/2024/sqlite-autoconf-3470100.tar.gz"
13
- sha256: "416a6f45bf2cacd494b208fdee1beda509abda951d5f47bc4f2792126f01b452"
12
+ - url: "https://sqlite.org/2024/sqlite-autoconf-3470200.tar.gz"
13
+ sha256: "f1b2ee412c28d7472bc95ba996368d6f0cdcf00362affdadb27ed286c179540b"
@@ -74,6 +74,15 @@ module SQLite3
74
74
  # #enable_load_extension; however it is still necessary to call #enable_load_extensions before any
75
75
  # subsequently invocations of #load_extension on the initialized Database object.
76
76
  #
77
+ # You can load extensions in a Rails application by using the +extensions:+ configuration option:
78
+ #
79
+ # # config/database.yml
80
+ # development:
81
+ # adapter: sqlite3
82
+ # extensions:
83
+ # - .sqlpkg/nalgeon/crypto/crypto.so # a filesystem path
84
+ # - <%= SQLean::UUID.to_path %> # or ruby code returning a path
85
+ #
77
86
  class Database
78
87
  attr_reader :collations
79
88
 
@@ -35,17 +35,21 @@ module SQLite3
35
35
  @databases.each do |db|
36
36
  next unless db.weakref_alive?
37
37
 
38
- unless db.closed? || db.readonly?
39
- unless warned
40
- # If you are here, you may want to read
41
- # https://github.com/sparklemotion/sqlite3-ruby/pull/558
42
- warn("Writable sqlite database connection(s) were inherited from a forked process. " \
43
- "This is unsafe and the connections are being closed to prevent possible data " \
44
- "corruption. Please close writable sqlite database connections before forking.",
45
- uplevel: 0)
46
- warned = true
38
+ begin
39
+ unless db.closed? || db.readonly?
40
+ unless warned
41
+ # If you are here, you may want to read
42
+ # https://github.com/sparklemotion/sqlite3-ruby/pull/558
43
+ warn("Writable sqlite database connection(s) were inherited from a forked process. " \
44
+ "This is unsafe and the connections are being closed to prevent possible data " \
45
+ "corruption. Please close writable sqlite database connections before forking.",
46
+ uplevel: 0)
47
+ warned = true
48
+ end
49
+ db.close
47
50
  end
48
- db.close
51
+ rescue WeakRef::RefError
52
+ # GC may run while this method is executing, and that's OK
49
53
  end
50
54
  end
51
55
  @databases.clear
@@ -1,4 +1,4 @@
1
1
  module SQLite3
2
2
  # (String) the version of the sqlite3 gem, e.g. "2.1.1"
3
- VERSION = "2.4.0"
3
+ VERSION = "2.5.0.rc1"
4
4
  end
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: 2.4.0
4
+ version: 2.5.0.rc1
5
5
  platform: ruby
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: 2024-12-03 00:00:00.000000000 Z
14
+ date: 2024-12-14 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: mini_portile2
@@ -77,14 +77,14 @@ files:
77
77
  - lib/sqlite3/value.rb
78
78
  - lib/sqlite3/version.rb
79
79
  - lib/sqlite3/version_info.rb
80
- - ports/archives/sqlite-autoconf-3470100.tar.gz
80
+ - ports/archives/sqlite-autoconf-3470200.tar.gz
81
81
  homepage: https://github.com/sparklemotion/sqlite3-ruby
82
82
  licenses:
83
83
  - BSD-3-Clause
84
84
  metadata:
85
85
  homepage_uri: https://github.com/sparklemotion/sqlite3-ruby
86
86
  bug_tracker_uri: https://github.com/sparklemotion/sqlite3-ruby/issues
87
- documentation_uri: https://www.rubydoc.info/gems/sqlite3
87
+ documentation_uri: https://sparklemotion.github.io/sqlite3-ruby/
88
88
  changelog_uri: https://github.com/sparklemotion/sqlite3-ruby/blob/master/CHANGELOG.md
89
89
  source_code_uri: https://github.com/sparklemotion/sqlite3-ruby
90
90
  msys2_mingw_dependencies: sqlite3
@@ -102,11 +102,11 @@ required_ruby_version: !ruby/object:Gem::Requirement
102
102
  version: '3.1'
103
103
  required_rubygems_version: !ruby/object:Gem::Requirement
104
104
  requirements:
105
- - - ">="
105
+ - - ">"
106
106
  - !ruby/object:Gem::Version
107
- version: '0'
107
+ version: 1.3.1
108
108
  requirements: []
109
- rubygems_version: 3.5.22
109
+ rubygems_version: 3.3.22
110
110
  signing_key:
111
111
  specification_version: 4
112
112
  summary: Ruby library to interface with the SQLite3 database engine (http://www.sqlite.org).