[#21039] Happy new year and... moving Ruby development to Git? — Michael Klishin <michael.s.klishin@...>

Happy new year everyone.

94 messages 2009/01/01
[#21040] Re: Happy new year and... moving Ruby development to Git? — James Gray <james@...> 2009/01/01

On Jan 1, 2009, at 6:42 AM, Michael Klishin wrote:

[#21041] Re: Happy new year and... moving Ruby development to Git? — brabuhr@... 2009/01/01

On Thu, Jan 1, 2009 at 11:22 AM, James Gray <james@grayproductions.net> wrote:

[#21042] Re: Happy new year and... moving Ruby development to Git? — Federico Builes <federico.builes@...> 2009/01/01

brabuhr@gmail.com writes:

[#21049] Re: Happy new year and... moving Ruby development to Git? — Michael Klishin <michael.s.klishin@...> 2009/01/01

[#21053] Re: Happy new year and... moving Ruby development to Git? — znmeb@... 2009/01/01

Quoting Michael Klishin <michael.s.klishin@gmail.com>:

[#21068] Re: Happy new year and... moving Ruby development to Git? — Yukihiro Matsumoto <matz@...> 2009/01/02

Hi,

[#21069] Re: Happy new year and... moving Ruby development to Git? — Florian Gilcher <flo@...> 2009/01/02

-----BEGIN PGP SIGNED MESSAGE-----

[#21070] Re: Happy new year and... moving Ruby development to Git? — "Luis Lavena" <luislavena@...> 2009/01/02

On Fri, Jan 2, 2009 at 12:18 PM, Florian Gilcher <flo@andersground.net> wrote:

[#21073] Re: Happy new year and... moving Ruby development to Git? — mathew <meta@...> 2009/01/02

My opinion:

[#21078] Re: Happy new year and... moving Ruby development to Git? — "Eust痃uio Rangel" <eustaquiorangel@...> 2009/01/02

My two cents:

[#21101] Re: Happy new year and... moving Ruby development to Git? — "M. Edward (Ed) Borasky" <znmeb@...> 2009/01/03

Eust痃uio Rangel wrote:

[#21102] Re: Happy new year and... moving Ruby development to Git? — "Nikolai Weibull" <now@...> 2009/01/03

On Sat, Jan 3, 2009 at 21:40, M. Edward (Ed) Borasky <znmeb@cesmail.net> wrote:

[#21104] Re: Happy new year and... moving Ruby development to Git? — "M. Edward (Ed) Borasky" <znmeb@...> 2009/01/03

Nikolai Weibull wrote:

[#21106] Re: Happy new year and... moving Ruby development to Git? — "Giuseppe Bilotta" <giuseppe.bilotta@...> 2009/01/04

On Sat, Jan 3, 2009 at 10:39 PM, M. Edward (Ed) Borasky

[#21114] Re: Happy new year and... moving Ruby development to Git? — Joel VanderWerf <vjoel@...> 2009/01/04

Giuseppe Bilotta wrote:

[#21132] Re: Happy new year and... moving Ruby development to Git? — Michael Klishin <michael.s.klishin@...> 2009/01/05

[#21134] Re: Happy new year and... moving Ruby development to Git? — Daniel Berger <djberg96@...> 2009/01/05

Michael Klishin wrote:

[#21080] Re: Happy new year and... moving Ruby development to Git? — Eric Hodel <drbrain@...7.net> 2009/01/02

On Jan 1, 2009, at 04:42 AM, Michael Klishin wrote:

[#21083] Re: Happy new year and... moving Ruby development to Git? — "Nikolai Weibull" <now@...> 2009/01/03

On Sat, Jan 3, 2009 at 00:34, Eric Hodel <drbrain@segment7.net> wrote:

[#21160] Re: Happy new year and... moving Ruby development to Git? — Eric Hodel <drbrain@...7.net> 2009/01/05

On Jan 2, 2009, at 17:25 PM, Nikolai Weibull wrote:

[#21165] Re: Happy new year and... moving Ruby development to Git? — Sylvain Joyeux <sylvain.joyeux@...4x.org> 2009/01/06

> I think I'm entitled to an opinion on the subject because I am a

[#21089] Re: Happy new year and... moving Ruby development to Git? — Michael Klishin <michael.s.klishin@...> 2009/01/03

[#21147] Re: Happy new year and... moving Ruby development to Git? — Paul Brannan <pbrannan@...> 2009/01/05

On Sat, Jan 03, 2009 at 12:48:09PM +0900, Michael Klishin wrote:

[#21097] [Bug #977] caller for all threads patch — Roger Pack <redmine@...>

Bug #977: caller for all threads patch

15 messages 2009/01/03
[#23760] Re: [Bug #977] caller for all threads patch — SASADA Koichi <ko1@...> 2009/06/08

I made a patch to Thread#caller(lev=1). It may be more flexible than

[#21244] [Bug #999] SSL & ZIP missing from ruby-1.9.1-preview1-i386-mswin32 — William Mason <redmine@...>

Bug #999: SSL & ZIP missing from ruby-1.9.1-preview1-i386-mswin32

14 messages 2009/01/10

[#21259] Do I need a special build arg to get irb to accept utf characters on OSX — Dave Thomas <dave@...>

I'm seeing very strange behavior at the irb prompt with ruby 1.9.1

10 messages 2009/01/11

[#21289] MRI 1.8.6 bug - exit is ignored if ensure clause throws exception which is caught by outer rescue — Shri Borde <Shri.Borde@...>

The following code snippet does print "after foo" when using MRI 1.8.6 on Windows Vista, showing that exit is ignored. Any thoughts on whether this is by design, a known bug, or a new issue? If it's the latter, should I open a bug for it?

5 messages 2009/01/12

[#21310] [Bug #1008] Missing shell version of ruby-1.9 commands (gem, rake, ...) for MinGW installation — Chauk-Mean Proum <redmine@...>

Bug #1008: Missing shell version of ruby-1.9 commands (gem, rake, ...) for MinGW installation

8 messages 2009/01/13

[#21339] [Bug #1010] Ruby-1.9's rake sh doesn't work on Windows (but fix provided) — Chauk-Mean Proum <redmine@...>

Bug #1010: Ruby-1.9's rake sh doesn't work on Windows (but fix provided)

10 messages 2009/01/14

[#21399] Proposal: Module#copy_method — Yehuda Katz <wycats@...>

I'd like it to be possible to copy methods from one module to another. The

38 messages 2009/01/18
[#21428] Re: Proposal: Module#copy_method — Yukihiro Matsumoto <matz@...> 2009/01/19

Hi,

[#21550] [Feature #1046] request: ability to run without specifying .rb — Roger Pack <redmine@...>

Feature #1046: request: ability to run without specifying .rb

13 messages 2009/01/24

[#21552] [Feature #1047] request: getters, setters for the GC — Roger Pack <redmine@...>

Feature #1047: request: getters, setters for the GC

15 messages 2009/01/24

[#21613] [Bug #1063] in `write': Not enough space - <STDOUT> (Errno::ENOMEM) on Windows XP — Nick Gorbikoff <redmine@...>

Bug #1063: in `write': Not enough space - <STDOUT> (Errno::ENOMEM) on Windows XP

11 messages 2009/01/27

[#21640] [Bug #1068] Ruby Cannot Handle Some UIDs — James Gray <redmine@...>

Bug #1068: Ruby Cannot Handle Some UIDs

12 messages 2009/01/28
[#21642] Re: [Bug #1068] Ruby Cannot Handle Some UIDs — Ondrej Bilka <neleai@...> 2009/01/28

On Wed, Jan 28, 2009 at 05:00:05PM +0100, James Gray wrote:

[#21663] Re: [Bug #1068] Ruby Cannot Handle Some UIDs — Nobuyoshi Nakada <nobu@...> 2009/01/29

Hi,

[#21701] [Feature #1081] add File::write() convenience method — Suraj Kurapati <redmine@...>

Feature #1081: add File::write() convenience method

34 messages 2009/01/31
[#28450] [Feature #1081] add File::write() convenience method — Yusuke Endoh <redmine@...> 2010/03/03

Issue #1081 has been updated by Yusuke Endoh.

[#28455] Re: [Feature #1081] add File::write() convenience method — Yukihiro Matsumoto <matz@...> 2010/03/04

Hi,

[#28472] Re: [Feature #1081] add File::write() convenience method — Yusuke ENDOH <mame@...> 2010/03/04

Hi,

[#21702] [Feature #1082] add Object#singleton_class method — Suraj Kurapati <redmine@...>

Feature #1082: add Object#singleton_class method

54 messages 2009/01/31
[#27372] [Feature #1082] add Object#singleton_class method — Suraj Kurapati <redmine@...> 2010/01/02

Issue #1082 has been updated by Suraj Kurapati.

[#27384] Re: [Feature #1082] add Object#singleton_class method — Yukihiro Matsumoto <matz@...> 2010/01/04

Hi,

[#27394] Re: [Feature #1082] add Object#singleton_class method — Yusuke ENDOH <mame@...> 2010/01/04

Hi,

[#27407] Re: [Feature #1082] add Object#singleton_class method — Shugo Maeda <shugo@...> 2010/01/05

Hi,

[#27409] Re: [Feature #1082] add Object#singleton_class method — Yukihiro Matsumoto <matz@...> 2010/01/05

Hi,

[#28304] Re: [Feature #1082] add Object#singleton_class method — Shugo Maeda <shugo@...> 2010/02/23

Hi,

[ruby-core:21427] Re: Proposal: Module#copy_method

From: Tomas Matousek <Tomas.Matousek@...>
Date: 2009-01-19 07:58:48 UTC
List: ruby-core #21427
I'm not saying that it couldn't work. If implemented differently than 1.9's module_function then it might be ok.
The example I referred to is following (1.8.6 works fine, 1.9 doesn't):

class Module
  # module_function is not defined on Class class, let's add a public alias:
  alias :mf :module_function
  public :mf
end

# define foo in D and a different one in singleton of D:
class D
  def foo
    puts 'D::foo'
  end

  class << self
    def foo
      puts 'S(D)::foo'
    end
  end
end

# define foo in C < D and in singleton of C via module_function:
class C < D
  # call module_function
  # - module_function checks that self is a class
  # - thus we need to call it with a module receiver (e.g. Kernel, but any other module would do)
  Kernel.mf

  # defines foo in singleton of C since module_function has been called in the current scope:
  def foo
    puts 'foo'
    super
  end

  # calls foo on C, which should invoke foo on singleton of C, which should call super method on singleton of D
  foo
end

Ruby 1.8.6 (right):
foo
S(D)::foo

Ruby 1.9.1 (wrong):
foo
D::foo

Tomas

From: Yehuda Katz [mailto:wycats@gmail.com]
Sent: Sunday, January 18, 2009 9:16 PM
To: ruby-core@ruby-lang.org
Subject: [ruby-core:21426] Re: Proposal: Module#copy_method

I can show that this is not the case in MRI because my very crude hack (which just copies the method) doesn't break super semantics.

-- Yehuda
On Sun, Jan 18, 2009 at 10:04 PM, Tomas Matousek <Tomas.Matousek@microsoft.com<mailto:Tomas.Matousek@microsoft.com>> wrote:

I believe that methods (and blocks defined as methods via method_defined) are somehow closed over the module that declares them so that "super" can find the right module/class whose parent's method to call. At least they are in IronRuby :)



A simple copy of a method without changing binding to its declaring module therefore causes super to fail (or changes its semantics). I think this is the case even for module_function (I might have an example somewhere that demonstrates it, will send it tomorrow if I find it). module_function "copies" the method from declaring module to its singleton class, which is indeed not derived from the declaring module, breaking super in some constructed cases.



Tomas



From: Yehuda Katz [mailto:wycats@gmail.com<mailto:wycats@gmail.com>]
Sent: Sunday, January 18, 2009 3:14 PM
To: ruby-core@ruby-lang.org<mailto:ruby-core@ruby-lang.org>
Subject: [ruby-core:21423] Re: Proposal: Module#copy_method



Just FYI, the define_method version fails if your method requires the use of super. Observe:

class Zoo1
  def bar
    p "In superclass"
    1
  end
end

class Zoo2 < Zoo1
  def bar
    p "in Zoo2mod #{self}"
    super + 1
  end

  mod = Module.new do
    define_method(:bar, Zoo2.instance_method(:bar))
  end
  include mod

  def bar
    p "In bar"
    super + 1
  end
end

p Zoo2.new.bar

The above produces SystemStackError: stack level too deep, infinite-looping in the original bar implementation on Zoo2. Also, it doesn't work on 1.9.

-- Yehuda

On Sun, Jan 18, 2009 at 2:32 PM, Charles Oliver Nutter <charles.nutter@sun.com<mailto:charles.nutter@sun.com>> wrote:

Yehuda Katz wrote:

I'd like it to be possible to copy methods from one module to another. The rationale is that this feature would make it possible to modify existing methods without being forced to resort to aliasing. Here's an implementation that works on 1.8 and 1.9:



Here's a pure-ruby version that works on an unmodified JRuby:

require 'jruby'

class Module
 def copy_method(mod, sym)
   # get JRuby DynamicMethod object from RubyMethod
   org.jruby.RubyMethod.field_reader :method
   ruby_method = mod.instance_method(sym)
   real_method = JRuby.reference(ruby_method).method

   # native methods may have memory/object layout needs
   raise "can't copy native method" if real_method.native?

   # Add it directly to the JRuby RubyModule self
   real_modcls = JRuby.reference(self)
   real_modcls.add_method(sym.to_s, real_method)
 end
end

- Charlie



--
Yehuda Katz
Developer | Engine Yard
(ph) 718.877.1325



--
Yehuda Katz
Developer | Engine Yard
(ph) 718.877.1325

In This Thread