[#6864] ruby 1.8.4 rc breaks alias_method/rails in bad ways — "Ara.T.Howard" <ara.t.howard@...>

20 messages 2005/12/09
[#6870] Re: ruby 1.8.4 rc breaks alias_method/rails in bad ways — =?ISO-8859-15?Q?Florian_Gro=DF?= <florgro@...> 2005/12/12

Ara.T.Howard wrote:

[#6872] Re: ruby 1.8.4 rc breaks alias_method/rails in bad ways — ara.t.howard@... 2005/12/12

On Tue, 13 Dec 2005, [ISO-8859-15] Florian Growrote:

[#6873] Re: ruby 1.8.4 rc breaks alias_method/rails in bad ways — James Edward Gray II <james@...> 2005/12/12

On Dec 12, 2005, at 1:19 PM, ara.t.howard@noaa.gov wrote:

[#6874] Re: ruby 1.8.4 rc breaks alias_method/rails in bad ways — ara.t.howard@... 2005/12/12

On Tue, 13 Dec 2005, James Edward Gray II wrote:

[#6891] Time.utc! and Time.localtime! — Daniel Hobe <hobe@...>

Writing a script yesterday I found out, much to my surprise, that the

16 messages 2005/12/14

[#6918] change to yaml in 1.8.4 — ara.t.howard@...

14 messages 2005/12/16

[#6934] 1.8.x, YAML, and release management — Ryan Davis <ryand-ruby@...>

I'm concerned that 1.8.3's acceptance of non-backwards-compatible

28 messages 2005/12/18

[#6996] Problems building 1.8.4 with VS8 C++ Express Edition (cl 14.00) — Austin Ziegler <halostatue@...>

Visual Studio C++ 2005 Express Edition (VS 8.0)

20 messages 2005/12/27

Re: ruby 1.8.4 rc breaks alias_method/rails in bad ways

From: Jeremy Kemper <jeremy@...>
Date: 2005-12-12 22:52:39 UTC
List: ruby-core #6880
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Dec 12, 2005, at 1:55 PM, ara.t.howard@noaa.gov wrote:
> On Tue, 13 Dec 2005, James Edward Gray II wrote:
>> On Dec 12, 2005, at 2:10 PM, James Edward Gray II wrote:
>>> I'm *assuming* the change is that we've updated the vendor/rails/  
>>> directory to a more recent version.  I'm still running Ruby  
>>> 1.8.2, but was when I was seeing the errors too.  Might make sure  
>>> your Rails is up-to-date.
>>
>> As usual, I was wrong.  The /vendor/rails/ is the same version.   
>> My partner changed the constant definitions to avoid the warnings:
>>
>> OUR_CONST = ... unless const_defined? "OUR_CONST"
>>
>> So, I added a warning statement above those declarations and I see  
>> that it is indeed executed twice.  While I was in there, I noticed  
>> that controller is a base controller that at least one other  
>> controller inherits from.  Testing a theory, I added a warning to  
>> an uninherited controller and this is what I see in my test output:
>>
>> ...
>> Loading uninherited controller.
>> Loading base controller.
>> Loading base controller.
>> ...
>>
>> Something is fishy there.  Does Rails munge const_missing() by  
>> chance?
>
> it does.  i haven't read where, however... somthing to do with  
> dependancies
> injection or something...

Hi all.

Rails segregates 'framework' and 'app' files so the latter may be  
reloaded
per-request during development.  The result is a quick, responsive dev
environment, but it means Rails is going out of its way to implement  
a feature
that Ruby does not natively provide.

We can't tell whether two different paths refer to the same file so  
you'll
see double-requires depending on your load path.  You shouldn't see  
them in
the framework itself since it uses 'normal' requires.  Otherwise we'd  
hit an
inf. loop wrapping already-wrapped methods (as Ara reports.)

Unfortunately, I am unable to reproduce on 1.8.3 or .4p2 with Rails  
1.0rc5
running Linux or MacOS X.  I will try 1.8.2 + FreeBSD shortly.

Please note: there is a rails-core list for which this thread is well  
suited.
(I hope this error is not an issue with Ruby itself.)

   http://lists.rubyonrails.org/mailman/listinfo/rails-core

Best,
jeremy
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (Darwin)

iD8DBQFDnf8tAQHALep9HFYRAqvXAJ9BFs2Q63hIagzoGJvd+gTYT0GxzQCg0nVv
smi126lQfJl3PPkrWKDSafk=
=lIJ2
-----END PGP SIGNATURE-----

In This Thread