From a603d3231683096085841ae6f0ba96eeb27171a3 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Mon, 7 Nov 2011 22:51:02 +0000 Subject: avoid circular requires Ruby 1.9.3 considers them harmful --- lib/mogilefs.rb | 9 ++++++++- lib/mogilefs/admin.rb | 2 -- lib/mogilefs/backend.rb | 3 --- lib/mogilefs/bigfile.rb | 1 - lib/mogilefs/client.rb | 1 - lib/mogilefs/mogilefs.rb | 3 --- lib/mogilefs/mysql.rb | 3 --- lib/mogilefs/pool.rb | 1 - lib/mogilefs/socket/pure_ruby.rb | 2 -- lib/mogilefs/util.rb | 1 - test/test_backend.rb | 2 -- test/test_db_backend.rb | 1 - test/test_mysql.rb | 1 - test/test_pool.rb | 2 +- 14 files changed, 9 insertions(+), 23 deletions(-) diff --git a/lib/mogilefs.rb b/lib/mogilefs.rb index d0f3e21..9ed0a32 100644 --- a/lib/mogilefs.rb +++ b/lib/mogilefs.rb @@ -34,11 +34,18 @@ module MogileFS require "mogilefs/copy_stream" X = MogileFS::CopyStream end + + # autoload rarely-used things: + autoload :Mysql, 'mogilefs/mysql' + autoload :Pool, 'mogilefs/pool' + autoload :Admin, 'mogilefs/admin' end +require 'mogilefs/util' +require 'mogilefs/socket' require 'mogilefs/backend' require 'mogilefs/http_file' +require 'mogilefs/http_reader' require 'mogilefs/client' require 'mogilefs/bigfile' require 'mogilefs/mogilefs' -require 'mogilefs/admin' diff --git a/lib/mogilefs/admin.rb b/lib/mogilefs/admin.rb index 0833bc2..c457090 100644 --- a/lib/mogilefs/admin.rb +++ b/lib/mogilefs/admin.rb @@ -1,6 +1,4 @@ # -*- encoding: binary -*- -require 'mogilefs/client' - ## # A MogileFS Administration Client diff --git a/lib/mogilefs/backend.rb b/lib/mogilefs/backend.rb index db13b45..ba9a398 100644 --- a/lib/mogilefs/backend.rb +++ b/lib/mogilefs/backend.rb @@ -1,7 +1,4 @@ # -*- encoding: binary -*- -require 'mogilefs' -require 'mogilefs/util' -require 'mogilefs/socket' require 'thread' ## diff --git a/lib/mogilefs/bigfile.rb b/lib/mogilefs/bigfile.rb index b681a08..cfd6580 100644 --- a/lib/mogilefs/bigfile.rb +++ b/lib/mogilefs/bigfile.rb @@ -1,6 +1,5 @@ # -*- encoding: binary -*- require 'uri' -require 'mogilefs/util' # Used for reading deprecated "bigfile" objects generated by the deprecated # mogtool(1) utility. This is for reading legacy data and not recommended for diff --git a/lib/mogilefs/client.rb b/lib/mogilefs/client.rb index 1ad6010..7268c7c 100644 --- a/lib/mogilefs/client.rb +++ b/lib/mogilefs/client.rb @@ -1,5 +1,4 @@ # -*- encoding: binary -*- -require 'mogilefs/backend' ## # MogileFS::Client is the MogileFS client base class. Concrete clients like diff --git a/lib/mogilefs/mogilefs.rb b/lib/mogilefs/mogilefs.rb index d506597..97e07e2 100644 --- a/lib/mogilefs/mogilefs.rb +++ b/lib/mogilefs/mogilefs.rb @@ -1,7 +1,4 @@ # -*- encoding: binary -*- -require 'mogilefs/client' -require 'mogilefs/util' -require 'mogilefs/http_reader' ## # MogileFS File manipulation client. diff --git a/lib/mogilefs/mysql.rb b/lib/mogilefs/mysql.rb index 4fe9606..4d06bc6 100644 --- a/lib/mogilefs/mysql.rb +++ b/lib/mogilefs/mysql.rb @@ -1,7 +1,4 @@ # -*- encoding: binary -*- -require 'mogilefs' -require 'mogilefs/backend' # for the exceptions - # read-only interface that can be a backend for MogileFS::MogileFS # # This provides direct, read-only access to any slave MySQL database to diff --git a/lib/mogilefs/pool.rb b/lib/mogilefs/pool.rb index 131e626..6033ada 100644 --- a/lib/mogilefs/pool.rb +++ b/lib/mogilefs/pool.rb @@ -1,6 +1,5 @@ # -*- encoding: binary -*- require 'thread' -require 'mogilefs' class MogileFS::Pool diff --git a/lib/mogilefs/socket/pure_ruby.rb b/lib/mogilefs/socket/pure_ruby.rb index 6b9efc0..24cd5ca 100644 --- a/lib/mogilefs/socket/pure_ruby.rb +++ b/lib/mogilefs/socket/pure_ruby.rb @@ -1,8 +1,6 @@ # -*- encoding: binary -*- # internal implementation details here, do not rely on them in your code -require "socket" require "io/wait" -require "timeout" class MogileFS::Socket < Socket include MogileFS::SocketCommon diff --git a/lib/mogilefs/util.rb b/lib/mogilefs/util.rb index aaf7b7a..cdd67d7 100644 --- a/lib/mogilefs/util.rb +++ b/lib/mogilefs/util.rb @@ -1,5 +1,4 @@ # -*- encoding: binary -*- -require 'mogilefs' module MogileFS::Util class StoreContent < Proc diff --git a/test/test_backend.rb b/test/test_backend.rb index 6211b34..1e462b5 100644 --- a/test/test_backend.rb +++ b/test/test_backend.rb @@ -4,8 +4,6 @@ require './test/setup' $TESTING = true -require 'mogilefs/backend' - class MogileFS::Backend attr_accessor :hosts diff --git a/test/test_db_backend.rb b/test/test_db_backend.rb index f56300b..d67a400 100644 --- a/test/test_db_backend.rb +++ b/test/test_db_backend.rb @@ -1,6 +1,5 @@ # -*- encoding: binary -*- require './test/setup' -require 'mogilefs/mysql' class TestMogileFS__DbBackend < Test::Unit::TestCase def setup diff --git a/test/test_mysql.rb b/test/test_mysql.rb index 1a1d5cc..afc845f 100644 --- a/test/test_mysql.rb +++ b/test/test_mysql.rb @@ -1,6 +1,5 @@ # -*- encoding: binary -*- require './test/setup' -require 'mogilefs/mysql' class MogileFS::Mysql public :refresh_device diff --git a/test/test_pool.rb b/test/test_pool.rb index 4558c27..9e631c5 100644 --- a/test/test_pool.rb +++ b/test/test_pool.rb @@ -2,7 +2,7 @@ require 'test/unit' $TESTING = true - +require 'mogilefs' require 'mogilefs/pool' class MogileFS::Pool -- cgit v1.2.3-24-ge0c7