infusible 0.1.0 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +1 -2
- data/README.adoc +20 -11
- data/infusible.gemspec +2 -2
- data.tar.gz.sig +0 -0
- metadata +5 -5
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c106dc7bb956b3b25aaaa18c62161936ac579a1c81123bcb088374c50c43ceed
|
4
|
+
data.tar.gz: 386593b46595b16473ccc8daa6f13d4be885bf677244b7939dcb13bb718e2657
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9930c6ea24fb9e165e7e534d4e01c07e542f522b60d33a2b5ba79a3dd72ed5ac8bc38422ec7f5554040aca1453b8dcad87dceee5bbd8d229c156be3474c158b3
|
7
|
+
data.tar.gz: a1506ef91768a9a1e46099f9b4d91a7ccdfc56f904a5e12172c2bf9ea920cb216c181f159637e834898ba110c5a674612e7dc822d0a986623b207ccd62673cba
|
checksums.yaml.gz.sig
CHANGED
@@ -1,2 +1 @@
|
|
1
|
-
|
2
|
-
���_���:�_=e��'�*��R���١�?>�l���r]�o���5�`�"ש��6�}�E��0J��+Sh���f4vԊ�[2��/<��I�$��ʬ�ܯ�6�߉8X�SX�v�G�2�x\�� ���};����n�V��H��8}�0�����U밳�&M�Z�@��$� �> ��Z�
|
1
|
+
�q���&��%ԟ ����x8sҩ�u�_�H�2)I�h��x���<�97���#��jη������E��gg��(�k�:����*&�ծGl��d�����`�K�V-�7cT닲��Z����{e�����z���(���p�y:J[�=��δ���=�U���d��1�fy�������.���x�u{T���U$�4�=8��G8�q>�Tԥa���`�@��=ΙJ
|
data/README.adoc
CHANGED
@@ -389,7 +389,25 @@ end
|
|
389
389
|
|
390
390
|
⚠️ I mention `around` block support last because the caveat is that you can't use an `around` block with any RSpec test double since link:https://github.com/rspec/rspec-mocks/issues/1283[RSpec can't guarantee proper cleanup]. This is why the RSpec `before` and `after` blocks were used to guarantee proper setup and teardown. That said, you can use _fakes_ or any object you own which _isn't_ a RSpec test double but provides the Object API you need for testing purposes.
|
391
391
|
|
392
|
-
==
|
392
|
+
== Development
|
393
|
+
|
394
|
+
To contribute, run:
|
395
|
+
|
396
|
+
[source,bash]
|
397
|
+
----
|
398
|
+
git clone https://github.com/bkuhlmann/infusible
|
399
|
+
cd infusible
|
400
|
+
bin/setup
|
401
|
+
----
|
402
|
+
|
403
|
+
You can also use the IRB console for direct access to all objects:
|
404
|
+
|
405
|
+
[source,bash]
|
406
|
+
----
|
407
|
+
bin/console
|
408
|
+
----
|
409
|
+
|
410
|
+
=== Architecture
|
393
411
|
|
394
412
|
This gem automates a lot of the boilerplate code you'd normally have to do manually by defining your constructor, initializer, and instance variables for you. Normally, when injecting dependencies, you'd do something like this (using the `Pinger` example provided earlier):
|
395
413
|
|
@@ -426,7 +444,7 @@ end
|
|
426
444
|
|
427
445
|
Your constructor, initializer, and instance variables are all there. Only you don't have to write all of this yourself anymore. 🎉
|
428
446
|
|
429
|
-
|
447
|
+
=== Style Guide
|
430
448
|
|
431
449
|
When using this gem, along with a container like {dry-container_link}, make sure to adhere to the following guidelines:
|
432
450
|
|
@@ -435,15 +453,6 @@ When using this gem, along with a container like {dry-container_link}, make sure
|
|
435
453
|
* Use the `Import` constant to define _what_ is possible to import much like you'd use a `Container` to define your dependencies. Defining what is importable improves performance and should be defined in separate files for improved fuzzy file finding.
|
436
454
|
* Use `**dependencies` as your named double splat argument when defining an initializer which needs to pass injected dependencies upwards. This improves readability and consistency by clearly identifying your injected dependencies.
|
437
455
|
|
438
|
-
== Development
|
439
|
-
|
440
|
-
You can also use the IRB console for direct access to all objects:
|
441
|
-
|
442
|
-
[source,bash]
|
443
|
-
----
|
444
|
-
bin/console
|
445
|
-
----
|
446
|
-
|
447
456
|
== Tests
|
448
457
|
|
449
458
|
To test, run:
|
data/infusible.gemspec
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |spec|
|
4
4
|
spec.name = "infusible"
|
5
|
-
spec.version = "0.
|
5
|
+
spec.version = "0.2.0"
|
6
6
|
spec.authors = ["Brooke Kuhlmann"]
|
7
7
|
spec.email = ["brooke@alchemists.io"]
|
8
8
|
spec.homepage = "https://www.alchemists.io/projects/infusible"
|
@@ -23,7 +23,7 @@ Gem::Specification.new do |spec|
|
|
23
23
|
spec.cert_chain = [Gem.default_cert_path]
|
24
24
|
|
25
25
|
spec.required_ruby_version = "~> 3.1"
|
26
|
-
spec.add_dependency "marameters", "~> 0.
|
26
|
+
spec.add_dependency "marameters", "~> 0.10"
|
27
27
|
spec.add_dependency "zeitwerk", "~> 2.6"
|
28
28
|
|
29
29
|
spec.extra_rdoc_files = Dir["README*", "LICENSE*"]
|
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: infusible
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Brooke Kuhlmann
|
@@ -28,7 +28,7 @@ cert_chain:
|
|
28
28
|
CxDe2+VuChj4I1nvIHdu+E6XoEVlanUPKmSg6nddhkKn2gC45Kyzh6FZqnzH/CRp
|
29
29
|
RFE=
|
30
30
|
-----END CERTIFICATE-----
|
31
|
-
date: 2022-
|
31
|
+
date: 2022-10-22 00:00:00.000000000 Z
|
32
32
|
dependencies:
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
name: marameters
|
@@ -36,14 +36,14 @@ dependencies:
|
|
36
36
|
requirements:
|
37
37
|
- - "~>"
|
38
38
|
- !ruby/object:Gem::Version
|
39
|
-
version: '0.
|
39
|
+
version: '0.10'
|
40
40
|
type: :runtime
|
41
41
|
prerelease: false
|
42
42
|
version_requirements: !ruby/object:Gem::Requirement
|
43
43
|
requirements:
|
44
44
|
- - "~>"
|
45
45
|
- !ruby/object:Gem::Version
|
46
|
-
version: '0.
|
46
|
+
version: '0.10'
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: zeitwerk
|
49
49
|
requirement: !ruby/object:Gem::Requirement
|
@@ -103,7 +103,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
103
103
|
- !ruby/object:Gem::Version
|
104
104
|
version: '0'
|
105
105
|
requirements: []
|
106
|
-
rubygems_version: 3.3.
|
106
|
+
rubygems_version: 3.3.24
|
107
107
|
signing_key:
|
108
108
|
specification_version: 4
|
109
109
|
summary: Automates the injection of dependencies into your class.
|
metadata.gz.sig
CHANGED
Binary file
|