flame 4.18.1 → 5.0.0.rc1
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/bin/flame +7 -62
- data/lib/flame.rb +1 -0
- data/lib/flame/application.rb +75 -17
- data/lib/flame/application/config.rb +6 -0
- data/lib/flame/controller.rb +36 -76
- data/lib/flame/controller/path_to.rb +39 -0
- data/lib/flame/dispatcher.rb +25 -66
- data/lib/flame/dispatcher/cookies.rb +10 -2
- data/lib/flame/dispatcher/routes.rb +53 -0
- data/lib/flame/dispatcher/static.rb +15 -8
- data/lib/flame/errors/argument_not_assigned_error.rb +6 -0
- data/lib/flame/errors/route_arguments_order_error.rb +6 -0
- data/lib/flame/errors/route_extra_arguments_error.rb +10 -0
- data/lib/flame/errors/route_not_found_error.rb +10 -4
- data/lib/flame/errors/template_not_found_error.rb +6 -0
- data/lib/flame/path.rb +63 -33
- data/lib/flame/render.rb +21 -8
- data/lib/flame/router.rb +112 -66
- data/lib/flame/router/route.rb +9 -56
- data/lib/flame/router/routes.rb +86 -0
- data/lib/flame/validators.rb +7 -1
- data/lib/flame/version.rb +1 -1
- data/template/.editorconfig +15 -0
- data/template/.gitignore +19 -2
- data/template/.rubocop.yml +14 -0
- data/template/Gemfile +48 -8
- data/template/Rakefile +824 -0
- data/template/{app.rb.erb → application.rb.erb} +4 -1
- data/template/config.ru.erb +62 -10
- data/template/config/config.rb.erb +44 -2
- data/template/config/database.example.yml +1 -1
- data/template/config/deploy.example.yml +2 -0
- data/template/config/puma.rb +56 -0
- data/template/config/sequel.rb.erb +13 -6
- data/template/config/server.example.yml +32 -0
- data/template/config/session.example.yml +7 -0
- data/template/controllers/{_base_controller.rb.erb → _controller.rb.erb} +5 -4
- data/template/controllers/site/_controller.rb.erb +18 -0
- data/template/controllers/site/index_controller.rb.erb +12 -0
- data/template/filewatchers.yml +12 -0
- data/template/server +172 -21
- data/template/services/.keep +0 -0
- data/template/views/site/index.html.erb.erb +1 -0
- data/template/views/site/layout.html.erb.erb +10 -0
- metadata +112 -54
- data/template/Rakefile.erb +0 -64
- data/template/config/thin.example.yml +0 -18
File without changes
|
@@ -0,0 +1 @@
|
|
1
|
+
<h1>Hello, world!</h1>
|
metadata
CHANGED
@@ -1,15 +1,43 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: flame
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 5.0.0.rc1
|
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: 2018-01-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: addressable
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '2.5'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '2.5'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: gorilla-patch
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '2.7'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '2.7'
|
13
41
|
- !ruby/object:Gem::Dependency
|
14
42
|
name: rack
|
15
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -24,6 +52,20 @@ dependencies:
|
|
24
52
|
- - "~>"
|
25
53
|
- !ruby/object:Gem::Version
|
26
54
|
version: '2'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: thor
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :runtime
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
27
69
|
- !ruby/object:Gem::Dependency
|
28
70
|
name: tilt
|
29
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -45,117 +87,105 @@ dependencies:
|
|
45
87
|
- !ruby/object:Gem::Version
|
46
88
|
version: '3'
|
47
89
|
- !ruby/object:Gem::Dependency
|
48
|
-
name:
|
90
|
+
name: codecov
|
49
91
|
requirement: !ruby/object:Gem::Requirement
|
50
92
|
requirements:
|
51
93
|
- - "~>"
|
52
94
|
- !ruby/object:Gem::Version
|
53
|
-
version: '
|
54
|
-
|
55
|
-
- !ruby/object:Gem::Version
|
56
|
-
version: 2.0.0
|
57
|
-
type: :runtime
|
95
|
+
version: '0'
|
96
|
+
type: :development
|
58
97
|
prerelease: false
|
59
98
|
version_requirements: !ruby/object:Gem::Requirement
|
60
99
|
requirements:
|
61
100
|
- - "~>"
|
62
101
|
- !ruby/object:Gem::Version
|
63
|
-
version: '
|
64
|
-
- - ">="
|
65
|
-
- !ruby/object:Gem::Version
|
66
|
-
version: 2.0.0
|
102
|
+
version: '0'
|
67
103
|
- !ruby/object:Gem::Dependency
|
68
|
-
name:
|
104
|
+
name: minitest-bacon
|
69
105
|
requirement: !ruby/object:Gem::Requirement
|
70
106
|
requirements:
|
71
107
|
- - "~>"
|
72
108
|
- !ruby/object:Gem::Version
|
73
|
-
version: '
|
74
|
-
type: :
|
109
|
+
version: '1'
|
110
|
+
type: :development
|
75
111
|
prerelease: false
|
76
112
|
version_requirements: !ruby/object:Gem::Requirement
|
77
113
|
requirements:
|
78
114
|
- - "~>"
|
79
115
|
- !ruby/object:Gem::Version
|
80
|
-
version: '
|
116
|
+
version: '1'
|
81
117
|
- !ruby/object:Gem::Dependency
|
82
|
-
name:
|
118
|
+
name: minitest-reporters
|
83
119
|
requirement: !ruby/object:Gem::Requirement
|
84
120
|
requirements:
|
85
121
|
- - "~>"
|
86
122
|
- !ruby/object:Gem::Version
|
87
|
-
version: '
|
123
|
+
version: '1'
|
88
124
|
type: :development
|
89
125
|
prerelease: false
|
90
126
|
version_requirements: !ruby/object:Gem::Requirement
|
91
127
|
requirements:
|
92
128
|
- - "~>"
|
93
129
|
- !ruby/object:Gem::Version
|
94
|
-
version: '
|
130
|
+
version: '1'
|
95
131
|
- !ruby/object:Gem::Dependency
|
96
|
-
name:
|
132
|
+
name: pry
|
97
133
|
requirement: !ruby/object:Gem::Requirement
|
98
134
|
requirements:
|
99
135
|
- - "~>"
|
100
136
|
- !ruby/object:Gem::Version
|
101
|
-
version: '
|
137
|
+
version: '0'
|
102
138
|
type: :development
|
103
139
|
prerelease: false
|
104
140
|
version_requirements: !ruby/object:Gem::Requirement
|
105
141
|
requirements:
|
106
142
|
- - "~>"
|
107
143
|
- !ruby/object:Gem::Version
|
108
|
-
version: '
|
144
|
+
version: '0'
|
109
145
|
- !ruby/object:Gem::Dependency
|
110
|
-
name:
|
146
|
+
name: pry-byebug
|
111
147
|
requirement: !ruby/object:Gem::Requirement
|
112
148
|
requirements:
|
113
149
|
- - "~>"
|
114
150
|
- !ruby/object:Gem::Version
|
115
|
-
version: '
|
151
|
+
version: '3.5'
|
116
152
|
type: :development
|
117
153
|
prerelease: false
|
118
154
|
version_requirements: !ruby/object:Gem::Requirement
|
119
155
|
requirements:
|
120
156
|
- - "~>"
|
121
157
|
- !ruby/object:Gem::Version
|
122
|
-
version: '
|
158
|
+
version: '3.5'
|
123
159
|
- !ruby/object:Gem::Dependency
|
124
|
-
name:
|
160
|
+
name: puma
|
125
161
|
requirement: !ruby/object:Gem::Requirement
|
126
162
|
requirements:
|
127
163
|
- - "~>"
|
128
164
|
- !ruby/object:Gem::Version
|
129
|
-
version: '
|
130
|
-
- - ">="
|
131
|
-
- !ruby/object:Gem::Version
|
132
|
-
version: 1.1.1
|
165
|
+
version: '3.9'
|
133
166
|
type: :development
|
134
167
|
prerelease: false
|
135
168
|
version_requirements: !ruby/object:Gem::Requirement
|
136
169
|
requirements:
|
137
170
|
- - "~>"
|
138
171
|
- !ruby/object:Gem::Version
|
139
|
-
version: '
|
140
|
-
- - ">="
|
141
|
-
- !ruby/object:Gem::Version
|
142
|
-
version: 1.1.1
|
172
|
+
version: '3.9'
|
143
173
|
- !ruby/object:Gem::Dependency
|
144
|
-
name: rack-
|
174
|
+
name: rack-console
|
145
175
|
requirement: !ruby/object:Gem::Requirement
|
146
176
|
requirements:
|
147
177
|
- - "~>"
|
148
178
|
- !ruby/object:Gem::Version
|
149
|
-
version: '
|
179
|
+
version: '1'
|
150
180
|
type: :development
|
151
181
|
prerelease: false
|
152
182
|
version_requirements: !ruby/object:Gem::Requirement
|
153
183
|
requirements:
|
154
184
|
- - "~>"
|
155
185
|
- !ruby/object:Gem::Version
|
156
|
-
version: '
|
186
|
+
version: '1'
|
157
187
|
- !ruby/object:Gem::Dependency
|
158
|
-
name:
|
188
|
+
name: rack-test
|
159
189
|
requirement: !ruby/object:Gem::Requirement
|
160
190
|
requirements:
|
161
191
|
- - "~>"
|
@@ -169,47 +199,61 @@ dependencies:
|
|
169
199
|
- !ruby/object:Gem::Version
|
170
200
|
version: '0'
|
171
201
|
- !ruby/object:Gem::Dependency
|
172
|
-
name:
|
202
|
+
name: rack-utf8_sanitizer
|
173
203
|
requirement: !ruby/object:Gem::Requirement
|
174
204
|
requirements:
|
175
205
|
- - "~>"
|
176
206
|
- !ruby/object:Gem::Version
|
177
|
-
version: '
|
207
|
+
version: '1.3'
|
178
208
|
type: :development
|
179
209
|
prerelease: false
|
180
210
|
version_requirements: !ruby/object:Gem::Requirement
|
181
211
|
requirements:
|
182
212
|
- - "~>"
|
183
213
|
- !ruby/object:Gem::Version
|
184
|
-
version: '
|
214
|
+
version: '1.3'
|
185
215
|
- !ruby/object:Gem::Dependency
|
186
|
-
name:
|
216
|
+
name: rake
|
187
217
|
requirement: !ruby/object:Gem::Requirement
|
188
218
|
requirements:
|
189
219
|
- - "~>"
|
190
220
|
- !ruby/object:Gem::Version
|
191
|
-
version: '
|
221
|
+
version: '12'
|
192
222
|
type: :development
|
193
223
|
prerelease: false
|
194
224
|
version_requirements: !ruby/object:Gem::Requirement
|
195
225
|
requirements:
|
196
226
|
- - "~>"
|
197
227
|
- !ruby/object:Gem::Version
|
198
|
-
version: '
|
228
|
+
version: '12'
|
199
229
|
- !ruby/object:Gem::Dependency
|
200
|
-
name:
|
230
|
+
name: rubocop
|
231
|
+
requirement: !ruby/object:Gem::Requirement
|
232
|
+
requirements:
|
233
|
+
- - '='
|
234
|
+
- !ruby/object:Gem::Version
|
235
|
+
version: '0.51'
|
236
|
+
type: :development
|
237
|
+
prerelease: false
|
238
|
+
version_requirements: !ruby/object:Gem::Requirement
|
239
|
+
requirements:
|
240
|
+
- - '='
|
241
|
+
- !ruby/object:Gem::Version
|
242
|
+
version: '0.51'
|
243
|
+
- !ruby/object:Gem::Dependency
|
244
|
+
name: simplecov
|
201
245
|
requirement: !ruby/object:Gem::Requirement
|
202
246
|
requirements:
|
203
247
|
- - "~>"
|
204
248
|
- !ruby/object:Gem::Version
|
205
|
-
version: '
|
249
|
+
version: '0'
|
206
250
|
type: :development
|
207
251
|
prerelease: false
|
208
252
|
version_requirements: !ruby/object:Gem::Requirement
|
209
253
|
requirements:
|
210
254
|
- - "~>"
|
211
255
|
- !ruby/object:Gem::Version
|
212
|
-
version: '
|
256
|
+
version: '0'
|
213
257
|
description: Use controller's classes with instance methods as routing actions, mounting
|
214
258
|
its in application class.
|
215
259
|
email:
|
@@ -224,10 +268,12 @@ files:
|
|
224
268
|
- lib/flame/application.rb
|
225
269
|
- lib/flame/application/config.rb
|
226
270
|
- lib/flame/controller.rb
|
271
|
+
- lib/flame/controller/path_to.rb
|
227
272
|
- lib/flame/dispatcher.rb
|
228
273
|
- lib/flame/dispatcher/cookies.rb
|
229
274
|
- lib/flame/dispatcher/request.rb
|
230
275
|
- lib/flame/dispatcher/response.rb
|
276
|
+
- lib/flame/dispatcher/routes.rb
|
231
277
|
- lib/flame/dispatcher/static.rb
|
232
278
|
- lib/flame/errors/argument_not_assigned_error.rb
|
233
279
|
- lib/flame/errors/route_arguments_order_error.rb
|
@@ -238,27 +284,39 @@ files:
|
|
238
284
|
- lib/flame/render.rb
|
239
285
|
- lib/flame/router.rb
|
240
286
|
- lib/flame/router/route.rb
|
287
|
+
- lib/flame/router/routes.rb
|
241
288
|
- lib/flame/validators.rb
|
242
289
|
- lib/flame/version.rb
|
243
290
|
- public/favicon.ico
|
291
|
+
- template/.editorconfig
|
244
292
|
- template/.gitignore
|
293
|
+
- template/.rubocop.yml
|
245
294
|
- template/Gemfile
|
246
|
-
- template/Rakefile
|
247
|
-
- template/
|
295
|
+
- template/Rakefile
|
296
|
+
- template/application.rb.erb
|
248
297
|
- template/config.ru.erb
|
249
298
|
- template/config/config.rb.erb
|
250
299
|
- template/config/database.example.yml
|
300
|
+
- template/config/deploy.example.yml
|
301
|
+
- template/config/puma.rb
|
251
302
|
- template/config/sequel.rb.erb
|
252
|
-
- template/config/
|
253
|
-
- template/
|
303
|
+
- template/config/server.example.yml
|
304
|
+
- template/config/session.example.yml
|
305
|
+
- template/controllers/_controller.rb.erb
|
306
|
+
- template/controllers/site/_controller.rb.erb
|
307
|
+
- template/controllers/site/index_controller.rb.erb
|
254
308
|
- template/db/.keep
|
309
|
+
- template/filewatchers.yml
|
255
310
|
- template/helpers/.keep
|
256
311
|
- template/lib/.keep
|
257
312
|
- template/locales/en.yml
|
258
313
|
- template/models/.keep
|
259
314
|
- template/public/.keep
|
260
315
|
- template/server
|
316
|
+
- template/services/.keep
|
261
317
|
- template/views/.keep
|
318
|
+
- template/views/site/index.html.erb.erb
|
319
|
+
- template/views/site/layout.html.erb.erb
|
262
320
|
homepage: https://github.com/AlexWayfer/flame
|
263
321
|
licenses:
|
264
322
|
- MIT
|
@@ -274,12 +332,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
274
332
|
version: '0'
|
275
333
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
276
334
|
requirements:
|
277
|
-
- - "
|
335
|
+
- - ">"
|
278
336
|
- !ruby/object:Gem::Version
|
279
|
-
version:
|
337
|
+
version: 1.3.1
|
280
338
|
requirements: []
|
281
339
|
rubyforge_project:
|
282
|
-
rubygems_version: 2.6.
|
340
|
+
rubygems_version: 2.6.14
|
283
341
|
signing_key:
|
284
342
|
specification_version: 4
|
285
343
|
summary: Web-framework, based on MVC-pattern
|
data/template/Rakefile.erb
DELETED
@@ -1,64 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
namespace :db do
|
4
|
-
## Require libs and config
|
5
|
-
require 'sequel'
|
6
|
-
require File.join(__dir__, 'config', 'sequel.rb')
|
7
|
-
## Default path to db-files
|
8
|
-
db_dir = File.join(__dir__, 'db')
|
9
|
-
|
10
|
-
desc 'Run migrations'
|
11
|
-
task :migrate, [:version] do |_t, args|
|
12
|
-
Sequel.extension :migration
|
13
|
-
migrations_dir = File.join(db_dir, 'migrations')
|
14
|
-
|
15
|
-
if args[:version]
|
16
|
-
puts "Migrating to version #{args[:version]}"
|
17
|
-
Sequel::Migrator.run(
|
18
|
-
<%= @module_name %>::DB,
|
19
|
-
migrations_dir,
|
20
|
-
target: args[:version].to_i
|
21
|
-
)
|
22
|
-
else
|
23
|
-
puts 'Migrating to latest'
|
24
|
-
Sequel::Migrator.run(<%= @module_name %>::DB, migrations_dir)
|
25
|
-
end
|
26
|
-
|
27
|
-
Rake::Task['db:schema:dump'].invoke('same_db=true')
|
28
|
-
end
|
29
|
-
|
30
|
-
desc 'Run seeds'
|
31
|
-
task :seed do |_t|
|
32
|
-
require 'sequel/extensions/seed'
|
33
|
-
seeds_dir = File.join(db_dir, 'seeds')
|
34
|
-
|
35
|
-
## Doesn't support version yet
|
36
|
-
puts 'Seeding latest'
|
37
|
-
Sequel::Seeder.apply(<%= @module_name %>::DB, seeds_dir)
|
38
|
-
end
|
39
|
-
|
40
|
-
namespace :schema do
|
41
|
-
schema_filename = '001_schema.rb'
|
42
|
-
|
43
|
-
desc 'Run schema dump'
|
44
|
-
task :dump do |_t|
|
45
|
-
<%= @module_name %>::DB.extension :schema_dumper
|
46
|
-
puts 'Dump latest schema'
|
47
|
-
dump = <%= @module_name %>::DB.dump_schema_migration(
|
48
|
-
same_db: env_true?('same_db')
|
49
|
-
)
|
50
|
-
File.write(File.join(db_dir, schema_filename), dump)
|
51
|
-
end
|
52
|
-
|
53
|
-
desc 'Run schema load'
|
54
|
-
task :load do |_t|
|
55
|
-
Sequel.extension :migration
|
56
|
-
puts 'Load latest schema'
|
57
|
-
Sequel::Migrator.run(<%= @module_name %>::DB, db_dir, target: 1)
|
58
|
-
end
|
59
|
-
end
|
60
|
-
end
|
61
|
-
|
62
|
-
def env_true?(key)
|
63
|
-
%(true yes 1 y).include?(ENV[key].to_s.downcase)
|
64
|
-
end
|
@@ -1,18 +0,0 @@
|
|
1
|
-
---
|
2
|
-
# user: www-data
|
3
|
-
# group: www-data
|
4
|
-
pid: tmp/pids/thin.pid
|
5
|
-
timeout: 30
|
6
|
-
wait: 30
|
7
|
-
log: log/thin.log
|
8
|
-
max_conns: 1024
|
9
|
-
require: []
|
10
|
-
environment: development # production
|
11
|
-
max_persistent_conns: 512
|
12
|
-
servers: 1
|
13
|
-
threaded: true
|
14
|
-
no-epoll: true
|
15
|
-
daemonize: true
|
16
|
-
socket: tmp/sockets/thin.sock
|
17
|
-
chdir: /path/to/the/project
|
18
|
-
# tag: a-name-to-show-up-in-ps aux
|