web-console-rails3 0.2.0 → 0.3.0

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.
Files changed (53) hide show
  1. checksums.yaml +4 -4
  2. data/README.markdown +2 -2
  3. data/app/assets/javascripts/web_console/application.js +1 -3
  4. data/app/assets/javascripts/web_console/console_sessions.js +3 -24
  5. data/app/assets/stylesheets/web_console/application.css +1 -0
  6. data/app/assets/stylesheets/web_console/console_sessions.css +0 -8
  7. data/app/controllers/web_console/application_controller.rb +1 -0
  8. data/app/controllers/web_console/console_sessions_controller.rb +24 -4
  9. data/app/models/web_console/console_session.rb +32 -62
  10. data/app/views/web_console/console_sessions/index.html.erb +9 -4
  11. data/config/routes.rb +7 -1
  12. data/lib/assets/javascripts/web-console.js +1 -0
  13. data/lib/assets/javascripts/web_console.js +202 -0
  14. data/lib/web_console.rb +1 -1
  15. data/lib/web_console/engine.rb +17 -7
  16. data/lib/web_console/slave.rb +112 -0
  17. data/lib/web_console/version.rb +1 -1
  18. data/test/controllers/web_console/console_sessions_controller_test.rb +29 -11
  19. data/test/dummy/config/application.rb +17 -1
  20. data/test/dummy/config/application.rb.orig +58 -0
  21. data/test/dummy/log/development.log +28962 -0
  22. data/test/dummy/log/test.log +329 -0
  23. data/test/dummy/tmp/cache/assets/CBD/6E0/sprockets%2F3293dfc0984076f0e8371a9e7640f4a8 +0 -0
  24. data/test/dummy/tmp/cache/assets/CD0/FC0/sprockets%2Fbb2777627d42a216f3d9ced4322040b3 +0 -0
  25. data/test/dummy/tmp/cache/assets/CFA/E30/sprockets%2F35be1d26565dc0310c29f1a5e2f62f10 +0 -0
  26. data/test/dummy/tmp/cache/assets/D1D/FD0/sprockets%2Fa4a5ffe670666ce3d8d59179905201ef +0 -0
  27. data/test/dummy/tmp/cache/assets/D21/6B0/sprockets%2F9e242803fe56d6305274ff7e6487deda +0 -0
  28. data/test/dummy/tmp/cache/assets/D22/980/sprockets%2Fce6aa94ad2bc107104c0540f62c5128c +0 -0
  29. data/test/dummy/tmp/cache/assets/D3E/380/sprockets%2F434d98c8380bb9daf43810155aaf68ba +0 -0
  30. data/test/dummy/tmp/cache/assets/D66/940/sprockets%2F6151175b6ad4f9bab0c7e2b508e7b70f +0 -0
  31. data/test/dummy/tmp/cache/assets/D69/710/sprockets%2Ff67078d4b979a58c97feede196f6b385 +0 -0
  32. data/test/dummy/tmp/cache/assets/D95/C40/sprockets%2F09cb0a274209abf0391cbfce6ee67b82 +0 -0
  33. data/test/dummy/tmp/cache/assets/D9B/A30/sprockets%2Fc3436b3fe5da7c2456f26e2ae36da6c5 +0 -0
  34. data/test/dummy/tmp/cache/assets/D9F/400/sprockets%2F7f60332f86073dc8ed80b4c2a9dfcbe1 +0 -0
  35. data/test/dummy/tmp/cache/assets/DAE/8C0/sprockets%2Fa9b8f7bc5ca2efe658a13d7f4609c729 +0 -0
  36. data/test/dummy/tmp/cache/assets/DB3/0C0/sprockets%2F689fb998e2a7add3e00db88df254c87a +0 -0
  37. data/test/dummy/tmp/cache/assets/DD4/440/sprockets%2Fa33d646ac00d8bc87a4a496af6eed96f +0 -0
  38. data/test/dummy/tmp/cache/assets/DDB/890/sprockets%2F5ed566ca9fafd1b82373ffea2a8d8681 +0 -0
  39. data/test/models/console_session_test.rb +16 -75
  40. data/test/web_console/slave_test.rb +53 -0
  41. data/test/web_console_test.rb +51 -11
  42. data/vendor/assets/javascripts/vt100.js +4408 -0
  43. data/vendor/assets/stylesheets/vt100.css +272 -0
  44. metadata +23 -42
  45. data/lib/web_console/fiber.rb +0 -48
  46. data/lib/web_console/repl.rb +0 -59
  47. data/lib/web_console/repl/dummy.rb +0 -38
  48. data/lib/web_console/repl/irb.rb +0 -62
  49. data/lib/web_console/stream.rb +0 -30
  50. data/test/web_console/repl/dummy_test.rb +0 -54
  51. data/test/web_console/repl/irb_test.rb +0 -156
  52. data/test/web_console/repl_test.rb +0 -15
  53. data/vendor/assets/javascripts/jquery.console.js +0 -727
