ruby-core@ruby-lang.org archive (unofficial mirror)
 help / color / mirror / Atom feed
* [ruby-core:49463] [ruby-trunk - Feature #7375][Open] embedding libyaml in psych for Ruby 2.0
@ 2012-11-16 23:42 tenderlovemaking (Aaron Patterson)
  2012-11-17  2:06 ` [ruby-core:49475] [ruby-trunk - Feature #7375][Assigned] " mame (Yusuke Endoh)
                   ` (8 more replies)
  0 siblings, 9 replies; 21+ messages in thread
From: tenderlovemaking (Aaron Patterson) @ 2012-11-16 23:42 UTC (permalink / raw
  To: ruby-core


Issue #7375 has been reported by tenderlovemaking (Aaron Patterson).

----------------------------------------
Feature #7375: embedding libyaml in psych for Ruby 2.0
https://bugs.ruby-lang.org/issues/7375

Author: tenderlovemaking (Aaron Patterson)
Status: Open
Priority: Normal
Assignee: 
Category: 
Target version: 


People have a hard time using psych (and thus rubygems) because it depends on libyaml. We can ease upgrades by embedding libyaml in order to eliminate the library dependency.

libyaml is MIT license, so it shouldn't impact Ruby's license.

Matz, may I embed libyaml for preview2?


-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [ruby-core:49475] [ruby-trunk - Feature #7375][Assigned] embedding libyaml in psych for Ruby 2.0
  2012-11-16 23:42 [ruby-core:49463] [ruby-trunk - Feature #7375][Open] embedding libyaml in psych for Ruby 2.0 tenderlovemaking (Aaron Patterson)
@ 2012-11-17  2:06 ` mame (Yusuke Endoh)
  2012-11-17  2:09 ` [ruby-core:49476] Re: [ruby-trunk - Feature #7375][Open] " Yusuke Endoh
                   ` (7 subsequent siblings)
  8 siblings, 0 replies; 21+ messages in thread
From: mame (Yusuke Endoh) @ 2012-11-17  2:06 UTC (permalink / raw
  To: ruby-core


Issue #7375 has been updated by mame (Yusuke Endoh).

Status changed from Open to Assigned
Assignee set to matz (Yukihiro Matsumoto)
Target version set to 2.0.0


----------------------------------------
Feature #7375: embedding libyaml in psych for Ruby 2.0
https://bugs.ruby-lang.org/issues/7375#change-33006

Author: tenderlovemaking (Aaron Patterson)
Status: Assigned
Priority: Normal
Assignee: matz (Yukihiro Matsumoto)
Category: 
Target version: 2.0.0


People have a hard time using psych (and thus rubygems) because it depends on libyaml. We can ease upgrades by embedding libyaml in order to eliminate the library dependency.

libyaml is MIT license, so it shouldn't impact Ruby's license.

Matz, may I embed libyaml for preview2?


-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [ruby-core:49476] Re: [ruby-trunk - Feature #7375][Open] embedding libyaml in psych for Ruby 2.0
  2012-11-16 23:42 [ruby-core:49463] [ruby-trunk - Feature #7375][Open] embedding libyaml in psych for Ruby 2.0 tenderlovemaking (Aaron Patterson)
  2012-11-17  2:06 ` [ruby-core:49475] [ruby-trunk - Feature #7375][Assigned] " mame (Yusuke Endoh)
@ 2012-11-17  2:09 ` Yusuke Endoh
  2012-11-17 18:05 ` [ruby-core:49494] [ruby-trunk - Feature #7375] " vo.x (Vit Ondruch)
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 21+ messages in thread
From: Yusuke Endoh @ 2012-11-17  2:09 UTC (permalink / raw
  To: ruby-core; +Cc: Yukihiro Matsumoto

Looks good.  Matz, could you accept this?

まつもとさん、2.0.0 は libyaml が事実上必須なので (ないと rubygems が動かない) 、
ビルドが面倒という FAQ が出そうです。
aaron に相談したところ、libyaml のソースコードをまるごと psych にバンドルする
パッチを作ってくれました。

libyaml は MIT ライセンスなのでライセンス上の問題はないと思います。
承認して頂けますか?

-- 
Yusuke Endoh <mame@tsg.ne.jp>


2012/11/17 tenderlovemaking (Aaron Patterson) <aaron@tenderlovemaking.com>:
>
> Issue #7375 has been reported by tenderlovemaking (Aaron Patterson).
>
> ----------------------------------------
> Feature #7375: embedding libyaml in psych for Ruby 2.0
> https://bugs.ruby-lang.org/issues/7375
>
> Author: tenderlovemaking (Aaron Patterson)
> Status: Open
> Priority: Normal
> Assignee:
> Category:
> Target version:
>
>
> People have a hard time using psych (and thus rubygems) because it depends on libyaml. We can ease upgrades by embedding libyaml in order to eliminate the library dependency.
>
> libyaml is MIT license, so it shouldn't impact Ruby's license.
>
> Matz, may I embed libyaml for preview2?
>
>
> --
> http://bugs.ruby-lang.org/
>



-- 
Yusuke Endoh <mame@tsg.ne.jp>

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [ruby-core:49494] [ruby-trunk - Feature #7375] embedding libyaml in psych for Ruby 2.0
  2012-11-16 23:42 [ruby-core:49463] [ruby-trunk - Feature #7375][Open] embedding libyaml in psych for Ruby 2.0 tenderlovemaking (Aaron Patterson)
  2012-11-17  2:06 ` [ruby-core:49475] [ruby-trunk - Feature #7375][Assigned] " mame (Yusuke Endoh)
  2012-11-17  2:09 ` [ruby-core:49476] Re: [ruby-trunk - Feature #7375][Open] " Yusuke Endoh
@ 2012-11-17 18:05 ` vo.x (Vit Ondruch)
  2012-11-17 20:19   ` [ruby-core:49497] " Aaron Patterson
  2012-11-17 18:23 ` [ruby-core:49496] " jeremyevans0 (Jeremy Evans)
                   ` (5 subsequent siblings)
  8 siblings, 1 reply; 21+ messages in thread
From: vo.x (Vit Ondruch) @ 2012-11-17 18:05 UTC (permalink / raw
  To: ruby-core


Issue #7375 has been updated by vo.x (Vit Ondruch).


I hope this proposal will be rejected. Here are some reasons:

https://fedoraproject.org/wiki/Packaging:No_Bundled_Libraries
http://wiki.gentoo.org/wiki/Why_not_bundle_dependencies

And here are policies regarding bundling for several Linux distributions. All of them forbids bundling

https://fedoraproject.org/wiki/Packaging:Guidelines#Bundling_of_multiple_projects
http://www.debian.org/doc/debian-policy/ch-source.html#s-embeddedfiles
http://en.opensuse.org/openSUSE:Packaging_guidelines#Bundling_of_multiple_projects
----------------------------------------
Feature #7375: embedding libyaml in psych for Ruby 2.0
https://bugs.ruby-lang.org/issues/7375#change-33027

Author: tenderlovemaking (Aaron Patterson)
Status: Assigned
Priority: Normal
Assignee: matz (Yukihiro Matsumoto)
Category: 
Target version: 2.0.0


People have a hard time using psych (and thus rubygems) because it depends on libyaml. We can ease upgrades by embedding libyaml in order to eliminate the library dependency.

libyaml is MIT license, so it shouldn't impact Ruby's license.

Matz, may I embed libyaml for preview2?


-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [ruby-core:49496] [ruby-trunk - Feature #7375] embedding libyaml in psych for Ruby 2.0
  2012-11-16 23:42 [ruby-core:49463] [ruby-trunk - Feature #7375][Open] embedding libyaml in psych for Ruby 2.0 tenderlovemaking (Aaron Patterson)
                   ` (2 preceding siblings ...)
  2012-11-17 18:05 ` [ruby-core:49494] [ruby-trunk - Feature #7375] " vo.x (Vit Ondruch)
@ 2012-11-17 18:23 ` jeremyevans0 (Jeremy Evans)
  2012-11-17 20:19   ` [ruby-core:49498] " Aaron Patterson
  2012-11-20  5:58 ` [ruby-core:49652] " matz (Yukihiro Matsumoto)
                   ` (4 subsequent siblings)
  8 siblings, 1 reply; 21+ messages in thread
From: jeremyevans0 (Jeremy Evans) @ 2012-11-17 18:23 UTC (permalink / raw
  To: ruby-core


Issue #7375 has been updated by jeremyevans0 (Jeremy Evans).


vo.x (Vit Ondruch) wrote:
> I hope this proposal will be rejected. Here are some reasons:
> 
> https://fedoraproject.org/wiki/Packaging:No_Bundled_Libraries
> http://wiki.gentoo.org/wiki/Why_not_bundle_dependencies
> 
> And here are policies regarding bundling for several Linux distributions. All of them forbids bundling
> 
> https://fedoraproject.org/wiki/Packaging:Guidelines#Bundling_of_multiple_projects
> http://www.debian.org/doc/debian-policy/ch-source.html#s-embeddedfiles
> http://en.opensuse.org/openSUSE:Packaging_guidelines#Bundling_of_multiple_projects

There are two fairly easy ways to fix that, hopefully Aaron will choose one of them:

1) Default to using the system implementation if present, using the embedded one only if no system implementation is found.
2) Default to using the embedded implementation, but have a separate configure flag for using the system implementation.

I'd prefer 1), since it doesn't change things for existing packagers, while making it easier on other people who build ruby from source.
----------------------------------------
Feature #7375: embedding libyaml in psych for Ruby 2.0
https://bugs.ruby-lang.org/issues/7375#change-33028

Author: tenderlovemaking (Aaron Patterson)
Status: Assigned
Priority: Normal
Assignee: matz (Yukihiro Matsumoto)
Category: 
Target version: 2.0.0


People have a hard time using psych (and thus rubygems) because it depends on libyaml. We can ease upgrades by embedding libyaml in order to eliminate the library dependency.

libyaml is MIT license, so it shouldn't impact Ruby's license.

Matz, may I embed libyaml for preview2?


-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [ruby-core:49497] Re: [ruby-trunk - Feature #7375] embedding libyaml in psych for Ruby 2.0
  2012-11-17 18:05 ` [ruby-core:49494] [ruby-trunk - Feature #7375] " vo.x (Vit Ondruch)
@ 2012-11-17 20:19   ` Aaron Patterson
  2012-11-17 20:34     ` [ruby-core:49499] " Vít Ondruch
  0 siblings, 1 reply; 21+ messages in thread
From: Aaron Patterson @ 2012-11-17 20:19 UTC (permalink / raw
  To: ruby-core

On Sun, Nov 18, 2012 at 03:05:50AM +0900, vo.x (Vit Ondruch) wrote:
> 
> Issue #7375 has been updated by vo.x (Vit Ondruch).
> 
> 
> I hope this proposal will be rejected. Here are some reasons:
> 
> https://fedoraproject.org/wiki/Packaging:No_Bundled_Libraries
> http://wiki.gentoo.org/wiki/Why_not_bundle_dependencies

Thanks for the links.  Unfortunately these lists of rules don't help
solve the problems I enumerated in the ticket.

> And here are policies regarding bundling for several Linux distributions. All of them forbids bundling
> 
> https://fedoraproject.org/wiki/Packaging:Guidelines#Bundling_of_multiple_projects
> http://www.debian.org/doc/debian-policy/ch-source.html#s-embeddedfiles
> http://en.opensuse.org/openSUSE:Packaging_guidelines#Bundling_of_multiple_projects

Again, doesn't help with the problems we're having.

-- 
Aaron Patterson
http://tenderlovemaking.com/

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [ruby-core:49498] Re: [ruby-trunk - Feature #7375] embedding libyaml in psych for Ruby 2.0
  2012-11-17 18:23 ` [ruby-core:49496] " jeremyevans0 (Jeremy Evans)
@ 2012-11-17 20:19   ` Aaron Patterson
  0 siblings, 0 replies; 21+ messages in thread
From: Aaron Patterson @ 2012-11-17 20:19 UTC (permalink / raw
  To: ruby-core

On Sun, Nov 18, 2012 at 03:23:49AM +0900, jeremyevans0 (Jeremy Evans) wrote:
> 
> Issue #7375 has been updated by jeremyevans0 (Jeremy Evans).
> vo.x (Vit Ondruch) wrote:
> > I hope this proposal will be rejected. Here are some reasons:
> > 
> > https://fedoraproject.org/wiki/Packaging:No_Bundled_Libraries
> > http://wiki.gentoo.org/wiki/Why_not_bundle_dependencies
> > 
> > And here are policies regarding bundling for several Linux distributions. All of them forbids bundling
> > 
> > https://fedoraproject.org/wiki/Packaging:Guidelines#Bundling_of_multiple_projects
> > http://www.debian.org/doc/debian-policy/ch-source.html#s-embeddedfiles
> > http://en.opensuse.org/openSUSE:Packaging_guidelines#Bundling_of_multiple_projects
> 
> There are two fairly easy ways to fix that, hopefully Aaron will choose one of them:
> 
> 1) Default to using the system implementation if present, using the embedded one only if no system implementation is found.
> 2) Default to using the embedded implementation, but have a separate configure flag for using the system implementation.
> 
> I'd prefer 1), since it doesn't change things for existing packagers, while making it easier on other people who build ruby from source.

#1 seems totally reasonable.  I could do that pretty easily. :-)

-- 
Aaron Patterson
http://tenderlovemaking.com/

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [ruby-core:49499] Re: [ruby-trunk - Feature #7375] embedding libyaml in psych for Ruby 2.0
  2012-11-17 20:19   ` [ruby-core:49497] " Aaron Patterson
@ 2012-11-17 20:34     ` Vít Ondruch
  2012-11-17 20:50       ` [ruby-core:49500] " Benoit Daloze
  0 siblings, 1 reply; 21+ messages in thread
From: Vít Ondruch @ 2012-11-17 20:34 UTC (permalink / raw
  To: ruby-core

Dne 17.11.2012 21:19, Aaron Patterson napsal(a):
> Again, doesn't help with the problems we're having. 

I don't understand what problems. Was this issue triggered by 
[ruby-core:49416]? May be there could be better error message then

/test_gem_command_manager.rb:
cannot load such file -- psych


Also the if the point

However, I'm able to build and install `ruby`
without `libyaml-dev`

made there is valid, how it comes that the build does not fail if the 
libyaml is not present on the system, while it seems to be hard 
dependency of some officially supported Ruby feature?

And what about educational factor? You bundle once and everybody will 
think it is good practice, while it is not. Nobody learns nothing :/


Vit

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [ruby-core:49500] Re: [ruby-trunk - Feature #7375] embedding libyaml in psych for Ruby 2.0
  2012-11-17 20:34     ` [ruby-core:49499] " Vít Ondruch
@ 2012-11-17 20:50       ` Benoit Daloze
  2012-11-18 14:41         ` [ruby-core:49524] " Yusuke Endoh
  0 siblings, 1 reply; 21+ messages in thread
From: Benoit Daloze @ 2012-11-17 20:50 UTC (permalink / raw
  To: ruby-core

On 17 November 2012 21:34, Vít Ondruch <v.ondruch@gmail.com> wrote:
> Dne 17.11.2012 21:19, Aaron Patterson napsal(a):
>
>> Again, doesn't help with the problems we're having.
>
>
> I don't understand what problems. Was this issue triggered by
> [ruby-core:49416]? May be there could be better error message then
>
> /test_gem_command_manager.rb:
> cannot load such file -- psych
>
>
> Also the if the point
>
> However, I'm able to build and install `ruby`
> without `libyaml-dev`
>
> made there is valid, how it comes that the build does not fail if the
> libyaml is not present on the system, while it seems to be hard dependency
> of some officially supported Ruby feature?
>
> Vit

Agreed, it does not make sense to me to bundle to avoid this problem.
They are already many other dependencies which are of course not bundled.
`rvm requirements` lists amongst others readline, iconv, zlib,
libyaml, libffi, openssl.
I would be for a failing build if libyaml is not present (except if
explicitly specified, like --disable-libyaml), or a very visible
warning at least, since it is a dependency of a standard library
always installed by default (rubygems).
I always thought missing extensions due to missing libraries were too
hard to notice in the build process, maybe a good summary of what was
built and what failed at the end would solve that?

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [ruby-core:49524] Re: [ruby-trunk - Feature #7375] embedding libyaml in psych for Ruby 2.0
  2012-11-17 20:50       ` [ruby-core:49500] " Benoit Daloze
@ 2012-11-18 14:41         ` Yusuke Endoh
  2012-11-18 15:48           ` [ruby-core:49527] " Vít Ondruch
  0 siblings, 1 reply; 21+ messages in thread
From: Yusuke Endoh @ 2012-11-18 14:41 UTC (permalink / raw
  To: ruby-core

Hello,

2012/11/18 Benoit Daloze <eregontp@gmail.com>:
> Agreed, it does not make sense to me to bundle to avoid this problem.
> They are already many other dependencies which are of course not bundled.
> `rvm requirements` lists amongst others readline, iconv, zlib,
> libyaml, libffi, openssl.

There are three practical reasons why libyaml should be bundled:

  - rubygems strongly depends on libyaml.
  - libyaml is not so popular. compared to readline, zlib, openssl, etc.
    I think there are many platforms that has no libyaml.
  - libyaml is actually so small.

I can understand the policy of the Linux distribution.  But, Ruby source
distribution is mainly used for those who intend to use Ruby with no
packaing system.

Note that there is a precident: nkf stdlib actually bundles the whole
source code of nkf project.


Vit, can you create a distro package of Ruby depending on libyaml package,
rathar than bundling it, even if Ruby source distribution bundles libyaml?
I'm sorry to trouble you, but I would greatly appreciate your cooperation.


> On 17 November 2012 21:34, Vít Ondruch <v.ondruch@gmail.com> wrote:
>> I don't understand what problems. Was this issue triggered by
>> [ruby-core:49416]? May be there could be better error message then

BTW: The trigger is a draft of 2.0.0 upgrade notes that I'm writing:

http://bugs.ruby-lang.org/projects/ruby/wiki/200UpgradeNotesDraft

It shows a cumbersome process to install libyaml to use rubygems.
I asked Aaron to check the process, and he counter-proposed bundling
libyaml.

-- 
Yusuke Endoh <mame@tsg.ne.jp>

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [ruby-core:49527] Re: [ruby-trunk - Feature #7375] embedding libyaml in psych for Ruby 2.0
  2012-11-18 14:41         ` [ruby-core:49524] " Yusuke Endoh
@ 2012-11-18 15:48           ` Vít Ondruch
  2012-11-18 17:37             ` [ruby-core:49530] " Yusuke Endoh
  2012-11-18 23:07             ` [ruby-core:49538] " Aaron Patterson
  0 siblings, 2 replies; 21+ messages in thread
From: Vít Ondruch @ 2012-11-18 15:48 UTC (permalink / raw
  To: ruby-core

Dne 18.11.2012 15:41, Yusuke Endoh napsal(a):
> Hello,
>
> 2012/11/18 Benoit Daloze <eregontp@gmail.com>:
>> Agreed, it does not make sense to me to bundle to avoid this problem.
>> They are already many other dependencies which are of course not bundled.
>> `rvm requirements` lists amongst others readline, iconv, zlib,
>> libyaml, libffi, openssl.
> There are three practical reasons why libyaml should be bundled:
>
>    - rubygems strongly depends on libyaml.

No doubt about it.

>    - libyaml is not so popular. compared to readline, zlib, openssl, etc.
>      I think there are many platforms that has no libyaml.

How that come that somebody could not have libyaml on some platform but 
would be able to compile libyaml bundled with psych? This argument seems 
moot. Or are you going to fork libyaml because of that?

>    - libyaml is actually so small.

It is even smaller if you don't bundle it and use the system one :)

>
> I can understand the policy of the Linux distribution.  But, Ruby source
> distribution is mainly used for those who intend to use Ruby with no
> packaing system.

Who are you referring to? If there is somebody like that, he/she should 
have probably some level of understanding, because it will be needed 
sooner or later.

>
> Note that there is a precident: nkf stdlib actually bundles the whole
> source code of nkf project.

I'll definitely look at nkf. Thanks for the tip. Also note that there 
are other bundled code, such as rubygems, rake, rdoc, oniguruma, 
minitest. But I am not sure why Ruby should use bad examples as a 
justification for bundling.

>
>
> Vit, can you create a distro package of Ruby depending on libyaml package,
> rathar than bundling it, even if Ruby source distribution bundles libyaml?
> I'm sorry to trouble you, but I would greatly appreciate your cooperation.

If the implementation will follow proposal 1) from Jeremy, then probably 
quite easily. But this is not technical question, if I can or cannot.

>
>
>> On 17 November 2012 21:34, Vít Ondruch <v.ondruch@gmail.com> wrote:
>>> I don't understand what problems. Was this issue triggered by
>>> [ruby-core:49416]? May be there could be better error message then
> BTW: The trigger is a draft of 2.0.0 upgrade notes that I'm writing:

Thank you for explanation :)

>
> http://bugs.ruby-lang.org/projects/ruby/wiki/200UpgradeNotesDraft

I like this guide

>
> It shows a cumbersome process to install libyaml to use rubygems.

It is as cumbersome as compile Ruby from sources. If you don't like 
cumbersome processes, then there are packaging systems, rubyinstaller, 
RVM ...

> I asked Aaron to check the process, and he counter-proposed bundling
> libyaml.
>

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [ruby-core:49530] Re: [ruby-trunk - Feature #7375] embedding libyaml in psych for Ruby 2.0
  2012-11-18 15:48           ` [ruby-core:49527] " Vít Ondruch
@ 2012-11-18 17:37             ` Yusuke Endoh
  2012-11-18 21:20               ` [ruby-core:49531] " Vít Ondruch
  2012-11-18 23:07             ` [ruby-core:49538] " Aaron Patterson
  1 sibling, 1 reply; 21+ messages in thread
From: Yusuke Endoh @ 2012-11-18 17:37 UTC (permalink / raw
  To: ruby-core

Hello Vit,

2012/11/19 Vít Ondruch <v.ondruch@gmail.com>:
>> I can understand the policy of the Linux distribution.  But, Ruby source
>> distribution is mainly used for those who intend to use Ruby with no
>> packaing system.
>
>
> Who are you referring to? If there is somebody like that, he/she should have
> probably some level of understanding, because it will be needed sooner or
> later.


As you might guess, I'm concerned about those who build Ruby source
tarball themselves.
Probably, they are not a majority.  But we hold them in high regard.
They are the first users for us.

Of course, many of them will address the dependency lack.
But we can easily fix the lack ourselves.  I don't like to waste
their time to perform the following useless process:

  - build and install Ruby tarball,
  - (after a bit) notice that gem does not work,
  - find the cause and workaround with impatience,
  - find, download, build and install libyaml, and
  - rebuild and reinstall Ruby tarball again!

-- 
Yusuke Endoh <mame@tsg.ne.jp>

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [ruby-core:49531] Re: [ruby-trunk - Feature #7375] embedding libyaml in psych for Ruby 2.0
  2012-11-18 17:37             ` [ruby-core:49530] " Yusuke Endoh
@ 2012-11-18 21:20               ` Vít Ondruch
  2012-11-19  3:40                 ` [ruby-core:49559] " Yusuke Endoh
  0 siblings, 1 reply; 21+ messages in thread
From: Vít Ondruch @ 2012-11-18 21:20 UTC (permalink / raw
  To: ruby-core

Dne 18.11.2012 18:37, Yusuke Endoh napsal(a):
> Hello Vit,
>
> 2012/11/19 Vít Ondruch <v.ondruch@gmail.com>:
>>> I can understand the policy of the Linux distribution.  But, Ruby source
>>> distribution is mainly used for those who intend to use Ruby with no
>>> packaing system.
>>
>> Who are you referring to? If there is somebody like that, he/she should have
>> probably some level of understanding, because it will be needed sooner or
>> later.
>
> As you might guess, I'm concerned about those who build Ruby source
> tarball themselves.

I appreciate that, thank you. I build Ruby from sources as well. Since I 
am preparing packages for Fedora and Red Hat Enterprise Linux, I don't 
have other option ;)

> Probably, they are not a majority.  But we hold them in high regard.
> They are the first users for us.

I build the trunk quite often to keep up with development and to try to 
prevent changes like this.

>
> Of course, many of them will address the dependency lack.
> But we can easily fix the lack ourselves.  I don't like to waste
> their time to perform the following useless process:
>
>    - build and install Ruby tarball,
>    - (after a bit) notice that gem does not work,
>    - find the cause and workaround with impatience,
>    - find, download, build and install libyaml, and

You do it once and then you can build Ruby as many times as you want 
without that penalty.

>    - rebuild and reinstall Ruby tarball again!
>

If the configuration would fail earlier (#7385), they would definitely 
save time of build and installation.


But anyway. I'll try to refrain from further comments to this thread, 
since I made all my points.


Vit

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [ruby-core:49538] Re: [ruby-trunk - Feature #7375] embedding libyaml in psych for Ruby 2.0
  2012-11-18 15:48           ` [ruby-core:49527] " Vít Ondruch
  2012-11-18 17:37             ` [ruby-core:49530] " Yusuke Endoh
@ 2012-11-18 23:07             ` Aaron Patterson
  1 sibling, 0 replies; 21+ messages in thread
From: Aaron Patterson @ 2012-11-18 23:07 UTC (permalink / raw
  To: ruby-core

On Mon, Nov 19, 2012 at 12:48:36AM +0900, Vít Ondruch wrote:
> Dne 18.11.2012 15:41, Yusuke Endoh napsal(a):

[snip]

> >Vit, can you create a distro package of Ruby depending on libyaml package,
> >rathar than bundling it, even if Ruby source distribution bundles libyaml?
> >I'm sorry to trouble you, but I would greatly appreciate your cooperation.
> 
> If the implementation will follow proposal 1) from Jeremy, then
> probably quite easily. But this is not technical question, if I can
> or cannot.

I think following the proposal from Jeremy is the best compromise, and
in fact is quite easy to do.  I've implemented it here:

  https://github.com/tenderlove/psych/tree/embed

Specifically this commit:

  https://github.com/tenderlove/psych/commit/3b066cf94a4f37e0395b2b761cda1862a13fcbd9

-- 
Aaron Patterson
http://tenderlovemaking.com/

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [ruby-core:49559] Re: [ruby-trunk - Feature #7375] embedding libyaml in psych for Ruby 2.0
  2012-11-18 21:20               ` [ruby-core:49531] " Vít Ondruch
@ 2012-11-19  3:40                 ` Yusuke Endoh
  0 siblings, 0 replies; 21+ messages in thread
From: Yusuke Endoh @ 2012-11-19  3:40 UTC (permalink / raw
  To: ruby-core

Hello Vit,

2012/11/19 Vít Ondruch <v.ondruch@gmail.com>:
> But anyway. I'll try to refrain from further comments to this thread, since
> I made all my points.

You might have a coronary if you saw trunk/LEGAL.
Not only nkf but also the Ruby core itself bundles, in whole or in part,
many source files of other projects.

-- 
Yusuke Endoh <mame@tsg.ne.jp>

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [ruby-core:49652] [ruby-trunk - Feature #7375] embedding libyaml in psych for Ruby 2.0
  2012-11-16 23:42 [ruby-core:49463] [ruby-trunk - Feature #7375][Open] embedding libyaml in psych for Ruby 2.0 tenderlovemaking (Aaron Patterson)
                   ` (3 preceding siblings ...)
  2012-11-17 18:23 ` [ruby-core:49496] " jeremyevans0 (Jeremy Evans)
@ 2012-11-20  5:58 ` matz (Yukihiro Matsumoto)
  2012-11-21  1:06   ` [ruby-core:49784] " Aaron Patterson
  2012-11-24  2:32 ` [ruby-core:49979] " mame (Yusuke Endoh)
                   ` (3 subsequent siblings)
  8 siblings, 1 reply; 21+ messages in thread
From: matz (Yukihiro Matsumoto) @ 2012-11-20  5:58 UTC (permalink / raw
  To: ruby-core


Issue #7375 has been updated by matz (Yukihiro Matsumoto).


My only concern for bundling third party library is that leaving behind unmaintained after years.
So give me a promise that Aaron will keep it for foreseeable future. Then I will trust him.

Matz.
 
----------------------------------------
Feature #7375: embedding libyaml in psych for Ruby 2.0
https://bugs.ruby-lang.org/issues/7375#change-33169

Author: tenderlovemaking (Aaron Patterson)
Status: Assigned
Priority: Normal
Assignee: matz (Yukihiro Matsumoto)
Category: 
Target version: 2.0.0


People have a hard time using psych (and thus rubygems) because it depends on libyaml. We can ease upgrades by embedding libyaml in order to eliminate the library dependency.

libyaml is MIT license, so it shouldn't impact Ruby's license.

Matz, may I embed libyaml for preview2?


-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [ruby-core:49784] Re: [ruby-trunk - Feature #7375] embedding libyaml in psych for Ruby 2.0
  2012-11-20  5:58 ` [ruby-core:49652] " matz (Yukihiro Matsumoto)
@ 2012-11-21  1:06   ` Aaron Patterson
  0 siblings, 0 replies; 21+ messages in thread
From: Aaron Patterson @ 2012-11-21  1:06 UTC (permalink / raw
  To: ruby-core

On Tue, Nov 20, 2012 at 02:58:58PM +0900, matz (Yukihiro Matsumoto) wrote:
> 
> Issue #7375 has been updated by matz (Yukihiro Matsumoto).
> 
> 
> My only concern for bundling third party library is that leaving behind unmaintained after years.
> So give me a promise that Aaron will keep it for foreseeable future. Then I will trust him.

I'm not sure exactly what you're asking, but I have no plans to quit
maintenance for the foreseeable future.  :-)

-- 
Aaron Patterson
http://tenderlovemaking.com/

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [ruby-core:49979] [ruby-trunk - Feature #7375] embedding libyaml in psych for Ruby 2.0
  2012-11-16 23:42 [ruby-core:49463] [ruby-trunk - Feature #7375][Open] embedding libyaml in psych for Ruby 2.0 tenderlovemaking (Aaron Patterson)
                   ` (4 preceding siblings ...)
  2012-11-20  5:58 ` [ruby-core:49652] " matz (Yukihiro Matsumoto)
@ 2012-11-24  2:32 ` mame (Yusuke Endoh)
  2012-11-24  5:20 ` [ruby-core:50019] " mame (Yusuke Endoh)
                   ` (2 subsequent siblings)
  8 siblings, 0 replies; 21+ messages in thread
From: mame (Yusuke Endoh) @ 2012-11-24  2:32 UTC (permalink / raw
  To: ruby-core


Issue #7375 has been updated by mame (Yusuke Endoh).

Priority changed from Normal to High

Thanks matz!  Aaron, go ahead.

-- 
Yusuke Endoh <mame@tsg.ne.jp>
----------------------------------------
Feature #7375: embedding libyaml in psych for Ruby 2.0
https://bugs.ruby-lang.org/issues/7375#change-33746

Author: tenderlovemaking (Aaron Patterson)
Status: Assigned
Priority: High
Assignee: matz (Yukihiro Matsumoto)
Category: 
Target version: 2.0.0


People have a hard time using psych (and thus rubygems) because it depends on libyaml. We can ease upgrades by embedding libyaml in order to eliminate the library dependency.

libyaml is MIT license, so it shouldn't impact Ruby's license.

Matz, may I embed libyaml for preview2?


-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [ruby-core:50019] [ruby-trunk - Feature #7375] embedding libyaml in psych for Ruby 2.0
  2012-11-16 23:42 [ruby-core:49463] [ruby-trunk - Feature #7375][Open] embedding libyaml in psych for Ruby 2.0 tenderlovemaking (Aaron Patterson)
                   ` (5 preceding siblings ...)
  2012-11-24  2:32 ` [ruby-core:49979] " mame (Yusuke Endoh)
@ 2012-11-24  5:20 ` mame (Yusuke Endoh)
  2012-11-28 18:27 ` [ruby-core:50261] [ruby-trunk - Feature #7375][Closed] " tenderlovemaking (Aaron Patterson)
  2012-11-28 18:50 ` [ruby-core:50262] [ruby-trunk - Feature #7375] " zzak (Zachary Scott)
  8 siblings, 0 replies; 21+ messages in thread
From: mame (Yusuke Endoh) @ 2012-11-24  5:20 UTC (permalink / raw
  To: ruby-core


Issue #7375 has been updated by mame (Yusuke Endoh).

Assignee changed from matz (Yukihiro Matsumoto) to tenderlovemaking (Aaron Patterson)


----------------------------------------
Feature #7375: embedding libyaml in psych for Ruby 2.0
https://bugs.ruby-lang.org/issues/7375#change-33793

Author: tenderlovemaking (Aaron Patterson)
Status: Assigned
Priority: High
Assignee: tenderlovemaking (Aaron Patterson)
Category: 
Target version: 2.0.0


People have a hard time using psych (and thus rubygems) because it depends on libyaml. We can ease upgrades by embedding libyaml in order to eliminate the library dependency.

libyaml is MIT license, so it shouldn't impact Ruby's license.

Matz, may I embed libyaml for preview2?


-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [ruby-core:50261] [ruby-trunk - Feature #7375][Closed] embedding libyaml in psych for Ruby 2.0
  2012-11-16 23:42 [ruby-core:49463] [ruby-trunk - Feature #7375][Open] embedding libyaml in psych for Ruby 2.0 tenderlovemaking (Aaron Patterson)
                   ` (6 preceding siblings ...)
  2012-11-24  5:20 ` [ruby-core:50019] " mame (Yusuke Endoh)
@ 2012-11-28 18:27 ` tenderlovemaking (Aaron Patterson)
  2012-11-28 18:50 ` [ruby-core:50262] [ruby-trunk - Feature #7375] " zzak (Zachary Scott)
  8 siblings, 0 replies; 21+ messages in thread
From: tenderlovemaking (Aaron Patterson) @ 2012-11-28 18:27 UTC (permalink / raw
  To: ruby-core


Issue #7375 has been updated by tenderlovemaking (Aaron Patterson).

Status changed from Assigned to Closed
% Done changed from 0 to 100

I fixed this in r37919, but it didn't seem to close.  I'm closing now.
----------------------------------------
Feature #7375: embedding libyaml in psych for Ruby 2.0
https://bugs.ruby-lang.org/issues/7375#change-34090

Author: tenderlovemaking (Aaron Patterson)
Status: Closed
Priority: High
Assignee: tenderlovemaking (Aaron Patterson)
Category: 
Target version: 2.0.0


People have a hard time using psych (and thus rubygems) because it depends on libyaml. We can ease upgrades by embedding libyaml in order to eliminate the library dependency.

libyaml is MIT license, so it shouldn't impact Ruby's license.

Matz, may I embed libyaml for preview2?


-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 21+ messages in thread

* [ruby-core:50262] [ruby-trunk - Feature #7375] embedding libyaml in psych for Ruby 2.0
  2012-11-16 23:42 [ruby-core:49463] [ruby-trunk - Feature #7375][Open] embedding libyaml in psych for Ruby 2.0 tenderlovemaking (Aaron Patterson)
                   ` (7 preceding siblings ...)
  2012-11-28 18:27 ` [ruby-core:50261] [ruby-trunk - Feature #7375][Closed] " tenderlovemaking (Aaron Patterson)
@ 2012-11-28 18:50 ` zzak (Zachary Scott)
  8 siblings, 0 replies; 21+ messages in thread
From: zzak (Zachary Scott) @ 2012-11-28 18:50 UTC (permalink / raw
  To: ruby-core


Issue #7375 has been updated by zzak (Zachary Scott).


Aaron, you have to add the ticket in the message, like:
[Feature #7375]
----------------------------------------
Feature #7375: embedding libyaml in psych for Ruby 2.0
https://bugs.ruby-lang.org/issues/7375#change-34091

Author: tenderlovemaking (Aaron Patterson)
Status: Closed
Priority: High
Assignee: tenderlovemaking (Aaron Patterson)
Category: 
Target version: 2.0.0


People have a hard time using psych (and thus rubygems) because it depends on libyaml. We can ease upgrades by embedding libyaml in order to eliminate the library dependency.

libyaml is MIT license, so it shouldn't impact Ruby's license.

Matz, may I embed libyaml for preview2?


-- 
http://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2012-11-28 18:52 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-11-16 23:42 [ruby-core:49463] [ruby-trunk - Feature #7375][Open] embedding libyaml in psych for Ruby 2.0 tenderlovemaking (Aaron Patterson)
2012-11-17  2:06 ` [ruby-core:49475] [ruby-trunk - Feature #7375][Assigned] " mame (Yusuke Endoh)
2012-11-17  2:09 ` [ruby-core:49476] Re: [ruby-trunk - Feature #7375][Open] " Yusuke Endoh
2012-11-17 18:05 ` [ruby-core:49494] [ruby-trunk - Feature #7375] " vo.x (Vit Ondruch)
2012-11-17 20:19   ` [ruby-core:49497] " Aaron Patterson
2012-11-17 20:34     ` [ruby-core:49499] " Vít Ondruch
2012-11-17 20:50       ` [ruby-core:49500] " Benoit Daloze
2012-11-18 14:41         ` [ruby-core:49524] " Yusuke Endoh
2012-11-18 15:48           ` [ruby-core:49527] " Vít Ondruch
2012-11-18 17:37             ` [ruby-core:49530] " Yusuke Endoh
2012-11-18 21:20               ` [ruby-core:49531] " Vít Ondruch
2012-11-19  3:40                 ` [ruby-core:49559] " Yusuke Endoh
2012-11-18 23:07             ` [ruby-core:49538] " Aaron Patterson
2012-11-17 18:23 ` [ruby-core:49496] " jeremyevans0 (Jeremy Evans)
2012-11-17 20:19   ` [ruby-core:49498] " Aaron Patterson
2012-11-20  5:58 ` [ruby-core:49652] " matz (Yukihiro Matsumoto)
2012-11-21  1:06   ` [ruby-core:49784] " Aaron Patterson
2012-11-24  2:32 ` [ruby-core:49979] " mame (Yusuke Endoh)
2012-11-24  5:20 ` [ruby-core:50019] " mame (Yusuke Endoh)
2012-11-28 18:27 ` [ruby-core:50261] [ruby-trunk - Feature #7375][Closed] " tenderlovemaking (Aaron Patterson)
2012-11-28 18:50 ` [ruby-core:50262] [ruby-trunk - Feature #7375] " zzak (Zachary Scott)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).