rainbows 0.94.0 → 0.95.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 (84) hide show
  1. data/.document +1 -0
  2. data/.manifest +18 -0
  3. data/ChangeLog +394 -226
  4. data/GIT-VERSION-FILE +1 -1
  5. data/GIT-VERSION-GEN +1 -1
  6. data/GNUmakefile +6 -4
  7. data/NEWS +18 -0
  8. data/README +13 -5
  9. data/Static_Files +71 -0
  10. data/TODO +12 -0
  11. data/Test_Suite +1 -1
  12. data/bin/rainbows +1 -4
  13. data/lib/rainbows/actor_spawn.rb +1 -1
  14. data/lib/rainbows/app_pool.rb +1 -1
  15. data/lib/rainbows/base.rb +79 -89
  16. data/lib/rainbows/byte_slice.rb +17 -0
  17. data/lib/rainbows/configurator.rb +46 -0
  18. data/lib/rainbows/const.rb +2 -2
  19. data/lib/rainbows/dev_fd_response.rb +52 -44
  20. data/lib/rainbows/error.rb +1 -0
  21. data/lib/rainbows/ev_core.rb +3 -2
  22. data/lib/rainbows/event_machine.rb +26 -24
  23. data/lib/rainbows/fiber/base.rb +30 -40
  24. data/lib/rainbows/fiber/body.rb +34 -0
  25. data/lib/rainbows/fiber/io.rb +28 -8
  26. data/lib/rainbows/fiber/queue.rb +1 -0
  27. data/lib/rainbows/fiber/rev.rb +4 -2
  28. data/lib/rainbows/fiber.rb +1 -0
  29. data/lib/rainbows/fiber_pool.rb +2 -2
  30. data/lib/rainbows/fiber_spawn.rb +2 -2
  31. data/lib/rainbows/http_response.rb +20 -31
  32. data/lib/rainbows/http_server.rb +3 -4
  33. data/lib/rainbows/max_body.rb +1 -0
  34. data/lib/rainbows/never_block/event_machine.rb +2 -0
  35. data/lib/rainbows/never_block.rb +5 -4
  36. data/lib/rainbows/queue_pool.rb +1 -0
  37. data/lib/rainbows/response/body.rb +119 -0
  38. data/lib/rainbows/response.rb +43 -0
  39. data/lib/rainbows/rev/client.rb +79 -9
  40. data/lib/rainbows/rev/core.rb +4 -0
  41. data/lib/rainbows/rev/deferred_response.rb +1 -44
  42. data/lib/rainbows/rev/heartbeat.rb +1 -0
  43. data/lib/rainbows/rev/master.rb +1 -0
  44. data/lib/rainbows/rev/sendfile.rb +26 -0
  45. data/lib/rainbows/rev/thread.rb +2 -1
  46. data/lib/rainbows/rev.rb +2 -0
  47. data/lib/rainbows/rev_fiber_spawn.rb +3 -1
  48. data/lib/rainbows/rev_thread_pool.rb +7 -5
  49. data/lib/rainbows/rev_thread_spawn.rb +2 -2
  50. data/lib/rainbows/revactor.rb +146 -146
  51. data/lib/rainbows/sendfile.rb +10 -21
  52. data/lib/rainbows/server_token.rb +39 -0
  53. data/lib/rainbows/stream_file.rb +14 -0
  54. data/lib/rainbows/tee_input.rb +1 -0
  55. data/lib/rainbows/thread_pool.rb +12 -7
  56. data/lib/rainbows/thread_spawn.rb +2 -3
  57. data/lib/rainbows/writer_thread_pool.rb +13 -7
  58. data/lib/rainbows/writer_thread_spawn.rb +12 -9
  59. data/lib/rainbows.rb +16 -45
  60. data/rainbows.gemspec +8 -8
  61. data/t/.gitignore +1 -1
  62. data/t/GNUmakefile +26 -16
  63. data/t/README +1 -1
  64. data/t/async-response-no-autochunk.ru +0 -1
  65. data/t/async-response.ru +0 -1
  66. data/t/cramp/rainsocket.ru +26 -0
  67. data/t/fork-sleep.ru +0 -1
  68. data/t/my-tap-lib.sh +3 -2
  69. data/t/simple-http_ActorSpawn.ru +9 -0
  70. data/t/t0009-broken-app.sh +1 -1
  71. data/t/t0009.ru +0 -1
  72. data/t/t0011-close-on-exec-set.sh +1 -1
  73. data/t/t0015-working_directory.sh +56 -0
  74. data/t/t0016-onenine-encoding-is-tricky.sh +28 -0
  75. data/t/t0016.rb +15 -0
  76. data/t/t0020-large-sendfile-response.sh +141 -0
  77. data/t/t0300-async_sinatra.sh +0 -6
  78. data/t/t0501-cramp-rainsocket.sh +38 -0
  79. data/t/t9001-sendfile-to-path.sh +5 -4
  80. data/t/t9002-server-token.sh +37 -0
  81. data/t/t9002.ru +4 -0
  82. data/t/test-lib.sh +1 -1
  83. data/t/test_isolate.rb +14 -11
  84. metadata +87 -18
