Ruby Issue Tracking System: Issues
https://bugs.ruby-lang.org/
https://bugs.ruby-lang.org/favicon.ico?1711330511
2022-07-11T02:37:51Z
Ruby Issue Tracking System
Redmine
Ruby master - Bug #18906 (Closed): coverage failed on GItHub Actions
https://bugs.ruby-lang.org/issues/18906
2022-07-11T02:37:51Z
znz (Kazuhiro NISHIYAMA)
<p>coverage failed on GItHub Actions since <a href="https://github.com/ruby/actions/actions/runs/2486933939" class="external">https://github.com/ruby/actions/actions/runs/2486933939</a><br>
(previous <a href="https://github.com/ruby/actions/actions/runs/2486176425" class="external">https://github.com/ruby/actions/actions/runs/2486176425</a> is passed)</p>
<p>A reproduce test is attached.</p>
<pre><code> 1) Failure:
TestCoverage#test_coverage_ensure_if_return [/home/user/ruby/test/coverage/test_coverage.rb:193]:
pid 45865 exit 1
| /tmp/d20220710-45855-exgg7s/test.rb:5:in `flush': no implicit conversion of false into Integer (TypeError)
| from /tmp/d20220710-45855-exgg7s/test.rb:8:in `<top (required)>'
| from -:3:in `require'
| from -:3:in `<main>'
</code></pre>
Ruby master - Bug #18789 (Feedback): make test-bundled-gems failed after make install
https://bugs.ruby-lang.org/issues/18789
2022-05-18T01:01:41Z
znz (Kazuhiro NISHIYAMA)
<p>On snapshot-master CI, <code>make test-bundled-gems</code> failed.</p>
<p><a href="https://github.com/ruby/actions/runs/6476724416?check_suite_focus=true#step:17:118" class="external">https://github.com/ruby/actions/runs/6476724416?check_suite_focus=true#step:17:118</a></p>
<pre><code>./tool/test-bundled-gems.rb:10:in `realpath': No such file or directory @ realpath_rec - /home/runner/work/actions/actions/snapshot-master/.bundle/bin/rake (Errno::ENOENT)
from ./tool/test-bundled-gems.rb:10:in `<main>'
make: *** [uncommon.mk:1410: test-bundled-gems-run] Error 1
</code></pre>
<p>I investigated it, it causes after <code>make install</code>.</p>
<p>How to reproduce:</p>
<ol>
<li>Run configure</li>
<li><code>make install</code></li>
<li><code>make test-bundled-gems</code></li>
</ol>
<p>or</p>
<p>In already built directory</p>
<ol>
<li><code>rm -rf path/to/srcdir/.bundle</code></li>
<li><code>make install</code></li>
<li><code>make test-bundled-gems</code></li>
</ol>
<p>If I run <code>rm -rf path/to/srcdir/.bundle</code> and <code>make test-bundled-gems</code> without <code>make install</code>, <code>.bundle/bin/rake</code> exists.</p>
Ruby master - Bug #18643 (Closed): test-bundler failed on ruby_3_1 CI
https://bugs.ruby-lang.org/issues/18643
2022-03-18T04:25:49Z
znz (Kazuhiro NISHIYAMA)
<p>I think that this spec has failed since newer bundler released.</p>
<p><a href="https://github.com/ruby/actions/runs/5590419280?check_suite_focus=true#step:18:199" class="external">https://github.com/ruby/actions/runs/5590419280?check_suite_focus=true#step:18:199</a></p>
<pre><code>
expected "Running `bundle update --bundler \"> 0.a\"` with bundler 2.3.7\nHTTP GET https://index.rubygems.org/...ctions/actions/snapshot-ruby_3_1/tmp/4/gems/system/specifications/rack-1.2.gemspec\nBundle updated!" to include "Using bundler 2.3.7\n"
Diff:
@@ -1,19 +1,37 @@
-Using bundler 2.3.7\n
+Running `bundle update --bundler "> 0.a"` with bundler 2.3.7
+HTTP GET https://index.rubygems.org/versions
+HTTP 200 OK https://index.rubygems.org/versions
+Fetching gem metadata from https://rubygems.org/
+Looking up gems ["bundler"]
+HTTP GET https://index.rubygems.org/info/bundler
+HTTP 200 OK https://index.rubygems.org/info/bundler
+Updating bundler to 2.3.9.
+Fetching bundler 2.3.9
+Installing bundler 2.3.9
+Running `bundle update --bundler "> 0.a"` with bundler 2.3.9
+Found no changes, using resolution from the lockfile
+Using bundler 2.3.9
+0: bundler (2.3.9) from /home/runner/work/actions/actions/snapshot-ruby_3_1/tmp/4/gems/system/specifications/bundler-2.3.9.gemspec
+Using prints_loaded_gems 1.0
+0: prints_loaded_gems (1.0) from /home/runner/work/actions/actions/snapshot-ruby_3_1/tmp/4/gems/system/specifications/prints_loaded_gems-1.0.gemspec
+Using rack 1.2
+0: rack (1.2) from /home/runner/work/actions/actions/snapshot-ruby_3_1/tmp/4/gems/system/specifications/rack-1.2.gemspec
+Bundle updated!
# ./spec/bundler/commands/binstubs_spec.rb:229:in `block (5 levels) in <top (required)>'
# ./spec/bundler/spec_helper.rb:101:in `block (4 levels) in <top (required)>'
# ./spec/bundler/spec_helper.rb:101:in `block (3 levels) in <top (required)>'
# ./spec/bundler/support/helpers.rb:350:in `block in with_gem_path_as'
# ./spec/bundler/support/helpers.rb:364:in `without_env_side_effects'
# ./spec/bundler/support/helpers.rb:345:in `with_gem_path_as'
# ./spec/bundler/spec_helper.rb:100:in `block (2 levels) in <top (required)>'
</code></pre>
<p>It can reproduce with a small example.</p>
<p>Spec expects 3.0's behavior:</p>
<pre><code>$ rbenv local 3.0.3
$ bundle init
Writing new Gemfile to /tmp/x/Gemfile
$ bundle i
The Gemfile specifies no dependencies
Resolving dependencies...
Bundle complete! 0 Gemfile dependencies, 1 gem now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.
$ bundle update --bundler "> 0.a"
The Gemfile specifies no dependencies
Bundle updated!
$
</code></pre>
<p>Actual 3.1's behavior:</p>
<pre><code>$ rbenv local 3.1.1
$ bundle init
Writing new Gemfile to /tmp/x/Gemfile
$ bundle i
The Gemfile specifies no dependencies
Resolving dependencies...
Bundle complete! 0 Gemfile dependencies, 1 gem now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.
$ bundle update --bundler "> 0.a"
Fetching gem metadata from https://rubygems.org/.
The Gemfile specifies no dependencies
Bundle updated!
$
</code></pre>
<p>I'm not sure which is expected behavior: spec's or changed implementation.</p>
Ruby master - Bug #16424 (Closed): abort without arguments does not print error info
https://bugs.ruby-lang.org/issues/16424
2019-12-15T06:17:06Z
znz (Kazuhiro NISHIYAMA)
<p><a href="https://docs.ruby-lang.org/ja/2.0.0/method/Kernel/m/abort.html" class="external">https://docs.ruby-lang.org/ja/2.0.0/method/Kernel/m/abort.html</a><br>
には「引数を省略した呼び出し時に $! が nil でなければその例外の メッセージを標準エラー出力 $stderr に出力」されるとありますが、 1.9 から出力されなくなっているようです。</p>
<pre><code>% docker run -it --rm rubylang/all-ruby env ALL_RUBY_SINCE=ruby-1.6 ./all-ruby -e 'begin;raise "foo";rescue;abort;end'
ruby-1.6.0 -e:1: foo (RuntimeError)
exit 1
...
ruby-1.8.7-p374 -e:1: foo (RuntimeError)
exit 1
ruby-1.9.0-0 exit 1
...
ruby-2.7.0-preview3 exit 1
</code></pre>
<p>笹田さんに直接確認してみたところ、バグということだったので、チケットとして登録しておきます。</p>
Ruby master - Bug #15311 (Closed): `make check` causes `warning: No mjit_build_directory`
https://bugs.ruby-lang.org/issues/15311
2018-11-16T07:37:31Z
znz (Kazuhiro NISHIYAMA)
<p><code>make help</code> says:</p>
<pre><code> check: equals make test test-all test-spec
</code></pre>
<p>But <code>make check</code> does not depend <code>test-all</code> acctually, it does not create <code>mjit_build_dir.so</code>.</p>
<p>So <code>make check</code> outputs many <code>warning: No mjit_build_directory</code>, and fails at <code>TestJIT#test_unload_units</code>.</p>
Ruby master - Bug #14840 (Closed): `warning: constant Net::ProtoServerError is deprecated` only v...
https://bugs.ruby-lang.org/issues/14840
2018-06-10T04:51:13Z
znz (Kazuhiro NISHIYAMA)
<p>When ruby loads <code>net/protocol</code> via <code>net/http</code>, <code>Net::ProtoServerError</code> is deprecated.<br>
But via <code>net/smtp</code>, etc, it does not warn.<br>
Is this intentional?</p>
<pre><code>% ruby -r net/http -e 'Net::ProtoServerError'
-e:1: warning: constant Net::ProtoServerError is deprecated
% ruby -r net/smtp -e 'Net::ProtoServerError'
</code></pre>
Ruby master - Bug #14576 (Third Party's Issue): rdoc of Random::Formatter
https://bugs.ruby-lang.org/issues/14576
2018-03-05T12:21:25Z
znz (Kazuhiro NISHIYAMA)
<p><a href="https://docs.ruby-lang.org/en/trunk/Random/Formatter.html" class="external">https://docs.ruby-lang.org/en/trunk/Random/Formatter.html</a> has following methods:</p>
<pre><code>#alphanumeric
#base64
#choose
#gen_random
#hex
#rand
#random_bytes
#random_number
#urlsafe_base64
#uuid
</code></pre>
<p>But <code>Random::Formatter.instance_methods</code> are only two methods.</p>
<pre><code>>> Random::Formatter.instance_methods
=> [:random_number, :rand]
</code></pre>
Ruby master - Bug #14325 (Closed): Set#reset raise RuntimeError instead of FrozenError
https://bugs.ruby-lang.org/issues/14325
2018-01-06T15:32:05Z
znz (Kazuhiro NISHIYAMA)
<p>I think it should use <code>FrozenError</code> instead of <code>RuntimeError</code>.<br>
I can't reproduce without modifying instance variable directly.</p>
<pre><code>% ruby -v -r set -e 'Set[].tap{|s|s.instance_variable_set(:@hash, :dummy)}.freeze.reset'
ruby 2.6.0dev (2018-01-06 trunk 61640) [x86_64-darwin16]
Traceback (most recent call last):
1: from -e:1:in `<main>'
.../lib/ruby/2.6.0/set.rb:527:in `reset': can't modify frozen Set (RuntimeError)
% ruby -v -I ./lib -r set -e 'Set[].tap{|s|s.instance_variable_set(:@hash, :dummy)}.freeze.reset'
ruby 2.6.0dev (2018-01-06 trunk 61640) [x86_64-darwin16]
Traceback (most recent call last):
1: from -e:1:in `<main>'
.../lib/set.rb:527:in `reset': can't modify frozen Set (FrozenError)
</code></pre>
<pre><code class="patch syntaxhl" data-language="patch"><span class="gh">diff --git a/lib/set.rb b/lib/set.rb
index 9642e74af4..d777b81b8f 100644
</span><span class="gd">--- a/lib/set.rb
</span><span class="gi">+++ b/lib/set.rb
</span><span class="p">@@ -524,7 +524,7 @@</span> def reset
if @hash.respond_to?(:rehash)
@hash.rehash # This should perform frozenness check.
else
<span class="gd">- raise "can't modify frozen #{self.class.name}" if frozen?
</span><span class="gi">+ raise FrozenError, "can't modify frozen #{self.class.name}" if frozen?
</span> end
self
end
</code></pre>
Ruby master - Bug #14266 (Closed): Set#clone(freeze: false) makes frozen internal hash
https://bugs.ruby-lang.org/issues/14266
2018-01-02T01:24:26Z
znz (Kazuhiro NISHIYAMA)
<pre><code>% irb -r irb/completion --simple-prompt
>> require 'set'
=> true
>> set=Set[].freeze.clone(freeze: false)
=> #<Set: {}>
>> set.frozen?
=> false
>> set.instance_variable_get(:@hash).frozen?
=> true
</code></pre>
<p>In <code>Set#initialize_clone</code>, clone hash without freeze keyword argument.<br>
But I think there is no easy way how to know freeze keyword argument value in <code>initialize_clone</code>.</p>
<pre><code> # Clone internal hash.
def initialize_clone(orig)
super
@hash = orig.instance_variable_get(:@hash).clone
end
</code></pre>
Ruby master - Bug #14247 (Closed): Thread#fetch raise KeyError without key and receiver
https://bugs.ruby-lang.org/issues/14247
2017-12-27T12:06:24Z
znz (Kazuhiro NISHIYAMA)
<p>I found this by message without <code>Did you mean?</code>.</p>
<p>expected:</p>
<pre><code>% ruby -e 'th=Thread.current;th[:foo]=1;th.fetch(:fooo)'
Traceback (most recent call last):
1: from -e:1:in `<main>'
-e:1:in `fetch': key not found: "fooo" (KeyError)
Did you mean? :foo
</code></pre>
<p>actual:</p>
<pre><code>% ruby -e 'th=Thread.current;th[:foo]=1;th.fetch(:fooo)'
Traceback (most recent call last):
1: from -e:1:in `<main>'
-e:1:in `fetch': key not found: fooo (KeyError)
</code></pre>
Ruby master - Bug #14163 (Closed): Pages of rdoc include files which are not documents
https://bugs.ruby-lang.org/issues/14163
2017-12-09T13:34:33Z
znz (Kazuhiro NISHIYAMA)
<p><a href="https://docs.ruby-lang.org/en/trunk/" class="external">https://docs.ruby-lang.org/en/trunk/</a> includes <code>*.tt</code>, <code>*.gemspec</code>, Executable, Executable.bundler, Executable.standalone.<br>
But it seems there are not documents nor sources including documents.</p>
Ruby master - Bug #13905 (Rejected): files in gemspec
https://bugs.ruby-lang.org/issues/13905
2017-09-15T15:56:02Z
znz (Kazuhiro NISHIYAMA)
<p>ext/zlib/zlib.gemspec の files をみると ext/zlib/extconf.rb のような top_srcdir からの相対パスらしき指定と gemspec からの相対パスらしき(upstreamでのパス?) zlib.gemspec のようなものが混在しているように見えます。</p>
<p>top_srcdir からの相対パスが正しいのなら ext/zlib がついていないファイルを指しているのはおかしいし、 gemspec ファイルからの相対パスなら ext/zlib がついているのがおかしいと思いました。</p>
<p>他の gemspec ファイルは確認していないのですが、lib/scanf.gemspec をみると lib/scanf.rb だけなので、top_srcdir からの相対パスが正しくて、そもそも sync されていないファイルが入っていたり、gemspec ファイルが入っていること自体がおかしい気がします。</p>
Ruby master - Bug #13854 (Closed): `make golf` broken
https://bugs.ruby-lang.org/issues/13854
2017-08-31T11:16:49Z
znz (Kazuhiro NISHIYAMA)
<p>make golf が失敗します。</p>
<pre><code>% make golf
...
compiling .../ruby/goruby.c golf_prelude.c
gcc: fatal error: cannot specify -o with -c, -S or -E with multiple files
compilation terminated.
uncommon.mk:951: ターゲット 'goruby.o' のレシピで失敗しました
</code></pre>
<p>たぶん r58724 の変更の</p>
<pre><code>$(MAINOBJ): $(srcdir)/$(MAINSRC)
$(ECHO) compiling $(srcdir)/$(MAINSRC)
$(Q) $(CC) $(MAINCPPFLAGS) $(CFLAGS) $(XCFLAGS) $(CPPFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$(srcdir)/$(MAINSRC)
</code></pre>
<p>が</p>
<pre><code>golf: $(LIBRUBY) $(GOLFOBJS) PHONY
$(Q) $(MAKE) $(mflags) MAINOBJ="$(GOLFOBJS)" PROGRAM=$(GORUBY)$(EXEEXT) program
</code></pre>
<p>のように MAINOBJ が複数になることを想定していなくて、<code>$(CSRCFLAG)$(srcdir)/$(MAINSRC)</code> の最後の MAINSRC が <code>goruby.c golf_prelude.c</code> に展開されてしまって失敗しているようです。</p>
Ruby master - Bug #13808 (Closed): lib/ipaddr.gemspec includes `git ls-files -z`
https://bugs.ruby-lang.org/issues/13808
2017-08-12T05:42:00Z
znz (Kazuhiro NISHIYAMA)
<p><code>git ls-files -z</code> in gemspec may occur error.</p>
<p>see <a href="https://bugs.ruby-lang.org/issues/13423" class="external">https://bugs.ruby-lang.org/issues/13423</a> and/or <a href="https://bugs.ruby-lang.org/issues/12736" class="external">https://bugs.ruby-lang.org/issues/12736</a></p>
Ruby master - Bug #13538 (Closed): head: illegal option -- c
https://bugs.ruby-lang.org/issues/13538
2017-05-03T02:01:04Z
znz (Kazuhiro NISHIYAMA)
<p><a href="http://blog.n-z.jp/blog/2017-05-02-ruby-sample.html" class="external">Solaris 11.3でビルドを試した</a>ところ、configure の最後で以下のようなエラーが出ました。</p>
<pre><code>---
Configuration summary for ruby version 2.5.0
head: illegal option -- c
usage: head [-n #] [-#] [filename...]
/export/home/vagrant/opt/ruby
head: illegal option -- c
usage: head [-n #] [-#] [filename...]
${prefix}
head: illegal option -- c
(略)
head: illegal option -- c
usage: head [-n #] [-#] [filename...]
yes
head: illegal option -- c
usage: head [-n #] [-#] [filename...]
man
---
</code></pre>
<p>head -c は <a href="http://pubs.opengroup.org/onlinepubs/9699919799/utilities/head.html" class="external">POSIX</a> になくて、代わりの手段を探してみたところ、<a href="http://qiita.com/richmikan@github/items/bd4b21cf1fe503ab2e5c#head%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89" class="external">どの環境でも使えるシェルスクリプトを書くためのメモ ver4.51 - Qiita の headコマンド</a> にあったので <code>head -c26</code> を <code>dd bs=1 count=26 2>/dev/null</code> に書き換えます。</p>
Ruby master - Bug #13423 (Closed): error in etc.gemspec
https://bugs.ruby-lang.org/issues/13423
2017-04-11T14:11:11Z
znz (Kazuhiro NISHIYAMA)
<p><code>git</code> コマンドがないと <code>make install</code> が <code>etc.gemspec</code> でエラーになります。</p>
<pre><code>Invalid gemspec in [/path/to/ruby/ext/etc/etc.gemspec]: No such file or directory - git
from ../tool/rbinstall.rb:889:in `<main>'
from ../tool/rbinstall.rb:889:in `each'
from ../tool/rbinstall.rb:892:in `block in <main>'
from ../tool/rbinstall.rb:763:in `block in <main>'
from ../tool/rbinstall.rb:775:in `install_default_gem'
from ../tool/rbinstall.rb:775:in `map'
../tool/rbinstall.rb:776:in `block in install_default_gem': invalid spec in /path/to/ruby/ext/etc/etc.gemspec (RuntimeError)
</code></pre>
Ruby master - Bug #13114 (Closed): test failures since r57284
https://bugs.ruby-lang.org/issues/13114
2017-01-08T05:49:41Z
znz (Kazuhiro NISHIYAMA)
<p>r57284 の変更でいくつかのテストが失敗します。</p>
<p>最小の再現条件を絞り込もうとしたのですが、webrick/httpauth/basicauth だと再現するのに、個別の webrick/httpstatus と webrick/httpauth/authenticator だと再現しないなど、条件がよくわかりませんでした。</p>
<pre><code>% ruby -r webrick/httpauth/basicauth -e 'p WEBrick::HTTPStatus::ProxyAuthenticationRequired'
WEBrick::HTTPAuth::ProxyAuthenticator::AuthException
% ruby -r webrick/httpstatus -r webrick/httpauth/authenticator -e 'p WEBrick::HTTPStatus::ProxyAuthenticationRequired'
WEBrick::HTTPStatus::ProxyAuthenticationRequired
</code></pre>
Ruby master - Bug #13021 (Closed): `Zlib.gunzip` modifies argument String
https://bugs.ruby-lang.org/issues/13021
2016-12-10T02:00:33Z
znz (Kazuhiro NISHIYAMA)
<pre><code>% irb -r irb/completion --simple-prompt
>> RUBY_DESCRIPTION
=> "ruby 2.4.0dev (2016-12-10 trunk 57036) [x86_64-linux]"
>> require 'zlib'
=> true
>> gz=Zlib.gzip('test')
=> "\x1F\x8B\b\x00\xBF`KX\x00\x03+I-.\x01\x00\f~\x7F\xD8\x04\x00\x00\x00"
>> Zlib.gunzip(gz)
=> "test"
>> gz
=> "+I-.\x01\x00\f~\x7F\xD8\x04\x00\x00\x00"
</code></pre>
Ruby master - Bug #12942 (Third Party's Issue): about psych 2.2.0
https://bugs.ruby-lang.org/issues/12942
2016-11-15T15:14:20Z
znz (Kazuhiro NISHIYAMA)
<p>r56773 <a href="https://github.com/ruby/ruby/commit/4e70bae2bc9253fb91ae6c95bbe8e01e38d8d3df" class="external">https://github.com/ruby/ruby/commit/4e70bae2bc9253fb91ae6c95bbe8e01e38d8d3df</a> の ext/psych/psych.gemspec の差分には README.rdoc から README.md への変更が含まれていますが、 ext/psych 以下には README.rdoc も README.md もないようですが、良いのでしょうか?</p>
<p>typo 修正が戻ってしまっているっぽい変更も気になります。(occurrence - occurence, corresponding - correspoding, indentation - intendation, unknown - uknown)</p>
Ruby master - Bug #12850 (Closed): SEGV in C level backtrace information
https://bugs.ruby-lang.org/issues/12850
2016-10-18T13:41:27Z
znz (Kazuhiro NISHIYAMA)
<p>Ubuntu 16.04.1 LTS の環境で、r56445 の変更の影響で SEGV のテストの <code>C level backtrace information</code> の表示で SEGV します。</p>
<pre><code>% gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/5/lto-wrapper
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 5.4.0-6ubuntu1~16.04.2' --with-bugurl=file:///usr/share/doc/gcc-5/README.Bugs --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-5 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-5-amd64/jre --enable-java-home --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-5-amd64 --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-5-amd64 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.2)
% gdb -q --args ruby --disable-gems -v -e 'Process.kill :SEGV, $$'
Reading symbols from ruby...done.
(gdb) run
Starting program: /home/vagrant/build/ruby-git/ruby --disable-gems -v -e Process.kill\ :SEGV,\ \$\$
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7ffff7ff5700 (LWP 5839)]
ruby 2.4.0dev (2016-10-18 trunk 56445) [x86_64-linux]
Thread 1 "ruby" received signal SIGSEGV, Segmentation fault.
0x00007ffff7537757 in kill () at ../sysdeps/unix/syscall-template.S:84
84 ../sysdeps/unix/syscall-template.S: そのようなファイルやディレクトリはありません.
(gdb) c
Continuing.
-e:1: [BUG] Segmentation fault at 0x000384000016b9
ruby 2.4.0dev (2016-10-18 trunk 56445) [x86_64-linux]
-- Control frame information -----------------------------------------------
c:0003 p:---- s:0012 e:000011 CFUNC :kill
c:0002 p:0016 s:0006 e:000005 EVAL -e:1 [FINISH]
c:0001 p:0000 s:0003 E:001e60 (none) [FINISH]
-- Ruby level backtrace information ----------------------------------------
-e:1:in `<main>'
-e:1:in `kill'
-- Machine register context ------------------------------------------------
RIP: 0x00007ffff7537757 RBP: 0x0000000000602f70 RSP: 0x00007fffffffd328
RAX: 0x0000000000000000 RBX: 0x0000000000603728 RCX: 0x00007ffff7537757
RDX: 0x0000000000000000 RDI: 0x00000000000016b9 RSI: 0x000000000000000b
R8: 0x0000000000603728 R9: 0x0000000000000005 R10: 0x000000000000022d
R11: 0x0000000000000206 R12: 0x0000000000000002 R13: 0x00000000000016b9
R14: 0x0000000000000001 R15: 0x0000000000000001 EFL: 0x0000000000000206
-- C level backtrace information -------------------------------------------
Thread 1 "ruby" received signal SIGSEGV, Segmentation fault.
parse_debug_line_cu (offset=0, lines=0x7657c0, obj=0x765cb0, debug_line=<synthetic pointer>,
traces=0x7ffff7dd31c0 <trace>, num_traces=18) at /home/vagrant/s/github.com/ruby/ruby/addr2line.c:291
291 while (*p) {
(gdb) p p
$1 = 0x8000f5f977f7 <error: Cannot access memory at address 0x8000f5f977f7>
(gdb)
</code></pre>
Ruby master - Bug #12815 (Closed): Integer#digits's error message different when base is Fixnum o...
https://bugs.ruby-lang.org/issues/12815
2016-10-06T12:33:05Z
znz (Kazuhiro NISHIYAMA)
<p>Is this intended?</p>
<pre><code>% ruby -ve '60.upto(65){|n| 1.digits(-(1<<n)) rescue p $! }'
ruby 2.4.0dev (2016-10-06 trunk 56364) [x86_64-linux]
#<ArgumentError: invalid radix -1152921504606846976>
#<ArgumentError: invalid radix -2305843009213693952>
#<ArgumentError: invalid radix -4611686018427387904>
#<ArgumentError: negative radix>
#<ArgumentError: negative radix>
#<ArgumentError: negative radix>
</code></pre>
Ruby master - Bug #12800 (Closed): YAMLStoreTest#test_thread_safe hang
https://bugs.ruby-lang.org/issues/12800
2016-09-29T13:39:32Z
znz (Kazuhiro NISHIYAMA)
<p><code>lib/yaml/store.rb</code> のテストがなかったので、<code>test/test_pstore.rb</code> を元に <code>test/yaml/test_store.rb</code> を作ってみたところ、<code>YAMLStoreTest#test_thread_safe</code> で止まってしまいました。</p>
<p>原因を調べてみたところ、</p>
<ul>
<li>
<code>PStore</code> は <code>def initialize(file, thread_safe = false)</code>
</li>
<li>
<code>YAML::Store</code> は <code>def initialize file_name, yaml_opts = {}</code>
</li>
</ul>
<p>という違いがあるのに <code>YAML::Store</code> で (引数なしもかっこもない) <code>super</code> を呼び出していて、意図せず <code>thread_safe</code> が真になっているからだとわかりました。</p>
<p>r33376 での変更からのようで、<code>yaml_opts</code> も使われなくなっていたので、そのあたりも含めて直しておきます。</p>
Ruby master - Bug #12792 (Closed): cannot open https://bugs.jruby.org/4176
https://bugs.ruby-lang.org/issues/12792
2016-09-27T12:53:02Z
znz (Kazuhiro NISHIYAMA)
<p><a href="https://bugs.jruby.org/4176" class="external">https://bugs.jruby.org/4176</a> in r56260.<br>
But I cannot open it because connection refused.</p>
Ruby master - Bug #12785 (Closed): misc/test_ruby_mode.rb failed with emacs 25.1.1
https://bugs.ruby-lang.org/issues/12785
2016-09-22T14:22:11Z
znz (Kazuhiro NISHIYAMA)
<p>When emacs is 25.1.1, test/misc/test_ruby_mode.rb causes 8 failures.</p>
<pre><code>vagrant@archlinux:~/ruby/build$ make test-all TESTS=misc/test_ruby_mode.rb
CC = ccache gcc
LD = ld
LDSHARED = ccache gcc -shared
CFLAGS = -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wno-tautological-compare -Wno-parentheses-equality -Wno-constant-logical-operand -Wno-self-assign -Wunused-variable -Werror=implicit-int -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=implicit-function-declaration -Werror=deprecated-declarations -Wno-packed-bitfield-compat -Wsuggest-attribute=noreturn -Wsuggest-attribute=format -std=gnu99 -fPIC
XCFLAGS = -D_FORTIFY_SOURCE=2 -fstack-protector -fno-strict-overflow -fvisibility=hidden -fexcess-precision=standard -DRUBY_EXPORT
CPPFLAGS = -DRUBY_DEBUG_ENV -DARRAY_DEBUG -I. -I.ext/include/x86_64-linux -I../include -I.. -I../enc/unicode/9.0.0
DLDFLAGS = -Wl,-soname,libruby.so.2.4 -fstack-protector
SOLIBS = -lpthread -lgmp -ldl -lcrypt -lm
組み込み spec を使用しています。
COLLECT_GCC=/usr/bin/gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/lto-wrapper
ターゲット: x86_64-pc-linux-gnu
configure 設定: /build/gcc/src/gcc/configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++ --enable-shared --enable-threads=posix --enable-libmpx --with-system-zlib --with-isl --enable-__cxa_atexit --disable-libunwind-exceptions --enable-clocale=gnu --disable-libstdcxx-pch --disable-libssp --enable-gnu-unique-object --enable-linker-build-id --enable-lto --enable-plugin --enable-install-libiberty --with-linker-hash-style=gnu --enable-gnu-indirect-function --disable-multilib --disable-werror --enable-checking=release
スレッドモデル: posix
gcc バージョン 6.2.1 20160830 (GCC)
Run options: "--ruby=./miniruby -I../lib -I. -I.ext/common ../tool/runruby.rb --extout=.ext -- --disable-gems" --excludes-dir=../test/excludes --name=!/memory_leak/
# Running tests:
[1/9] TestRubyMode::TestIndent#test_array_after_paren_and_space = 0.08 s
1) Failure:
TestRubyMode::TestIndent#test_array_after_paren_and_space [/home/vagrant/ruby/test/misc/test_ruby_mode.rb:156]:
Expected /^Wrote / to match "Indenting region...\nIndenting region...done\n".
[2/9] TestRubyMode::TestIndent#test_array_literal = 0.08 s
2) Failure:
TestRubyMode::TestIndent#test_array_literal [/home/vagrant/ruby/test/misc/test_ruby_mode.rb:123]:
Expected /^Wrote / to match "Indenting region...\nIndenting region...done\n".
[3/9] TestRubyMode::TestIndent#test_begin_end = 0.08 s
3) Failure:
TestRubyMode::TestIndent#test_begin_end [/home/vagrant/ruby/test/misc/test_ruby_mode.rb:144]:
Expected /^Wrote / to match "Indenting region...\nIndenting region...done\n".
[4/9] TestRubyMode::TestIndent#test_expr_in_regexp = 0.08 s
4) Failure:
TestRubyMode::TestIndent#test_expr_in_regexp [/home/vagrant/ruby/test/misc/test_ruby_mode.rb:98]:
Expected /^Wrote / to match "Indenting region...\nIndenting region...done\n".
[5/9] TestRubyMode::TestIndent#test_keyword_label = 0.08 s
5) Failure:
TestRubyMode::TestIndent#test_keyword_label [/home/vagrant/ruby/test/misc/test_ruby_mode.rb:72]:
Expected /^Wrote / to match "Indenting region...\nIndenting region...done\n".
[6/9] TestRubyMode::TestIndent#test_method_with_question_mark = 0.08 s
6) Failure:
TestRubyMode::TestIndent#test_method_with_question_mark [/home/vagrant/ruby/test/misc/test_ruby_mode.rb:86]:
Expected /^Wrote / to match "Indenting region...\nIndenting region...done\n".
[7/9] TestRubyMode::TestIndent#test_simple = 0.08 s
7) Failure:
TestRubyMode::TestIndent#test_simple [/home/vagrant/ruby/test/misc/test_ruby_mode.rb:58]:
Expected /^Wrote / to match "Indenting region...\nIndenting region...done\n".
[9/9] TestRubyMode::TestIndent#test_spread_arguments = 0.08 s
8) Failure:
TestRubyMode::TestIndent#test_spread_arguments [/home/vagrant/ruby/test/misc/test_ruby_mode.rb:172]:
Expected /^Wrote / to match "Indenting region...\nIndenting region...done\n".
Finished tests in 0.670478s, 13.4233 tests/s, 64.1334 assertions/s.
9 tests, 43 assertions, 8 failures, 0 errors, 1 skips
ruby -v: ruby 2.4.0dev (2016-09-22 trunk 56204) [x86_64-linux]
make: *** [uncommon.mk:623: yes-test-all] エラー 8
vagrant@archlinux:~/ruby/build$ emacs --version
GNU Emacs 25.1.1
Copyright (C) 2016 Free Software Foundation, Inc.
GNU Emacs comes with ABSOLUTELY NO WARRANTY.
You may redistribute copies of GNU Emacs
under the terms of the GNU General Public License.
For more information about these matters, see the file named COPYING.
</code></pre>
Ruby master - Bug #12773 (Closed): useless lines in lib/rss/rss.rb
https://bugs.ruby-lang.org/issues/12773
2016-09-18T10:31:12Z
znz (Kazuhiro NISHIYAMA)
<p><code>lib/rss/rss.rb</code> に</p>
<pre><code> attr = attr.id2name if attr.kind_of?(Integer)
</code></pre>
<p>という行が複数ありますが、<code>Fixnum#id2name</code> はもうないので、不要なのではないでしょうか。</p>
Ruby master - Bug #12764 (Closed): rubygems with multi default gem problem
https://bugs.ruby-lang.org/issues/12764
2016-09-15T13:31:24Z
znz (Kazuhiro NISHIYAMA)
<p>This issue may affect Ruby committers only.<br>
This does not probably affect released ruby.</p>
<p>With development ruby, <code>make install</code> many times.<br>
After them, default gems are duplicated when exists updated.<br>
And gem with old version in Gemfile does not work well.</p>
<p>Example:</p>
<pre><code>% gem list rdoc
*** LOCAL GEMS ***
rdoc (default: 5.0.0.beta2, default: 4.2.1)
% cat Gemfile
# frozen_string_literal: true
source "https://rubygems.org"
# gem "rails"
gem 'rdoc', '4.2.1'
% cat Gemfile.lock
GEM
remote: https://rubygems.org/
specs:
rdoc (4.2.1)
PLATFORMS
ruby
DEPENDENCIES
rdoc (= 4.2.1)
BUNDLED WITH
1.13.0
% bundle exec ruby -r rdoc -e 'p RDoc::VERSION'
"5.0.0.beta2"
</code></pre>
<p>FYI: <a href="http://blog.n-z.jp/blog/2016-09-10-bundled-gem-and-default-gem.html" class="external">Difference of bundled gem and default gem (in Japanese)</a></p>
Ruby master - Bug #12762 (Closed): missing links in LEGAL
https://bugs.ruby-lang.org/issues/12762
2016-09-14T12:50:32Z
znz (Kazuhiro NISHIYAMA)
<ul>
<li>LEGAL の Oniguruma の節にある URL が以下の3つ全てリンク切れのようです。</li>
<li>random.c の <a href="http://www.math.keio.ac.jp/matumoto/emt.html" class="external">http://www.math.keio.ac.jp/matumoto/emt.html</a> もないようです。</li>
<li>ext/win32ole/win32ole.c の <a href="http://www.ActiveWare.com" class="external">http://www.ActiveWare.com</a> もないようです。</li>
</ul>
Ruby master - Bug #12736 (Closed): `make install` says `fatal: Not a git repository (or any of th...
https://bugs.ruby-lang.org/issues/12736
2016-09-07T12:29:48Z
znz (Kazuhiro NISHIYAMA)
<p><code>make install</code> の時に <code>fatal: Not a git repository (or any of the parent directories): .git</code> というメッセージが2回出ます。</p>
<p>ext/psych/psych.gemspec と lib/rdoc/rdoc.gemspec の</p>
<pre><code>s.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
</code></pre>
<p>が原因のようです。</p>
Ruby master - Bug #12714 (Closed): make で $(topdir)/.ext/gems が作成される
https://bugs.ruby-lang.org/issues/12714
2016-08-30T12:40:03Z
znz (Kazuhiro NISHIYAMA)
<p>現在の trunk は make したとき、ビルドディレクトリに <code>$(topdir)/.ext/gems</code> というディレクトリが作成されるようです。</p>
<p>git bisect で調べてみたところ、r55950 から発生しているようです。</p>
Ruby master - Bug #12487 (Closed): -12345.digits(7) behavior
https://bugs.ruby-lang.org/issues/12487
2016-06-14T15:19:50Z
znz (Kazuhiro NISHIYAMA)
<p>rdoc of Integer#digits says <code>-12345.digits(7) #=> [4, 6, 6, 0, 5]</code>, but it raises <code>Math::DomainError: out of domain</code>.<br>
Which is expected behavior?</p>
Ruby master - Bug #12339 (Closed): result of 123456789 ** -2 in doc
https://bugs.ruby-lang.org/issues/12339
2016-05-02T10:47:53Z
znz (Kazuhiro NISHIYAMA)
<p><a href="https://github.com/ruby/ruby/blob/c353ec0c9e8e941f49910a51f7dc10cf3d3cdd17/numeric.c#L3647" class="external">https://github.com/ruby/ruby/blob/c353ec0c9e8e941f49910a51f7dc10cf3d3cdd17/numeric.c#L3647</a><br>
の <code>Integer#**</code> の rdoc で</p>
<pre><code> * 123456789 ** -2 #=> 6.5610001194102e-17
</code></pre>
<p>となっていますが、実際に試してみると <code>(1/15241578750190521)</code> になります。<br>
どちらが正しいのでしょうか?</p>
<pre><code>% ruby -ve 'p 123456789 ** -2'
ruby 2.4.0dev (2016-05-02 trunk 54882) [x86_64-darwin14]
(1/15241578750190521)
</code></pre>
Ruby master - Bug #11608 (Closed): test -t without fd
https://bugs.ruby-lang.org/issues/11608
2015-10-20T13:30:52Z
znz (Kazuhiro NISHIYAMA)
<p>r52202 で fd 指定なしの test -t を使っていますが、<br>
<a href="http://pubs.opengroup.org/onlinepubs/9699919799/utilities/test.html" class="external">http://pubs.opengroup.org/onlinepubs/9699919799/utilities/test.html</a><br>
の RATIONALE で</p>
<blockquote>
<p>The -t file_descriptor primary is shown with a mandatory argument because the grammar is ambiguous if it can be omitted. Historical implementations have allowed it to be omitted, providing a default of 1.</p>
</blockquote>
<p>と書かれているように省略せずに指定すべきではないでしょうか。</p>
Ruby master - Bug #10890 (Closed): revision.h が空になる
https://bugs.ruby-lang.org/issues/10890
2015-02-23T12:26:17Z
znz (Kazuhiro NISHIYAMA)
<p>Ubuntu 12.04 LTS のように git が古い環境だと revision.h が空になってしまいます。<br>
原因を調べてみたところ -C オプションに対応していないからのようです。</p>
<pre><code>% git --version
git version 1.7.9.5
% ruby -vd --disable=gems tool/file2lastrev.rb --revision.h .
ruby 2.3.0dev (2015-02-23) [x86_64-linux]
[["git", "-C", ".", "log", "-n1", "--date=iso", "--grep=^ *git-svn-id: .*@[0-9][0-9]*"]]
Unknown option: -C
usage: git [--version] [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
[-p|--paginate|--no-pager] [--no-replace-objects] [--bare]
[--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
[-c name=value] [--help]
<command> [<args>]
(略)
Exception `VCS::NotFoundError' at /home/kazu/z/wc/CI/ruby/tool/vcs.rb:96 - last revision not found
file2lastrev.rb: last revision not found
</code></pre>
<p>そのままだと ruby -d でも何も出なかったので以下の変更をして試しました。</p>
<pre><code>% git diff
diff --git a/tool/vcs.rb b/tool/vcs.rb
index 9d11b3b..29bcc95 100644
--- a/tool/vcs.rb
+++ b/tool/vcs.rb
@@ -81,7 +81,7 @@ class VCS
end
last, changed, modified, *rest = (
begin
- if NullDevice
+ if !$DEBUG && NullDevice
save_stderr = STDERR.dup
STDERR.reopen NullDevice, 'w'
end
</code></pre>
Ruby master - Bug #8518 (Closed): assertion failed in rb_ary_sort_bang
https://bugs.ruby-lang.org/issues/8518
2013-06-12T12:58:24Z
znz (Kazuhiro NISHIYAMA)
<p>-DARRAY_DEBUG の続きです。</p>
<p>test/ruby/test_array.rb の test_sort! の以下に相当する部分で assertion failed になります。</p>
<p>% ./miniruby -e 'a=Array[4, 1, 2, 3]; a.sort! {|m, n| a.replace([9, 8, 7]); m <=> n }'<br>
miniruby: .../ruby/array.c:2336: rb_ary_sort_bang: Assertion `!(((!((!(((VALUE)((ary)) & RUBY_IMMEDIATE_MASK) || !!(((VALUE)((ary)) & ~((VALUE)RUBY_Qnil)) == 0)) && (int)(((struct RBasic*)((ary)))->flags & RUBY_T_MASK) != RUBY_T_NODE)?(((struct RBasic*)(((ary))))->flags&(((((VALUE)1)<<(12+2))))):0) || !((!(((VALUE)((ary)) & RUBY_IMMEDIATE_MASK) || !!(((VALUE)((ary)) & ~((VALUE)RUBY_Qnil)) == 0)) && (int)(((struct RBasic*)((ary)))->flags & RUBY_T_MASK) != RUBY_T_NODE)?(((struct RBasic*)(((ary))))->flags&(((((VALUE)1)<<(12+1))))):0)) ? (void) (0) : __assert_fail ("!((!(((VALUE)((ary)) & RUBY_IMMEDIATE_MASK) || !!(((VALUE)((ary)) & ~((VALUE)RUBY_Qnil)) == 0)) && (int)(((struct RBasic*)((ary)))->flags & RUBY_T_MASK) != RUBY_T_NODE)?(((struct RBasic*)(((ary))))->flags&(((((VALUE)1)<<(12+2))))):0) || !((!(((VALUE)((ary)) & RUBY_IMMEDIATE_MASK) || !!(((VALUE)((ary)) & ~((VALUE)RUBY_Qnil)) == 0)) && (int)(((struct RBasic*)((ary)))->flags & RUBY_T_MASK) != RUBY_T_NODE)?(((struct RBasic*)(((ary))))->flags&(((((VALUE)1)<<(12+1))))):0)", "/home/kazu/z/wc/CI/ruby/array.c", 2336, <strong>PRETTY_FUNCTION</strong>)), ((!(((VALUE)((ary)) & RUBY_IMMEDIATE_MASK) || !!(((VALUE)((ary)) & ~((VALUE)RUBY_Qnil)) == 0)) && (int)(((struct RBasic*)((ary)))->flags & RUBY_T_MASK) != RUBY_T_NODE)?(((struct RBasic*)(((ary))))->flags&(((((VALUE)1)<<(12+1))))):0)!=0)' failed.</p>
<p>なぜか行番号がずれていて 2336 行目は以下の if 文の行ですが、その下の ary の方がひっかかっているようです。</p>
<pre><code> assert(!ARY_EMBED_P(tmp));
if (ARY_HEAP_PTR(ary) == ARY_HEAP_PTR(tmp)) {
assert(!ARY_EMBED_P(ary));
</code></pre>
Ruby master - Bug #8510 (Closed): assertion failed in ary_resize_capa
https://bugs.ruby-lang.org/issues/8510
2013-06-11T09:47:22Z
znz (Kazuhiro NISHIYAMA)
<p>-DARRAY_DEBUG を付けていると enc.mk のあたりで make が通りません。</p>
<p>generating enc.mk<br>
miniruby: .../ruby/array.c:153: ary_resize_capa: Assertion `!(!!((!(((VALUE)(ary) & RUBY_IMMEDIATE_MASK) || !!(((VALUE)(ary) & ~((VALUE)RUBY_Qnil)) == 0)) && (int)(((struct RBasic*)(ary))->flags & RUBY_T_MASK) != RUBY_T_NODE)?(((struct RBasic*)(ary))->flags&((((VALUE)1)<<11))):((((int)(long)(ary))&RUBY_FIXNUM_FLAG)||((((int)(long)(ary))&RUBY_FLONUM_MASK) == RUBY_FLONUM_FLAG))))' failed.<br>
Aborted (core dumped)</p>
<p>原因を調べてみたところ、 ary_make_shared で</p>
<pre><code>else if (OBJ_FROZEN(ary)) {
ary_resize_capa(ary, ARY_HEAP_LEN(ary));
</code></pre>
<p>という条件で ary_resize_capa を呼び出しているのに、ary_resize_capa の中に</p>
<pre><code>assert(!OBJ_FROZEN(ary));
</code></pre>
<p>があるからのようです。</p>
Ruby master - Bug #8084 (Closed): ext/tk/MANUAL_tcltklib.eucj is utf-8
https://bugs.ruby-lang.org/issues/8084
2013-03-14T00:19:20Z
znz (Kazuhiro NISHIYAMA)
<p>ext/tk/MANUAL_tcltklib.eucj は中身が UTF-8 に変更されているので、ファイル名も変更した方が良いのではないでしょうか?</p>
Ruby master - Bug #7760 (Closed): "-\n2000-01-02 03:04:05".to_yaml raise ArgumentError
https://bugs.ruby-lang.org/issues/7760
2013-01-31T15:59:34Z
znz (Kazuhiro NISHIYAMA)
<p>1.9.3's psych raises ArgumentError.<br>
2.0.0's psych doesn't.</p>
<p>% ruby -v -r yaml -e '"-\n2000-01-02 03:04:05".to_yaml'<br>
ruby 1.9.3p374 (2013-01-15 revision 38858) [x86_64-darwin12.2.0]<br>
/Users/kazu/.rbenv/versions/1.9.3-p374/lib/ruby/1.9.1/psych/scalar_scanner.rb:111:in <code>utc': argument out of range (ArgumentError) from /Users/kazu/.rbenv/versions/1.9.3-p374/lib/ruby/1.9.1/psych/scalar_scanner.rb:111:in </code>parse_time'<br>
from /Users/kazu/.rbenv/versions/1.9.3-p374/lib/ruby/1.9.1/psych/scalar_scanner.rb:48:in <code>tokenize' from /Users/kazu/.rbenv/versions/1.9.3-p374/lib/ruby/1.9.1/psych/visitors/yaml_tree.rb:242:in </code>visit_String'<br>
from /Users/kazu/.rbenv/versions/1.9.3-p374/lib/ruby/1.9.1/psych/visitors/yaml_tree.rb:103:in <code>accept' from /Users/kazu/.rbenv/versions/1.9.3-p374/lib/ruby/1.9.1/psych/visitors/yaml_tree.rb:67:in </code>push'<br>
from /Users/kazu/.rbenv/versions/1.9.3-p374/lib/ruby/1.9.1/psych.rb:242:in <code>dump' from /Users/kazu/.rbenv/versions/1.9.3-p374/lib/ruby/1.9.1/psych/core_ext.rb:14:in </code>psych_to_yaml'<br>
from -e:1:in `'</p>
Ruby master - Bug #7579 (Closed): TestGemExtCmakeBuilder#test_self_build failed in ja_JP.UTF-8 lo...
https://bugs.ruby-lang.org/issues/7579
2012-12-17T07:25:00Z
znz (Kazuhiro NISHIYAMA)
<p>TestGemExtCmakeBuilder#test_self_build failed in ja_JP.UTF-8 locale.<br>
It should set locale C before invoking make.<br>
Attached patch will revolve this issue.</p>
<ol>
<li>Failure:<br>
test_self_build(TestGemExtCmakeBuilder) [.../ruby/test/rubygems/test_gem_ext_cmake_builder.rb:46]:<br>
--- expected<br>
+++ actual<br>
@@ -1 +1,3 @@<br>
-""<br>
+"make[1]: ディレクトリ <code>.../tmp/test/test_rubygems_16184/ext' に入ります +make[1]: ディレクトリ </code>.../tmp/test/test_rubygems_16184/ext' から出ます<br>
+"</li>
</ol>
Ruby master - Bug #7244 (Closed): ArgumentError of refine
https://bugs.ruby-lang.org/issues/7244
2012-10-30T22:02:31Z
znz (Kazuhiro NISHIYAMA)
<p>refine は 1 個しか引数をとらないはずなのにブロックを渡さずに引数 1 個で呼び出すと (0 for 1..3) という ArgumentError になります。</p>
<p>% ruby -v<br>
ruby 2.0.0dev (2012-10-30 trunk 37389) [x86_64-linux]<br>
% ruby -e 'Class.new{|c|refine}'<br>
-e:1:in <code>refine': wrong number of arguments (0 for 1) (ArgumentError) from -e:1:in </code>block in '<br>
from -e:1:in <code>initialize' from -e:1:in </code>new'<br>
from -e:1:in <code><main>' % ruby -e 'Class.new{|c|refine c}' -e:1:in </code>refine': wrong number of arguments (0 for 1..3) (ArgumentError)<br>
from -e:1:in <code>block in <main>' from -e:1:in </code>initialize'<br>
from -e:1:in <code>new' from -e:1:in </code>'<br>
%</p>
Ruby master - Bug #7197 (Closed): Error: test_tls_v1_2(OpenSSL::TestSSL)
https://bugs.ruby-lang.org/issues/7197
2012-10-20T13:30:51Z
znz (Kazuhiro NISHIYAMA)
<p>Ubuntu 12.04.1 LTS 64-bit の環境で以下のエラーが出ています。</p>
<ol start="2">
<li>Error:<br>
test_tls_v1_2(OpenSSL::TestSSL):<br>
OpenSSL::SSL::SSLError: SSL_connect returned=1 errno=0 state=unknown state: tlsv1 alert protocol version<br>
.../test/openssl/test_ssl.rb:607:in <code>connect' .../test/openssl/test_ssl.rb:607:in </code>server_connect'<br>
.../test/openssl/test_ssl.rb:468:in <code>block in test_tls_v1_2' .../test/openssl/utils.rb:293:in </code>call'<br>
.../test/openssl/utils.rb:293:in <code>start_server' .../test/openssl/test_ssl.rb:593:in </code>start_server_version'<br>
.../test/openssl/test_ssl.rb:467:in `test_tls_v1_2'</li>
</ol>
<p>OpenSSL のバージョンは以下の通りです。</p>
<p>% openssl version<br>
OpenSSL 1.0.1 14 Mar 2012<br>
% dpkg -l openssl | grep '^ii'<br>
ii openssl 1.0.1-4ubuntu5.5 Secure Socket Layer (SSL) binary and related cryptographic tools<br>
%</p>
Ruby master - Bug #6774 (Closed): test failures when *_proxy already set
https://bugs.ruby-lang.org/issues/6774
2012-07-23T01:39:53Z
znz (Kazuhiro NISHIYAMA)
<p>他の組み合わせでもおきますが、 proxy 関連の環境変数が設定されていると test_find_proxy が失敗します。</p>
<p>% env -u http_proxy -u https_proxy ftp_proxy= ruby -v test/uri/test_generic.rb<br>
ruby 2.0.0dev (2012-07-23 trunk 36494) [x86_64-linux]<br>
Run options:</p>
<a name="Running-tests"></a>
<h1 >Running tests:<a href="#Running-tests" class="wiki-anchor">¶</a></h1>
<p>[ 3/12] URI::TestGeneric#test_find_proxy = 0.00 s</p>
<ol>
<li>Failure:<br>
test_find_proxy(URI::TestGeneric) [test/uri/test_generic.rb:740]:<br>
Expected #<URI::Generic:0x007fbdb6c16e40 URL:> to be nil.</li>
</ol>
<p>Finished tests in 0.015542s, 772.1030 tests/s, 19624.2844 assertions/s.<br>
12 tests, 305 assertions, 1 failures, 0 errors, 0 skips</p>
Ruby master - Bug #6657 (Closed): IRB.fail
https://bugs.ruby-lang.org/issues/6657
2012-06-27T23:27:27Z
znz (Kazuhiro NISHIYAMA)
<p>NotImplementError が残っていたので NotImplementedError に変更していて気づいたのですが、<br>
以下のように IRB.fail が NoMethodError になるようです。</p>
<p>% ruby -v -r irb/output-method -e 'IRB::OutputMethod.new.print'<br>
ruby 2.0.0dev (2012-06-27 trunk 36240) [x86_64-linux]<br>
.../lib/ruby/2.0.0/irb/output-method.rb:22:in <code>print': private method </code>fail' called for IRB:Module (NoMethodError)<br>
from -e:1:in `'</p>
<p>変更前は NameError でした。</p>
<p>% ruby -r irb/output-method -e 'IRB::OutputMethod.new.print'<br>
.../lib/ruby/2.0.0/irb/output-method.rb:22:in <code>print': uninitialized constant IRB::OutputMethod::NotImplementError (NameError) from -e:1:in </code>'</p>
Ruby master - Bug #6598 (Closed): tool/runruby.rb の File.realpath
https://bugs.ruby-lang.org/issues/6598
2012-06-16T00:54:11Z
znz (Kazuhiro NISHIYAMA)
<p>File.realpath が定義されていないときに定義している File.realpath がホームディレクトリを返すだけで File.realpath の代わりになっていません。</p>
Ruby master - Bug #6160 (Closed): '\\'.delete('\\') raise ArgumentError: empty string
https://bugs.ruby-lang.org/issues/6160
2012-03-17T01:40:37Z
znz (Kazuhiro NISHIYAMA)
<p>r35069 の変更の影響でクリーンビルドすると<br>
../tool/transcode-tblgen.rb:758:in `delete': empty string (ArgumentError)<br>
で止まります。</p>
<p>再現条件を絞り込んだところ '\'.delete('\') で ArgumentError になりました。</p>
Ruby master - Bug #5879 (Closed): $ignore_error use before set
https://bugs.ruby-lang.org/issues/5879
2012-01-12T01:19:29Z
znz (Kazuhiro NISHIYAMA)
<p>lib/mkmf.rb で make_makefile の中で<br>
$ignore_error = $nmake ? '' : ' 2> /dev/null || true'<br>
と $ignore_error が設定されていますが、 make_makefile の呼び出しよりも前の<br>
CLEANINGS への代入で $ignore_error が使われていて、<br>
DISTCLEANDIRS の RMDIRS に ' 2> /dev/null || true' が付きません。</p>
<p>この影響で make realclean などで Linux だと「rmdir: オペランドがありません」、<br>
Mac OS X だと「usage: rmdir [-p] directory ...」というメッセージが出ます。</p>
Ruby master - Bug #5637 (Closed): warnings of shellescape
https://bugs.ruby-lang.org/issues/5637
2011-11-15T16:29:56Z
znz (Kazuhiro NISHIYAMA)
<p>\あ</p>
Ruby master - Bug #4863 (Third Party's Issue): config.charset not found
https://bugs.ruby-lang.org/issues/4863
2011-06-10T16:15:33Z
znz (Kazuhiro NISHIYAMA)
<p>ext/iconv/charset_alias.rb と ext/iconv/mkwrapper.rb に<br>
<a href="http://www.ctan.org/get/macros/texinfo/texinfo/gnulib/lib/config.charset" class="external">http://www.ctan.org/get/macros/texinfo/texinfo/gnulib/lib/config.charset</a><br>
という URL が書いてありますが、存在しなくなっているようです。</p>
Ruby master - Bug #4846 (Closed): Permission denied - /tmp/nonexisting
https://bugs.ruby-lang.org/issues/4846
2011-06-07T03:32:34Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
なぜか chkbuild が所有者になっている /tmp/nonexisting というファイルが存在していて、<br>
test_s_binwrite(TestIO) と test_s_write(TestIO) が以下の Failure になります。</p>
<p>[Errno::EINVAL] exception expected, not<br>
Class: <a href="Errno::EACCES" class="external">Errno::EACCES</a><br>
Message: <"Permission denied - /tmp/nonexisting"></p>
<p>基本的には (Tempfile や Tmpdir 以外で) ファイルを作成するなら ensure で確実に削除してください。</p>
<p>そもそも /tmp 決め打ちでファイルを読み書きしないでください。</p>
<p>プラットフォームによっては /tmp がなかったり、/tmp があっても symlink attack の危険があったり、複数のユーザで同時に test-all を実行したときに問題が起きたりすると思います。</p>
<p>=end</p>
Ruby master - Bug #4241 (Closed): IMAPTest#test_imaps_verify_none does not stop
https://bugs.ruby-lang.org/issues/4241
2011-01-06T20:09:52Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
IMAPTest#test_imaps_verify_none hangs up and can not stop with SIGINT.<br>
I guess problem exists in ossl_ssl_shutdown, and running test does not stop with reverting r30451 .</p>
<p>% ruby-trunk test/net/imap/test_imap.rb -v -n test_imaps_verify_none<br>
Run options: -v -n test_imaps_verify_none</p>
<a name="Running-tests"></a>
<h1 >Running tests:<a href="#Running-tests" class="wiki-anchor">¶</a></h1>
<p>IMAPTest#test_imaps_verify_none =<br>
=end</p>
Ruby master - Bug #4152 (Closed): optparseのzsh compsysでrspecの補完が出来ない
https://bugs.ruby-lang.org/issues/4152
2010-12-12T21:22:18Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
説明部分のエスケープが足りていなくて、補完が出来ないコマンドがあります。</p>
<p>% rspec-trunk [TAB]<br>
_arguments:comparguments:303: invalid option definition: -f[Choose a formatter [p]rogress (default - dots) [d]ocumentation (group and example names) [h]tml [t]extmate custom formatter class name]<br>
% rspec-trunk --help<br>
Usage: rspec [options] [files or directories]<br>
-b, --backtrace Enable full backtrace<br>
-c, --[no-]color, --[no-]colour Enable color in the output<br>
-d, --debug Enable debugging<br>
-e, --example PATTERN Run examples whose full descriptions match this pattern<br>
(PATTERN is compiled into a Ruby regular expression)<br>
-f, --format FORMATTER Choose a formatter<br>
[p]rogress (default - dots)<br>
[d]ocumentation (group and example names)<br>
[h]tml<br>
[t]extmate<br>
custom formatter class name<br>
-o, --out FILE output to a file instead of STDOUT<br>
-I DIRECTORY specify $LOAD_PATH directory (may be used more than once)<br>
-l, --line_number LINE Specify the line number of a single example to run<br>
-p, --profile Enable profiling of examples with output of the top 10 slowest examples<br>
-r, --require PATH Require a file<br>
-v, --version Show version<br>
-X, --drb Run examples via DRb<br>
--configure COMMAND Generate configuration files<br>
--drb-port [PORT] Port to connect to on the DRb server<br>
--tty<br>
--fail-fast Use the fail_fast option to tell RSpec to abort the run on first failure.<br>
-t, --tag TAG[:VALUE] Run examples with the specified tag<br>
To exclude examples, add ~ before the tag (e.g. ~slow)<br>
(TAG is always converted to a symbol)<br>
-h, --help You're looking at it.<br>
% rspec-trunk --version<br>
2.2.1<br>
%<br>
=end</p>
Ruby master - Bug #4124 (Closed): optparse: needless argument: --help=zshcomplete=COMMAND
https://bugs.ruby-lang.org/issues/4124
2010-12-06T19:17:34Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
opttest.rb のようにデフォルト以外の --help があると補完の生成がうまくいかないようです。</p>
<p>% generate-complete-function/ruby/optparse sample/optparse/opttest.rb<br>
opttest: needless argument: --help=zshcomplete=opttest.rb<br>
%<br>
=end</p>
Ruby master - Bug #3934 (Rejected): ChangeLog-1.9.3
https://bugs.ruby-lang.org/issues/3934
2010-10-12T18:58:14Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
<a class="issue tracker-4 status-5 priority-4 priority-default closed" title="Backport: lib/un.rb (httpd): SIGQUIT and SIGHUP are not guaranteed to exist. (Closed)" href="https://bugs.ruby-lang.org/issues/3932">#3932</a> を調べていて気づいたのですが、trunk/ChangeLog の末尾に</p>
<blockquote>
<p>For the changes before 1.9.3, see doc/ChangeLog-1.9.3</p>
</blockquote>
<p>と書いてありますが、 1.9.2(-p0) に入っていない変更も doc/ChangeLog-1.9.3 に移動しているのは意図的でしょうか?<br>
=end</p>
Ruby master - Bug #3650 (Closed): NEWSの不整合
https://bugs.ruby-lang.org/issues/3650
2010-08-03T23:16:47Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
git diff origin/ruby_1_9_2 NEWS で trunk/NEWS と branches/ruby_1_9_2/NEWS の差分をみてみました。</p>
<ul>
<li>io/console は「== Changes since the 1.9.1 release」の上に移動</li>
<li>stringio と zlib の new methods は branches/ruby_1_9_2/NEWS にもコピー</li>
<li>DL から Psych の説明のあたりは trunk/NEWS にもコピー<br>
すれば良いのではないでしょうか。</li>
</ul>
<p>diff --git a/NEWS b/NEWS<br>
index 5ff0579..f642127 100644<br>
--- a/NEWS<br>
+++ b/NEWS<br>
@@ -8,6 +8,21 @@ Note that each entry is kept so brief that no reason behind or<br>
reference information is supplied with. For a full list of changes<br>
with all sufficient information, see the ChangeLog file.</p>
<p>+== Changes since the 1.9.2 release<br>
+=== Library updates (outstanding ones only)<br>
+<br>
+* builtin classes<br>
+</p>
<ul>
<li>
<ul>
<li>Kernel</li>
</ul>
</li>
<li>
<li>
<ul>
<li>Kernel#respond_to? now returns false for protected methods.</li>
</ul>
</li>
<li>
</ul>
<p>+=== Compatibility issues (excluding feature bug fixes)<br>
+<br>
+* Kernel#respond_to?<br>
+</p>
<ul>
<li>See above.</li>
<li>
</ul>
<p>== Changes since the 1.9.1 release<br>
=== Library updates (outstanding ones only)</p>
<p>@@ -218,20 +233,6 @@ with all sufficient information, see the ChangeLog file.<br>
* RSS::Maker: item.guid.permanent_link=<br>
* new alias of item.guid.isPermaLink=</p>
<p>-* DL</p>
<ul>
<li>
<ul>
<li>Now uses libffi as a backend if avaiable.</li>
</ul>
</li>
<li>It means DL works fine on more platforms.</li>
<li>
</ul>
<p>-* Fiddle</p>
<ul>
<li>
<ul>
<li>A lightweight wrapper for libffi.</li>
</ul>
</li>
<li>
</ul>
<p>-* YAML</p>
<ul>
<li>
<ul>
<li>Now uses libyaml as a backend if available.</li>
</ul>
</li>
<li>It means YAML library supports new standards for YAML.</li>
<li>
</ul>
<p>-* Psych</p>
<ul>
<li>
<ul>
<li>A wrapper for libyaml.</li>
</ul>
</li>
<li>
</ul>
<ul>
<li>JSON
<ul>
<li>Update to JSON 1.1.9</li>
</ul>
</li>
</ul>
<p>@@ -375,6 +376,10 @@ with all sufficient information, see the ChangeLog file.<br>
* socket option name<br>
* shutdown's argument</p>
<p>+* stringio</p>
<ul>
<li>
<ul>
<li>new methods:</li>
</ul>
</li>
<li>
<ul>
<li>StringIO#read_nonblock</li>
</ul>
</li>
<li>
<ul>
<li>StringIO#write_nonblock</li>
</ul>
</li>
</ul>
<ul>
<li>pathname
<ul>
<li>new methods:
<ul>
<li>Pathname#binread<br>
@@ -431,11 +436,24 @@ with all sufficient information, see the ChangeLog file.</li>
</ul>
</li>
</ul>
</li>
<li>zlib
<ul>
<li>new methods:
<ul>
<li>Zlib::GzipFile#path</li>
</ul>
</li>
</ul>
</li>
</ul>
<ul>
<li>
<ul>
<li>Zlib.#adler32_combine</li>
</ul>
</li>
<li>
<ul>
<li>Zlib.#crc32_combine</li>
</ul>
</li>
</ul>
<ul>
<li>rbconfig
<ul>
<li>new methods:
<ul>
<li>RbConfig.ruby</li>
</ul>
</li>
</ul>
</li>
</ul>
<p>+* io/console</p>
<ul>
<li>
<ul>
<li>new methods:</li>
</ul>
</li>
<li>
<ul>
<li>IO#noecho {|io| }</li>
</ul>
</li>
<li>
<ul>
<li>IO#echo=</li>
</ul>
</li>
<li>
<ul>
<li>IO#echo?</li>
</ul>
</li>
<li>
<ul>
<li>IO#raw {|io| }</li>
</ul>
</li>
<li>
<ul>
<li>IO#raw!</li>
</ul>
</li>
<li>
<ul>
<li>IO#getch</li>
</ul>
</li>
<li>
<ul>
<li>IO#winsize</li>
</ul>
</li>
<li>
<ul>
<li>IO.console</li>
</ul>
</li>
<li>
</ul>
<p>=== Language changes</p>
<ul>
<li>Regexp properties (\p{}) names now ignore underscores, spaces, and case, so<br>
=end</li>
</ul>
Ruby master - Bug #3477 (Closed): un.rb: httpd: --max-clients does not work
https://bugs.ruby-lang.org/issues/3477
2010-06-25T04:27:01Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
un.rb の httpd で --max-clients オプションを指定すると ArgumentError になります。<br>
どこかで to_i しておかないといけないようです。</p>
<p>% ruby-trunk -v<br>
ruby 1.9.3dev (2010-06-18 trunk 28359) [x86_64-linux]<br>
% ruby-trunk -run -e httpd -- --max-clients=1 .<br>
.../thread.rb:252:in <code>>': comparison of String with 0 failed (ArgumentError) from .../thread.rb:252:in </code>initialize'<br>
from .../webrick/server.rb:49:in <code>new' from .../webrick/server.rb:49:in </code>initialize'<br>
from .../webrick/httpserver.rb:24:in <code>initialize' from .../un.rb:311:in </code>new'<br>
from .../un.rb:311:in <code>block in httpd' from .../un.rb:60:in </code>setup'<br>
from .../un.rb:302:in <code>httpd' from -e:1:in </code>'<br>
%<br>
=end</p>
Ruby master - Bug #3476 (Closed): un.rb: httpd: invalid option --http-version
https://bugs.ruby-lang.org/issues/3476
2010-06-25T04:24:29Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
un.rb の httpd の help で --http-version というオプションがあると出ますが、<br>
--HTTPVersion にしないと使えません。</p>
<p>% ruby-trunk -v<br>
ruby 1.9.3dev (2010-06-18 trunk 28359) [x86_64-linux]<br>
% ruby-trunk -run -e help httpd<br>
Run WEBrick HTTP server.</p>
<p>ruby -run -e httpd -- [OPTION] DocumentRoot</p>
<p>--bind-address=ADDR address to bind<br>
--port=NUM listening port number<br>
--max-clients=MAX max number of simultaneous clients<br>
--temp-dir=DIR temporary directory<br>
--do-not-reverse-lookup disable reverse lookup<br>
--request-timeout=SECOND request timeout in seconds<br>
--http-version=VERSION HTTP version<br>
-v verbose</p>
<p>% ruby-trunk -run -e httpd -- --http-version=1.0 .<br>
.../un.rb:52:in <code>block in setup': invalid option: --http-version=1.0 (OptionParser::InvalidOption) from .../un.rb:38:in </code>new'<br>
from .../un.rb:38:in <code>setup' from .../un.rb:302:in </code>httpd'<br>
from -e:1:in `'<br>
%<br>
=end</p>
Ruby master - Bug #3371 (Closed): test-all aborted on amd64 lenny
https://bugs.ruby-lang.org/issues/3371
2010-05-31T19:48:30Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
amd64のlennyで<br>
<a href="http://chkbuild.n-z.jp/ruby/debian-amd64/ruby-trunk/log/20100507T073828.diff.txt.gz" class="external">http://chkbuild.n-z.jp/ruby/debian-amd64/ruby-trunk/log/20100507T073828.diff.txt.gz</a><br>
のあたりから test-all がすべてのテストを実行後、 Aborted (core dumped) になって結果が表示されません。<br>
=end</p>
Ruby master - Bug #3295 (Closed): make test aborted
https://bugs.ruby-lang.org/issues/3295
2010-05-14T22:46:57Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
Ubuntu lucid の環境で<br>
<a href="https://wiki.ubuntu.com/CompilerFlags" class="external">https://wiki.ubuntu.com/CompilerFlags</a><br>
の stack smashing protector (GccSsp) の影響だと思うのですが、<br>
make test で abort します。</p>
<p>% lsb_release -a<br>
No LSB modules are available.<br>
Distributor ID: Ubuntu<br>
Description: Ubuntu 10.04 LTS<br>
Release: 10.04<br>
Codename: lucid<br>
% gcc -v<br>
Using built-in specs.<br>
Target: i486-linux-gnu<br>
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.4.3-4ubuntu5' --with-bugurl=file:///usr/share/doc/gcc-4.4/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --enable-shared --enable-multiarch --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.4 --program-suffix=-4.4 --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-plugin --enable-objc-gc --enable-targets=all --disable-werror --with-arch-32=i486 --with-tune=generic --enable-checking=release --build=i486-linux-gnu --host=i486-linux-gnu --target=i486-linux-gnu<br>
Thread model: posix<br>
gcc version 4.4.3 (Ubuntu 4.4.3-4ubuntu5)<br>
% make test</p>
<p>sample/test.rb:assignment ....................................................................................................................................................................................................................................................................................................................................................................................<br>
sample/test.rb:condition ..<br>
sample/test.rb:if/unless ...<br>
sample/test.rb:case .....<br>
sample/test.rb:while/until ........<br>
sample/test.rb:exception ..........<br>
sample/test.rb:array .......................................<br>
sample/test.rb:hash ...........................<br>
sample/test.rb:iterator ...............................................................................................................<br>
sample/test.rb:float ................................................................................<br>
sample/test.rb:bignum ...............................<br>
sample/test.rb:string & char ..............................................................<br>
sample/test.rb:assignment ..........<br>
sample/test.rb:call ......<br>
sample/test.rb:proc .........<br>
sample/test.rb:signal ..<br>
sample/test.rb:eval .............................<br>
sample/test.rb:system .........<br>
sample/test.rb:const .....<br>
sample/test.rb:clone .....<br>
sample/test.rb:marshal ....<br>
sample/test.rb:pack ....<br>
sample/test.rb:math ..<br>
sample/test.rb:struct ......<br>
sample/test.rb:variable ...........<br>
sample/test.rb:trace ...<br>
sample/test.rb:defined? ............<br>
sample/test.rb:alias ......<br>
sample/test.rb:path .......................<br>
sample/test.rb:gc ....<br>
test succeeded</p>
<p>test_attr.rb ..<br>
test_autoload.rb ...........<br>
test_block.rb .......................................................<br>
test_class.rb ............................................<br>
test_eval.rb ....................................<br>
test_exception.rb .................................<br>
test_finalizer.rb .<br>
test_flip.rb .<br>
test_flow.rb ................................................<br>
test_fork.rb ....<br>
test_gc.rb ..<br>
test_io.rb .................<br>
test_jump.rb .............................<br>
test_literal.rb ......................................................................................................................................................<br>
test_load.rb ..<br>
test_marshal.rb .<br>
test_massign.rb ..................................<br>
test_method.rb ............................................................................................................................................................................................................................<br>
test_objectspace.rb ...<br>
test_proc.rb ..................................<br>
test_struct.rb .<br>
test_syntax.rb .........................................................................................................................................................<br>
test_thread.rb .................................*** longjmp causes uninitialized stack frame <em><strong>: /home/kazu/tmp/ruby/ruby-trunk/_build/ruby terminated<br>
======= Backtrace: =========<br>
/lib/tls/i686/cmov/libc.so.6(__fortify_fail+0x50)[0x4019a350]<br>
/lib/tls/i686/cmov/libc.so.6(+0xe22ba)[0x4019a2ba]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x8168ed4]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x8169083]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby(rb_fiber_resume+0xaf)[0x8169c4f]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x819c74f]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x819d507]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x8157b91]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x8159f38]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x815d906]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x815f26e]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby(rb_rescue2+0x141)[0x805e1d1]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x814d4c4]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x8157b91]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x8159f38]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x815d906]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby(rb_iseq_eval_main+0x1c7)[0x815dcd7]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x805e422]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby(ruby_run_node+0x32)[0x805fc32]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby(main+0x5a)[0x805d65a]<br>
/lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xe6)[0x400cebd6]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x805d561]<br>
======= Memory map: ========<br>
08048000-08212000 r-xp 00000000 fb:00 538613665 /home/kazu/tmp/ruby/ruby-trunk/_build/ruby<br>
08212000-08213000 r--p 001c9000 fb:00 538613665 /home/kazu/tmp/ruby/ruby-trunk/_build/ruby<br>
08213000-08214000 rw-p 001ca000 fb:00 538613665 /home/kazu/tmp/ruby/ruby-trunk/_build/ruby<br>
08214000-08221000 rw-p 00000000 00:00 0<br>
09654000-0977f000 rw-p 00000000 00:00 0 [heap]<br>
40000000-4001b000 r-xp 00000000 08:01 10043411 /lib/ld-2.11.1.so<br>
4001b000-4001c000 r--p 0001a000 08:01 10043411 /lib/ld-2.11.1.so<br>
4001c000-4001d000 rw-p 0001b000 08:01 10043411 /lib/ld-2.11.1.so<br>
4001d000-4001e000 r-xp 00000000 00:00 0 [vdso]<br>
4001e000-40020000 rw-p 00000000 00:00 0<br>
40020000-40027000 r--s 00000000 08:01 1647078 /usr/lib/gconv/gconv-modules.cache<br>
40027000-40028000 ---p 00000000 00:00 0<br>
40028000-4002b000 rw-p 00000000 00:00 0<br>
4002b000-4002d000 r-xp 00000000 fb:00 807287925 /home/kazu/tmp/ruby/ruby-trunk/_build/.ext/i686-linux/enc/encdb.so<br>
4002d000-4002e000 r--p 00001000 fb:00 807287925 /home/kazu/tmp/ruby/ruby-trunk/_build/.ext/i686-linux/enc/encdb.so<br>
4002e000-4002f000 rw-p 00002000 fb:00 807287925 /home/kazu/tmp/ruby/ruby-trunk/_build/.ext/i686-linux/enc/encdb.so<br>
4002f000-40031000 r-xp 00000000 fb:00 269946659 /home/kazu/tmp/ruby/ruby-trunk/_build/.ext/i686-linux/enc/trans/transdb.so<br>
40031000-40032000 r--p 00001000 fb:00 269946659 /home/kazu/tmp/ruby/ruby-trunk/_build/.ext/i686-linux/enc/trans/transdb.so<br>
40032000-40033000 rw-p 00002000 fb:00 269946659 /home/kazu/tmp/ruby/ruby-trunk/_build/.ext/i686-linux/enc/trans/transdb.so<br>
40039000-4004e000 r-xp 00000000 08:01 10044432 /lib/tls/i686/cmov/libpthread-2.11.1.so<br>
4004e000-4004f000 r--p 00014000 08:01 10044432 /lib/tls/i686/cmov/libpthread-2.11.1.so<br>
4004f000-40050000 rw-p 00015000 08:01 10044432 /lib/tls/i686/cmov/libpthread-2.11.1.so<br>
40050000-40052000 rw-p 00000000 00:00 0<br>
40052000-40059000 r-xp 00000000 08:01 10044434 /lib/tls/i686/cmov/librt-2.11.1.so<br>
40059000-4005a000 r--p 00006000 08:01 10044434 /lib/tls/i686/cmov/librt-2.11.1.so<br>
4005a000-4005b000 rw-p 00007000 08:01 10044434 /lib/tls/i686/cmov/librt-2.11.1.so<br>
4005b000-4005c000 rw-p 00000000 00:00 0<br>
4005c000-4005e000 r-xp 00000000 08:01 10044421 /lib/tls/i686/cmov/libdl-2.11.1.so<br>
4005e000-4005f000 r--p 00001000 08:01 10044421 /lib/tls/i686/cmov/libdl-2.11.1.so<br>
4005f000-40060000 rw-p 00002000 08:01 10044421 /lib/tls/i686/cmov/libdl-2.11.1.so<br>
40060000-40069000 r-xp 00000000 08:01 10044420 /lib/tls/i686/cmov/libcrypt-2.11.1.so<br>
40069000-4006a000 r--p 00008000 08:01 10044420 /lib/tls/i686/cmov/libcrypt-2.11.1.so<br>
4006a000-4006b000 rw-p 00009000 08:01 10044420 /lib/tls/i686/cmov/libcrypt-2.11.1.so<br>
4006b000-40092000 rw-p 00000000 00:00 0<br>
40092000-400b6000 r-xp 00000000 08:01 10044422 /lib/tls/i686/cmov/libm-2.11.1.so<br>
400b6000-400b7000 r--p 00023000 08:01 10044422 /lib/tls/i686/cmov/libm-2.11.1.so<br>
400b7000-400b8000 rw-p 00024000 08:01 10044422 /lib/tls/i686/cmov/libm-2.11.1.so<br>
400b8000-4020b000 r-xp 00000000 08:01 10044418 /lib/tls/i686/cmov/libc-2.11.1.so<br>
4020b000-4020c000 ---p 00153000 08:01 10044418 /lib/tls/i686/cmov/libc-2.11.1.so<br>
4020c000-4020e000 r--p 00153000 08:01 10044418 /lib/tls/i686/cmov/libc-2.11.1.so<br>
4020e000-4020f000 rw-p 00155000 08:01 10044418 /lib/tls/i686/cmov/libc-2.11.1.so<br>
4020f000-40214000 rw-p 00000000 00:00 0<br>
40214000-40295000 r--p 00000000 08:01 9767830 /usr/lib/locale/ja_JP.utf8/LC_CTYPE<br>
40295000-40326000 rw-p 00000000 00:00 0<br>
4033f000-4035c000 r-xp 00000000 08:01 10045150 /lib/libgcc_s.so.1<br>
4035c000-4035d000 r--p 0001c000 08:01 10045150 /lib/libgcc_s.so.1<br>
4035d000-4035e000 rw-p 0001d000 08:01 10045150 /lib/libgcc_s.so.1<br>
bfc61000-bfc77000 rw-p 00000000 00:00 0 [stack]<br>
F</strong></em> longjmp causes uninitialized stack frame ***: /home/kazu/tmp/ruby/ruby-trunk/_build/ruby terminated<br>
======= Backtrace: =========<br>
/lib/tls/i686/cmov/libc.so.6(__fortify_fail+0x50)[0x4019a350]<br>
/lib/tls/i686/cmov/libc.so.6(+0xe22ba)[0x4019a2ba]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x8168ed4]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x8169083]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby(rb_fiber_resume+0xaf)[0x8169c4f]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x819c74f]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x819d507]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x8157b91]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x8159f38]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x815d906]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x815f26e]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby(rb_rescue2+0x141)[0x805e1d1]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x814d4c4]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x8157b91]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x8159f38]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x815d906]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby(rb_iseq_eval_main+0x1c7)[0x815dcd7]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x805e422]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby(ruby_run_node+0x32)[0x805fc32]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby(main+0x5a)[0x805d65a]<br>
/lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xe6)[0x400cebd6]<br>
/home/kazu/tmp/ruby/ruby-trunk/_build/ruby[0x805d561]<br>
======= Memory map: ========<br>
08048000-08212000 r-xp 00000000 fb:00 538613665 /home/kazu/tmp/ruby/ruby-trunk/_build/ruby<br>
08212000-08213000 r--p 001c9000 fb:00 538613665 /home/kazu/tmp/ruby/ruby-trunk/_build/ruby<br>
08213000-08214000 rw-p 001ca000 fb:00 538613665 /home/kazu/tmp/ruby/ruby-trunk/_build/ruby<br>
08214000-08221000 rw-p 00000000 00:00 0<br>
08b7a000-08ca5000 rw-p 00000000 00:00 0 [heap]<br>
40000000-4001b000 r-xp 00000000 08:01 10043411 /lib/ld-2.11.1.so<br>
4001b000-4001c000 r--p 0001a000 08:01 10043411 /lib/ld-2.11.1.so<br>
4001c000-4001d000 rw-p 0001b000 08:01 10043411 /lib/ld-2.11.1.so<br>
4001d000-4001e000 r-xp 00000000 00:00 0 [vdso]<br>
4001e000-40020000 rw-p 00000000 00:00 0<br>
40020000-40027000 r--s 00000000 08:01 1647078 /usr/lib/gconv/gconv-modules.cache<br>
40027000-40028000 ---p 00000000 00:00 0<br>
40028000-4002b000 rw-p 00000000 00:00 0<br>
4002b000-4002d000 r-xp 00000000 fb:00 807287925 /home/kazu/tmp/ruby/ruby-trunk/_build/.ext/i686-linux/enc/encdb.so<br>
4002d000-4002e000 r--p 00001000 fb:00 807287925 /home/kazu/tmp/ruby/ruby-trunk/_build/.ext/i686-linux/enc/encdb.so<br>
4002e000-4002f000 rw-p 00002000 fb:00 807287925 /home/kazu/tmp/ruby/ruby-trunk/_build/.ext/i686-linux/enc/encdb.so<br>
4002f000-40031000 r-xp 00000000 fb:00 269946659 /home/kazu/tmp/ruby/ruby-trunk/_build/.ext/i686-linux/enc/trans/transdb.so<br>
40031000-40032000 r--p 00001000 fb:00 269946659 /home/kazu/tmp/ruby/ruby-trunk/_build/.ext/i686-linux/enc/trans/transdb.so<br>
40032000-40033000 rw-p 00002000 fb:00 269946659 /home/kazu/tmp/ruby/ruby-trunk/_build/.ext/i686-linux/enc/trans/transdb.so<br>
40039000-4004e000 r-xp 00000000 08:01 10044432 /lib/tls/i686/cmov/libpthread-2.11.1.so<br>
4004e000-4004f000 r--p 00014000 08:01 10044432 /lib/tls/i686/cmov/libpthread-2.11.1.so<br>
4004f000-40050000 rw-p 00015000 08:01 10044432 /lib/tls/i686/cmov/libpthread-2.11.1.so<br>
40050000-40052000 rw-p 00000000 00:00 0<br>
40052000-40059000 r-xp 00000000 08:01 10044434 /lib/tls/i686/cmov/librt-2.11.1.so<br>
40059000-4005a000 r--p 00006000 08:01 10044434 /lib/tls/i686/cmov/librt-2.11.1.so<br>
4005a000-4005b000 rw-p 00007000 08:01 10044434 /lib/tls/i686/cmov/librt-2.11.1.so<br>
4005b000-4005c000 rw-p 00000000 00:00 0<br>
4005c000-4005e000 r-xp 00000000 08:01 10044421 /lib/tls/i686/cmov/libdl-2.11.1.so<br>
4005e000-4005f000 r--p 00001000 08:01 10044421 /lib/tls/i686/cmov/libdl-2.11.1.so<br>
4005f000-40060000 rw-p 00002000 08:01 10044421 /lib/tls/i686/cmov/libdl-2.11.1.so<br>
40060000-40069000 r-xp 00000000 08:01 10044420 /lib/tls/i686/cmov/libcrypt-2.11.1.so<br>
40069000-4006a000 r--p 00008000 08:01 10044420 /lib/tls/i686/cmov/libcrypt-2.11.1.so<br>
4006a000-4006b000 rw-p 00009000 08:01 10044420 /lib/tls/i686/cmov/libcrypt-2.11.1.so<br>
4006b000-40092000 rw-p 00000000 00:00 0<br>
40092000-400b6000 r-xp 00000000 08:01 10044422 /lib/tls/i686/cmov/libm-2.11.1.so<br>
400b6000-400b7000 r--p 00023000 08:01 10044422 /lib/tls/i686/cmov/libm-2.11.1.so<br>
400b7000-400b8000 rw-p 00024000 08:01 10044422 /lib/tls/i686/cmov/libm-2.11.1.so<br>
400b8000-4020b000 r-xp 00000000 08:01 10044418 /lib/tls/i686/cmov/libc-2.11.1.so<br>
4020b000-4020c000 ---p 00153000 08:01 10044418 /lib/tls/i686/cmov/libc-2.11.1.so<br>
4020c000-4020e000 r--p 00153000 08:01 10044418 /lib/tls/i686/cmov/libc-2.11.1.so<br>
4020e000-4020f000 rw-p 00155000 08:01 10044418 /lib/tls/i686/cmov/libc-2.11.1.so<br>
4020f000-40214000 rw-p 00000000 00:00 0<br>
40214000-40295000 r--p 00000000 08:01 9767830 /usr/lib/locale/ja_JP.utf8/LC_CTYPE<br>
40295000-40326000 rw-p 00000000 00:00 0<br>
4033f000-4035c000 r-xp 00000000 08:01 10045150 /lib/libgcc_s.so.1<br>
4035c000-4035d000 r--p 0001c000 08:01 10045150 /lib/libgcc_s.so.1<br>
4035d000-4035e000 rw-p 0001d000 08:01 10045150 /lib/libgcc_s.so.1<br>
bff00000-bff16000 rw-p 00000000 00:00 0 [stack]<br>
F...............<br>
<a class="issue tracker-4 status-5 priority-4 priority-default closed" title="Backport: threadのQueue#popでまっているときにTimeout.timeoutによるタイムアウトが発生したあとQueue#pushでささる (Closed)" href="https://bugs.ruby-lang.org/issues/915">#915</a> test_thread.rb:307:in <code><top (required)>': g = "abc".enum_for(:scan, /./) loop { g.next } #=> killed by SIGABRT (signal 6) <a href="https://blade.ruby-lang.org/ruby-dev/34128">[ruby-dev:34128]</a> #916 test_thread.rb:312:in </code><top (required)>':<br>
g = Module.enum_for(:new)<br>
loop { g.next }<br>
#=> killed by SIGABRT (signal 6) <a href="https://blade.ruby-lang.org/ruby-dev/34128">[ruby-dev:34128]</a><br>
FAIL 2/931 tests failed<br>
make: *** [yes-btest-ruby] エラー 1<br>
%<br>
=end</p>
Ruby master - Bug #3126 (Closed): irb/completionでTypeError
https://bugs.ruby-lang.org/issues/3126
2010-04-11T11:34:30Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
irb/completion を読み込んでいると「a.」や「C::」などの後にタブキーを押すと<br>
.../irb/completion.rb:137:in <code>quote': can't convert NilClass to String (TypeError) や .../irb/completion.rb:87:in </code>quote': can't convert NilClass to String (TypeError)<br>
で終了してしまいます。</p>
<p>以下の修正で直るようです。</p>
<p>diff --git a/lib/irb/completion.rb b/lib/irb/completion.rb<br>
index a345c23..e059bc4 100644<br>
--- a/lib/irb/completion.rb<br>
+++ b/lib/irb/completion.rb<br>
@@ -81,10 +81,10 @@ module IRB<br>
candidates.grep(/^#{receiver}/).collect{|e| "::" + e}</p>
<a name="when-A-Z"></a>
<h1 >when /^(((::)?[A-Z][^:.\(]<em>)+)::?([^:.]</em>)$/<a href="#when-A-Z" class="wiki-anchor">¶</a></h1>
<ul>
<li>
<pre><code> when /^([A-Z].*)::([^:.]+)*$/
</code></pre>
</li>
</ul>
<ul>
<li>
<pre><code> when /^([A-Z].*)::([^:.]*)$/
</code></pre>
<a name="Constant-or-class-methods"></a>
<h1 >Constant or class methods<a href="#Constant-or-class-methods" class="wiki-anchor">¶</a></h1>
receiver = $1</li>
</ul>
<ul>
<li>message = Regexp.quote($4)</li>
</ul>
<ul>
<li>message = Regexp.quote($2)<br>
begin<br>
candidates = eval("#{receiver}.constants.collect{|m| m.to_s}", bind)<br>
candidates |= eval("#{receiver}.methods.collect{|m| m.to_s}", bind)<br>
@@ -134,7 +134,7 @@ module IRB<br>
when /^([^."].<em>).([^.]</em>)$/
<a name="variable"></a>
<h1 >variable<a href="#variable" class="wiki-anchor">¶</a></h1>
receiver = $1</li>
</ul>
<ul>
<li>message = Regexp.quote($3)</li>
</ul>
<ul>
<li>
<p>message = Regexp.quote($2)</p>
<p>gv = eval("global_variables", bind).collect{|m| m.to_s}<br>
lv = eval("local_variables", bind).collect{|m| m.to_s}<br>
=end</p>
</li>
</ul>
Ruby master - Bug #3012 (Closed): update file list in sample/README
https://bugs.ruby-lang.org/issues/3012
2010-03-25T19:49:39Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
diff --git a/sample/README b/sample/README<br>
index 9187a9d..930172b 100644<br>
--- a/sample/README<br>
+++ b/sample/README<br>
@@ -3,10 +3,10 @@ biorhythm.rb biorhythm calculator<br>
cal.rb cal(1) clone<br>
cbreak.rb no echo done by ioctl<br>
clnt.rb socket client<br>
+coverage.rb<br>
dir.rb directory access<br>
dualstack-fetch.rb IPv6 demo<br>
dualstack-httpd.rb IPv6 demo<br>
-dstore.rb object database on dbm<br>
eval.rb simple evaluator<br>
export.rb method access example<br>
exyacc.rb extrace BNF from yacc file<br>
@@ -19,8 +19,6 @@ fib.scm Fibonacci number (Scheme)<br>
freq.rb count word occurrence<br>
from.rb scan mail spool<br>
fullpath.rb convert ls -lR to fullpath format<br>
-io.rb io test<br>
-irb.rb interactive ruby<br>
less.rb front end for less<br>
list.rb stupid object sample<br>
list2.rb stupid object sample<br>
@@ -37,11 +35,11 @@ pi.rb calculate PI<br>
rcs.awk random character stereogram (AWK)<br>
rcs.rb random character stereogram (Ruby)<br>
rcs.dat data for random character stereogram<br>
-rd2html.rb rd (Ruby Document) to HTML translator<br>
sieve.rb sieve of Eratosthenes<br>
svr.rb socket server<br>
test.rb test suite used by `make test'<br>
time.rb /usr/bin/time clone<br>
+timeout.rb<br>
trojan.rb simple tool to find file that may be trojan horse.<br>
tsvr.rb socket server using thread<br>
uumerge.rb merge files and uudecode them<br>
=end</p>
Ruby 1.8 - Bug #2703 (Closed): make test failed
https://bugs.ruby-lang.org/issues/2703
2010-02-01T08:11:14Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
ruby_1_8 ブランチで make test が失敗します。</p>
<p>chkbuild のログでどこからだったのか調べてみると<br>
<a href="http://www.rubyist.net/~akr/chkbuild/debian/ruby-1.8/log/20091223T220147.diff.txt.gz" class="external">http://www.rubyist.net/~akr/chkbuild/debian/ruby-1.8/log/20091223T220147.diff.txt.gz</a><br>
からのようです。<br>
=end</p>
Ruby master - Bug #2695 (Closed): Supported Platforms
https://bugs.ruby-lang.org/issues/2695
2010-01-31T13:25:51Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
<a href="http://redmine.ruby-lang.org/wiki/ruby-19/SupportedPlatforms" class="external">http://redmine.ruby-lang.org/wiki/ruby-19/SupportedPlatforms</a> の Supported ですが、Debian GNU/Linux 4.0 on IA32 はセキュリティサポートももうすぐ終わるので、5.0 にあげた方が良いのではないでしょうか?</p>
<ul>
<li>
<a href="http://www.jp.debian.org/News/2010/20100121" class="external">http://www.jp.debian.org/News/2010/20100121</a><br>
=end</li>
</ul>
Ruby master - Bug #2414 (Closed): make test-all does not work after gem update
https://bugs.ruby-lang.org/issues/2414
2009-11-30T16:50:19Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
% ruby-trunk -e 'require "rdoc/generator/texinfo"'<br>
% gem-trunk list</p>
<p>*** LOCAL GEMS ***</p>
<p>minitest (1.4.2)<br>
rake (0.8.7)<br>
rdoc (2.2.2)<br>
% ruby-trunk -v<br>
ruby 1.9.2dev (2009-11-30 trunk 25963) [i686-linux]<br>
% gem-trunk list</p>
<p>*** LOCAL GEMS ***</p>
<p>minitest (1.4.2)<br>
rake (0.8.7)<br>
rdoc (2.2.2)<br>
% ruby-trunk -e 'require "rdoc/generator/texinfo"'<br>
% gem-trunk update<br>
Updating installed gems<br>
Updating rdoc<br>
Successfully installed rdoc-2.4.3<br>
Gems updated: rdoc<br>
Installing ri documentation for rdoc-2.4.3...<br>
Updating ri class cache with 0 classes...<br>
Installing RDoc documentation for rdoc-2.4.3...<br>
% ruby-trunk -e 'require "rdoc/generator/texinfo"'<br>
/home/kazu/opt/ruby-trunk/lib/ruby/1.9.1/rdoc/generator/texinfo.rb:13:in <code><class:TEXINFO>': uninitialized constant RDoc::Generator::MarkUp (NameError) from /home/kazu/opt/ruby-trunk/lib/ruby/1.9.1/rdoc/generator/texinfo.rb:9:in </code><a href="module:Generator" class="external">module:Generator</a>'<br>
from /home/kazu/opt/ruby-trunk/lib/ruby/1.9.1/rdoc/generator/texinfo.rb:6:in <code><module:RDoc>' from /home/kazu/opt/ruby-trunk/lib/ruby/1.9.1/rdoc/generator/texinfo.rb:5:in </code><top (required)>'<br>
from -e:1:in <code>require' from -e:1:in </code>'<br>
% make test-all TESTS=-v<br>
./miniruby -I/home/kazu/wc/ruby/trunk/lib -I.ext/common -I./- -r/home/kazu/wc/ruby/trunk/ext/purelib.rb /home/kazu/wc/ruby/trunk/tool/runruby.rb --extout=.ext -- "/home/kazu/wc/ruby/trunk/test/runner.rb" -v<br>
Gem::Indexer tests are being skipped. Install builder gem.<br>
/home/kazu/wc/ruby/trunk/lib/rake.rb:2482:in <code>const_missing': uninitialized constant RDoc::Generator::MarkUp (NameError) from /home/kazu/wc/ruby/trunk/lib/rdoc/generator/texinfo.rb:13:in </code><a href="class:TEXINFO" class="external">class:TEXINFO</a>'<br>
from /home/kazu/wc/ruby/trunk/lib/rdoc/generator/texinfo.rb:9:in <code><module:Generator>' from /home/kazu/wc/ruby/trunk/lib/rdoc/generator/texinfo.rb:6:in </code><a href="module:RDoc" class="external">module:RDoc</a>'<br>
from /home/kazu/wc/ruby/trunk/lib/rdoc/generator/texinfo.rb:5:in <code><top (required)>' from /home/kazu/wc/ruby/trunk/test/rdoc/test_rdoc_info_sections.rb:7:in </code>require'<br>
from /home/kazu/wc/ruby/trunk/test/rdoc/test_rdoc_info_sections.rb:7:in <code><top (required)>' from /home/kazu/wc/ruby/trunk/lib/test/unit.rb:55:in </code>require'<br>
from /home/kazu/wc/ruby/trunk/lib/test/unit.rb:55:in <code>block in setup_argv' from /home/kazu/wc/ruby/trunk/lib/test/unit.rb:49:in </code>each'<br>
from /home/kazu/wc/ruby/trunk/lib/test/unit.rb:49:in <code>setup_argv' from /home/kazu/wc/ruby/trunk/test/runner.rb:9:in </code>'<br>
make: *** [yes-test-all] エラー 1<br>
% gem-trunk list</p>
<p>*** LOCAL GEMS ***</p>
<p>minitest (1.4.2)<br>
rake (0.8.7)<br>
rdoc (2.4.3, 2.2.2)<br>
%<br>
=end</p>
Ruby master - Bug #2413 (Closed): MiniTest::Assertions#assert_raises ignores message
https://bugs.ruby-lang.org/issues/2413
2009-11-30T16:28:07Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
% cat test_assert_raise.rb<br>
require 'test/unit'</p>
<p>class TestFoo < Test::Unit::TestCase<br>
def test_foo<br>
assert_raise(RuntimeError, "should show this message") do<br>
end<br>
end<br>
end<br>
% ruby1.8 -v<br>
ruby 1.8.6 (2007-09-24 patchlevel 111) [i486-linux]<br>
% ruby1.8 test_assert_raise.rb<br>
Loaded suite test_assert_raise<br>
Started<br>
F<br>
Finished in 0.021458 seconds.</p>
<ol>
<li>Failure:<br>
test_foo(TestFoo) [test_assert_raise.rb:5]:<br>
should show this message.<br>
exception expected but none was thrown.</li>
</ol>
<p>1 tests, 1 assertions, 1 failures, 0 errors<br>
% ruby-trunk -v<br>
ruby 1.9.2dev (2009-11-30 trunk 25963) [i686-linux]<br>
% ruby-trunk test_assert_raise.rb<br>
Loaded suite test_assert_raise<br>
Started<br>
F<br>
Finished in 0.002544 seconds.</p>
<ol>
<li>Failure:<br>
test_foo(TestFoo) [test_assert_raise.rb:5]:<br>
RuntimeError expected but nothing was raised.</li>
</ol>
<p>1 tests, 1 assertions, 1 failures, 0 errors, 0 skips<br>
%<br>
=end</p>
Ruby master - Bug #1954 (Closed): line number 0?
https://bugs.ruby-lang.org/issues/1954
2009-08-19T02:02:26Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
$DEBUG = true の時に出てくる例外発生位置の行番号が 0 になってしまうことがあるようです。</p>
<p>% cat t0.rb<br>
$DEBUG = true<br>
Thread.start do<br>
begin<br>
Process.kill(:INT, $$)<br>
ensure<br>
raise<br>
end<br>
end.join<br>
% ruby-trunk t0.rb<br>
Exception <code>Interrupt' at t0.rb:2 - Exception </code>RuntimeError' at t0.rb:6 -<br>
Exception <code>RuntimeError' at t0.rb:0 - t0.rb:2:in </code>join': Interrupt<br>
from t0.rb:2:in `'</p>
<p>% ruby-trunk -v<br>
ruby 1.9.2dev (2009-08-18 trunk 24578) [i686-linux]<br>
%<br>
=end</p>
Ruby master - Bug #1865 (Closed): uninitialized class variable @@accept_charset in CGI
https://bugs.ruby-lang.org/issues/1865
2009-08-03T12:33:55Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
cgi/util を直接 require して CGI.unescape を使うと NameError になります。</p>
<p>% ruby-trunk -v -r cgi/util -e 'CGI.unescape("")'<br>
ruby 1.9.2dev (2009-08-03 trunk 24359) [i686-linux]<br>
/home/kazu/opt/ruby-trunk/lib/ruby/1.9.1/cgi/util.rb:15:in <code>unescape': uninitialized class variable @@accept_charset in CGI (NameError) from -e:1:in </code>'<br>
=end</p>
Ruby master - Bug #1692 (Closed): warning: useless use of a literal in void context
https://bugs.ruby-lang.org/issues/1692
2009-06-26T16:14:58Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
1.8 では<br>
warning: useless use of a literal in void context<br>
が出るときに 1.9 だと何も出ません。</p>
<p>% ruby18 -ve '1'<br>
ruby 1.8.8dev (2009-06-23 revision 23825) [i686-linux]<br>
-e:1: warning: useless use of a literal in void context<br>
% ruby-trunk -ve '1'<br>
ruby 1.9.2dev (2009-06-24 trunk 23837) [i686-linux]<br>
%<br>
=end</p>
Ruby master - Bug #1675 (Closed): typo in variable.c
https://bugs.ruby-lang.org/issues/1675
2009-06-22T18:07:58Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
geneic は generic の typo ではないでしょうか。</p>
<a name="Index-trunkvariablec"></a>
<h1 >Index: trunk/variable.c<a href="#Index-trunkvariablec" class="wiki-anchor">¶</a></h1>
<p>--- trunk/variable.c (revision 23818)<br>
+++ trunk/variable.c (working copy)<br>
@@ -920,7 +920,7 @@<br>
}</p>
<h1>size_t<br>
-rb_geneic_ivar_memsize(VALUE obj)<br>
+rb_generic_ivar_memsize(VALUE obj)<br>
{<br>
st_data_t tbl;<br>
if (st_delete(generic_iv_tbl, &obj, &tbl))<br>
Index: trunk/ext/objspace/objspace.c</h1>
<p>--- trunk/ext/objspace/objspace.c (revision 23818)<br>
+++ trunk/ext/objspace/objspace.c (working copy)<br>
@@ -34,7 +34,7 @@<br>
size_t st_memsize(st_table *);<br>
size_t rb_io_memsize(rb_io_t *);<br>
size_t onig_memsize(regex_t *);<br>
-size_t rb_geneic_ivar_memsize(VALUE);<br>
+size_t rb_generic_ivar_memsize(VALUE);<br>
size_t rb_objspace_data_type_memsize(VALUE obj);</p>
<p>void rb_objspace_each_objects(<br>
@@ -51,7 +51,7 @@<br>
}</p>
<pre><code> if (FL_TEST(obj, FL_EXIVAR)) {
</code></pre>
<ul>
<li>size += rb_geneic_ivar_memsize(obj);</li>
</ul>
<ul>
<li>
<p>size += rb_generic_ivar_memsize(obj);<br>
}</p>
<p>switch (BUILTIN_TYPE(obj)) {<br>
=end</p>
</li>
</ul>
Ruby master - Bug #1523 (Closed): typo in sample/optparse/opttest.rb
https://bugs.ruby-lang.org/issues/1523
2009-05-26T20:15:10Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
separator ではないでしょうか。</p>
<a name="Index-opttestrb"></a>
<h1 >Index: opttest.rb<a href="#Index-opttestrb" class="wiki-anchor">¶</a></h1>
<p>--- opttest.rb (リビジョン 23541)<br>
+++ opttest.rb (作業コピー)<br>
@@ -13,7 +13,7 @@ ARGV.options do<br>
|opts|<br>
opts.banner << " argv..."</p>
<ul>
<li>
<a name="separater"></a>
<h1 >separater<a href="#separater" class="wiki-anchor">¶</a></h1>
</li>
</ul>
<ul>
<li>
<a name="separator"></a>
<h1 >separator<a href="#separator" class="wiki-anchor">¶</a></h1>
opts.on_tail<br>
opts.on_tail("common options:")<br>
=end</li>
</ul>
Ruby master - Bug #1423 (Closed): config.charset not found
https://bugs.ruby-lang.org/issues/1423
2009-04-30T12:21:22Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
ext/iconv/charset_alias.rb に書いてある</p>
<a name="httpwwwctanorgtex-archivemacrostexinfotexinfointlconfigcharset"></a>
<h1 ><a href="http://www.ctan.org/tex-archive/macros/texinfo/texinfo/intl/config.charset" class="external">http://www.ctan.org/tex-archive/macros/texinfo/texinfo/intl/config.charset</a><a href="#httpwwwctanorgtex-archivemacrostexinfotexinfointlconfigcharset" class="wiki-anchor">¶</a></h1>
<a name="Fri-30-May-2003-000900-GMT"></a>
<h1 >Fri, 30 May 2003 00:09:00 GMT'<a href="#Fri-30-May-2003-000900-GMT" class="wiki-anchor">¶</a></h1>
<p>が存在しません。</p>
<p>CTAN: 402: HTTP NOT FOUND のページに書いてある<br>
<a href="http://www.ctan.org/search.html" class="external">http://www.ctan.org/search.html</a><br>
から探したところ、<br>
<a href="http://www.ctan.org/get/macros/texinfo/contrib/texinfo-hu/texinfo/intl/config.charset" class="external">http://www.ctan.org/get/macros/texinfo/contrib/texinfo-hu/texinfo/intl/config.charset</a><br>
<a href="http://www.ctan.org/get/macros/texinfo/texinfo/gnulib/lib/config.charset" class="external">http://www.ctan.org/get/macros/texinfo/texinfo/gnulib/lib/config.charset</a><br>
の2つが見つかりますが、後者のgnulibの方が新しいようです。<br>
=end</p>
Ruby master - Bug #1421 (Closed): Permission denied - ~/.ri
https://bugs.ruby-lang.org/issues/1421
2009-04-30T08:51:12Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
Some tests failed and error when home directory is not writable.</p>
<p><a href="http://chkbuild.n-z.jp/ruby/debian-amd64/ruby-trunk/last" class="external">http://chkbuild.n-z.jp/ruby/debian-amd64/ruby-trunk/last</a></p>
<ol>
<li>Failure:<br>
test_execute_remote(TestGemCommandsInstallCommand) [/home/chkbuild/tmp/build/ruby-trunk/20090429T073554/ruby/test/rubygems/test_gem_commands_install_command.rb:120]:<br>
[Gem::SystemExitException] exception expected, not<br>
Class: <a href="Errno::EACCES" class="external">Errno::EACCES</a><br>
Message: <"Permission denied - /home/chkbuild/.ri"><br>
---Backtrace---<br>
/home/chkbuild/tmp/build/ruby-trunk/20090429T073554/ruby/test/rubygems/test_gem_commands_install_command.rb:123:in <code>block (2 levels) in test_execute_remote' /home/chkbuild/tmp/build/ruby-trunk/20090429T073554/ruby/test/rubygems/test_gem_commands_install_command.rb:120:in </code>block in test_execute_remote'<br>
/home/chkbuild/tmp/build/ruby-trunk/20090429T073554/ruby/test/rubygems/test_gem_commands_install_command.rb:119:in `test_execute_remote'</li>
</ol>
<hr>
<ol start="5">
<li>
<p>Error:<br>
test_lookup_method_class_method(TestRDocRIDriver):<br>
Errno::EACCES: Permission denied - /home/chkbuild/.ri<br>
/home/chkbuild/tmp/build/ruby-trunk/20090429T073554/ruby/test/rdoc/test_rdoc_ri_driver.rb:18:in <code>new' /home/chkbuild/tmp/build/ruby-trunk/20090429T073554/ruby/test/rdoc/test_rdoc_ri_driver.rb:18:in </code>setup'</p>
</li>
<li>
<p>Error:<br>
test_lookup_method_class_missing(TestRDocRIDriver):<br>
Errno::EACCES: Permission denied - /home/chkbuild/.ri<br>
/home/chkbuild/tmp/build/ruby-trunk/20090429T073554/ruby/test/rdoc/test_rdoc_ri_driver.rb:18:in <code>new' /home/chkbuild/tmp/build/ruby-trunk/20090429T073554/ruby/test/rdoc/test_rdoc_ri_driver.rb:18:in </code>setup'</p>
</li>
<li>
<p>Error:<br>
test_lookup_method(TestRDocRIDriver):<br>
Errno::EACCES: Permission denied - /home/chkbuild/.ri<br>
/home/chkbuild/tmp/build/ruby-trunk/20090429T073554/ruby/test/rdoc/test_rdoc_ri_driver.rb:18:in <code>new' /home/chkbuild/tmp/build/ruby-trunk/20090429T073554/ruby/test/rdoc/test_rdoc_ri_driver.rb:18:in </code>setup'</p>
</li>
<li>
<p>Error:<br>
test_lookup_method_dot_instance(TestRDocRIDriver):<br>
Errno::EACCES: Permission denied - /home/chkbuild/.ri<br>
/home/chkbuild/tmp/build/ruby-trunk/20090429T073554/ruby/test/rdoc/test_rdoc_ri_driver.rb:18:in <code>new' /home/chkbuild/tmp/build/ruby-trunk/20090429T073554/ruby/test/rdoc/test_rdoc_ri_driver.rb:18:in </code>setup'</p>
</li>
<li>
<p>Error:<br>
test_lookup_method_method_missing(TestRDocRIDriver):<br>
Errno::EACCES: Permission denied - /home/chkbuild/.ri<br>
/home/chkbuild/tmp/build/ruby-trunk/20090429T073554/ruby/test/rdoc/test_rdoc_ri_driver.rb:18:in <code>new' /home/chkbuild/tmp/build/ruby-trunk/20090429T073554/ruby/test/rdoc/test_rdoc_ri_driver.rb:18:in </code>setup'</p>
</li>
<li>
<p>Error:<br>
test_lookup_method_dot_class(TestRDocRIDriver):<br>
Errno::EACCES: Permission denied - /home/chkbuild/.ri<br>
/home/chkbuild/tmp/build/ruby-trunk/20090429T073554/ruby/test/rdoc/test_rdoc_ri_driver.rb:18:in <code>new' /home/chkbuild/tmp/build/ruby-trunk/20090429T073554/ruby/test/rdoc/test_rdoc_ri_driver.rb:18:in </code>setup'</p>
</li>
<li>
<p>Error:<br>
test_parse_name(TestRDocRIDriver):<br>
Errno::EACCES: Permission denied - /home/chkbuild/.ri<br>
/home/chkbuild/tmp/build/ruby-trunk/20090429T073554/ruby/test/rdoc/test_rdoc_ri_driver.rb:18:in <code>new' /home/chkbuild/tmp/build/ruby-trunk/20090429T073554/ruby/test/rdoc/test_rdoc_ri_driver.rb:18:in </code>setup'<br>
=end</p>
</li>
</ol>
Ruby master - Bug #1115 (Closed): $SAFE=1でのrequireがSecurityErrorになる
https://bugs.ruby-lang.org/issues/1115
2009-02-06T02:20:29Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
<a href="https://blade.ruby-lang.org/ruby-dev/37843">[ruby-dev:37843]</a>の件がredmineにチケットとして登録されていなかったので、登録します。</p>
<p>現在わかっている条件は以下の2つです。</p>
<ol>
<li>*.soをrequireする。</li>
</ol>
<p>% ruby-1.9.1 -ve '$SAFE=1;p require "zlib"'<br>
ruby 1.9.1p0 (2009-02-02 revision 21960) [i686-linux]<br>
-e:1:in <code>require': Insecure operation - require (SecurityError) from -e:1:in </code>'<br>
%</p>
<ol start="2">
<li>何かgemをインストールした状態で何でもいいのでrequireする。</li>
</ol>
<p>% ruby-1.9.1 -ve '$SAFE=1;p require "English"'<br>
ruby 1.9.1p0 (2009-02-02 revision 21960) [i686-linux]<br>
-e:1:in <code>require': Insecure operation - require (SecurityError) from -e:1:in </code>'<br>
%</p>
<p>何もgemをインストールしていなければ成功します。</p>
<p>% ruby-1.9.1 -ve '$SAFE=1;p require "English"'<br>
ruby 1.9.1p0 (2009-02-02 revision 21960) [i686-linux]<br>
true<br>
%<br>
=end</p>
Ruby master - Bug #1087 (Closed): Failure: test_ipv6_address_predicates(TestSocketAddrInfo)
https://bugs.ruby-lang.org/issues/1087
2009-02-02T11:52:41Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
configureで--with-lookup-order-hack=INETをつけていると<br>
AddrInfo.ip("::ffff:0.0.0.0").ipv6_v4mapped?<br>
がfalseになるようです。</p>
<p>% ruby-trunk -v test/socket/test_addrinfo.rb<br>
ruby 1.9.1p5000 (2009-02-02 trunk 21938) [i686-linux]<br>
Loaded suite test/socket/test_addrinfo<br>
Started<br>
...................F.............<br>
Finished in 0.012232 seconds.</p>
<ol>
<li>Failure:<br>
test_ipv6_address_predicates(TestSocketAddrInfo) [test/socket/test_addrinfo.rb:367]:<br>
AddrInfo.ip("::ffff:0.0.0.0").ipv6_v4mapped?</li>
</ol>
<p>33 tests, 165 assertions, 1 failures, 0 errors, 0 skips<br>
% ruby-trunk -v -r socket -e 'p AddrInfo.ip("::ffff:0.0.0.0").ipv6_v4mapped?'<br>
ruby 1.9.1p5000 (2009-02-02 trunk 21938) [i686-linux]<br>
false<br>
%<br>
=end</p>
Ruby master - Bug #1071 (Closed): ripper: 改行を含む正規表現のon_regexp_endが変
https://bugs.ruby-lang.org/issues/1071
2009-01-30T05:13:39Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
正規表現に改行が含まれていると改行の後がon_tstring_contentではなくon_regexp_endに含まれるのは変なのではないでしょうか?</p>
<p>% ruby-trunk -v -r ripper -r pp -e 'pp Ripper.lex("/foo\nbar/")'<br>
ruby 1.9.1p5000 (2009-01-30 trunk 21885) [i686-linux]<br>
[[[1, 0], :on_regexp_beg, "/"],<br>
[[1, 1], :on_tstring_content, "foo\n"],<br>
[[2, 0], :on_regexp_end, "bar/"]]<br>
%<br>
=end</p>
Ruby 1.8 - Bug #1062 (Closed): Error: test_def_method
https://bugs.ruby-lang.org/issues/1062
2009-01-27T19:48:18Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
test_def_method(TestERBCore)とtest_def_method(TestERBCoreWOStrScan)でErrorがでています。</p>
<p><a href="http://www.rubyist.net/~akr/chkbuild/debian/ruby-1.8/last" class="external">http://www.rubyist.net/~akr/chkbuild/debian/ruby-1.8/last</a></p>
<ol>
<li>
<p>Error:<br>
test_def_method(TestERBCore):<br>
ArgumentError: wrong number of arguments (3 for 2)<br>
/home/akr/chkbuild/tmp/build/ruby-1.8/20090127T101411/ruby/test/erb/test_erb.rb:240:in <code>def_erb_method' /home/akr/chkbuild/tmp/build/ruby-1.8/20090127T101411/ruby/test/erb/test_erb.rb:240:in </code>test_def_method'<br>
/home/akr/chkbuild/tmp/build/ruby-1.8/20090127T101411/ruby/test/erb/test_erb.rb:239:in <code>module_eval' /home/akr/chkbuild/tmp/build/ruby-1.8/20090127T101411/ruby/test/erb/test_erb.rb:239:in </code>test_def_method'</p>
</li>
<li>
<p>Error:<br>
test_def_method(TestERBCoreWOStrScan):<br>
ArgumentError: wrong number of arguments (3 for 2)<br>
/home/akr/chkbuild/tmp/build/ruby-1.8/20090127T101411/ruby/test/erb/test_erb.rb:240:in <code>def_erb_method' /home/akr/chkbuild/tmp/build/ruby-1.8/20090127T101411/ruby/test/erb/test_erb.rb:240:in </code>test_def_method'<br>
/home/akr/chkbuild/tmp/build/ruby-1.8/20090127T101411/ruby/test/erb/test_erb.rb:239:in <code>module_eval' /home/akr/chkbuild/tmp/build/ruby-1.8/20090127T101411/ruby/test/erb/test_erb.rb:239:in </code>test_def_method'<br>
=end</p>
</li>
</ol>
Ruby 1.8 - Bug #989 (Rejected): [1.8.6] Crash during build on Mac OS 10.5.3/PPC when configured w...
https://bugs.ruby-lang.org/issues/989
2009-01-07T19:32:07Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
<a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: Crash during build on Mac OS 10.5.3/PPC when configured with --enable-pthread (Closed)" href="https://bugs.ruby-lang.org/issues/193">#193</a> <a href="/issues/193">[ruby-core:17333]</a> の件が以前確認したときは ruby_1_8_7 だけだった気がしたのですが、<br>
ruby_1_8 と ruby_1_8_6 でも起きていたので、ruby_1_8 には ruby_1_8_7 と同じ修正を入れました。</p>
<p>ruby_1_8_6 には<br>
CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE"<br>
AC_TRY_CPP([#include <AvailabilityMacros.h><br>
#if MAC_OS_X_VERSION_MAX_ALLOWED <= 1040<br>
#error pre OS X 10.4<br>
[!<===== pre OS X 10.4 =====>]<br>
#endif<br>
],<br>
[<br>
test "x$target_cpu" = xpowerpc && ac_cv_header_ucontext_h=no<br>
],<br>
[<br>
AC_DEFINE(BROKEN_SETREUID, 1)<br>
AC_DEFINE(BROKEN_SETREGID, 1)<br>
])<br>
の部分自体がなかったので、まだ修正できていません。<br>
=end</p>
Ruby master - Bug #917 (Closed): cannot make with bison-2.4.1 (cont.)
https://bugs.ruby-lang.org/issues/917
2008-12-22T23:37:32Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
tUPLUSなどがenumのみで#defineされていないため、<br>
「#elif tUPLUS != 321」に引っかかって<br>
「error: #error tUPLUS differs」になるようです。</p>
<p>$ make<br>
gcc -DRUBY_DEBUG_ENV -O2 -g -Wall -Wformat=2 -Wundef -Wno-parentheses -fPIC -I. -I.ext/include/x86_64-linux -I../include -I.. -DRUBY_EXPORT -o parse.o -c parse.c<br>
In file included from ../parse.y:23:<br>
../id.h:68:7: warning: "tUPLUS" is not defined<br>
../id.h:69:2: error: #error tUPLUS differs<br>
../id.h:162:5: warning: "SUPPORT_JOKE" is not defined<br>
../id.h:168:5: warning: "SUPPORT_JOKE" is not defined<br>
In file included from ../parse.y:41:<br>
../id.c:43:5: warning: "SUPPORT_JOKE" is not defined<br>
parse.c:884:6: warning: "YYENABLE_NLS" is not defined<br>
parse.c:4107:6: warning: "YYLTYPE_IS_TRIVIAL" is not defined<br>
make: *** [parse.o] Error 1<br>
$<br>
=end</p>
Ruby master - Bug #885 (Closed): Thread.new{fork{}}
https://bugs.ruby-lang.org/issues/885
2008-12-15T21:34:54Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
<a href="https://blade.ruby-lang.org/ruby-core/20537">[ruby-core:20537]</a> をちょっと変えて試してみたら謎の出力がありました。<br>
マシンに負荷がかかってる状態だと出にくいようです。</p>
<p>% ruby-trunk -ve 'Thread.new{fork{}}'<br>
ruby 1.9.1 (2008-12-15 revision 20759) [i686-linux]<br>
-e:1: Fixnum<br>
%<br>
=end</p>
Ruby master - Bug #884 (Closed): Insecure operation: -r
https://bugs.ruby-lang.org/issues/884
2008-12-15T20:06:07Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
以下のようにするとエラーメッセージの中に謎の-rが出てきます。</p>
<p>% ruby-trunk -ve '$SAFE=4;open("")'<br>
ruby 1.9.1 (2008-12-14 revision 20736) [i686-linux]<br>
-e:1:in <code>open': Insecure operation: -r (SecurityError) from -e:1:in </code>'<br>
%<br>
=end</p>
Ruby master - Bug #883 (Closed): Failure: test_handle_special_CROSSREF_no_underscore(TestRDocMark...
https://bugs.ruby-lang.org/issues/883
2008-12-15T19:52:47Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
test failed with full path</p>
<p>% ruby-trunk -v<br>
ruby 1.9.1 (2008-12-15 revision 20750) [i686-linux]<br>
% ruby-trunk test/rdoc/test_rdoc_markup_to_html_crossref.rb<br>
nil<br>
Loaded suite test/rdoc/test_rdoc_markup_to_html_crossref<br>
Started<br>
.<br>
Finished in 0.153602 seconds.</p>
<p>1 tests, 210 assertions, 0 failures, 0 errors, 0 skips<br>
% ruby-trunk $(pwd)/test/rdoc/test_rdoc_markup_to_html_crossref.rb<br>
nil<br>
Loaded suite /home/kazu/wc/ruby-lang/trunk/test/rdoc/test_rdoc_markup_to_html_crossref<br>
Started<br>
F<br>
Finished in 0.041989 seconds.</p>
<ol>
<li>Failure:<br>
test_handle_special_CROSSREF_no_underscore(TestRDocMarkupToHtmlCrossref) [/home/kazu/wc/ruby-lang/trunk/test/rdoc/test_rdoc_markup_to_html_crossref.rb:87]:<br>
Expected "<p> <a href="../files/home/kazu/wc/ruby-lang/trunk/test/rdoc/rdoc_markup_to_html_crossref_reference_rb.html">/home/kazu/wc/ruby-lang/trunk/test/rdoc/rdoc_markup_to_html_crossref_reference.rb </p> ", not "<p> /home/kazu/wc/ruby-lang/trunk/test/rdoc/rdoc_markup_to_html_crossref_reference.rb </p> ".</li>
</ol>
<p>1 tests, 29 assertions, 1 failures, 0 errors, 0 skips<br>
%<br>
=end</p>
Ruby master - Bug #876 (Closed): nil before Loaded suite
https://bugs.ruby-lang.org/issues/876
2008-12-15T02:23:33Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
Loaded suiteの前にnilが出力されてしまっています。</p>
<p>% ruby-trunk -ve 'require "test/unit"'<br>
ruby 1.9.1 (2008-12-14 revision 20739) [i686-linux]<br>
nil<br>
Loaded suite -e<br>
Started</p>
<p>Finished in 0.000773 seconds.</p>
<p>0 tests, 0 assertions, 0 failures, 0 errors, 0 skips<br>
%<br>
=end</p>
Ruby 1.8 - Bug #795 (Rejected): test_gdbm.rb: tmptest_gdbm_,tmptest_gdbm_rdonlyが残っているとErrorになる
https://bugs.ruby-lang.org/issues/795
2008-11-26T00:31:02Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
test/gdbm/test_gdbm.rbが、segumentation faultなどで中断してしまって、<br>
tmptest_gdbm_,tmptest_gdbm_rdonlyが残ってしまうと次にテストを実行した<br>
ときにErrorになります。</p>
<p>test/dbm/test_dbm.rbなども同様の問題があるようです。</p>
<p>それからカレントディレクトリにファイルを作るのもあまり良くないと<br>
思うのですが、どうでしょうか。<br>
=end</p>
Ruby 1.8 - Bug #789 (Closed): RSTRING in ext/gdbm/gdbm.c
https://bugs.ruby-lang.org/issues/789
2008-11-25T16:01:52Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
西山和広です。</p>
<p><a href="/issues/788">[ruby-core:20082]</a>にひっかかったので、とりあえず</p>
<a name="Index-objectc"></a>
<h1 >Index: object.c<a href="#Index-objectc" class="wiki-anchor">¶</a></h1>
<p>--- object.c(revision 20352)<br>
+++ object.c(working copy)<br>
@@ -223,7 +223,7 @@<br>
}<br>
clone = rb_obj_alloc(rb_obj_class(obj));<br>
RBASIC(clone)->klass = rb_singleton_class_clone(obj);</p>
<ul>
<li>RBASIC(clone)->flags = (RBASIC(obj)->flags | FL_TEST(clone, FL_TAINT)) & ~(FL_FREEZE|FL_FINALIZE);</li>
</ul>
<ul>
<li>RBASIC(clone)->flags = (RBASIC(obj)->flags | FL_TEST(clone, FL_TAINT|ELTS_SHARED)) & ~(FL_FREEZE|FL_FINALIZE);<br>
init_copy(clone, obj);<br>
RBASIC(clone)->flags |= RBASIC(obj)->flags & FL_FREEZE;</li>
</ul>
<p>として回避してみたところ、gdbmのテストの中で落ちるようになったので、<br>
調べてみたところ、rb_str_s_allocでELTS_SHAREDが設定されているのに<br>
aux.sharedを無視してaux.capaを設定していて、それを後で<br>
RSTRING(aux.shared)で参照されてしまうのが原因だとわかりました。</p>
<p>以下のようにした方が良いと思ったのですが、どうでしょうか?</p>
<a name="Index-extgdbmgdbmc"></a>
<h1 >Index: ext/gdbm/gdbm.c<a href="#Index-extgdbmgdbmc" class="wiki-anchor">¶</a></h1>
<p>--- ext/gdbm/gdbm.c(revision 20352)<br>
+++ ext/gdbm/gdbm.c(working copy)<br>
@@ -303,12 +303,7 @@<br>
if (val.dptr == 0)<br>
return Qnil;</p>
<ul>
<li>str = rb_obj_alloc(rb_cString);</li>
<li>RSTRING(str)->len = val.dsize;</li>
<li>RSTRING(str)->aux.capa = val.dsize;</li>
<li>RSTRING(str)->ptr = REALLOC_N(val.dptr,char,val.dsize+1);</li>
<li>RSTRING(str)->ptr[val.dsize] = '\0';</li>
<li>
</ul>
<ul>
<li>str = rb_str_new(val.dptr, val.dsize);<br>
OBJ_TAINT(str);<br>
return (VALUE)str;<br>
}<br>
@@ -349,12 +344,7 @@<br>
if (key.dptr == 0)<br>
return Qnil;</li>
</ul>
<ul>
<li>str = rb_obj_alloc(rb_cString);</li>
<li>RSTRING(str)->len = key.dsize;</li>
<li>RSTRING(str)->aux.capa = key.dsize;</li>
<li>RSTRING(str)->ptr = REALLOC_N(key.dptr,char,key.dsize+1);</li>
<li>RSTRING(str)->ptr[RSTRING(str)->len] = '\0';</li>
<li>
</ul>
<ul>
<li>str = rb_str_new(key.dptr, key.dsize);<br>
OBJ_TAINT(str);<br>
return str;<br>
}<br>
@@ -373,12 +363,7 @@<br>
if (key2.dptr == 0)<br>
return Qnil;</li>
</ul>
<ul>
<li>str = rb_obj_alloc(rb_cString);</li>
<li>RSTRING(str)->len = key2.dsize;</li>
<li>RSTRING(str)->aux.capa = key2.dsize;</li>
<li>RSTRING(str)->ptr = REALLOC_N(key2.dptr,char,key2.dsize+1);</li>
<li>RSTRING(str)->ptr[RSTRING(str)->len] = '\0';</li>
<li>
</ul>
<ul>
<li>str = rb_str_new(key2.dptr, key2.dsize);<br>
OBJ_TAINT(str);<br>
return str;<br>
}</li>
</ul>
<p>--<br>
|ZnZ(ゼット エヌ ゼット)<br>
|西山和広(Kazuhiro NISHIYAMA)<br>
=end</p>
Ruby master - Bug #751 (Closed): Regexp.new(dummy_encoding_string)
https://bugs.ruby-lang.org/issues/751
2008-11-13T19:30:28Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
<a href="http://mono.kmc.gr.jp/~yhara/d/?date=20081101#p03" class="external">http://mono.kmc.gr.jp/~yhara/d/?date=20081101#p03</a><br>
のようなことが起きるので、dummy encodingの文字列で<br>
Regexp.newしたときは例外になった方が良いのではないでしょうか?<br>
=end</p>
Ruby master - Bug #688 (Closed): test_exit_action(TestSignal)でTimeout::Error
https://bugs.ruby-lang.org/issues/688
2008-10-28T11:15:29Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
ruby 1.9.0 (2008-10-27 revision 19968) [powerpc-darwin9.5.0]<br>
や<br>
ruby 1.9.0 (2008-10-28 revision 19973) [x86_64-linux]<br>
の環境でTimeout::Errorになります。</p>
<ol start="4">
<li>Failure:<br>
test_exit_action(TestSignal) [.../test/ruby/test_signal.rb:52]:<br>
<a href="https://blade.ruby-lang.org/ruby-dev/26128">[ruby-dev:26128]</a>.<br>
Exception raised:<br>
<#<Timeout::Error: execution expired>>.<br>
=end</li>
</ol>
Ruby master - Bug #671 (Closed): TestSignal#test_exit_actionでEINTRのメッセージが出る
https://bugs.ruby-lang.org/issues/671
2008-10-21T16:08:41Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
TestSignal#test_exit_actionの子プロセス側で<br>
Thread.start { Thread.pass }<br>
のスレッドが何らかの理由で終了してしまうとselectシステムコールで待たずに<br>
readシステムコールで待つようになってしまって、以下のようになります。</p>
<p>Thread.start { Thread.pass }<br>
の後にsleep 0.01などを入れると確実に再現します。</p>
<p>% ruby-trunk test_signal.rb -v -n test_exit_action<br>
Loaded suite .../trunk/test/ruby/test_signal<br>
Started<br>
TestSignal#test_exit_action: .../trunk/test/ruby/test_signal.rb:46:in <code>sysread': Interrupted system call (Errno::EINTR) from .../trunk/test/ruby/test_signal.rb:46:in </code>block in test_exit_action'<br>
from .../trunk/test/ruby/test_signal.rb:40:in <code>fork' from .../trunk/test/ruby/test_signal.rb:40:in </code>test_exit_action'<br>
from .../lib/ruby/1.9.0/minitest/unit.rb:431:in <code>run' from .../lib/ruby/1.9.0/minitest/unit.rb:410:in </code>block (2 levels) in run_test_suites'<br>
from .../lib/ruby/1.9.0/minitest/unit.rb:404:in <code>each' from .../lib/ruby/1.9.0/minitest/unit.rb:404:in </code>block in run_test_suites'<br>
from .../lib/ruby/1.9.0/minitest/unit.rb:403:in <code>each' from .../lib/ruby/1.9.0/minitest/unit.rb:403:in </code>run_test_suites'<br>
from .../lib/ruby/1.9.0/minitest/unit.rb:383:in <code>run' from .../lib/ruby/1.9.0/minitest/unit.rb:327:in </code>block in autorun'<br>
0.12 s: .</p>
<p>Finished in 0.119494 seconds.</p>
<p>1 tests, 0 assertions, 0 failures, 0 errors, 0 skips<br>
%</p>
<p>以下のようにすれば確実にスレッドが残るようになると思うのですが、<br>
どうでしょうか?</p>
<a name="Index-testrubytest_signalrb"></a>
<h1 >Index: test/ruby/test_signal.rb<a href="#Index-testrubytest_signalrb" class="wiki-anchor">¶</a></h1>
<p>--- test/ruby/test_signal.rb (revision 19868)<br>
+++ test/ruby/test_signal.rb (working copy)<br>
@@ -41,7 +41,7 @@ class TestSignal < Test::Unit::TestCase<br>
Signal.trap(:USR1, "EXIT")<br>
w0.close<br>
w.syswrite("a")</p>
<ul>
<li>
<pre><code> Thread.start { Thread.pass }
</code></pre>
</li>
</ul>
<ul>
<li>
<pre><code> Thread.start { sleep(2) }
r0.sysread(4096)
}
r.sysread(1)
</code></pre>
</li>
</ul>
<p>=end</p>
Ruby master - Bug #626 (Closed): stop test-all at test/rdoc/test_rdoc_ri_driver.rb
https://bugs.ruby-lang.org/issues/626
2008-10-10T03:54:22Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
When readline is not installed, `make test-all' stopped at test/rdoc/test_rdoc_ri_driver.rb.</p>
<p>/home/kazu/wc/ruby-lang/trunk/lib/rdoc/ri/display.rb:6:in <code>require': no such file to load -- readline (LoadError) from /home/kazu/wc/ruby-lang/trunk/lib/rdoc/ri/display.rb:6:in </code><top (required)>'<br>
from /home/kazu/wc/ruby-lang/trunk/lib/rdoc/ri/driver.rb:7:in <code>require' from /home/kazu/wc/ruby-lang/trunk/lib/rdoc/ri/driver.rb:7:in </code><top (required)>'<br>
from /home/kazu/wc/ruby-lang/trunk/test/rdoc/test_rdoc_ri_driver.rb:3:in <code>require' from /home/kazu/wc/ruby-lang/trunk/test/rdoc/test_rdoc_ri_driver.rb:3:in </code><top (required)>'<br>
from /home/kazu/wc/ruby-lang/trunk/test/runner.rb:50:in <code>require' from /home/kazu/wc/ruby-lang/trunk/test/runner.rb:50:in </code>block in '<br>
from /home/kazu/wc/ruby-lang/trunk/test/runner.rb:49:in <code>each' from /home/kazu/wc/ruby-lang/trunk/test/runner.rb:49:in </code>'</p>
<p>Finished in 95.288762 seconds.</p>
<ol>
<li>Failure:<br>
test_handle_special_CROSSREF_no_underscore(TestRDocMarkupToHtmlCrossref) [/home/kazu/wc/ruby-lang/trunk/test/rdoc/test_rdoc_markup_to_html_crossref.rb:83]:<br>
Expected "<p> <a href="../files/home/kazu/wc/ruby-lang/trunk/test/rdoc/rdoc_markup_to_html_crossref_reference_rb.html">/home/kazu/wc/ruby-lang/trunk/test/rdoc/rdoc_markup_to_html_crossref_reference.rb </p> ", not "<p> /home/kazu/wc/ruby-lang/trunk/test/rdoc/rdoc_markup_to_html_crossref_reference.rb </p> ".</li>
</ol>
<p>460 tests, 5618 assertions, 1 failures, 0 errors, 0 skips<br>
make: *** [test-all] エラー 1<br>
=end</p>
Ruby master - Bug #623 (Closed): optparseでオプションが重複していると--helpと挙動が違う
https://bugs.ruby-lang.org/issues/623
2008-10-09T16:12:54Z
znz (Kazuhiro NISHIYAMA)
<p>=begin</p>
<a name="バージョンに迷ってredmineに登録していなかったruby-dev35801の件を"></a>
<h1 >バージョンに迷ってredmineに登録していなかった<a href="https://blade.ruby-lang.org/ruby-dev/35801">[ruby-dev:35801]</a>の件を<a href="#バージョンに迷ってredmineに登録していなかったruby-dev35801の件を" class="wiki-anchor">¶</a></h1>
<a name="redmineの方に入れておきます"></a>
<h1 >redmineの方に入れておきます。<a href="#redmineの方に入れておきます" class="wiki-anchor">¶</a></h1>
<p>opts.onでオプションが重複していると--helpでは<br>
先に出てきた方に対応するように表示されるのに<br>
実際には後に出てきたの方の意味になります。</p>
<p>% cat o.rb<br>
#!/usr/bin/ruby<br>
require 'optparse'<br>
ARGV.options do |opts|<br>
opts.on("-t", "--test-option"){p "test-option"}<br>
opts.on("-t", "--another-test-option"){p "another-test-option"}<br>
opts.parse!<br>
end<br>
% ruby18 -v o.rb -h<br>
ruby 1.8.7 (2008-08-08 revision 0) [i686-linux]<br>
Usage: o [options]<br>
-t, --test-option<br>
--another-test-option<br>
% ruby18 -v o.rb -t<br>
ruby 1.8.7 (2008-08-08 revision 0) [i686-linux]<br>
"another-test-option"<br>
% ruby-1.8.6 -v o.rb -t<br>
ruby 1.8.6 (2008-08-08 patchlevel 286) [i686-linux]<br>
"another-test-option"<br>
% ruby-1.8.7 -v o.rb -t<br>
ruby 1.8.7 (2008-08-08 patchlevel 71) [i686-linux]<br>
"another-test-option"<br>
% ruby-trunk -v o.rb -t<br>
ruby 1.9.0 (2008-08-07 revision 18407) [i686-linux]<br>
"another-test-option"<br>
%<br>
=end</p>
Ruby 1.8 - Bug #613 (Closed): segmentetion fault by Marshal.dump
https://bugs.ruby-lang.org/issues/613
2008-10-01T16:13:12Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
西山和広です。</p>
<p>Marshal.dumpに第2引数のIOを指定すると落ちます。</p>
<p>% ruby18 -ve 'Marshal.dump(nil, open("/dev/null", "wb"))'<br>
ruby 1.8.7 (2008-09-27 revision 19596) [i686-linux]<br>
-e:1: [BUG] Segmentation fault<br>
ruby 1.8.7 (2008-09-27 revision 19596) [i686-linux]<br>
%</p>
<p>check_dump_argのarg->wrapperがNULLの時に落ちるようで、<br>
以下のように初期化すると確実に再現できます。</p>
<a name="Index-marshalc"></a>
<h1 >Index: marshal.c<a href="#Index-marshalc" class="wiki-anchor">¶</a></h1>
<p>--- marshal.c(リビジョン 19651)<br>
+++ marshal.c(作業コピー)<br>
@@ -761,7 +761,7 @@<br>
{<br>
VALUE obj, port, a1, a2;<br>
int limit = -1;</p>
<ul>
<li>struct dump_arg arg;</li>
</ul>
<ul>
<li>
<p>struct dump_arg arg = {0};<br>
struct dump_call_arg c_arg;</p>
<p>port = Qnil;</p>
</li>
</ul>
<p>--<br>
|ZnZ(ゼット エヌ ゼット)<br>
|西山和広(Kazuhiro NISHIYAMA)<br>
=end</p>
Ruby master - Bug #570 (Closed): emacs21で色が付かない
https://bugs.ruby-lang.org/issues/570
2008-09-16T21:15:55Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
西山和広です。</p>
<p>emacs21でtrunkのruby-mode.elを使うと色が付きません。</p>
<a name="syntax-ppssというのが無いから"></a>
<h1 >syntax-ppssというのが無いから?<a href="#syntax-ppssというのが無いから" class="wiki-anchor">¶</a></h1>
<p>--<br>
|ZnZ(ゼット エヌ ゼット)<br>
|西山和広(Kazuhiro NISHIYAMA)<br>
=end</p>
Ruby master - Bug #495 (Closed): Failure: test_priority(TestThread)
https://bugs.ruby-lang.org/issues/495
2008-08-25T21:01:32Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
CPUなどの他の環境も影響しそうですが、<br>
ruby 1.9.0 (2008-08-25 revision 18832) [i686-linux]<br>
とUbuntu 8.04.1の環境で以下のFailureが発生します。</p>
<ol>
<li>Failure:<br>
test_priority(TestThread) [test/ruby/test_thread.rb:129]:<br>
<a href="https://blade.ruby-lang.org/ruby-dev/33124">[ruby-dev:33124]</a>.<br>
is not true.</li>
</ol>
<p>メッセージにc1,c2を表示するようにしたところ、<br>
c1=1708255,c2=1614873.<br>
c1=1768679,c2=1626401.<br>
c1=1799550,c2=1721482.<br>
c1=1796999,c2=1651275.<br>
c1=1781870,c2=1725428.<br>
のような感じで1.5倍までの差は出ないようです。<br>
=end</p>
Ruby master - Bug #466 (Closed): test_str_crypt(TestM17NComb) failed
https://bugs.ruby-lang.org/issues/466
2008-08-21T20:19:22Z
znz (Kazuhiro NISHIYAMA)
<pre><code>$ ruby-trunk -v
ruby 1.9.0 (2008-08-21 revision 18753) [powerpc-darwin9.4.0]
</code></pre>
<p>の環境でtest_str_crypt(TestM17NComb)がFailureになります。</p>
<pre><code>$ ruby-trunk test/ruby/test_m17n_comb.rb -v -n /crypt/
Loaded suite test/ruby/test_m17n_comb
Started
test_str_crypt(TestM17NComb): F
Finished in 0.03673 seconds.
1) Failure:
test_str_crypt(TestM17NComb)
[test/ruby/test_m17n_comb.rb:800:in `block in test_str_crypt'
/Users/nishiyamakazuhiro/wc/ruby-lang/trunk/test/ruby/allpairs.rb:83:in `block in each'
/Users/nishiyamakazuhiro/wc/ruby-lang/trunk/test/ruby/allpairs.rb:75:in `block in each_index'
/Users/nishiyamakazuhiro/wc/ruby-lang/trunk/test/ruby/allpairs.rb:46:in `block in make_large_block'
/Users/nishiyamakazuhiro/wc/ruby-lang/trunk/test/ruby/allpairs.rb:26:in `block (2 levels) in make_basic_block'
/Users/nishiyamakazuhiro/wc/ruby-lang/trunk/test/ruby/allpairs.rb:21:in `times'
/Users/nishiyamakazuhiro/wc/ruby-lang/trunk/test/ruby/allpairs.rb:21:in `block in make_basic_block'
/Users/nishiyamakazuhiro/wc/ruby-lang/trunk/test/ruby/allpairs.rb:20:in `times'
/Users/nishiyamakazuhiro/wc/ruby-lang/trunk/test/ruby/allpairs.rb:20:in `make_basic_block'
/Users/nishiyamakazuhiro/wc/ruby-lang/trunk/test/ruby/allpairs.rb:45:in `make_large_block'
/Users/nishiyamakazuhiro/wc/ruby-lang/trunk/test/ruby/allpairs.rb:71:in `each_index'
/Users/nishiyamakazuhiro/wc/ruby-lang/trunk/test/ruby/allpairs.rb:82:in `each'
test/ruby/test_m17n_comb.rb:118:in `combination'
test/ruby/test_m17n_comb.rb:794:in `test_str_crypt']:
"".force_encoding("ASCII-8BIT").crypt("\xE0\xA0\xA1".force_encoding("UTF-8")).
<"\xE0\xA0fT7zdRv9Y7A"> expected but was
<"\xE0\xA0swiH3o6yAu2">.
1 tests, 55 assertions, 1 failures, 0 errors
$
</code></pre>
<pre><code>$ ruby-trunk -ve '3.times{p "".crypt("\xE0\xA0")}' ruby 1.9.0 (2008-08-21 revision 18753) [powerpc-darwin9.4.0]
"\xE0\xA0X8NBuQ4l6uQ"
"\xE0\xA0fT7zdRv9Y7A"
"\xE0\xA0fT7zdRv9Y7A"
$
</code></pre>
<p>のように2回目以降で結果が違うのが原因のようです。</p>
<p>直接crypt(2)を同じ引数で呼んでも同じ結果になります。</p>
<pre><code>$ cat a.c
</code></pre>
<pre><code class="c syntaxhl" data-language="c"><span class="cp">#include</span> <span class="cpf"><stdio.h></span><span class="cp">
#include</span> <span class="cpf"><unistd.h></span><span class="cp">
</span>
<span class="kt">int</span> <span class="nf">main</span><span class="p">()</span>
<span class="p">{</span>
<span class="n">printf</span><span class="p">(</span><span class="s">"%s</span><span class="se">\n</span><span class="s">"</span><span class="p">,</span> <span class="n">crypt</span><span class="p">(</span><span class="s">""</span><span class="p">,</span> <span class="s">"</span><span class="se">\xE0\xA0</span><span class="s">"</span><span class="p">));</span>
<span class="n">printf</span><span class="p">(</span><span class="s">"%s</span><span class="se">\n</span><span class="s">"</span><span class="p">,</span> <span class="n">crypt</span><span class="p">(</span><span class="s">""</span><span class="p">,</span> <span class="s">"</span><span class="se">\xE0\xA0</span><span class="s">"</span><span class="p">));</span>
<span class="n">printf</span><span class="p">(</span><span class="s">"%s</span><span class="se">\n</span><span class="s">"</span><span class="p">,</span> <span class="n">crypt</span><span class="p">(</span><span class="s">""</span><span class="p">,</span> <span class="s">"</span><span class="se">\xE0\xA0</span><span class="s">"</span><span class="p">));</span>
<span class="k">return</span> <span class="mi">0</span><span class="p">;</span>
<span class="p">}</span>
</code></pre>
<pre><code>$ gcc a.c
$ ./a.out |LANG=C cat -v
M-`M- X8NBuQ4l6uQ
M-`M- fT7zdRv9Y7A
M-`M- fT7zdRv9Y7A
</code></pre>
Ruby master - Bug #465 (Closed): `Errno::ENOTCONN: Socket is not connected' in test/net/imap
https://bugs.ruby-lang.org/issues/465
2008-08-21T19:11:49Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
test/net/imapでも同様にErrno::ENOTCONNになります。</p>
<ol start="48">
<li>Error:<br>
test_unexpected_eof(IMAPTest):<br>
Errno::ENOTCONN: Socket is not connected<br>
/Users/chkbuild/chkbuild/tmp/build/ruby-trunk/20080821T033314/ruby/lib/net/imap.rb:295:in <code>shutdown' /Users/chkbuild/chkbuild/tmp/build/ruby-trunk/20080821T033314/ruby/lib/net/imap.rb:295:in </code>rescue in disconnect'<br>
/Users/chkbuild/chkbuild/tmp/build/ruby-trunk/20080821T033314/ruby/lib/net/imap.rb:290:in <code>disconnect' /Users/chkbuild/chkbuild/tmp/build/ruby-trunk/20080821T033314/ruby/test/net/imap/test_imap.rb:108:in </code>test_unexpected_eof'</li>
</ol>
<p>以下パッチです。</p>
<a name="Index-libnetimaprb"></a>
<h1 >Index: lib/net/imap.rb<a href="#Index-libnetimaprb" class="wiki-anchor">¶</a></h1>
<p>--- lib/net/imap.rb (revision 18748)<br>
+++ lib/net/imap.rb (working copy)<br>
@@ -288,11 +288,15 @@<br>
# Disconnects from the server.<br>
def disconnect<br>
begin</p>
<ul>
<li>
<pre><code> # try to call SSL::SSLSocket#io.
</code></pre>
</li>
<li>
<pre><code> @sock.io.shutdown
</code></pre>
</li>
<li>
<pre><code> rescue NoMethodError
</code></pre>
</li>
<li>
<pre><code> # @sock is not an SSL::SSLSocket.
</code></pre>
</li>
<li>
<pre><code> @sock.shutdown
</code></pre>
</li>
</ul>
<ul>
<li>
<pre><code> begin
</code></pre>
</li>
<li>
<pre><code> # try to call SSL::SSLSocket#io.
</code></pre>
</li>
<li>
<pre><code> @sock.io.shutdown
</code></pre>
</li>
<li>
<pre><code> rescue NoMethodError
</code></pre>
</li>
<li>
<pre><code> # @sock is not an SSL::SSLSocket.
</code></pre>
</li>
<li>
<pre><code> @sock.shutdown
</code></pre>
</li>
<li>
<pre><code> end
</code></pre>
</li>
<li>
<pre><code> rescue Errno::ENOTCONN
</code></pre>
</li>
<li>
<pre><code> # ignore `Errno::ENOTCONN: Socket is not connected' on some platforms.
end
@receiver_thread.join
@sock.close
</code></pre>
</li>
</ul>
<p>=end</p>
Ruby master - Bug #464 (Closed): `Errno::ENOTCONN: Socket is not connected' in test/openssl/test_...
https://bugs.ruby-lang.org/issues/464
2008-08-21T19:10:00Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
test/openssl/test_ssl.rbでも同様にErrno::ENOTCONNになります。</p>
<ol start="49">
<li>Error:<br>
test_client_auth(OpenSSL::TestSSL):<br>
Errno::ENOTCONN: Socket is not connected<br>
/Users/chkbuild/chkbuild/tmp/build/ruby-trunk/20080821T033314/ruby/test/openssl/test_ssl.rb:132:in <code>shutdown' /Users/chkbuild/chkbuild/tmp/build/ruby-trunk/20080821T033314/ruby/test/openssl/test_ssl.rb:132:in </code>start_server'<br>
/Users/chkbuild/chkbuild/tmp/build/ruby-trunk/20080821T033314/ruby/test/openssl/test_ssl.rb:231:in `test_client_auth'</li>
</ol>
<p>以下パッチです。</p>
<a name="Index-testopenssltest_sslrb"></a>
<h1 >Index: test/openssl/test_ssl.rb<a href="#Index-testopenssltest_sslrb" class="wiki-anchor">¶</a></h1>
<p>--- test/openssl/test_ssl.rb (revision 18748)<br>
+++ test/openssl/test_ssl.rb (working copy)<br>
@@ -129,7 +129,14 @@<br>
block.call(server, port.to_i)<br>
ensure<br>
begin</p>
<ul>
<li>
<pre><code> tcps.shutdown if (tcps)
</code></pre>
</li>
</ul>
<ul>
<li>
<pre><code> begin
</code></pre>
</li>
<li>
<pre><code> tcps.shutdown
</code></pre>
</li>
<li>
<pre><code> rescue Errno::ENOTCONN
</code></pre>
</li>
<li>
<pre><code> # when `Errno::ENOTCONN: Socket is not connected' on some platforms,
</code></pre>
</li>
<li>
<pre><code> # call #close instead of #shutdown.
</code></pre>
</li>
<li>
<pre><code> tcps.close
</code></pre>
</li>
<li>
<pre><code> tcps = nil
</code></pre>
</li>
<li>
<pre><code> end if (tcps)
if (server)
server.join(5)
if server.alive?
</code></pre>
</li>
</ul>
<p>=end</p>
Ruby master - Bug #463 (Closed): `Errno::ENOTCONN: Socket is not connected' in test/net/http
https://bugs.ruby-lang.org/issues/463
2008-08-21T17:21:31Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
Mac OS Xで以下のようにErrno::ENOTCONNになります。<br>
その影響で他のテストのいくつかもErrno::EADDRINUSEなどで失敗します。</p>
<ol>
<li>Error:<br>
test_certificate_verify_failure(TestNetHTTPS):<br>
Errno::ENOTCONN: Socket is not connected<br>
/Users/chkbuild/chkbuild/tmp/build/ruby-trunk/20080821T033314/ruby/.ext/common/openssl/ssl.rb:157:in <code>shutdown' /Users/chkbuild/chkbuild/tmp/build/ruby-trunk/20080821T033314/ruby/.ext/common/openssl/ssl.rb:157:in </code>shutdown'<br>
/Users/chkbuild/chkbuild/tmp/build/ruby-trunk/20080821T033314/ruby/lib/webrick/server.rb:133:in <code>block in shutdown' /Users/chkbuild/chkbuild/tmp/build/ruby-trunk/20080821T033314/ruby/lib/webrick/server.rb:128:in </code>each'<br>
/Users/chkbuild/chkbuild/tmp/build/ruby-trunk/20080821T033314/ruby/lib/webrick/server.rb:128:in <code>shutdown' /Users/chkbuild/chkbuild/tmp/build/ruby-trunk/20080821T033314/ruby/test/net/http/utils.rb:34:in </code>teardown'</li>
</ol>
<p>以下のパッチで直るようなのですが問題ないでしょうか?</p>
<a name="Index-libwebrickserverrb"></a>
<h1 >Index: lib/webrick/server.rb<a href="#Index-libwebrickserverrb" class="wiki-anchor">¶</a></h1>
<p>--- lib/webrick/server.rb (revision 18748)<br>
+++ lib/webrick/server.rb (working copy)<br>
@@ -130,9 +130,17 @@<br>
addr = s.addr<br>
@logger.debug("close TCPSocket(#{addr[2]}, #{addr[1]})")<br>
end</p>
<ul>
<li>
<pre><code> s.shutdown
</code></pre>
</li>
<li>
<pre><code> unless @config[:ShutdownSocketWithoutClose]
</code></pre>
</li>
</ul>
<ul>
<li>
<pre><code> begin
</code></pre>
</li>
<li>
<pre><code> s.shutdown
</code></pre>
</li>
<li>
<pre><code> rescue Errno::ENOTCONN
</code></pre>
</li>
<li>
<pre><code> # when `Errno::ENOTCONN: Socket is not connected' on some platforms,
</code></pre>
</li>
<li>
<pre><code> # call #close instead of #shutdown.
</code></pre>
</li>
<li>
<pre><code> # (ignore @config[:ShutdownSocketWithoutClose])
s.close
</code></pre>
</li>
<li>
<pre><code> else
</code></pre>
</li>
<li>
<pre><code> unless @config[:ShutdownSocketWithoutClose]
</code></pre>
</li>
<li>
<pre><code> s.close
</code></pre>
</li>
<li>
<pre><code> end
end
}
@listeners.clear
</code></pre>
</li>
</ul>
<p>=end</p>
Ruby master - Bug #429 (Closed): make failed on powerpc-apple-darwin9.4.0
https://bugs.ruby-lang.org/issues/429
2008-08-13T13:59:38Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
gcc -Wall -Wformat=2 -Wundef -Wno-parentheses -g -O2 -DRUBY_DEBUG_ENV -O2 -g -Wall -Wno-parentheses -pipe -fno-common -I. -I.ext/include/powerpc-darwin9.4.0 -I./include -I. -DRUBY_EXPORT -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -o string.o -c string.c<br>
string.c:443: error: only weak aliases are supported in this configuration<br>
string.c:454: error: only weak aliases are supported in this configuration<br>
string.c:475: error: only weak aliases are supported in this configuration<br>
string.c:519: error: only weak aliases are supported in this configuration<br>
string.c:582: error: only weak aliases are supported in this configuration<br>
string.c:591: error: only weak aliases are supported in this configuration<br>
string.c:625: error: only weak aliases are supported in this configuration<br>
string.c:1368: error: only weak aliases are supported in this configuration<br>
make: *** [string.o] Error 1<br>
=end</p>
Ruby master - Bug #404 (Closed): NameError: uninitialized constant Net::IMAP::SSL in test/net/ima...
https://bugs.ruby-lang.org/issues/404
2008-08-04T10:46:05Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
西山和広です。</p>
<p>opensslが入っていない環境だとtest/net/imap/test_imap.rbで<br>
NameErrorが発生します。</p>
<ol>
<li>Error:<br>
test_unexpected_eof(IMAPTest):<br>
NameError: uninitialized constant Net::IMAP::SSL<br>
.../net/imap.rb:290:in <code>disconnect' .../test/net/imap/test_imap.rb:108:in </code>test_unexpected_eof'</li>
</ol>
<p>--<br>
|ZnZ(ゼット エヌ ゼット)<br>
|西山和広(Kazuhiro NISHIYAMA)<br>
=end</p>
Ruby 1.8 - Bug #367 (Closed): ruby_1_8のrssで3E
https://bugs.ruby-lang.org/issues/367
2008-07-27T22:27:25Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
環境によってはrssでErrorが出ます。</p>
<ol>
<li>
<p>Error:<br>
test_atom_content(RSS::TestAtomCore):<br>
LoadError: no such file to load -- zlib<br>
/home/kazu/wc/ruby-lang/ruby_1_8/test/rss/test_atom.rb:644:in <code>require' /home/kazu/wc/ruby-lang/ruby_1_8/test/rss/test_atom.rb:644:in </code>assert_atom_content_inline_other_base64_to_s'<br>
/home/kazu/wc/ruby-lang/ruby_1_8/test/rss/test_atom.rb:643:in <code>assert_atom_content_inline_other_base64_to_s' /home/kazu/wc/ruby-lang/ruby_1_8/test/rss/test_atom.rb:604:in </code>assert_atom_content_to_s'<br>
/home/kazu/wc/ruby-lang/ruby_1_8/test/rss/test_atom.rb:600:in <code>assert_atom_content_to_s' /home/kazu/wc/ruby-lang/ruby_1_8/test/rss/test_atom.rb:205:in </code>test_atom_content'</p>
</li>
<li>
<p>Error:<br>
test_entry_content_text(RSS::TestParserAtom):<br>
LoadError: no such file to load -- zlib<br>
/home/kazu/wc/ruby-lang/ruby_1_8/test/rss/rss-assertions.rb:560:in <code>require' /home/kazu/wc/ruby-lang/ruby_1_8/test/rss/rss-assertions.rb:560:in </code>assert_atom_content_inline_other_text'<br>
/home/kazu/wc/ruby-lang/ruby_1_8/test/rss/rss-assertions.rb:559:in <code>assert_atom_content_inline_other_text' /home/kazu/wc/ruby-lang/ruby_1_8/test/rss/rss-assertions.rb:553:in </code>assert_atom_content_inline_other'<br>
/home/kazu/wc/ruby-lang/ruby_1_8/test/rss/rss-assertions.rb:552:in <code>assert_atom_content_inline_other' /home/kazu/wc/ruby-lang/ruby_1_8/test/rss/rss-assertions.rb:459:in </code>assert_atom_content'<br>
/home/kazu/wc/ruby-lang/ruby_1_8/test/rss/rss-assertions.rb:456:in <code>assert_atom_content' /home/kazu/wc/ruby-lang/ruby_1_8/test/rss/test_parser_atom_entry.rb:100:in </code>test_entry_content_text'</p>
</li>
<li>
<p>Error:<br>
test_entry_content(RSS::TestParserAtomFeed):<br>
LoadError: no such file to load -- zlib<br>
/home/kazu/wc/ruby-lang/ruby_1_8/test/rss/rss-assertions.rb:560:in <code>require' /home/kazu/wc/ruby-lang/ruby_1_8/test/rss/rss-assertions.rb:560:in </code>assert_atom_content_inline_other_text'<br>
/home/kazu/wc/ruby-lang/ruby_1_8/test/rss/rss-assertions.rb:559:in <code>assert_atom_content_inline_other_text' /home/kazu/wc/ruby-lang/ruby_1_8/test/rss/rss-assertions.rb:553:in </code>assert_atom_content_inline_other'<br>
/home/kazu/wc/ruby-lang/ruby_1_8/test/rss/rss-assertions.rb:552:in <code>assert_atom_content_inline_other' /home/kazu/wc/ruby-lang/ruby_1_8/test/rss/rss-assertions.rb:459:in </code>assert_atom_content'<br>
/home/kazu/wc/ruby-lang/ruby_1_8/test/rss/rss-assertions.rb:456:in <code>assert_atom_content' /home/kazu/wc/ruby-lang/ruby_1_8/test/rss/test_parser_atom_feed.rb:147:in </code>test_entry_content'</p>
</li>
</ol>
<p>1847 tests, 1343396 assertions, 0 failures, 3 errors<br>
=end</p>
Ruby master - Bug #356 (Closed): test_flush(TestIONonblock): Errno::EBADF: Bad file descriptor
https://bugs.ruby-lang.org/issues/356
2008-07-23T20:14:06Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
Ubuntu 8.04.1の環境でtest_flush(TestIONonblock)がErrno::EBADFになります。<br>
Debianなどの他の環境では(試した範囲内では)再現しませんでした。</p>
<p>% ruby-trunk -v test/io/nonblock/test_flush.rb<br>
ruby 1.9.0 (2008-07-23 revision 18181) [i686-linux]<br>
Loaded suite test/io/nonblock/test_flush<br>
Started<br>
E<br>
Finished in 0.001041173 seconds.</p>
<ol>
<li>Error:<br>
test_flush(TestIONonblock):<br>
Errno::EBADF: Bad file descriptor<br>
test/io/nonblock/test_flush.rb:27:in <code>flush' test/io/nonblock/test_flush.rb:27:in </code>block in test_flush'<br>
/home/kazu/opt/ruby-trunk/lib/ruby/1.9.0/timeout.rb:52:in <code>timeout' /home/kazu/opt/ruby-trunk/lib/ruby/1.9.0/timeout.rb:82:in </code>timeout'<br>
test/io/nonblock/test_flush.rb:17:in `test_flush'</li>
</ol>
<p>1 tests, 0 assertions, 0 failures, 1 errors<br>
% lsb_release -a<br>
No LSB modules are available.<br>
Distributor ID: Ubuntu<br>
Description: Ubuntu 8.04.1<br>
Release: 8.04<br>
Codename: hardy<br>
%<br>
=end</p>
Ruby master - Bug #344 (Closed): File.grpowned?のテスト
https://bugs.ruby-lang.org/issues/344
2008-07-23T07:49:35Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
西山和広です。</p>
<p>Mac OS Xでassert(File.grpowned?(@file))がFailureになります。</p>
<ol start="61">
<li>
<p>Failure:<br>
test_owned_p(TestFileExhaustive) [/Users/nishiyamakazuhiro/wc/ruby-lang/trunk/test/ruby/test_file_exhaustive.rb:240]:<br>
is not true.</p>
</li>
<li>
<p>Failure:<br>
test_stat_owned_p(TestFileExhaustive) [/Users/nishiyamakazuhiro/wc/ruby-lang/trunk/test/ruby/test_file_exhaustive.rb:698]:<br>
is not true.</p>
</li>
</ol>
<p>テストを実行するユーザがDir.mktmpdirの/tmp/のグループに入っていなくて、<br>
ディレクトリにsetgidされていなくてもディレクトリのグループが、新規作成<br>
される中のファイルに継承される環境(BSD系?)で起きるのではないかと思います。</p>
<p>$ touch ~/foo /tmp/foo<br>
$ ls -ld ~ ~/foo /tmp /tmp/ /tmp/foo<br>
drwxr-xr-x+ 26 nishiyamakazuhiro staff 884 Jul 23 07:46 /Users/nishiyamakazuhiro<br>
-rw-r--r-- 1 nishiyamakazuhiro staff 0 Jul 23 07:47 /Users/nishiyamakazuhiro/foo<br>
lrwxr-xr-x@ 1 root admin 11 Jul 16 16:29 /tmp -> private/tmp<br>
drwxrwxrwt 9 root wheel 306 Jul 23 07:46 /tmp/<br>
-rw-r--r-- 1 nishiyamakazuhiro wheel 0 Jul 23 07:47 /tmp/foo<br>
$ id<br>
uid=501(nishiyamakazuhiro) gid=20(staff) groups=20(staff),98(_lpadmin),81(_appserveradm),101(com.apple.sharepoint.group.1),79(_appserverusr),80(admin)<br>
$</p>
<p>--<br>
|ZnZ(ゼット エヌ ゼット)<br>
|西山和広(Kazuhiro NISHIYAMA)<br>
=end</p>
Ruby 1.8 - Bug #194 (Closed): test_circular_references(YAML_Unit_Tests)
https://bugs.ruby-lang.org/issues/194
2008-06-19T20:03:29Z
znz (Kazuhiro NISHIYAMA)
<p>=begin<br>
西山和広です。</p>
<p>1.8.5と1.8.6のmake test-allがDebian etchの環境で<br>
test_circular_references(YAML_Unit_Tests)<br>
で[BUG] Segmentation faultになります。</p>
<p>別の環境(Ubuntu hardy)だと<br>
SystemStackError: stack level too deep<br>
になっていました。</p>
<p>--<br>
|ZnZ(ゼット エヌ ゼット)<br>
|西山和広(Kazuhiro NISHIYAMA)<br>
=end</p>