1. * Package: www-servers/thin-1.3.1
  2. * Repository: gentoo
  3. * Maintainer: ruby@gentoo.org
  4. * USE: abi_x86_64 amd64 doc elibc_glibc kernel_linux multilib ruby_targets_ruby18 ruby_targets_ruby19 test userland_GNU
  5. * FEATURES: sandbox test userpriv usersandbox
  6. Installed LAPACK for library directory lib64
  7. [1] reference *
  8. Installed BLAS for library directory lib64
  9. [1] reference *
  10. Installed CBLAS for library directory lib64
  11. [1] gsl
  12. [2] reference *
  13. >>> Unpacking source...
  14. * Running unpack phase for all ...
  15. * Unpacking .gem file... ...
  16. [ ok ]
  17. * Uncompressing metadata ...
  18. [ ok ]
  19. * Unpacking data.tar.gz ...
  20. [ ok ]
  21. >>> Source unpacked in /tmp/portage/www-servers/thin-1.3.1/work
  22. >>> Preparing source in /tmp/portage/www-servers/thin-1.3.1/work ...
  23. * Running prepare phase for all ...
  24. * Running source copy phase for ruby18 ...
  25. * Running source copy phase for ruby19 ...
  26. >>> Source prepared.
  27. >>> Configuring source in /tmp/portage/www-servers/thin-1.3.1/work ...
  28. >>> Source configured.
  29. >>> Compiling source in /tmp/portage/www-servers/thin-1.3.1/work ...
  30. * Running compile phase for ruby18 ...
  31. Invalid gemspec in [/usr/lib64/ruby/gems/1.8/specifications/ZenTest-4.8.4.gemspec]: Illformed requirement ["< 2.1, >= 1.8"]
  32. rake/gempackagetask is deprecated. Use rubygems/package_task instead
  33. WARNING: 'require 'rake/rdoctask'' is deprecated. Please use 'require 'rdoc/task' (in RDoc 2.4.2+)' instead.
  34. at /usr/lib64/ruby/gems/1.8/gems/rake-0.9.2.2/lib/rake/rdoctask.rb
  35. mkdir -p tmp/x86_64-linux/thin_parser/1.8.7
  36. cd tmp/x86_64-linux/thin_parser/1.8.7
  37. /usr/bin/ruby18 -I. ../../../../ext/thin_parser/extconf.rb
  38. checking for main() in -lc... yes
  39. creating Makefile
  40. cd -
  41. cd tmp/x86_64-linux/thin_parser/1.8.7
  42. gmake
  43. x86_64-pc-linux-gnu-gcc -I. -I. -I/usr/lib64/ruby/1.8/x86_64-linux -I../../../../ext/thin_parser -fPIC -O2 -pipe -ggdb -march=native -ftracer -frecord-gcc-switches -fno-strict-aliasing -fPIC -c ../../../../ext/thin_parser/parser.c
  44. x86_64-pc-linux-gnu-gcc -I. -I. -I/usr/lib64/ruby/1.8/x86_64-linux -I../../../../ext/thin_parser -fPIC -O2 -pipe -ggdb -march=native -ftracer -frecord-gcc-switches -fno-strict-aliasing -fPIC -c ../../../../ext/thin_parser/thin.c
  45. x86_64-pc-linux-gnu-gcc -shared -o thin_parser.so parser.o thin.o -L. -L/usr/lib64 -Wl,-R/usr/lib64 -L. -Wl,-O1 -Wl,--as-needed -rdynamic -Wl,-export-dynamic -Wl,--no-undefined -Wl,-R -Wl,/usr/lib64 -L/usr/lib64 -lruby18 -lc -lpthread -lrt -ldl -lcrypt -lm -lc
  46. cd -
  47. install -c tmp/x86_64-linux/thin_parser/1.8.7/thin_parser.so lib/thin_parser.so
  48. * Running compile phase for ruby19 ...
  49. Invalid gemspec in [/usr/lib64/ruby/gems/1.9.1/specifications/ZenTest-4.8.4.gemspec]: Illformed requirement ["< 2.1, >= 1.8"]
  50. rake/gempackagetask is deprecated. Use rubygems/package_task instead
  51. WARNING: 'require 'rake/rdoctask'' is deprecated. Please use 'require 'rdoc/task' (in RDoc 2.4.2+)' instead.
  52. at /usr/lib64/ruby/gems/1.9.1/gems/rake-0.9.2.2/lib/rake/rdoctask.rb
  53. mkdir -p tmp/x86_64-linux/thin_parser/1.9.3
  54. cd tmp/x86_64-linux/thin_parser/1.9.3
  55. /usr/bin/ruby19 -I. ../../../../ext/thin_parser/extconf.rb
  56. checking for main() in -lc... yes
  57. creating Makefile
  58. cd -
  59. cd tmp/x86_64-linux/thin_parser/1.9.3
  60. gmake
  61. compiling ../../../../ext/thin_parser/parser.c
  62. compiling ../../../../ext/thin_parser/thin.c
  63. ../../../../ext/thin_parser/thin.c: In function 'http_field':
  64. ../../../../ext/thin_parser/thin.c:82:3: warning: format not a string literal and no format arguments [-Wformat-security]
  65. ../../../../ext/thin_parser/thin.c:83:3: warning: format not a string literal and no format arguments [-Wformat-security]
  66. ../../../../ext/thin_parser/thin.c: In function 'request_uri':
  67. ../../../../ext/thin_parser/thin.c:114:3: warning: format not a string literal and no format arguments [-Wformat-security]
  68. ../../../../ext/thin_parser/thin.c: In function 'fragment':
  69. ../../../../ext/thin_parser/thin.c:125:3: warning: format not a string literal and no format arguments [-Wformat-security]
  70. ../../../../ext/thin_parser/thin.c: In function 'request_path':
  71. ../../../../ext/thin_parser/thin.c:136:3: warning: format not a string literal and no format arguments [-Wformat-security]
  72. ../../../../ext/thin_parser/thin.c: In function 'query_string':
  73. ../../../../ext/thin_parser/thin.c:148:3: warning: format not a string literal and no format arguments [-Wformat-security]
  74. ../../../../ext/thin_parser/thin.c: In function 'Thin_HttpParser_execute':
  75. ../../../../ext/thin_parser/thin.c:337:5: warning: format not a string literal and no format arguments [-Wformat-security]
  76. linking shared-object thin_parser.so
  77. cd -
  78. install -c tmp/x86_64-linux/thin_parser/1.9.3/thin_parser.so lib/thin_parser.so
  79. * Running compile phase for all ...
  80. >>> Source compiled.
  81. * Running test phase for ruby18 ...
  82. Invalid gemspec in [/usr/lib64/ruby/gems/1.8/specifications/ZenTest-4.8.4.gemspec]: Illformed requirement ["< 2.1, >= 1.8"]
  83. rake/gempackagetask is deprecated. Use rubygems/package_task instead
  84. WARNING: 'require 'rake/rdoctask'' is deprecated. Please use 'require 'rdoc/task' (in RDoc 2.4.2+)' instead.
  85. at /usr/lib64/ruby/gems/1.8/gems/rake-0.9.2.2/lib/rake/rdoctask.rb
  86. Invalid gemspec in [/usr/lib64/ruby/gems/1.8/specifications/ZenTest-4.8.4.gemspec]: Illformed requirement ["< 2.1, >= 1.8"]
  87. which: no swiftiply in (/usr/lib64/portage/bin/ebuild-helpers:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.7.2:/opt/dmd/bin:/usr/lib/plan9/bin:/opt/c3-4:/usr/x86_64-pc-linux-gnu/gnat-gcc-bin/4.5:/usr/libexec/gnat-gcc/x86_64-pc-linux-gnu/4.5:/usr/libexec/gpc/x86_64-pc-linux-gnu/3.4:/opt/nvidia-cg-toolkit/bin:/opt/tivoli/tsm/client/ba/bin:/opt/eagle-5.11.0/bin:/opt/aws-as-tools/bin:/opt/aws-elb-tools/bin:/opt/aws-iam-tools/bin:/opt/cuda/bin:/opt/ec2-ami-tools/bin:/opt/ec2-api-tools/bin)
  88. Rails 2.0.2 is required to run the Rails adapter specs
  89. Example disabled: should parse absolute request URI
  90. Ignoring Server on Swiftiply specs, gem install swiftiply to run
  91. Thin::Backends::SwiftiplyClient
  92. - should connect
  93. - should disconnect
  94. Thin::SwiftiplyConnection
  95. - should be persistent
  96. - should send handshake on connection_completed
  97. - should reconnect on unbind
  98. - should not reconnect when not running
  99. - should have a host_ip
  100. - should generate swiftiply_handshake based on key
  101. Thin::Backends::TcpServer
  102. - should not use epoll
  103. - should use epoll
  104. - should connect
  105. - should disconnect
  106. Thin::Backends::UnixServer
  107. - should connect
  108. - should disconnect
  109. - should remove socket file on close
  110. Thin::UnixConnection
  111. - should return 127.0.0.1 as remote_address
  112. Thin::Command
  113. - should shellify command
  114. - should shellify Array argument to multiple parameters
  115. - should convert _ to - in option name
  116. Thin::Connection
  117. - should parse on receive_data
  118. - should close connection on InvalidRequest error in receive_data
  119. - should process when parsing complete
  120. - should process
  121. - should rescue error in process
  122. - should rescue Timeout error in process
  123. - should not return HTTP_X_FORWARDED_FOR as remote_address
  124. - should return nil on error retreiving remote_address
  125. - should return nil on nil get_peername
  126. - should return nil on empty get_peername
  127. - should return remote_address
  128. - should not be persistent
  129. - should be persistent when response is and allowed
  130. - should not be persistent when response is but not allowed
  131. - should set request env as rack.multithread
  132. - should set as threaded when app.deferred? is true
  133. - should not set as threaded when app.deferred? is false
  134. - should not set as threaded when app do not respond to deferred?
  135. Thin::Controllers::Cluster with host and port
  136. - should include port number in file names
  137. - should call each server
  138. - should start on each port
  139. - should stop on each port
  140. Thin::Controllers::Cluster with UNIX socket
  141. - should include socket number in file names
  142. - should exclude :address and :port options
  143. - should call each server
  144. - should start each server
  145. - should stop each server
  146. Thin::Controllers::Cluster controlling only one server
  147. - should call only specified server
  148. - should start only specified server
  149. Thin::Controllers::Cluster controlling only one server with UNIX socket
  150. - should call only specified server
  151. Thin::Controllers::Cluster controlling only one server, by sequence number
  152. - should call only specified server
  153. - should start only specified server
  154. Thin::Controllers::Cluster with Swiftiply
  155. - should call each server
  156. - should start each server
  157. - should stop each server
  158. Thin::Controllers::Cluster rolling restart
  159. - should restart servers one by one
  160. Thin::Controllers::Controller start
  161. - should configure server
  162. - should start as daemon
  163. - should configure Rails adapter
  164. - should mount app under :prefix
  165. - should mount Stats adapter under :stats
  166. - should load app from Rack config
  167. - should load app from ruby file
  168. - should throwup if rackup is not a .ru or .rb file
  169. - should set server as threaded
  170. - should set RACK_ENV
  171. Thin::Controllers::Controller
  172. - should stop
  173. - should restart
  174. - should write configuration file
  175. Thin::Controllers::Service
  176. - should call command for each config file
  177. - should create /etc/init.d/thin file when calling install
  178. - should create /etc/thin dir when calling install
  179. - should include specified path in /etc/init.d/thin script
  180. Thin::Headers
  181. - should allow duplicate on some fields
  182. - should overwrite value on non duplicate fields
  183. - should output to string
  184. - should ignore nil values
  185. - should format Time values correctly
  186. Thin::Logging
  187. - should output debug when set to true
  188. - should output trace when set to true
  189. - should not output when silenced
  190. - should not output when silenced as instance method
  191. - should be usable as module functions
  192. - should print errors to STDERR
  193. Rack::Adapter
  194. - should load Rack app from config
  195. - should guess Rack app from dir
  196. - should guess rails app from dir
  197. - should return nil when can't guess from dir
  198. - should load Rack adapter
  199. - should load Rails adapter
  200. - should load File adapter
  201. - should raise error when adapter can't be found
  202. Rack::Adapter::Rails Adapter version
  203. - should use Rack based adapter when Rails = 2.2.3
  204. - should not use Rack based adapter when Rails < 2.2.3
  205. - should not use Rack based adapter when Rails = 1.2.3
  206. - should use Rack based adapter when Rails = 3.0.0
  207. Thin::Request legacy Mongrel tests
  208. - should raise error on large header names
  209. - should raise error on large mangled field values
  210. - should raise error on big fat ugly headers
  211. - should raise error on random garbage
  212. Thin::Request parser
  213. - should include basic headers
  214. - should not prepend HTTP_ to Content-Type and Content-Length
  215. - should raise error on invalid request line
  216. - should support fragment in uri
  217. - should parse path with query string
  218. - should parse headers from GET request
  219. - should parse POST request with data
  220. - should not fuck up on stupid fucked IE6 headers
  221. - shoud accept long query string
  222. - should parse even with stupid Content-Length
  223. - should parse ie6 urls
  224. - should fails on heders larger then MAX_HEADER
  225. - should default SERVER_NAME to localhost
  226. - should normalize http_fields
  227. - should parse PATH_INFO with semicolon
  228. - should parse IE7 badly encoded URL
  229. Thin::Request persistent
  230. - should not assume that a persistent connection is maintained for HTTP version 1.0
  231. - should assume that a persistent connection is maintained for HTTP version 1.0 when specified
  232. - should maintain a persistent connection for HTTP/1.1 client
  233. - should maintain a persistent connection for HTTP/1.1 client by default
  234. - should not maintain a persistent connection for HTTP/1.1 client when Connection header include close
  235. Thin::Request processing
  236. - should parse in chunks
  237. - should move body to tempfile when too big
  238. - should delete body tempfile when closing
  239. - should raise error when header is too big
  240. - should set body external encoding to ASCII_8BIT (PENDING: Ruby 1.9 compatible implementations only)
  241. Thin::Response
  242. - should output headers
  243. - should include server name header
  244. - should output head
  245. - should allow duplicates in headers
  246. - should parse simple header values
  247. - should parse multiline header values in several headers
  248. - should ignore nil headers
  249. - should output body
  250. - should output String body
  251. - should not be persistent by default
  252. - should not be persistent when no Content-Length
  253. - should be persistent when the status code implies it should stay open
  254. - should be persistent when specified
  255. - should be closeable
  256. Thin::Runner
  257. - should parse options
  258. - should parse specified command
  259. - should abort on unknow command
  260. - should exit on empty command
  261. - should use Controller when controlling a single server
  262. - should use Cluster controller when controlling multiple servers
  263. - should default to single server controller
  264. - should consider as a cluster with :servers option
  265. - should consider as a cluster with :only option
  266. - should warn when require a rack config file
  267. - should require file
  268. - should remember requires
  269. - should remember debug options
  270. - should default debug and trace to false
  271. Thin::Runner with config file
  272. - should load options from file with :config option
  273. - should change directory after loading config
  274. Thin::Runner service
  275. - should use Service controller when controlling all servers
  276. - should call install with arguments
  277. - should call install without arguments
  278. Thin::Server app builder
  279. - should build app from constructor
  280. - should build app from builder block
  281. - should use middlewares in builder block
  282. - should work with Rack url mapper
  283. Thin::Server robustness
  284. - should not crash when header too large (FAILED - 1)
  285. Thin::Server stopping
  286. - should wait for current requests before soft stopping
  287. - should not accept new requests when soft stopping
  288. - should drop current requests when hard stopping
  289. Thin::Server on UNIX domain socket
  290. - should accept GET request
  291. - should retreive remote address
  292. - should remove socket file after server stops
  293. Thin::Server
  294. - should set maximum_connections size
  295. - should set lower maximum_connections size when too large
  296. - should default to non-threaded
  297. - should set backend to threaded
  298. Thin::Server initialization
  299. - should set host and port
  300. - should set socket
  301. - should set host, port and app
  302. - should set socket and app
  303. - should set socket, nil and app
  304. - should set host, port and backend
  305. - should set host, port, app and backend
  306. - should set port as string
  307. - should not register signals w/ :signals => false
  308. Daemonizing
  309. - should have a pid file
  310. - should create a pid file
  311. - should redirect stdio to a log file
  312. - should change privilege
  313. - should kill process in pid file
  314. - should send kill signal if timeout
  315. - should restart
  316. - should ignore if no restart block specified
  317. - should not restart when not running
  318. - should exit and raise if pid file already exist
  319. - should should delete pid file if stale
  320. Pending:
  321. Thin::Request processing should set body external encoding to ASCII_8BIT (Ruby 1.9 compatible implementations only)
  322. ./spec/request/processing_spec.rb:46
  323. 1)
  324. Errno::ETIMEDOUT in 'Thin::Server robustness should not crash when header too large'
  325. Connection timed out
  326. ./spec/server/robustness_spec.rb:19:in `write'
  327. ./spec/server/robustness_spec.rb:19:
  328. ./spec/server/robustness_spec.rb:18:in `times'
  329. ./spec/server/robustness_spec.rb:18:
  330. ./spec/server/robustness_spec.rb:12:in `times'
  331. ./spec/server/robustness_spec.rb:12:
  332. /usr/lib64/ruby/1.8/timeout.rb:53:in `timeout'
  333. Finished in 997.284735 seconds
  334. 193 examples, 1 failure, 1 pending
  335. rake aborted!
  336. Command /usr/bin/ruby18 -I"lib" "/usr/lib64/ruby/gems/1.8/gems/rspec-1.3.2/bin/spec" "spec/backends/swiftiply_client_spec.rb" "spec/backends/tcp_server_spec.rb" "spec/backends/unix_server_spec.rb" "spec/command_spec.rb" "spec/connection_spec.rb" "spec/controllers/cluster_spec.rb" "spec/controllers/controller_spec.rb" "spec/controllers/service_spec.rb" "spec/headers_spec.rb" "spec/logging_spec.rb" "spec/rack/loader_spec.rb" "spec/rack/rails_adapter_spec.rb" "spec/request/mongrel_spec.rb" "spec/request/parser_spec.rb" "spec/request/persistent_spec.rb" "spec/request/processing_spec.rb" "spec/response_spec.rb" "spec/runner_spec.rb" "spec/server/builder_spec.rb" "spec/server/robustness_spec.rb" "spec/server/stopping_spec.rb" "spec/server/swiftiply_spec.rb" "spec/server/unix_socket_spec.rb" "spec/server_spec.rb" "spec/daemonizing_spec.rb" -fs -c failed
  337. Tasks: TOP => spec
  338. (See full trace by running task with --trace)
  339. * ERROR: www-servers/thin-1.3.1 failed (test phase):
  340. * tests failed
  341. *
  342. * Call stack:
  343. * ebuild.sh, line 93: Called src_test
  344. * environment, line 4708: Called ruby-ng_src_test
  345. * environment, line 4387: Called _ruby_each_implementation 'each_ruby_test'
  346. * environment, line 668: Called _ruby_invoke_environment 'ruby18' 'each_ruby_test'
  347. * environment, line 720: Called each_ruby_test
  348. * environment, line 1026: Called each_fakegem_test
  349. * environment, line 1003: Called die
  350. * The specific snippet of code:
  351. * ${RUBY} -S rake ${RUBY_FAKEGEM_TASK_TEST} || die "tests failed"
  352. *
  353. * If you need support, post the output of `emerge --info '=www-servers/thin-1.3.1'`,
  354. * the complete build log and the output of `emerge -pqv '=www-servers/thin-1.3.1'`.
  355. !!! When you file a bug report, please include the following information:
  356. GENTOO_VM= CLASSPATH="/usr/libexec/ccp4/bin:/usr/libexec/ccp4/bin:" JAVA_HOME="/etc/java-config-2/current-system-vm"
  357. JAVACFLAGS="" COMPILER=""
  358. and of course, the output of emerge --info
  359. * The complete build log is located at '/var/log/portage/www-servers:thin-1.3.1:20130204-211618.log'.
  360. * For convenience, a symlink to the build log is located at '/tmp/portage/www-servers/thin-1.3.1/temp/build.log'.
  361. * The ebuild environment file is located at '/tmp/portage/www-servers/thin-1.3.1/temp/environment'.
  362. * Working directory: '/tmp/portage/www-servers/thin-1.3.1/work/ruby18/thin-1.3.1'
  363. * S: '/tmp/portage/www-servers/thin-1.3.1/work/ruby18/thin-1.3.1'
  364. >>> Install thin-1.3.1 into /tmp/portage/www-servers/thin-1.3.1/image/ category www-servers
  365. * Running install phase for ruby18 ...
  366. Invalid gemspec in [/usr/lib64/ruby/gems/1.8/specifications/ZenTest-4.8.4.gemspec]: Illformed requirement ["< 2.1, >= 1.8"]
  367. * Running install phase for ruby19 ...
  368. Invalid gemspec in [/usr/lib64/ruby/gems/1.9.1/specifications/ZenTest-4.8.4.gemspec]: Illformed requirement ["< 2.1, >= 1.8"]
  369. * Running install phase for all ...
  370. *
  371. * Thin is now shipped with init scripts.
  372. * The default script (/etc/init.d/thin) will start all servers that have
  373. * configuration files in /etc/thin/. You can symlink the init script to
  374. * files of the format 'thin.SERVER' to be able to start individual servers.
  375. * See /etc/conf.d/thin for more configuration options.
  376. *
  377. * Running check install phase for ruby18 ...
  378. * Running check install phase for ruby19 ...
  379. >>> Completed installing thin-1.3.1 into /tmp/portage/www-servers/thin-1.3.1/image/
  380. strip: x86_64-pc-linux-gnu-strip --strip-unneeded -R .comment -R .GCC.command.line
  381. usr/lib64/ruby/gems/1.9.1/gems/thin-1.3.1/lib/thin_parser.so
  382. usr/lib64/ruby/gems/1.8/gems/thin-1.3.1/lib/thin_parser.so