From 696a9d315c5d3da1f4365ebe86ae783bfa3be389 Mon Sep 17 00:00:00 2001 From: Florian Hanke Date: Fri, 28 Oct 2011 10:29:03 +1100 Subject: [PATCH] - active record dependency. People rarely use active record, and if they do, they pull it in themselves. P.S: FREEDOOOOOM! --- server/lib/picky.rb | 1 - server/lib/picky/sources/db.rb | 11 +++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/server/lib/picky.rb b/server/lib/picky.rb index 9c41daa9..fbfa73e3 100644 --- a/server/lib/picky.rb +++ b/server/lib/picky.rb @@ -13,7 +13,6 @@ class << self require 'text' require 'yajl' require 'active_support/core_ext' - require 'active_record' # Require the constants. # diff --git a/server/lib/picky/sources/db.rb b/server/lib/picky/sources/db.rb index 79ebd6bc..02c16c9f 100644 --- a/server/lib/picky/sources/db.rb +++ b/server/lib/picky/sources/db.rb @@ -33,11 +33,22 @@ class DB < Base @@traversal_id = :__picky_id def initialize select_statement, options = { file: 'app/db.yml' } + check_gem + @select_statement = select_statement @database = create_database_adapter @options = options end + # Tries to require the active_record gem. + # + def check_gem # :nodoc: + require 'active_record' + rescue LoadError + warn_gem_missing 'active_record', 'the (ActiveRecord) DB source' + exit 1 + end + def to_s parameters = [select_statement.inspect] parameters << options unless options.empty?