hanami 1.0.0.beta2 → 1.0.0.beta3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +10 -0
- data/FEATURES.md +2 -0
- data/LICENSE.md +1 -1
- data/README.md +1 -1
- data/hanami.gemspec +8 -8
- data/lib/hanami.rb +0 -5
- data/lib/hanami/action/csrf_protection.rb +35 -0
- data/lib/hanami/app.rb +1 -1
- data/lib/hanami/application.rb +2 -0
- data/lib/hanami/application_configuration.rb +1 -12
- data/lib/hanami/application_name.rb +8 -2
- data/lib/hanami/application_namespace.rb +2 -0
- data/lib/hanami/assets/asset.rb +1 -0
- data/lib/hanami/cli.rb +7 -0
- data/lib/hanami/cli_base.rb +3 -0
- data/lib/hanami/cli_sub_commands/assets.rb +2 -0
- data/lib/hanami/cli_sub_commands/db.rb +15 -2
- data/lib/hanami/cli_sub_commands/destroy.rb +6 -0
- data/lib/hanami/cli_sub_commands/generate.rb +7 -2
- data/lib/hanami/commands/assets/precompile.rb +4 -0
- data/lib/hanami/commands/command.rb +13 -0
- data/lib/hanami/commands/console.rb +6 -0
- data/lib/hanami/commands/db/apply.rb +3 -0
- data/lib/hanami/commands/db/console.rb +7 -0
- data/lib/hanami/commands/db/create.rb +3 -0
- data/lib/hanami/commands/db/drop.rb +3 -0
- data/lib/hanami/commands/db/migrate.rb +5 -0
- data/lib/hanami/commands/db/prepare.rb +3 -0
- data/lib/hanami/commands/db/version.rb +3 -0
- data/lib/hanami/commands/generate/abstract.rb +13 -1
- data/lib/hanami/commands/generate/action.rb +21 -0
- data/lib/hanami/commands/generate/app.rb +21 -0
- data/lib/hanami/commands/generate/mailer.rb +16 -3
- data/lib/hanami/commands/generate/migration.rb +13 -2
- data/lib/hanami/commands/generate/model.rb +14 -1
- data/lib/hanami/commands/generate/secret_token.rb +6 -0
- data/lib/hanami/commands/new/abstract.rb +39 -4
- data/lib/hanami/commands/new/app.rb +15 -0
- data/lib/hanami/commands/new/container.rb +14 -0
- data/lib/hanami/commands/routes.rb +2 -0
- data/lib/hanami/commands/server.rb +4 -0
- data/lib/hanami/components/app/assets.rb +4 -0
- data/lib/hanami/components/app/controller.rb +4 -0
- data/lib/hanami/components/app/routes.rb +6 -0
- data/lib/hanami/components/app/view.rb +4 -0
- data/lib/hanami/components/component.rb +2 -0
- data/lib/hanami/components/components.rb +12 -5
- data/lib/hanami/components/routes_inspector.rb +2 -0
- data/lib/hanami/config/cookies.rb +1 -0
- data/lib/hanami/config/framework_configuration.rb +1 -0
- data/lib/hanami/config/load_paths.rb +4 -0
- data/lib/hanami/config/mapper.rb +11 -0
- data/lib/hanami/config/routes.rb +4 -0
- data/lib/hanami/config/security.rb +2 -0
- data/lib/hanami/config/sessions.rb +6 -0
- data/lib/hanami/configuration.rb +102 -0
- data/lib/hanami/environment.rb +13 -0
- data/lib/hanami/environment_application_configurations.rb +7 -0
- data/lib/hanami/generators/app/application.rb.tt +31 -23
- data/lib/hanami/generators/app/favicon.ico +0 -0
- data/lib/hanami/generators/database_config.rb +19 -1
- data/lib/hanami/generators/generatable.rb +13 -0
- data/lib/hanami/generators/generator.rb +8 -0
- data/lib/hanami/generators/template_engine.rb +9 -0
- data/lib/hanami/generators/test_framework.rb +12 -0
- data/lib/hanami/hanamirc.rb +2 -0
- data/lib/hanami/mailer/glue.rb +1 -0
- data/lib/hanami/middleware.rb +24 -0
- data/lib/hanami/rendering_policy.rb +15 -0
- data/lib/hanami/routes.rb +14 -12
- data/lib/hanami/routing/default.rb +7 -0
- data/lib/hanami/server.rb +6 -0
- data/lib/hanami/version.rb +1 -1
- data/lib/hanami/views/default.rb +3 -0
- data/lib/hanami/views/default_template_finder.rb +2 -0
- data/lib/hanami/views/null_view.rb +2 -0
- data/lib/hanami/welcome.rb +7 -0
- metadata +18 -19
- data/lib/hanami/root.rb +0 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 35905305b2c9f5a20e639bf4de5ffc10c439732f
|
4
|
+
data.tar.gz: 86d99d157ea672bdddf8ecc338fe16abf833a099
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 55642dce6b8a8548a92592f843573488f9da21c6d099ab27f29b667c9249a5c0f7ed4ff584447b7ddd10cdedbbc3a92da34e349c6107979bcd80fa6eded53e76
|
7
|
+
data.tar.gz: c6ef7285048eb156ebf594bf632d51ac3b1149f49c1ec8869eebce0feb215b87c5cfb7145b005004ba290766a1e2a8e28c7e37eb5dd279b8fcb4ef063f1bc822
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,16 @@
|
|
1
1
|
# Hanami
|
2
2
|
The web, with simplicity.
|
3
3
|
|
4
|
+
## v1.0.0.beta3 - 2017-03-17
|
5
|
+
### Fixed
|
6
|
+
- [Luca Guidi] Try to disconnect from database at the boot time. This is useful to prune stale connection during production deploys.
|
7
|
+
- [Tobias Sandelius] Don't mount `Hanami::CommonLogger` middleware if logging is disabled for the project.
|
8
|
+
- [Anton Davydov] Don't configure mailers, if it's mailing is disabled for the project.
|
9
|
+
- [Marcello Rocha] Ensure code reloading don't misconfigure mailer settings
|
10
|
+
|
11
|
+
### Changed
|
12
|
+
- [Luca Guidi] Removed deprecated `ApplicationConfiguration#default_format`. Use `#default_request_format` instead.
|
13
|
+
|
4
14
|
## v1.0.0.beta2 - 2017-03-02
|
5
15
|
|
6
16
|
## v1.0.0.beta1 - 2017-02-14
|
data/FEATURES.md
CHANGED
data/LICENSE.md
CHANGED
data/README.md
CHANGED
data/hanami.gemspec
CHANGED
@@ -21,14 +21,14 @@ Gem::Specification.new do |spec|
|
|
21
21
|
|
22
22
|
spec.metadata['allowed_push_host'] = 'https://rubygems.org'
|
23
23
|
|
24
|
-
spec.add_dependency 'hanami-utils', '~> 1.0.0.
|
25
|
-
spec.add_dependency 'hanami-validations', '~> 1.0.0.
|
26
|
-
spec.add_dependency 'hanami-router', '~> 1.0.0.
|
27
|
-
spec.add_dependency 'hanami-controller', '~> 1.0.0.
|
28
|
-
spec.add_dependency 'hanami-view', '~> 1.0.0.
|
29
|
-
spec.add_dependency 'hanami-helpers', '~> 1.0.0.
|
30
|
-
spec.add_dependency 'hanami-mailer', '~> 1.0.0.
|
31
|
-
spec.add_dependency 'hanami-assets', '~> 1.0.0.
|
24
|
+
spec.add_dependency 'hanami-utils', '~> 1.0.0.beta3'
|
25
|
+
spec.add_dependency 'hanami-validations', '~> 1.0.0.beta2'
|
26
|
+
spec.add_dependency 'hanami-router', '~> 1.0.0.beta3'
|
27
|
+
spec.add_dependency 'hanami-controller', '~> 1.0.0.beta3'
|
28
|
+
spec.add_dependency 'hanami-view', '~> 1.0.0.beta2'
|
29
|
+
spec.add_dependency 'hanami-helpers', '~> 1.0.0.beta2'
|
30
|
+
spec.add_dependency 'hanami-mailer', '~> 1.0.0.beta2'
|
31
|
+
spec.add_dependency 'hanami-assets', '~> 1.0.0.beta2'
|
32
32
|
spec.add_dependency 'concurrent-ruby', '~> 1.0'
|
33
33
|
spec.add_dependency 'thor', '~> 0.19'
|
34
34
|
spec.add_dependency 'bundler', '~> 1.13'
|
data/lib/hanami.rb
CHANGED
@@ -82,13 +82,9 @@ module Hanami
|
|
82
82
|
# NOTE: In case this is invoked many times, it guarantees that the boot
|
83
83
|
# process happens only once.
|
84
84
|
#
|
85
|
-
# NOTE: There is no reason to cache the result with `@_booted`, because it
|
86
|
-
# already caches it internally.
|
87
|
-
#
|
88
85
|
# NOTE: This MUST NOT be wrapped by a Mutex, because it would cause a deadlock.
|
89
86
|
#
|
90
87
|
# @since 0.9.0
|
91
|
-
# @api private
|
92
88
|
def self.boot
|
93
89
|
Components.release if code_reloading?
|
94
90
|
Components.resolve('all')
|
@@ -135,7 +131,6 @@ module Hanami
|
|
135
131
|
# @return [Pathname] public directory
|
136
132
|
#
|
137
133
|
# @since 0.6.0
|
138
|
-
# @api private
|
139
134
|
#
|
140
135
|
# @example
|
141
136
|
# Hanami.public_directory # => #<Pathname:/Users/luca/Code/bookshelf/public>
|
@@ -1,6 +1,7 @@
|
|
1
1
|
require 'securerandom'
|
2
2
|
|
3
3
|
module Hanami
|
4
|
+
# @api private
|
4
5
|
module Action
|
5
6
|
# Invalid CSRF Token
|
6
7
|
#
|
@@ -154,6 +155,23 @@ module Hanami
|
|
154
155
|
# Override and return <tt>false</tt> if you want to bypass security check.
|
155
156
|
#
|
156
157
|
# @since 0.4.0
|
158
|
+
#
|
159
|
+
# @example
|
160
|
+
# module Web::Controllers::Books
|
161
|
+
# class Create
|
162
|
+
# include Web::Action
|
163
|
+
#
|
164
|
+
# def call(params)
|
165
|
+
# # ...
|
166
|
+
# end
|
167
|
+
#
|
168
|
+
# private
|
169
|
+
#
|
170
|
+
# def verify_csrf_token?
|
171
|
+
# false
|
172
|
+
# end
|
173
|
+
# end
|
174
|
+
# end
|
157
175
|
def verify_csrf_token?
|
158
176
|
!IDEMPOTENT_HTTP_METHODS[request_method]
|
159
177
|
end
|
@@ -167,6 +185,23 @@ module Hanami
|
|
167
185
|
# @raise [Hanami::Action::InvalidCSRFTokenError]
|
168
186
|
#
|
169
187
|
# @since 0.4.0
|
188
|
+
#
|
189
|
+
# @example
|
190
|
+
# module Web::Controllers::Books
|
191
|
+
# class Create
|
192
|
+
# include Web::Action
|
193
|
+
#
|
194
|
+
# def call(params)
|
195
|
+
# # ...
|
196
|
+
# end
|
197
|
+
#
|
198
|
+
# private
|
199
|
+
#
|
200
|
+
# def handle_invalid_csrf_token
|
201
|
+
# # custom invalid CSRF management goes here
|
202
|
+
# end
|
203
|
+
# end
|
204
|
+
# end
|
170
205
|
def handle_invalid_csrf_token
|
171
206
|
session.clear
|
172
207
|
raise InvalidCSRFTokenError.new
|
data/lib/hanami/app.rb
CHANGED
@@ -63,7 +63,7 @@ module Hanami
|
|
63
63
|
# @since 0.9.0
|
64
64
|
# @api private
|
65
65
|
def middleware(environment)
|
66
|
-
builder.use Hanami::CommonLogger, Hanami.logger
|
66
|
+
builder.use Hanami::CommonLogger, Hanami.logger unless Hanami.logger.nil?
|
67
67
|
builder.use Rack::ContentLength
|
68
68
|
|
69
69
|
if middleware = environment.static_assets_middleware # rubocop:disable Lint/AssignmentInCondition
|
data/lib/hanami/application.rb
CHANGED
@@ -50,6 +50,7 @@ module Hanami
|
|
50
50
|
# Class interface for Hanami applications
|
51
51
|
#
|
52
52
|
# @since 0.9.0
|
53
|
+
# @api private
|
53
54
|
module ClassMethods
|
54
55
|
# Override Ruby's Class#extended
|
55
56
|
#
|
@@ -146,6 +147,7 @@ module Hanami
|
|
146
147
|
# @return [Hanami::Application] a new instance of the application
|
147
148
|
#
|
148
149
|
# @since 0.1.0
|
150
|
+
# @api private
|
149
151
|
def initialize
|
150
152
|
@renderer = RenderingPolicy.new(configuration)
|
151
153
|
@middleware = configuration.middleware
|
@@ -1,5 +1,4 @@
|
|
1
1
|
require 'hanami/utils/kernel'
|
2
|
-
require 'hanami/utils/deprecation'
|
3
2
|
require 'hanami/environment'
|
4
3
|
require 'hanami/middleware'
|
5
4
|
require 'hanami/config/cookies'
|
@@ -843,17 +842,6 @@ module Hanami
|
|
843
842
|
end
|
844
843
|
end
|
845
844
|
|
846
|
-
# Set a format as default fallback for all the requests without a strict
|
847
|
-
# requirement for the mime type.
|
848
|
-
#
|
849
|
-
# @since 0.1.0
|
850
|
-
#
|
851
|
-
# @deprecated Use {#default_request_format} instead.
|
852
|
-
def default_format(format = nil)
|
853
|
-
Hanami::Utils::Deprecation.new('default_format is deprecated, please use default_request_format')
|
854
|
-
default_request_format(format)
|
855
|
-
end
|
856
|
-
|
857
845
|
# The URI scheme for this application.
|
858
846
|
# This is used by the router helpers to generate absolute URLs.
|
859
847
|
#
|
@@ -1502,6 +1490,7 @@ module Hanami
|
|
1502
1490
|
|
1503
1491
|
private
|
1504
1492
|
|
1493
|
+
# @api private
|
1505
1494
|
attr_reader :configurations
|
1506
1495
|
|
1507
1496
|
# @since 0.2.0
|
@@ -4,11 +4,13 @@ module Hanami
|
|
4
4
|
# An application name.
|
5
5
|
#
|
6
6
|
# @since 0.2.1
|
7
|
+
# @api private
|
7
8
|
class ApplicationName
|
8
9
|
|
9
10
|
# A list of words that are prohibited from forming the application name
|
10
11
|
#
|
11
12
|
# @since 0.2.1
|
13
|
+
# @api private
|
12
14
|
RESERVED_WORDS = %w(hanami).freeze
|
13
15
|
|
14
16
|
# Initialize and check against reserved words
|
@@ -29,6 +31,7 @@ module Hanami
|
|
29
31
|
# @return [Hanami::ApplicationName] a new instance of the application name
|
30
32
|
#
|
31
33
|
# @since 0.2.1
|
34
|
+
# @api private
|
32
35
|
def initialize(name)
|
33
36
|
@name = sanitize(name.to_s)
|
34
37
|
ensure_validity!
|
@@ -42,6 +45,7 @@ module Hanami
|
|
42
45
|
# ApplicationName.new("my-App ").to_s # => "my_app"
|
43
46
|
#
|
44
47
|
# @since 0.2.1
|
48
|
+
# @api private
|
45
49
|
def to_s
|
46
50
|
@name
|
47
51
|
end
|
@@ -59,6 +63,7 @@ module Hanami
|
|
59
63
|
# ApplicationName.new("my-app").to_env_s => "MY_APP"
|
60
64
|
#
|
61
65
|
# @since 0.2.1
|
66
|
+
# @api private
|
62
67
|
def to_env_s
|
63
68
|
@name.upcase.gsub(/\W/, '_')
|
64
69
|
end
|
@@ -73,6 +78,7 @@ module Hanami
|
|
73
78
|
# Hanami::ApplicationName.invalid?("hanami") # => true
|
74
79
|
#
|
75
80
|
# @since 0.2.1
|
81
|
+
# @api private
|
76
82
|
def self.invalid?(name)
|
77
83
|
RESERVED_WORDS.include?(name)
|
78
84
|
end
|
@@ -81,8 +87,8 @@ module Hanami
|
|
81
87
|
|
82
88
|
# Raises RuntimeError with explanation if the provided name is invalid.
|
83
89
|
#
|
84
|
-
# @api private
|
85
90
|
# @since 0.2.1
|
91
|
+
# @api private
|
86
92
|
def ensure_validity!
|
87
93
|
if self.class.invalid?(@name)
|
88
94
|
raise RuntimeError,
|
@@ -93,8 +99,8 @@ module Hanami
|
|
93
99
|
|
94
100
|
# Cleans a string to be a functioning application name.
|
95
101
|
#
|
96
|
-
# @api private
|
97
102
|
# @since 0.2.1
|
103
|
+
# @api private
|
98
104
|
def sanitize(name)
|
99
105
|
Utils::String.new(
|
100
106
|
name.strip
|
data/lib/hanami/assets/asset.rb
CHANGED
data/lib/hanami/cli.rb
CHANGED
@@ -5,6 +5,7 @@ require 'hanami/commands/new/app'
|
|
5
5
|
require 'hanami/commands/new/container'
|
6
6
|
|
7
7
|
module Hanami
|
8
|
+
# @api private
|
8
9
|
class Cli < Thor
|
9
10
|
# include Thor::Actions
|
10
11
|
extend CliBase
|
@@ -13,6 +14,7 @@ module Hanami
|
|
13
14
|
long_desc <<-EOS
|
14
15
|
`hanami version` prints the version of the bundled hanami gem.
|
15
16
|
EOS
|
17
|
+
# @api private
|
16
18
|
def version
|
17
19
|
require 'hanami/version'
|
18
20
|
puts "v#{ Hanami::VERSION }"
|
@@ -38,6 +40,7 @@ module Hanami
|
|
38
40
|
method_option :environment, desc: 'Path to environment configuration (config/environment.rb)'
|
39
41
|
method_option :code_reloading, desc: 'Code reloading', type: :boolean, default: true
|
40
42
|
method_option :help, desc: 'Displays the usage message'
|
43
|
+
# @api private
|
41
44
|
def server
|
42
45
|
if options[:help]
|
43
46
|
invoke :help, ['server']
|
@@ -58,6 +61,7 @@ module Hanami
|
|
58
61
|
method_option :pid, desc: 'path to write a pid file after daemonize'
|
59
62
|
method_option :environment, desc: 'path to environment configuration (config/environment.rb)'
|
60
63
|
method_option :help, desc: 'displays the usage message'
|
64
|
+
# @api private
|
61
65
|
def rackserver
|
62
66
|
if options[:help]
|
63
67
|
invoke :help, ['rackserver']
|
@@ -77,6 +81,7 @@ module Hanami
|
|
77
81
|
method_option :environment, desc: 'Path to environment configuration (config/environment.rb)'
|
78
82
|
method_option :engine, desc: "Choose a specific console engine: (#{Hanami::Commands::Console::ENGINES.keys.join('/')})"
|
79
83
|
method_option :help, desc: 'Displays the usage method'
|
84
|
+
# @api private
|
80
85
|
def console
|
81
86
|
if options[:help]
|
82
87
|
invoke :help, ['console']
|
@@ -104,6 +109,7 @@ $ > hanami new fancy_app --hanami-head=true
|
|
104
109
|
method_option :test, desc: "Project test framework (#{Hanami::Generators::TestFramework::VALID_FRAMEWORKS.join('/')})", default: Hanami::Hanamirc::DEFAULT_TEST_SUITE
|
105
110
|
method_option :hanami_head, desc: 'Use hanami HEAD (true/false)', type: :boolean, default: false
|
106
111
|
method_option :help, desc: 'Displays the usage method'
|
112
|
+
# @api private
|
107
113
|
def new(application_name=nil)
|
108
114
|
if options[:help]
|
109
115
|
invoke :help, ['new']
|
@@ -123,6 +129,7 @@ $ > hanami new fancy_app --hanami-head=true
|
|
123
129
|
EOS
|
124
130
|
method_option :environment, desc: 'Path to environment configuration (config/environment.rb)'
|
125
131
|
method_option :help, desc: 'Displays the usage method'
|
132
|
+
# @api private
|
126
133
|
def routes
|
127
134
|
if options[:help]
|
128
135
|
invoke :help, ['routes']
|
data/lib/hanami/cli_base.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
module Hanami
|
2
|
+
# @api private
|
2
3
|
module CliBase
|
3
4
|
# Add new custom CLI command to special CLI class.
|
4
5
|
# Please be careful. This is a private method that
|
@@ -28,10 +29,12 @@ module Hanami
|
|
28
29
|
class_eval(&blk) if block_given?
|
29
30
|
end
|
30
31
|
|
32
|
+
# @api private
|
31
33
|
def banner(command, nspace = true, subcommand = false)
|
32
34
|
super(command, nspace, namespace != 'hanami:cli')
|
33
35
|
end
|
34
36
|
|
37
|
+
# @api private
|
35
38
|
def handle_argument_error(command, error, args, arity)
|
36
39
|
name = [(namespace == 'hanami:cli' ? nil : namespace), command.name].compact.join(" ")
|
37
40
|
|
@@ -1,4 +1,5 @@
|
|
1
1
|
module Hanami
|
2
|
+
# @api private
|
2
3
|
class CliSubCommands
|
3
4
|
# A set of subcommands related to DB
|
4
5
|
#
|
@@ -14,6 +15,8 @@ module Hanami
|
|
14
15
|
|
15
16
|
desc 'console', 'Start DB console'
|
16
17
|
method_option :environment, desc: 'Path to environment configuration (config/environment.rb)'
|
18
|
+
# @since 0.6.0
|
19
|
+
# @api private
|
17
20
|
def console(name = nil)
|
18
21
|
if options[:help]
|
19
22
|
invoke :help, ['console']
|
@@ -25,6 +28,8 @@ module Hanami
|
|
25
28
|
|
26
29
|
desc 'create', 'Create database for current environment'
|
27
30
|
method_option :environment, desc: 'Path to environment configuration (config/environment.rb)'
|
31
|
+
# @since 0.6.0
|
32
|
+
# @api private
|
28
33
|
def create
|
29
34
|
if options[:help]
|
30
35
|
invoke :help, ['create']
|
@@ -37,6 +42,8 @@ module Hanami
|
|
37
42
|
|
38
43
|
desc 'drop', 'Drop database for current environment'
|
39
44
|
method_option :environment, desc: 'Path to environment configuration (config/environment.rb)'
|
45
|
+
# @since 0.6.0
|
46
|
+
# @api private
|
40
47
|
def drop
|
41
48
|
if options[:help]
|
42
49
|
invoke :help, ['drop']
|
@@ -49,6 +56,8 @@ module Hanami
|
|
49
56
|
|
50
57
|
desc 'migrate', 'Migrate database for current environment'
|
51
58
|
method_option :environment, desc: 'Path to environment configuration (config/environment.rb)'
|
59
|
+
# @since 0.6.0
|
60
|
+
# @api private
|
52
61
|
def migrate(version = nil)
|
53
62
|
if options[:help]
|
54
63
|
invoke :help, ['migrate']
|
@@ -60,6 +69,8 @@ module Hanami
|
|
60
69
|
|
61
70
|
desc 'apply', 'Migrate, dump schema, delete migrations (experimental)'
|
62
71
|
method_option :environment, desc: 'Path to environment configuration (config/environment.rb)'
|
72
|
+
# @since 0.6.0
|
73
|
+
# @api private
|
63
74
|
def apply
|
64
75
|
if options[:help]
|
65
76
|
invoke :help, ['apply']
|
@@ -72,6 +83,8 @@ module Hanami
|
|
72
83
|
|
73
84
|
desc 'prepare', 'Create and migrate database'
|
74
85
|
method_option :environment, desc: 'Path to environment configuration (config/environment.rb)'
|
86
|
+
# @since 0.6.0
|
87
|
+
# @api private
|
75
88
|
def prepare
|
76
89
|
if options[:help]
|
77
90
|
invoke :help, ['prepare']
|
@@ -82,10 +95,10 @@ module Hanami
|
|
82
95
|
end
|
83
96
|
end
|
84
97
|
|
85
|
-
# @since 0.6.0
|
86
|
-
# @api private
|
87
98
|
desc 'version', 'Current database version'
|
88
99
|
method_option :environment, desc: 'Path to environment configuration (config/environment.rb)'
|
100
|
+
# @since 0.6.0
|
101
|
+
# @api private
|
89
102
|
def version
|
90
103
|
if options[:help]
|
91
104
|
invoke :help, ['version']
|