Guest User

Untitled

a guest
Feb 19th, 2018
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.72 KB | None | 0 0
  1.  
  2. lib/merb-core/bootloader.rb | 6 +-----
  3. lib/merb-core/config.rb | 7 +++++++
  4. lib/merb-core/core_ext/kernel.rb | 5 +++--
  5. spec/private/core_ext/kernel_spec.rb | 2 +-
  6. 4 files changed, 12 insertions(+), 8 deletions(-)
  7.  
  8. diff --git a/lib/merb-core/bootloader.rb b/lib/merb-core/bootloader.rb
  9. index 5853c1a..585cfd0 100644
  10. --- a/lib/merb-core/bootloader.rb
  11. +++ b/lib/merb-core/bootloader.rb
  12. @@ -241,10 +241,6 @@ class Merb::BootLoader::BuildFramework < Merb::BootLoader
  13. end
  14.  
  15. class Merb::BootLoader::Dependencies < Merb::BootLoader
  16. -
  17. - cattr_accessor :dependencies
  18. - self.dependencies = []
  19. -
  20. # Load the init_file specified in Merb::Config or if not specified, the
  21. # init.rb file from the Merb configuration directory, and any environment
  22. # files, which register the list of necessary dependencies and any
  23. @@ -265,7 +261,7 @@ class Merb::BootLoader::Dependencies < Merb::BootLoader
  24. end
  25.  
  26. def self.load_dependencies
  27. - dependencies.each { |name, ver| Kernel.load_dependency(name, *ver) }
  28. + Merb::Config.dependencies.each { |name, ver| Kernel.load_dependency(name, *ver) }
  29. end
  30.  
  31. def self.enable_json_gem
  32. diff --git a/lib/merb-core/config.rb b/lib/merb-core/config.rb
  33. index 41ef3f1..fb285ca 100644
  34. --- a/lib/merb-core/config.rb
  35. +++ b/lib/merb-core/config.rb
  36. @@ -5,6 +5,9 @@ module Merb
  37.  
  38. class Config
  39.  
  40. + cattr_accessor :dependencies
  41. + self.dependencies = []
  42. +
  43. class << self
  44.  
  45. # ==== Returns
  46. @@ -28,6 +31,10 @@ module Merb
  47. }
  48. end
  49.  
  50. + def add_dependency(name, *ver)
  51. + dependencies << [name, ver]
  52. + end
  53. +
  54. # Yields the configuration.
  55. #
  56. # ==== Block parameters
  57. diff --git a/lib/merb-core/core_ext/kernel.rb b/lib/merb-core/core_ext/kernel.rb
  58. index bfca2e3..e67d3c9 100644
  59. --- a/lib/merb-core/core_ext/kernel.rb
  60. +++ b/lib/merb-core/core_ext/kernel.rb
  61. @@ -17,9 +17,10 @@ module Kernel
  62. def dependency(name, *ver)
  63. if Merb::BootLoader.finished?(Merb::BootLoader::Dependencies)
  64. load_dependency(name, *ver)
  65. - else
  66. - Merb::BootLoader::Dependencies.dependencies << [name, ver]
  67. end
  68. +
  69. + Merb::Config.add_dependency(name, *ver)
  70. +
  71. [name, ver]
  72. end
  73.  
  74. diff --git a/spec/private/core_ext/kernel_spec.rb b/spec/private/core_ext/kernel_spec.rb
  75. index 3df9834..ef1acde 100644
  76. --- a/spec/private/core_ext/kernel_spec.rb
  77. +++ b/spec/private/core_ext/kernel_spec.rb
  78. @@ -61,7 +61,7 @@ describe "Kernel#load_dependency" do
  79. rescue LoadError => e
  80. # some people may have no RSpec gem
  81. end
  82. - }.should_not change(Merb::BootLoader::Dependencies.dependencies, :size)
  83. + }.should_not change(Merb::Config.dependencies, :size)
  84. end
  85.  
  86. it "DOES NOT defer load to boot loader run and requires it right away" do
  87. --
  88. 1.5.6.2
Add Comment
Please, Sign In to add comment