hanami 1.1.0.beta1 → 1.1.0.beta2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -0
- data/FEATURES.md +2 -0
- data/bin/hanami +1 -0
- data/hanami.gemspec +12 -12
- data/lib/hanami/cli/commands/db.rb +9 -7
- data/lib/hanami/cli/commands/db/rollback.rb +39 -0
- data/lib/hanami/cli/commands/destroy/action.rb +8 -2
- data/lib/hanami/cli/commands/generate/action.rb +21 -6
- data/lib/hanami/cli/commands/generate/action/action.erb +1 -1
- data/lib/hanami/cli/commands/generate/action/action_spec.minitest.erb +2 -2
- data/lib/hanami/cli/commands/generate/action/action_spec.rspec.erb +1 -1
- data/lib/hanami/cli/commands/generate/action/action_without_view.erb +1 -1
- data/lib/hanami/cli/commands/generate/action/view.erb +1 -1
- data/lib/hanami/cli/commands/generate/action/view_spec.minitest.erb +2 -2
- data/lib/hanami/cli/commands/generate/action/view_spec.rspec.erb +1 -1
- data/lib/hanami/cli/commands/new.rb +1 -1
- data/lib/hanami/cli/commands/new/README.md.erb +4 -6
- data/lib/hanami/components/components.rb +4 -0
- data/lib/hanami/env.rb +2 -2
- data/lib/hanami/environment.rb +1 -0
- data/lib/hanami/hanamirc.rb +5 -0
- data/lib/hanami/rake_helper.rb +14 -4
- data/lib/hanami/version.rb +1 -1
- metadata +30 -29
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7aa9709ada9de8f63dea232776d338c9f86e52c5
|
4
|
+
data.tar.gz: 5453acd38d37cda135919de2a56a5f8145918d8f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 01c2b49d9aa7d14b04d20196e0228fbc9233a3fc5f9a26931fc242584c4ea17bcef26c0819e7c7566536415e11370516ad435a8c397ee58ca1780011578d185a
|
7
|
+
data.tar.gz: 32730bec6f29a86eb80fae447810021576371e08a0e25b1dd5be55ad59d8494e93d6ebca6755a576db28b183274c3236088a9c1cc0531b157b61cd24a7804878
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,14 @@
|
|
1
1
|
# Hanami
|
2
2
|
The web, with simplicity.
|
3
3
|
|
4
|
+
## v1.1.0.beta2 - 2017-10-03
|
5
|
+
### Added
|
6
|
+
- [Luca Guidi] Introduce `:plugins` group for `Gemfile` in order enable Hanami plugin gems
|
7
|
+
- [Alfonso Uceda] CLI: `hanami db rollback` to revert one or more migrations at once
|
8
|
+
|
9
|
+
### Fixed
|
10
|
+
- [Gabriel Gizotti] Fix generate/destroy for nested actions
|
11
|
+
|
4
12
|
## v1.1.0.beta1 - 2017-08-11
|
5
13
|
### Added
|
6
14
|
- [Ben Johnson] Allow to use custom logger as `Hanami.logger` (eg. `Hanami.configure { logger Timber::Logger.new($stdout) }`)
|
data/FEATURES.md
CHANGED
@@ -9,6 +9,8 @@
|
|
9
9
|
- One-To-One association (aka `has_one`)
|
10
10
|
- Many-To-Many association (aka `has_many :through`)
|
11
11
|
- Allow third-party developers to register commands for CLI (eg `hanami generate webpack`)
|
12
|
+
- Initial support for plugins via `:plugins` group in `Gemfile`
|
13
|
+
- CLI: `hanami db rollback` to rollback database migrations
|
12
14
|
- Introduced new extra behaviors for entity manual schema: `:schema` (default), `:strict`, `:weak`, and `:permissive`
|
13
15
|
- Custom logger for `Hanami.logger`
|
14
16
|
- Selectively boot apps via `HANAMI_APPS=web` env var
|
data/bin/hanami
CHANGED
data/hanami.gemspec
CHANGED
@@ -21,20 +21,20 @@ 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.1.0.
|
25
|
-
spec.add_dependency 'hanami-validations', '1.1.0.
|
26
|
-
spec.add_dependency 'hanami-router', '1.1.0.
|
27
|
-
spec.add_dependency 'hanami-controller', '1.1.0.
|
28
|
-
spec.add_dependency 'hanami-view', '1.1.0.
|
29
|
-
spec.add_dependency 'hanami-helpers', '1.1.0.
|
30
|
-
spec.add_dependency 'hanami-mailer', '1.1.0.
|
31
|
-
spec.add_dependency 'hanami-assets', '1.1.0.
|
32
|
-
spec.add_dependency 'hanami-cli', '0.1.0.
|
24
|
+
spec.add_dependency 'hanami-utils', '1.1.0.beta2'
|
25
|
+
spec.add_dependency 'hanami-validations', '1.1.0.beta2'
|
26
|
+
spec.add_dependency 'hanami-router', '1.1.0.beta2'
|
27
|
+
spec.add_dependency 'hanami-controller', '1.1.0.beta2'
|
28
|
+
spec.add_dependency 'hanami-view', '1.1.0.beta2'
|
29
|
+
spec.add_dependency 'hanami-helpers', '1.1.0.beta2'
|
30
|
+
spec.add_dependency 'hanami-mailer', '1.1.0.beta2'
|
31
|
+
spec.add_dependency 'hanami-assets', '1.1.0.beta2'
|
32
|
+
spec.add_dependency 'hanami-cli', '0.1.0.beta2'
|
33
33
|
spec.add_dependency 'concurrent-ruby', '~> 1.0'
|
34
|
-
spec.add_dependency 'bundler'
|
34
|
+
spec.add_dependency 'bundler'
|
35
35
|
|
36
|
-
spec.add_development_dependency 'rspec', '~> 3.
|
36
|
+
spec.add_development_dependency 'rspec', '~> 3.6'
|
37
37
|
spec.add_development_dependency 'rack-test', '~> 0.6'
|
38
38
|
spec.add_development_dependency 'aruba', '~> 0.14'
|
39
|
-
spec.add_development_dependency 'rake', '~>
|
39
|
+
spec.add_development_dependency 'rake', '~> 12.0'
|
40
40
|
end
|
@@ -11,6 +11,7 @@ module Hanami
|
|
11
11
|
require "hanami/cli/commands/db/create"
|
12
12
|
require "hanami/cli/commands/db/drop"
|
13
13
|
require "hanami/cli/commands/db/migrate"
|
14
|
+
require "hanami/cli/commands/db/rollback"
|
14
15
|
require "hanami/cli/commands/db/prepare"
|
15
16
|
require "hanami/cli/commands/db/apply"
|
16
17
|
require "hanami/cli/commands/db/console"
|
@@ -18,13 +19,14 @@ module Hanami
|
|
18
19
|
end
|
19
20
|
|
20
21
|
register "db" do |prefix|
|
21
|
-
prefix.register "version",
|
22
|
-
prefix.register "create",
|
23
|
-
prefix.register "drop",
|
24
|
-
prefix.register "migrate",
|
25
|
-
prefix.register "
|
26
|
-
prefix.register "
|
27
|
-
prefix.register "
|
22
|
+
prefix.register "version", Commands::Db::Version
|
23
|
+
prefix.register "create", Commands::Db::Create
|
24
|
+
prefix.register "drop", Commands::Db::Drop
|
25
|
+
prefix.register "migrate", Commands::Db::Migrate
|
26
|
+
prefix.register "rollback", Commands::Db::Rollback
|
27
|
+
prefix.register "prepare", Commands::Db::Prepare
|
28
|
+
prefix.register "apply", Commands::Db::Apply
|
29
|
+
prefix.register "console", Commands::Db::Console
|
28
30
|
end
|
29
31
|
end
|
30
32
|
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
module Hanami
|
2
|
+
class CLI
|
3
|
+
module Commands
|
4
|
+
module Db
|
5
|
+
# @since x.x.x
|
6
|
+
# @api private
|
7
|
+
class Rollback < Command
|
8
|
+
requires "model.sql"
|
9
|
+
|
10
|
+
desc "Rollback migrations"
|
11
|
+
|
12
|
+
argument :steps, desc: "Number of steps to rollback the database", default: 1
|
13
|
+
|
14
|
+
example [
|
15
|
+
" # Rollbacks latest migration",
|
16
|
+
"2 # Rollbacks last two migrations"
|
17
|
+
]
|
18
|
+
|
19
|
+
# @since x.x.x
|
20
|
+
# @api private
|
21
|
+
def call(steps:, **)
|
22
|
+
context = Context.new(steps: steps.to_int)
|
23
|
+
|
24
|
+
rollback_database(context)
|
25
|
+
end
|
26
|
+
|
27
|
+
private
|
28
|
+
|
29
|
+
# @since x.x.x
|
30
|
+
# @api private
|
31
|
+
def rollback_database(context)
|
32
|
+
require "hanami/model/migrator"
|
33
|
+
Hanami::Model::Migrator.rollback(steps: context.steps)
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
@@ -19,7 +19,7 @@ module Hanami
|
|
19
19
|
# @api private
|
20
20
|
def call(app:, action:, **options)
|
21
21
|
app = Utils::String.underscore(app)
|
22
|
-
controller, action = controller_and_action(action)
|
22
|
+
*controller, action = controller_and_action(action)
|
23
23
|
action_name = controller_and_action_name(controller, action)
|
24
24
|
|
25
25
|
context = Context.new(app: app, controller: controller, action: action, action_name: action_name, options: options)
|
@@ -57,7 +57,13 @@ module Hanami
|
|
57
57
|
# @api private
|
58
58
|
def controller_and_action_name(controller, action)
|
59
59
|
# FIXME: extract this separator
|
60
|
-
[controller, action].join("#")
|
60
|
+
[namespaced_controller(controller), action].join("#")
|
61
|
+
end
|
62
|
+
|
63
|
+
# @since 1.1.0
|
64
|
+
# #api private
|
65
|
+
def namespaced_controller(controller)
|
66
|
+
controller.join("/")
|
61
67
|
end
|
62
68
|
|
63
69
|
# @since 1.1.0
|
@@ -30,10 +30,11 @@ module Hanami
|
|
30
30
|
# rubocop:disable Metrics/AbcSize
|
31
31
|
# rubocop:disable Metrics/MethodLength
|
32
32
|
def call(app:, action:, **options)
|
33
|
-
controller, action
|
34
|
-
|
35
|
-
|
36
|
-
context
|
33
|
+
*controller, action = controller_and_action_name(action)
|
34
|
+
classified_controller_name = classified_controller(controller)
|
35
|
+
http_method = route_http_method(action, options)
|
36
|
+
context = Context.new(app: app, controller: controller, classified_controller_name: classified_controller_name, action: action, test: options.fetch(:test), http_method: http_method, options: options)
|
37
|
+
context = context.with(template: project.template(context))
|
37
38
|
|
38
39
|
assert_valid_app!(context)
|
39
40
|
assert_valid_route_url!(context)
|
@@ -193,7 +194,7 @@ module Hanami
|
|
193
194
|
# @since 1.1.0
|
194
195
|
# @api private
|
195
196
|
def route_resourceful_url(context)
|
196
|
-
"/#{context
|
197
|
+
"/#{namespaced_controller(context)}#{route_resourceful_url_suffix(context)}"
|
197
198
|
end
|
198
199
|
|
199
200
|
# @since 1.1.0
|
@@ -215,7 +216,21 @@ module Hanami
|
|
215
216
|
# @since 1.1.0
|
216
217
|
# @api private
|
217
218
|
def route_endpoint(context)
|
218
|
-
"#{context
|
219
|
+
"#{namespaced_controller(context)}##{context.action}"
|
220
|
+
end
|
221
|
+
|
222
|
+
# @since 1.1.0
|
223
|
+
# @api private
|
224
|
+
def classified_controller(controller)
|
225
|
+
controller.
|
226
|
+
map { |controller_name| Utils::String.new(controller_name).classify }.
|
227
|
+
join("::")
|
228
|
+
end
|
229
|
+
|
230
|
+
# @since 1.1.0
|
231
|
+
# @api private
|
232
|
+
def namespaced_controller(context)
|
233
|
+
context.controller.join("/")
|
219
234
|
end
|
220
235
|
end
|
221
236
|
end
|
@@ -1,7 +1,7 @@
|
|
1
1
|
require_relative '../../../spec_helper'
|
2
2
|
|
3
|
-
describe <%= app.classify %>::Controllers::<%=
|
4
|
-
let(:action) { <%= app.classify %>::Controllers::<%=
|
3
|
+
describe <%= app.classify %>::Controllers::<%= classified_controller_name %>::<%= action.classify %> do
|
4
|
+
let(:action) { <%= app.classify %>::Controllers::<%= classified_controller_name %>::<%= action.classify %>.new }
|
5
5
|
let(:params) { Hash[] }
|
6
6
|
|
7
7
|
it 'is successful' do
|
@@ -1,4 +1,4 @@
|
|
1
|
-
RSpec.describe <%= app.classify %>::Controllers::<%=
|
1
|
+
RSpec.describe <%= app.classify %>::Controllers::<%= classified_controller_name %>::<%= action.classify %> do
|
2
2
|
let(:action) { described_class.new }
|
3
3
|
let(:params) { Hash[] }
|
4
4
|
|
@@ -1,9 +1,9 @@
|
|
1
1
|
require_relative '../../../spec_helper'
|
2
2
|
|
3
|
-
describe <%= app.classify %>::Views::<%=
|
3
|
+
describe <%= app.classify %>::Views::<%= classified_controller_name %>::<%= action.classify %> do
|
4
4
|
let(:exposures) { Hash[foo: 'bar'] }
|
5
5
|
let(:template) { Hanami::View::Template.new('<%= template %>') }
|
6
|
-
let(:view) { <%= app.classify %>::Views::<%=
|
6
|
+
let(:view) { <%= app.classify %>::Views::<%= classified_controller_name %>::<%= action.classify %>.new(template, exposures) }
|
7
7
|
let(:rendered) { view.render }
|
8
8
|
|
9
9
|
it 'exposes #foo' do
|
@@ -1,4 +1,4 @@
|
|
1
|
-
RSpec.describe <%= app.classify %>::Views::<%=
|
1
|
+
RSpec.describe <%= app.classify %>::Views::<%= classified_controller_name %>::<%= action.classify %> do
|
2
2
|
let(:exposures) { Hash[foo: 'bar'] }
|
3
3
|
let(:template) { Hanami::View::Template.new('<%= template %>') }
|
4
4
|
let(:view) { described_class.new(template, exposures) }
|
@@ -299,7 +299,7 @@ module Hanami
|
|
299
299
|
application_name: options.fetch(:application_name),
|
300
300
|
application_base_url: options.fetch(:application_base_url),
|
301
301
|
hanami_head: options.fetch(:hanami_head),
|
302
|
-
hanami_model_version: '1.1.0.
|
302
|
+
hanami_model_version: '1.1.0.beta2',
|
303
303
|
code_reloading: code_reloading?,
|
304
304
|
hanami_version: hanami_version,
|
305
305
|
project_module: Utils::String.classify(project),
|
@@ -1,4 +1,4 @@
|
|
1
|
-
# <%= project %>
|
1
|
+
# <%= Hanami::Utils::String.titleize(project) %>
|
2
2
|
|
3
3
|
Welcome to your new Hanami project!
|
4
4
|
|
@@ -22,14 +22,12 @@ How to run the development server:
|
|
22
22
|
% bundle exec hanami server
|
23
23
|
```
|
24
24
|
|
25
|
-
How to create and migrate DB for development and test
|
25
|
+
How to prepare (create and migrate) DB for `development` and `test` environments:
|
26
26
|
|
27
27
|
```
|
28
|
-
% bundle exec hanami db
|
29
|
-
% bundle exec hanami db migrate
|
28
|
+
% bundle exec hanami db prepare
|
30
29
|
|
31
|
-
% HANAMI_ENV=test bundle exec hanami db
|
32
|
-
% HANAMI_ENV=test bundle exec hanami db migrate
|
30
|
+
% HANAMI_ENV=test bundle exec hanami db prepare
|
33
31
|
```
|
34
32
|
|
35
33
|
Explore Hanami [guides](http://hanamirb.org/guides/), [API docs](http://hanamirb.org/docs/1.0.0/), or jump in [chat](http://chat.hanamirb.org) for help. Enjoy! 🌸
|
@@ -220,6 +220,10 @@ module Hanami
|
|
220
220
|
|
221
221
|
configuration.mailer_settings.each do |settings|
|
222
222
|
Hanami::Mailer.configure(&settings)
|
223
|
+
Hanami::Mailer.configuration.mailers.each do |mailer|
|
224
|
+
mailer.configuration = Hanami::Mailer.configuration.duplicate
|
225
|
+
Hanami::Mailer.configuration.copy!(mailer)
|
226
|
+
end
|
223
227
|
end
|
224
228
|
|
225
229
|
Hanami::Mailer.configuration
|
data/lib/hanami/env.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
begin
|
2
|
-
require 'dotenv'
|
2
|
+
require 'dotenv/parser'
|
3
3
|
rescue LoadError # rubocop:disable Lint/HandleExceptions
|
4
4
|
end
|
5
5
|
|
@@ -53,7 +53,7 @@ module Hanami
|
|
53
53
|
# @since 0.9.0
|
54
54
|
# @api private
|
55
55
|
def load!(path)
|
56
|
-
return unless defined?(Dotenv)
|
56
|
+
return unless defined?(Dotenv::Parser)
|
57
57
|
|
58
58
|
contents = ::File.open(path, "rb:bom|utf-8", &:read)
|
59
59
|
parsed = Dotenv::Parser.call(contents)
|
data/lib/hanami/environment.rb
CHANGED
data/lib/hanami/hanamirc.rb
CHANGED
@@ -117,7 +117,12 @@ module Hanami
|
|
117
117
|
Utils::Hash.symbolize(hash)
|
118
118
|
end
|
119
119
|
|
120
|
+
# Returns options from hanamirc file
|
121
|
+
#
|
122
|
+
# @since 0.6.0
|
120
123
|
# @api private
|
124
|
+
#
|
125
|
+
# @return [Hash] hanamirc parsed values
|
121
126
|
def file_options
|
122
127
|
symbolize(exists? ? parse_file(path_file) : {})
|
123
128
|
end
|
data/lib/hanami/rake_helper.rb
CHANGED
@@ -17,7 +17,6 @@ module Hanami
|
|
17
17
|
# @since 0.6.0
|
18
18
|
# @api private
|
19
19
|
#
|
20
|
-
# rubocop:disable Metrics/AbcSize
|
21
20
|
# rubocop:disable Metrics/MethodLength
|
22
21
|
def install
|
23
22
|
desc "Load the full project"
|
@@ -50,19 +49,30 @@ module Hanami
|
|
50
49
|
#
|
51
50
|
# This is the preferred way to run Hanami command line tasks.
|
52
51
|
# Please use them when you're in control of your deployment environment.
|
52
|
+
#
|
53
|
+
# If you're not in control and your deployment requires these "standard"
|
54
|
+
# Rake tasks, they are here to solve this only specific problem.
|
53
55
|
namespace :db do
|
54
56
|
task :migrate do
|
55
|
-
|
57
|
+
run_hanami_command("db migrate")
|
56
58
|
end
|
57
59
|
end
|
58
60
|
|
59
61
|
namespace :assets do
|
60
62
|
task :precompile do
|
61
|
-
|
63
|
+
run_hanami_command("assets precompile")
|
62
64
|
end
|
63
65
|
end
|
64
66
|
end
|
67
|
+
|
68
|
+
private
|
69
|
+
|
70
|
+
# @since 1.1.0
|
71
|
+
# @api private
|
72
|
+
def run_hanami_command(command)
|
73
|
+
require "hanami/cli/commands"
|
74
|
+
Hanami::CLI.new(Hanami::CLI::Commands).call(arguments: command.split(/[[:space:]]/))
|
75
|
+
end
|
65
76
|
# rubocop:enable Metrics/MethodLength
|
66
|
-
# rubocop:enable Metrics/AbcSize
|
67
77
|
end
|
68
78
|
end
|
data/lib/hanami/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hanami
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.0.
|
4
|
+
version: 1.1.0.beta2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Luca Guidi
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-10-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: hanami-utils
|
@@ -16,126 +16,126 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 1.1.0.
|
19
|
+
version: 1.1.0.beta2
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 1.1.0.
|
26
|
+
version: 1.1.0.beta2
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: hanami-validations
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - '='
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 1.1.0.
|
33
|
+
version: 1.1.0.beta2
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - '='
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 1.1.0.
|
40
|
+
version: 1.1.0.beta2
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: hanami-router
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - '='
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: 1.1.0.
|
47
|
+
version: 1.1.0.beta2
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - '='
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: 1.1.0.
|
54
|
+
version: 1.1.0.beta2
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: hanami-controller
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
59
|
- - '='
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: 1.1.0.
|
61
|
+
version: 1.1.0.beta2
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - '='
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: 1.1.0.
|
68
|
+
version: 1.1.0.beta2
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: hanami-view
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - '='
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: 1.1.0.
|
75
|
+
version: 1.1.0.beta2
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - '='
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: 1.1.0.
|
82
|
+
version: 1.1.0.beta2
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: hanami-helpers
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
87
|
- - '='
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version: 1.1.0.
|
89
|
+
version: 1.1.0.beta2
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - '='
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version: 1.1.0.
|
96
|
+
version: 1.1.0.beta2
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
98
|
name: hanami-mailer
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
101
|
- - '='
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version: 1.1.0.
|
103
|
+
version: 1.1.0.beta2
|
104
104
|
type: :runtime
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
108
|
- - '='
|
109
109
|
- !ruby/object:Gem::Version
|
110
|
-
version: 1.1.0.
|
110
|
+
version: 1.1.0.beta2
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
112
|
name: hanami-assets
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
115
|
- - '='
|
116
116
|
- !ruby/object:Gem::Version
|
117
|
-
version: 1.1.0.
|
117
|
+
version: 1.1.0.beta2
|
118
118
|
type: :runtime
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
122
|
- - '='
|
123
123
|
- !ruby/object:Gem::Version
|
124
|
-
version: 1.1.0.
|
124
|
+
version: 1.1.0.beta2
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
126
|
name: hanami-cli
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
128
128
|
requirements:
|
129
129
|
- - '='
|
130
130
|
- !ruby/object:Gem::Version
|
131
|
-
version: 0.1.0.
|
131
|
+
version: 0.1.0.beta2
|
132
132
|
type: :runtime
|
133
133
|
prerelease: false
|
134
134
|
version_requirements: !ruby/object:Gem::Requirement
|
135
135
|
requirements:
|
136
136
|
- - '='
|
137
137
|
- !ruby/object:Gem::Version
|
138
|
-
version: 0.1.0.
|
138
|
+
version: 0.1.0.beta2
|
139
139
|
- !ruby/object:Gem::Dependency
|
140
140
|
name: concurrent-ruby
|
141
141
|
requirement: !ruby/object:Gem::Requirement
|
@@ -154,30 +154,30 @@ dependencies:
|
|
154
154
|
name: bundler
|
155
155
|
requirement: !ruby/object:Gem::Requirement
|
156
156
|
requirements:
|
157
|
-
- - "
|
157
|
+
- - ">="
|
158
158
|
- !ruby/object:Gem::Version
|
159
|
-
version: '
|
159
|
+
version: '0'
|
160
160
|
type: :runtime
|
161
161
|
prerelease: false
|
162
162
|
version_requirements: !ruby/object:Gem::Requirement
|
163
163
|
requirements:
|
164
|
-
- - "
|
164
|
+
- - ">="
|
165
165
|
- !ruby/object:Gem::Version
|
166
|
-
version: '
|
166
|
+
version: '0'
|
167
167
|
- !ruby/object:Gem::Dependency
|
168
168
|
name: rspec
|
169
169
|
requirement: !ruby/object:Gem::Requirement
|
170
170
|
requirements:
|
171
171
|
- - "~>"
|
172
172
|
- !ruby/object:Gem::Version
|
173
|
-
version: '3.
|
173
|
+
version: '3.6'
|
174
174
|
type: :development
|
175
175
|
prerelease: false
|
176
176
|
version_requirements: !ruby/object:Gem::Requirement
|
177
177
|
requirements:
|
178
178
|
- - "~>"
|
179
179
|
- !ruby/object:Gem::Version
|
180
|
-
version: '3.
|
180
|
+
version: '3.6'
|
181
181
|
- !ruby/object:Gem::Dependency
|
182
182
|
name: rack-test
|
183
183
|
requirement: !ruby/object:Gem::Requirement
|
@@ -212,14 +212,14 @@ dependencies:
|
|
212
212
|
requirements:
|
213
213
|
- - "~>"
|
214
214
|
- !ruby/object:Gem::Version
|
215
|
-
version: '
|
215
|
+
version: '12.0'
|
216
216
|
type: :development
|
217
217
|
prerelease: false
|
218
218
|
version_requirements: !ruby/object:Gem::Requirement
|
219
219
|
requirements:
|
220
220
|
- - "~>"
|
221
221
|
- !ruby/object:Gem::Version
|
222
|
-
version: '
|
222
|
+
version: '12.0'
|
223
223
|
description: Hanami is a web framework for Ruby
|
224
224
|
email:
|
225
225
|
- me@lucaguidi.com
|
@@ -257,6 +257,7 @@ files:
|
|
257
257
|
- lib/hanami/cli/commands/db/drop.rb
|
258
258
|
- lib/hanami/cli/commands/db/migrate.rb
|
259
259
|
- lib/hanami/cli/commands/db/prepare.rb
|
260
|
+
- lib/hanami/cli/commands/db/rollback.rb
|
260
261
|
- lib/hanami/cli/commands/db/version.rb
|
261
262
|
- lib/hanami/cli/commands/destroy.rb
|
262
263
|
- lib/hanami/cli/commands/destroy/action.rb
|
@@ -386,7 +387,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
386
387
|
version: 1.3.1
|
387
388
|
requirements: []
|
388
389
|
rubyforge_project:
|
389
|
-
rubygems_version: 2.6.
|
390
|
+
rubygems_version: 2.6.13
|
390
391
|
signing_key:
|
391
392
|
specification_version: 4
|
392
393
|
summary: The web, with simplicity
|