[devel] ruby team, ruby policy и будущее ruby в Сизифе

Igor Zubkov igor.zubkov на gmail.com
Вт Ноя 27 20:01:22 MSK 2012


2012/11/27 Igor Zubkov <igor.zubkov at gmail.com>:
> Hi!
>
> Разговор о ruby будет длинный и грустный. Он будет состоять из двух
> частей. Настоящее и Будущее.
>
> Настоящее:
>
> В текущий момент в Сизифе две версии ruby. 1.8.7 и 1.9.2. Начнём с
> 1.8.7 (опустим то что версия в Сизифе требует исправлений по части
> безопасности). 1.8.7 руби уже списали на берег. По официальному плану
> (http://www.ruby-lang.org/en/news/2011/10/06/plans-for-1-8-7/) его
> поддержка по части безопасности будет свёрнута в июне 2013. Предлагаю
> не ждать этого времени и отправить 1.8 ветку на пенсию сейчас. Таск
> для этого я сегодня подготовлю. В нём будет ruby1.8 и всё что от него
> зависит. ruby1.8 и большая часть пакетов которые от него зависит уже
> давно не пересобирается и beekeeper его уже давно пытается удалить.
> Ему надо только помочь. Ruby on Rails 4.0, который скоро выйдет, уже
> не поддерживает 1.8.7 руби.

Ok,

On Tue, Nov 27, 2012 at 5:41 PM, Girar Builder robot
<girar-builder at altlinux.org> wrote:
> http://git.altlinux.org/tasks/85049/logs/events.2.1.log
>
> 2012-Nov-27 15:40:36 :: test-only task #85049 for sisyphus resumed by icesik:
> #100 delete ruby1.8
> #200 delete libxml-ruby1.8
> #300 delete mysql-ruby1.8
> #400 delete ruby1.8-actionmailer
> #500 delete ruby1.8-actionpack
> #600 delete ruby1.8-activerecord
> #700 delete ruby1.8-activeresource
> #1000 delete ruby1.8-activesupport
> #1100 delete ruby1.8-builder
> #1200 delete ruby1.8-daemons
> #1300 delete ruby1.8-fcgi
> #1400 delete ruby1.8-flexmock
> #1500 delete ruby1.8-gem_plugin
> #1600 delete ruby1.8-gnome2-all
> #1700 delete ruby1.8-i18n
> #2000 delete ruby1.8-json
> #2100 delete ruby1.8-ldap
> #2200 delete ruby1.8-memcache-client
> #2300 delete ruby1.8-mime-types
> #2400 delete ruby1.8-minitest
> #2500 delete ruby1.8-mkrf
> #2600 delete ruby1.8-mocha
> #2700 delete ruby1.8-mongrel
> #3000 delete ruby1.8-nokogiri
> #3100 delete ruby1.8-opengl
> #3200 delete ruby1.8-parseconfig
> #3300 delete ruby1.8-passenger
> #3400 delete ruby1.8-pg
> #3500 delete ruby1.8-pkg-config
> #3600 delete ruby1.8-prof
> #3700 delete ruby1.8-racc
> #4000 delete ruby1.8-rack
> #4100 delete ruby1.8-rails
> #4200 delete ruby1.8-rake
> #4300 delete ruby1.8-rcairo
> #4400 delete ruby1.8-redcloth
> #4500 delete ruby1.8-rest-client
> #4600 delete ruby1.8-rexical
> #4700 delete ruby1.8-rhc
> #5000 delete ruby1.8-rhc-rest
> #5100 delete ruby1.8-rubygems
> #5200 delete ruby1.8-rubytree
> #5300 delete ruby1.8-text-format
> #5400 delete ruby1.8-tmail
> #5500 delete ruby1.8-tzinfo
> #5600 delete sqlite3-ruby1.8
> 2012-Nov-27 15:40:37 :: build check OK
> 2012-Nov-27 15:40:37 :: noarch check OK
> 2012-Nov-27 15:40:38 :: plan: src +0 -46 =13835, i586 +0 -100 =24548, noarch +0 -75 =12543, x86_64 +0 -100 =24448
> 2012-Nov-27 15:40:38 :: version check OK
> 2012-Nov-27 15:41:37 :: created next repo

Здесь всё хорошо.

>         i586: NEW unmet dependencies detected:
> ovz-web-panel#2.0-alt7          libruby1.8
> ovz-web-panel#2.0-alt7          ruby1.8
> ovz-web-panel#2.0-alt7          ruby1.8-rubygems
> ovz-web-panel#2.0-alt7          sqlite3-ruby1.8
> ruby1.8-ovz-daemon#2.0-alt7     ruby1.8
> ruby1.8-ovz-daemon#2.0-alt7     ruby1.8-rubygems
>         x86_64: NEW unmet dependencies detected:
> ovz-web-panel#2.0-alt7          libruby1.8
> ovz-web-panel#2.0-alt7          ruby1.8
> ovz-web-panel#2.0-alt7          ruby1.8-rubygems
> ovz-web-panel#2.0-alt7          sqlite3-ruby1.8
> ruby1.8-ovz-daemon#2.0-alt7     ruby1.8
> ruby1.8-ovz-daemon#2.0-alt7     ruby1.8-rubygems
>         ACLs of affected packages:
> ovz-web-panel   baraka @everybody
> 2012-Nov-27 15:41:57 :: dependencies check FAILED
> 2012-Nov-27 15:41:57 :: task #85049 for sisyphus FAILED

А вот здесь явно выраженный случай нарушения текущего ruby полиси. Все
зависимости проставлены руками.
В ovz-web-panel: Requires: ruby1.8 ruby1.8-rubygems libruby1.8 sqlite3-ruby1.8
и AutoReq: yes, noruby

Я соберу вечером версию которая не будет требовать ruby1.8.

Кстати, ovz-web-panel 2.1 уже вышел.

> 1.9.2. Версия в Сизифе устарелая, дырявая и не пересобирается. Так же,
> не пересобирается большая часть того что зависит от этой версии ruby.
> У меня есть более свежий 1.9.2p320. В ней заткнуты все дырки по
> безопасности, но тесты не проходят и отключены. Чинить эту версию
> смысла нет. Хотя можно попробовать собрать её более старым
> компилятором, но я не особо уверен в этой затеи. (Кроме того, эта
> сборка выполнена в виде .src.rpm.)
>
> Будущее:
> Собрать 1.9.3/2.0.0.
>
> Говорить о 2.0.0 пока рано. Сейчас доступна только 2.0.0-preview1.
>
> 1.9.3p327 сейчас является основной версией которую используют все. Вот
> её и надо собирать. Всё что будет дальше это только черновик мыслей по
> поводу того что надо делать. И выкладывается это здесь с целью
> получить обратную связь.
>
> Итак, начнём с того как собирать. .src.rpm only. Потом надо разрешить
> зависимость на rubygems и вообще не отрывать зависимость на него.
> Далее, я считаю что совсем не правильно перепаковывать руками джемы.
> По статистике rubygems.org, их там уже "of 47,599 gems cut since July
> 2009". Хотя это число всех джемов и всех их версий. Я считаю что кроме
> ruby, rubygems и джемов которые входят в комплект самого руби, нужен
> только bundler (http://gembundler.com/). Ну и рабочий rubygems что бы
> доставить нужных джемов в систему или пользователю в home. Или даже в
> папку с самим приложением. Таким образом, будет работать что угодно
> что пользователи выкачают из интернета и попытаются запустить.
>
> Да, у нас есть ещё пакеты из Сизифа которые могут хотеть руби для
> чего-нибудь своего. Для них придётся их запаковать. Например,
> rubygems-mysql. Да, это просто переупакованный джем с зависимостью на
> rubygems.
>
> Ещё раз. Это должно быть такое руби в репозитории которое не охота
> снести (у меня локально снесено и на продакшене packages.altlinux.org
> тоже) и поставить через rvm или rbenv в home и поставить все нужные
> джемы туда же. Чем меньше он будет отличатся от того что можно собрать
> через ./configure && make && make install тем лучше.
>
> Теперь о ruby team. Я считаю что он умер так и не родившись. И
> спрашивать что он думает, думаю бесполезно. Надо брать и делать.
>
> Изменения для ruby policy я подготовлю позже, вместе со сборкой ruby 1.9.3p327.
>
> P.S.: Я знаю что у timonbl4@ в гите лежит сборка 1.9.3. Так вот, оно
> даже не собирается.

-- 
Igor Zubkov
http://hi.im/ice


Подробная информация о списке рассылки Devel