nyara 0.0.1.pre.9 → 0.1.pre.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (76) hide show
  1. checksums.yaml +4 -4
  2. data/bin/nyara +3 -3
  3. data/changes +1 -0
  4. data/ext/event.c +16 -22
  5. data/ext/hashes.c +222 -4
  6. data/ext/inc/rdtsc.h +56 -0
  7. data/ext/inc/status_codes.inc +64 -0
  8. data/ext/inc/version.inc +1 -1
  9. data/ext/nyara.c +12 -10
  10. data/ext/nyara.h +5 -5
  11. data/ext/request.c +18 -24
  12. data/ext/request_parse.c +1 -1
  13. data/ext/route.cc +2 -4
  14. data/ext/url_encoded.c +51 -193
  15. data/lib/nyara/command.rb +39 -12
  16. data/lib/nyara/config.rb +10 -10
  17. data/lib/nyara/controller.rb +60 -14
  18. data/lib/nyara/cookie.rb +1 -1
  19. data/lib/nyara/hashes/config_hash.rb +2 -24
  20. data/lib/nyara/nyara.rb +33 -19
  21. data/lib/nyara/part.rb +7 -3
  22. data/lib/nyara/reload.rb +85 -0
  23. data/lib/nyara/request.rb +1 -1
  24. data/lib/nyara/route.rb +55 -19
  25. data/lib/nyara/templates/Gemfile +10 -1
  26. data/lib/nyara/templates/Rakefile +6 -1
  27. data/lib/nyara/templates/app/controllers/application_controller.rb +3 -0
  28. data/lib/nyara/templates/app/controllers/welcome_controller.rb +5 -0
  29. data/lib/nyara/templates/app/views/layouts/application.erb +12 -0
  30. data/lib/nyara/templates/app/views/welcome/index.erb +1 -0
  31. data/lib/nyara/templates/config/application.rb +34 -0
  32. data/lib/nyara/templates/config/boot.rb +4 -0
  33. data/lib/nyara/templates/config/development.rb +5 -0
  34. data/lib/nyara/templates/config/production.rb +8 -0
  35. data/lib/nyara/templates/config/test.rb +2 -0
  36. data/lib/nyara/templates/public/css/app.css +1 -0
  37. data/lib/nyara/templates/public/js/app.js +1 -0
  38. data/lib/nyara/templates/spec/spec_helper.rb +9 -0
  39. data/lib/nyara/test.rb +10 -2
  40. data/lib/nyara/view.rb +116 -67
  41. data/nyara.gemspec +3 -1
  42. data/rakefile +1 -1
  43. data/readme.md +1 -1
  44. data/spec/command_spec.rb +28 -24
  45. data/spec/config_spec.rb +24 -1
  46. data/spec/dummy/app/controllers/dummy_controller.rb +2 -0
  47. data/spec/dummy/app/models/dmmy_model.rb +2 -0
  48. data/spec/evented_io_spec.rb +2 -1
  49. data/spec/ext_route_spec.rb +2 -2
  50. data/spec/flash_spec.rb +8 -0
  51. data/spec/hashes_spec.rb +127 -0
  52. data/spec/integration_spec.rb +15 -0
  53. data/spec/path_helper_spec.rb +17 -5
  54. data/spec/performance/escape.rb +15 -4
  55. data/spec/performance/layout_render.rb +15 -10
  56. data/spec/performance/parse_accept_value.rb +24 -8
  57. data/spec/performance/parse_param.rb +14 -8
  58. data/spec/performance/performance_helper.rb +8 -21
  59. data/spec/performance_spec.rb +5 -4
  60. data/spec/route_spec.rb +7 -2
  61. data/spec/url_encoded_spec.rb +18 -74
  62. data/spec/view_spec.rb +1 -3
  63. data/spec/views/_partial.slim +1 -0
  64. data/spec/views/_partial_with_yield.erb +1 -0
  65. metadata +73 -43
  66. data/example/factorial.rb +0 -19
  67. data/example/hello.rb +0 -5
  68. data/example/project.rb +0 -11
  69. data/example/stream.rb +0 -14
  70. data/lib/nyara/controllers/public_controller.rb +0 -14
  71. data/lib/nyara/templates/config/session.key +0 -1
  72. data/tools/bench-cookie.rb +0 -22
  73. data/tools/foo.rb +0 -9
  74. data/tools/hello.rb +0 -46
  75. data/tools/memcheck.rb +0 -33
  76. data/tools/s.rb +0 -11
