[#11569] sprintf: Format specifier tokens aren't checked well enough — Florian Gross <florgro@...>

Hi,

12 messages 2007/07/01

[#11611] Import gem to Ruby 1.9 — SASADA Koichi <ko1@...>

Hi,

130 messages 2007/07/08
[#11625] Re: Import gem to Ruby 1.9 — Eric Hodel <drbrain@...7.net> 2007/07/09

On Jul 8, 2007, at 00:49, SASADA Koichi wrote:

[#11727] Re: Import gem to Ruby 1.9 — "NAKAMURA, Hiroshi" <nakahiro@...> 2007/07/17

-----BEGIN PGP SIGNED MESSAGE-----

[#11738] Re: Import gem to Ruby 1.9 — Eric Hodel <drbrain@...7.net> 2007/07/17

On Jul 17, 2007, at 01:26, NAKAMURA, Hiroshi wrote:

[#11752] Re: Import gem to Ruby 1.9 — "NAKAMURA, Hiroshi" <nakahiro@...> 2007/07/18

-----BEGIN PGP SIGNED MESSAGE-----

[#11794] Re: Import gem to Ruby 1.9 — "NAKAMURA, Hiroshi" <nakahiro@...> 2007/07/24

-----BEGIN PGP SIGNED MESSAGE-----

[#11820] Re: Import gem to Ruby 1.9 — "NAKAMURA, Hiroshi" <nakahiro@...> 2007/07/26

-----BEGIN PGP SIGNED MESSAGE-----

[#12323] Re: Import gem to Ruby 1.9 — "NAKAMURA, Hiroshi" <nakahiro@...> 2007/10/01

-----BEGIN PGP SIGNED MESSAGE-----

[#12330] Re: Import gem to Ruby 1.9 — Eric Hodel <drbrain@...7.net> 2007/10/01

On Sep 30, 2007, at 22:56 , NAKAMURA, Hiroshi wrote:

[#12637] Re: Import gem to Ruby 1.9 — Eric Hodel <drbrain@...7.net> 2007/10/13

On Oct 1, 2007, at 09:57 , Eric Hodel wrote:

[#12642] Re: Import gem to Ruby 1.9 — Yukihiro Matsumoto <matz@...> 2007/10/13

Hi,

[#12643] Re: Import gem to Ruby 1.9 — "NAKAMURA, Hiroshi" <nakahiro@...> 2007/10/13

-----BEGIN PGP SIGNED MESSAGE-----

[#12645] Re: Import gem to Ruby 1.9 — Eric Hodel <drbrain@...7.net> 2007/10/13

On Oct 13, 2007, at 02:00 , NAKAMURA, Hiroshi wrote:

[#12652] Re: Import gem to Ruby 1.9 — "NAKAMURA, Hiroshi" <nakahiro@...> 2007/10/13

-----BEGIN PGP SIGNED MESSAGE-----

[#12656] Re: Import gem to Ruby 1.9 — Eric Hodel <drbrain@...7.net> 2007/10/13

On Oct 13, 2007, at 08:00 , NAKAMURA, Hiroshi wrote:

[#12691] Re: Import gem to Ruby 1.9 — "NAKAMURA, Hiroshi" <nakahiro@...> 2007/10/15

-----BEGIN PGP SIGNED MESSAGE-----

[#12712] Re: Import gem to Ruby 1.9 — Eric Hodel <drbrain@...7.net> 2007/10/16

On Oct 15, 2007, at 07:14 , NAKAMURA, Hiroshi wrote:

[#12717] Re: Import gem to Ruby 1.9 — "Leonard Chin" <l.g.chin@...> 2007/10/17

On 10/17/07, Eric Hodel <drbrain@segment7.net> wrote:

[#12729] Re: Import gem to Ruby 1.9 — Charles Oliver Nutter <charles.nutter@...> 2007/10/17

Leonard Chin wrote:

[#12766] Re: Import gem to Ruby 1.9 — Tanaka Akira <akr@...> 2007/10/19

In article <4710890A.3020009@sarion.co.jp>,

[#12768] Re: Import gem to Ruby 1.9 — "NAKAMURA, Hiroshi" <nakahiro@...> 2007/10/19

-----BEGIN PGP SIGNED MESSAGE-----

[#12771] Re: Import gem to Ruby 1.9 — Tanaka Akira <akr@...> 2007/10/19

In article <4718708D.3050001@sarion.co.jp>,

[#12792] Re: Import gem to Ruby 1.9 — "NAKAMURA, Hiroshi" <nakahiro@...> 2007/10/20

-----BEGIN PGP SIGNED MESSAGE-----

[#12798] Re: Import gem to Ruby 1.9 — Tanaka Akira <akr@...> 2007/10/21

In article <471A1720.4080606@sarion.co.jp>,

[#12827] Re: Import gem to Ruby 1.9 — "NAKAMURA, Hiroshi" <nakahiro@...> 2007/10/22

-----BEGIN PGP SIGNED MESSAGE-----

[#12852] Re: Import gem to Ruby 1.9 — Tanaka Akira <akr@...> 2007/10/23

In article <471CAFE0.2070104@sarion.co.jp>,

[#12853] Re: Import gem to Ruby 1.9 — "NAKAMURA, Hiroshi" <nakahiro@...> 2007/10/23

-----BEGIN PGP SIGNED MESSAGE-----

[#12854] Re: Import gem to Ruby 1.9 — Tanaka Akira <akr@...> 2007/10/23

In article <471D4D1F.5050006@sarion.co.jp>,

[#12857] Re: Import gem to Ruby 1.9 — "NAKAMURA, Hiroshi" <nakahiro@...> 2007/10/23

-----BEGIN PGP SIGNED MESSAGE-----

[#12896] Re: Import gem to Ruby 1.9 — Tanaka Akira <akr@...> 2007/10/24

In article <471D5665.5040209@sarion.co.jp>,

[#12914] Re: Import gem to Ruby 1.9 — "NAKAMURA, Hiroshi" <nakahiro@...> 2007/10/25

-----BEGIN PGP SIGNED MESSAGE-----

[#11642] Re: Proposal: runtime-modifying Kernel methods should be keywords — "Marcel Molina Jr." <marcel@...>

On Fri, Jul 13, 2007 at 03:02:06PM +0900, Charles Oliver Nutter wrote:

21 messages 2007/07/13
[#11671] Re: Proposal: runtime-modifying Kernel methods should be keywords — Ryan Davis <ryand-ruby@...> 2007/07/13

[#11645] Re: Proposal: runtime-modifying Kernel methods should be keywords — Charles Oliver Nutter <charles.nutter@...>

Charles Oliver Nutter wrote:

20 messages 2007/07/13
[#11646] Re: Proposal: runtime-modifying Kernel methods should be keywords — Yukihiro Matsumoto <matz@...> 2007/07/13

Hi,

[#11647] Re: Proposal: runtime-modifying Kernel methods should be keywords — Charles Oliver Nutter <charles.nutter@...> 2007/07/13

Yukihiro Matsumoto wrote:

[#11650] Re: Proposal: runtime-modifying Kernel methods should be keywords — Nobuyoshi Nakada <nobu@...> 2007/07/13

Hi,

[#11756] threads and heavy io on osx and linux — "ara.t.howard" <Ara.T.Howard@...>

15 messages 2007/07/18

[#11795] What libraries to be unbundled? — "NAKAMURA, Hiroshi" <nakahiro@...>

-----BEGIN PGP SIGNED MESSAGE-----

27 messages 2007/07/24
[#11797] Re: What libraries to be unbundled? — David Flanagan <david@...> 2007/07/24

I don't think that json should be unbundled. It is the interchange

Re: Import gem to Ruby 1.9

From: Eric Hodel <drbrain@...7.net>
Date: 2007-07-25 06:12:17 UTC
List: ruby-core #11810
On Jul 24, 2007, at 19:53, NAKAMURA, Hiroshi wrote:

> This mail is for the topic '4. What $LOAD_PATH order should be?'
>
> Eric Hodel wrote:
> >>   4-2. after requiring rubygems?
> >>     [-I, ENV_RUBYLIB, SITELIBDIR, RUBYLIBDIR, ., GEMs] or
> >>     [-I, ENV_RUBYLIB, SITELIBDIR, GEMs, RUBYLIBDIR, .] or
> >>     [-I, ENV_RUBYLIB, GEMs, SITELIBDIR, RUBYLIBDIR, .]
> >>
> >>    - the first one is the current RubyGems behavior and it  
> should not be
> >>      changed as far as RubyGems team do not change it.  the  
> behavior
> >>      must have been polished up in several years.
> >
> > Actually, the last one is current default:
> >
> >   [-I, ENV_RUBYLIB, GEMs, SITELIBDIR, RUBYLIBDIR, .]
> >
> > This works best for developers who want to work on multiple gems at
> > once, since they can use ruby -I to source the development version
> > instead of the gem version.
>
> I may misunderstand custom_require.rb.  I'm seeing custom_require.rb
> revision 1285.
>
>   # We replace Ruby's require with our own, which is capable of
>   # loading gems on demand.
>   #
>   # When you call <tt>require 'x'</tt>, this is what happens:
>   # * If the file can be loaded from the existing Ruby loadpath, it
>   #   is.
>   # * Otherwise, installed gems are searched for a file that matches.
>   #   If it's found in gem 'y', that gem is activated (added to the
>   #   loadpath).
>   #
>   # The normal <tt>require</tt> functionality of returning false if
>   # that file has already been loaded is preserved.

The work of adding the gem's require_paths to $LOAD_PATH happens in  
Gem::activate.

> Custom 'require' at first try to load the specified feature name from;
> [-I, ENV_RUBYLIB, SITELIBDIR, RUBYLIBDIR, .]
> When it raises LoadError then add GEMs at the top of $LOAD_PATH and  
> try
> to load the feature from;
> [GEMs, -I, ENV_RUBYLIB, SITELIBDIR, RUBYLIBDIR, .]

The behavior you describe is how 0.9.2 and previous worked.

> I concaticated 2 arys and called Array#uniq (I hope Array#uniq  
> keeps its
> order in the future, too).  Is this wrong?

I have experienced problems where gems were activated despite the  
files being present in the -I path.  This is a developer-only problem.

I believe my problems involved dependent gems.  When RubyGems  
activates a gem, it also activates all its dependencies.

With GEMs before -I, the gem version can get loaded instead of the -I  
version.

With GEMs after -I, the -I version will always be preferred.

I would need to experiment to reproduce the behavior I was seeing.

> And when we call 'gem "soap4r"' explicitly, the $LOAD_PATH is;
> [GEMs, -I, ENV_RUBYLIB, SITELIBDIR, RUBYLIBDIR, .]
> isn't it?

In 0.9.2, and earlier, this is correct.

Now RubyGems looks for SITELIBDIR and inserts the gem's require_paths  
before it:

   $LOAD_PATH.insert($LOAD_PATH.index(sitelibdir, *require_paths))

See line 270-277 of lib/rubygems.rb.  (Hrm, line 268 may be wrong.)

> I should have wrongly summarized the problem.  Can you sort out a
> problem about $LOAD_PATH?
>
> >>    - maybe I (NaHi) is the only person who have a very hard time  
> with
> >>      this behavior in soap4r-ML.  it's because soap4r is the  
> only lib
> >>      which is gem-ed and located in RUBYLIBDIR.  that's exactly  
> why I
> >>      run this thread.
> >
> > If soap4r were unbundled, would this matter anymore?  (I forgot the
> > details of the problems of soap4r in RUBYLIBDIR and soap4r gem.)
>
> No, it won't be the matter anymore.  So the followings are just an
> explanation what was happened.
>
> Say an user gets ruby/1.8.6 (based on soap4r-1.5.5).  Then installs
> soap4r-1.5.6 from tarball later (files are copied to site_lib dir).
>  Finally moves to RubyGems and installs soap4r-1.5.7 as a gem.
>
> soap4r-1.5.5 has a feature 'soap/a'.
> soap4r-1.5.6 adds new feature 'soap/b'.
> soap4r-1.5.7 adds another new feature 'soap/c'.
>
> soap/c depends on soap/b.  soap/b depends on soap/a.
> soap/a and soap/b are updated in each new version.
>
>   /usr/lib/ruby/1.8/soap/a                            # soap4r-1.5.5
>   /usr/lib/ruby/1.8/site_ruby/soap/a                  # soap4r-1.5.6
>   /usr/lib/ruby/1.8/site_ruby/soap/b                  # soap4r-1.5.6
>   /usr/lib/ruby/gems/1.8/gems/soap4r-1.5.7/lib/soap/a # soap4r-1.5.7
>   /usr/lib/ruby/gems/1.8/gems/soap4r-1.5.7/lib/soap/b # soap4r-1.5.7
>   /usr/lib/ruby/gems/1.8/gems/soap4r-1.5.7/lib/soap/c # soap4r-1.5.7
>
> Imagine what is loaded when the user runs 'require "soap/c"'.
>  Thankfully there's an easy answer how to avoid this; to load the
> consistent feature versions, add 'gem "soap4r"' somewhere in a  
> program.

On require 'soap/c' you should get 1.5.7 features.

On require 'soap/b' then 'soap/c', problems may result without 'gem  
"soap4r"' first.

>  Once an user found this answer, it gets easier to track down a loader
> problem in soap4r-ml.  The rest I want to know is where 'gem "soap4r"'
> should be added in RoR environment... (I've not yet been a RoR user.)

config/environment.rb is the correct place in RoR.

--
Poor workers blame their tools. Good workers build better tools. The
best workers get their tools to do the work for them. -- Syndicate Wars



In This Thread