From: Mikhail Yakshin <greycat@altlinux.org> To: ALT Devel discussion list <devel@lists.altlinux.org> Subject: Re: [devel] ruby-rake и gems Date: Tue, 14 Mar 2006 14:03:01 +0300 Message-ID: <4416A2E5.6080901@altlinux.org> (raw) In-Reply-To: <20060314103230.GN6144@pc152.sam-solutions.net> Kirill A. Shutemov wrote: >>>Если есть такая возможность, то почему бы вообще не разобрать gems по >>>косточкам и не разложить в правильные директории (/usr/share/ruby/vendor_ruby/1.8/ >>>и т.п)? Оставить в /usr/lib/ruby/gems/1.8 только то, что нужно для >>>require_gem (я так понял, что это /usr/lib/ruby/gems/1.8/specifications/*). >> >>Например - потому, что gem тогда как package manager не будет его >>видеть. Есть масса штуковин, которые работают уже в этой инфраструктуре. >>Они ищут файлы по путям, отсчитывая их от базовый директории gem'а. Они >>обращаются к Gem'у (а у него довольно развесистый API), с тем, чтобы >>что-то узнавать о пакетах и потом действительно пользоваться этой >>информацией. Автоматические тесты, что есть в gem'е - они будут искаться >>именно в поддиректории test и т.п., причем, учитывая, что один пакет >>зависит от другого - важно и их взаимное расположение и т.д. и т.п. > > Пропатчить rubygems, чтоб он смотрел в правильные директории это очень > сложно? Во-первых - даже rubygems - сложно. Во-вторых, смотрят не rubygems, а пакеты. >>Вообще на самом деле - есть еще одно - простейшее, в общем-то, решение: >>включить rubygems по умолчанию (ruby -rubygems). После этого начинают >>автоматически работать require 'пакет' как синоним require_gem 'пакет' >>(в дополнение к require 'файл') и остальные вещи, которые доступны в Gem >>enviroment. При засовывании 'rubygems' в RUBYOPTS - всё, по сути, что >>может не устраивать "противников" gem - это некий overhead в виде >>микросекунд, которые требует загрузка этого самого Gem environment. >>Может правда так сделаем и закроем вопрос? > > Помимо overhead'а с загрузкой rubygems, повышается вероятность словить > rubygems-специфичную багу. Это да. Но - см. мое другое письмо - для любителей чистого ruby без gems - можно просто вынести его в пакет у package manager'а - и если не пользуешься - не ставишь сам пакет rubygems - никаких "-rubygems" не имеешь. > Например, фактически, сильно увеличивается $: за > счёт rubygems директорий, что не способствует безопасности. Неправда ваша: $ irb irb(main):001:0> a = $:; require 'rubygems'; b = $:; p b - a [] => nil LOADPATH на самом деле не меняется. Хотя, конечно, начинают подгружаться модули gem - но - извините - разве не этого вы хотели, когда просили, чтобы require умел эмулировать require_gem? -- WBR, Mikhail Yakshin
next prev parent reply other threads:[~2006-03-14 11:03 UTC|newest] Thread overview: 78+ messages / expand[flat|nested] mbox.gz Atom feed top 2006-03-13 14:35 Mikhail Yakshin 2006-03-13 14:42 ` Alexey I. Froloff 2006-03-13 15:05 ` Mikhail Yakshin 2006-03-13 15:53 ` Alexey I. Froloff 2006-03-13 14:43 ` Kirill A. Shutemov 2006-03-13 15:24 ` Mikhail Yakshin 2006-03-13 15:35 ` Vitaly Ostanin 2006-03-13 15:41 ` Kirill A. Shutemov 2006-03-13 16:32 ` Mikhail Yakshin 2006-03-13 16:38 ` Alexey I. Froloff 2006-03-15 6:43 ` Michael Shigorin 2006-03-15 10:51 ` Mikhail Yakshin 2006-03-15 11:07 ` Денис Смирнов 2006-03-15 11:34 ` Grigory Batalov 2006-03-15 13:00 ` Денис Смирнов 2006-03-15 12:39 ` Mikhail Yakshin 2006-03-15 13:02 ` Денис Смирнов 2006-03-15 11:28 ` Alexey I. Froloff 2006-03-15 11:30 ` Alexey I. Froloff 2006-03-15 12:23 ` Michael Shigorin 2006-03-15 12:30 ` Alexey I. Froloff 2006-03-15 12:48 ` [devel] gems vs cpan Dmitry V. Levin 2006-03-13 15:08 ` [devel] ruby-rake и gems Vitaly Ostanin 2006-03-13 15:36 ` Mikhail Yakshin 2006-03-13 16:13 ` Vitaly Ostanin 2006-03-13 16:55 ` Dmitry V. Levin 2006-03-13 17:58 ` Mikhail Yakshin 2006-03-13 18:18 ` Dmitry V. Levin 2006-03-13 19:16 ` Mikhail Yakshin 2006-03-14 8:00 ` Kirill A. Shutemov 2006-03-14 8:37 ` Mikhail Yakshin 2006-03-14 8:45 ` Led 2006-03-14 9:38 ` Kirill A. Shutemov 2006-03-14 10:20 ` Mikhail Yakshin 2006-03-14 10:32 ` Kirill A. Shutemov 2006-03-14 11:03 ` Mikhail Yakshin [this message] 2006-03-14 11:16 ` Kirill A. Shutemov 2006-03-14 13:36 ` Mikhail Yakshin 2006-03-14 14:06 ` Kirill A. Shutemov 2006-03-14 8:49 ` Alexey I. Froloff 2006-03-14 10:06 ` Mikhail Yakshin 2006-03-14 13:06 ` Alexey I. Froloff 2006-03-14 13:42 ` Mikhail Yakshin 2006-03-15 9:26 ` Alexey I. Froloff 2006-03-15 11:05 ` Mikhail Yakshin 2006-03-15 11:45 ` Alexey I. Froloff 2006-03-15 11:16 ` Alexey I. Froloff 2006-03-14 10:17 ` Vitaly Ostanin 2006-03-14 10:29 ` Mikhail Yakshin 2006-03-14 10:36 ` Kirill A. Shutemov 2006-03-14 10:39 ` Alexey I. Froloff 2006-03-14 10:51 ` Vitaly Ostanin 2006-03-14 15:35 ` Dmitry V. Levin 2006-03-14 11:10 ` Mikhail Yakshin 2006-03-14 13:19 ` Alexey I. Froloff 2006-03-14 13:58 ` Kirill A. Shutemov 2006-03-14 14:51 ` Vitaly Ostanin 2006-03-14 15:37 ` Alexey I. Froloff 2006-03-14 15:41 ` Vitaly Ostanin 2006-03-14 15:51 ` Mikhail Yakshin 2006-03-14 16:04 ` Vitaly Ostanin 2006-03-14 16:16 ` Alexey I. Froloff 2006-03-14 16:18 ` Vital Khilko 2006-03-14 18:55 ` [devel] ruby-rake � Vitaly Ostanin 2006-03-15 7:47 ` Vital Khilko 2006-03-15 8:08 ` Damir Shayhutdinov 2006-03-14 16:15 ` [devel] ruby-rake и gems Alexey I. Froloff 2006-03-14 19:05 ` Vitaly Ostanin 2006-03-15 8:30 ` [devel] [OT] Re: ruby-rake и gems -> vendor message to ruby-dev, anyone? Michael Shigorin 2006-03-15 11:19 ` Mikhail Yakshin 2006-03-15 11:19 ` Genix 2006-03-15 11:41 ` Mikhail Yakshin 2006-03-14 10:56 ` [devel] ruby-rake и gems Vitaly Ostanin 2006-03-14 13:43 ` Alexey I. Froloff 2006-03-14 15:00 ` Vitaly Ostanin 2006-03-14 15:40 ` Dmitry V. Levin 2006-03-15 8:23 ` Michael Shigorin 2006-03-15 13:19 ` Aleksey Avdeev
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=4416A2E5.6080901@altlinux.org \ --to=greycat@altlinux.org \ --cc=devel@lists.altlinux.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
ALT Linux Team development discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \ devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru public-inbox-index devel Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.devel AGPL code for this site: git clone https://public-inbox.org/public-inbox.git