lizarb 1.0.1 → 1.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (124) hide show
  1. checksums.yaml +4 -4
  2. data/.ruby-version +1 -1
  3. data/.tool-versions +1 -0
  4. data/Gemfile +1 -0
  5. data/Gemfile.lock +7 -4
  6. data/README.md +23 -64
  7. data/README_SYSTEMS.md +80 -0
  8. data/Rakefile +3 -1
  9. data/app/dev/benches/loops_bench.rb +35 -0
  10. data/app/dev/commands/calculator_command.rb +69 -0
  11. data/app/dev/commands/calculator_command_test.rb +58 -0
  12. data/app/dev/commands/circle_command.rb +70 -0
  13. data/app/dev/commands/circle_command_test.rb +76 -0
  14. data/app/dev/commands/narrative_method_command.rb +60 -0
  15. data/app/dev/commands/narrative_method_command_test.rb +36 -0
  16. data/app/dev/commands/quadratic_command.rb +66 -0
  17. data/app/dev/commands/quadratic_command_test.rb +47 -0
  18. data/app/dev/generators/bench_generator/bench.rb.erb +24 -0
  19. data/app/dev/generators/bench_generator/bench_test.rb.erb +12 -0
  20. data/app/dev/generators/bench_generator.rb +2 -51
  21. data/app/dev/generators/command_generator/command.rb.erb +26 -0
  22. data/app/dev/generators/command_generator/command_test.rb.erb +12 -0
  23. data/app/dev/generators/command_generator.rb +2 -35
  24. data/app/dev/generators/record_generator.rb +46 -0
  25. data/app/dev/generators/{model_generator_test.rb → record_generator_test.rb} +2 -2
  26. data/app/net/{models/app_model.rb → records/app_record.rb} +2 -1
  27. data/app/net/{models/post_model_test.rb → records/app_record_test.rb} +2 -2
  28. data/app/net/records/post_record.rb +4 -0
  29. data/app/net/{models/app_model_test.rb → records/post_record_test.rb} +2 -2
  30. data/app/net/records/user_record.rb +4 -0
  31. data/app/net/{models/user_model_test.rb → records/user_record_test.rb} +2 -2
  32. data/app/web/requests/api_request.rb +8 -7
  33. data/app/web/requests/assets_request.rb +12 -13
  34. data/app/web/requests/root_request.rb +6 -7
  35. data/app/web/requests/root_request_test.rb +1 -1
  36. data/app/web_box.rb +8 -0
  37. data/app_new/Procfile +1 -1
  38. data/exe/lrb +3 -0
  39. data/lib/app.rb +18 -14
  40. data/lib/dev_system/dev/controllers/bench/not_found_bench.rb +29 -0
  41. data/lib/dev_system/dev/controllers/bench/not_found_bench_test.rb +14 -0
  42. data/lib/dev_system/dev/controllers/command/bench_command.rb +11 -1
  43. data/lib/dev_system/dev/controllers/command/generate_command.rb +14 -2
  44. data/lib/dev_system/dev/controllers/command/not_found_command.rb +29 -0
  45. data/lib/dev_system/dev/controllers/command/{dev_command_test.rb → not_found_command_test.rb} +2 -2
  46. data/lib/dev_system/dev/controllers/command/{dev_command.rb → terminal_command.rb} +1 -1
  47. data/lib/dev_system/dev/controllers/command/terminal_command_test.rb +14 -0
  48. data/lib/dev_system/dev/controllers/command/test_command.rb +6 -2
  49. data/lib/dev_system/dev/controllers/generator_dsl_main_part.rb +1 -1
  50. data/lib/dev_system/dev/controllers/generators/app_generator.rb +30 -5
  51. data/lib/dev_system/dev/controllers/generators/generator_generator/generator.rb.erb +18 -0
  52. data/lib/dev_system/dev/controllers/generators/generator_generator/generator_test.rb.erb +12 -0
  53. data/lib/dev_system/dev/controllers/generators/generator_generator/template.rb.erb +9 -0
  54. data/lib/dev_system/dev/controllers/generators/generator_generator/template_test.rb.erb +12 -0
  55. data/lib/dev_system/dev/controllers/generators/generator_generator.rb +30 -0
  56. data/lib/dev_system/dev/controllers/generators/generator_generator_test.rb +12 -0
  57. data/lib/dev_system/dev/controllers/generators/not_found_generator.rb +29 -0
  58. data/lib/dev_system/dev/controllers/generators/not_found_generator_test.rb +14 -0
  59. data/lib/dev_system/dev/controllers/shell/bin_shell.rb +22 -0
  60. data/lib/dev_system/dev/controllers/shell/bin_shell_test.rb +87 -0
  61. data/lib/dev_system/dev/controllers/shell/dir_shell.rb +27 -0
  62. data/lib/dev_system/dev/controllers/shell/dir_shell_test.rb +73 -0
  63. data/lib/dev_system/dev/controllers/shell/file_shell.rb +56 -26
  64. data/lib/dev_system/dev/controllers/shell/file_shell_test.rb +143 -7
  65. data/lib/dev_system/dev/controllers/shell/text_shell.rb +23 -0
  66. data/lib/dev_system/dev/controllers/shell/text_shell_test.rb +84 -0
  67. data/lib/dev_system/dev/controllers/shell.rb +26 -14
  68. data/lib/dev_system/dev/controllers/shell_test.rb +42 -9
  69. data/lib/dev_system/dev/panels/command_panel.rb +21 -1
  70. data/lib/dev_system/dev/panels/log_panel.rb +1 -1
  71. data/lib/lerb.rb +106 -0
  72. data/lib/liza/base/controller.rb +2 -0
  73. data/lib/liza/base/panel.rb +6 -5
  74. data/lib/liza/base_parts/controller_renderer_part.rb +140 -0
  75. data/lib/liza/base_parts/controller_renderer_part_test.rb +16 -0
  76. data/lib/liza/meta/part_extension.rb +6 -1
  77. data/lib/liza/ruby_test.rb +9 -0
  78. data/lib/liza/ruby_tests/module_test.rb +21 -0
  79. data/lib/liza/ruby_tests/string_test.rb +59 -0
  80. data/lib/liza/test/test.rb +3 -1
  81. data/lib/liza/test/test_test.rb +108 -15
  82. data/lib/liza/test_parts/test_assertions_advanced_part.rb +127 -0
  83. data/lib/liza/test_parts/test_assertions_part.rb +7 -6
  84. data/lib/liza/test_parts/test_dsl_part.rb +37 -89
  85. data/lib/liza/test_parts/test_log_part.rb +124 -0
  86. data/lib/liza/test_parts/test_tree_part.rb +139 -0
  87. data/lib/liza/unit.rb +2 -0
  88. data/lib/liza/unit_parts/unit_procedure_part.rb +17 -0
  89. data/lib/liza/unit_parts/unit_procedure_part_test.rb +65 -0
  90. data/lib/liza.rb +5 -0
  91. data/lib/lizarb/ruby/module.rb +17 -0
  92. data/lib/lizarb/ruby/string.rb +10 -2
  93. data/lib/lizarb/version.rb +1 -1
  94. data/lib/lizarb.rb +24 -2
  95. data/lib/net_system/net/controllers/record.rb +31 -0
  96. data/lib/net_system/net/controllers/{model_test.rb → record_test.rb} +2 -2
  97. data/lib/web_system/dev/rack_command.rb +26 -0
  98. data/lib/web_system/dev/request_command.rb +143 -0
  99. data/lib/web_system/dev/web_command.rb +3 -34
  100. data/lib/web_system/web/controllers/rack.rb +8 -0
  101. data/lib/web_system/web/controllers/rack_test.rb +18 -0
  102. data/lib/web_system/web/controllers/request/client_error_request.rb +0 -1
  103. data/lib/web_system/web/controllers/request/not_found_request.rb +0 -1
  104. data/lib/web_system/web/controllers/request/server_error_request.rb +0 -1
  105. data/lib/web_system/web/panels/rack_panel.rb +44 -0
  106. data/lib/web_system/web/panels/rack_panel_test.rb +14 -0
  107. data/lib/web_system/web/panels/request_panel.rb +51 -32
  108. data/lib/web_system/web/panels/request_panel_test.rb +28 -9
  109. data/lib/web_system/web/web_box.rb +12 -0
  110. data/lizarb.gemspec +2 -2
  111. metadata +68 -25
  112. data/app/dev/commands/example_command.rb +0 -57
  113. data/app/dev/commands/example_command_test.rb +0 -43
  114. data/app/dev/commands/macro_child_command.rb +0 -32
  115. data/app/dev/commands/macro_child_command_test.rb +0 -7
  116. data/app/dev/commands/macro_parent_command.rb +0 -70
  117. data/app/dev/commands/macro_parent_command_test.rb +0 -7
  118. data/app/dev/commands/my_command.rb +0 -7
  119. data/app/dev/commands/my_command_test.rb +0 -7
  120. data/app/dev/generators/model_generator.rb +0 -46
  121. data/app/net/models/post_model.rb +0 -4
  122. data/app/net/models/user_model.rb +0 -4
  123. data/lib/liza/test_parts/test_context_part.rb +0 -81
  124. data/lib/net_system/net/controllers/model.rb +0 -31
@@ -0,0 +1,26 @@
1
+ class WebSystem
2
+ class RackCommand < Liza::Command
3
+
4
+ def self.call args
5
+ log "args #{args}"
6
+
7
+ strategy = nil
8
+ host = nil
9
+ port = nil
10
+
11
+ if args.any? && !args[0].include?("=")
12
+ strategy = args.shift
13
+ end
14
+
15
+ args.each do |arg|
16
+ host = arg.split("=")[1] if arg.start_with? "h="
17
+ port = arg.split("=")[1] if arg.start_with? "p="
18
+ end
19
+
20
+ log({strategy:, host:, port:})
21
+
22
+ Liza.const(:web_box).rack.call strategy, host, port
23
+ end
24
+
25
+ end
26
+ end
@@ -0,0 +1,143 @@
1
+ class WebSystem::RequestCommand < Liza::Command
2
+
3
+ VALID_ACTIONS = %w[find get post]
4
+
5
+ def self.call(args)
6
+ log "Called #{self}.#{__method__} with args #{args}"
7
+ new.call(args)
8
+ end
9
+
10
+ # instance methods
11
+
12
+ def call(args)
13
+ log "Called #{self}.#{__method__} with args #{args}"
14
+
15
+ @command = args.shift
16
+ @args = args
17
+
18
+ return help unless VALID_ACTIONS.include? @command
19
+ perform
20
+ rescue StandardError => error
21
+ @error = error
22
+ handle
23
+ end
24
+
25
+ def perform
26
+ log "Called #{self}.#{__method__}"
27
+
28
+ case @command
29
+ when "find"
30
+ find
31
+ when "get"
32
+ get_request
33
+ when "post"
34
+ post_request
35
+ end
36
+ end
37
+
38
+ def handle
39
+ log "Called #{self}.#{__method__}"
40
+ log render "error.txt"
41
+ end
42
+
43
+ def help
44
+ log "Called #{self}.#{__method__}"
45
+ log render "help.txt"
46
+ end
47
+
48
+ # actions
49
+
50
+ def find
51
+ log "Called #{self}.#{__method__}"
52
+ path = @args.first
53
+
54
+ @env = {}
55
+ @env["REQUEST_PATH"] = path
56
+
57
+ request_panel.find @env
58
+
59
+ @request_class = @env["LIZA_REQUEST_CLASS"]
60
+
61
+ puts render "find.txt"
62
+ end
63
+
64
+ def get_request
65
+ log "Called #{self}.#{__method__}"
66
+ path = @args.first
67
+
68
+ @env = {}
69
+ @env["REQUEST_METHOD"] = "GET"
70
+ @env["REQUEST_PATH"] = path
71
+
72
+ @status, @headers, @body = request_panel.call @env
73
+ log "STATUS #{@status} with #{@headers.count} headers and a #{@body.first.size} byte body"
74
+ puts render "response.http"
75
+ end
76
+
77
+ def post_request
78
+ log "Called #{self}.#{__method__}"
79
+ path = @args.first
80
+
81
+ @env = {}
82
+ @env["REQUEST_METHOD"] = "POST"
83
+ @env["REQUEST_PATH"] = path
84
+
85
+ @status, @headers, @body = request_panel.call @env
86
+ log "STATUS #{@status} with #{@headers.count} headers and a #{@body.first.size} byte body"
87
+ puts render "response.http"
88
+ end
89
+
90
+ # helpers
91
+
92
+ def request_panel
93
+ Liza.const(:web_box).requests
94
+ end
95
+ end
96
+
97
+ __END__
98
+
99
+ # success.txt.erb
100
+
101
+ RESULT:
102
+
103
+ class <%= @result.class %>
104
+ value <%= @result %>
105
+
106
+ # error.txt.erb
107
+
108
+ ERROR:
109
+
110
+ class <%= @error.class %>
111
+ message <%= @error.message %>
112
+ backtrace <%= @error.backtrace.select { |s| @stop = true if s.include?("/exe/lizarb:"); !defined? @stop }.join "\n " %>
113
+
114
+ # help.txt.erb
115
+
116
+ USAGE:
117
+
118
+ liza request find /path/to/action.format
119
+ liza request get /path/to/action.format
120
+ liza request post /path/to/action.format
121
+
122
+ # find.txt.erb
123
+
124
+ ENV:
125
+ <% @env.each do |k, v| %>
126
+ env["<%= k %>"] = <%= v.inspect -%>
127
+ <% end %>
128
+
129
+ REQUEST CLASS:
130
+
131
+ # <%= @request_class.source_location.join ":" %>
132
+ class <%= @request_class %> < <%= @request_class.superclass %>
133
+ # ...
134
+ end
135
+
136
+ # response.http.erb
137
+
138
+ <%= @status %>
139
+ <% @headers.each do |k, v| -%>
140
+ <%= k %>: <%= v %>
141
+ <% end -%>
142
+
143
+ <%= @body.first %>
@@ -1,41 +1,10 @@
1
1
  class WebSystem
2
2
  class WebCommand < Liza::Command
3
3
 
4
- set :files, App.root.join("web_files")
5
- set :host, "localhost"
6
- set :port, 3000
7
-
8
4
  def self.call args
9
- log :higher, "Called #{self} with args #{args}"
10
-
11
- host = get :host
12
- port = get :port
13
-
14
- args.each do |arg|
15
- host = arg.split("=")[1] if arg.start_with? "h="
16
- port = arg.split("=")[1] if arg.start_with? "p="
17
- end
18
-
19
- if App.mode == :code
20
- ENV["RACK_ENV"] = "development"
21
- rack_app = method :_call
22
- else
23
- ENV["RACK_ENV"] = "production"
24
- rack_app = ::WebBox.requests
25
- end
26
-
27
- rack_files = Rack::Files.new get(:files)
28
- rack_app = Rack::Cascade.new [rack_files, rack_app]
29
-
30
- require "rack/handler/puma"
31
- Rack::Handler::Puma.run rack_app, Host: host, Port: port
32
- end
33
-
34
- def self._call app
35
- App.reload do
36
- log "reloading"
37
- return ::WebBox.requests.call app
38
- end
5
+ log "args #{args}"
6
+ log "DEPRECATED: please use `lizarb rack` instead"
7
+ RackCommand.call args
39
8
  end
40
9
 
41
10
  end
@@ -0,0 +1,8 @@
1
+ class WebSystem
2
+ class Rack < Liza::Controller
3
+
4
+ # def self.call rack_app, host, port
5
+ # end
6
+
7
+ end
8
+ end
@@ -0,0 +1,18 @@
1
+ class WebSystem
2
+ class RackTest < Liza::ControllerTest
3
+
4
+ test :subject_class do
5
+ assert subject_class == WebSystem::Rack
6
+ end
7
+
8
+ test :settings do
9
+ assert subject_class.log_level == :normal
10
+ assert subject_class.log_color == :blue
11
+ end
12
+
13
+ # test :call do
14
+ # todo "write this"
15
+ # end
16
+
17
+ end
18
+ end
@@ -10,7 +10,6 @@ class WebSystem
10
10
 
11
11
  body = "Client Error #{status} - #{env["LIZA_PATH"]}"
12
12
 
13
- log status
14
13
  [status, headers, [body]]
15
14
  end
16
15
 
@@ -10,7 +10,6 @@ class WebSystem
10
10
 
11
11
  body = "Client Error #{status} - #{env["LIZA_PATH"]}"
12
12
 
13
- log status
14
13
  [status, headers, [body]]
15
14
  end
16
15
 
@@ -12,7 +12,6 @@ class WebSystem
12
12
 
13
13
  body = "Server Error #{status} - #{e.class} - #{e.message}"
14
14
 
15
- log status
16
15
  [status, headers, [body]]
17
16
  end
18
17
 
@@ -0,0 +1,44 @@
1
+ class WebSystem
2
+ class RackPanel < Liza::Panel
3
+
4
+ def call strategy, host, port
5
+ puts
6
+ log({strategy:, host:, port:})
7
+
8
+ strategy ||= get :strategy
9
+ host ||= get :host
10
+ port ||= 3000
11
+ files ||= get :files
12
+
13
+ log({strategy:, host:, port:})
14
+
15
+ x = App.mode == :code ? "development" : "production"
16
+ ENV["RACK_ENV"] = x
17
+ rack_app = send "get_rack_app_#{x}"
18
+
19
+ rack_files = Object::Rack::Files.new files
20
+ rack_app = Object::Rack::Cascade.new [rack_files, rack_app]
21
+
22
+ # TODO: PumaRack
23
+ # handler = Liza.const(:"#{strategy}_rack")
24
+
25
+ require "rack/handler/puma"
26
+ handler = Object::Rack::Handler::Puma
27
+ handler.run rack_app, Host: host, Port: port
28
+ end
29
+
30
+ def get_rack_app_production()= Liza.const(:web_box).requests
31
+
32
+ def get_rack_app_development
33
+ Proc.new do |env|
34
+ ret = nil
35
+ App.reload do
36
+ log "reloading"
37
+ ret = get_rack_app_production.call env
38
+ end
39
+ ret
40
+ end
41
+ end
42
+
43
+ end
44
+ end
@@ -0,0 +1,14 @@
1
+ class WebSystem
2
+ class RackPanelTest < Liza::PanelTest
3
+
4
+ test :settings do
5
+ assert subject_class.log_level == :normal
6
+ assert subject_class.log_color == :blue
7
+ end
8
+
9
+ # test :call do
10
+ # todo "write this"
11
+ # end
12
+
13
+ end
14
+ end
@@ -2,53 +2,72 @@ class WebSystem
2
2
  class RequestPanel < Liza::Panel
3
3
 
4
4
  def call env
5
- puts
6
-
7
- # 1. LOG GET /
8
-
9
- log "#{env["REQUEST_METHOD"]} #{env["REQUEST_PATH"]}"
5
+ t = Time.now
6
+ request_klass = find env
7
+ ret = request_klass.call env
8
+ _html_beautify env, ret
9
+ ret
10
+ rescue => e
11
+ request_klass = ServerErrorRequest
12
+ env["LIZA_ERROR"] = e
10
13
 
11
- # 2. PREPARE env
14
+ ret = request_klass.call env
15
+ ensure
16
+ log "#{ret[0]} with #{ret[2].first.size} bytes in #{t.diff}s"
17
+ puts
18
+ ret
19
+ end
12
20
 
13
- path = env["REQUEST_PATH"]
21
+ #
14
22
 
15
- path, _sep, format = path.lpartition "."
16
- format = "html" if format.empty?
23
+ def find env
24
+ _prepare env
17
25
 
18
- segments = Array path.split("/")[1..-1]
26
+ path = env["LIZA_PATH"]
19
27
 
20
- case segments.count
21
- when 0
22
- request, action = "root", "root"
23
- when 1
24
- request, action = "root", segments[0]
25
- else
26
- request, action = segments[0..1]
27
- end
28
+ segments = env["LIZA_SEGMENTS"].dup
29
+ request = segments.shift || "root"
30
+ action = segments.shift || "index"
28
31
 
29
- env["LIZA_PATH"] = path
30
32
  env["LIZA_REQUEST"] = request
31
33
  env["LIZA_ACTION"] = action
32
- env["LIZA_FORMAT"] = format
34
+ format = env["LIZA_FORMAT"]
33
35
 
34
36
  log({request:, action:, format:})
35
37
 
36
- # 3. FIND request
38
+ env["LIZA_REQUEST_CLASS"] = _find_request_class request
39
+ end
37
40
 
38
- begin
39
- request_klass = Liza.const "#{request}_request"
40
- rescue NameError
41
- request_klass = NotFoundRequest
42
- end
41
+ def _find_request_class request
42
+ Liza.const "#{request}_request"
43
+ rescue NameError
44
+ NotFoundRequest
45
+ end
43
46
 
44
- # 4. CALL
47
+ #
45
48
 
46
- request_klass.call env
47
- rescue => e
48
- request_klass = ServerErrorRequest
49
- env["LIZA_ERROR"] = e
49
+ def _html_beautify env, ret
50
+ return unless defined? HtmlBeautifier
51
+ return unless env["LIZA_FORMAT"] == "html"
52
+
53
+ body = ret[2].first
54
+ body = HtmlBeautifier.beautify body
55
+ ret[2] = [body]
56
+ end
57
+
58
+ def _prepare env
59
+ log "#{env["REQUEST_METHOD"]} #{env["REQUEST_PATH"]}"
60
+
61
+ path = env["REQUEST_PATH"]
62
+
63
+ path, _sep, format = path.lpartition "."
64
+ format = "html" if format.empty?
65
+
66
+ segments = Array path.split("/")[1..-1]
50
67
 
51
- request_klass.call env
68
+ env["LIZA_PATH"] = path
69
+ env["LIZA_FORMAT"] = format
70
+ env["LIZA_SEGMENTS"] = segments
52
71
  end
53
72
 
54
73
  end
@@ -1,14 +1,33 @@
1
- class WebSystem
2
- class RequestPanelTest < Liza::PanelTest
1
+ class WebSystem::RequestPanelTest < Liza::PanelTest
3
2
 
4
- test :settings do
5
- assert subject_class.log_level == :normal
6
- assert subject_class.log_color == :blue
7
- end
3
+ test :settings do
4
+ assert subject_class.log_level == :normal
5
+ assert subject_class.log_color == :blue
6
+ end
7
+
8
+ #
8
9
 
9
- # test :call do
10
- # todo "write this"
11
- # end
10
+ test :_prepare do
11
+ subject = WebSystem::WebBox.requests
12
+ env = {}
13
+ env["REQUEST_PATH"] = "/foo/bar/baz"
14
+ subject._prepare env
15
+ assert_equality env, {
16
+ "REQUEST_PATH"=>"/foo/bar/baz",
17
+ "LIZA_PATH"=>"/foo/bar/baz",
18
+ "LIZA_FORMAT"=>"html",
19
+ "LIZA_SEGMENTS"=>["foo", "bar", "baz"]
20
+ }
12
21
 
22
+ env = {}
23
+ env["REQUEST_PATH"] = "/"
24
+ subject._prepare env
25
+ assert_equality env, {
26
+ "REQUEST_PATH"=>"/",
27
+ "LIZA_PATH"=>"/",
28
+ "LIZA_FORMAT"=>"html",
29
+ "LIZA_SEGMENTS"=>[]
30
+ }
13
31
  end
32
+
14
33
  end
@@ -1,11 +1,23 @@
1
1
  class WebSystem
2
2
  class WebBox < Liza::Box
3
+ has_panel :rack, :rack
4
+ has_controller :rack, :rack
3
5
  has_panel :request, :requests
4
6
  has_controller :request, :requests
5
7
 
8
+ # Set up your rack panel per the DSL in http://guides.lizarb.org/panels/rack.html
9
+ rack do
10
+ # set :log_level, ENV["web.rack.log_level"]
11
+
12
+ set :files, App.root.join("web_files")
13
+ set :host, "localhost"
14
+ set :port, 3000
15
+ end
16
+
6
17
  # Set up your request panel per the DSL in http://guides.lizarb.org/panels/request.html
7
18
  requests do
8
19
  # set :log_level, ENV["web.request.log_level"]
20
+
9
21
  end
10
22
 
11
23
  end
data/lizarb.gemspec CHANGED
@@ -12,7 +12,7 @@ Gem::Specification.new do |spec|
12
12
  spec.description = "Liza is a light, experimental framework primarily developed to help study the Ruby language and the Ruby ecosystem."
13
13
  spec.homepage = "http://lizarb.org"
14
14
  spec.license = "MIT"
15
- spec.required_ruby_version = ">= 3.1.0"
15
+ spec.required_ruby_version = ">= 3.2.0"
16
16
 
17
17
  spec.metadata = {
18
18
  "homepage_uri" => "https://github.com/rubyonrails-brasil/lizarb",
@@ -29,7 +29,7 @@ Gem::Specification.new do |spec|
29
29
  end
30
30
  end
31
31
  spec.bindir = "exe"
32
- spec.executables = ["liza", "lizarb"]
32
+ spec.executables = ["lrb", "liza", "lizarb"]
33
33
  spec.require_paths = ["lib"]
34
34
 
35
35
  # dependencies