@@ -13,7 +13,6 @@ class MyRenderable
13
13
  @title = "layout_render"
14
14
  @items = items
15
15
  end
16
- include Nyara::Renderable
17
16
 
18
17
  def send_chunk s
19
18
  @res ||= []
@@ -35,18 +34,24 @@ class MyRenderable
35
34
  end
36
35
  end
37
36
 
37
+ def bm_nyara items
38
+ Nyara::Ext.rdtsc_start
39
+ MyRenderable.new(items).nyara_render
40
+ Nyara::Ext.rdtsc
41
+ end
42
+
43
+ def bm_tilt items
44
+ Nyara::Ext.rdtsc_start
45
+ MyRenderable.new(items).tilt_render
46
+ Nyara::Ext.rdtsc
47
+ end
48
+
38
49
  # prepare data
39
50
  Item = Struct.new :name, :price
40
51
  items = 10.times.map do |i|
41
52
  Item.new "name#{i}", i
42
53
  end
54
+ bm_nyara items
55
+ bm_tilt items
43
56
 
44
- # precompile
45
- MyRenderable.new(items).nyara_render
46
- MyRenderable.new(items).tilt_render
47
-
48
- GC.disable
49
-
50
- nyara = bench(1000){ MyRenderable.new(items).nyara_render }
51
- tilt = bench(1000){ MyRenderable.new(items).tilt_render }
52
- dump nyara: nyara, tilt: tilt
57
+ dump nyara: bm_nyara(items), tilt: bm_tilt(items)
@@ -1,13 +1,29 @@
1
1
  require_relative "performance_helper"
2
- $0 = '' # don't let sinatra boot the server
3
- require "sinatra"
2
+ require "sinatra/base"
4
3
 
5
- v = 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'
6
- env = {'HTTP_ACCEPT' => env}
4
+ V = 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'
5
+ E = {'HTTP_ACCEPT' => V}
7
6
 
8
- GC.disable
7
+ def nyara
8
+ Nyara::Ext.rdtsc_start
9
+ Nyara::Ext.parse_accept_value V
10
+ Nyara::Ext.rdtsc
11
+ end
12
+
13
+ def sinatra_baseline
14
+ Nyara::Ext.rdtsc_start
15
+ Sinatra::Request.new(E.dup)
16
+ Nyara::Ext.rdtsc
17
+ end
18
+
19
+ def sinatra
20
+ Nyara::Ext.rdtsc_start
21
+ Sinatra::Request.new(E.dup).accept
22
+ Nyara::Ext.rdtsc
23
+ end
24
+
25
+ nyara
26
+ sinatra
27
+ sinatra_baseline
9
28
 
10
- nyara = bench(1000){ Nyara::Ext.parse_accept_value v }
11
- sinatra = bench_raw(1000){ Sinatra::Request.new(env.dup).accept }
12
- sinatra_baseline = bench_raw(1000){ Sinatra::Request.new(env.dup) }
13
29
  dump nyara: nyara, sinatra: (sinatra - sinatra_baseline)
@@ -1,18 +1,24 @@
1
1
  require_relative "performance_helper"
2
2
  require "cgi"
3
3
 
4
- param = "utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+haishin%2Frss%2Findex+%28#{CGI.escape 'マイコミジャーナル'}%29&utm_content=livedoor"
5
-
6
- def ruby_parse param
4
+ def ruby_parse
5
+ Nyara::Ext.rdtsc_start
7
6
  h = {}
8
- param.split('&').each do |s|
7
+ $param.split('&').each do |s|
9
8
  k, v = s.split '='
10
9
  h[CGI.unescape(k)] = CGI.unescape(v)
11
10
  end
11
+ Nyara::Ext.rdtsc
12
+ end
13
+
14
+ def nyara_parse
15
+ Nyara::Ext.rdtsc_start
16
+ Nyara::ParamHash.parse_param({}, $param)
17
+ Nyara::Ext.rdtsc
12
18
  end
13
19
 
14
- GC.disable
20
+ $param = "utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+haishin%2Frss%2Findex+%28#{CGI.escape 'マイコミジャーナル'}%29&utm_content=livedoor"
21
+ ruby_parse
22
+ nyara_parse
15
23
 
