From: Jeremy Evans Date: 2011-07-30T03:23:14+09:00 Subject: [ruby-core:38600] [Ruby 1.9 - Feature #5097] Supported platforms of Ruby 1.9.3 Issue #5097 has been updated by Jeremy Evans. File ruby193.diff added > I can't understand why OpenBSD fails the test. It looks like the socket failure on OpenBSD is because in Socket.udp_server_recv, you are adding the pktinfo in the sendmsg call, and OpenBSD appears not to like that in all cases, specifically when you are sending from a link-local IPv6 address to the same link-local IPv6 address on a different port. It causes the client to not receive the reply, which makes the test fail since the response is not received within 10 seconds. I think adding the pktinfo is unnecessary in the sendmsg call (the server needs pktinfo to know the address of the client, but the client must already know the address of the server in order to communicate), so I removed it. This causes the test to pass, and still should work with dynamic IPv6 address changes. I've attached a smaller updated patch with four fixes: 1) Use "Thread.new{Thread.pass while true}" instead of "Thread.new{loop{Thread.pass}}" in the thread bootstrap tests, as otherwise they hang on OpenBSD. This works around the issue instead of fixing it, but it's not like "Thread.new{loop{Thread.pass}}" will be used in regular code. 2) Remove the unused pkinfo_sockets hash from Socket.udp_server_sockets. 3) Don't add the pktinfo to the sendmsg call in Socket.udp_server_recv. 4) Fix a couple of bugs in lib/test/unit.rb that assume @workers is an array when it can be nil. The other patches I'm using are: 1) Eric Wong's thread patch 2) The patches for the rake issue that a separate ticket was created for (5114), with the Regexp.quote changes recommended by znz. With these patches, make check has no failures on errors on OpenBSD. ---------------------------------------- Feature #5097: Supported platforms of Ruby 1.9.3 http://redmine.ruby-lang.org/issues/5097 Author: Yui NARUSE Status: Assigned Priority: Normal Assignee: Yui NARUSE Category: Target version: 1.9.3 Let's decide the supported platforms. == Background http://redmine.ruby-lang.org/projects/ruby-19/wiki/SupportedPlatforms == Process If you want to support a platform, please declare. But when a platform dependent bug is reported, it will be assigned to you. == Current Maintainer mswin32, mswin64 (Microsoft Windows): NAKAMURA Usaku (usa) mingw32 (Minimalist GNU for Windows): Nobuyoshi Nakada (nobu) IA-64 (Debian GNU/Linux): TAKANO Mitsuhiro (takano32) Symbian OS: Alexander Zavorine (azov) AIX: Yutaka Kanemoto (kanemoto) FreeBSD: Akinori MUSHA (knu) Solaris: Naohisa Goto RHEL, CentOS KOSAKI Motohiro Platforms which doesn't have a maintainer are following: * Debian * Ubuntu * Mac OS X (LLVM related issues) * cygwin (don't work) * NetBSD (works) * OpenBSD (it may not work) * DragonFlyBSD (don't work) -- http://redmine.ruby-lang.org