[#2529] concerns about Proc,lambda,block — "David A. Black" <dblack@...>
Hi --
>>>>> "D" == David A Black <dblack@wobblini.net> writes:
Hi --
Hi,
On Tue, 2 Mar 2004 08:44:25 +0900, Yukihiro Matsumoto wrote:
Hi,
On Wednesday, 3 March 2004 at 8:00:09 +0900, Yukihiro Matsumoto wrote:
Hi,
Hi,
On Wed, Mar 03, 2004 at 07:51:10AM +0900, Yukihiro Matsumoto wrote:
Hi,
On Thu, 4 Mar 2004, Yukihiro Matsumoto wrote:
Hi,
[#2575] Comment football being played... with lib/test/unit.rb — Nathaniel Talbott <nathaniel@...>
[Resent because I accidentally signed it the first time]
[#2577] problem with Net::HTTP in 1.8.1 — Ian Macdonald <ian@...>
Hello,
Hi,
[#2582] One more proc question — Dave Thomas <dave@...>
Sorry about this... :)
Hi,
On Friday, 5 March 2004 at 12:52:15 +0900, Yukihiro Matsumoto wrote:
Hi,
[#2588] Duck typing chapter — Dave Thomas <dave@...>
I've posted a rough first pass at a chapter about duck typing (and
[#2606] Thought about class definitions — Dave Thomas <dave@...>
If we allowed
[#2628] YAML complaint while generating RDoc — Dave Thomas <dave@...>
With the latest CVS, I get
[#2640] patch to tempfile.rb to handle ENAMETOOLONG — Joel VanderWerf <vjoel@...>
[#2644] RDoc proporsal — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
Hi, rubyists.
[#2646] Problems rdoc'ing cvs... — Hugh Sasse Staff Elec Eng <hgs@...>
I have just done
On Friday, March 12, 2004, 4:15:42 AM, Dave wrote:
On Fri, 12 Mar 2004, Dave Thomas wrote:
[#2661] Pathological slowdown in 1.8 — Ryan Davis <ryand@...>
Hi all,
[#2697] lib/ruby/1.9/yaml.rb:193: [BUG] Segmentation fault — Mauricio Fern疣dez <batsman.geo@...>
Mauricio Fern疣dez wrote:
On Sun, Mar 28, 2004 at 09:42:42AM +0900, why the lucky stiff wrote:
[#2703] Proposed patch to add SSL support to net/pop.rb — Daniel Hobe <daniel@...>
This patch adds support to Net::POP for doing POP over SSL. Modeled on how
This is v2 of the patch. Cleaned up a bit and added some more docs.
v3 of the patch:
Hi,
I agree that there are a lot of arguments to #start, but I think it is the
On Tue, 30 Mar 2004 16:24:17 +0900, Daniel Hobe wrote:
On Wed, 31 Mar 2004 13:27:31 +0900, Daniel Hobe wrote:
On Tue, Mar 30, 2004 at 04:05:06PM +0900, Minero Aoki wrote:
[#2709] typos in lib/singleton.rb — Ian Macdonald <ian@...>
Hello,
[#2713] more spelling and grammar fixes — Ian Macdonald <ian@...>
Hello,
> Hello,
Hi,
Re: patch to tempfile.rb to handle ENAMETOOLONG
Yukihiro Matsumoto wrote:
> Hi,
>
> In message "patch to tempfile.rb to handle ENAMETOOLONG"
> on 04/03/11, Joel VanderWerf <vjoel@PATH.Berkeley.EDU> writes:
>
> |Can anyone think of a better way to handle ENAMETOOLONG on systems that
> |have limited filename lengths?
> |
> |On QNX, filenames are limited to 48 bytes.
>
> Handling ENAMETOOLONG sounds nice, but is it OK to chop off path name,
> or should we just raise exception?
Is the name of a tempfile significant, as long as it is unique? It looks
like tempfile.rb makes an effort (10 tries) to find a unique name. Each
try, it increments a counter at the end of the name:
tmpname = sprintf('%s/%s%d.%d', tmpdir, basename, $$, n)
lock = tmpname + '.lock'
n += 1
The basename seems like the least important part of tmpname, which I why
I chose to chop that part. But OTOH silently changing the user's input
is not very nice. Also, I don't like the idea of chopping one char and
retrying, until the string is short enough.
Actually, all I care about is that irb works. So maybe irb should catch
the ENAMETOOLONG exception and retry with a different filename. The
problem remains: how to shorten the filename?
In irb, the exception happens in locale.rb:
def real_load(path, priv)
tmp_base = path.tr("./:", "___")
lc_file = Tempfile.new(tmp_base)
So you can see how the name can be very long. (Is such a long name
really necessary?) What about this:
def real_load(path, priv)
tmp_base = path.tr("./:", "___")
begin
lc_file = Tempfile.new(tmp_base)
rescue Errno::ENAMETOOLONG
tmp_base = File.basename(path).tr("./:", "___")
retry
end
The retry should work, since File.basename(path) is known to be a legal
filename.
The disadvantage here is that the problem is fixed only in irb, and not
in Tempfile itself. However, all other uses of Tempfile in the standard
library use short literal filenames.
The second approach seems to make sense. What do you think?