16
- nyara = bench(1000){ Nyara::Ext.parse_param({}, param) }
17
- ruby = bench(1000){ ruby_parse param }
18
- dump nyara: nyara, ruby: ruby
24
+ dump nyara: nyara_parse, ruby: ruby_parse
@@ -1,25 +1,12 @@
1
1
  require_relative "../../lib/nyara/nyara"
2
2
 
3
- # baseline is the raw loop
4
- def bench n
5
- t = Time.now
6
- n.times{ yield }
7
- cost = Time.now - t
8
-
9
- t = Time.now
10
- n.times{}
11
- baseline = Time.now - t
12
-
13
- cost - baseline
14
- end
15
-
16
- # custom baseline
17
- def bench_raw n
18
- t = Time.now
19
- n.times{ yield }
20
- Time.now - t
21
- end
22
-
23
3
  def dump data
24
- print Marshal.dump data
4
+ in_spec = ENV['NYARA_FORKED'] == 'spec'
5
+ GC.start
6
+ GC.disable
7
+ if in_spec
8
+ print Marshal.dump data
9
+ else
10
+ p data
11
+ end
25
12
  end
@@ -9,6 +9,7 @@ describe 'performance' do
9
9
  def bm name
10
10
  bm = __dir__ + '/performance/' + name + '.rb'
11
11
  assert File.exist?(bm), "file not found: #{bm}"
12
+ ENV['NYARA_FORKED'] = 'spec'
12
13
  res = IO.popen ['ruby', bm] do |io|
13
14
  data = io.read
14
15
  Marshal.load data
@@ -19,17 +20,17 @@ describe 'performance' do
19
20
 
20
21
  it "[parse_accept_value] faster than sinatra" do
21
22
  res = bm 'parse_accept_value'
22
- assert res[:nyara] * 1.5 < res[:sinatra], res.inspect
23
+ assert res[:nyara] * 10 < res[:sinatra], res.inspect
23
24
  end
24
25
 
25
26
  it "[parse_param] faster than parse in pure ruby" do
26
27
  res = bm 'parse_param'
27
- assert res[:nyara] * 8 < res[:ruby], res.inspect
28
+ assert res[:nyara] * 7 < res[:ruby], res.inspect
28
29
  end
29
30
 
30
- it "[layout_render] faster than using tilt" do
31
+ it "[layout_render] nearly as fast as using tilt..." do
31
32
  res = bm 'layout_render'
32
- assert res[:nyara] * 1.1 < res[:tilt], res.inspect
33
+ assert res[:nyara] * 0.9 < res[:tilt], res.inspect
33
34
  end
34
35
 
35
36
  it "[escape] faster than CGI.escape" do
data/spec/route_spec.rb CHANGED
@@ -22,7 +22,7 @@ module Nyara
22
22
  @r.path = '/a/%d/b'
23
23
  @r.compile :controller_stub, '/scope'
24
24
  assert_equal "/scope/a/", @r.prefix
25
- assert_equal "^(-?[0-9]+)/b$", @r.suffix
25
+ assert_equal "^(-?\\d+)/b$", @r.suffix
26
26
  assert_equal [:to_i], @r.conv
27
27
  end
28
28
 
@@ -52,7 +52,7 @@ module Nyara
52
52
  end
53
53
 
54
54
  it "#compile_re with utf-8 chars" do
55
- re, conv = @r.compile_re '/目录/%da/也可以'
55
+ re, conv = @r.compile_re '/目录/%.3da/也可以'
56
56
  assert_equal [:to_i], conv
57
57
  s = "/目录/12a/也可以"
58
58
  assert_equal [s, '12'], s.match(Regexp.new re).to_a
@@ -125,5 +125,10 @@ module Nyara
125
125
  assert_equal '.b:C', s
126
126
  end
127
127
  end
128
+
129
+ it ".print_routes" do
130
+ out = stdout { Route.print_routes }
131
+ assert_include(out, "all routes:")
132
+ end
128
133
  end
129
134
  end
@@ -14,59 +14,29 @@ module Nyara
14
14
  end
15
15
  end
16
16
 
