smart_injection 0.1.0 → 0.3.0

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: a205772dafa117f100cd5c63816db14f1c2c39dc294dfc9d92abd77eec24f3b9
4
- data.tar.gz: ba602f4127dcccb4579550a2884f84dc35623f3a9f9fef5cce4881c40b5bfe85
3
+ metadata.gz: d2f3e7313fff33403ea88f194361cce0c1663621df28a4f4155d976206df2c93
4
+ data.tar.gz: 530212534a8f8b83b111bd81d78f262e05e6d20c4284088128420ef572ac5832
5
5
  SHA512:
6
- metadata.gz: 34094f99543b3643f706f9fe21c0a9d5b9d30e47bbc1f06104a1a83f282149194cc97fe690c5f73bd4f2ba0fcbd1c7c66d48a528b34df2f0880d0b69b9017e30
7
- data.tar.gz: 01dcae384d39e0ff46dc299bd55cfb94571b18462c924767d9b2ce8268c9d318d8352386909209c7d0e2387f9867c7fc3e7d70509a8529546605fad0c372046c
6
+ metadata.gz: 2823f1a312b377c04eba486c553f379a53dfb5327571e52493aa55e8a9311ee6b6aaf35414c0459fe3483d2a33722205ddd6c3eb89c697c60e458ddf0e373032
7
+ data.tar.gz: 1706bdfd3038fdf5856a87b944be5dc2b972112997d26688ba95a4fe895706eb10b1c428d67620b2f7c29cb9f764bd2ef1b8e9452f98419926475cefa2c941c0
data/.rubocop.yml CHANGED
@@ -5,7 +5,8 @@ inherit_gem:
5
5
  - lib/rubocop.rspec.yml
6
6
 
7
7
  AllCops:
8
- TargetRubyVersion: 2.7.1
8
+ TargetRubyVersion: 3.0.0
9
+ NewCops: enable
9
10
  Include:
10
11
  - lib/**/*.rb
11
12
  - spec/**/*.rb
data/CHANGELOG.md CHANGED
@@ -1,6 +1,20 @@
1
1
  # Changelog
2
2
  All notable changes to this project will be documented in this file.
3
3
 
4
+ # [0.3.0] - 2023-01-13
5
+ ## Changed
6
+ - Temporary disabled hard depenedncy binding of dependency locator.
7
+ The nature of dependency binding inside the injectable class will be reviewed and reworked
8
+ in dependncy injection terms and theory (need to be reviewed current "bind" behavior).
9
+ Memoization now working in runtime mode with container and dependcy locator in combination.
10
+
11
+ # [0.2.0] - 2021-01-18
12
+ ## Added
13
+ - Support for **Ruby@3**;
14
+
15
+ ## Changed
16
+ - No more `TravisCI` (todo: migrate to `GitHub Actions`);
17
+
4
18
  # [0.1.0] - 2020-07-09
5
19
 
6
20
  - Release :)
data/Gemfile.lock CHANGED
@@ -1,104 +1,108 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- smart_injection (0.0.0.alpha2)
5
- smart_container (~> 0.8, >= 0.8.1)
6
- smart_engine (~> 0.7)
4
+ smart_injection (0.3.0)
5
+ smart_container (~> 0.9)
6
+ smart_engine (~> 0.11)
7
7
 
8
8
  GEM
9
9
  remote: https://rubygems.org/
10
10
  specs:
11
- activesupport (6.0.3.2)
11
+ activesupport (6.1.1)
12
12
  concurrent-ruby (~> 1.0, >= 1.0.2)
13
- i18n (>= 0.7, < 2)
14
- minitest (~> 5.1)
15
- tzinfo (~> 1.1)
16
- zeitwerk (~> 2.2, >= 2.2.2)
17
- armitage-rubocop (0.85.1)
18
- rubocop (= 0.85.1)
19
- rubocop-performance (= 1.6.1)
20
- rubocop-rails (= 2.6.0)
13
+ i18n (>= 1.6, < 2)
14
+ minitest (>= 5.1)
15
+ tzinfo (~> 2.0)
16
+ zeitwerk (~> 2.3)
17
+ armitage-rubocop (1.7.0.1)
18
+ rubocop (= 1.7.0)
19
+ rubocop-performance (= 1.9.1)
20
+ rubocop-rails (= 2.9.1)
21
21
  rubocop-rake (= 0.5.1)
