[#43077] problems committing — Aaron Patterson <tenderlove@...>
It seems like the disk might be full on the svn server:
5 messages
2012/03/05
[#43090] "\\".gsub("\\", "\\\\") == "\\" ?!!! — Rodrigo Rosenfeld Rosas <rr.rosas@...>
Please, help me understand what is happening here.
6 messages
2012/03/06
[#43094] Re: "\\".gsub("\\", "\\\\") == "\\" ?!!!
— Xavier Noria <fxn@...>
2012/03/06
A literal passed as second argument to gsub goes over two
[#43120] [ruby-trunk - Bug #6124][Open] What is the purpose of "fake" gems in Ruby — Vit Ondruch <v.ondruch@...>
27 messages
2012/03/07
[#43142] Questions about thread performance (with benchmark included) — Rodrigo Rosenfeld Rosas <rr.rosas@...>
A while ago I've written an article entitled "How Nokogiri and JRuby
10 messages
2012/03/08
[#43785] Re: Questions about thread performance (with benchmark included)
— Tomoyuki Chikanaga <nagachika00@...>
2012/03/28
Hello, Rodrigo.
[#43797] Re: Questions about thread performance (with benchmark included)
— Rodrigo Rosenfeld Rosas <rr.rosas@...>
2012/03/28
Em 27-03-2012 23:22, Tomoyuki Chikanaga escreveu:
[#44213] Re: Questions about thread performance (with benchmark included)
— SASADA Koichi <ko1@...>
2012/04/09
Hi,
[#44214] Re: Questions about thread performance (with benchmark included)
— Urabe Shyouhei <shyouhei@...>
2012/04/09
#### MRI threads myths and facts #####
[#44220] Re: Questions about thread performance (with benchmark included)
— Rodrigo Rosenfeld Rosas <rr.rosas@...>
2012/04/09
Hi Urabe, thank you for your input, but I think you have
[#43245] [ruby-trunk - Bug #6131][Open] Ctrl-C handler do not work from exec process (Windows) — Luis Lavena <luislavena@...>
10 messages
2012/03/12
[#43279] [ruby-trunk - Bug #6148][Open] ruby_1_9_3 revision conflict — Jon Forums <redmine@...>
4 messages
2012/03/14
[#43313] [ruby-trunk - Feature #6150][Open] add Enumerable#grep_v — Suraj Kurapati <sunaku@...>
17 messages
2012/03/15
[#43325] [ruby-trunk - Bug #6154][Open] Eliminate extending WaitReadable/Writable at runtime — Charles Nutter <headius@...>
25 messages
2012/03/16
[#43326] [ruby-trunk - Bug #6154] Eliminate extending WaitReadable/Writable at runtime
— Charles Nutter <headius@...>
2012/03/16
[#43369] Re: [ruby-trunk - Bug #6154][Open] Eliminate extending WaitReadable/Writable at runtime
— Tanaka Akira <akr@...>
2012/03/17
2012/3/16 Charles Nutter <headius@headius.com>:
[#43334] [ruby-trunk - Bug #6155][Open] Enumerable::Lazy#flat_map raises an exception when an element does not respond to #each — Dan Kubb <dan.kubb@...>
9 messages
2012/03/16
[#43345] [ruby-trunk - Bug #6159][Open] Enumerable::Lazy#inspect — Benoit Daloze <redmine@...>
10 messages
2012/03/16
[#43497] [ruby-trunk - Bug #6179][Open] File::pos broken in Windows 1.9.3p125 — "jmthomas (Jason Thomas)" <jmthomas@...>
24 messages
2012/03/20
[#43502] [ruby-trunk - Feature #6180][Open] to_b for converting objects to a boolean value — "AaronLasseigne (Aaron Lasseigne)" <aaron.lasseigne@...>
17 messages
2012/03/20
[#43529] [ruby-trunk - Bug #6183][Open] Enumerator::Lazy performance issue — "gregolsen (Innokenty Mikhailov)" <anotheroneman@...>
36 messages
2012/03/21
[#43814] [ruby-trunk - Feature #6219][Open] Return value of Hash#store — "MartinBosslet (Martin Bosslet)" <Martin.Bosslet@...>
20 messages
2012/03/28
[#43904] [ruby-trunk - Feature #6225][Open] Hash#+ — "trans (Thomas Sawyer)" <transfire@...>
36 messages
2012/03/29
[#43909] [ruby-trunk - Feature #6225][Assigned] Hash#+
— "mame (Yusuke Endoh)" <mame@...>
2012/03/29
[#43923] [ruby-trunk - Feature #6225] Hash#+
— "shyouhei (Shyouhei Urabe)" <shyouhei@...>
2012/03/30
[#43951] [ruby-trunk - Bug #6228][Open] [mingw] Errno::EBADF in ruby/test_io.rb on ruby_1_9_3 — "jonforums (Jon Forums)" <redmine@...>
28 messages
2012/03/30
[#43996] [ruby-trunk - Bug #6236][Open] WEBrick::HTTPServer swallows Exception — "regularfry (Alex Young)" <alex@...>
13 messages
2012/03/31
[#44015] [Ruby 1.8 - Bug #6239][Open] super Does Not Pass Modified Rest Args When Originally Empty — "mudge (Paul Mucur)" <mudge@...>
6 messages
2012/03/31
[ruby-core:43477] Re: [ruby-trunk - Feature #4523] Kernel#require to return the path of the loaded file
From:
Alex Young <alex@...>
Date:
2012-03-19 17:16:11 UTC
List:
ruby-core #43477
On 19/03/12 11:58, Luis Lavena wrote:
> On Mon, Mar 19, 2012 at 8:06 AM, Alex Young<alex@blackkettle.org> wrote:
>> On 18/03/12 10:22, nobu wrote:
>>>
>>>
>>> Issue #4523 has been updated by nobu.
>>>
>>>
>>> I don't think it's useful if it may return false.
>>
>>
>> On the contrary - if it returns false, you know the set of loaded files
>> hasn't changed. You (should) know that no new ruby has been parsed.
>>
>
> What if your require triggers more requires inside? The usefulness of
> you collecting the response of one require doesn't mean you have all
> the files that were loaded.
This is the sort of thing I have in mind:
module CollectingRequire
def require( *args )
filename = super(*args)
__log( filename )
filename
end
def __log(filename)
(@__loaded ||= []) << filename
end
def all_loaded
@__loaded
end
end
extend( CollectingRequire )
require 'highline'
all_loaded
# => [all the files]
That's the sort of arrangement I'd need; I'm sure there are uses which
don't involve monkeypatching.
I could do just as well with a post-require hook of some sort, but
that's way more intrusive. If that's what's needed, though, I'm happy
to take a look at an implementation.
>>
>>> What's the use case?
>>> I agree that the way to know the loaded path would be useful sometimes,
>>> but this doesn't seem nice.
>>
>>
>> The specific thing I was trying to do was gather all the required files into
>> a SQLite database. Then a later process with an overridden `require` can
>> load *precisely* the same file content from that database, without
>> ambiguity.
>>
>
> Are you trying to build a list of all the files that were require'd ?
>
> If so, why not use $LOADED_FEATURES with at_exit?
Because when I opened this feature request a year ago $LOADED_FEATURES
didn't seem to include full paths, so I didn't want to rely on it.
> $LOADED_FEATURES include full paths
Does it? Is that now part of the spec? Neither rubinius nor jruby seem
to make that guarantee, nor is it true for 1.8.7. And if it is...
$ irb
1.9.3p125 :001 > $LOADED_FEATURES.first
=> "enumerator.so"
Is that a bug?
> so you can use that combined with $LOAD_PATH to determine the require itself.
I can, and do, already do something like this. The point is that by
adding this information to the API, I don't have to - I get a known-good
value directly from where it's generated, rather than recreating it (and
possibly screwing it up). I'm sure I'm not the only one who'd find this
handy.
If anyone can spot how this proposal can *possibly* be harmful, I'm all
ears. As far as I can see it's an unintrusive, useful improvement.
--
Alex