hanamismith 0.3.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: dbbbb6d45c490481033d4097a84a5685b1db9dd0473b4a0b696c33a926278e7a
4
- data.tar.gz: e366cae2d1d03af350bc669dfcd5b520ada312bd1128fef5af0e55c310feaaad
3
+ metadata.gz: acfcec1bca4aa46dcdf1938f6fe7de5df8dcb369e1cdccf70c1c50a0b091376e
4
+ data.tar.gz: fb359b86de74b3bcfdf8a2b5da38fb1008938cd681f7afd6e8cf734dbe8436ae
5
5
  SHA512:
6
- metadata.gz: c1ef21826c24b1a4dfc0bf68d292bff187bdd8fb373171a4c60117b88a6775b829afb18f3577f306c20674917219552478ef5fb3b9596b92a11ac16542c6e2ca
7
- data.tar.gz: fa9d17895f7144eaf6987bfb972f38b364b177618342fb77fd6988e0a916e3473eab5e41b2560146c4159f37a1e39b5bd9af16fe9f1f615c2ea3ae45b92a2e47
6
+ metadata.gz: ea87d728df34d6ace0cb8110350f6828c859ed4d75f0a439d208fe1ffb883fd7798a57a5830977c99dcac3301ffb41beb48a4ec4271ea3595597bb89260c5669
7
+ data.tar.gz: 4bf40a3ed2f9b000ea5d34fc6614a063d89cad15f98e2b283f75d11ead82b2f875b51e608723aeae148ea08ff1d345b41149e9977c4e90906dc6c281e96f6682
checksums.yaml.gz.sig CHANGED
Binary file
data/README.adoc CHANGED
@@ -39,6 +39,7 @@ toc::[]
39
39
  * Uses {puma_link} as the default web server and fully configured for local and production environments.
40
40
  * Uses {capybara_link} with {cuprite_link} (driver) for full, headless, feature testing.
41
41
  * Uses {dotenv_link} for managing your environment configurations.
42
+ * Provides support for Continuous Integration systems like link:https://circleci.com[Circle CI] (default) and link:https://docs.github.com/en/actions[GitHub Actions].
42
43
 
43
44
  == Requirements
44
45
 
@@ -139,7 +140,7 @@ hanamismith --build demo
139
140
  # Run code quality and test coverage checks
140
141
  cd demo
141
142
  bin/setup
142
- hanami db create
143
+ bin/hanami db create
143
144
  HANAMI_ENV=test hanami db create
144
145
  bin/rake
145
146
 
@@ -151,10 +152,13 @@ git commit # (repeat until finished with implementation)
151
152
  overmind start --port-step 10 --procfile Procfile.dev
152
153
 
153
154
  # Run: Without Overmind
154
- hanami server
155
+ bin/hanami server
155
156
 
156
157
  # Deploy
157
158
  git push
159
+
160
+ # Help
161
+ bin/hanami --help
158
162
  ----
159
163
 
160
164
  Once the server is running you can visit (or ping) the following endpoints:
@@ -175,11 +179,15 @@ alias hsh="hanamismith --help"
175
179
 
176
180
  The above is what I use via my {dotfiles_link} project.
177
181
 
178
- === Demonstration
182
+ === Demonstrations
183
+
184
+ For a fully working demonstration application -- as built by this gem -- check out the link:https://github.com/bkuhlmann/hemo[Hemo] project. Here's a quick screencast overview of this demonstration application in action:
185
+
186
+ video::https://www.alchemists.io/videos/projects/hemo/demo.mp4[poster=https://www.alchemists.io/images/projects/hemo/demo.png,width=800,height=450,role=focal_point]
179
187
 
180
- If you'd like a fully working demonstration application -- as built by this gem -- then check out the link:https://github.com/bkuhlmann/hemo[Hemo] project. Here's a quick screencast overview of demonstration application:
188
+ In case you are not aware of link:https://hanamimastery.com[Hanami Mastery], now would be a good time to introduce you. link:https://hanamimastery.com/about[Seb Wilgosz] -- the creator of Hanami Mastery -- recently published link:https://hanamimastery.com/episodes/40-hanamismith[Episode 40] (see below) which features this gem. _Please note that multiple advancements have been applied since the original recording of this video_. That said, this'll give you another perspective on usage which you might enjoy:
181
189
 
182
- video::https://www.alchemists.io/videos/projects/hemo/demo.mp4[poster=https://www.alchemists.io/images/projects/hemo/demo.png,width=1400,height=811,role=focal_point]
190
+ video::V4QPZi3j7uY[youtube,role=video]
183
191
 
184
192
  == Development
185
193
 
data/hanamismith.gemspec CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |spec|
4
4
  spec.name = "hanamismith"
