[Rubygems-developers] Reduce the gap between posix and Windows

James Tucker jftucker at gmail.com
Fri Apr 25 07:58:16 EDT 2008


On 23 Apr 2008, at 16:44, Luis Lavena wrote:

> On Wed, Apr 23, 2008 at 12:52 AM, Luis Lavena <luislavena at gmail.com>  
> wrote:
>>
>> ruby-core and ruby developers. It will require change the way
>> dln_find_1 (dln.c:1690) since is the responsible to look for rake.*
>> and prioritize rake (extensionless) over rake.bat.
>>
>> The problem is around lines is the execution workflow, when asked for
>> 'rake' it will find it at line 1785 and return it at that time, since
>> eaccess(fbuf, X_OK) will always return 0 on windows (there is no way
>> to know if a file is executable or not.
>>
>> The actual check for the execution flag is actually processed  
>> starting
>> at 1802, but we never get there unless there is no file 'rake'
>> (extensionless).
>>
>> What do you think will be best? fix the ruby behavior? or change how
>> rubygems create stuff.
>>
>> I see quite difficult some of these changes get approved and  
>> included,
>> since I don't get a lot of positive reactions to my comments on
>> ruby-core (you can say I can be just a pain in the butt).
>>
>
> A better look at this make me think is better send this to ruby-core
> and get this fixed instead. What current Ruby is doing doesn't work as
> expected, at least not in Windows.
>
> I'll try create a small example and provide a patch to ruby-core.


assoc .=MaybeExecutable
ftype MaybeExecutable=c:\ruby\bin\ruby c:\pretend_posix\bin\execve %0 %*
set PATHEXT=.;%PATHEXT%

Or something like that. N.B. I got most of the way to the above  
working, and hit some problems (I was working off a network drive at  
the time, YMMV with more local drives, hopefully, the solution can  
work).

Also, git solved this problem by implementing some compatibility  
wrappers:

http://marc.info/?l=git&m=120413867221197&w=2

And the details of the Windows rules, at least CMD rules for launching  
apps are in some more detail here:

http://www.microsoft.com/technet/archive/winntas/deploy/prodspecs/shellscr.mspx?mfr=true

HTH


> Thank you again for your time.
>
> -- 
> Luis Lavena
> Multimedia systems
> -
> Human beings, who are almost unique in having the ability to learn  
> from
> the experience of others, are also remarkable for their apparent
> disinclination to do so.
> Douglas Adams
> _______________________________________________
> Rubygems-developers mailing list
> Rubygems-developers at rubyforge.org
> http://rubyforge.org/mailman/listinfo/rubygems-developers



More information about the Rubygems-developers mailing list