17
- # note: this method is only used in C code
18
- context "Ext.parse_url_encoded_seg" do
19
- [false, true].each do |nested|
20
- context (nested ? 'nested mode' : 'flat mode') do
21
- it "normal parse" do
22
- assert_equal({'a' => 'b'}, parse('a=b', nested))
23
- end
24
-
25
- it "param seg end with '='" do
26
- assert_equal({'a' => ''}, parse('a=', nested))
27
- end
28
-
29
- it "param seg begin with '='" do
30
- assert_equal({'' => 'b'}, parse('=b', nested))
31
- end
32
-
33
- it "param seg without value" do
34
- assert_equal({'a' => ''}, parse('a', nested))
35
- end
36
-
37
- it "raises error" do
38
- assert_raise ArgumentError do
39
- parse 'a=&b'
40
- end
41
- end
42
- end
17
+ context "Ext.decode_uri_kv" do
18
+ it "empty k" do
19
+ k, v = Ext.decode_uri_kv "=b"
20
+ assert_equal '', k
21
+ assert_equal 'b', v
43
22
  end
44
23
 
45
- context "nested key" do
46
- it "parses nested key" do
47
- res = {"a"=>{"b"=>[[{"c"=>"1"}]]}}
48
- assert_equal res, Ext.parse_url_encoded_seg({}, "a[b][][][c]=1", true)
49
- end
50
-
51
- it 'allows "[]" as input' do
52
- res = {""=>[""]}
53
- assert_equal res, Ext.parse_url_encoded_seg({}, "[]", true)
54
- end
55
-
56
- it 'ignores empty input' do
57
- res = {}
58
- assert_equal res, Ext.parse_url_encoded_seg({}, "", true)
59
- end
24
+ it "empty v" do
25
+ k, v = Ext.decode_uri_kv "a="
26
+ assert_equal 'a', k
27
+ assert_equal '', v
28
+ end
60
29
 
61
- it "content hash is ParamHash" do
62
- h = ParamHash.new
63
- assert_equal ParamHash, Ext.parse_url_encoded_seg(h, "a[b]=c", true)[:a].class
64
- end
30
+ it "without '='" do
31
+ k, v = Ext.decode_uri_kv "a"
32
+ assert_equal 'a', k
33
+ assert_equal '', v
65
34
  end
66
35
 
67
- def parse str, nested
68
- h = {}
69
- Ext.parse_url_encoded_seg h, str, nested
36
+ it "raises for bad kv" do
37
+ assert_raise ArgumentError do
38
+ Ext.decode_uri_kv 'a=&b'
39
+ end
70
40
  end
71
41
  end
72
42
 
@@ -139,31 +109,5 @@ module Nyara
139
109
  Ext.parse_path @output, input
140
110
  end
141
111
  end
142
-
143
- context "Ext.parse_cookie" do
144
- it "parses complex cookie" do
145
- history = CGI.escape '历史'
146
- cookie = "pgv_pvi; pgv_si= ; pgv_pvi=som; sid=1d6c75f0 ; PLHistory=<#{history}>;"
147
- h = Ext.parse_cookie ParamHash.new, cookie
148
- assert_equal '1d6c75f0', h['sid']
149
- assert_equal '', h['pgv_si']
150
- assert_equal '', h['pgv_pvi'] # left orverrides right
151
- assert_equal '<历史>', h['PLHistory']
152
- end
153
-
154
- it "parses empty cookie" do
155
- cookie = ''
156
- h = Ext.parse_cookie ParamHash.new, cookie
157
- assert_empty h
158
- end
159
- end
160
-
161
- context "Ext.parse_param" do
162
- it "parses param with non-utf-8 chars" do
163
- bad_s = CGI.escape "\xE2"
164
- h = Ext.parse_param ParamHash.new, bad_s
165
- assert_equal "", h["\xE2"]
166
- end
167
- end
168
112
  end
169
113
  end
data/spec/view_spec.rb CHANGED
@@ -1,8 +1,6 @@
1
1
  require_relative "spec_helper"
2
2
 
3
3
  class RenderableMock
4
- include Nyara::Renderable
5
-
6
4
  def initialize
7
5
  @result = ''
8
6
  end
@@ -14,7 +12,7 @@ class RenderableMock
14
12
  end
15
13
 
16
14
  module Nyara
17
- describe [View, Renderable] do
15
+ describe View do
18
16
  before :all do
19
17
  Config['views'] = __dir__ + '/views'
20
18
  View.init