@@ -0,0 +1,272 @@
1
+ #vt100 a {
2
+ text-decoration: none;
3
+ color: inherit;
4
+ }
5
+
6
+ #vt100 a:hover {
7
+ text-decoration: underline;
8
+ }
9
+
10
+ #vt100 #reconnect {
11
+ position: absolute;
12
+ z-index: 2;
13
+ }
14
+
15
+ #vt100 #reconnect input {
16
+ padding: 1ex;
17
+ font-weight: bold;
18
+ font-size: x-large;
19
+ }
20
+
21
+ #vt100 #cursize {
22
+ background: #EEEEEE;
23
+ border: 1px solid black;
24
+ font-family: sans-serif;
25
+ font-size: large;
26
+ font-weight: bold;
27
+ padding: 1ex;
28
+ position: absolute;
29
+ z-index: 2;
30
+ }
31
+
32
+ #vt100 pre {
33
+ margin: 0px;
34
+ }
35
+
36
+ #vt100 pre pre {
37
+ overflow: hidden;
38
+ }
39
+
40
+ #vt100 #scrollable {
41
+ overflow-x: hidden;
42
+ overflow-y: scroll;
43
+ position: relative;
44
+ padding: 1px;
45
+ }
46
+
47
+ #vt100 #console, #vt100 #alt_console, #vt100 #cursor, #vt100 #lineheight, #vt100 .hidden pre {
48
+ font-family: "DejaVu Sans Mono", "Everson Mono", FreeMono, "Andale Mono", monospace;
49
+ }
50
+
51
+ #vt100 #lineheight {
52
+ position: absolute;
53
+ visibility: hidden;
54
+ }
55
+
56
+ #vt100 #cursor {
57
+ position: absolute;
58
+ left: 0px;
59
+ top: 0px;
60
+ overflow: hidden;
61
+ z-index: 1;
62
+ }
63
+
64
+ #vt100 #cursor.bright {
65
+ background-color: black;
66
+ color: white;
67
+ }
68
+
69
+ #vt100 #cursor.dim {
70
+ visibility: hidden;
71
+ }
72
+
73
+ #vt100 #cursor.inactive {
74
+ border: 1px solid;
75
+ margin: -1px;
76
+ }
77
+
78
+ #vt100 #padding {
79
+ visibility: hidden;
80
+ width: 1px;
81
+ height: 0px;
82
+ overflow: hidden;
83
+ }
84
+
85
+ #vt100 .hidden {
86
+ position: absolute;
87
+ top: -10000px;
88
+ left: -10000px;
89
+ width: 0px;
90
+ height: 0px;
91
+ }
92
+
93
+ #vt100 #menu {
94
+ overflow: visible;
95
+ position: absolute;
96
+ z-index: 3;
97
+ }
98
+
99
+ #vt100 #menu .popup {
100
+ background-color: #EEEEEE;
101
+ border: 1px solid black;
102
+ font-family: sans-serif;
103
+ position: absolute;
104
+ }
105
+
106
+ #vt100 #menu .popup ul {
107
+ list-style-type: none;
108
+ padding: 0px;
109
+ margin: 0px;
110
+ min-width: 10em;
111
+ }
112
+
113
+ #vt100 #menu .popup li {
114
+ padding: 3px 0.5ex 3px 0.5ex;
115
+ }
116
+
117
+ #vt100 #menu .popup li.hover {
118
+ background-color: #444444;
119
+ color: white;
120
+ }
121
+
122
+ #vt100 #menu .popup li.disabled {
123
+ color: #AAAAAA;
124
+ }
125
+
126
+ #vt100 #menu .popup hr {
127
+ margin: 0.5ex 0px 0.5ex 0px;
128
+ }
129
+
130
+ #vt100 #menu img {
131
+ margin-right: 0.5ex;
132
+ width: 1ex;
133
+ height: 1ex;
134
+ }
135
+
136
+ #vt100 #scrollable.inverted { color: #ffffff;
137
+ background-color: #000000; }
138
+
139
+ #vt100 #kbd_button {
140
+ float: left;
141
+ position: fixed;
142
+ z-index: 0;
143
+ visibility: hidden;
144
+ }
145
+
146
+ #vt100 #keyboard {
147
+ z-index: 3;
148
+ position: absolute;
149
+ }
150
+
151
+ #vt100 #keyboard .box {
152
+ font-family: sans-serif;
153
+ background-color: #cccccc;
154
+ padding: .8em;
155
+ float: left;
156
+ position: absolute;
157
+ border-radius: 10px;
158
+ -moz-border-radius: 10px;
159
+ box-shadow: 4px 4px 6px #222222;
160
+ -webkit-box-shadow: 4px 4px 6px #222222;
161
+ /* Don't set the -moz-box-shadow. It doesn't properly scale when CSS
162
+ * transforms are in effect. Once Firefox supports box-shadow, it should
163
+ * automatically do the right thing. Until then, leave shadows disabled
164
+ * for Firefox.
165
+ */
166
+ opacity: 0.85;
167
+ -moz-opacity: 0.85;
168
+ filter: alpha(opacity=85);
169
+ }
170
+
171
+ #vt100 #keyboard .box * {
172
+ vertical-align: top;
173
+ display: inline-block;
174
+ }
175
+
176
+ #vt100 #keyboard b, #vt100 #keyboard i, #vt100 #keyboard s, #vt100 #keyboard u {
177
+ font-style: normal;
178
+ font-weight: bold;
179
+ border-radius: 5px;
180
+ -moz-border-radius: 5px;
181
+ background-color: #555555;
182
+ color: #eeeeee;
183
+ box-shadow: 2px 2px 3px #222222;
184
+ -webkit-box-shadow: 2px 2px 3px #222222;
185
+ padding: 4px;
186
+ margin: 2px;
187
+ height: 2ex;
188
+ display: inline-block;
189
+ text-align: center;
190
+ text-decoration: none;
191
+ }
192
+
193
+ #vt100 #keyboard b, #vt100 #keyboard s {
194
+ width: 2ex;
195
+ }
196
+
197
+ #vt100 #keyboard u, #vt100 #keyboard s {
198
+ visibility: hidden;
199
+ }
200
+
201
+ #vt100 #keyboard .shifted {
202
+ display: none;
203
+ }
204
+
205
+ #vt100 #keyboard .selected {
206
+ color: #888888;
207
+ background-color: #eeeeee;
208
+ box-shadow: 0px 0px 3px #222222;
209
+ -webkit-box-shadow: 0px 0px 3px #222222;
210
+ position: relative;
211
+ top: 1px;
212
+ left: 1px;
213
+ }
214
+
215
+ /* [if DEFINES_COLORS] */
216
+ /* IE cannot properly handle "inherit" properties. So, the monochrome.css/
217
+ * color.css style sheets cannot work, if we define colors in styles.css.
218
+ */
219
+ /* [else DEFINES_COLORS] */
220
+ #vt100 .ansi0 { }
221
+ #vt100 .ansi1 { color: #cd0000; }
222
+ #vt100 .ansi2 { color: #00cd00; }
223
+ #vt100 .ansi3 { color: #cdcd00; }
224
+ #vt100 .ansi4 { color: #0000ee; }
225
+ #vt100 .ansi5 { color: #cd00cd; }
226
+ #vt100 .ansi6 { color: #00cdcd; }
227
+ #vt100 .ansi7 { color: #e5e5e5; }
228
+ #vt100 .ansi8 { color: #7f7f7f; }
229
+ #vt100 .ansi9 { color: #ff0000; }
230
+ #vt100 .ansi10 { color: #00ff00; }
231
+ #vt100 .ansi11 { color: #e8e800; }
232
+ #vt100 .ansi12 { color: #5c5cff; }
233
+ #vt100 .ansi13 { color: #ff00ff; }
234
+ #vt100 .ansi14 { color: #00ffff; }
235
+ #vt100 .ansi15 { color: #ffffff; }
236
+
237
+ #vt100 .bgAnsi0 { background-color: #000000; }
238
+ #vt100 .bgAnsi1 { background-color: #cd0000; }
239
+ #vt100 .bgAnsi2 { background-color: #00cd00; }
240
+ #vt100 .bgAnsi3 { background-color: #cdcd00; }
241
+ #vt100 .bgAnsi4 { background-color: #0000ee; }
242
+ #vt100 .bgAnsi5 { background-color: #cd00cd; }
243
+ #vt100 .bgAnsi6 { background-color: #00cdcd; }
244
+ #vt100 .bgAnsi7 { background-color: #e5e5e5; }
245
+ #vt100 .bgAnsi8 { background-color: #7f7f7f; }
246
+ #vt100 .bgAnsi9 { background-color: #ff0000; }
247
+ #vt100 .bgAnsi10 { background-color: #00ff00; }
248
+ #vt100 .bgAnsi11 { background-color: #e8e800; }
249
+ #vt100 .bgAnsi12 { background-color: #5c5cff; }
250
+ #vt100 .bgAnsi13 { background-color: #ff00ff; }
251
+ #vt100 .bgAnsi14 { background-color: #00ffff; }
252
+ #vt100 .bgAnsi15 { }
253
+ /* [endif DEFINES_COLORS] */
254
+
255
+ @media print {
256
+ #vt100 .scrollback {
257
+ display: none;
258
+ }
259
+
260
+ #vt100 #reconnect, #vt100 #cursor, #vt100 #menu, #vt100 #kbd_button, #vt100 #keyboard {
261
+ visibility: hidden;
262
+ }
263
+
264
+ #vt100 #scrollable {
265
+ overflow: hidden;
266
+ }
267
+
268
+ #vt100 #console, #vt100 #alt_console {
269
+ overflow: hidden;
270
+ width: 1000000ex;
271
+ }
272
+ }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: web-console-rails3
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Genadi Samokovarov
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-08-05 00:00:00.000000000 Z
12
+ date: 2013-08-26 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
@@ -45,34 +45,6 @@ dependencies:
45
45
  - - ~>