22
- rubocop-rspec (= 1.40.0)
22
+ rubocop-rspec (= 2.1.0)
23
23
  ast (2.4.1)
24
24
  coderay (1.1.3)
25
- concurrent-ruby (1.1.6)
25
+ concurrent-ruby (1.1.7)
26
26
  diff-lcs (1.4.4)
27
- docile (1.3.2)
28
- i18n (1.8.3)
27
+ docile (1.3.5)
28
+ i18n (1.8.7)
29
29
  concurrent-ruby (~> 1.0)
30
30
  method_source (1.0.0)
31
- minitest (5.14.1)
32
- parallel (1.19.2)
33
- parser (2.7.1.4)
31
+ minitest (5.14.3)
32
+ parallel (1.20.1)
33
+ parser (3.0.0.0)
34
34
  ast (~> 2.4.1)
35
35
  pry (0.13.1)
36
36
  coderay (~> 1.1)
37
37
  method_source (~> 1.0)
38
38
  rack (2.2.3)
39
39
  rainbow (3.0.0)
40
- rake (13.0.1)
41
- regexp_parser (1.7.1)
40
+ rake (13.0.3)
41
+ regexp_parser (2.0.3)
42
42
  rexml (3.2.4)
43
- rspec (3.9.0)
44
- rspec-core (~> 3.9.0)
45
- rspec-expectations (~> 3.9.0)
46
- rspec-mocks (~> 3.9.0)
47
- rspec-core (3.9.2)
48
- rspec-support (~> 3.9.3)
49
- rspec-expectations (3.9.2)
43
+ rspec (3.10.0)
44
+ rspec-core (~> 3.10.0)
45
+ rspec-expectations (~> 3.10.0)
46
+ rspec-mocks (~> 3.10.0)
47
+ rspec-core (3.10.1)
48
+ rspec-support (~> 3.10.0)
49
+ rspec-expectations (3.10.1)
50
50
  diff-lcs (>= 1.2.0, < 2.0)
51
- rspec-support (~> 3.9.0)
52
- rspec-mocks (3.9.1)
51
+ rspec-support (~> 3.10.0)
52
+ rspec-mocks (3.10.1)
53
53
  diff-lcs (>= 1.2.0, < 2.0)
54
- rspec-support (~> 3.9.0)
55
- rspec-support (3.9.3)
56
- rubocop (0.85.1)
54
+ rspec-support (~> 3.10.0)
55
+ rspec-support (3.10.1)
56
+ rubocop (1.7.0)
57
57
  parallel (~> 1.10)
58
- parser (>= 2.7.0.1)
58
+ parser (>= 2.7.1.5)
59
59
  rainbow (>= 2.2.2, < 4.0)
60
- regexp_parser (>= 1.7)
60
+ regexp_parser (>= 1.8, < 3.0)
61
61
  rexml
62
- rubocop-ast (>= 0.0.3)
62
+ rubocop-ast (>= 1.2.0, < 2.0)
63
63
  ruby-progressbar (~> 1.7)
64
64
  unicode-display_width (>= 1.4.0, < 2.0)
65
- rubocop-ast (0.1.0)
66
- parser (>= 2.7.0.1)
67
- rubocop-performance (1.6.1)
68
- rubocop (>= 0.71.0)
69
- rubocop-rails (2.6.0)
65
+ rubocop-ast (1.4.0)
66
+ parser (>= 2.7.1.5)
67
+ rubocop-performance (1.9.1)
68
+ rubocop (>= 0.90.0, < 2.0)
69
+ rubocop-ast (>= 0.4.0)
70
+ rubocop-rails (2.9.1)
70
71
  activesupport (>= 4.2.0)