@@ -0,0 +1 @@
1
+ | This is a partial
@@ -0,0 +1 @@
1
+ yie<% Fiber.yield %>ld
metadata CHANGED
@@ -1,15 +1,43 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nyara
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1.pre.9
4
+ version: 0.1.pre.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Zete Lui
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-07-13 00:00:00.000000000 Z
12
- dependencies: []
11
+ date: 2013-07-17 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: tilt
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '>='
18
+ - !ruby/object:Gem::Version
19
+ version: '1.3'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '>='
25
+ - !ruby/object:Gem::Version
26
+ version: '1.3'
27
+ - !ruby/object:Gem::Dependency
28
+ name: listen
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '>='
32
+ - !ruby/object:Gem::Version
33
+ version: 1.1.3
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: 1.1.3
13
41
  description: Fast and fuzzy ruby web framework + server
14
42
  email: nobody@example.com
15
43
  executables:
@@ -23,24 +51,24 @@ files:
23
51
  - readme.md
24
52
  - copying
25
53
  - changes
26
- - example/factorial.rb
27
- - example/hello.rb
28
- - example/project.rb
29
- - example/stream.rb
30
54
  - ext/extconf.rb
31
- - lib/nyara/command.rb
55
+ - lib/nyara.rb
32
56
  - lib/nyara/config.rb
57
+ - lib/nyara/command.rb
33
58
  - lib/nyara/controller.rb
34
- - lib/nyara/controllers/public_controller.rb
35
59
  - lib/nyara/cookie.rb
36
60
  - lib/nyara/cpu_counter.rb
37
61
  - lib/nyara/flash.rb
62
+ - lib/nyara/mime_types.rb
63
+ - lib/nyara/nyara.rb
38
64
  - lib/nyara/hashes/config_hash.rb
39
65
  - lib/nyara/hashes/header_hash.rb
40
66
  - lib/nyara/hashes/param_hash.rb
41
- - lib/nyara/mime_types.rb
42
- - lib/nyara/nyara.rb
67
+ - lib/nyara/request.rb
68
+ - lib/nyara/route.rb
43
69
  - lib/nyara/part.rb
70
+ - lib/nyara/session.rb
71
+ - lib/nyara/view.rb
44
72
  - lib/nyara/patches/array.rb
45
73
  - lib/nyara/patches/blank.rb
46
74
  - lib/nyara/patches/json.rb
@@ -48,59 +76,56 @@ files:
48
76
  - lib/nyara/patches/string.rb
49
77
  - lib/nyara/patches/tcp_socket.rb
50
78
  - lib/nyara/patches/to_query.rb
51
- - lib/nyara/request.rb
52
- - lib/nyara/route.rb
53
- - lib/nyara/session.rb
79
+ - lib/nyara/reload.rb
80
+ - lib/nyara/templates/app/controllers/application_controller.rb
81
+ - lib/nyara/templates/app/controllers/welcome_controller.rb
82
+ - lib/nyara/templates/config/application.rb
54
83
  - lib/nyara/templates/config/boot.rb
55
84
  - lib/nyara/templates/config/development.rb
56
85
  - lib/nyara/templates/config/production.rb
57
86
  - lib/nyara/templates/config/test.rb
58
87
  - lib/nyara/templates/spec/spec_helper.rb
59
88
  - lib/nyara/test.rb
60
- - lib/nyara/view.rb
61
89
  - lib/nyara/view_handlers/erb.rb
62
90
  - lib/nyara/view_handlers/erubis.rb
63
91
  - lib/nyara/view_handlers/haml.rb
64
92
  - lib/nyara/view_handlers/slim.rb
65
- - lib/nyara.rb
93
+ - spec/ext_mime_match_spec.rb
94
+ - spec/ext_parse_accept_value_spec.rb
66
95
  - spec/apps/connect.rb
96
+ - spec/dummy/app/controllers/dummy_controller.rb
97
+ - spec/dummy/app/models/dmmy_model.rb
98
+ - spec/ext_route_spec.rb
99
+ - spec/hashes_spec.rb
100
+ - spec/path_helper_spec.rb
101
+ - spec/request_delegate_spec.rb
102
+ - spec/request_spec.rb
67
103
  - spec/command_spec.rb
104
+ - spec/route_spec.rb
105
+ - spec/session_spec.rb
106
+ - spec/spec_helper.rb
107
+ - spec/view_spec.rb
68
108
  - spec/config_spec.rb
