hanamismith 0.47.0 → 0.49.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 +4 -1
- data/README.adoc +5 -12
- data/hanamismith.gemspec +8 -8
- data/lib/hanamismith/builders/bundler.rb +8 -8
- data/lib/hanamismith/builders/core.rb +20 -4
- data/lib/hanamismith/builders/setup.rb +1 -4
- data/lib/hanamismith/cli/commands/build.rb +0 -3
- data/lib/hanamismith/templates/%project_name%/.circleci/config.yml.erb +1 -3
- data/lib/hanamismith/templates/%project_name%/.github/workflows/ci.yml.erb +1 -3
- data/lib/hanamismith/templates/%project_name%/.node-version.erb +1 -1
- data/lib/hanamismith/templates/%project_name%/app/db/relation.rb.erb +9 -0
- data/lib/hanamismith/templates/%project_name%/app/db/repository.rb.erb +9 -0
- data/lib/hanamismith/templates/%project_name%/app/db/struct.rb.erb +9 -0
- data/lib/hanamismith/templates/%project_name%/bin/hanami.erb +1 -16
- data/lib/hanamismith/templates/%project_name%/config/routes.rb.erb +4 -0
- data/lib/hanamismith/templates/%project_name%/config/settings.rb.erb +0 -1
- data/lib/hanamismith/templates/%project_name%/config.ru.erb +1 -3
- data/lib/hanamismith/templates/%project_name%/lib/%project_path%/types.rb.erb +1 -2
- data/lib/hanamismith/templates/%project_name%/package.json.erb +1 -1
- data/lib/hanamismith/templates/%project_name%/public/.well-known/security.txt.erb +7 -0
- data/lib/hanamismith/templates/%project_name%/spec/hanami_helper.rb.erb +22 -10
- data.tar.gz.sig +0 -0
- metadata +21 -23
- metadata.gz.sig +0 -0
- data/lib/hanamismith/builders/providers/persistence.rb +0 -20
- data/lib/hanamismith/builders/rspec/database.rb +0 -23
- data/lib/hanamismith/builders/rspec/factory.rb +0 -23
- data/lib/hanamismith/templates/%project_name%/app/repository.rb.erb +0 -10
- data/lib/hanamismith/templates/%project_name%/spec/support/database.rb.erb +0 -10
- data/lib/hanamismith/templates/%project_name%/spec/support/factory.rb.erb +0 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 10fe7dd2d05906100558c794fb23524c86585ac2a9350933d79927ed72bf4034
|
4
|
+
data.tar.gz: aa155e6a53d45842e1ad20c235507a09f2a07f0782c34bfcd0d58d6c35e0d680
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3f2a8607f93b2369ae2702f4db91b6111bb4e3191ece92f8b3f7cc6998604ad4007c269978aabd5eed2fec6cb7bba4036fcf59477a48f92bb3ef821a31ebc896
|
7
|
+
data.tar.gz: 02bd71d9f19edb7d2dcf0c7becc7a797e41604bc7366178eb647f85186f4445de6437050b1af58a15c352d79e0813f0d169aa9d34b53fb165354e3b26b1bc85a
|
checksums.yaml.gz.sig
CHANGED
@@ -1 +1,4 @@
|
|
1
|
-
|
1
|
+
Bqǐ��3��=�
|
2
|
+
Y�f?�LR%X0A�U��%h���:��M�Q>���S�'V_V/�[UaDX�u���[�H��hRE����/̤�������v��h�C
|
3
|
+
B݄͋?��in��$t͖Q@����
|
4
|
+
�[�
|
data/README.adoc
CHANGED
@@ -4,7 +4,6 @@
|
|
4
4
|
|
5
5
|
:capybara_link: link:https://github.com/teamcapybara/capybara[Capybara]
|
6
6
|
:cuprite_link: link:https://cuprite.rubycdp.com[Cuprite]
|
7
|
-
:dry_link: link:https://dry-rb.org[Dry RB]
|
8
7
|
:dotenv_link: link:https://github.com/bkeepers/dotenv[Dotenv]
|
9
8
|
:dotfiles_link: link:https://alchemists.io/projects/dotfiles[Dotfiles]
|
10
9
|
:hanami_link: link:https://hanamirb.org[Hanami]
|
@@ -17,23 +16,17 @@
|
|
17
16
|
|
18
17
|
= Hanamismith
|
19
18
|
|
20
|
-
Hanamismith is a Command Line Interface (CLI) for smithing Hanami projects. Perfect when you need a professional and robust tool for building new project skeletons.
|
21
|
-
____
|
22
|
-
If you're looking for new ways to build maintainable, secure, faster and testable Ruby applications, you're in for a treat. *Hanami is built for people like you*.
|
23
|
-
____
|
24
|
-
|
25
|
-
Welcome to the modern age of web development. This gem will help you get up and running as quickly as possible. 🚀
|
19
|
+
Hanamismith is a Command Line Interface (CLI) for smithing Hanami projects. Perfect when you need a professional, configurable, and robust tool for building new project skeletons.
|
26
20
|
|
27
21
|
toc::[]
|
28
22
|
|
29
23
|
== Features
|
30
24
|
|
31
25
|
* Built atop {rubysmith_link} for building project skeleton.
|
32
|
-
* Uses {dry_link} for functional programming.
|
33
26
|
* Uses {hanami_link} for web application development.
|
34
|
-
* Uses {htmx_link} for Hypermedia REST
|
27
|
+
* Uses {htmx_link} for Hypermedia REST so you can write less code and avoid bloated JavaScript stacks.
|
35
28
|
* Uses {pg_link} coupled with {rom_link} for database management.
|
36
|
-
* Uses {rack_link}, specifically:
|
29
|
+
* Uses {rack_link}, specifically: link:https://github.com/rack/rack-attack[Rack::Attack], `Rack::Deflater`, and `Rack::Static`.
|
37
30
|
* Uses {puma_link} as the default web server and fully configured for local and production environments.
|
38
31
|
* Uses {capybara_link} with {cuprite_link} (driver) for full, headless, feature testing.
|
39
32
|
* Uses {dotenv_link} for managing your environment configurations.
|
@@ -44,7 +37,7 @@ toc::[]
|
|
44
37
|
|
45
38
|
== Screenshots/Screencasts
|
46
39
|
|
47
|
-
image:https://alchemists.io/images/projects/hanamismith/screenshots/home.png[Home,width=
|
40
|
+
image:https://alchemists.io/images/projects/hanamismith/screenshots/home.png[Home,width=702,height=694,role=focal_point]
|
48
41
|
|
49
42
|
The above is a screenshot of a _Demo_ project that was generated and run locally. 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:
|
50
43
|
|
@@ -120,7 +113,7 @@ bin/setup
|
|
120
113
|
bin/rake
|
121
114
|
|
122
115
|
# Develop (red, green, refactor)
|
123
|
-
|
116
|
+
NO_COVERAGE=true retest
|
124
117
|
git commit # (repeat until finished with implementation)
|
125
118
|
|
126
119
|
# Run: With Overmind (recommended)
|
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.
|
5
|
+
spec.version = "0.49.0"
|
6
6
|
spec.authors = ["Brooke Kuhlmann"]
|
7
7
|
spec.email = ["brooke@alchemists.io"]
|
8
8
|
spec.homepage = "https://alchemists.io/projects/hanamismith"
|
@@ -23,17 +23,17 @@ Gem::Specification.new do |spec|
|
|
23
23
|
spec.cert_chain = [Gem.default_cert_path]
|
24
24
|
|
25
25
|
spec.required_ruby_version = ">= 3.3", "<= 3.4"
|
26
|
-
spec.add_dependency "cogger", "~> 0.
|
26
|
+
spec.add_dependency "cogger", "~> 0.31"
|
27
27
|
spec.add_dependency "containable", "~> 0.2"
|
28
28
|
spec.add_dependency "dry-monads", "~> 1.6"
|
29
29
|
spec.add_dependency "dry-schema", "~> 1.13"
|
30
|
-
spec.add_dependency "etcher", "~> 2.
|
30
|
+
spec.add_dependency "etcher", "~> 2.7"
|
31
31
|
spec.add_dependency "htmx", "~> 1.0"
|
32
|
-
spec.add_dependency "infusible", "~> 3.
|
33
|
-
spec.add_dependency "refinements", "~> 12.
|
34
|
-
spec.add_dependency "rubysmith", "~> 7.
|
35
|
-
spec.add_dependency "runcom", "~> 11.
|
36
|
-
spec.add_dependency "sod", "~> 0.
|
32
|
+
spec.add_dependency "infusible", "~> 3.12"
|
33
|
+
spec.add_dependency "refinements", "~> 12.10"
|
34
|
+
spec.add_dependency "rubysmith", "~> 7.9"
|
35
|
+
spec.add_dependency "runcom", "~> 11.10"
|
36
|
+
spec.add_dependency "sod", "~> 0.20"
|
37
37
|
spec.add_dependency "spek", "~> 3.0"
|
38
38
|
spec.add_dependency "zeitwerk", "~> 2.7"
|
39
39
|
|
@@ -35,13 +35,13 @@ module Hanamismith
|
|
35
35
|
|
36
36
|
def insert_hanami
|
37
37
|
with_template.insert_after "source", <<~CONTENT.strip
|
38
|
-
gem "hanami", "~> 2.
|
39
|
-
gem "hanami-assets", "~> 2.
|
40
|
-
gem "hanami-
|
41
|
-
gem "hanami-
|
42
|
-
gem "hanami-router", "~> 2.
|
43
|
-
gem "hanami-validations", "~> 2.
|
44
|
-
gem "hanami-view", "~> 2.
|
38
|
+
gem "hanami", "~> 2.2.0"
|
39
|
+
gem "hanami-assets", "~> 2.2.0"
|
40
|
+
gem "hanami-controller", "~> 2.2.0"
|
41
|
+
gem "hanami-db", "~> 2.2.0"
|
42
|
+
gem "hanami-router", "~> 2.2.0"
|
43
|
+
gem "hanami-validations", "~> 2.2.0"
|
44
|
+
gem "hanami-view", "~> 2.2.0"
|
45
45
|
CONTENT
|
46
46
|
end
|
47
47
|
|
@@ -83,7 +83,7 @@ module Hanamismith
|
|
83
83
|
|
84
84
|
def insert_development
|
85
85
|
with_template.insert_after(/group :development do/, <<~CONTENT.gsub("gem", " gem"))
|
86
|
-
gem "hanami-webconsole", "~> 2.
|
86
|
+
gem "hanami-webconsole", "~> 2.2.0"
|
87
87
|
gem "localhost", "~> 1.2"
|
88
88
|
gem "rerun", "~> 0.14"
|
89
89
|
CONTENT
|
@@ -15,12 +15,21 @@ module Hanamismith
|
|
15
15
|
|
16
16
|
private
|
17
17
|
|
18
|
-
def
|
19
|
-
builder.call(settings.merge(template_path: "%project_name%/app/
|
18
|
+
def add_db_relation
|
19
|
+
builder.call(settings.merge(template_path: "%project_name%/app/db/relation.rb.erb")).render
|
20
|
+
end
|
21
|
+
|
22
|
+
def add_db_repository
|
23
|
+
builder.call(settings.merge(template_path: "%project_name%/app/db/repository.rb.erb"))
|
24
|
+
.render
|
25
|
+
end
|
26
|
+
|
27
|
+
def add_db_struct
|
28
|
+
builder.call(settings.merge(template_path: "%project_name%/app/db/struct.rb.erb")).render
|
20
29
|
end
|
21
30
|
|
22
|
-
def
|
23
|
-
builder.call(settings.merge(template_path: "%project_name%/app/
|
31
|
+
def add_action
|
32
|
+
builder.call(settings.merge(template_path: "%project_name%/app/action.rb.erb")).render
|
24
33
|
end
|
25
34
|
|
26
35
|
def add_view
|
@@ -48,6 +57,13 @@ module Hanamismith
|
|
48
57
|
builder.call(settings.merge(template_path: "%project_name%/db/migrate")).make_path
|
49
58
|
end
|
50
59
|
|
60
|
+
def add_well_known_security_text
|
61
|
+
return unless settings.build_security
|
62
|
+
|
63
|
+
path = "%project_name%/public/.well-known/security.txt.erb"
|
64
|
+
builder.call(settings.merge(template_path: path)).render
|
65
|
+
end
|
66
|
+
|
51
67
|
def add_public_http_errors
|
52
68
|
%w[404 500].each do |code|
|
53
69
|
path = "%project_name%/public/#{code}.html.erb"
|
@@ -26,10 +26,7 @@ module Hanamismith
|
|
26
26
|
Runner.call "npm install"
|
27
27
|
|
28
28
|
puts "Configurating databases..."
|
29
|
-
Runner.call "bin/hanami db
|
30
|
-
Runner.call "bin/hanami db migrate"
|
31
|
-
Runner.call "HANAMI_ENV=test bin/hanami db create"
|
32
|
-
Runner.call "HANAMI_ENV=test bin/hanami db migrate"
|
29
|
+
Runner.call "bin/hanami db prepare"
|
33
30
|
CONTENT
|
34
31
|
end
|
35
32
|
end
|
@@ -13,7 +13,6 @@ module Hanamismith
|
|
13
13
|
BUILDERS = [
|
14
14
|
Rubysmith::Builders::Init,
|
15
15
|
Builders::Core,
|
16
|
-
Builders::Providers::Persistence,
|
17
16
|
Builders::Providers::YJIT,
|
18
17
|
Builders::Refinement,
|
19
18
|
Builders::Icon,
|
@@ -47,8 +46,6 @@ module Hanamismith
|
|
47
46
|
Rubysmith::Builders::RSpec::Binstub,
|
48
47
|
Rubysmith::Builders::RSpec::Context,
|
49
48
|
Builders::RSpec::ApplicationSharedContext,
|
50
|
-
Builders::RSpec::Database,
|
51
|
-
Builders::RSpec::Factory,
|
52
49
|
Builders::RSpec::Helper,
|
53
50
|
Builders::RSpec::Hanami,
|
54
51
|
Builders::Rack::Configuration,
|
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
23.1.0
|
@@ -1,20 +1,5 @@
|
|
1
1
|
#! /usr/bin/env ruby
|
2
2
|
|
3
3
|
require "bundler/setup"
|
4
|
-
require "hanami/cli"
|
5
4
|
|
6
|
-
|
7
|
-
cli.register "db create", Hanami::CLI::Commands::App::DB::Create
|
8
|
-
cli.register "db create_migration", Hanami::CLI::Commands::App::DB::CreateMigration
|
9
|
-
cli.register "db drop", Hanami::CLI::Commands::App::DB::Drop
|
10
|
-
cli.register "db migrate", Hanami::CLI::Commands::App::DB::Migrate
|
11
|
-
cli.register "db setup", Hanami::CLI::Commands::App::DB::Setup
|
12
|
-
cli.register "db reset", Hanami::CLI::Commands::App::DB::Reset
|
13
|
-
cli.register "db rollback", Hanami::CLI::Commands::App::DB::Rollback
|
14
|
-
cli.register "db seed", Hanami::CLI::Commands::App::DB::Seed
|
15
|
-
cli.register "db structure dump", Hanami::CLI::Commands::App::DB::Structure::Dump
|
16
|
-
cli.register "db version", Hanami::CLI::Commands::App::DB::Version
|
17
|
-
end
|
18
|
-
|
19
|
-
Hanami::CLI::Bundler.require :cli
|
20
|
-
Dry::CLI.new(Hanami::CLI).call
|
5
|
+
load Gem.bin_path "hanami-cli", "hanami"
|
@@ -0,0 +1,7 @@
|
|
1
|
+
Contact: <%= settings.project_uri_security %>
|
2
|
+
Encryption: <%= settings.organization_uri %>/keybase.txt
|
3
|
+
Policy: <%= settings.project_uri_security %>
|
4
|
+
Preferred-Languages: en
|
5
|
+
Canonical: <%= settings.organization_uri %>/.well-known/security.txt
|
6
|
+
Permission: none
|
7
|
+
Expires: <%= (Time.new.utc + (60 * 60 * 24 * 183)).iso8601 %>
|
@@ -1,14 +1,14 @@
|
|
1
1
|
require "capybara/cuprite"
|
2
2
|
require "capybara/rspec"
|
3
3
|
require "database_cleaner/sequel"
|
4
|
+
require "dry/monads"
|
4
5
|
require "rack/test"
|
6
|
+
require "rom-factory"
|
5
7
|
require "spec_helper"
|
6
8
|
|
7
9
|
ENV["HANAMI_ENV"] = "test"
|
8
10
|
|
9
11
|
require "hanami/prepare"
|
10
|
-
require_relative "support/database"
|
11
|
-
require_relative "support/factory"
|
12
12
|
|
13
13
|
using Refinements::Pathname
|
14
14
|
|
@@ -22,25 +22,37 @@ Capybara.register_driver :cuprite do |app|
|
|
22
22
|
Capybara::Cuprite::Driver.new app, browser_options:, window_size: [1920, 1080]
|
23
23
|
end
|
24
24
|
|
25
|
-
DatabaseCleaner[:sequel].strategy = :transaction
|
26
|
-
|
27
25
|
Pathname.require_tree SPEC_ROOT.join("support/factories")
|
28
26
|
|
29
27
|
RSpec.configure do |config|
|
30
28
|
config.include Capybara::DSL, Capybara::RSpecMatchers, :web
|
29
|
+
config.include Dry::Monads[:result]
|
31
30
|
config.include Rack::Test::Methods, type: :request
|
32
|
-
|
31
|
+
|
33
32
|
config.include_context "with Hanami application", type: :request
|
34
33
|
|
34
|
+
databases = proc do
|
35
|
+
Hanami.app.slices.with_nested.prepend(Hanami.app).each.with_object Set.new do |slice, dbs|
|
36
|
+
next unless slice.key? "db.rom"
|
37
|
+
|
38
|
+
dbs.merge slice["db.rom"].gateways.values.map(&:connection).to_enum
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
35
42
|
config.before :suite do
|
36
|
-
|
37
|
-
|
43
|
+
databases.call.each do |db|
|
44
|
+
DatabaseCleaner[:sequel, db:].clean_with :truncation, except: ["schema_migrations"]
|
45
|
+
end
|
38
46
|
end
|
39
47
|
|
40
48
|
config.prepend_before :each, :db do |example|
|
41
|
-
|
42
|
-
|
49
|
+
databases.call.each do |db|
|
50
|
+
DatabaseCleaner[:sequel, db:].strategy = example.metadata[:js] ? :truncation : :transaction
|
51
|
+
DatabaseCleaner[:sequel, db:].start
|
52
|
+
end
|
43
53
|
end
|
44
54
|
|
45
|
-
config.append_after
|
55
|
+
config.append_after :each, :db do
|
56
|
+
databases.call.each { |db| DatabaseCleaner[:sequel, db:].clean }
|
57
|
+
end
|
46
58
|
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.49.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-
|
38
|
+
date: 2024-11-09 00:00:00.000000000 Z
|
39
39
|
dependencies:
|
40
40
|
- !ruby/object:Gem::Dependency
|
41
41
|
name: cogger
|
@@ -43,14 +43,14 @@ dependencies:
|
|
43
43
|
requirements:
|
44
44
|
- - "~>"
|
45
45
|
- !ruby/object:Gem::Version
|
46
|
-
version: '0.
|
46
|
+
version: '0.31'
|
47
47
|
type: :runtime
|
48
48
|
prerelease: false
|
49
49
|
version_requirements: !ruby/object:Gem::Requirement
|
50
50
|
requirements:
|
51
51
|
- - "~>"
|
52
52
|
- !ruby/object:Gem::Version
|
53
|
-
version: '0.
|
53
|
+
version: '0.31'
|
54
54
|
- !ruby/object:Gem::Dependency
|
55
55
|
name: containable
|
56
56
|
requirement: !ruby/object:Gem::Requirement
|
@@ -99,14 +99,14 @@ dependencies:
|
|
99
99
|
requirements:
|
100
100
|
- - "~>"
|
101
101
|
- !ruby/object:Gem::Version
|
102
|
-
version: '2.
|
102
|
+
version: '2.7'
|
103
103
|
type: :runtime
|
104
104
|
prerelease: false
|
105
105
|
version_requirements: !ruby/object:Gem::Requirement
|
106
106
|
requirements:
|
107
107
|
- - "~>"
|
108
108
|
- !ruby/object:Gem::Version
|
109
|
-
version: '2.
|
109
|
+
version: '2.7'
|
110
110
|
- !ruby/object:Gem::Dependency
|
111
111
|
name: htmx
|
112
112
|
requirement: !ruby/object:Gem::Requirement
|
@@ -127,70 +127,70 @@ dependencies:
|
|
127
127
|
requirements:
|
128
128
|
- - "~>"
|
129
129
|
- !ruby/object:Gem::Version
|
130
|
-
version: '3.
|
130
|
+
version: '3.12'
|
131
131
|
type: :runtime
|
132
132
|
prerelease: false
|
133
133
|
version_requirements: !ruby/object:Gem::Requirement
|
134
134
|
requirements:
|
135
135
|
- - "~>"
|
136
136
|
- !ruby/object:Gem::Version
|
137
|
-
version: '3.
|
137
|
+
version: '3.12'
|
138
138
|
- !ruby/object:Gem::Dependency
|
139
139
|
name: refinements
|
140
140
|
requirement: !ruby/object:Gem::Requirement
|
141
141
|
requirements:
|
142
142
|
- - "~>"
|
143
143
|
- !ruby/object:Gem::Version
|
144
|
-
version: '12.
|
144
|
+
version: '12.10'
|
145
145
|
type: :runtime
|
146
146
|
prerelease: false
|
147
147
|
version_requirements: !ruby/object:Gem::Requirement
|
148
148
|
requirements:
|
149
149
|
- - "~>"
|
150
150
|
- !ruby/object:Gem::Version
|
151
|
-
version: '12.
|
151
|
+
version: '12.10'
|
152
152
|
- !ruby/object:Gem::Dependency
|
153
153
|
name: rubysmith
|
154
154
|
requirement: !ruby/object:Gem::Requirement
|
155
155
|
requirements:
|
156
156
|
- - "~>"
|
157
157
|
- !ruby/object:Gem::Version
|
158
|
-
version: '7.
|
158
|
+
version: '7.9'
|
159
159
|
type: :runtime
|
160
160
|
prerelease: false
|
161
161
|
version_requirements: !ruby/object:Gem::Requirement
|
162
162
|
requirements:
|
163
163
|
- - "~>"
|
164
164
|
- !ruby/object:Gem::Version
|
165
|
-
version: '7.
|
165
|
+
version: '7.9'
|
166
166
|
- !ruby/object:Gem::Dependency
|
167
167
|
name: runcom
|
168
168
|
requirement: !ruby/object:Gem::Requirement
|
169
169
|
requirements:
|
170
170
|
- - "~>"
|
171
171
|
- !ruby/object:Gem::Version
|
172
|
-
version: '11.
|
172
|
+
version: '11.10'
|
173
173
|
type: :runtime
|
174
174
|
prerelease: false
|
175
175
|
version_requirements: !ruby/object:Gem::Requirement
|
176
176
|
requirements:
|
177
177
|
- - "~>"
|
178
178
|
- !ruby/object:Gem::Version
|
179
|
-
version: '11.
|
179
|
+
version: '11.10'
|
180
180
|
- !ruby/object:Gem::Dependency
|
181
181
|
name: sod
|
182
182
|
requirement: !ruby/object:Gem::Requirement
|
183
183
|
requirements:
|
184
184
|
- - "~>"
|
185
185
|
- !ruby/object:Gem::Version
|
186
|
-
version: '0.
|
186
|
+
version: '0.20'
|
187
187
|
type: :runtime
|
188
188
|
prerelease: false
|
189
189
|
version_requirements: !ruby/object:Gem::Requirement
|
190
190
|
requirements:
|
191
191
|
- - "~>"
|
192
192
|
- !ruby/object:Gem::Version
|
193
|
-
version: '0.
|
193
|
+
version: '0.20'
|
194
194
|
- !ruby/object:Gem::Dependency
|
195
195
|
name: spek
|
196
196
|
requirement: !ruby/object:Gem::Requirement
|
@@ -252,7 +252,6 @@ files:
|
|
252
252
|
- lib/hanamismith/builders/icon.rb
|
253
253
|
- lib/hanamismith/builders/javascript.rb
|
254
254
|
- lib/hanamismith/builders/node.rb
|
255
|
-
- lib/hanamismith/builders/providers/persistence.rb
|
256
255
|
- lib/hanamismith/builders/providers/yjit.rb
|
257
256
|
- lib/hanamismith/builders/puma/configuration.rb
|
258
257
|
- lib/hanamismith/builders/puma/procfile.rb
|
@@ -263,8 +262,6 @@ files:
|
|
263
262
|
- lib/hanamismith/builders/rake/configuration.rb
|
264
263
|
- lib/hanamismith/builders/refinement.rb
|
265
264
|
- lib/hanamismith/builders/rspec/application_shared_context.rb
|
266
|
-
- lib/hanamismith/builders/rspec/database.rb
|
267
|
-
- lib/hanamismith/builders/rspec/factory.rb
|
268
265
|
- lib/hanamismith/builders/rspec/hanami.rb
|
269
266
|
- lib/hanamismith/builders/rspec/helper.rb
|
270
267
|
- lib/hanamismith/builders/setup.rb
|
@@ -286,7 +283,9 @@ files:
|
|
286
283
|
- lib/hanamismith/templates/%project_name%/app/action.rb.erb
|
287
284
|
- lib/hanamismith/templates/%project_name%/app/assets/images/icon.svg.erb
|
288
285
|
- lib/hanamismith/templates/%project_name%/app/assets/pwa/manifest.webmanifest.erb
|
289
|
-
- lib/hanamismith/templates/%project_name%/app/
|
286
|
+
- lib/hanamismith/templates/%project_name%/app/db/relation.rb.erb
|
287
|
+
- lib/hanamismith/templates/%project_name%/app/db/repository.rb.erb
|
288
|
+
- lib/hanamismith/templates/%project_name%/app/db/struct.rb.erb
|
290
289
|
- lib/hanamismith/templates/%project_name%/app/view.rb.erb
|
291
290
|
- lib/hanamismith/templates/%project_name%/bin/hanami.erb
|
292
291
|
- lib/hanamismith/templates/%project_name%/config.ru.erb
|
@@ -305,6 +304,7 @@ files:
|
|
305
304
|
- lib/hanamismith/templates/%project_name%/lib/%project_path%/refines/actions/response.rb.erb
|
306
305
|
- lib/hanamismith/templates/%project_name%/lib/%project_path%/types.rb.erb
|
307
306
|
- lib/hanamismith/templates/%project_name%/package.json.erb
|
307
|
+
- lib/hanamismith/templates/%project_name%/public/.well-known/security.txt.erb
|
308
308
|
- lib/hanamismith/templates/%project_name%/public/404.html.erb
|
309
309
|
- lib/hanamismith/templates/%project_name%/public/500.html.erb
|
310
310
|
- lib/hanamismith/templates/%project_name%/slices/health/action.rb.erb
|
@@ -328,8 +328,6 @@ files:
|
|
328
328
|
- lib/hanamismith/templates/%project_name%/spec/hanami_helper.rb.erb
|
329
329
|
- lib/hanamismith/templates/%project_name%/spec/lib/%project_path%/refines/actions/response_spec.rb.erb
|
330
330
|
- lib/hanamismith/templates/%project_name%/spec/slices/health/actions/show_spec.rb.erb
|
331
|
-
- lib/hanamismith/templates/%project_name%/spec/support/database.rb.erb
|
332
|
-
- lib/hanamismith/templates/%project_name%/spec/support/factory.rb.erb
|
333
331
|
- lib/hanamismith/templates/%project_name%/spec/support/shared_contexts/application.rb.erb
|
334
332
|
homepage: https://alchemists.io/projects/hanamismith
|
335
333
|
licenses:
|
@@ -360,7 +358,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
360
358
|
- !ruby/object:Gem::Version
|
361
359
|
version: '0'
|
362
360
|
requirements: []
|
363
|
-
rubygems_version: 3.5.
|
361
|
+
rubygems_version: 3.5.23
|
364
362
|
signing_key:
|
365
363
|
specification_version: 4
|
366
364
|
summary: A command line interface for smithing Hanami projects.
|
metadata.gz.sig
CHANGED
Binary file
|
@@ -1,20 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require "refinements/struct"
|
4
|
-
|
5
|
-
module Hanamismith
|
6
|
-
module Builders
|
7
|
-
module Providers
|
8
|
-
# Builds project skeleton for persistence provider.
|
9
|
-
class Persistence < Rubysmith::Builders::Abstract
|
10
|
-
using Refinements::Struct
|
11
|
-
|
12
|
-
def call
|
13
|
-
path = "%project_name%/config/providers/persistence.rb.erb"
|
14
|
-
builder.call(settings.merge(template_path: path)).render
|
15
|
-
true
|
16
|
-
end
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
@@ -1,23 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require "refinements/struct"
|
4
|
-
|
5
|
-
module Hanamismith
|
6
|
-
module Builders
|
7
|
-
module RSpec
|
8
|
-
# Builds project skeleton RSpec application database support.
|
9
|
-
class Database < Rubysmith::Builders::Abstract
|
10
|
-
using Refinements::Struct
|
11
|
-
|
12
|
-
def call
|
13
|
-
return false unless settings.build_rspec
|
14
|
-
|
15
|
-
path = "%project_name%/spec/support/database.rb.erb"
|
16
|
-
builder.call(settings.merge(template_path: path)).render
|
17
|
-
|
18
|
-
true
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
@@ -1,23 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require "refinements/struct"
|
4
|
-
|
5
|
-
module Hanamismith
|
6
|
-
module Builders
|
7
|
-
module RSpec
|
8
|
-
# Builds project skeleton RSpec application database support.
|
9
|
-
class Factory < Rubysmith::Builders::Abstract
|
10
|
-
using Refinements::Struct
|
11
|
-
|
12
|
-
def call
|
13
|
-
return false unless settings.build_rspec
|
14
|
-
|
15
|
-
path = "%project_name%/spec/support/factory.rb.erb"
|
16
|
-
builder.call(settings.merge(template_path: path)).render
|
17
|
-
|
18
|
-
true
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|