71
72
  rack (>= 1.1)
72
- rubocop (>= 0.82.0)
73
+ rubocop (>= 0.90.0, < 2.0)
73
74
  rubocop-rake (0.5.1)
74
75
  rubocop
75
- rubocop-rspec (1.40.0)
76
- rubocop (>= 0.68.1)
77
- ruby-progressbar (1.10.1)
78
- simplecov (0.18.5)
76
+ rubocop-rspec (2.1.0)
77
+ rubocop (~> 1.0)
78
+ rubocop-ast (>= 1.1.0)
79
+ ruby-progressbar (1.11.0)
80
+ simplecov (0.21.2)
79
81
  docile (~> 1.1)
80
82
  simplecov-html (~> 0.11)
81
- simplecov-html (0.12.2)
82
- smart_container (0.8.1)
83
- smart_engine (~> 0.5)
84
- smart_engine (0.7.0)
85
- thread_safe (0.3.6)
86
- tzinfo (1.2.7)
87
- thread_safe (~> 0.1)
83
+ simplecov_json_formatter (~> 0.1)
84
+ simplecov-html (0.12.3)
85
+ simplecov_json_formatter (0.1.2)
86
+ smart_container (0.11.0)
87
+ smart_engine (~> 0.17)
88
+ smart_engine (0.17.0)
89
+ tzinfo (2.0.4)
90
+ concurrent-ruby (~> 1.0)
88
91
  unicode-display_width (1.7.0)
89
- zeitwerk (2.3.1)
92
+ zeitwerk (2.4.2)
90
93
 
91
94
  PLATFORMS
92
- ruby
95
+ arm64-darwin-21
96
+ x86_64-darwin-20
93
97
 
94
98
  DEPENDENCIES
95
- armitage-rubocop (~> 0.85)
96
- bundler (~> 2.1)
99
+ armitage-rubocop (~> 1.7)
100
+ bundler (~> 2.2)
97
101
  pry (~> 0.13)
98
102
  rake (~> 13.0)
99
- rspec (~> 3.9)
100
- simplecov (~> 0.18)
103
+ rspec (~> 3.10)
104
+ simplecov (~> 0.21)
101
105
  smart_injection!
102
106
 
103
107
  BUNDLED WITH
104
- 2.1.4
108
+ 2.2.3
data/README.md CHANGED
@@ -1,6 +1,14 @@
1
- # SmartCore::Injection &middot; [![Gem Version](https://badge.fury.io/rb/smart_injection.svg)](https://badge.fury.io/rb/smart_injection) [![Build Status](https://travis-ci.org/smart-rb/smart_injection.svg?branch=master)](https://travis-ci.org/smart-rb/smart_injection)
1
+ # SmartCore::Injection &middot; <a target="_blank" href="https://github.com/Cado-Labs"><img src="https://github.com/Cado-Labs/cado-labs-logos/raw/main/cado_labs_badge.svg" alt="Supported by Cado Labs" style="max-width: 100%; height: 20px"></a> &middot; [![Gem Version](https://badge.fury.io/rb/smart_injection.svg)](https://badge.fury.io/rb/smart_injection)
2
2
 
3
- Dependency injection principles and idioms realized in scope of Ruby.
3
+ Dependency injection principles and idioms realized in scope of Ruby. Support for method-injeciton strategy, container-based dependency resolving, static and dynamic bindings and etc.
4
+
5
+ ---
6
+
7
+ <p>
8
+ <a href="https://github.com/Cado-Labs">
9
+ <img src="https://github.com/Cado-Labs/cado-labs-logos/blob/main/cado_labs_supporting.svg" alt="Supported by Cado Labs" />
10
+ </a>
11
+ </p>
4
12
 
5
13
  ---
6
14
 
@@ -22,6 +30,18 @@ Dependency injection principles and idioms realized in scope of Ruby.
22
30
 
