From 886aa30aa0d6ba97fe7e06c9b66e33e542c72de6 Mon Sep 17 00:00:00 2001 From: Jared Beck Date: Sat, 9 Apr 2016 01:15:51 -0400 Subject: [PATCH] Prefer explicit requires Explicit requires have three advantages: 1. Allow us to add files without them being automatically required. This may be useful for e.g. cleaner.rb 2. Enable static analysis in IDEs 3. Shave a few microseconds off of load time by eliminating a few calls to the filesystem to list directories. --- lib/paper_trail.rb | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/lib/paper_trail.rb b/lib/paper_trail.rb index b627f209..a140334e 100644 --- a/lib/paper_trail.rb +++ b/lib/paper_trail.rb @@ -1,14 +1,15 @@ require "request_store" - -# Require files in lib/paper_trail, but not its subdirectories. -Dir[File.join(File.dirname(__FILE__), "paper_trail", "*.rb")].each do |file| - require File.join("paper_trail", File.basename(file, ".rb")) -end - -# Require serializers -Dir[File.join(File.dirname(__FILE__), "paper_trail", "serializers", "*.rb")].each do |file| - require File.join("paper_trail", "serializers", File.basename(file, ".rb")) -end +require "paper_trail/attributes_serialization" +require "paper_trail/cleaner" +require "paper_trail/config" +require "paper_trail/has_paper_trail" +require "paper_trail/record_history" +require "paper_trail/reifier" +require "paper_trail/version_association_concern" +require "paper_trail/version_concern" +require "paper_trail/version_number" +require "paper_trail/serializers/json" +require "paper_trail/serializers/yaml" module PaperTrail extend PaperTrail::Cleaner