46
46
  - !ruby/object:Gem::Version
47
47
  version: 0.2.0
48
- - !ruby/object:Gem::Dependency
49
- name: jquery-rails
50
- requirement: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - ~>
53
- - !ruby/object:Gem::Version
54
- version: 3.0.4
55
- type: :runtime
56
- prerelease: false
57
- version_requirements: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - ~>
60
- - !ruby/object:Gem::Version
61
- version: 3.0.4
62
- - !ruby/object:Gem::Dependency
63
- name: sqlite3
64
- requirement: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - '>='
67
- - !ruby/object:Gem::Version
68
- version: '0'
69
- type: :development
70
- prerelease: false
71
- version_requirements: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - '>='
74
- - !ruby/object:Gem::Version
75
- version: '0'
76
48
  description:
77
49
  email:
78
50
  - gsamokovarov@gmail.com
@@ -94,25 +66,22 @@ files:
94
66
  - app/models/web_console/console_session.rb
95
67
  - config/routes.rb
96
68
  - lib/web_console.rb
97
- - lib/web_console/fiber.rb
69
+ - lib/web_console/slave.rb
98
70
  - lib/web_console/engine.rb
99
71
  - lib/web_console/version.rb
100
- - lib/web_console/repl/dummy.rb
101
- - lib/web_console/repl/irb.rb
102
72
  - lib/web_console/backport/active_model.rb