data/.document CHANGED
@@ -12,3 +12,4 @@ TUNING
12
12
  vs_Unicorn
13
13
  Summary
14
14
  Test_Suite
15
+ Static_Files
data/.manifest CHANGED
@@ -18,6 +18,7 @@ NEWS
18
18
  README
19
19
  Rakefile
20
20
  SIGNALS
21
+ Static_Files
21
22
  Summary
22
23
  TODO
23
24
  TUNING
@@ -27,6 +28,8 @@ lib/rainbows.rb
27
28
  lib/rainbows/actor_spawn.rb
28
29
  lib/rainbows/app_pool.rb
29
30
  lib/rainbows/base.rb
31
+ lib/rainbows/byte_slice.rb
32
+ lib/rainbows/configurator.rb
30
33
  lib/rainbows/const.rb
31
34
  lib/rainbows/dev_fd_response.rb
32
35
  lib/rainbows/error.rb
@@ -34,6 +37,7 @@ lib/rainbows/ev_core.rb
34
37
  lib/rainbows/event_machine.rb
35
38
  lib/rainbows/fiber.rb
36
39
  lib/rainbows/fiber/base.rb
40
+ lib/rainbows/fiber/body.rb
37
41
  lib/rainbows/fiber/io.rb
38
42
  lib/rainbows/fiber/queue.rb
39
43
  lib/rainbows/fiber/rev.rb
@@ -45,18 +49,23 @@ lib/rainbows/max_body.rb
45
49
  lib/rainbows/never_block.rb
46
50
  lib/rainbows/never_block/event_machine.rb
47
51
  lib/rainbows/queue_pool.rb
52
+ lib/rainbows/response.rb
53
+ lib/rainbows/response/body.rb
48
54
  lib/rainbows/rev.rb
49
55
  lib/rainbows/rev/client.rb
50
56
  lib/rainbows/rev/core.rb
51
57
  lib/rainbows/rev/deferred_response.rb
52
58
  lib/rainbows/rev/heartbeat.rb
53
59
  lib/rainbows/rev/master.rb
60
+ lib/rainbows/rev/sendfile.rb
54
61
  lib/rainbows/rev/thread.rb
55
62
  lib/rainbows/rev_fiber_spawn.rb
56
63
  lib/rainbows/rev_thread_pool.rb
57
64
  lib/rainbows/rev_thread_spawn.rb
58
65
  lib/rainbows/revactor.rb
59
66
  lib/rainbows/sendfile.rb
67
+ lib/rainbows/server_token.rb
68
+ lib/rainbows/stream_file.rb
60
69
  lib/rainbows/tee_input.rb
61
70
  lib/rainbows/thread_pool.rb
62
71
  lib/rainbows/thread_spawn.rb
@@ -82,6 +91,7 @@ t/bin/unused_listen
82
91
  t/bin/utee
83
92
  t/content-md5.ru
84
93
  t/cramp/README
94
+ t/cramp/rainsocket.ru
85
95
  t/cramp/streaming.ru
86
96
  t/env.ru
87
97
  t/env_rack_env.ru
@@ -92,6 +102,7 @@ t/my-tap-lib.sh
92
102
  t/rack-fiber_pool/app.ru
93
103
  t/sha1-random-size.ru
94
104
  t/sha1.ru
105
+ t/simple-http_ActorSpawn.ru
95
106
  t/simple-http_Base.ru
96
107
  t/simple-http_EventMachine.ru
97
108
  t/simple-http_FiberPool.ru
@@ -125,6 +136,10 @@ t/t0011-close-on-exec-set.sh
125
136
  t/t0012-spurious-wakeups-quiet.sh
126
137
  t/t0013-reload-bad-config.sh
127
138
  t/t0014-config-conflict.sh
139
+ t/t0015-working_directory.sh
140
+ t/t0016-onenine-encoding-is-tricky.sh
141
+ t/t0016.rb
142
+ t/t0020-large-sendfile-response.sh
128
143
  t/t0100-rack-input-hammer-chunked.sh
129
144
  t/t0100-rack-input-hammer-content-length.sh
130
145
  t/t0101-rack-input-trailer.sh
@@ -138,12 +153,15 @@ t/t0300-async_sinatra.sh
138
153
  t/t0400-em-async-app.sh
139
154
  t/t0401-em-async-tailer.sh
140
155
  t/t0500-cramp-streaming.sh
156
+ t/t0501-cramp-rainsocket.sh
141
157
  t/t0600-rack-fiber_pool.sh
142
158
  t/t0700-app-deferred.sh
143
159
  t/t9000-rack-app-pool.sh
144
160
  t/t9000.ru
145
161
  t/t9001-sendfile-to-path.sh
146
162
  t/t9001.ru
163
+ t/t9002-server-token.sh
164
+ t/t9002.ru
147
165
  t/test-lib.sh
148
166
  t/test_isolate.rb
149
167
  t/worker-follows-master-to-death.ru