sqlite3 1.5.4-x64-mingw32 → 1.6.0.rc1-x64-mingw32

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: 88a616778d61ed584838c3ffc28c6b910109ed9c126ede27b618d8ea48faee50
4
- data.tar.gz: be010c26ab35c2a0d0179be1877708df38ca5b6252bb55838fa83dd8a8537cfb
3
+ metadata.gz: 8a6c0095ce6d573f7d9841fa533bc52df562448c1d08b01773f3e12c19146e34
4
+ data.tar.gz: b33a5039e1b3d8d59e13df5ce514c0269f3c5c3549fa328ea5c8c3deb0e8590a
5
5
  SHA512:
6
- metadata.gz: 6ffe814406cb17353f8f30d1bf68371714b04be2e705f81a60b0411154f1586fb90edadf949f9c2e0ef2200137fb109402b683a40aa1d1798d2dbfb810d590cf
7
- data.tar.gz: a1a1012f8129f3f9fecd0a98d5c6ddad1e6e7df6db79453a5d6e4768f40472c1842ff2c7a1b055d81edcf0c556ff15446525cde70d1f3d00a678a76b11a7b1c2
6
+ metadata.gz: 7e297fdb706417145d5615e589832f77f1824bb757ae8945ddfbdf4c98005a6b75e126b6b894a3859d04aae2315ae233b2a8ee0295b421942acd528698208309
7
+ data.tar.gz: 7ef3fecaea6fda7064d3e83dd4d9a3ec9ce690e18689137d480db0aaf89ffb0547e8c0d022bbc856c2256451f9ed44b3ca697efb6e469f48856e4c0ed35f61ca
data/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
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
+
3
22
  ## 1.5.4 / 2022-11-18
4
23
 
5
24
  ### Dependencies
data/CONTRIBUTING.md CHANGED
@@ -17,8 +17,8 @@ Run `bin/build-gems` which will package gems for all supported platforms, and ru
17
17
  A quick checklist:
18
18
 
19
19
  - [ ] make sure CI is green!
20
- - [x] update `CHANGELOG.md` and `lib/sqlite3/version.rb` including `VersionProxy::{MINOR,TINY}`
21
- - [x] create a git tag using a format that matches the pattern `v\d+\.\d+\.\d+`, e.g. `v1.3.13`
20
+ - [ ] update `CHANGELOG.md` and `lib/sqlite3/version.rb` including `VersionProxy::{MINOR,TINY}`
21
+ - [ ] create a git tag using a format that matches the pattern `v\d+\.\d+\.\d+`, e.g. `v1.3.13`
22
22
  - [ ] run `bin/build-gems` and make sure it completes and all the tests pass
23
23
  - [ ] `for g in gems/*.gem ; do gem push $g ; done`
24
24
  - [ ] create a release at https://github.com/sparklemotion/sqlite3-ruby/releases and include sha2 checksums
data/README.md CHANGED
@@ -71,7 +71,7 @@ end
71
71
 
72
72
  ### Native Gems (recommended)
73
73
 
74
- As of v1.5.0 of this library, native (precompiled) gems are available for Ruby 2.6, 2.7, 3.0, and 3.1 on all these platforms:
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-3400000.tar.gz
6
- # 7ee8f02b21edb4489df5082b5cf5b7ef47bcebcdb0e209bf14240db69633c878 ports/archives/sqlite-autoconf-3400000.tar.gz
5
+ # $ sha3sum -a 256 ports/archives/sqlite-autoconf-3400100.tar.gz
6
+ # 3136db4bcd9e9e1e485c291380a3d86f0f21cae0eff9f714c0ef4821e2e5cdf7 ports/archives/sqlite-autoconf-3400100.tar.gz
7
7
  #
8
- # $ sha256sum ports/archives/sqlite-autoconf-3400000.tar.gz
9
- # 0333552076d2700c75352256e91c78bf5cd62491589ba0c69aed0a81868980e7 ports/archives/sqlite-autoconf-3400000.tar.gz
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.40.0"
12
+ :version: "3.40.1"
12
13
  :files:
13
- - :url: "https://sqlite.org/2022/sqlite-autoconf-3400000.tar.gz"
14
- :sha256: "0333552076d2700c75352256e91c78bf5cd62491589ba0c69aed0a81868980e7"
14
+ - :url: "https://sqlite.org/2022/sqlite-autoconf-3400100.tar.gz"
15
+ :sha256: "2c5dea207fa508d765af1ef620b637dcb06572afa6f01f0815bd5bbf864b33d9"
@@ -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
- flags = xpopen(["pkg-config", "--libs", "--static", pcfile], err: [:child, :out], &:read)
80
+ ldflags = xpopen(["pkg-config", "--libs", "--static", pcfile], err: [:child, :out], &:read)
78
81
  abort_pkg_config("xpopen") unless $?.success?
79
- flags = flags.split
82
+ ldflags = ldflags.split
80
83
 
81
- # see https://github.com/flavorjones/mini_portile/issues/118
82
- "-L#{lib_path}".tap do |lib_path_flag|
83
- flags.prepend(lib_path_flag) unless flags.include?(lib_path_flag)
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
- flags.each { |flag| append_ldflags(flag) }
94
+ ldflags.each { |ldflag| append_ldflags(ldflag) }
87
95
  end
88
96
  end
89
97
 
@@ -169,6 +177,17 @@ module Sqlite3
169
177
  minimal_recipe.download
170
178
  end
171
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
+
172
191
  def print_help
173
192
  print(<<~TEXT)
174
193
  USAGE: ruby #{$PROGRAM_NAME} [options]
Binary file
Binary file
@@ -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}" ) != "0"
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
@@ -1,12 +1,12 @@
1
1
  module SQLite3
2
2
 
3
- VERSION = "1.5.4"
3
+ VERSION = "1.6.0.rc1"
4
4
 
5
5
  module VersionProxy
6
6
  MAJOR = 1
7
- MINOR = 5
8
- TINY = 4
9
- BUILD = nil
7
+ MINOR = 6
8
+ TINY = 0
9
+ BUILD = "rc1"
10
10
 
11
11
  STRING = [ MAJOR, MINOR, TINY, BUILD ].compact.join( "." )
12
12
 
@@ -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.5.4
4
+ version: 1.6.0.rc1
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: 2022-11-18 00:00:00.000000000 Z
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,7 +135,6 @@ 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/constants.rb
@@ -148,6 +161,7 @@ files:
148
161
  - test/test_integration_pending.rb
149
162
  - test/test_integration_resultset.rb
150
163
  - test/test_integration_statement.rb
164
+ - test/test_pragmas.rb
151
165
  - test/test_result_set.rb
152
166
  - test/test_sqlite3.rb
153
167
  - test/test_statement.rb
@@ -162,7 +176,7 @@ metadata:
162
176
  changelog_uri: https://github.com/sparklemotion/sqlite3-ruby/blob/master/CHANGELOG.md
163
177
  source_code_uri: https://github.com/sparklemotion/sqlite3-ruby
164
178
  rubygems_mfa_required: 'true'
165
- post_install_message:
179
+ post_install_message:
166
180
  rdoc_options:
167
181
  - "--main"
168
182
  - README.md
@@ -172,18 +186,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
172
186
  requirements:
173
187
  - - ">="
174
188
  - !ruby/object:Gem::Version
175
- version: '2.6'
189
+ version: '2.7'
176
190
  - - "<"
177
191
  - !ruby/object:Gem::Version
178
192
  version: 3.1.dev
179
193
  required_rubygems_version: !ruby/object:Gem::Requirement
180
194
  requirements:
181
- - - ">="
195
+ - - ">"
182
196
  - !ruby/object:Gem::Version
183
- version: '0'
197
+ version: 1.3.1
184
198
  requirements: []
185
- rubygems_version: 3.3.4
186
- signing_key:
199
+ rubygems_version: 3.3.26
200
+ signing_key:
187
201
  specification_version: 4
188
202
  summary: This module allows Ruby programs to interface with the SQLite3 database engine
189
203
  (http://www.sqlite.org)
Binary file