flok 0.0.73 → 0.0.74
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/kern/kern_log.js +14 -0
- data/app/kern/pagers/pg_sockio.js +9 -0
- data/app/kern/services/test.rb +10 -0
- data/app/kern/services/vm.rb +2 -1
- data/docs/kernel_api.md +11 -0
- data/docs/services/test.md +3 -0
- data/flok.gemspec +1 -0
- data/lib/flok/user_compiler_templates/ctable.js.erb +13 -3
- data/lib/flok/version.rb +1 -1
- data/spec/env/kern.rb +10 -1
- data/spec/kern/assets/multi_level_dealloc.rb +63 -0
- data/spec/kern/assets/test_service/controller3.rb +42 -0
- data/spec/kern/assets/vm/pg_sockio/write.rb +24 -0
- data/spec/kern/assets/vm/pg_sockio/write2.rb +33 -0
- data/spec/kern/controller_spec.rb +36 -0
- data/spec/kern/global_functions_spec.rb +42 -0
- data/spec/kern/test_service_spec.rb +25 -1
- data/spec/kern/vm_sockio_pager_spec.rb +36 -0
- metadata +27 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ca8fea6b0e7252ab3f9a892389bde94e80014ce4
|
4
|
+
data.tar.gz: 5e23aecfc89a9d7ebd4ad4f3615c0bd6bd7ac071
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fb6efe7e84308d32c0672d618891c7b45b0b66b33b3bd2517833cbdae5853027696042204d5bef1a23da13c945d2821923b82d792e2059391ad9b94c623dd76b
|
7
|
+
data.tar.gz: 346bc274195f9a5b6b8d44b52961cefe133f51b0ef1b5dbaa322ac6a0b3d41dd8dd4269d214f54fac1012acafd699fbfb07a48fd81d5cb41e498cb4046acbbfd
|
@@ -0,0 +1,14 @@
|
|
1
|
+
<% if @debug %>
|
2
|
+
kern_log_stdout = [];
|
3
|
+
function kern_log(str) {
|
4
|
+
kern_log_stdout.push(str);
|
5
|
+
}
|
6
|
+
|
7
|
+
function kern_log_json(json) {
|
8
|
+
//We don't want to capture a reference
|
9
|
+
kern_log_stdout.push(
|
10
|
+
JSON.parse(JSON.stringify(json))
|
11
|
+
);
|
12
|
+
}
|
13
|
+
|
14
|
+
<% end %>
|
@@ -59,5 +59,14 @@
|
|
59
59
|
}
|
60
60
|
|
61
61
|
function pg_sockio<%= i %>_write(page) {
|
62
|
+
vm_transaction_begin();
|
63
|
+
//If page exists in cache, then commit changes into the page
|
64
|
+
var cached_page = vm_cache[pg_sockio<%= i %>_ns][page._id];
|
65
|
+
if (cached_page !== undefined) {
|
66
|
+
vm_commit(cached_page, page);
|
67
|
+
}
|
68
|
+
|
69
|
+
vm_cache_write(pg_sockio<%= i %>_ns, page);
|
70
|
+
vm_transaction_end();
|
62
71
|
}
|
63
72
|
<% end %>
|
data/app/kern/services/test.rb
CHANGED
@@ -1,10 +1,20 @@
|
|
1
1
|
service :test do
|
2
2
|
global %{
|
3
|
+
test_service_connected = {};
|
4
|
+
|
3
5
|
function <%= @name %>_function(x) {
|
4
6
|
<%= @name %>_function_args = x;
|
5
7
|
}
|
6
8
|
}
|
7
9
|
|
10
|
+
on_connect %{
|
11
|
+
test_service_connected[bp] = true;
|
12
|
+
}
|
13
|
+
|
14
|
+
on_disconnect %{
|
15
|
+
delete test_service_connected[bp];
|
16
|
+
}
|
17
|
+
|
8
18
|
on "test_sync", %{
|
9
19
|
int_event(bp, "test_sync_res", params);
|
10
20
|
}
|
data/app/kern/services/vm.rb
CHANGED
@@ -535,7 +535,8 @@ service :vm do
|
|
535
535
|
on "write", %{
|
536
536
|
<% raise "No pagers given in options for vm" unless @options[:pagers] %>
|
537
537
|
|
538
|
-
//We are going to fix the _hash on the page
|
538
|
+
//We are going to fix the _hash on the page and __index
|
539
|
+
vm_reindex_page(params.page);
|
539
540
|
vm_rehash_page(params.page);
|
540
541
|
|
541
542
|
<% if @debug %>
|
data/docs/kernel_api.md
CHANGED
@@ -1,5 +1,16 @@
|
|
1
1
|
#Kernel API
|
2
2
|
|
3
|
+
##Debugging (only enabled in DEBUG)
|
4
|
+
* kernel logging
|
5
|
+
All kernel logging goes to `kern_log_stdout`, an array of values.
|
6
|
+
array
|
7
|
+
* Based on `type` field:
|
8
|
+
* `string`
|
9
|
+
* `kern_log(str)` - Writes an entry to `kern_log_stdout` like `"string"`
|
10
|
+
* `json`
|
11
|
+
* `kern_log_json(json)` - Writes an entry to `kern_log_stdout` like `{"foo": "bar"}` which has been serialized and deserialized (to
|
12
|
+
prevent reference)
|
13
|
+
|
3
14
|
##Telepointer (Mapped I/O)
|
4
15
|
* `tels(n)` - Returns one number that represents the base index of the telepointer. See [Messaging](Messaging.md) for details on telepointers.
|
5
16
|
* `tel_reg(f)` - Returns a number that represents the base pointer of a function callback.
|
data/docs/services/test.md
CHANGED
@@ -1,6 +1,9 @@
|
|
1
1
|
#Test Service
|
2
2
|
This is the test service. Used for various specs
|
3
3
|
|
4
|
+
#Useful variables
|
5
|
+
* `test_service_connected` - A hash containing all the base pointers of *connected* controllers `{bp => true, ...}`.
|
6
|
+
|
4
7
|
#Requests
|
5
8
|
* `test_sync` - Will send you a synchronous response via the event `test_sync_res` that contains
|
6
9
|
the same parameters that you sent
|
data/flok.gemspec
CHANGED
@@ -33,6 +33,7 @@ Gem::Specification.new do |spec|
|
|
33
33
|
spec.add_runtime_dependency "thor", "~> 0.19"
|
34
34
|
spec.add_runtime_dependency "rake", "~> 10.3"
|
35
35
|
spec.add_runtime_dependency 'naturalsort', "~> 1.0"
|
36
|
+
spec.add_runtime_dependency 'awesome_print', "~> 1.6"
|
36
37
|
spec.add_development_dependency "therubyracer", "~> 0.12"
|
37
38
|
spec.executables << 'flok'
|
38
39
|
end
|
@@ -28,9 +28,19 @@ ctable = {
|
|
28
28
|
var __info__ = tel_deref(__base__);
|
29
29
|
|
30
30
|
//Recursively call dealloc
|
31
|
-
|
32
|
-
|
33
|
-
|
31
|
+
var embeds = __info__.embeds;
|
32
|
+
while (true) {
|
33
|
+
for (var i = 0; i < embeds.length; ++i) {
|
34
|
+
for (var x = 0; x < embeds[i].length; ++x) {
|
35
|
+
tel_deref(embeds[i][x]).cte.__dealloc__(embeds[i][x]);
|
36
|
+
}
|
37
|
+
}
|
38
|
+
|
39
|
+
if (__info__.stack.length > 0) {
|
40
|
+
var slice = __info__.stack.pop();
|
41
|
+
embeds = slice.embeds;
|
42
|
+
} else {
|
43
|
+
break;
|
34
44
|
}
|
35
45
|
}
|
36
46
|
|
data/lib/flok/version.rb
CHANGED
data/spec/env/kern.rb
CHANGED
@@ -1,6 +1,7 @@
|
|
1
|
-
require './spec/env/global.rb'
|
2
1
|
require 'therubyracer'
|
2
|
+
require 'awesome_print'
|
3
3
|
require './spec/lib/temp_dir'
|
4
|
+
require './spec/env/global.rb'
|
4
5
|
|
5
6
|
shared_context "kern" do
|
6
7
|
before(:each) do
|
@@ -36,6 +37,14 @@ shared_context "kern" do
|
|
36
37
|
|
37
38
|
return DumpHelper.new(_dump)
|
38
39
|
end
|
40
|
+
|
41
|
+
def dump_log
|
42
|
+
out = self.dump "kern_log_stdout"
|
43
|
+
self.eval "kern_log_stdout = []"
|
44
|
+
out.each_with_index do |e, i|
|
45
|
+
ap e
|
46
|
+
end
|
47
|
+
end
|
39
48
|
end
|
40
49
|
|
41
50
|
class DumpHelper
|
@@ -0,0 +1,63 @@
|
|
1
|
+
controller :nav do
|
2
|
+
spots "content"
|
3
|
+
|
4
|
+
action :index do
|
5
|
+
on_entry %{
|
6
|
+
Embed("my_controller", "content", {});
|
7
|
+
}
|
8
|
+
|
9
|
+
on "next_nav", %{
|
10
|
+
Goto("other_action");
|
11
|
+
}
|
12
|
+
end
|
13
|
+
|
14
|
+
action :other_action do
|
15
|
+
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
controller :my_controller do
|
20
|
+
spots "content"
|
21
|
+
|
22
|
+
action :my_action do
|
23
|
+
on_entry %{
|
24
|
+
my_controller_bp = __base__;
|
25
|
+
Embed("other", "content", {});
|
26
|
+
}
|
27
|
+
|
28
|
+
on "next", %{
|
29
|
+
Push("my_other_action")
|
30
|
+
}
|
31
|
+
end
|
32
|
+
|
33
|
+
action :my_other_action do
|
34
|
+
on_entry %{
|
35
|
+
Embed("other2", "content", {});
|
36
|
+
}
|
37
|
+
|
38
|
+
on "back", %{
|
39
|
+
Pop();
|
40
|
+
}
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
controller :other do
|
45
|
+
services :test
|
46
|
+
|
47
|
+
action :index do
|
48
|
+
on_entry %{
|
49
|
+
other_bp = __base__;
|
50
|
+
}
|
51
|
+
end
|
52
|
+
end
|
53
|
+
|
54
|
+
controller :other2 do
|
55
|
+
services :test
|
56
|
+
|
57
|
+
action :index do
|
58
|
+
on_entry %{
|
59
|
+
other_bp2 = __base__;
|
60
|
+
}
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
@@ -0,0 +1,42 @@
|
|
1
|
+
controller :my_controller do
|
2
|
+
services :test
|
3
|
+
spots "content"
|
4
|
+
|
5
|
+
action :my_action do
|
6
|
+
on_entry %{
|
7
|
+
Embed("other", "content", {});
|
8
|
+
}
|
9
|
+
|
10
|
+
on "next", %{
|
11
|
+
Goto("my_other_action")
|
12
|
+
}
|
13
|
+
end
|
14
|
+
|
15
|
+
action :my_other_action do
|
16
|
+
on_entry %{
|
17
|
+
Embed("other2", "content", {});
|
18
|
+
}
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
controller :other do
|
23
|
+
services :test
|
24
|
+
|
25
|
+
action :index do
|
26
|
+
on_entry %{
|
27
|
+
other_bp = __base__;
|
28
|
+
kern_log("My bp is: " + __base__)
|
29
|
+
}
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
controller :other2 do
|
34
|
+
services :test
|
35
|
+
|
36
|
+
action :index do
|
37
|
+
on_entry %{
|
38
|
+
other_bp2 = __base__;
|
39
|
+
}
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
@@ -0,0 +1,24 @@
|
|
1
|
+
controller :my_controller do
|
2
|
+
services :vm
|
3
|
+
|
4
|
+
on_entry %{
|
5
|
+
read_res_params = [];
|
6
|
+
}
|
7
|
+
|
8
|
+
action :my_action do
|
9
|
+
on_entry %{
|
10
|
+
var page = vm_create_page("test");
|
11
|
+
|
12
|
+
var info = {
|
13
|
+
ns: "sockio",
|
14
|
+
page: page,
|
15
|
+
};
|
16
|
+
|
17
|
+
Request("vm", "write", info);
|
18
|
+
}
|
19
|
+
|
20
|
+
on "read_res", %{
|
21
|
+
read_res_params.push(JSON.parse(JSON.stringify(params)));
|
22
|
+
}
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
controller :my_controller do
|
2
|
+
services :vm
|
3
|
+
|
4
|
+
on_entry %{
|
5
|
+
read_res_params = [];
|
6
|
+
|
7
|
+
//Create a page and commit it to the sockio cache (cheating)
|
8
|
+
var page = vm_create_page("test");
|
9
|
+
page.entries.push(
|
10
|
+
{"_id": "test", "_sig": "test", "val": "test"}
|
11
|
+
);
|
12
|
+
vm_reindex_page(page);
|
13
|
+
vm_rehash_page(page);
|
14
|
+
vm_cache["sockio"]["test"] = page;
|
15
|
+
}
|
16
|
+
|
17
|
+
action :my_action do
|
18
|
+
on_entry %{
|
19
|
+
var page = vm_create_page("test");
|
20
|
+
|
21
|
+
var info = {
|
22
|
+
ns: "sockio",
|
23
|
+
page: page,
|
24
|
+
};
|
25
|
+
|
26
|
+
Request("vm", "write", info);
|
27
|
+
}
|
28
|
+
|
29
|
+
on "read_res", %{
|
30
|
+
read_res_params.push(JSON.parse(JSON.stringify(params)));
|
31
|
+
}
|
32
|
+
end
|
33
|
+
end
|
@@ -403,6 +403,42 @@ RSpec.describe "kern:controller_spec" do
|
|
403
403
|
end
|
404
404
|
end
|
405
405
|
|
406
|
+
it "Does call __dealloc__ on all controllers within a multi-level controller hierarchy when that view hierarchy is dismissed" do
|
407
|
+
ctx = flok_new_user File.read('./spec/kern/assets/multi_level_dealloc.rb'), File.read("./spec/kern/assets/test_service/config0.rb")
|
408
|
+
dump = ctx.evald %{
|
409
|
+
base = _embed("nav", 0, {}, null);
|
410
|
+
|
411
|
+
//Drain queue
|
412
|
+
int_dispatch([]);
|
413
|
+
|
414
|
+
//This is the nav controller
|
415
|
+
dump.bp = base;
|
416
|
+
|
417
|
+
//This is the 'content' controller of nav
|
418
|
+
dump.my_controller_bp = my_controller_bp;
|
419
|
+
|
420
|
+
//This is the 'pushed' controller of the content's controller
|
421
|
+
dump.other_bp = other_bp;
|
422
|
+
}
|
423
|
+
|
424
|
+
#This is like the controller embedded in a nav pushing a dialog ontop of itself
|
425
|
+
@driver.int "int_event", [
|
426
|
+
dump["my_controller_bp"], "next", {}
|
427
|
+
]
|
428
|
+
|
429
|
+
#This is like the nav moving to another action (while the 'content' controller has something pushed on it)
|
430
|
+
@driver.int "int_event", [
|
431
|
+
dump["bp"], "next_nav", {}
|
432
|
+
]
|
433
|
+
|
434
|
+
test_service_connected = ctx.dump "test_service_connected"
|
435
|
+
|
436
|
+
ctx.dump_log
|
437
|
+
expect(test_service_connected).to eq({
|
438
|
+
})
|
439
|
+
end
|
440
|
+
|
441
|
+
|
406
442
|
it "Does tear down the old embedded view from the embedded view controller when switching actions" do
|
407
443
|
#Compile the controller
|
408
444
|
ctx = flok_new_user File.read('./spec/kern/assets/goto.rb')
|
@@ -0,0 +1,42 @@
|
|
1
|
+
Dir.chdir File.join File.dirname(__FILE__), '../../'
|
2
|
+
require './spec/env/kern.rb'
|
3
|
+
require './spec/lib/helpers.rb'
|
4
|
+
require './spec/lib/io_extensions.rb'
|
5
|
+
require './spec/lib/rspec_extensions.rb'
|
6
|
+
|
7
|
+
#Any global kernel API functions go here
|
8
|
+
|
9
|
+
RSpec.describe "kern:global_function_spec" do
|
10
|
+
include_context "kern"
|
11
|
+
|
12
|
+
it "Can use the kern_log function which writes to kern_log_stdout" do
|
13
|
+
#Compile the controller
|
14
|
+
ctx = flok_new_user File.read('./spec/kern/assets/controller0.rb')
|
15
|
+
|
16
|
+
dump = ctx.evald %{
|
17
|
+
kern_log("foo");
|
18
|
+
kern_log("bar");
|
19
|
+
|
20
|
+
dump.kern_log_stdout = kern_log_stdout;
|
21
|
+
}
|
22
|
+
|
23
|
+
expect(dump["kern_log_stdout"][0]).to eq("foo")
|
24
|
+
expect(dump["kern_log_stdout"][1]).to eq("bar")
|
25
|
+
end
|
26
|
+
|
27
|
+
it "Can use the kern_log_json function which writes to kern_log_stdout" do
|
28
|
+
#Compile the controller
|
29
|
+
ctx = flok_new_user File.read('./spec/kern/assets/controller0.rb')
|
30
|
+
|
31
|
+
dump = ctx.evald %{
|
32
|
+
kern_log_json({
|
33
|
+
"foo": "bar"
|
34
|
+
})
|
35
|
+
|
36
|
+
dump.kern_log_stdout = kern_log_stdout;
|
37
|
+
}
|
38
|
+
|
39
|
+
expect(dump["kern_log_stdout"][0]).to eq({"foo" => "bar"})
|
40
|
+
end
|
41
|
+
|
42
|
+
end
|
@@ -1,11 +1,11 @@
|
|
1
1
|
#The test service
|
2
2
|
|
3
3
|
Dir.chdir File.join File.dirname(__FILE__), '../../'
|
4
|
+
require 'zlib'
|
4
5
|
require './spec/env/kern.rb'
|
5
6
|
require './spec/lib/helpers.rb'
|
6
7
|
require './spec/lib/io_extensions.rb'
|
7
8
|
require './spec/lib/rspec_extensions.rb'
|
8
|
-
require 'zlib'
|
9
9
|
|
10
10
|
RSpec.describe "kern:test_service" do
|
11
11
|
include Zlib
|
@@ -80,4 +80,28 @@ RSpec.describe "kern:test_service" do
|
|
80
80
|
})
|
81
81
|
end
|
82
82
|
|
83
|
+
it "Does keep track of connected clients via test_service_bp" do
|
84
|
+
ctx = flok_new_user File.read('./spec/kern/assets/test_service/controller3.rb'), File.read("./spec/kern/assets/test_service/config0.rb")
|
85
|
+
dump = ctx.evald %{
|
86
|
+
base = _embed("my_controller", 0, {}, null);
|
87
|
+
|
88
|
+
//Drain queue
|
89
|
+
int_dispatch([]);
|
90
|
+
|
91
|
+
dump.bp = base;
|
92
|
+
dump.other_bp = other_bp;
|
93
|
+
}
|
94
|
+
|
95
|
+
@driver.int "int_event", [
|
96
|
+
dump["bp"], "next", {}
|
97
|
+
]
|
98
|
+
other_bp2 = ctx.eval "other_bp2"
|
99
|
+
test_service_connected = ctx.dump "test_service_connected"
|
100
|
+
|
101
|
+
ctx.dump_log
|
102
|
+
expect(test_service_connected).to eq({
|
103
|
+
dump["bp"].to_s => true,
|
104
|
+
other_bp2.to_s => true,
|
105
|
+
})
|
106
|
+
end
|
83
107
|
end
|
@@ -451,4 +451,40 @@ RSpec.describe "kern:sockio_pager" do
|
|
451
451
|
{"_id" => "foo", "_sig" => "foo", "value" => "bar"}
|
452
452
|
])
|
453
453
|
end
|
454
|
+
|
455
|
+
it "Does accept writes of pages that don't currently exist in cache; they go into vm_cache as-is" do
|
456
|
+
ctx = flok_new_user File.read('./spec/kern/assets/vm/pg_sockio/write.rb'), File.read("./spec/kern/assets/vm/pg_sockio/config.rb")
|
457
|
+
dump = ctx.evald %{
|
458
|
+
//Call embed on main root view
|
459
|
+
dump.base = _embed("my_controller", 0, {}, null);
|
460
|
+
|
461
|
+
//Drain queue
|
462
|
+
int_dispatch([]);
|
463
|
+
|
464
|
+
dump.vm_cache = vm_cache;
|
465
|
+
}
|
466
|
+
|
467
|
+
#The vm_cache should now contain an entry for the page
|
468
|
+
expect(dump["vm_cache"]["sockio"]["test"]).not_to eq(nil)
|
469
|
+
end
|
470
|
+
|
471
|
+
it "Does accept writes of pages that **do** currently exist in cache; they go into vm_cache commited" do
|
472
|
+
ctx = flok_new_user File.read('./spec/kern/assets/vm/pg_sockio/write2.rb'), File.read("./spec/kern/assets/vm/pg_sockio/config.rb")
|
473
|
+
dump = ctx.evald %{
|
474
|
+
//Call embed on main root view
|
475
|
+
dump.base = _embed("my_controller", 0, {}, null);
|
476
|
+
|
477
|
+
//Drain queue
|
478
|
+
int_dispatch([]);
|
479
|
+
|
480
|
+
dump.vm_cache = vm_cache;
|
481
|
+
}
|
482
|
+
|
483
|
+
#The vm_cache should now contain an entry for the page
|
484
|
+
expect(dump["vm_cache"]["sockio"]["test"]).not_to eq(nil)
|
485
|
+
|
486
|
+
#And that entry contains commits
|
487
|
+
expect(dump["vm_cache"]["sockio"]["test"]["__changes"]).not_to eq(nil)
|
488
|
+
expect(dump["vm_cache"]["sockio"]["test"]["__changes_id"]).not_to eq(nil)
|
489
|
+
end
|
454
490
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: flok
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.74
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- seo
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-07-
|
11
|
+
date: 2015-07-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: execjs
|
@@ -220,6 +220,20 @@ dependencies:
|
|
220
220
|
- - "~>"
|
221
221
|
- !ruby/object:Gem::Version
|
222
222
|
version: '1.0'
|
223
|
+
- !ruby/object:Gem::Dependency
|
224
|
+
name: awesome_print
|
225
|
+
requirement: !ruby/object:Gem::Requirement
|
226
|
+
requirements:
|
227
|
+
- - "~>"
|
228
|
+
- !ruby/object:Gem::Version
|
229
|
+
version: '1.6'
|
230
|
+
type: :runtime
|
231
|
+
prerelease: false
|
232
|
+
version_requirements: !ruby/object:Gem::Requirement
|
233
|
+
requirements:
|
234
|
+
- - "~>"
|
235
|
+
- !ruby/object:Gem::Version
|
236
|
+
version: '1.6'
|
223
237
|
- !ruby/object:Gem::Dependency
|
224
238
|
name: therubyracer
|
225
239
|
requirement: !ruby/object:Gem::Requirement
|
@@ -283,6 +297,7 @@ files:
|
|
283
297
|
- app/kern/crc32.js
|
284
298
|
- app/kern/dispatch.js
|
285
299
|
- app/kern/gen_id.js
|
300
|
+
- app/kern/kern_log.js
|
286
301
|
- app/kern/macro.rb
|
287
302
|
- app/kern/mod/controller.js
|
288
303
|
- app/kern/mod/debug.js
|
@@ -1158,6 +1173,7 @@ files:
|
|
1158
1173
|
- spec/kern/assets/interval2.rb
|
1159
1174
|
- spec/kern/assets/interval3.rb
|
1160
1175
|
- spec/kern/assets/lower_event.rb
|
1176
|
+
- spec/kern/assets/multi_level_dealloc.rb
|
1161
1177
|
- spec/kern/assets/no_choose_action.rb
|
1162
1178
|
- spec/kern/assets/push.rb
|
1163
1179
|
- spec/kern/assets/push_pop.rb
|
@@ -1184,6 +1200,7 @@ files:
|
|
1184
1200
|
- spec/kern/assets/test_service/controller0.rb
|
1185
1201
|
- spec/kern/assets/test_service/controller1.rb
|
1186
1202
|
- spec/kern/assets/test_service/controller2.rb
|
1203
|
+
- spec/kern/assets/test_service/controller3.rb
|
1187
1204
|
- spec/kern/assets/test_service_config.rb
|
1188
1205
|
- spec/kern/assets/vm/config0.rb
|
1189
1206
|
- spec/kern/assets/vm/config1.rb
|
@@ -1261,6 +1278,8 @@ files:
|
|
1261
1278
|
- spec/kern/assets/vm/pg_sockio/nothing.rb
|
1262
1279
|
- spec/kern/assets/vm/pg_sockio/watch.rb
|
1263
1280
|
- spec/kern/assets/vm/pg_sockio/watch2.rb
|
1281
|
+
- spec/kern/assets/vm/pg_sockio/write.rb
|
1282
|
+
- spec/kern/assets/vm/pg_sockio/write2.rb
|
1264
1283
|
- spec/kern/assets/vm/service0.rb
|
1265
1284
|
- spec/kern/assets/vm/service_controller0.rb
|
1266
1285
|
- spec/kern/assets/vm/vm_commit_pages.js
|
@@ -1274,6 +1293,7 @@ files:
|
|
1274
1293
|
- spec/kern/dispatch_spec.rb
|
1275
1294
|
- spec/kern/event_spec.rb
|
1276
1295
|
- spec/kern/functions_spec.rb
|
1296
|
+
- spec/kern/global_functions_spec.rb
|
1277
1297
|
- spec/kern/rest_service_spec.rb
|
1278
1298
|
- spec/kern/service_controller_spec.rb
|
1279
1299
|
- spec/kern/test_service_spec.rb
|
@@ -2096,6 +2116,7 @@ test_files:
|
|
2096
2116
|
- spec/kern/assets/interval2.rb
|
2097
2117
|
- spec/kern/assets/interval3.rb
|
2098
2118
|
- spec/kern/assets/lower_event.rb
|
2119
|
+
- spec/kern/assets/multi_level_dealloc.rb
|
2099
2120
|
- spec/kern/assets/no_choose_action.rb
|
2100
2121
|
- spec/kern/assets/push.rb
|
2101
2122
|
- spec/kern/assets/push_pop.rb
|
@@ -2122,6 +2143,7 @@ test_files:
|
|
2122
2143
|
- spec/kern/assets/test_service/controller0.rb
|
2123
2144
|
- spec/kern/assets/test_service/controller1.rb
|
2124
2145
|
- spec/kern/assets/test_service/controller2.rb
|
2146
|
+
- spec/kern/assets/test_service/controller3.rb
|
2125
2147
|
- spec/kern/assets/test_service_config.rb
|
2126
2148
|
- spec/kern/assets/vm/config0.rb
|
2127
2149
|
- spec/kern/assets/vm/config1.rb
|
@@ -2199,6 +2221,8 @@ test_files:
|
|
2199
2221
|
- spec/kern/assets/vm/pg_sockio/nothing.rb
|
2200
2222
|
- spec/kern/assets/vm/pg_sockio/watch.rb
|
2201
2223
|
- spec/kern/assets/vm/pg_sockio/watch2.rb
|
2224
|
+
- spec/kern/assets/vm/pg_sockio/write.rb
|
2225
|
+
- spec/kern/assets/vm/pg_sockio/write2.rb
|
2202
2226
|
- spec/kern/assets/vm/service0.rb
|
2203
2227
|
- spec/kern/assets/vm/service_controller0.rb
|
2204
2228
|
- spec/kern/assets/vm/vm_commit_pages.js
|
@@ -2212,6 +2236,7 @@ test_files:
|
|
2212
2236
|
- spec/kern/dispatch_spec.rb
|
2213
2237
|
- spec/kern/event_spec.rb
|
2214
2238
|
- spec/kern/functions_spec.rb
|
2239
|
+
- spec/kern/global_functions_spec.rb
|
2215
2240
|
- spec/kern/rest_service_spec.rb
|
2216
2241
|
- spec/kern/service_controller_spec.rb
|
2217
2242
|
- spec/kern/test_service_spec.rb
|