activerecord-enhancedsqlite3-adapter 0.7.0 → 0.8.0

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: 97af786ab4b105a44e48a8501611f13b6a090545b1fa5516138aaebd4a2c203f
4
- data.tar.gz: 0f8eec83e65a55ee39a043d5a0d23861dbebd8d2fee1ee554ecc9ca6cf836fb9
3
+ metadata.gz: 822503d22973552ab533017c76ee5e40c8687e2283c2b97f17013967a4d981ee
4
+ data.tar.gz: 99b0f6b59a9e3b5fb49624a0d9258056d0027c34c7cfe430d58fda8af601fa13
5
5
  SHA512:
6
- metadata.gz: 04f39dc81145d1f2a2e39cb41c562675f1bdcbf036291f885d5cfe75203c4a1e36b2575c2cf8762a07c184f7d3ada02fec6403eb0284c4ec82c900b80fd362c5
7
- data.tar.gz: 5d7a13c12e202fa5bd5e4da274271194cd7fb770510bb235dc85ede7ead91893c3615c4e8b424073c1416931003bba42c06afc93d0ce3e96353bfa6a6bb7bf89
6
+ metadata.gz: e7c2b49a47f755752a71b7aa7c0e5dbeadb1fd64473c4bf56ff93f104d2c6a5f86ee1273b7f57fb20fcb3e0fdc380662f97c8f462b9a7096c2a7f57f25826141
7
+ data.tar.gz: b93e48d2dd251aa60495afac78364c2cbb2552d52fa8ca16bb2868468b4b0c10c1807a4ebd571a458cebb48330e96b471a955859ab5af96a04203a46e4e96718
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  ## [Unreleased]
2
2
 
3
+ ## [0.8.0] - 2024-05-05
4
+
5
+ - Load `sqlpkg` extensions if listed and present ([@fractaledmind](https://github.com/fractaledmind/activerecord-enhancedsqlite3-adapter/pull/17))
6
+
3
7
  ## [0.7.0] - 2024-04-29
4
8
 
5
9
  - Loosen the `sqlite3` dependency to allow for `>= 1.4.0` (including 2.x) ([@fractaledmind](https://github.com/fractaledmind/activerecord-enhancedsqlite3-adapter/pull/15))
@@ -126,11 +126,21 @@ module EnhancedSQLite3
126
126
  def configure_extensions
127
127
  @raw_connection.enable_load_extension(true)
128
128
  @config.fetch(:extensions, []).each do |extension_name|
129
- require extension_name
130
- extension_classname = extension_name.camelize
131
- extension_class = extension_classname.constantize
132
- extension_class.load(@raw_connection)
129
+ if extension_name.include?("/")
130
+ raise LoadError unless Dir.exist?(".sqlpkg/#{extension_name}")
131
+ Dir.glob(".sqlpkg/#{extension_name}/*.{dll,so,dylib}") do |extension_path|
132
+ @raw_connection.load_extension(extension_path)
133
+ end
134
+ else
135
+ require extension_name
136
+ extension_classname = extension_name.camelize
137
+ extension_class = extension_classname.constantize
138
+ extension_class.load(@raw_connection)
139
+ end
133
140
  rescue LoadError
141
+ Dir.glob(".sqlpkg/**/*.{dll,so,dylib}") do |extension_path|
142
+ @raw_connection.load_extension(extension_path)
143
+ end
134
144
  Rails.logger.error("Failed to find the SQLite extension gem: #{extension_name}. Skipping...")
135
145
  rescue NameError
136
146
  Rails.logger.error("Failed to find the SQLite extension class: #{extension_classname}. Skipping...")
@@ -1,3 +1,3 @@
1
1
  module EnhancedSQLite3
2
- VERSION = "0.7.0"
2
+ VERSION = "0.8.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activerecord-enhancedsqlite3-adapter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stephen Margheim
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-04-29 00:00:00.000000000 Z
11
+ date: 2024-05-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord