activerecord-enhancedsqlite3-adapter 0.7.0 → 0.8.0

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 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