103
- - lib/web_console/repl.rb
104
- - lib/web_console/stream.rb
73
+ - lib/assets/javascripts/web-console.js
74
+ - lib/assets/javascripts/web_console.js
105
75
  - lib/web-console.rb
106
76
  - lib/web-console-rails3.rb
107
- - vendor/assets/javascripts/jquery.console.js
77
+ - vendor/assets/stylesheets/vt100.css
78
+ - vendor/assets/javascripts/vt100.js
108
79
  - MIT-LICENSE
109
80
  - Rakefile
110
81
  - README.markdown
111
82
  - test/helpers/web_console/console_session_helper_test.rb
112
83
  - test/controllers/web_console/console_sessions_controller_test.rb
113
- - test/web_console/repl/irb_test.rb
114
- - test/web_console/repl/dummy_test.rb
115
- - test/web_console/repl_test.rb
84
+ - test/web_console/slave_test.rb
116
85
  - test/test_helper.rb
117
86
  - test/web_console_test.rb
118
87
  - test/dummy/db/development.sqlite3
@@ -125,21 +94,27 @@ files:
125
94
  - test/dummy/log/test.log
126
95
  - test/dummy/log/development.log
127
96
  - test/dummy/script/rails
97
+ - test/dummy/tmp/cache/assets/D22/980/sprockets%2Fce6aa94ad2bc107104c0540f62c5128c
128
98
  - test/dummy/tmp/cache/assets/D9F/400/sprockets%2F7f60332f86073dc8ed80b4c2a9dfcbe1
129
99
  - test/dummy/tmp/cache/assets/D29/380/sprockets%2F92f1a0450bc4bea3364a07be42b4f645
100
+ - test/dummy/tmp/cache/assets/D9B/A30/sprockets%2Fc3436b3fe5da7c2456f26e2ae36da6c5
101
+ - test/dummy/tmp/cache/assets/D66/940/sprockets%2F6151175b6ad4f9bab0c7e2b508e7b70f
130
102
  - test/dummy/tmp/cache/assets/CD0/FC0/sprockets%2Fbb2777627d42a216f3d9ced4322040b3
131
103
  - test/dummy/tmp/cache/assets/CFA/E30/sprockets%2F35be1d26565dc0310c29f1a5e2f62f10
132
104
  - test/dummy/tmp/cache/assets/D95/C40/sprockets%2F09cb0a274209abf0391cbfce6ee67b82
133
105
  - test/dummy/tmp/cache/assets/D90/B30/sprockets%2Fe03fe93eb7fe888c9d21ee62816596ff
106
+ - test/dummy/tmp/cache/assets/DDB/890/sprockets%2F5ed566ca9fafd1b82373ffea2a8d8681
134
107
  - test/dummy/tmp/cache/assets/CBD/6E0/sprockets%2F3293dfc0984076f0e8371a9e7640f4a8
135
108
  - test/dummy/tmp/cache/assets/C9E/AD0/sprockets%2F4a42d8916f3fa47867445f696497a92c
136
109
  - test/dummy/tmp/cache/assets/E5A/C40/sprockets%2F164cfa0fd9eb1ec1acdfaa278c83e9c5
137
110
  - test/dummy/tmp/cache/assets/DD4/440/sprockets%2Fa33d646ac00d8bc87a4a496af6eed96f
111
+ - test/dummy/tmp/cache/assets/DAE/8C0/sprockets%2Fa9b8f7bc5ca2efe658a13d7f4609c729
138
112
  - test/dummy/tmp/cache/assets/DB3/0C0/sprockets%2F689fb998e2a7add3e00db88df254c87a
139
113
  - test/dummy/tmp/cache/assets/D21/6B0/sprockets%2F9e242803fe56d6305274ff7e6487deda
140
114
  - test/dummy/tmp/cache/assets/D3E/380/sprockets%2F434d98c8380bb9daf43810155aaf68ba
141
115
  - test/dummy/tmp/cache/assets/D1D/FD0/sprockets%2Fa4a5ffe670666ce3d8d59179905201ef
142
116
  - test/dummy/tmp/cache/assets/D69/670/sprockets%2Fc6b4a05846fd1b98fe9252ecdd1601c0
117
+ - test/dummy/tmp/cache/assets/D69/710/sprockets%2Ff67078d4b979a58c97feede196f6b385
143
118
  - test/dummy/tmp/cache/assets/CA7/D70/sprockets%2F3e9e32bbc8c81a93002555265a36a852
144
119
  - test/dummy/app/helpers/application_helper.rb
145
120
  - test/dummy/app/controllers/application_controller.rb
@@ -149,6 +124,7 @@ files:
149
124
  - test/dummy/config.ru
150
125
  - test/dummy/config/locales/en.yml
151
126
  - test/dummy/config/application.rb
127
+ - test/dummy/config/application.rb.orig
152
128
  - test/dummy/config/initializers/backtrace_silencers.rb
153
129
  - test/dummy/config/initializers/session_store.rb
154
130
  - test/dummy/config/initializers/mime_types.rb
@@ -192,9 +168,7 @@ summary: Rails Console on the Browser, Rails 3 edition.
192
168
  test_files:
193
169
  - test/helpers/web_console/console_session_helper_test.rb
194
170
  - test/controllers/web_console/console_sessions_controller_test.rb
195
- - test/web_console/repl/irb_test.rb
196
- - test/web_console/repl/dummy_test.rb
197
- - test/web_console/repl_test.rb
171
+ - test/web_console/slave_test.rb
198
172
  - test/test_helper.rb
199
173
  - test/web_console_test.rb
200
174
  - test/dummy/db/development.sqlite3
@@ -207,21 +181,27 @@ test_files:
207
181
  - test/dummy/log/test.log
208
182
  - test/dummy/log/development.log
209
183
  - test/dummy/script/rails
184
+ - test/dummy/tmp/cache/assets/D22/980/sprockets%2Fce6aa94ad2bc107104c0540f62c5128c
210
185
  - test/dummy/tmp/cache/assets/D9F/400/sprockets%2F7f60332f86073dc8ed80b4c2a9dfcbe1
211
186
  - test/dummy/tmp/cache/assets/D29/380/sprockets%2F92f1a0450bc4bea3364a07be42b4f645
187
+ - test/dummy/tmp/cache/assets/D9B/A30/sprockets%2Fc3436b3fe5da7c2456f26e2ae36da6c5
188
+ - test/dummy/tmp/cache/assets/D66/940/sprockets%2F6151175b6ad4f9bab0c7e2b508e7b70f
212
189
  - test/dummy/tmp/cache/assets/CD0/FC0/sprockets%2Fbb2777627d42a216f3d9ced4322040b3
213
190
  - test/dummy/tmp/cache/assets/CFA/E30/sprockets%2F35be1d26565dc0310c29f1a5e2f62f10
214
191
  - test/dummy/tmp/cache/assets/D95/C40/sprockets%2F09cb0a274209abf0391cbfce6ee67b82
215
192
  - test/dummy/tmp/cache/assets/D90/B30/sprockets%2Fe03fe93eb7fe888c9d21ee62816596ff
193
+ - test/dummy/tmp/cache/assets/DDB/890/sprockets%2F5ed566ca9fafd1b82373ffea2a8d8681
216
194
  - test/dummy/tmp/cache/assets/CBD/6E0/sprockets%2F3293dfc0984076f0e8371a9e7640f4a8
217
195
  - test/dummy/tmp/cache/assets/C9E/AD0/sprockets%2F4a42d8916f3fa47867445f696497a92c
218
196
  - test/dummy/tmp/cache/assets/E5A/C40/sprockets%2F164cfa0fd9eb1ec1acdfaa278c83e9c5
219
197
  - test/dummy/tmp/cache/assets/DD4/440/sprockets%2Fa33d646ac00d8bc87a4a496af6eed96f
198
+ - test/dummy/tmp/cache/assets/DAE/8C0/sprockets%2Fa9b8f7bc5ca2efe658a13d7f4609c729
220
199
  - test/dummy/tmp/cache/assets/DB3/0C0/sprockets%2F689fb998e2a7add3e00db88df254c87a
221
200
  - test/dummy/tmp/cache/assets/D21/6B0/sprockets%2F9e242803fe56d6305274ff7e6487deda
222
201
  - test/dummy/tmp/cache/assets/D3E/380/sprockets%2F434d98c8380bb9daf43810155aaf68ba
223
202
  - test/dummy/tmp/cache/assets/D1D/FD0/sprockets%2Fa4a5ffe670666ce3d8d59179905201ef
224
203
  - test/dummy/tmp/cache/assets/D69/670/sprockets%2Fc6b4a05846fd1b98fe9252ecdd1601c0
204
+ - test/dummy/tmp/cache/assets/D69/710/sprockets%2Ff67078d4b979a58c97feede196f6b385
225
205
  - test/dummy/tmp/cache/assets/CA7/D70/sprockets%2F3e9e32bbc8c81a93002555265a36a852
226
206
  - test/dummy/app/helpers/application_helper.rb
227
207
  - test/dummy/app/controllers/application_controller.rb
@@ -231,6 +211,7 @@ test_files:
231
211
  - test/dummy/config.ru
232
212
  - test/dummy/config/locales/en.yml
233
213
  - test/dummy/config/application.rb
214
+ - test/dummy/config/application.rb.orig
234
215
  - test/dummy/config/initializers/backtrace_silencers.rb
235
216
  - test/dummy/config/initializers/session_store.rb
236
217
  - test/dummy/config/initializers/mime_types.rb
@@ -1,48 +0,0 @@
1
- module WebConsole
2
- # Poor Man's Fiber (API compatible Thread based Fiber implementation for Ruby 1.8)
3
- # (c) 2008 Aman Gupta (tmm1)
4
- #
5
- # For the purposes of our REPL adapters there is a need for fiber invocation
6
- # across threads. The native implementation does not support that.
7
- class FiberError < StandardError; end
8
-
9
- class Fiber
10
- def initialize
11
- raise ArgumentError, 'new Fiber requires a block' unless block_given?
12
-
13
- @yield = Queue.new
14
- @resume = Queue.new
15
-
16
- @thread = Thread.new { @yield.push [ *yield(*@resume.pop) ] }
17
- @thread.abort_on_exception = true
18
- @thread[:fiber] = self
19
- end
20
- attr_reader :thread
21
-
22
- def resume(*args)
23
- raise FiberError, 'dead fiber called' unless @thread.alive?
24
- @resume.push(args)
25
- result = @yield.pop
26
- result.size > 1 ? result : result.first
27
- end
28
-
29
- def yield(*args)
30
- @yield.push(args)
31
- result = @resume.pop
32
- result.size > 1 ? result : result.first
33
- end
34
-
35
- def self.yield(*args)
36
- raise FiberError, "can't yield from root fiber" unless fiber = Thread.current[:fiber]
37
- fiber.yield(*args)
38
- end
39
-
40
- def self.current
41
- Thread.current[:fiber] or raise FiberError, 'not inside a fiber'
42
- end
43
-
44
- def inspect
45
- "#<#{self.class}:0x#{self.object_id.to_s(16)}>"
46
- end
47
- end
48
- end