5
- spec.version = "0.3.0"
5
+ spec.version = "0.4.0"
6
6
  spec.authors = ["Brooke Kuhlmann"]
7
7
  spec.email = ["brooke@alchemists.io"]
8
8
  spec.homepage = "https://www.alchemists.io/projects/hanamismith"
@@ -30,7 +30,7 @@ Gem::Specification.new do |spec|
30
30
  spec.add_dependency "hanami", "~> 2.0"
31
31
  spec.add_dependency "infusible", "~> 1.0"
32
32
  spec.add_dependency "refinements", "~> 10.0"
33
- spec.add_dependency "rubysmith", "~> 4.4"
33
+ spec.add_dependency "rubysmith", "~> 4.5"
34
34
  spec.add_dependency "runcom", "~> 9.0"
35
35
  spec.add_dependency "spek", "~> 1.0"
36
36
  spec.add_dependency "zeitwerk", "~> 2.6"
@@ -55,6 +55,10 @@ module Hanamismith
55
55
  path = "%project_name%/lib/%project_path%/types.rb.erb"
56
56
  builder.call(configuration.merge(template_path: path)).render
57
57
  end
58
+
59
+ def add_temp_directory
60
+ builder.call(configuration.merge(template_path: "%project_name%/tmp")).make_path
61
+ end
58
62
  end
59
63
  end
60
64
  end
@@ -54,8 +54,8 @@ module Hanamismith
54
54
  Builders::Git::Commit
55
55
  ].freeze
56
56
 
57
- def initialize builders: BUILDERS, **dependencies
58
- super(**dependencies)
57
+ def initialize(builders: BUILDERS, **)
58
+ super(**)
59
59
  @builders = builders
60
60
  end
61
61
 
@@ -7,9 +7,8 @@ module Hanamismith
7
7
  class Config
8
8
  include Hanamismith::Import[:kernel, :logger]
9
9
 
10
- def initialize client: Configuration::Loader::CLIENT, **dependencies
11
- super(**dependencies)
12
-
10
+ def initialize(client: Configuration::Loader::CLIENT, **)
11
+ super(**)
13
12
  @client = client
14
13
  end
15
14
 
@@ -14,9 +14,8 @@ module Hanamismith
14
14
  # Order is important.
15
15
  SECTIONS = [Parsers::Core, Rubysmith::CLI::Parsers::Build].freeze
16
16
 
17
- def initialize sections: SECTIONS, client: CLIENT, **dependencies
18
- super(**dependencies)
19
-
17
+ def initialize(sections: SECTIONS, client: CLIENT, **)
18
+ super(**)
20
19
  @sections = sections
21
20
  @client = client
22
21
  @configuration_duplicate = configuration.dup
@@ -14,11 +14,8 @@ module Hanamismith
14
14
 
15
15
  def self.call(...) = new(...).call
16
16
 
17
- def initialize configuration = Container[:configuration],
18
- client: Parser::CLIENT,
19
- **dependencies
20
-
21
- super(**dependencies)
17
+ def initialize(configuration = Container[:configuration], client: Parser::CLIENT, **)
18
+ super(**)
22
19
  @configuration = configuration
23
20
  @client = client
24
21
  end
@@ -8,8 +8,8 @@ module Hanamismith
8
8
  class Shell
9
9
  include Actions::Import[:config, :build, :specification, :logger]
10
10
 
11
- def initialize parser: Parser.new, **dependencies
12
- super(**dependencies)
11
+ def initialize(parser: Parser.new, **)
12
+ super(**)
13
13
  @parser = parser
14
14
  end
15
15
 
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hanamismith
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.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: 2023-01-29 00:00:00.000000000 Z
31
+ date: 2023-02-05 00:00:00.000000000 Z
32
32
  dependencies:
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: cogger
@@ -134,14 +134,14 @@ dependencies:
134
134
  requirements:
135
135
  - - "~>"
136
136
  - !ruby/object:Gem::Version
137
- version: '4.4'
137
+ version: '4.5'
138
138
  type: :runtime
139
139
  prerelease: false
140
140
  version_requirements: !ruby/object:Gem::Requirement
141
141
  requirements:
142
142
  - - "~>"
143
143
  - !ruby/object:Gem::Version
144
- version: '4.4'
144
+ version: '4.5'
145
145
  - !ruby/object:Gem::Dependency
146
146
  name: runcom
147
147
  requirement: !ruby/object:Gem::Requirement
@@ -301,7 +301,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
301
301
  - !ruby/object:Gem::Version
302
302
  version: '0'
303
303
  requirements: []
304
- rubygems_version: 3.4.5
304
+ rubygems_version: 3.4.6
305
305
  signing_key:
306
306
  specification_version: 4
307
307
  summary: A command line interface for smithing Hanami projects.
metadata.gz.sig CHANGED
Binary file