By the way, this is how $HOME is setup in mspec (on Windows):
# Code to setup HOME directory correctly on Windows
# This duplicates Ruby 1.9 semantics for defining HOME
platform_is :windows do
if ENV['HOME']
ENV['HOME'] = ENV['HOME'].tr '\\', '/'
elsif ENV['HOMEDIR'] && ENV['HOMEDRIVE']
ENV['HOME'] = File.join(ENV['HOMEDRIVE'], ENV['HOMEDIR'])
elsif ENV['HOMEDIR']
ENV['HOME'] = ENV['HOMEDIR']
elsif ENV['HOMEDRIVE']
ENV['HOME'] = ENV['HOMEDRIVE']
elsif ENV['USERPROFILE']
ENV['HOME'] = ENV['USERPROFILE']
else
puts "No suitable HOME environment found. This means that all of
HOME, HOMEDIR, HOMEDRIVE, and USERPROFILE are not set"
exit 1
end
end
That’s wrong.
The order should be:
HOME
USERPROFILE
HOMEDRIVE + HOMEDIR
Using HOMEDIR without HOMEDRIVE (and the opposite) are bad ideas.
On Mon, Jul 28, 2008 at 6:07 AM, Peter Bacon D. <
So the question is, “Given that this is in mspec and it claims to
reproduce Ruby 1.9 semantic, who do we send the bug report to?â€
From: [email protected]
[mailto:[email protected]] On Behalf Of Brad W.
Sent: Monday,28 July 28, 2008 23:18
To: [email protected]
Subject: Re: [Ironruby-core] $HOME
That’s wrong.
The order should be:
HOME
USERPROFILE
HOMEDRIVE + HOMEDIR
Using HOMEDIR without HOMEDRIVE (and the opposite) are bad ideas.
On Mon, Jul 28, 2008 at 6:07 AM, Peter Bacon D.
[email protected] wrote:
By the way, this is how $HOME is setup in mspec (on Windows):
# Code to setup HOME directory correctly on Windows
# This duplicates Ruby 1.9 semantics for defining HOME
platform_is :windows do
if ENV['HOME']
ENV['HOME'] = ENV['HOME'].tr '\\', '/'
elsif ENV['HOMEDIR'] && ENV['HOMEDRIVE']
ENV['HOME'] = File.join(ENV['HOMEDRIVE'], ENV['HOMEDIR'])
elsif ENV['HOMEDIR']
ENV['HOME'] = ENV['HOMEDIR']
elsif ENV['HOMEDRIVE']
ENV['HOME'] = ENV['HOMEDRIVE']
elsif ENV['USERPROFILE']
ENV['HOME'] = ENV['USERPROFILE']
else
puts "No suitable HOME environment found. This means that all of
HOME, HOMEDIR, HOMEDRIVE, and USERPROFILE are not set"
exit 1
end
end
Ruby 1.9 actually uses this order:
HOME
HOMEDRIVE + HOMEPATH
HOMEPATH
USERPROFILE
SHGetSpecialFolderLocation(NULL, CSIDL_PERSONAL, &pidl)
This seems reasonable. I suspect mspec needs tweaking.
Pete
From: [email protected]
[mailto:[email protected]] On Behalf Of Brad W.
Sent: Monday,28 July 28, 2008 23:18
To: [email protected]
Subject: Re: [Ironruby-core] $HOME
That’s wrong.
The order should be:
HOME
USERPROFILE
HOMEDRIVE + HOMEDIR
Using HOMEDIR without HOMEDRIVE (and the opposite) are bad ideas.
On Mon, Jul 28, 2008 at 6:07 AM, Peter Bacon D.
[email protected] wrote:
By the way, this is how $HOME is setup in mspec (on Windows):
# Code to setup HOME directory correctly on Windows
# This duplicates Ruby 1.9 semantics for defining HOME
platform_is :windows do
if ENV['HOME']
ENV['HOME'] = ENV['HOME'].tr '\\', '/'
elsif ENV['HOMEDIR'] && ENV['HOMEDRIVE']
ENV['HOME'] = File.join(ENV['HOMEDRIVE'], ENV['HOMEDIR'])
elsif ENV['HOMEDIR']
ENV['HOME'] = ENV['HOMEDIR']
elsif ENV['HOMEDRIVE']
ENV['HOME'] = ENV['HOMEDRIVE']
elsif ENV['USERPROFILE']
ENV['HOME'] = ENV['USERPROFILE']
else
puts "No suitable HOME environment found. This means that all of
HOME, HOMEDIR, HOMEDRIVE, and USERPROFILE are not set"
exit 1
end
end