flame 5.0.0.rc6 → 5.0.0.rc8
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
- data/CHANGELOG.md +33 -23
- data/README.md +8 -8
- data/lib/flame/config.rb +2 -2
- data/lib/flame/dispatcher/request.rb +1 -4
- data/lib/flame/dispatcher.rb +1 -1
- data/lib/flame/errors/route_arguments_order_error.rb +3 -5
- data/lib/flame/errors/route_extra_arguments_error.rb +1 -4
- data/lib/flame/errors/route_not_found_error.rb +2 -2
- data/lib/flame/path.rb +2 -2
- data/lib/flame/router/routes.rb +4 -7
- data/lib/flame/version.rb +1 -1
- metadata +51 -32
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1e91ec965639f616e5725b91181ea2bb884e171bd5140f9e0ce7211454a5ec1e
|
4
|
+
data.tar.gz: 71292f6bd5b6862689f63e06904255f551f3c4e5501e16e922ac08b27a824f27
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6cc534f9f11bd57d96fbc368ef26910d82361e57c4e74eff98272ffe82d7b385f87c84f59ff8f270334def88d6ece6a98a7bfc58b169914de69f09c58ba9b72c
|
7
|
+
data.tar.gz: 73b669cad763c69abe253e579cf48d97a237cdd0988b95787605a7d80face682950c01f704202890f06482100957ecdc5ecd9a611e8b95b81326973407a2ddc6
|
data/CHANGELOG.md
CHANGED
@@ -4,18 +4,21 @@ All notable changes to this project will be documented in this file.
|
|
4
4
|
|
5
5
|
## Unreleased
|
6
6
|
|
7
|
-
## 5.0.0.rc6 (2021-02-10)
|
8
|
-
|
9
7
|
### Added
|
10
8
|
|
9
|
+
* Add ability for controllers auto-mounting \
|
10
|
+
Good bye giant application `mount` blocks! \
|
11
|
+
But you can disable it with `nested: false` option for `mount`,
|
12
|
+
for example, for conditional umbrella application.
|
13
|
+
* Allow to mount anonymous controllers
|
14
|
+
* Add support for Ruby 3.0
|
11
15
|
* Add support of `OPTIONS` HTTP-method
|
12
|
-
* Add specs for application generator, including application start
|
13
16
|
* Add `Application.require_dirs` method
|
14
17
|
* Add `Controller#path_to_back` method
|
15
|
-
*
|
16
|
-
|
18
|
+
* Add `:log_dir` for default config
|
19
|
+
* Add `:require` option for `Config#load_yaml`
|
20
|
+
* Receive options for Tilt in `Controller#(render|view)` method via `:tilt` argument
|
17
21
|
* Add support of block for `Controller#render` method
|
18
|
-
* Add support for Ruby 2.5
|
19
22
|
* Add metadata to Gem specification with links
|
20
23
|
* Add required Ruby version into Gem specification
|
21
24
|
* Add `Controller.with_actions` method for modules
|
@@ -23,30 +26,33 @@ All notable changes to this project will be documented in this file.
|
|
23
26
|
* Allow to render view by relative path from current view
|
24
27
|
* Add ability for refining HTTP-methods of actions inside controllers \
|
25
28
|
Now you can not use `post`, `patch` and others inside `mount` blocks, yay!
|
26
|
-
* Add `:ignore` parameter for `Application.require_dirs`
|
27
29
|
* Catch `SyntaxError` for custom Internal Server Error page
|
28
30
|
* Add `:only` option to `#with_actions` method
|
29
31
|
* Add cache for `Controller#url_to` in production via `memery` gem
|
30
32
|
* Add ability to refine actions in modules \
|
31
33
|
Just `extend Flame::Controller::Actions` in module now,
|
32
34
|
and than `include with_actions ThatModule`, as before.
|
33
|
-
* Add ability for controllers auto-mounting \
|
34
|
-
Good bye giant application `mount` blocks! \
|
35
|
-
But you can disable it with `nested: false` option for `mount`,
|
36
|
-
for example, for conditional umbrella application.
|
37
35
|
* Add `Flame::Router::Routes#to_s`, for routes printing
|
38
36
|
```ruby
|
39
37
|
puts MyApplication.router.routes
|
40
38
|
```
|
41
39
|
* Add `Request#headers` method (with Camel-Cased Hash)
|
42
|
-
*
|
40
|
+
* Accept options for cookies setting
|
41
|
+
* Add `Flame::Path#include?` method, forwarding to `#to_s`
|
42
|
+
* Allow integration with `better_errors` gem \
|
43
|
+
More info [here](https://github.com/BetterErrors/better_errors/issues/454).
|
44
|
+
* Add RuboCop plugins, resolve offenses by them
|
45
|
+
* Add `remark` Markdown linter
|
43
46
|
|
44
47
|
|
45
48
|
### Changed
|
46
49
|
|
47
50
|
* Replace Array-based routes system with Hash-based
|
48
|
-
*
|
49
|
-
|
51
|
+
* Move `flame` executable and `template/` to separated gem
|
52
|
+
`flame-cli`, not required by default.
|
53
|
+
* Take out `Config` from `Flame::Application` to `Flame` \
|
54
|
+
Now it's possible to load config before routes (and models). \
|
55
|
+
Also add `ConfigFileNotFoundError`.
|
50
56
|
* Replace `URI` building with `Addressable::URI` from external gem
|
51
57
|
* Replace `no-cache` with `public` and `max-age` (one year)
|
52
58
|
for `Cache-Control` header for static files
|
@@ -68,35 +74,39 @@ All notable changes to this project will be documented in this file.
|
|
68
74
|
I think it's unnecessary for API-like usage.
|
69
75
|
* Slightly optimize `StaticFile`
|
70
76
|
* Build query in `#path_to` from root-Hash \
|
71
|
-
Now building a path with merged query parameters is easier,
|
72
|
-
no more `params: {}`.
|
77
|
+
Now building a path with merged query parameters is easier, no more `params: {}`.
|
73
78
|
* Run `Controller#not_found` through `execute` \
|
74
79
|
For found nearest routes. \
|
75
80
|
Now we can write before-hooks in `execute` also for nonexistent pages.
|
76
81
|
* Don't assign results of `execute` (after-hooks) as `body`
|
77
82
|
* Require directories starting with `_` first
|
78
83
|
* Allow to redefine controller path with `PATH` constant inside
|
79
|
-
* Update
|
80
|
-
|
81
|
-
* Move `flame` executable and `template/` to separated gem
|
82
|
-
`flame-cli`, not required by default.
|
84
|
+
* Update Rack and GorillaPatch
|
85
|
+
* Update RuboCop to a new version, resolve new offenses
|
83
86
|
* Improve version locks for dependencies
|
87
|
+
* Use Depfu instead of closed Gemnasium
|
84
88
|
|
85
89
|
### Removed
|
86
90
|
|
87
91
|
* Remove `Application#config` and `Application#router` methods
|
88
|
-
* Remove Ruby 2.
|
92
|
+
* Remove Ruby < 2.6 support
|
93
|
+
* Remove HTML tags (`<h1>`) from default body \
|
94
|
+
There is no `Content-Type` HTTP header, also there is no reason to return exactly HTML content \
|
95
|
+
(Flame can be used only for API or something else).
|
89
96
|
|
90
97
|
### Fixed
|
91
98
|
|
92
99
|
* Fix issue with `nil` in after-hook which returned 404 status
|
93
100
|
* Fix routing to path without an optional argument at the beginning
|
101
|
+
* Fix routing for multiple routes starting with arguments \
|
102
|
+
Example: parent controller with `show(id)` and nested controller at `/:parent_id/nested`.
|
103
|
+
* Avoid new controller creation in `halt`
|
104
|
+
* Fix typos in documentation
|
94
105
|
|
95
106
|
### Security
|
96
107
|
|
97
108
|
* Fix exploit with static files \
|
98
|
-
You could get the content of any file
|
99
|
-
from the outside of public directory. \
|
109
|
+
You could get the content of any file from the outside of public directory. \
|
100
110
|
It did not work with `nginx`, Cloudflare or something else.
|
101
111
|
|
102
112
|
|
data/README.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
<p align="center">
|
2
2
|
<img
|
3
|
-
src="https://raw.githubusercontent.com/AlexWayfer/flame/
|
3
|
+
src="https://raw.githubusercontent.com/AlexWayfer/flame/main/public/favicon.ico"
|
4
4
|
height="150"
|
5
5
|
alt="Flame Logo"
|
6
6
|
title="Logo from open-source Elusive-Iconfont (https://github.com/reduxframework/elusive-iconfont)"
|
@@ -10,8 +10,8 @@
|
|
10
10
|
<h1 align="center">Flame</h1>
|
11
11
|
|
12
12
|
<p align="center">
|
13
|
-
<a href="https://cirrus-ci.com/github/AlexWayfer/flame/
|
14
|
-
src="https://api.cirrus-ci.com/github/AlexWayfer/flame.svg?branch=
|
13
|
+
<a href="https://cirrus-ci.com/github/AlexWayfer/flame/main"><img
|
14
|
+
src="https://api.cirrus-ci.com/github/AlexWayfer/flame.svg?branch=main"
|
15
15
|
alt="Cirrus CI"
|
16
16
|
/></a>
|
17
17
|
<a href="https://codecov.io/gh/AlexWayfer/flame"><img
|
@@ -27,21 +27,21 @@
|
|
27
27
|
alt="Depfu"
|
28
28
|
/></a>
|
29
29
|
<a href="http://inch-ci.org/github/AlexWayfer/flame"><img
|
30
|
-
src="http://inch-ci.org/github/AlexWayfer/flame.svg?branch=
|
30
|
+
src="http://inch-ci.org/github/AlexWayfer/flame.svg?branch=main&style=flat-square"
|
31
31
|
alt="Docs"
|
32
32
|
/></a>
|
33
33
|
<a href="https://rubygems.org/gems/flame"><img
|
34
|
-
src="https://img.shields.io/gem/v/flame.svg?style=flat-square"
|
35
|
-
alt="Gem"
|
34
|
+
src="https://img.shields.io/gem/v/flame.svg?include_prereleases&style=flat-square"
|
35
|
+
alt="Gem (including prereleases)"
|
36
36
|
/></a>
|
37
|
-
<a href="https://github.com/AlexWayfer/flame/blob/
|
37
|
+
<a href="https://github.com/AlexWayfer/flame/blob/main/LICENSE.txt"><img
|
38
38
|
src="https://img.shields.io/github/license/AlexWayfer/flame.svg?style=flat-square"
|
39
39
|
alt="MIT license"
|
40
40
|
/></a>
|
41
41
|
</p>
|
42
42
|
|
43
43
|
Flame is a small Ruby web framework, built on [Rack](https://github.com/rack/rack),
|
44
|
-
inspired by [Gin](https://github.com/
|
44
|
+
inspired by [Gin](https://github.com/jcasts/gin) (which follows class-controllers style),
|
45
45
|
designed as a replacement [Sinatra](https://github.com/sinatra/sinatra)
|
46
46
|
or maybe even [Rails](https://github.com/rails/rails).
|
47
47
|
|
data/lib/flame/config.rb
CHANGED
@@ -17,7 +17,7 @@ module Flame
|
|
17
17
|
super()
|
18
18
|
replace DEFAULT_DIRS.merge(
|
19
19
|
root_dir: File.realpath(root_dir),
|
20
|
-
environment: ENV
|
20
|
+
environment: ENV.fetch('RACK_ENV', 'development')
|
21
21
|
)
|
22
22
|
end
|
23
23
|
|
@@ -53,7 +53,7 @@ module Flame
|
|
53
53
|
file_path = find_config_file file, required: required
|
54
54
|
return unless file_path
|
55
55
|
|
56
|
-
yaml = YAML.load_file(file_path)
|
56
|
+
yaml = YAML.load_file(file_path, aliases: true)
|
57
57
|
key ||= File.basename(file, '.*')
|
58
58
|
self[key.to_sym] = yaml if set
|
59
59
|
yaml
|
@@ -33,11 +33,8 @@ module Flame
|
|
33
33
|
env.each_with_object({}) do |(key, value), result|
|
34
34
|
next unless key.start_with?(HEADER_PREFIX)
|
35
35
|
|
36
|
-
## TODO: Replace `String#[]` with `#delete_prefix`
|
37
|
-
## after Ruby < 2.5 dropping
|
38
36
|
camelized_key =
|
39
|
-
key
|
40
|
-
.camelize.gsub('::', '-')
|
37
|
+
key.delete_prefix(HEADER_PREFIX).downcase.tr('_', '/').camelize.gsub('::', '-')
|
41
38
|
|
42
39
|
result[camelized_key] = value
|
43
40
|
end
|
data/lib/flame/dispatcher.rb
CHANGED
@@ -124,7 +124,7 @@ module Flame
|
|
124
124
|
def dump_error(error)
|
125
125
|
error_message = [
|
126
126
|
"#{Time.now.strftime('%Y-%m-%d %H:%M:%S')} - " \
|
127
|
-
|
127
|
+
"#{error.class} - #{error.message}:",
|
128
128
|
*error.backtrace
|
129
129
|
].join("\n\t")
|
130
130
|
@env[Rack::RACK_ERRORS].puts(error_message)
|
@@ -9,11 +9,9 @@ module Flame
|
|
9
9
|
## @param wrong_ordered_arguments [Array<Symbol>]
|
10
10
|
## two wrong ordered arguments
|
11
11
|
def initialize(path, wrong_ordered_arguments)
|
12
|
-
super(
|
13
|
-
|
14
|
-
|
15
|
-
" '#{wrong_ordered_arguments.last}'"
|
16
|
-
)
|
12
|
+
super(<<~MESSAGE.chomp)
|
13
|
+
Path '#{path}' should have '#{wrong_ordered_arguments.first}' argument before '#{wrong_ordered_arguments.last}'
|
14
|
+
MESSAGE
|
17
15
|
end
|
18
16
|
end
|
19
17
|
end
|
@@ -23,10 +23,7 @@ module Flame
|
|
23
23
|
path: "Action '#{ctrl}##{action}'"
|
24
24
|
}[extra[:place]]
|
25
25
|
|
26
|
-
super
|
27
|
-
"#{entity} has no " \
|
28
|
-
"#{extra[:type_name]} arguments #{extra[:args].inspect}"
|
29
|
-
)
|
26
|
+
super "#{entity} has no #{extra[:type_name]} arguments #{extra[:args].inspect}"
|
30
27
|
end
|
31
28
|
end
|
32
29
|
end
|
@@ -10,8 +10,8 @@ module Flame
|
|
10
10
|
## @param action [Symbol] action with which route not found
|
11
11
|
def initialize(controller, action)
|
12
12
|
super(
|
13
|
-
"Route with controller '#{controller}' and action '#{action}'" \
|
14
|
-
|
13
|
+
"Route with controller '#{controller}' and action '#{action}' " \
|
14
|
+
'not found in application routes'
|
15
15
|
)
|
16
16
|
end
|
17
17
|
end
|
data/lib/flame/path.rb
CHANGED
@@ -122,10 +122,10 @@ module Flame
|
|
122
122
|
## Not argument
|
123
123
|
return part unless part.arg?
|
124
124
|
## Not required argument
|
125
|
-
return args.delete(part[2
|
125
|
+
return args.delete(part[2..].to_sym) if part.opt_arg?
|
126
126
|
|
127
127
|
## Required argument
|
128
|
-
param = args.delete(part[1
|
128
|
+
param = args.delete(part[1..].to_sym)
|
129
129
|
## Required argument is nil
|
130
130
|
error = Errors::ArgumentNotAssignedError.new(@path, part)
|
131
131
|
raise error if param.nil?
|
data/lib/flame/router/routes.rb
CHANGED
@@ -17,7 +17,7 @@ module Flame
|
|
17
17
|
path = Flame::Path.new(*path_parts)
|
18
18
|
return if path.parts.empty?
|
19
19
|
|
20
|
-
nested_routes = self.class.new Flame::Path.new(*path.parts[1
|
20
|
+
nested_routes = self.class.new Flame::Path.new(*path.parts[1..])
|
21
21
|
# path.parts.reduce(result) do |hash, part|
|
22
22
|
# hash[part] ||= self.class.new
|
23
23
|
# end
|
@@ -63,8 +63,8 @@ module Flame
|
|
63
63
|
endpoint =
|
64
64
|
self[path_parts.first] || dig(first_opt_arg_key, path_parts.first)
|
65
65
|
|
66
|
-
endpoint&.navigate(*path_parts[1
|
67
|
-
find_among_arg_keys(path_parts[1
|
66
|
+
endpoint&.navigate(*path_parts[1..]) ||
|
67
|
+
find_among_arg_keys(path_parts[1..])
|
68
68
|
end
|
69
69
|
|
70
70
|
## Dig through optional arguments as keys
|
@@ -106,10 +106,7 @@ module Flame
|
|
106
106
|
def sort
|
107
107
|
sort_by do |key, _value|
|
108
108
|
[
|
109
|
-
|
110
|
-
then Router::HTTP_METHODS.index(key)
|
111
|
-
else Float::INFINITY
|
112
|
-
end,
|
109
|
+
key.is_a?(Symbol) ? Router::HTTP_METHODS.index(key) : Float::INFINITY,
|
113
110
|
key.to_s
|
114
111
|
]
|
115
112
|
end
|
data/lib/flame/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: flame
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.0.0.
|
4
|
+
version: 5.0.0.rc8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alexander Popov
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-09-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: addressable
|
@@ -47,7 +47,7 @@ dependencies:
|
|
47
47
|
version: '3.0'
|
48
48
|
- - "<"
|
49
49
|
- !ruby/object:Gem::Version
|
50
|
-
version: '
|
50
|
+
version: '6'
|
51
51
|
type: :runtime
|
52
52
|
prerelease: false
|
53
53
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -57,21 +57,35 @@ dependencies:
|
|
57
57
|
version: '3.0'
|
58
58
|
- - "<"
|
59
59
|
- !ruby/object:Gem::Version
|
60
|
-
version: '
|
60
|
+
version: '6'
|
61
|
+
- !ruby/object:Gem::Dependency
|
62
|
+
name: psych
|
63
|
+
requirement: !ruby/object:Gem::Requirement
|
64
|
+
requirements:
|
65
|
+
- - "~>"
|
66
|
+
- !ruby/object:Gem::Version
|
67
|
+
version: '4.0'
|
68
|
+
type: :runtime
|
69
|
+
prerelease: false
|
70
|
+
version_requirements: !ruby/object:Gem::Requirement
|
71
|
+
requirements:
|
72
|
+
- - "~>"
|
73
|
+
- !ruby/object:Gem::Version
|
74
|
+
version: '4.0'
|
61
75
|
- !ruby/object:Gem::Dependency
|
62
76
|
name: rack
|
63
77
|
requirement: !ruby/object:Gem::Requirement
|
64
78
|
requirements:
|
65
79
|
- - "~>"
|
66
80
|
- !ruby/object:Gem::Version
|
67
|
-
version: '
|
81
|
+
version: '3.0'
|
68
82
|
type: :runtime
|
69
83
|
prerelease: false
|
70
84
|
version_requirements: !ruby/object:Gem::Requirement
|
71
85
|
requirements:
|
72
86
|
- - "~>"
|
73
87
|
- !ruby/object:Gem::Version
|
74
|
-
version: '
|
88
|
+
version: '3.0'
|
75
89
|
- !ruby/object:Gem::Dependency
|
76
90
|
name: tilt
|
77
91
|
requirement: !ruby/object:Gem::Requirement
|
@@ -120,42 +134,42 @@ dependencies:
|
|
120
134
|
requirements:
|
121
135
|
- - "~>"
|
122
136
|
- !ruby/object:Gem::Version
|
123
|
-
version: 0.
|
137
|
+
version: 0.9.0
|
124
138
|
type: :development
|
125
139
|
prerelease: false
|
126
140
|
version_requirements: !ruby/object:Gem::Requirement
|
127
141
|
requirements:
|
128
142
|
- - "~>"
|
129
143
|
- !ruby/object:Gem::Version
|
130
|
-
version: 0.
|
144
|
+
version: 0.9.0
|
131
145
|
- !ruby/object:Gem::Dependency
|
132
146
|
name: gem_toys
|
133
147
|
requirement: !ruby/object:Gem::Requirement
|
134
148
|
requirements:
|
135
149
|
- - "~>"
|
136
150
|
- !ruby/object:Gem::Version
|
137
|
-
version: 0.
|
151
|
+
version: 0.12.1
|
138
152
|
type: :development
|
139
153
|
prerelease: false
|
140
154
|
version_requirements: !ruby/object:Gem::Requirement
|
141
155
|
requirements:
|
142
156
|
- - "~>"
|
143
157
|
- !ruby/object:Gem::Version
|
144
|
-
version: 0.
|
158
|
+
version: 0.12.1
|
145
159
|
- !ruby/object:Gem::Dependency
|
146
160
|
name: toys
|
147
161
|
requirement: !ruby/object:Gem::Requirement
|
148
162
|
requirements:
|
149
163
|
- - "~>"
|
150
164
|
- !ruby/object:Gem::Version
|
151
|
-
version: 0.
|
165
|
+
version: 0.13.1
|
152
166
|
type: :development
|
153
167
|
prerelease: false
|
154
168
|
version_requirements: !ruby/object:Gem::Requirement
|
155
169
|
requirements:
|
156
170
|
- - "~>"
|
157
171
|
- !ruby/object:Gem::Version
|
158
|
-
version: 0.
|
172
|
+
version: 0.13.1
|
159
173
|
- !ruby/object:Gem::Dependency
|
160
174
|
name: better_errors
|
161
175
|
requirement: !ruby/object:Gem::Requirement
|
@@ -171,75 +185,75 @@ dependencies:
|
|
171
185
|
- !ruby/object:Gem::Version
|
172
186
|
version: '2.0'
|
173
187
|
- !ruby/object:Gem::Dependency
|
174
|
-
name:
|
188
|
+
name: rack-test
|
175
189
|
requirement: !ruby/object:Gem::Requirement
|
176
190
|
requirements:
|
177
191
|
- - "~>"
|
178
192
|
- !ruby/object:Gem::Version
|
179
|
-
version: 0
|
193
|
+
version: '2.0'
|
180
194
|
type: :development
|
181
195
|
prerelease: false
|
182
196
|
version_requirements: !ruby/object:Gem::Requirement
|
183
197
|
requirements:
|
184
198
|
- - "~>"
|
185
199
|
- !ruby/object:Gem::Version
|
186
|
-
version: 0
|
200
|
+
version: '2.0'
|
187
201
|
- !ruby/object:Gem::Dependency
|
188
|
-
name:
|
202
|
+
name: rspec
|
189
203
|
requirement: !ruby/object:Gem::Requirement
|
190
204
|
requirements:
|
191
205
|
- - "~>"
|
192
206
|
- !ruby/object:Gem::Version
|
193
|
-
version: '
|
207
|
+
version: '3.9'
|
194
208
|
type: :development
|
195
209
|
prerelease: false
|
196
210
|
version_requirements: !ruby/object:Gem::Requirement
|
197
211
|
requirements:
|
198
212
|
- - "~>"
|
199
213
|
- !ruby/object:Gem::Version
|
200
|
-
version: '
|
214
|
+
version: '3.9'
|
201
215
|
- !ruby/object:Gem::Dependency
|
202
|
-
name:
|
216
|
+
name: simplecov
|
203
217
|
requirement: !ruby/object:Gem::Requirement
|
204
218
|
requirements:
|
205
219
|
- - "~>"
|
206
220
|
- !ruby/object:Gem::Version
|
207
|
-
version:
|
221
|
+
version: 0.21.2
|
208
222
|
type: :development
|
209
223
|
prerelease: false
|
210
224
|
version_requirements: !ruby/object:Gem::Requirement
|
211
225
|
requirements:
|
212
226
|
- - "~>"
|
213
227
|
- !ruby/object:Gem::Version
|
214
|
-
version:
|
228
|
+
version: 0.21.2
|
215
229
|
- !ruby/object:Gem::Dependency
|
216
|
-
name: simplecov
|
230
|
+
name: simplecov-cobertura
|
217
231
|
requirement: !ruby/object:Gem::Requirement
|
218
232
|
requirements:
|
219
233
|
- - "~>"
|
220
234
|
- !ruby/object:Gem::Version
|
221
|
-
version:
|
235
|
+
version: '2.1'
|
222
236
|
type: :development
|
223
237
|
prerelease: false
|
224
238
|
version_requirements: !ruby/object:Gem::Requirement
|
225
239
|
requirements:
|
226
240
|
- - "~>"
|
227
241
|
- !ruby/object:Gem::Version
|
228
|
-
version:
|
242
|
+
version: '2.1'
|
229
243
|
- !ruby/object:Gem::Dependency
|
230
244
|
name: rubocop
|
231
245
|
requirement: !ruby/object:Gem::Requirement
|
232
246
|
requirements:
|
233
247
|
- - "~>"
|
234
248
|
- !ruby/object:Gem::Version
|
235
|
-
version:
|
249
|
+
version: 1.36.0
|
236
250
|
type: :development
|
237
251
|
prerelease: false
|
238
252
|
version_requirements: !ruby/object:Gem::Requirement
|
239
253
|
requirements:
|
240
254
|
- - "~>"
|
241
255
|
- !ruby/object:Gem::Version
|
242
|
-
version:
|
256
|
+
version: 1.36.0
|
243
257
|
- !ruby/object:Gem::Dependency
|
244
258
|
name: rubocop-performance
|
245
259
|
requirement: !ruby/object:Gem::Requirement
|
@@ -260,14 +274,14 @@ dependencies:
|
|
260
274
|
requirements:
|
261
275
|
- - "~>"
|
262
276
|
- !ruby/object:Gem::Version
|
263
|
-
version:
|
277
|
+
version: 2.13.2
|
264
278
|
type: :development
|
265
279
|
prerelease: false
|
266
280
|
version_requirements: !ruby/object:Gem::Requirement
|
267
281
|
requirements:
|
268
282
|
- - "~>"
|
269
283
|
- !ruby/object:Gem::Version
|
270
|
-
version:
|
284
|
+
version: 2.13.2
|
271
285
|
description: |
|
272
286
|
Use controller's classes with instance methods as routing actions,
|
273
287
|
mounting its in application class.
|
@@ -314,11 +328,13 @@ homepage: https://github.com/AlexWayfer/flame
|
|
314
328
|
licenses:
|
315
329
|
- MIT
|
316
330
|
metadata:
|
331
|
+
rubygems_mfa_required: 'true'
|
317
332
|
bug_tracker_uri: https://github.com/AlexWayfer/flame/issues
|
318
|
-
|
333
|
+
changelog_uri: https://github.com/AlexWayfer/flame/blob/v5.0.0.rc8/CHANGELOG.md
|
334
|
+
documentation_uri: http://www.rubydoc.info/gems/flame/5.0.0.rc8
|
335
|
+
homepage_uri: https://github.com/AlexWayfer/flame
|
319
336
|
source_code_uri: https://github.com/AlexWayfer/flame
|
320
337
|
wiki_uri: https://github.com/AlexWayfer/flame/wiki
|
321
|
-
homepage_uri: https://github.com/AlexWayfer/flame
|
322
338
|
post_install_message:
|
323
339
|
rdoc_options: []
|
324
340
|
require_paths:
|
@@ -327,14 +343,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
327
343
|
requirements:
|
328
344
|
- - ">="
|
329
345
|
- !ruby/object:Gem::Version
|
330
|
-
version: '2.
|
346
|
+
version: '2.6'
|
347
|
+
- - "<"
|
348
|
+
- !ruby/object:Gem::Version
|
349
|
+
version: '4'
|
331
350
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
332
351
|
requirements:
|
333
352
|
- - ">"
|
334
353
|
- !ruby/object:Gem::Version
|
335
354
|
version: 1.3.1
|
336
355
|
requirements: []
|
337
|
-
rubygems_version: 3.
|
356
|
+
rubygems_version: 3.3.7
|
338
357
|
signing_key:
|
339
358
|
specification_version: 4
|
340
359
|
summary: Web-framework, based on MVC-pattern
|