hanamismith 0.28.1 → 0.29.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 +4 -4
- checksums.yaml.gz.sig +0 -0
- data/hanamismith.gemspec +1 -1
- data/lib/hanamismith/builders/bundler.rb +21 -47
- data/lib/hanamismith/builders/setup.rb +4 -5
- data/lib/hanamismith/builders/slices/home.rb +5 -0
- data/lib/hanamismith/cli/commands/build.rb +1 -0
- data/lib/hanamismith/extensions/asset.rb +46 -0
- data/lib/hanamismith/extensions/npm.rb +0 -1
- data/lib/hanamismith/templates/%project_name%/package.json.erb +1 -4
- data/lib/hanamismith/templates/%project_name%/spec/features/home_spec.rb.erb +6 -0
- data.tar.gz.sig +0 -0
- metadata +4 -2
- 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: ed30a628cfaadde7746eb2049aafcd814ad466537e90db833c92f8c6a0c599ca
|
|
4
|
+
data.tar.gz: 5cf99cc1a91e5f56321c2a7e0052f5c4a84b65e38ad248b0c1d0206eb522dd7a
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 621fe4bc67d920cb9a2cf62822e21ceb1c6737c14ca94b477dfed0e1b644c31167131793fc799845de6c0065930c01f0b593fced811b96e991b67e94e66de56a
|
|
7
|
+
data.tar.gz: a25a7f8648b42c210e5b4cf5aafcf97da48cf5a33e0a4253a104d96675f356b283943e04c0a02e0b2737f7d96ca800fed0094bc4a13244aac3a6d11e42df77c8
|
checksums.yaml.gz.sig
CHANGED
|
Binary file
|
data/hanamismith.gemspec
CHANGED
|
@@ -5,7 +5,6 @@ require "refinements/struct"
|
|
|
5
5
|
module Hanamismith
|
|
6
6
|
module Builders
|
|
7
7
|
# Builds project skeleton with Gemfile configuration.
|
|
8
|
-
# rubocop:todo Metrics/ClassLength
|
|
9
8
|
class Bundler < Rubysmith::Builders::Bundler
|
|
10
9
|
using Refinements::Struct
|
|
11
10
|
|
|
@@ -29,38 +28,14 @@ module Hanamismith
|
|
|
29
28
|
# rubocop:todo Metrics/MethodLength
|
|
30
29
|
def insert_main_dependencies
|
|
31
30
|
with_template.insert_after("source", %(gem "dry-types", "~> 1.7"))
|
|
32
|
-
.insert_after(
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
)
|
|
36
|
-
.insert_after(
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
)
|
|
40
|
-
.insert_after(
|
|
41
|
-
"source",
|
|
42
|
-
%(gem "hanami-cli", github: "hanami/cli", branch: "main"\n)
|
|
43
|
-
)
|
|
44
|
-
.insert_after(
|
|
45
|
-
"source",
|
|
46
|
-
%(gem "hanami-controller", github: "hanami/controller", branch: "main"\n)
|
|
47
|
-
)
|
|
48
|
-
.insert_after(
|
|
49
|
-
"source",
|
|
50
|
-
%(gem "hanami-router", github: "hanami/router", branch: "main"\n)
|
|
51
|
-
)
|
|
52
|
-
.insert_after(
|
|
53
|
-
"source",
|
|
54
|
-
%(gem "hanami-utils", github: "hanami/utils", branch: "main"\n)
|
|
55
|
-
)
|
|
56
|
-
.insert_after(
|
|
57
|
-
"source",
|
|
58
|
-
%(gem "hanami-validations", github: "hanami/validations", branch: "main"\n)
|
|
59
|
-
)
|
|
60
|
-
.insert_after(
|
|
61
|
-
"source",
|
|
62
|
-
%(gem "hanami-view", github: "hanami/view", branch: "main"\n)
|
|
63
|
-
)
|
|
31
|
+
.insert_after("source", %(gem "hanami", "~> 2.1"\n))
|
|
32
|
+
.insert_after("source", %(gem "hanami-assets", "~> 2.1"\n))
|
|
33
|
+
.insert_after("source", %(gem "hanami-cli", "~> 2.1"\n))
|
|
34
|
+
.insert_after("source", %(gem "hanami-controller", "~> 2.1"\n))
|
|
35
|
+
.insert_after("source", %(gem "hanami-router", "~> 2.1"\n))
|
|
36
|
+
.insert_after("source", %(gem "hanami-utils", "~> 2.1"\n))
|
|
37
|
+
.insert_after("source", %(gem "hanami-validations", "~> 2.1"\n))
|
|
38
|
+
.insert_after("source", %(gem "hanami-view", "~> 2.1"\n))
|
|
64
39
|
.insert_after("source", %(gem "htmx", "~> 1.0"\n))
|
|
65
40
|
.insert_after("source", %(gem "puma", "~> 6.4"\n))
|
|
66
41
|
.insert_after("source", %(gem "rack-attack", "~> 6.7"\n))
|
|
@@ -71,7 +46,7 @@ module Hanamismith
|
|
|
71
46
|
with_template.insert_after("source", %(gem "pg", "~> 1.5"\n))
|
|
72
47
|
.insert_after("source", %(gem "rom", "~> 5.3"\n))
|
|
73
48
|
.insert_after("source", %(gem "rom-sql", "~> 3.6"\n))
|
|
74
|
-
.insert_after("source", %(\ngem "sequel", "~> 5.
|
|
49
|
+
.insert_after("source", %(\ngem "sequel", "~> 5.77"\n))
|
|
75
50
|
end
|
|
76
51
|
|
|
77
52
|
# rubocop:todo Metrics/MethodLength
|
|
@@ -79,16 +54,16 @@ module Hanamismith
|
|
|
79
54
|
with_template.insert_after(/group :quality/, %( gem "rubocop-sequel", "~> 0.3"\n))
|
|
80
55
|
.insert_after(
|
|
81
56
|
/group :development do/,
|
|
82
|
-
%( gem "hanami-webconsole",
|
|
57
|
+
%( gem "hanami-webconsole", "~> 2.1"\n)
|
|
83
58
|
)
|
|
84
|
-
.insert_after(/group :development do/, %( gem "localhost", "~> 1.
|
|
59
|
+
.insert_after(/group :development do/, %( gem "localhost", "~> 1.2"\n))
|
|
85
60
|
.insert_after(/group :development do/, %( gem "rerun", "~> 0.14"\n))
|
|
86
|
-
.insert_after(/group :test/, %( gem "capybara", "~> 3.
|
|
87
|
-
.insert_after(/group :test/, %( gem "cuprite", "~> 0.
|
|
61
|
+
.insert_after(/group :test/, %( gem "capybara", "~> 3.40"\n))
|
|
62
|
+
.insert_after(/group :test/, %( gem "cuprite", "~> 0.15"\n))
|
|
88
63
|
.insert_after(/group :test/, %( gem "database_cleaner-sequel", "~> 2.0"\n))
|
|
89
64
|
.insert_after(/group :test/, %( gem "launchy", "~> 2.5"\n))
|
|
90
65
|
.insert_after(/group :test/, %( gem "rack-test", "~> 2.1"\n))
|
|
91
|
-
.insert_after(/group :test/, %( gem "rom-factory", "~> 0.
|
|
66
|
+
.insert_after(/group :test/, %( gem "rom-factory", "~> 0.12"\n))
|
|
92
67
|
end
|
|
93
68
|
# rubocop:enable Metrics/MethodLength
|
|
94
69
|
|
|
@@ -97,8 +72,8 @@ module Hanamismith
|
|
|
97
72
|
|
|
98
73
|
with_template.insert_before(/group :tools do/, <<~CONTENT)
|
|
99
74
|
group :development do
|
|
100
|
-
gem "hanami-webconsole",
|
|
101
|
-
gem "localhost", "~> 1.
|
|
75
|
+
gem "hanami-webconsole", "~> 2.1"
|
|
76
|
+
gem "localhost", "~> 1.2"
|
|
102
77
|
gem "rerun", "~> 0.14"
|
|
103
78
|
end
|
|
104
79
|
|
|
@@ -111,13 +86,13 @@ module Hanamismith
|
|
|
111
86
|
|
|
112
87
|
with_template.insert_before(/group :tools do/, <<~CONTENT)
|
|
113
88
|
group :test do
|
|
114
|
-
gem "capybara", "~> 3.
|
|
115
|
-
gem "cuprite", "~> 0.
|
|
89
|
+
gem "capybara", "~> 3.40"
|
|
90
|
+
gem "cuprite", "~> 0.15"
|
|
116
91
|
gem "database_cleaner-sequel", "~> 2.0"
|
|
117
|
-
gem "hanami-rspec", "~> 2.
|
|
92
|
+
gem "hanami-rspec", "~> 2.1"
|
|
118
93
|
gem "launchy", "~> 2.5"
|
|
119
94
|
gem "rack-test", "~> 2.1"
|
|
120
|
-
gem "rom-factory", "~> 0.
|
|
95
|
+
gem "rom-factory", "~> 0.12"
|
|
121
96
|
end
|
|
122
97
|
|
|
123
98
|
CONTENT
|
|
@@ -128,7 +103,7 @@ module Hanamismith
|
|
|
128
103
|
with_template.insert_before(/group :development/, <<~CONTENT)
|
|
129
104
|
|
|
130
105
|
group :development, :test do
|
|
131
|
-
gem "dotenv", "~>
|
|
106
|
+
gem "dotenv", "~> 3.0"
|
|
132
107
|
end
|
|
133
108
|
|
|
134
109
|
CONTENT
|
|
@@ -141,5 +116,4 @@ module Hanamismith
|
|
|
141
116
|
end
|
|
142
117
|
end
|
|
143
118
|
end
|
|
144
|
-
# rubocop:enable Metrics/ClassLength
|
|
145
119
|
end
|
|
@@ -23,12 +23,11 @@ module Hanamismith
|
|
|
23
23
|
.append(<<~CONTENT)
|
|
24
24
|
npm install
|
|
25
25
|
|
|
26
|
-
hanami db create
|
|
27
|
-
hanami db migrate
|
|
28
|
-
hanami db seed
|
|
26
|
+
bin/hanami db create
|
|
27
|
+
bin/hanami db migrate
|
|
29
28
|
|
|
30
|
-
HANAMI_ENV=test hanami db create
|
|
31
|
-
HANAMI_ENV=test hanami db migrate
|
|
29
|
+
HANAMI_ENV=test bin/hanami db create
|
|
30
|
+
HANAMI_ENV=test bin/hanami db migrate
|
|
32
31
|
CONTENT
|
|
33
32
|
end
|
|
34
33
|
end
|
|
@@ -100,6 +100,11 @@ module Hanamismith
|
|
|
100
100
|
path = "%project_name%/slices/home/actions/show.rb.erb"
|
|
101
101
|
builder.call(configuration.merge(template_path: path)).render
|
|
102
102
|
end
|
|
103
|
+
|
|
104
|
+
def add_request_spec
|
|
105
|
+
path = "%project_name%/spec/features/home_spec.rb.erb"
|
|
106
|
+
builder.call(configuration.merge(template_path: path)).render
|
|
107
|
+
end
|
|
103
108
|
end
|
|
104
109
|
end
|
|
105
110
|
end
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require "refinements/pathname"
|
|
4
|
+
|
|
5
|
+
module Hanamismith
|
|
6
|
+
module Extensions
|
|
7
|
+
# Ensures assets are compiled.
|
|
8
|
+
class Asset
|
|
9
|
+
include Import[:kernel, :logger]
|
|
10
|
+
|
|
11
|
+
using Refinements::Pathname
|
|
12
|
+
|
|
13
|
+
def self.call(...) = new(...).call
|
|
14
|
+
|
|
15
|
+
def initialize(configuration, **)
|
|
16
|
+
super(**)
|
|
17
|
+
@configuration = configuration
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
def call
|
|
21
|
+
logger.error { "Unable to compile assets. Try: `hanami assets compile`." } unless run
|
|
22
|
+
configuration
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
private
|
|
26
|
+
|
|
27
|
+
attr_reader :configuration
|
|
28
|
+
|
|
29
|
+
def run
|
|
30
|
+
success = false
|
|
31
|
+
configuration.project_root.change_dir { success = compile_app && compile_home }
|
|
32
|
+
success
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
def compile_app
|
|
36
|
+
kernel.system "node config/assets.js -- --path=app --dest=public/assets > /dev/null 2>&1"
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
def compile_home
|
|
40
|
+
kernel.system(
|
|
41
|
+
"node config/assets.js -- --path=slices/home --dest=public/assets/_home > /dev/null 2>&1"
|
|
42
|
+
)
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
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.
|
|
4
|
+
version: 0.29.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Brooke Kuhlmann
|
|
@@ -35,7 +35,7 @@ cert_chain:
|
|
|
35
35
|
3n5C8/6Zh9DYTkpcwPSuIfAga6wf4nXc9m6JAw8AuMLaiWN/r/2s4zJsUHYERJEu
|
|
36
36
|
gZGm4JqtuSg8pYjPeIJxS960owq+SfuC+jxqmRA54BisFCv/0VOJi7tiJVY=
|
|
37
37
|
-----END CERTIFICATE-----
|
|
38
|
-
date: 2024-02-
|
|
38
|
+
date: 2024-02-28 00:00:00.000000000 Z
|
|
39
39
|
dependencies:
|
|
40
40
|
- !ruby/object:Gem::Dependency
|
|
41
41
|
name: cogger
|
|
@@ -273,6 +273,7 @@ files:
|
|
|
273
273
|
- lib/hanamismith/cli/commands/build.rb
|
|
274
274
|
- lib/hanamismith/cli/shell.rb
|
|
275
275
|
- lib/hanamismith/container.rb
|
|
276
|
+
- lib/hanamismith/extensions/asset.rb
|
|
276
277
|
- lib/hanamismith/extensions/npm.rb
|
|
277
278
|
- lib/hanamismith/import.rb
|
|
278
279
|
- lib/hanamismith/templates/%project_name%/.circleci/config.yml.erb
|
|
@@ -319,6 +320,7 @@ files:
|
|
|
319
320
|
- lib/hanamismith/templates/%project_name%/slices/home/view.rb.erb
|
|
320
321
|
- lib/hanamismith/templates/%project_name%/slices/home/views/context.rb.erb
|
|
321
322
|
- lib/hanamismith/templates/%project_name%/slices/home/views/show.rb.erb
|
|
323
|
+
- lib/hanamismith/templates/%project_name%/spec/features/home_spec.rb.erb
|
|
322
324
|
- lib/hanamismith/templates/%project_name%/spec/hanami_helper.rb.erb
|
|
323
325
|
- lib/hanamismith/templates/%project_name%/spec/lib/%project_path%/refines/actions/response_spec.rb.erb
|
|
324
326
|
- lib/hanamismith/templates/%project_name%/spec/slices/health/actions/show_spec.rb.erb
|
metadata.gz.sig
CHANGED
|
Binary file
|