sqlite3 1.5.3-aarch64-linux → 1.6.0.rc1-aarch64-linux
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 +4 -4
- data/CHANGELOG.md +26 -0
- data/README.md +1 -1
- data/dependencies.yml +8 -7
- data/ext/sqlite3/extconf.rb +40 -10
- data/lib/sqlite3/2.7/sqlite3_native.so +0 -0
- data/lib/sqlite3/3.0/sqlite3_native.so +0 -0
- data/lib/sqlite3/3.1/sqlite3_native.so +0 -0
- data/lib/sqlite3/3.2/sqlite3_native.so +0 -0
- data/lib/sqlite3/pragmas.rb +3 -3
- data/lib/sqlite3/version.rb +4 -4
- data/test/test_pragmas.rb +22 -0
- metadata +27 -12
- data/lib/sqlite3/2.6/sqlite3_native.so +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f26abc996db7d4723a3b61716ec72fc3b489cb1acda81df20c55df97aeda7f87
|
4
|
+
data.tar.gz: e6411c15e4812134745dd4ef9fe217e5884ae3b354567f2d7c43aaa687652943
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f95efa10d8475b8f647c5c9292d29b38534944bb570ede32b046f79448681a8d9bb03944a1bfa296d9e9b4987b5c6ddffd86f408392541ee2952e6bd42948dc1
|
7
|
+
data.tar.gz: 31ab62784ea7409869ca4d7ccdb64160d61e238f84beb7286e4b7c562d23e817f7498d993b2728bc7cd58b8a652a75bc6a9e0872ada30ca15717c319227c4e7b
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,31 @@
|
|
1
1
|
# sqlite3-ruby Changelog
|
2
2
|
|
3
|
+
## 1.6.0 / unreleased
|
4
|
+
|
5
|
+
### Ruby
|
6
|
+
|
7
|
+
This release introduces native gem support for Ruby 3.2.
|
8
|
+
|
9
|
+
This release ends native gem support for Ruby 2.6, for which [upstream support ended 2022-04-12](https://www.ruby-lang.org/en/downloads/branches/).
|
10
|
+
|
11
|
+
|
12
|
+
### Dependencies
|
13
|
+
|
14
|
+
* Vendored sqlite3 is updated to [v3.40.1](https://sqlite.org/releaselog/3_40_1.html).
|
15
|
+
|
16
|
+
|
17
|
+
### Fixes
|
18
|
+
|
19
|
+
* `get_boolean_pragma` now returns the correct value. Previously, it always returned true. [#275] (Thank you, @Edouard-chin!)
|
20
|
+
|
21
|
+
|
22
|
+
## 1.5.4 / 2022-11-18
|
23
|
+
|
24
|
+
### Dependencies
|
25
|
+
|
26
|
+
* Vendored sqlite is updated to [v3.40.0](https://sqlite.org/releaselog/3_40_0.html).
|
27
|
+
|
28
|
+
|
3
29
|
## 1.5.3 / 2022-10-11
|
4
30
|
|
5
31
|
### Fixed
|
data/README.md
CHANGED
@@ -71,7 +71,7 @@ end
|
|
71
71
|
|
72
72
|
### Native Gems (recommended)
|
73
73
|
|
74
|
-
|
74
|
+
In v1.5.0 and later, native (precompiled) gems are available for recent Ruby versions on these platforms:
|
75
75
|
|
76
76
|
- `aarch64-linux`
|
77
77
|
- `arm-linux`
|
data/dependencies.yml
CHANGED
@@ -2,13 +2,14 @@
|
|
2
2
|
:sqlite3:
|
3
3
|
# checksum verified by first checking the published sha3(256) checksum against https://sqlite.org/download.html:
|
4
4
|
#
|
5
|
-
# $ sha3sum -a 256 ports/archives/sqlite-autoconf-
|
6
|
-
#
|
5
|
+
# $ sha3sum -a 256 ports/archives/sqlite-autoconf-3400100.tar.gz
|
6
|
+
# 3136db4bcd9e9e1e485c291380a3d86f0f21cae0eff9f714c0ef4821e2e5cdf7 ports/archives/sqlite-autoconf-3400100.tar.gz
|
7
7
|
#
|
8
|
-
#
|
9
|
-
#
|
8
|
+
# juno in sqlite3-ruby on flavorjones-update-sqlite-3.40.1 [$!?] via 💎 v3.1.2
|
9
|
+
# $ sha256sum ports/archives/sqlite-autoconf-3400100.tar.gz
|
10
|
+
# 2c5dea207fa508d765af1ef620b637dcb06572afa6f01f0815bd5bbf864b33d9 ports/archives/sqlite-autoconf-3400100.tar.gz
|
10
11
|
#
|
11
|
-
:version: "3.
|
12
|
+
:version: "3.40.1"
|
12
13
|
:files:
|
13
|
-
- :url: "https://sqlite.org/2022/sqlite-autoconf-
|
14
|
-
:sha256: "
|
14
|
+
- :url: "https://sqlite.org/2022/sqlite-autoconf-3400100.tar.gz"
|
15
|
+
:sha256: "2c5dea207fa508d765af1ef620b637dcb06572afa6f01f0815bd5bbf864b33d9"
|
data/ext/sqlite3/extconf.rb
CHANGED
@@ -69,21 +69,29 @@ module Sqlite3
|
|
69
69
|
# on macos, pkg-config will not return --cflags without this
|
70
70
|
ENV["PKG_CONFIG_ALLOW_SYSTEM_CFLAGS"] = "t"
|
71
71
|
|
72
|
+
# only needed for Ruby 3.1.3, see https://bugs.ruby-lang.org/issues/19233
|
73
|
+
RbConfig::CONFIG["PKG_CONFIG"] = config_string("PKG_CONFIG") || "pkg-config"
|
74
|
+
|
72
75
|
lib_path = File.join(recipe.path, "lib")
|
73
76
|
pcfile = File.join(lib_path, "pkgconfig", "sqlite3.pc")
|
74
77
|
abort_pkg_config("pkg_config") unless pkg_config(pcfile)
|
75
78
|
|
76
79
|
# see https://bugs.ruby-lang.org/issues/18490
|
77
|
-
|
80
|
+
ldflags = xpopen(["pkg-config", "--libs", "--static", pcfile], err: [:child, :out], &:read)
|
78
81
|
abort_pkg_config("xpopen") unless $?.success?
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
82
|
+
ldflags = ldflags.split
|
83
|
+
|
84
|
+
if needs_darwin_linker_hack
|
85
|
+
ldflags.delete("-lsqlite3")
|
86
|
+
ldflags.prepend("-Wl,-flat_namespace", "-Wl,-hidden-lsqlite3")
|
87
|
+
else
|
88
|
+
# see https://github.com/flavorjones/mini_portile/issues/118
|
89
|
+
"-L#{lib_path}".tap do |lib_path_flag|
|
90
|
+
ldflags.prepend(lib_path_flag) unless ldflags.include?(lib_path_flag)
|
91
|
+
end
|
84
92
|
end
|
85
93
|
|
86
|
-
|
94
|
+
ldflags.each { |ldflag| append_ldflags(ldflag) }
|
87
95
|
end
|
88
96
|
end
|
89
97
|
|
@@ -126,9 +134,13 @@ module Sqlite3
|
|
126
134
|
|
127
135
|
def minimal_recipe
|
128
136
|
MiniPortile.new(libname, sqlite3_config[:version]).tap do |recipe|
|
129
|
-
|
130
|
-
|
131
|
-
|
137
|
+
if sqlite_source_dir
|
138
|
+
recipe.source_directory = sqlite_source_dir
|
139
|
+
else
|
140
|
+
recipe.files = sqlite3_config[:files]
|
141
|
+
recipe.target = File.join(package_root_dir, "ports")
|
142
|
+
recipe.patch_files = Dir[File.join(package_root_dir, "patches", "*.patch")].sort
|
143
|
+
end
|
132
144
|
end
|
133
145
|
end
|
134
146
|
|
@@ -157,10 +169,25 @@ module Sqlite3
|
|
157
169
|
enable_config("cross-build")
|
158
170
|
end
|
159
171
|
|
172
|
+
def sqlite_source_dir
|
173
|
+
arg_config("--with-sqlite-source-dir")
|
174
|
+
end
|
175
|
+
|
160
176
|
def download
|
161
177
|
minimal_recipe.download
|
162
178
|
end
|
163
179
|
|
180
|
+
def needs_darwin_linker_hack
|
181
|
+
# See https://github.com/rake-compiler/rake-compiler-dock/issues/87 for more info.
|
182
|
+
cross_build? &&
|
183
|
+
darwin? &&
|
184
|
+
RbConfig::CONFIG["ruby_version"] >= "3.2"
|
185
|
+
end
|
186
|
+
|
187
|
+
def darwin?
|
188
|
+
RbConfig::CONFIG["target_os"].include?("darwin")
|
189
|
+
end
|
190
|
+
|
164
191
|
def print_help
|
165
192
|
print(<<~TEXT)
|
166
193
|
USAGE: ruby #{$PROGRAM_NAME} [options]
|
@@ -178,6 +205,9 @@ module Sqlite3
|
|
178
205
|
Use libsqlcipher instead of libsqlite3.
|
179
206
|
(Implies `--enable-system-libraries`.)
|
180
207
|
|
208
|
+
--with-sqlite-source-dir=DIRECTORY
|
209
|
+
(dev only) Build sqlite from the source code in DIRECTORY
|
210
|
+
|
181
211
|
--help
|
182
212
|
Display this message.
|
183
213
|
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/lib/sqlite3/pragmas.rb
CHANGED
@@ -11,7 +11,7 @@ module SQLite3
|
|
11
11
|
|
12
12
|
# Returns +true+ or +false+ depending on the value of the named pragma.
|
13
13
|
def get_boolean_pragma( name )
|
14
|
-
get_first_value( "PRAGMA #{name}" ) !=
|
14
|
+
get_first_value( "PRAGMA #{name}" ) != 0
|
15
15
|
end
|
16
16
|
|
17
17
|
# Sets the given pragma to the given boolean value. The value itself
|
@@ -260,7 +260,7 @@ module SQLite3
|
|
260
260
|
def full_column_names=( mode )
|
261
261
|
set_boolean_pragma "full_column_names", mode
|
262
262
|
end
|
263
|
-
|
263
|
+
|
264
264
|
def fullfsync
|
265
265
|
get_boolean_pragma "fullfsync"
|
266
266
|
end
|
@@ -356,7 +356,7 @@ module SQLite3
|
|
356
356
|
def parser_trace=( mode )
|
357
357
|
set_boolean_pragma "parser_trace", mode
|
358
358
|
end
|
359
|
-
|
359
|
+
|
360
360
|
def query_only
|
361
361
|
get_boolean_pragma "query_only"
|
362
362
|
end
|
data/lib/sqlite3/version.rb
CHANGED
@@ -0,0 +1,22 @@
|
|
1
|
+
require 'helper'
|
2
|
+
|
3
|
+
module SQLite3
|
4
|
+
class TestPragmas < SQLite3::TestCase
|
5
|
+
def setup
|
6
|
+
super
|
7
|
+
@db = SQLite3::Database.new(":memory:")
|
8
|
+
end
|
9
|
+
|
10
|
+
def test_get_boolean_pragma
|
11
|
+
refute(@db.get_boolean_pragma("read_uncommitted"))
|
12
|
+
end
|
13
|
+
|
14
|
+
def test_set_boolean_pragma
|
15
|
+
@db.set_boolean_pragma("read_uncommitted", 1)
|
16
|
+
|
17
|
+
assert(@db.get_boolean_pragma("read_uncommitted"))
|
18
|
+
ensure
|
19
|
+
@db.set_boolean_pragma("read_uncommitted", 0)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
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.
|
4
|
+
version: 1.6.0.rc1
|
5
5
|
platform: aarch64-linux
|
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:
|
13
|
+
date: 2023-01-02 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: minitest
|
@@ -74,13 +74,27 @@ dependencies:
|
|
74
74
|
- - "<"
|
75
75
|
- !ruby/object:Gem::Version
|
76
76
|
version: '7'
|
77
|
+
- !ruby/object:Gem::Dependency
|
78
|
+
name: psych
|
79
|
+
requirement: !ruby/object:Gem::Requirement
|
80
|
+
requirements:
|
81
|
+
- - "~>"
|
82
|
+
- !ruby/object:Gem::Version
|
83
|
+
version: '4.0'
|
84
|
+
type: :development
|
85
|
+
prerelease: false
|
86
|
+
version_requirements: !ruby/object:Gem::Requirement
|
87
|
+
requirements:
|
88
|
+
- - "~>"
|
89
|
+
- !ruby/object:Gem::Version
|
90
|
+
version: '4.0'
|
77
91
|
description: |-
|
78
92
|
This module allows Ruby programs to interface with the SQLite3
|
79
93
|
database engine (http://www.sqlite.org). You must have the
|
80
94
|
SQLite engine installed in order to build this module.
|
81
95
|
|
82
96
|
Note that this module is only compatible with SQLite 3.6.16 or newer.
|
83
|
-
email:
|
97
|
+
email:
|
84
98
|
executables: []
|
85
99
|
extensions: []
|
86
100
|
extra_rdoc_files:
|
@@ -121,10 +135,10 @@ files:
|
|
121
135
|
- faq/faq.rb
|
122
136
|
- faq/faq.yml
|
123
137
|
- lib/sqlite3.rb
|
124
|
-
- lib/sqlite3/2.6/sqlite3_native.so
|
125
138
|
- lib/sqlite3/2.7/sqlite3_native.so
|
126
139
|
- lib/sqlite3/3.0/sqlite3_native.so
|
127
140
|
- lib/sqlite3/3.1/sqlite3_native.so
|
141
|
+
- lib/sqlite3/3.2/sqlite3_native.so
|
128
142
|
- lib/sqlite3/constants.rb
|
129
143
|
- lib/sqlite3/database.rb
|
130
144
|
- lib/sqlite3/errors.rb
|
@@ -149,6 +163,7 @@ files:
|
|
149
163
|
- test/test_integration_pending.rb
|
150
164
|
- test/test_integration_resultset.rb
|
151
165
|
- test/test_integration_statement.rb
|
166
|
+
- test/test_pragmas.rb
|
152
167
|
- test/test_result_set.rb
|
153
168
|
- test/test_sqlite3.rb
|
154
169
|
- test/test_statement.rb
|
@@ -163,7 +178,7 @@ metadata:
|
|
163
178
|
changelog_uri: https://github.com/sparklemotion/sqlite3-ruby/blob/master/CHANGELOG.md
|
164
179
|
source_code_uri: https://github.com/sparklemotion/sqlite3-ruby
|
165
180
|
rubygems_mfa_required: 'true'
|
166
|
-
post_install_message:
|
181
|
+
post_install_message:
|
167
182
|
rdoc_options:
|
168
183
|
- "--main"
|
169
184
|
- README.md
|
@@ -173,18 +188,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
173
188
|
requirements:
|
174
189
|
- - ">="
|
175
190
|
- !ruby/object:Gem::Version
|
176
|
-
version: '2.
|
191
|
+
version: '2.7'
|
177
192
|
- - "<"
|
178
193
|
- !ruby/object:Gem::Version
|
179
|
-
version: 3.
|
194
|
+
version: 3.3.dev
|
180
195
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
181
196
|
requirements:
|
182
|
-
- - "
|
197
|
+
- - ">"
|
183
198
|
- !ruby/object:Gem::Version
|
184
|
-
version:
|
199
|
+
version: 1.3.1
|
185
200
|
requirements: []
|
186
|
-
rubygems_version: 3.3.
|
187
|
-
signing_key:
|
201
|
+
rubygems_version: 3.3.26
|
202
|
+
signing_key:
|
188
203
|
specification_version: 4
|
189
204
|
summary: This module allows Ruby programs to interface with the SQLite3 database engine
|
190
205
|
(http://www.sqlite.org)
|
Binary file
|