smart_injection 0.1.0 → 0.2.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: be2ddc375b6609c3bfa9ffebf1b7b85ddccdaa60018e563feeb10ae5693c637e
4
+ data.tar.gz: 3ca99d637fed907c2a2241d01a704eea1eb9d538ce61b29d741925b62d75bef1
5
5
  SHA512:
6
- metadata.gz: 34094f99543b3643f706f9fe21c0a9d5b9d30e47bbc1f06104a1a83f282149194cc97fe690c5f73bd4f2ba0fcbd1c7c66d48a528b34df2f0880d0b69b9017e30
7
- data.tar.gz: 01dcae384d39e0ff46dc299bd55cfb94571b18462c924767d9b2ce8268c9d318d8352386909209c7d0e2387f9867c7fc3e7d70509a8529546605fad0c372046c
6
+ metadata.gz: bf831df6f117f75c3ff7eca97ebe7467bc87b4b4464851d2a489f71ac959f59fa101fba123cd194a10501f43617ebfee73d68643bd3968049ba0942cbfa1c269
7
+ data.tar.gz: 465ab0c6f1849d045776c9e88e448872fbf5785641286a94205a9a770d4f56518206f473b9f0d1c29109648f90ebc4206c5ba4ed85cfefea2619dcceaa824da8
@@ -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
@@ -1,6 +1,13 @@
1
1
  # Changelog
2
2
  All notable changes to this project will be documented in this file.
3
3
 
4
+ # [0.2.0] - 2021-01-18
5
+ ## Added
6
+ - Support for *Ruby@3*;
7
+
8
+ ## Changed
9
+ - No more `TravisCI` (todo: migrate to `GitHub Actions`);
10
+
4
11
  # [0.1.0] - 2020-07-09
5
12
 
6
13
  - Release :)
@@ -1,104 +1,107 @@
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.2.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.9.0)
87
+ smart_engine (~> 0.11)
88
+ smart_engine (0.11.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
+ x86_64-darwin-20
93
96
 
94
97
  DEPENDENCIES
95
- armitage-rubocop (~> 0.85)
96
- bundler (~> 2.1)
98
+ armitage-rubocop (~> 1.7)
99
+ bundler (~> 2.2)
97
100
  pry (~> 0.13)
98
101
  rake (~> 13.0)
99
- rspec (~> 3.9)
100
- simplecov (~> 0.18)
102
+ rspec (~> 3.10)
103
+ simplecov (~> 0.21)
101
104
  smart_injection!
102
105
 
103
106
  BUNDLED WITH
104
- 2.1.4
107
+ 2.2.3
data/README.md CHANGED
@@ -1,6 +1,6 @@
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; [![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
4
 
5
5
  ---
6
6
 
@@ -22,6 +22,18 @@ Dependency injection principles and idioms realized in scope of Ruby.
22
22
 
23
23
  ---
24
24
 
25
+ ## Usage
26
+
27
+ - [Installation](#installation)
28
+ - [Synopsis](#synopsis)
29
+ - [Roadmap](#roadmap)
30
+ - [Build](#build)
31
+ - [Contributing](#contributing)
32
+ - [License](#license)
33
+ - [Authors](#authors)
34
+
35
+ ---
36
+
25
37
  ## Installation
26
38
 
27
39
  ```ruby
@@ -105,6 +117,36 @@ end
105
117
 
106
118
  ---
107
119
 
120
+ ## Roadmap
121
+
122
+ - **[0.3.0]** - support for default injection configuration which should be specified in `SmartCore::Injection` module inclusion (in addition to default containers)
123
+ - **[0.x.0]** - more docs, more examples, more tips-and-tricks :)
124
+ - **[0.x.0]** - migrate to GithubActions;
125
+
126
+ ---
127
+
128
+ ## Build
129
+
130
+ - run tests:
131
+
132
+ ```shell
133
+ bundle exce rake rspec
134
+ ```
135
+
136
+ - run code style checking:
137
+
138
+ ```shell
139
+ bundle exec rake rubocop
140
+ ```
141
+
142
+ - run code style checking with auto-correction:
143
+
144
+ ```shell
145
+ bundle exec rake rubocop -A
146
+ ```
147
+
148
+ ---
149
+
108
150
  ## Contributing
109
151
 
110
152
  - Fork it ( https://github.com/smart-rb/smart_injection )
@@ -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
@@ -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.2.0
10
+ VERSION = '0.2.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.2.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: 2021-01-17 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.2.3
186
+ signing_key:
192
187
  specification_version: 4
193
188
  summary: DI principles and idioms realized in scope of Ruby
194
189
  test_files: []
@@ -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