smart_ioc 0.5.2 → 0.5.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f7dac45d6133624620331b4bbc980e7e19574881e51b4c98b2558d7b5114c584
4
- data.tar.gz: a7753416faca728d5f72e2d8d215b3f77ef7de7eeb54f58601bf97d3b2d92f5d
3
+ metadata.gz: 4122153af2d77cfb9355497cf34a415aeb02bb9eb6cef8af6a4f467fa793df08
4
+ data.tar.gz: b31a912ab5cdb90c000fd1ab96d5ee62a3b60b8a839af5fc437aa93b855a79b8
5
5
  SHA512:
6
- metadata.gz: ca530b375da6e1467d9d6ac60e7c84e3be955a8c1922bd4b4a2a24d53057ba3cb707ffe87a7bbaf0e897749b4825cdf138312df8fc24441a921c41cf60f8824d
7
- data.tar.gz: ca838c6018069eead30c652c05f74a2c0f345429b87845e70c9f9d5cfb1d98021cb96f93417605ac2171ac99ee6ecf31dd12341f7fa85becdb201dcf5940e367
6
+ metadata.gz: cb497f0de22e9823795b179db0c003b029a1f4425dedb7d4983f6a6fb891c56f0d44cf2fed41c1098596cd07636fcd35ca376e564dc6813da00f0cf2c8a2b581
7
+ data.tar.gz: '08a61bbb285fb6c777caae491d56475d27761c102c41df5bf7c9b83c31619b227bd0dc6a0668fb3c1f1deb7af06472de6e91b015620bb56057a95b9c7306dcc7'
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- smart_ioc (0.5.2)
4
+ smart_ioc (0.5.3)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -12,7 +12,6 @@ class SmartIoC::BeanFactory
12
12
  @singleton_scope = SmartIoC::Scopes::Singleton.new
13
13
  @prototype_scope = SmartIoC::Scopes::Prototype.new
14
14
  @thread_scope = SmartIoC::Scopes::Request.new
15
- @semaphore = Mutex.new
16
15
  end
17
16
 
18
17
  def clear_scopes
@@ -2,6 +2,7 @@ class SmartIoC::BeanFileLoader
2
2
  def initialize
3
3
  @loaded_locations = {}
4
4
  @load_proc = Proc.new { |location| load(location) }
5
+ @semaphore = Mutex.new
5
6
  end
6
7
 
7
8
  def set_load_proc(&block)
@@ -17,7 +18,10 @@ class SmartIoC::BeanFileLoader
17
18
  locations.each do |location|
18
19
  next if @loaded_locations.has_key?(location)
19
20
  @loaded_locations[location] = true
20
- @load_proc.call(location)
21
+
22
+ @semaphore.synchronize do
23
+ @load_proc.call(location)
24
+ end
21
25
  end
22
26
 
23
27
  nil
@@ -1,3 +1,3 @@
1
1
  module SmartIoC
2
- VERSION = "0.5.2"
2
+ VERSION = "0.5.3"
3
3
  end
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: smart_ioc
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.2
4
+ version: 0.5.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ruslan Gatiyatov
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2024-10-07 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: bundler
@@ -120,7 +119,6 @@ homepage: http://github.com/droidlabs/smart_ioc
120
119
  licenses:
121
120
  - MIT
122
121
  metadata: {}
123
- post_install_message:
124
122
  rdoc_options: []
125
123
  require_paths:
126
124
  - lib
@@ -135,8 +133,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
135
133
  - !ruby/object:Gem::Version
136
134
  version: '0'
137
135
  requirements: []
138
- rubygems_version: 3.5.10
139
- signing_key:
136
+ rubygems_version: 3.6.9
140
137
  specification_version: 4
141
138
  summary: Inversion of Control Container
142
139
  test_files: