From 40b78e41153391f6782a4048281dde1b2deba023 Mon Sep 17 00:00:00 2001 From: Jorge Manrubia Date: Fri, 16 May 2025 16:17:54 +0200 Subject: [PATCH] Move extension configuration to config file Kudos to Mike for the tip --- config/application.rb | 1 + config/database.yml | 3 +++ lib/rails_ext/sqlite_vec.rb | 14 -------------- 3 files changed, 4 insertions(+), 14 deletions(-) delete mode 100644 lib/rails_ext/sqlite_vec.rb diff --git a/config/application.rb b/config/application.rb index 765a43731..76851bea2 100644 --- a/config/application.rb +++ b/config/application.rb @@ -1,6 +1,7 @@ require_relative "boot" require "rails/all" +require "sqlite_vec" # Referenced in database.yml # Require the gems listed in Gemfile, including any gems # you've limited to :test, :development, or :production. diff --git a/config/database.yml b/config/database.yml index 1a0b9537d..d9584de0b 100644 --- a/config/database.yml +++ b/config/database.yml @@ -8,6 +8,8 @@ default: &default adapter: sqlite3 pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> timeout: 5000 + extensions: + - <%= SqliteVec.loadable_path %> development: primary: @@ -42,6 +44,7 @@ production: tenanted: true extensions: - ./bin/lib/beamer.so + - <%= SqliteVec.loadable_path %> primary_original: <<: *default database: storage/production.sqlite3 diff --git a/lib/rails_ext/sqlite_vec.rb b/lib/rails_ext/sqlite_vec.rb deleted file mode 100644 index 071ef44fb..000000000 --- a/lib/rails_ext/sqlite_vec.rb +++ /dev/null @@ -1,14 +0,0 @@ -require "sqlite_vec" -require "active_record/connection_adapters/sqlite3_adapter" - -module SqliteVecExtension - def configure_connection - super - db = @raw_connection - db.enable_load_extension(true) - SqliteVec.load(db) - db.enable_load_extension(false) - end -end - -ActiveRecord::ConnectionAdapters::SQLite3Adapter.prepend(SqliteVecExtension)