69
109
  - spec/controller_spec.rb
70
110
  - spec/cpu_counter_spec.rb
71
111
  - spec/evented_io_spec.rb
72
- - spec/ext_mime_match_spec.rb
73
- - spec/ext_parse_accept_value_spec.rb
74
- - spec/ext_route_spec.rb
75
112
  - spec/flash_spec.rb
76
- - spec/hashes_spec.rb
77
113
  - spec/integration_spec.rb
78
114
  - spec/mini_support_spec.rb
79
115
  - spec/multipart_spec.rb
80
- - spec/path_helper_spec.rb
81
116
  - spec/performance/escape.rb
82
117
  - spec/performance/layout_render.rb
83
118
  - spec/performance/parse_accept_value.rb
84
119
  - spec/performance/parse_param.rb
85
120
  - spec/performance/performance_helper.rb
86
121
  - spec/performance_spec.rb
87
- - spec/request_delegate_spec.rb
88
- - spec/request_spec.rb
89
- - spec/route_spec.rb
90
- - spec/session_spec.rb
91
- - spec/spec_helper.rb
92
122
  - spec/url_encoded_spec.rb
93
- - spec/view_spec.rb
94
- - tools/bench-cookie.rb
95
- - tools/foo.rb
96
- - tools/hello.rb
97
- - tools/memcheck.rb
98
- - tools/s.rb
99
123
  - ext/http-parser/http_parser.h
100
124
  - ext/inc/epoll.h
101
125
  - ext/inc/kqueue.h
102
- - ext/inc/status_codes.h
103
126
  - ext/inc/str_intern.h
127
+ - ext/inc/rdtsc.h
128
+ - ext/inc/status_codes.h
104
129
  - ext/multipart-parser-c/multipart_parser.h
105
130
  - ext/nyara.h
106
131
  - ext/request.h
@@ -117,31 +142,37 @@ files:
117
142
  - ext/multipart_parser.c
118
143
  - ext/nyara.c
119
144
  - ext/request.c
145
+ - ext/url_encoded.c
120
146
  - ext/request_parse.c
121
147
  - ext/test_response.c
122
- - ext/url_encoded.c
123
148
  - ext/route.cc
149
+ - ext/inc/status_codes.inc
124
150
  - ext/inc/version.inc
125
- - spec/performance/layout.slim
126
- - spec/performance/page.slim
127
- - spec/public/empty file.html
128
- - spec/public/index.html
129
- - spec/raw_requests/multipart
130
151
  - spec/views/edit.haml
131
152
  - spec/views/edit.slim
132
153
  - spec/views/index.liquid
133
154
  - spec/views/invalid_layout.liquid
134
155
  - spec/views/layout.erb
135
156
  - spec/views/show.slim
157
+ - spec/views/_partial.slim
158
+ - spec/views/_partial_with_yield.erb
159
+ - spec/performance/layout.slim
160
+ - spec/performance/page.slim
161
+ - spec/public/empty file.html
162
+ - spec/public/index.html
163
+ - spec/raw_requests/multipart
136
164
  - ext/http-parser/AUTHORS
137
165
  - ext/http-parser/CONTRIBUTIONS
138
166
  - ext/http-parser/LICENSE-MIT
139
167
  - ext/multipart-parser-c/README.md
140
- - lib/nyara/templates/config/database.yml
141
- - lib/nyara/templates/config/session.key
142
168
  - lib/nyara/templates/Gemfile
143
- - lib/nyara/templates/public/robot.txt
144
169
  - lib/nyara/templates/Rakefile
170
+ - lib/nyara/templates/app/views/layouts/application.erb
171
+ - lib/nyara/templates/app/views/welcome/index.erb
172
+ - lib/nyara/templates/config/database.yml
173
+ - lib/nyara/templates/public/css/app.css
174
+ - lib/nyara/templates/public/js/app.js
175
+ - lib/nyara/templates/public/robot.txt
145
176
  - bin/nyara
146
177
  homepage: https://github.com/luikore/nyara
147
178
  licenses:
@@ -183,4 +214,3 @@ signing_key:
183
214
  specification_version: 4
184
215
  summary: Fast and fuzzy ruby web framework + server
185
216
  test_files: []
186
- has_rdoc: