Even me. . .

some things about some things.

Browsing This

Ruby1.9 update

Posted in fevereiro 18th, 2009
Published in archlinux, linux, patch, ruby, vim

Há algum tempo saiu o update do Ruby de v1.8.7 para v1.9. Como já tem um tempo, a galera já trabalhou bastante pra fazer o código portável e compatível. E nós do ArchLinux ainda não fizemos o update… Num levantamento da questão na lista oficial vieram várias dúvidas sobre as gem’s que ainda não foram portadas, por exemplo. Alguém levantou que o VIM quebrou com o update pra ruby1.9, claro, eles não portaram o código…

Bem, depois de algumas horas, consegui resolver o problema. Fiz um patch pro backend do VIM para suporte a ruby e agora tudo funciona. Resumo da ópera:

- Recompilar o Ruby para versão 1.9 (easy, só mudar a versão na PKGBUILD)
- Recompilar o VI
- Recompilar o VIM e GVIM (parte difícil) aplicando o patch que gerei. É preciso também umas mudanças no fetch_patch.sh, pois o VIM já possui mais de 100 patch’s e o Arch só tinha aplicado 65 até a versão que está no repositório.
- Remover o rubygems e rake do sistema, pois o Ruby1.9 provê os dois binários.
- Verificar os programas e gem’s que antes usavam ruby1.8 se já estão portados.

Acho que é isso. Pra quem quer saber o que faltava no VIM pra ser compatível, basta mudar o seguinte:

RSTRING(foo)->len and RSTRING(foo)->ptr
tornou-se:
RSTRING_LEN(foo) and RSTRING_PTR(foo)
RARRAY(bar)->len and RARRAY(bar)->ptr
tornou-se:
RARRAY_LEN(bar) and RARRAY_PTR(bar)

fonte: writequit.org

Enviar artigo em PDF para PDF Free

No User Commented In " Ruby1.9 update "

Subscribes to this post Comment RSS or TrackBack URL

Leave Your Reply Below

 Username

 Email Address

 Website

Sticky note: Please double check your comments before submit Please Note: The comment moderation maybe active so there is no need to resubmit your comment

About The Site

myimgLorem ipsum dolor sit amet, consectetuer adipiscing elit. Quisque sed felis. Aliquam sit amet felis. Mauris semper, velit semper laoreet dictum, quam diam dictum urna, nec placerat elit nisl in quam. Etiam augue pede, molestie eget, rhoncus at, convallis ut, eros. Aliquam pharetra. Nulla in tellus eget odio