Skip to content

Releases: sparklemotion/sqlite3-ruby

2.0.2 / 2024-05-23

23 May 20:43
eaf8f1e
Compare
Choose a tag to compare

2.0.2 / 2024-05-23

Dependencies


sha256 checksums:

64296bb750efa19c4249136c2289799a4ac044116b7cc095784dc56358964dc1  sqlite3-2.0.2-aarch64-linux-gnu.gem
cc62889120bb62c98b513fc2b5fc91da944ed7e139efcc4a85fe1d03258462e3  sqlite3-2.0.2-aarch64-linux-musl.gem
29f74fb1af530ea4d1826efa8cb369ea11e476fd885843bceb191ef000c62695  sqlite3-2.0.2-arm-linux-gnu.gem
bbacba2099fe6084b073d4d4e23e54823345a8d2e98800380036fe7ae3323092  sqlite3-2.0.2-arm-linux-musl.gem
184e28292d46feea9132cd936bfe01d47a08a6d7839bc4c5eb3f09b9bed2e770  sqlite3-2.0.2-arm64-darwin.gem
c8144a1f4e2eea742fb4a4fdc9d0ba674c4e787ebb582671b8b69739f9fed191  sqlite3-2.0.2-x64-mingw-ucrt.gem
1c39e02dbb8099215e74a816d6d375136cc9851cf6833248b9cd888e022d627e  sqlite3-2.0.2-x64-mingw32.gem
1b92d4b4e54ba0245bc5d16415891e697766d62eb188fc173356e03f03881d78  sqlite3-2.0.2-x86-linux-gnu.gem
b256dbdb7117d60a0171df875fc2e07d001f03699bf12a196bf6f415b068643d  sqlite3-2.0.2-x86-linux-musl.gem
390c6284f89774cb228fb180b75ac54e5009b0aa24c72f18ad07465635029ea8  sqlite3-2.0.2-x86_64-darwin.gem
15dbf6f47755acb063c5b71a2dd6c65ba582eab3e0d9d4e95cde737120333efb  sqlite3-2.0.2-x86_64-linux-gnu.gem
5b7867dee7401c80db616828c31e5e20963c1dd7d4682757c9cc5aaba627b36c  sqlite3-2.0.2-x86_64-linux-musl.gem
326e53ffb89d050eb00274945078ff7af9026594a7031874af4e9f172cf6154d  sqlite3-2.0.2.gem

2.0.1 / 2024-04-20

20 Apr 15:20
659d01c
Compare
Choose a tag to compare

2.0.1 / 2024-04-20

Fixed

  • Raise ArgumentError if Database#execute, #execute_batch, or #query are passed multiple bind parameters that are not in an Array. In v2.0.0 these methods would silently swallow additional arguments, and this change makes the failure explicit. See the CHANGELOG notes for v2.0.0 for examples on how to update your code. [#527] @flavorjones
  • Fixed a regression in v2.0.0 that caused Database#execute_batch to raise an encoding exception when passed some non-ascii strings. As a result of this fix, Database#prepare now ensures the "remainder" string will always be encoded as UTF-8. [#524] @flavorjones

sha256 checksums:

752cb885faf5e5d80b2fda5601b1168f1461e2e63e18c62cab8cf32fc4b05d8e  sqlite3-2.0.1-aarch64-linux-gnu.gem
637f90e5ec6d30b34fc49d7acc50b0f569d8c58699c2157e818e5e99c2594fcf  sqlite3-2.0.1-aarch64-linux-musl.gem
0ff1acf7e110c7bbfd140682f14926c5b2e84fe01620dc19ab4f6de1deadc1fd  sqlite3-2.0.1-arm-linux-gnu.gem
09d9f9723683a97a9454f593eecbf6c029670c4c0f7059fcfa62eb12e3d47b93  sqlite3-2.0.1-arm-linux-musl.gem
0efb2ca9d6c184c9960322b2a32ec86355f523b50089b0f26147b2abdfc94583  sqlite3-2.0.1-arm64-darwin.gem
937cc0c0668565c863c0e1736e3172726729a210a1a8fb59b857509ffd6ca835  sqlite3-2.0.1-x64-mingw-ucrt.gem
ee01997371e3dc3495f46dec9f1667a49fe65fe8f635edcd203048d639aa0948  sqlite3-2.0.1-x64-mingw32.gem
bf395f9b713811eb5d068056df986531038f79b5a3d49dfa42b1ac164c937c3b  sqlite3-2.0.1-x86-linux-gnu.gem
3082b2a19bfd7e33539c407adc646c58e5985b6344e192f715f04bb65cc82727  sqlite3-2.0.1-x86-linux-musl.gem
9fd4ee3d3aa6f1a4703abe0a5d247f31ae2757cb6a3be89664dfb714ba55d5b4  sqlite3-2.0.1-x86_64-darwin.gem
97cd463ea0f7e31e85814918ab70ebf4ca87b2b829d4664ea2787a39a6c4ffa6  sqlite3-2.0.1-x86_64-linux-gnu.gem
f6d1d84a49df5ba11a99998ee76dc004eeb3e4129037126ed085833cf471edda  sqlite3-2.0.1-x86_64-linux-musl.gem
6c5ff93b951ce521d8b3c6d05df46a15d97ec241c6cff5950c1a628ff7957922  sqlite3-2.0.1.gem

2.0.0 / 2024-04-17

17 Apr 17:44
59eee1d
Compare
Choose a tag to compare

2.0.0 / 2024-04-17

This is a major release which contains some breaking changes, primarily the removal of
long-deprecated functionality. Before upgrading, please make sure to address deprecation warnings
emitted from your application using sqlite3-ruby v1.7.x.

Ruby

Packaging

Native (precompiled) gems are now available for Linux Musl. [#442] @flavorjones

Here are the platforms for which native gems are shipped:

  • aarch64-linux-gnu (requires: glibc >= 2.29)
  • aarch64-linux-musl
  • arm-linux-gnu (requires: glibc >= 2.29)
  • arm-linux-musl
  • arm64-darwin
  • x64-mingw32 / x64-mingw-ucrt
  • x86-linux-gnu (requires: glibc >= 2.17)
  • x86-linux-musl
  • x86_64-darwin
  • x86_64-linux-gnu (requires: glibc >= 2.17)
  • x86_64-linux-musl

⚠ Ruby 3.0 linux users must use Rubygems >= 3.3.22 in order to use these gems.

⚠ Musl linux users should update to Bundler >= 2.5.6 to avoid rubygems/rubygems#7432

See the INSTALLATION doc for more information.

Dependencies

Added

  • Database#busy_handler_timeout= introduced as an alternative to #busy_timeout= that can be used when it's desired to release the GVL between retries. [#443, #456] @fractaledmind
  • Support the SUPER_JOURNAL flag which is an alias for MASTER_JOURNAL as of sqlite 3.33.0. [#467] @flavorjones
  • Statement#stat and Statement#memused introduced to report statistics. [#461] @fractaledmind
  • Statement#sql and Statement#expanded_sql introduced to retrieve the SQL statement associated with the Statement object. [#293, #498] @tenderlove
  • SQLite3.status introduced to return run-time status and reset high-water marks. See SQLite3::Constants::Status for details. [#520] @wjlroe

Improved

Changed

  • Consistently use SQLite3::Exception or subclasses. Previously some Pragmas methods raised Exception, and Database#execute_batch2 and Database#load_extension raised RuntimeError. [#467, #490] @flavorjones
  • Database#columns returns a list of internal frozen strings. [#155, #474, #486] @tenderlove
  • Freeze results that come from the database. [#480] @tenderlove
  • The encoding of a Database is no longer cached. [#485] @tenderlove
  • Database#transaction returns the result of the block when used with a block. [#508] @alexcwatt
  • Database#execute_batch returns the result of the last statement executed. [#512] @alexcwatt

Removed

  • Removed class SQLite3::Translator and all related type translation methods which have been deprecated since v1.3.2. [#470] @tenderlove

    If you need to do type translation on values returned from the statement object, please wrap it
    with a delegate object. Here is an example of using a delegate class to implement type
    translation:

    require "sqlite3"
    require "delegate"
    
    db = SQLite3::Database.new(":memory:")
    
    return_value = db.execute_batch2 <<-EOSQL
            CREATE TABLE items (id integer PRIMARY KEY AUTOINCREMENT, name string);
            INSERT INTO items (name) VALUES ("foo");
            INSERT INTO items (name) VALUES ("bar");
    EOSQL
    
    class MyTranslator < DelegateClass(SQLite3::Statement)
      def step
        row = super
        return if done?
    
        row.map.with_index do |item, i|
          case types[i]
          when "integer" # turn all integers to floats
            item.to_f
          when "string" # add "hello" to all strings
            item + "hello"
          end
        end
      end
    end
    
    db.prepare("SELECT * FROM items") do |stmt|
      stmt = MyTranslator.new(stmt)
      while row = stmt.step
        p row
      end
    end
  • Removed types and fields readers on row objects, which have been deprecated since
    v1.3.6. [#471] @tenderlove

    Deprecated code looks like this:

    row = @db.execute("select * from foo")
    assert_equal ["blob"], row.first.types

    If you would like to access the "types" associated with a returned query,
    use a prepared statement like this:

    @db.prepare("select * from foo") do |v|
      assert_equal ["blob"], v.types
    end
  • Removed support for non-Array bind parameters to methods Database#execute, #execute_batch, and #query, which has been deprecated since v1.3.0. [#511] @flavorjones

    Deprecated code looks like this:

    @db.query("select * from foo where a = ? and b = ? and c = ?", 1, 2, 3)

    For these cases, pass the bind parameters as an array:

    @db.query("select * from foo where a = ? and b = ? and c = ?", [1, 2, 3])
  • Removed class SQLite3::VersionProxy which has been deprecated since v1.3.2. [#453] @flavorjones

  • Removed methods SQLite3::Database::FunctionProxy#count and #set_error which have been broken since at least v1.3.13. [#164, #509, #510] @alexcwatt @flavorjones


sha256 checksums:

c6720d3e695aab101058b20888784e45f0b060240d2265220ccf6905b3673c78  sqlite3-2.0.0-aarch64-linux-gnu.gem
c7941aa1fee7df021f023d77d980db887b400807c29b1ae321ad5c81678abe54  sqlite3-2.0.0-aarch64-linux-musl.gem
0e4f7e56a0569940c4d8ffd3bc56b9338f5ea93448bd6904dfaf4ba46f15ba9a  sqlite3-2.0.0-arm-linux-gnu.gem
a3950521c0e6a4e345069064cd8818ef2307e119eb8babf186893dd00de73838  sqlite3-2.0.0-arm-linux-musl.gem
4997a2530053565329ef0dee50178541626abb561eac2aff73efce2f86014e5e  sqlite3-2.0.0-arm64-darwin.gem
cc202af7f33e4e793c46b004827795a5c5cb90270eba2638b675d6be67380a87  sqlite3-2.0.0-x64-mingw-ucrt.gem
bb3c70fe0bcd64572b0d490f92735139b881442a295cf0d8bbca9eef9542c09e  sqlite3-2.0.0-x64-mingw32.gem
5e287bd13cbc7c2f824e29e90f181a41def579baab0bb4919b201087fb7067b7  sqlite3-2.0.0-x86-linux-gnu.gem
e07a4d3e92e843079f12f720152740c1eba70b07446cf1b597b824847ba8e395  sqlite3-2.0.0-x86-linux-musl.gem
356dbfeff65f0dd9ece1ac8a0bb057b3aa58a88a0187b64f7bbf6c6d6767ea43  sqlite3-2.0.0-x86_64-darwin.gem
5312d0f1bc1670c3223ec5c49906beead9b4dc797616dec37270d54b0e7de4b2  sqlite3-2.0.0-x86_64-linux-gnu.gem
df7dac50baaa93fc216903a09262d2d5141f09a60c74941df534ac53c7e7ff3a  sqlite3-2.0.0-x86_64-linux-musl.gem
f688e4aae13f60abb8f3a49d3fa23a814d3c6643b89fec96baef33602c8f4e07  sqlite3-2.0.0.gem

1.7.3 / 2024-03-15

15 Mar 21:57
bcba930
Compare
Choose a tag to compare

1.7.3 / 2024-03-15

Dependencies


sha256 checksums:

0ccb8c001cd2617f4801a2c816142d3c9bc299e3f3e0f49e03812f3610b0891c  sqlite3-1.7.3-aarch64-linux.gem
eb653026d44f8502b74564e585245485a5667d72f8888854e53c561f816541b0  sqlite3-1.7.3-arm-linux.gem
b956160cc882d2568f332f915c9fe27cae9a4521b202d6e7ea540171c88e4600  sqlite3-1.7.3-arm64-darwin.gem
8304a254e4fb0692e651b6f783e009415085f885d940c51c77981b8523511f45  sqlite3-1.7.3-x64-mingw-ucrt.gem
dde57850e92a7da0c7833dd904e666fe7baf382f1c7cabbec8e28a0005a4beea  sqlite3-1.7.3-x64-mingw32.gem
95543cad6bbdf1ba822526bcd0aba4a378887d9da906b8bfa250002745f3847e  sqlite3-1.7.3-x86-linux.gem
b88e117ae14b2c5b61a7eb14da24b3b0e93cd3e1c17774ff3b6e5a03ffe4e5b7  sqlite3-1.7.3-x86_64-darwin.gem
522a3285660dec8253465880c97980e873db0d79060900be8d14194217a3ee73  sqlite3-1.7.3-x86_64-linux.gem
fa77f63c709548f46d4e9b6bb45cda52aa3881aa12cc85991132758e8968701c  sqlite3-1.7.3.gem

1.7.2 / 2024-01-30

30 Jan 18:52
f90c980
Compare
Choose a tag to compare

1.7.2 / 2024-01-30

Dependencies


sha256 checksums:

e759f07dfad1a8ab00a7c49bdfff020ef61156ed18744781b16d202602119096  sqlite3-1.7.2-aarch64-linux.gem
e0eb1fa8ad8fd8ef08f5efe7412581415a7305648418520a278f6167f6e55218  sqlite3-1.7.2-arm-linux.gem
7368d9a4b4be6063660e826d059870b77f4ad740948885f6ba674f3a2a2b1d3c  sqlite3-1.7.2-arm64-darwin.gem
7583cfa5550dc37e26275a45cbafe7b6f503b0608f56ed7b52a764ff6725c3de  sqlite3-1.7.2-x64-mingw-ucrt.gem
92dc08c679c21f6589d6e4efde07267e5e971069f6b142a7f43af0a8bf8cbfba  sqlite3-1.7.2-x64-mingw32.gem
5d310ec6e2e705335811ef4658a90e65a14ed008adfd1d098252a79b4efb9b60  sqlite3-1.7.2-x86-linux.gem
b287e4971f75f81ead4237e77cbdfae68e0c794b4e76b2c86d21a0f807e65f01  sqlite3-1.7.2-x86_64-darwin.gem
37fcd0cc6038bd47a6cb2ca7cb1a063135a26cd0002b76977f67463ca7ebc69d  sqlite3-1.7.2-x86_64-linux.gem
16050775fea3095035c8d4cb33968523e8ef411ac2d6bfa5f27d4c2b119cfd8c  sqlite3-1.7.2.gem

1.7.1 / 2024-01-24

24 Jan 22:10
5374a84
Compare
Choose a tag to compare

1.7.1 / 2024-01-24

Dependencies


sha256 checksums:

7b41d9500f53a11360a78af510d09e7d3c2ce71cf7d531fda7a7a16ffd5280bc  sqlite3-1.7.1-aarch64-linux.gem
444c550f1fa548c09e7226d833186739726fd0503914fa740606e5f147a7267f  sqlite3-1.7.1-arm-linux.gem
96dfb220aedb0056b22848b6663bd1b5e69fb84e373ac9f1c57b76b902703b43  sqlite3-1.7.1-arm64-darwin.gem
e6af9e9643973cd041c566bfcafa72248d600e1d883adc188e494f66a49787bf  sqlite3-1.7.1-x64-mingw-ucrt.gem
f043f4654ef545fdcbbdbfccff9ae4d983436c0f87cc8de913c309bf228f3f71  sqlite3-1.7.1-x64-mingw32.gem
270a4ff88b5ee270eb18891c8baa63f07db8d846221cbe63002f292060a8f327  sqlite3-1.7.1-x86-linux.gem
398d1b0909efe046b57433cde679cf49f7b04487e8715164facaf2d8ff4f7cde  sqlite3-1.7.1-x86_64-darwin.gem
521749cf9ff2dc6b4039e05c6204fda806cfc7b47a938002f273f4490de2aa5c  sqlite3-1.7.1-x86_64-linux.gem
993d9220e086b53d9ee8d12394cd8f570e5c8bd567b7ee9703152837ccab6fee  sqlite3-1.7.1.gem

1.7.0 / 2023-12-27

27 Dec 19:46
4f8ff6f
Compare
Choose a tag to compare

1.7.0 / 2023-12-27

Ruby

This release introduces native gem support for Ruby 3.3.

This release ends native gem support for Ruby 2.7, for which upstream support ended 2023-03-31. Ruby 2.7 is still generally supported, but will not be shipped in the native gems.

This release ends support for Ruby 1.9.3, 2.0, 2.1, 2.2, 2.3, 2.4, 2.5, and 2.6.

Improved


sha256 checksums:

eaff7c58c5bfc82c0ebc522d9991615fd8f98c4556d3160f90ae8c89fb6501ce  sqlite3-1.7.0-aarch64-linux.gem
46d27b7079e63c852afbfb888355c7137f240a5c9106a4ef6e2df9791a1ff485  sqlite3-1.7.0-arm-linux.gem
b5a384f382099e2d09c2f05b9618c1177a5ecb19798ce1e65a50d84d49377451  sqlite3-1.7.0-arm64-darwin.gem
0fe774367f7d52e85e83c9b30f01bbedbb7d6fcaf5b7a0b119a2af196a6c1ddb  sqlite3-1.7.0-x64-mingw-ucrt.gem
e0f4a8be499ef6cdd3511f521c68c6145f53370040315c4d0e4ecaa1bb3b1ee1  sqlite3-1.7.0-x64-mingw32.gem
1ade17be3ca7c9ca3a8fa6313101bcf578c3e10e139f4249b222f6fd7e4cb450  sqlite3-1.7.0-x86-linux.gem
1bedf29318e01d7fc77ca398ce36f57feefb45a291d86069c1fc0e7d19770af0  sqlite3-1.7.0-x86_64-darwin.gem
6cf008a7a81eb54c99db0f06a958372512f2f8c24fbe59e76c49fd4bf4135161  sqlite3-1.7.0-x86_64-linux.gem
894b5965591fb2db7d95572e93942f4fddd1762d37ec4fbc198b36426fcdae3c  sqlite3-1.7.0.gem

1.6.9 / 2023-11-26

26 Nov 19:03
d4df9fd
Compare
Choose a tag to compare

1.6.9 / 2023-11-26

Dependencies

Added

  • Database.new now accepts a :default_transaction_mode option (defaulting to :deferred), and Database#transaction no longer requires a transaction mode to be specified. This should allow higher-level adapters to more easily choose a transaction mode for a database connection. [#426] @masamitsu-murase

sha256 checksums:

bf664e360101349fce44ef80284f3e3f1995c2a972855317ea26db07b8109e5e  sqlite3-1.6.9-aarch64-linux.gem
d666010cc56146dfc7eefd23aec383b27247fce56a16ae85d936469414138cb2  sqlite3-1.6.9-arm-linux.gem
bed643cefc56db014dc6a20f5a5c8aa1df5a200bc172a9f3ef0a92c596846147  sqlite3-1.6.9-arm64-darwin.gem
c31fc7d4538ee24aa830507c98c3c558854ea702ea014751e6cc2c09675d8a1a  sqlite3-1.6.9-x64-mingw-ucrt.gem
6fc5f58c5c17433367473f596f5be5dfb635e29753aaf00afeddf1b7877b1ef4  sqlite3-1.6.9-x64-mingw32.gem
cd69cc1aa808d54ada8de59fc734d7ba9bf41b0011275f3946a337d5b8e858e5  sqlite3-1.6.9-x86-linux.gem
65c6e4bab10d84369900ee94c1b7babc95e472ae2c2c3c836561cef00c9b7b65  sqlite3-1.6.9-x86_64-darwin.gem
924c2d4d425e964a60bc5177e71ed372f71325425b3ea75971521b1fe184d1a2  sqlite3-1.6.9-x86_64-linux.gem
55a191656316de5bdbec28291ca2f45e8e41f804b3cc592faa318c4f69f93922  sqlite3-1.6.9.gem

1.6.8 / 2023-11-01

01 Nov 19:58
015f601
Compare
Choose a tag to compare

1.6.8 / 2023-11-01

Dependencies

Added

  • SQLite3::Database.open now returns the block result. Previously this returned the Database object. [#415] @toy
  • Documentation improvement in lib/sqlite3/database.rb. [#421] @szTheory

sha256 checksums:

abc3318a84043144af10ed129b89419b103f17cd01c5882f6b565934ac739ef0  sqlite3-1.6.8-aarch64-linux.gem
46a970aabca4a876eb009a45d573d16fbba8b728b885b9df11a2e67251c7b983  sqlite3-1.6.8-arm-linux.gem
d747a0e51345b05d6eebbbd2009f561f3a1636125a97d182e87869e2d63c50e1  sqlite3-1.6.8-arm64-darwin.gem
5516d61103ad67e3ef9f81a4914eb4bea81ab297af4408e1b4bcdffae6b57faf  sqlite3-1.6.8-x64-mingw-ucrt.gem
71859f902a30cad52bfe702467dad04c979cb80203df11a9868753feecd77f43  sqlite3-1.6.8-x64-mingw32.gem
c607013f0b840c0c3c8a3e2bbd5576d07daa528996d1cc4e72a99bc563d36cdf  sqlite3-1.6.8-x86-linux.gem
47384c83a960e8553d015100d3375ccb6b25f9fc4ba6a9674da2ce75abd4a37b  sqlite3-1.6.8-x86_64-darwin.gem
9cf905b835d2444c77404023ffeac6140fdda7c90b6514556e400040f241d713  sqlite3-1.6.8-x86_64-linux.gem
30d8979972eb923928b8641e05548e7c552222b8c4c725762c039badf054c2d5  sqlite3-1.6.8.gem

1.6.7 / 2023-10-10

10 Oct 20:47
2611034
Compare
Choose a tag to compare

1.6.7 / 2023-10-10

Dependencies

Vendored sqlite is updated to v3.43.2.

Upstream release notes:

  • Fix a couple of obscure UAF errors and an obscure memory leak.
  • Omit the use of the sprintf() function from the standard library in the CLI, as this now generates warnings on some platforms.
  • Avoid conversion of a double into unsigned long long integer, as some platforms do not do such conversions correctly.

Added

  • Compile packaged sqlite3 with additional flags to explicitly enable FTS5, and set synchronous mode to normal when in WAL mode. [#408] (@flavorjones)

sha256 checksums:

c0a2523a982176f1f24201af2ac7a3b576598c9fc4eb4eff37cd6eccb5442601  sqlite3-1.6.7-aarch64-linux.gem
2d7487ae8260a23a58a7140252d63c6e2b93738ef4cd8e69f8d737663ca98845  sqlite3-1.6.7-arm-linux.gem
ccc3418105e1365f7ad0f6a253c54945c7b39c9823325be0dfd6b7648b2593a6  sqlite3-1.6.7-arm64-darwin.gem
d9ff6f69cb1b7d2d408098086957bf0af109c821ea65359c1070af4aa828b55b  sqlite3-1.6.7-x64-mingw-ucrt.gem
2672cc318063fc0c9bcdb0bf9fe914a550a9545fa18ec4c3a1246a9c8d2f7e3a  sqlite3-1.6.7-x64-mingw32.gem
adf7adb774c687c6f2881659c2d5ce9d30466fbfcbb0652c5e90f6722482b263  sqlite3-1.6.7-x86-linux.gem
ac386077bc043c2a0ef7334195e826b20fbc7382632da27637ad3f0620dc48d6  sqlite3-1.6.7-x86_64-darwin.gem
de24904b0679f043736d8e18931f1690ff2d20ea1a0cb491edc454f75718e8a2  sqlite3-1.6.7-x86_64-linux.gem
5c2b22210999a4f58b50f637cdd650d0aa9e333430f9bcd3e90c0a0aed7799bb  sqlite3-1.6.7.gem