[#10157] Re: Including classes — Pit Capitain <pit@...>
Ola Bini schrieb:
[#10167] SVN revision corresponding to 1.8.5_p12? — Charles Oliver Nutter <charles.nutter@...>
Simple question: what SVN revision corresponds to the 1.8.5_p12 release?
[#10185] Ruby 1.9: Why the change to the return values of #instance_variables? — "Austin Ziegler" <halostatue@...>
I have been preparing a release of Transaction::Simple 1.4 and want to
[#10193] String.ord — David Flanagan <david@...>
Hi,
Hi,
Yukihiro Matsumoto wrote:
David Flanagan wrote:
Daniel Berger wrote:
On 2/6/07, David Flanagan <david@davidflanagan.com> wrote:
Nikolai Weibull wrote:
On 2/6/07, David Flanagan <david@davidflanagan.com> wrote:
Nikolai Weibull wrote:
Quoting david@davidflanagan.com, on Wed, Feb 07, 2007 at 09:10:52AM +0900:
On 2/7/07, Sam Roberts <sroberts@uniserve.com> wrote:
Nikolai Weibull wrote:
Hi,
On 2/6/07, Yukihiro Matsumoto <matz@ruby-lang.org> wrote:
Hi --
On 2/6/07, dblack@wobblini.net <dblack@wobblini.net> wrote:
[#10230] Test::Unit::AutoRunner#parse_args bug, attributable to optparse documentation. — Mauricio Fernandez <mfp@...>
[#10254] uninitialized variable in function rb_syswait() — <noreply@...>
Bugs item #8538, was opened at 2007-02-09 17:25
On Sat, Feb 10, 2007 at 02:25:43AM +0900, noreply@rubyforge.org wrote:
[#10255] String:upto loops forever if argument is modified inside block — <noreply@...>
Bugs item #8539, was opened at 2007-02-09 17:27
[#10257] coredump when invoking Kernel:syscall — <noreply@...>
Bugs item #8541, was opened at 2007-02-09 17:31
On Sat, Feb 10, 2007 at 02:31:48AM +0900, noreply@rubyforge.org wrote:
[#10259] Segmentation fault: Ruby 1.8.5 Under VC++ express 2005 — "z wen" <zhimin.wen@...>
Hi
Hell,
Hello,
On 2/10/07, Masaki Suketa <masaki.suketa@nifty.ne.jp> wrote:
[#10276] fastthread now default in ruby_1_8 — "Akinori MUSHA" <knu@...>
Hi,
[#10284] Can't seem to run tests? — "Farrel Lifson" <farrel.lifson@...>
Hi there,
[#10288] Socket library should support abstract unix sockets — <noreply@...>
Bugs item #8597, was opened at 2007-02-13 16:10
On Wed, Feb 14, 2007 at 12:10:37AM +0900, noreply@rubyforge.org wrote:
Hi,
On Wed, Feb 14, 2007 at 08:38:50AM +0900, Yukihiro Matsumoto wrote:
On Wed, Feb 14, 2007 at 12:10:37AM +0900, noreply@rubyforge.org wrote:
[#10290] URI::Generic#userinfo — "Jonas Pfenniger" <zimbatm@...>
Hello,
Those are not errors. Username and password are not allowed in HTTP
[#10321] File.basename fails on Windows root paths — <noreply@...>
Bugs item #8676, was opened at 2007-02-15 10:09
Hi,
On 5/12/07, Nobuyoshi Nakada <nobu@ruby-lang.org> wrote:
On 5/12/07, Austin Ziegler <halostatue@gmail.com> wrote:
Nikolai Weibull wrote:
[#10323] Trouble with xmlrpc — James Edward Gray II <james@...>
Some of the Ruby code used by TextMate makes use of xmlrpc/
> -----Original Message-----
On Feb 15, 2007, at 1:29 PM, Berger, Daniel wrote:
On Feb 15, 2007, at 1:33 PM, James Edward Gray II wrote:
On Feb 16, 2007, at 7:49 AM, James Edward Gray II wrote:
At Tue, 20 Feb 2007 22:33:08 +0900,
On Feb 20, 2007, at 7:50 AM, Akinori MUSHA wrote:
While I am complaining about xmlrpc, we have another issue. It's
James Edward Gray II wrote:
On Feb 16, 2007, at 12:08 PM, Alex Young wrote:
James Edward Gray II wrote:
On Feb 16, 2007, at 4:27 PM, Alex Young wrote:
On Feb 16, 2007, at 5:08 PM, James Edward Gray II wrote:
James Edward Gray II wrote:
[#10334] make Test::Unit output more Emacs friendly format — Kouhei Sutou <kou@...>
Hi,
[#10341] matz/knu: Requesting committer privileges to add Win32 NTLM authentication to net/http — "Justin Bailey" <jgbailey@...>
Matz, Mr. Musha, and All,
[#10357] Ruby 1.8.6 preview1 has been released — "Akinori MUSHA" <knu@...>
Hi,
[#10372] Stateful I/O interface — "Tony Arcieri" <tony@...>
Has anyone ever suggested adding a stateful I/O multiplexing interface which
[#10387] vendor_ruby support — Marcus Rueckert <mrueckert@...>
Hi,
[#10397] Ruby 1.8.5 not installing a working digest.rb on MacOSX — "Ryan Waldron" <ryan.waldron@...>
While trying to install a Rails app on my Mac (10.4 Tiger), I ran into
[#10413] Support for multiple-files breakpoint-management with Emacs — Martin Nordholts <enselic@...>
Hello!
Sorry for misformatting. This time it should be OK (enclosed in
It appears as if the debugger doesn't support 'b file.rb:25', but it
[#10414] Ruby 1.8.6 preview2 has been released — "Akinori MUSHA" <knu@...>
Hi,
On 2/24/07, Akinori MUSHA <knu@idaemons.org> wrote:
[#10420] Test::Unit shows result even if interrupted — Kouhei Sutou <kou@...>
Hi,
Kouhei Sutou <kou@cozmixng.org> writes:
[#10437] MIME decoding confused by non-MIME characters — Brian Candler <B.Candler@...>
Could someone who has bleeding-edge Ruby installed please test the
[#10442] Latest Update to RHG — Charles Thornton <ceo@...>
I am releasing the lastest version of the Ruby Hacker's Guide.
Hi,
[#10445] PATCH: Emacs support for 'ruby-debug' (rdebug) : rdebug.el — Martin Nordholts <enselic@...>
Hello,
This is a patch against trunk that also changes ./misc/README. The patch
[#10446] Potential RCR?: Array#join with block — "Farrel Lifson" <farrel.lifson@...>
Does anyone think Array#join with a block is a potential RCR?
Re: [ ruby-Bugs-8679 ] Unexpected behavior of splat (*) in parallel assignment
On Feb 15, 2007, at 2:29 PM, noreply@rubyforge.org wrote:
> Bugs item #8679, was opened at 2007-02-15 14:29
> You can respond by visiting:
> http://rubyforge.org/tracker/?
> func=detail&atid=1698&aid=8679&group_id=426
>
> Category: Core
> Group: 1.9.x
> Status: Open
> Resolution: None
> Priority: 3
> Submitted By: Gary Wright (gwright)
> Assigned to: Nobody (None)
> Summary: Unexpected behavior of splat (*) in parallel assignment
Here is a patch for test/ruby/test_assignment.rb and
test/ruby/test_array.rb to add cases for this situation.
Index: test/ruby/test_array.rb
===================================================================
--- test/ruby/test_array.rb (revision 11764)
+++ test/ruby/test_array.rb (working copy)
@@ -11,6 +11,8 @@
assert_equal([2,3], [1,2,3] & [2,3,4])
assert_equal([1,2,3,4], [1,2,3] | [2,3,4])
assert_equal([1,2,3] - [2,3], [1])
+ assert_equal([1,*[2,3]], [1,2,3])
+ assert_equal([*[1,2],3], [1,2,3])
x = [0, 1, 2, 3, 4, 5]
assert_equal(2, x[2])
Index: test/ruby/test_assignment.rb
===================================================================
--- test/ruby/test_assignment.rb (revision 11764)
+++ test/ruby/test_assignment.rb (working copy)
@@ -28,6 +28,7 @@
a = [*[]]; assert_equal([], a)
a = [*[1]]; assert_equal([1], a)
a = [*[1,2]]; assert_equal([1,2], a)
+ a = [*[1,2], 3]; assert_equal([1,2,3], a)
a = *[]; assert_equal([], a)
a = *[1]; assert_equal([1], a)
@@ -37,6 +38,7 @@
a = *[*[]]; assert_equal([], a)
a = *[*[1]]; assert_equal([1], a)
a = *[*[1,2]]; assert_equal([1,2], a)
+ a = *[*[1,2], 3]; assert_equal([1,2,3], a)
*a = nil; assert_equal([nil], a)
*a = 1; assert_equal([1], a)
@@ -48,6 +50,7 @@
*a = [*[]]; assert_equal([], a)
*a = [*[1]]; assert_equal([1], a)
*a = [*[1,2]]; assert_equal([1,2], a)
+ *a = [*[1,2], 3]; assert_equal([1,2,3], a)
*a = *[]; assert_equal([], a)
*a = *[1]; assert_equal([1], a)
@@ -57,6 +60,7 @@
*a = *[*[]]; assert_equal([], a)
*a = *[*[1]]; assert_equal([1], a)
*a = *[*[1,2]]; assert_equal([1,2], a)
+ *a = *[*[1,2],3]; assert_equal([1,2,3], a)
a,b,*c = nil; assert_equal([nil,nil,[]], [a,b,c])
a,b,*c = 1; assert_equal([1,nil,[]], [a,b,c])
@@ -68,6 +72,7 @@
a,b,*c = [*[]]; assert_equal([nil,nil,[]], [a,b,c])
a,b,*c = [*[1]]; assert_equal([1,nil,[]], [a,b,c])
a,b,*c = [*[1,2]]; assert_equal([1,2,[]], [a,b,c])
+ a,b,c,*d = [*[1,2],3]; assert_equal([1,2,3,[]], [a,b,c,d])
a,b,*c = *[]; assert_equal([nil,nil,[]], [a,b,c])
a,b,*c = *[1]; assert_equal([1,nil,[]], [a,b,c])
@@ -77,6 +82,7 @@
a,b,*c = *[*[]]; assert_equal([nil,nil,[]], [a,b,c])
a,b,*c = *[*[1]]; assert_equal([1,nil,[]], [a,b,c])
a,b,*c = *[*[1,2]]; assert_equal([1,2,[]], [a,b,c])
+ a,b,c,*d = *[*[1,2],3]; assert_equal([1,2,3,[]], [a,b,c,d])
end
def test_yield
@@ -89,6 +95,7 @@
def f; yield([*[]]); end; f {|a| assert_equal([], a)}; undef f
def f; yield([*[1]]); end; f {|a| assert_equal([1], a)}; undef f
def f; yield([*[1,2]]); end; f {|a| assert_equal([1,2], a)};
undef f
+ def f; yield([*[1,2],3]); end; f {|a| assert_equal([1,2,3], a)};
undef f
def f; yield(*[1]); end; f {|a| assert_equal([1], a)}; undef f
def f; yield(*[nil]); end; f {|a| assert_equal([nil], a)}; undef f
@@ -106,6 +113,7 @@
def f; yield([*[]]); end; f {|*a| assert_equal([], a)}; undef f
def f; yield([*[1]]); end; f {|*a| assert_equal([1], a)}; undef f
def f; yield([*[1,2]]); end; f {|*a| assert_equal([1,2], a)};
undef f
+ def f; yield([*[1,2],3]); end; f {|*a| assert_equal([1,2,3],
a)}; undef f
def f; yield(*[]); end; f {|*a| assert_equal([], a)}; undef f
def f; yield(*[1]); end; f {|*a| assert_equal([1], a)}; undef f
@@ -114,6 +122,7 @@
def f; yield(*[*[]]); end; f {|*a| assert_equal([], a)}; undef f
def f; yield(*[*[1]]); end; f {|*a| assert_equal([1], a)}; undef f
def f; yield(*[*[1,2]]); end; f {|*a| assert_equal([1,2], a)};
undef f
+ def f; yield(*[*[1,2],3]); end; f {|*a| assert_equal([1,2,3],
a)}; undef f
def f; yield; end; f {|a,b,*c| assert_equal([nil,nil,[]],
[a,b,c])}; undef f
def f; yield(nil); end; f {|a,b,*c| assert_equal([nil,nil,[]],
[a,b,c])}; undef f
@@ -125,6 +134,7 @@
def f; yield([*[]]); end; f {|a,b,*c| assert_equal([nil,nil,
[]], [a,b,c])}; undef f
def f; yield([*[1]]); end; f {|a,b,*c| assert_equal([1,nil,[]],
[a,b,c])}; undef f
def f; yield([*[1,2]]); end; f {|a,b,*c| assert_equal([1,2,[]],
[a,b,c])}; undef f
+ def f; yield([*[1,2],3]); end; f {|a,b,c,*d| assert_equal([1,2,3,
[]], [a,b,c,d])}; undef f
def f; yield(*[]); end; f {|a,b,*c| assert_equal([nil,nil,[]],
[a,b,c])}; undef f
def f; yield(*[1]); end; f {|a,b,*c| assert_equal([1,nil,[]],
[a,b,c])}; undef f
@@ -133,6 +143,7 @@
def f; yield(*[*[]]); end; f {|a,b,*c| assert_equal([nil,nil,
[]], [a,b,c])}; undef f
def f; yield(*[*[1]]); end; f {|a,b,*c| assert_equal([1,nil,
[]], [a,b,c])}; undef f
def f; yield(*[*[1,2]]); end; f {|a,b,*c| assert_equal([1,2,
[]], [a,b,c])}; undef f
+ def f; yield(*[*[1,2],3]); end; f {|a,b,c,*d| assert_equal
([1,2,3,[]], [a,b,c,d])}; undef f
end
def test_return
@@ -146,6 +157,7 @@
def r; return [*[]]; end; a = r(); assert_equal([], a); undef r
def r; return [*[1]]; end; a = r(); assert_equal([1], a); undef r
def r; return [*[1,2]]; end; a = r(); assert_equal([1,2], a);
undef r
+ def r; return [*[1,2],3]; end; a = r(); assert_equal([1,2,3],
a); undef r
def r; return *[]; end; a = r(); assert_equal([], a); undef r
def r; return *[1]; end; a = r(); assert_equal([1], a); undef r
@@ -154,9 +166,11 @@
def r; return *[*[]]; end; a = r(); assert_equal([], a); undef r
def r; return *[*[1]]; end; a = r(); assert_equal([1], a); undef r
def r; return *[*[1,2]]; end; a = r(); assert_equal([1,2], a);
undef r
+ def r; return *[*[1,2],3]; end; a = r(); assert_equal([1,2,3],
a); undef r
def r; return *[[]]; end; a = *r(); assert_equal([[]], a); undef r
def r; return *[*[1,2]]; end; a = *r(); assert_equal([1,2], a);
undef r
+ def r; return *[*[1,2],3]; end; a = *r(); assert_equal([1,2,3],
a); undef r
def r; return; end; *a = r(); assert_equal([nil], a); undef r
def r; return nil; end; *a = r(); assert_equal([nil], a); undef r
@@ -169,6 +183,7 @@
def r; return [*[]]; end; *a = r(); assert_equal([], a); undef r
def r; return [*[1]]; end; *a = r(); assert_equal([1], a); undef r
def r; return [*[1,2]]; end; *a = r(); assert_equal([1,2], a);
undef r
+ def r; return [*[1,2],3]; end; *a = r(); assert_equal([1,2,3],
a); undef r
def r; return *[]; end; *a = r(); assert_equal([], a); undef r
def r; return *[1]; end; *a = r(); assert_equal([1], a); undef r
@@ -178,10 +193,12 @@
def r; return *[*[]]; end; *a = r(); assert_equal([], a); undef r
def r; return *[*[1]]; end; *a = r(); assert_equal([1], a);
undef r
def r; return *[*[1,2]]; end; *a = r(); assert_equal([1,2], a);
undef r
+ def r; return *[*[1,2],3]; end; *a = r(); assert_equal([1,2,3],
a); undef r
def r; return *[[]]; end; *a = *r(); assert_equal([[]], a);
undef r
def r; return *[1,2]; end; *a = *r(); assert_equal([1,2], a);
undef r
def r; return *[*[1,2]]; end; *a = *r(); assert_equal([1,2],
a); undef r
+ def r; return *[*[1,2],3]; end; *a = *r(); assert_equal([1,2,3],
a); undef r
def r; return; end; a,b,*c = r(); assert_equal([nil,nil,[]],
[a,b,c]); undef r
def r; return nil; end; a,b,*c = r(); assert_equal([nil,nil,
[]], [a,b,c]); undef r
@@ -194,6 +211,7 @@
def r; return [*[]]; end; a,b,*c = r(); assert_equal([nil,nil,
[]], [a,b,c]); undef r
def r; return [*[1]]; end; a,b,*c = r(); assert_equal([1,nil,
[]], [a,b,c]); undef r
def r; return [*[1,2]]; end; a,b,*c = r(); assert_equal([1,2,
[]], [a,b,c]); undef r
+ def r; return [*[1,2],3]; end; a,b,c,*d = r(); assert_equal
([1,2,3,[]], [a,b,c,d]); undef r
def r; return *[]; end; a,b,*c = r(); assert_equal([nil,nil,
[]], [a,b,c]); undef r
def r; return *[1]; end; a,b,*c = r(); assert_equal([1,nil,[]],
[a,b,c]); undef r
@@ -203,6 +221,7 @@
def r; return *[*[]]; end; a,b,*c = r(); assert_equal([nil,nil,
[]], [a,b,c]); undef r
def r; return *[*[1]]; end; a,b,*c = r(); assert_equal([1,nil,
[]], [a,b,c]); undef r
def r; return *[*[1,2]]; end; a,b,*c = r(); assert_equal([1,2,
[]], [a,b,c]); undef r
+ def r; return *[*[1,2,3]]; end; a,b,c,*d = r(); assert_equal
([1,2,3,[]], [a,b,c,d]); undef r
end
def test_lambda
@@ -246,6 +265,9 @@
assert_equal([1,2,3], [x,y,z])
x, (y, z) = 1, [2]
assert_equal([1,2,nil], [x,y,z])
+
+ x,y,z = [*[1,2],3]
+ assert_equal([1,2,3], [x,y,z])
end
def test_break
@@ -259,6 +281,7 @@
a = loop do break [*[]]; end; assert_equal([], a)
a = loop do break [*[1]]; end; assert_equal([1], a)
a = loop do break [*[1,2]]; end; assert_equal([1,2], a)
+ a = loop do break [*[1,2],3]; end; assert_equal([1,2,3], a)
a = loop do break *[]; end; assert_equal([], a)
a = loop do break *[1]; end; assert_equal([1], a)
@@ -267,6 +290,7 @@
a = loop do break *[*[]]; end; assert_equal([], a)
a = loop do break *[*[1]]; end; assert_equal([1], a)
a = loop do break *[*[1,2]]; end; assert_equal([1,2], a)
+ a = loop do break *[*[1,2],3]; end; assert_equal([1,2,3], a)
*a = loop do break; end; assert_equal([nil], a)
*a = loop do break nil; end; assert_equal([nil], a)
@@ -279,6 +303,7 @@
*a = loop do break [*[]]; end; assert_equal([], a)
*a = loop do break [*[1]]; end; assert_equal([1], a)
*a = loop do break [*[1,2]]; end; assert_equal([1,2], a)
+ *a = loop do break [*[1,2],3]; end; assert_equal([1,2,3], a)
*a = loop do break *[]; end; assert_equal([], a)
*a = loop do break *[1]; end; assert_equal([1], a)
@@ -288,10 +313,12 @@
*a = loop do break *[*[]]; end; assert_equal([], a)
*a = loop do break *[*[1]]; end; assert_equal([1], a)
*a = loop do break *[*[1,2]]; end; assert_equal([1,2], a)
+ *a = loop do break *[*[1,2],3]; end; assert_equal([1,2,3], a)
*a = *loop do break *[[]]; end; assert_equal([[]], a)
*a = *loop do break *[1,2]; end; assert_equal([1,2], a)
*a = *loop do break *[*[1,2]]; end; assert_equal([1,2], a)
+ *a = *loop do break *[*[1,2],3]; end; assert_equal([1,2,3], a)
a,b,*c = loop do break; end; assert_equal([nil,nil,[]], [a,b,c])
a,b,*c = loop do break nil; end; assert_equal([nil,nil,[]],
[a,b,c])
@@ -304,6 +331,7 @@
a,b,*c = loop do break [*[]]; end; assert_equal([nil,nil,[]],
[a,b,c])
a,b,*c = loop do break [*[1]]; end; assert_equal([1,nil,[]],
[a,b,c])
a,b,*c = loop do break [*[1,2]]; end; assert_equal([1,2,[]],
[a,b,c])
+ a,b,c,*d = loop do break [*[1,2],3]; end; assert_equal([1,2,3,
[]], [a,b,c,d])
a,b,*c = loop do break *[]; end; assert_equal([nil,nil,[]],
[a,b,c])
a,b,*c = loop do break *[1]; end; assert_equal([1,nil,[]],
[a,b,c])
@@ -313,6 +341,7 @@
a,b,*c = loop do break *[*[]]; end; assert_equal([nil,nil,[]],
[a,b,c])
a,b,*c = loop do break *[*[1]]; end; assert_equal([1,nil,[]],
[a,b,c])
a,b,*c = loop do break *[*[1,2]]; end; assert_equal([1,2,[]],
[a,b,c])
+ a,b,c,d = loop do break *[*[1,2],3]; end; assert_equal([1,2,3,
[]], [a,b,c,d])
end
def test_next
@@ -327,6 +356,7 @@
r([]){next [*[]]}
r([1]){next [*[1]]}
r([1,2]){next [*[1,2]]}
+ r([1,2,3]){next [*[1,2],3]}
r([]){next *[]}
r([1]){next *[1]}
@@ -335,6 +365,7 @@
r([]){next *[*[]]}
r([1]){next *[*[1]]}
r([1,2]){next *[*[1,2]]}
+ r([1,2,3]){next *[*[1,2],3]}
undef r
def r(val); *a = yield(); assert_equal(val, a); end
@@ -349,12 +380,14 @@
r([]){next [*[]]}
r([1]){next [*[1]]}
r([1,2]){next [*[1,2]]}
+ r([1,2,3]){next [*[1,2],3]}
undef r
def r(val); *a = *yield(); assert_equal(val, a); end
r([[]]){next *[[]]}
r([1,2]){next *[1,2]}
r([1,2]){next *[*[1,2]]}
+ r([1,2,3]){next *[*[1,2],3]}
undef r
def r(val); a,b,*c = yield(); assert_equal(val, [a,b,c]); end
@@ -371,11 +404,19 @@
r([1,2,[]]){next [*[1,2]]}
undef r
+ def r(val); a,b,c,d = yield(); assert_equal(val, [a,b,c,d]); end
+ r([1,2,3,[]]){next [*[1,2],3]}
+ undef r
+
def r(val); a,b,*c = *yield(); assert_equal(val, [a,b,c]); end
r([[],nil,[]]){next *[[]]}
r([1,2,[]]){next *[1,2]}
r([1,2,[]]){next *[*[1,2]]}
undef r
+
+ def r(val); a,b,c,*d = *yield(); assert_equal(val, [a,b,c,d]); end
+ r([1,2,3,[]]){next *[*[1,2],3]}
+ undef r
end
def test_assign2