23
31
  ---
24
32
 
33
+ ## Usage
34
+
35
+ - [Installation](#installation)
36
+ - [Synopsis](#synopsis)
37
+ - [Roadmap](#roadmap)
38
+ - [Build](#build)
39
+ - [Contributing](#contributing)
40
+ - [License](#license)
41
+ - [Authors](#authors)
42
+
43
+ ---
44
+
25
45
  ## Installation
26
46
 
27
47
  ```ruby
@@ -54,7 +74,7 @@ end
54
74
 
55
75
  ServiceContainer = SmartCore::Container.define do
56
76
  namespace(:rands) do
57
- register(:alphanum) { -> { SeureRandom.alphanumeric } }
77
+ register(:alphanum) { -> { SecureRandom.alphanumeric } }
58
78
  register(:hex) { -> { SecureRandom.hex } }
59
79
  end
60
80
  end
@@ -105,6 +125,37 @@ end
105
125
 
106
126
  ---
107
127
 
128
+ ## Roadmap
129
+
130
+ - **[0.3.0]** - support for default injection configuration which should be specified in `SmartCore::Injection` module inclusion (in addition to default containers)
131
+ - **[0.x.0]** - more docs, more examples, more tips-and-tricks :)
132
+ - **[0.x.0]** - migrate to GithubActions;
133
+ - **[0.x.0]** - type signatures (rbs);
134
+
135
+ ---
136
+
137
+ ## Build
138
+
139
+ - run tests:
140
+
141
+ ```shell
142
+ bundle exce rake rspec
143
+ ```
144
+
145
+ - run code style checking:
146
+
147
+ ```shell
148
+ bundle exec rake rubocop
149
+ ```
150
+
151
+ - run code style checking with auto-correction:
152
+
153
+ ```shell
154
+ bundle exec rake rubocop -A
155
+ ```
156
+
157
+ ---
158
+
108
159
  ## Contributing
109
160
 
110
161
  - Fork it ( https://github.com/smart-rb/smart_injection )
@@ -117,6 +168,12 @@ end
117
168
 
118
169
  Released under MIT License.
119
170
 
171
+ ## Supporting
172
+
173
+ <a href="https://github.com/Cado-Labs">
174
+ <img src="https://github.com/Cado-Labs/cado-labs-logos/blob/main/cado_labs_logo.png" alt="Supported by Cado Labs" />
175
+ </a>
176
+
120
177
  ## Authors
121
178
 
122
179
  [Rustam Ibragimov](https://github.com/0exp)
data/bin/console CHANGED
@@ -2,7 +2,7 @@
2
2
  # frozen_string_literal: true
3
3
 
4
4
  require 'bundler/setup'
5
- require 'smart_core/injection'
5
+ require 'smart_core'
6
6
 
7
- require 'irb'
8
- IRB.start(__FILE__)
7
+ require 'pry'
8
+ Pry.start
@@ -2,14 +2,18 @@
2
2
 
3
3
  # @api private
4
4
  # @since 0.1.0
5
+ # @version 0.3.0
5
6
  class SmartCore::Injection::Locator::Dependency
7
+ # @option memoize [Boolean]
6
8
  # @return [void]
7
9
  #
8
10
  # @api private
9
11
  # @since 0.1.0
10
- def initialize
12
+ # @version 0.3.0
13
+ def initialize(memoize:)
11
14
  @binded = false
12
15
  @value = nil
16
+ @memoize = memoize
13
17
  @barrier = SmartCore::Engine::Lock.new
14
18
  end
15
19
 
@@ -29,14 +33,32 @@ class SmartCore::Injection::Locator::Dependency
29
33
  # @return [Any]
30
34
  #
31
35
  # @api public
32
- # @since 0.7.0
36
+ # @since 0.2.0
37
+ # @version 0.3.0
33
38
  def bind(&block)
34
39
  with_barrier do
35
- if @binded
36
- @value
40
+ # NOTE:
41
+ # Temporary disabled old variant of dependency resolving
42
+ # cuz we need to reivew the canonical way of dependency resolving
43
+ # and rework the resolving at all on runtime level (under `memoize: true` option).
44
+ # Old code variant:
45
+ #
46
+ # if @binded
47
+ # @value
48
+ # else
49
+ # @binded = true
50
+ # @value = yield
51
+ # end
52
+
53
+ if @memoize
54
+ if @binded
55
+ @value
56
+ else
57
+ @binded = true
58
+ @value = yield
59
+ end
37
60
  else
38
- @binded = true
39
- @value = yield
61
+ yield
40
62
  end
41
63
  end
42
64
  end
@@ -11,7 +11,7 @@ module SmartCore::Injection::Locator::Factory
11
11
  # @since 0.1.0
12
12
  def create(injection_settings, import_key, import_path)
13
13
  container_proxy = create_container_proxy(injection_settings)
14
- create_locator(import_path, container_proxy).tap do |locator|
14
+ create_locator(injection_settings, import_path, container_proxy).tap do |locator|
15
15
  control_injection_memoization(injection_settings, container_proxy, locator, import_path)
16
16
  end
17
17
  end
@@ -29,14 +29,19 @@ module SmartCore::Injection::Locator::Factory
29
29
  )
30
30
  end
31
31
 
32
+ # @param injection_settings [SmartCore::Injection::Injector::InjectionSettings]
32
33
  # @param import_path [String]
33
34
  # @param container_proxy [SmartCore::Injection::Locator::ContainerProxy]
34
35
  # @return [SmartCore::Injection::Locator]
35
36
  #
36
37
  # @api private
37
38
  # @since 0.1.0
38
- def create_locator(import_path, container_proxy)
39
- SmartCore::Injection::Locator.new(import_path, container_proxy)
39
+ def create_locator(injection_settings, import_path, container_proxy)
40
+ SmartCore::Injection::Locator.new(
41
+ import_path,
42
+ container_proxy,
43
+ memoize_dependency: injection_settings.memoize
44
+ )
40
45
  end
41
46
 
42
47
  # @param injection_settings [SmartCore::Injection::Injector::InjectionSettings]
@@ -2,6 +2,7 @@
2
2
 
3
3
  # @api private
4
4
  # @since 0.1.0
5
+ # @version 0.3.0
5
6
  class SmartCore::Injection::Locator
6
7
  require_relative 'locator/container_proxy'
7
8
  require_relative 'locator/dependency'
@@ -15,14 +16,17 @@ class SmartCore::Injection::Locator
15
16
 
16
17
  # @param import_path [String]
17
18
  # @param container_proxy [SmartCore::Injection::Locator::ContainerProxy]
19
+ # @option memoize_dependency [Boolean]
18
20
  # @return [void]
19
21
  #
20
22
  # @api private
21
23
  # @since 0.1.0
22
- def initialize(import_path, container_proxy)
24
+ # @version 0.3.0
25
+ def initialize(import_path, container_proxy, memoize_dependency:)
23
26
  @import_path = import_path
24
27
  @container_proxy = container_proxy
25
- @dependency = SmartCore::Injection::Locator::Dependency.new
28
+ @memoize_dependency = memoize_dependency
29
+ @dependency = SmartCore::Injection::Locator::Dependency.new(memoize: memoize_dependency)
26
30
  end
27
31
 
28
32
  # @return [Any]
@@ -56,4 +60,12 @@ class SmartCore::Injection::Locator
56
60
  # @api private
57
61
  # @since 0.1.0
58
62
  attr_reader :container_proxy
63
+
64
+ # NOTE: non-usable ivar, added only for commfort debaggung
65
+ # NOTE: will be reworked in next version
66
+ # @return [Boolean]
67
+ #
68
+ # @api private
69
+ # @since 0.3.0
70
+ attr_reader :memoize_dependency
59
71
  end
@@ -6,6 +6,7 @@ module SmartCore
6
6
  #
7
7
  # @api public
8
8
  # @since 0.1.0
9
- VERSION = '0.1.0'
9
+ # @version 0.3.0
10
+ VERSION = '0.3.0'
10
11
  end
11
12
  end
@@ -11,7 +11,11 @@ Gem::Specification.new do |spec|
11
11
  spec.email = ['iamdaiver@gmail.com']
12
12
 
13
13
  spec.summary = 'DI principles and idioms realized in scope of Ruby'
14
- spec.description = 'DI principles and idioms realized in scope of Ruby'
14
+ spec.description = 'DI principles and idioms realized in scope of Ruby.' \
15
+ 'Support for method-injeciton strategy, ' \
16
+ 'container-based dependency resolving, ' \
17
+ 'static and dynamic bindings and etc.'
18
+
15
19
  spec.homepage = 'https://github.com/smart-rb/smart_injection'
16
20
  spec.license = 'MIT'
17
21
 
@@ -30,13 +34,13 @@ Gem::Specification.new do |spec|
30
34
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
31
35
  spec.require_paths = ['lib']
32
36
 
33
- spec.add_runtime_dependency 'smart_engine', '~> 0.7'
34
- spec.add_runtime_dependency 'smart_container', '~> 0.8', '>= 0.8.1'
37
+ spec.add_runtime_dependency 'smart_engine', '~> 0.11'
38
+ spec.add_runtime_dependency 'smart_container', '~> 0.9'
35
39
 
36
- spec.add_development_dependency 'bundler', '~> 2.1'
40
+ spec.add_development_dependency 'bundler', '~> 2.2'
37
41
  spec.add_development_dependency 'rake', '~> 13.0'
38
- spec.add_development_dependency 'rspec', '~> 3.9'
39
- spec.add_development_dependency 'armitage-rubocop', '~> 0.85'
40
- spec.add_development_dependency 'simplecov', '~> 0.18'
42
+ spec.add_development_dependency 'rspec', '~> 3.10'
43
+ spec.add_development_dependency 'armitage-rubocop', '~> 1.7'
44
+ spec.add_development_dependency 'simplecov', '~> 0.21'
41
45
  spec.add_development_dependency 'pry', '~> 0.13'
42
46
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: smart_injection
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rustam Ibragimov
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-07-09 00:00:00.000000000 Z
11
+ date: 2023-01-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: smart_engine
@@ -16,48 +16,42 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0.7'
19
+ version: '0.11'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0.7'
26
+ version: '0.11'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: smart_container
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '0.8'
34
- - - ">="
35
- - !ruby/object:Gem::Version
36
- version: 0.8.1
33
+ version: '0.9'
37
34
  type: :runtime
38
35
  prerelease: false
39
36
  version_requirements: !ruby/object:Gem::Requirement
40
37
  requirements:
41
38
  - - "~>"
42
39
  - !ruby/object:Gem::Version
43
- version: '0.8'
44
- - - ">="
45
- - !ruby/object:Gem::Version
46
- version: 0.8.1
40
+ version: '0.9'
47
41
  - !ruby/object:Gem::Dependency
48
42
  name: bundler
49
43
  requirement: !ruby/object:Gem::Requirement
50
44
  requirements:
51
45
  - - "~>"
52
46
  - !ruby/object:Gem::Version
53
- version: '2.1'
47
+ version: '2.2'
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
51
  requirements:
58
52
  - - "~>"
59
53
  - !ruby/object:Gem::Version
60
- version: '2.1'
54
+ version: '2.2'
61
55
  - !ruby/object:Gem::Dependency
62
56
  name: rake
63
57
  requirement: !ruby/object:Gem::Requirement
@@ -78,42 +72,42 @@ dependencies:
78
72
  requirements:
79
73
  - - "~>"
80
74
  - !ruby/object:Gem::Version
81
- version: '3.9'
75
+ version: '3.10'
82
76
  type: :development
83
77
  prerelease: false
84
78
  version_requirements: !ruby/object:Gem::Requirement
85
79
  requirements:
86
80
  - - "~>"
87
81
  - !ruby/object:Gem::Version
88
- version: '3.9'
82
+ version: '3.10'
89
83
  - !ruby/object:Gem::Dependency
90
84
  name: armitage-rubocop
91
85
  requirement: !ruby/object:Gem::Requirement
92
86
  requirements:
93
87
  - - "~>"
94
88
  - !ruby/object:Gem::Version
95
- version: '0.85'
89
+ version: '1.7'
96
90
  type: :development
97
91
  prerelease: false
98
92
  version_requirements: !ruby/object:Gem::Requirement
99
93
  requirements:
100
94
  - - "~>"
101
95
  - !ruby/object:Gem::Version
102
- version: '0.85'
96
+ version: '1.7'
103
97
  - !ruby/object:Gem::Dependency
104
98
  name: simplecov
105
99
  requirement: !ruby/object:Gem::Requirement
106
100
  requirements:
107
101
  - - "~>"
108
102
  - !ruby/object:Gem::Version
109
- version: '0.18'
103
+ version: '0.21'
110
104
  type: :development
111
105
  prerelease: false
112
106
  version_requirements: !ruby/object:Gem::Requirement
113
107
  requirements:
114
108
  - - "~>"
115
109
  - !ruby/object:Gem::Version
116
- version: '0.18'
110
+ version: '0.21'
117
111
  - !ruby/object:Gem::Dependency
118
112
  name: pry
119
113
  requirement: !ruby/object:Gem::Requirement
@@ -128,7 +122,9 @@ dependencies:
128
122
  - - "~>"
129
123
  - !ruby/object:Gem::Version
130
124
  version: '0.13'
131
- description: DI principles and idioms realized in scope of Ruby
125
+ description: DI principles and idioms realized in scope of Ruby.Support for method-injeciton
126
+ strategy, container-based dependency resolving, static and dynamic bindings and
127
+ etc.
132
128
  email:
133
129
  - iamdaiver@gmail.com
134
130
  executables: []
@@ -138,7 +134,6 @@ files:
138
134
  - ".gitignore"
139
135
  - ".rspec"
140
136
  - ".rubocop.yml"
141
- - ".travis.yml"
142
137
  - CHANGELOG.md
143
138
  - CODE_OF_CONDUCT.md
144
139
  - Gemfile
@@ -172,7 +167,7 @@ metadata:
172
167
  homepage_uri: https://github.com/smart-rb/smart_injection
173
168
  source_code_uri: https://github.com/smart-rb/smart_injection
174
169
  changelog_uri: https://github.com/smart-rb/smart_injection/blob/master/CHANGELOG.md
175
- post_install_message:
170
+ post_install_message:
176
171
  rdoc_options: []
177
172
  require_paths:
178
173
  - lib
@@ -187,8 +182,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
187
182
  - !ruby/object:Gem::Version
188
183
  version: '0'
189
184
  requirements: []
190
- rubygems_version: 3.1.2
191
- signing_key:
185
+ rubygems_version: 3.3.7
186
+ signing_key:
192
187
  specification_version: 4
193
188
  summary: DI principles and idioms realized in scope of Ruby
194
189
  test_files: []
data/.travis.yml DELETED
@@ -1,23 +0,0 @@
1
- ---
2
- language: ruby
3
- cache: bundler
4
- os: linux
5
- dist: xenial
6
- jobs:
7
- fast_finish: true
8
- include:
9
- - rvm: 2.4.10
10
- - rvm: 2.5.8
11
- - rvm: 2.6.6
12
- - rvm: 2.7.1
13
- - rvm: jruby-head
14
- - rvm: ruby-head
15
- - rvm: truffleruby
16
- allow_failures:
17
- - rvm: ruby-head
18
- - rvm: jruby-head
19
- - rvm: truffleruby
20
- before_install: gem install bundler
21
- script:
22
- - bundle exec rake rubocop
23
- - bundle exec rake rspec