Nowa wersja Railsów, a właściwie to dwie (trzy?)

Mimo, że najwięcej wysiłku jest pożytkowane na pracę nad trzecim wydaniem railsów, po półrocznej przerwie pojawiła się kolejna odsłona gałęzi 2.3. Oprócz elementów ułatwiających migrację do Rails 3, zawiera sporo poprawek i usprawnień. Jedna z nich okazała się “popsujką”, więc szybko wypuszczono kolejną wersję. Zanosi się jednak na to, że wkrótce doczekamy się jeszcze jednej.

2.3.6

Część starych funkcjonalności generuje teraz ostrzeżenia. Wyelminowanie ich powinno ułatwić przyszłą migrację do Rails 3. Został zupgradowany Rack, i18n, TZInfo, TMail, Json jest teraz generowany przy pomocy YAJL (o ile ten jest zainstalowany w systemie). Z drobnych zmian między innymi: dodane zostały dwie asercje assert_blank i asert_present i helper label powinien korzystać teraz z i18n. Pozbyto się również paskudnego ostrzeżenia, który pojawiał się jeśli miało się najnowsze ruby gems:

Warning: Gem::Dependency#version_requirements is deprecated and
will be removed on or after August 2010.  Use #requirement

Na oficjalnym blogu można znaleźć dokładniejszą lista zmian.

Jedna z najciekawszych z nich spowodowała problemy. Chodzi o plugin RailsXss, który dodaje funkcjonalność z Rails 3, polegającą na domyślnym “eskejpowaniu” widoków.

2.3.7

Nathan Weizenbaum, pracując nad dostosowaniem HAML‘a do najnowszej wersji odkrył kilka bugów, które mogą być niebezpieczne dla użytkowników pluginu RailsXss. Reakcja była szybka i została wydana nowa wersja 2.3.7

2.3.8?

Pośpiech był chyba zbyt duży, ponieważ wersja 2.3.7 powoduje problemy z Xss w aplikacjach, które nie korzystają z powyższego pluginu. Pojawiła się już pierwsza wersja “pre 2.3.8” i właściwe 2.3.8 powinno zostać wydane wkrótce.

Update: Wersja 2.3.8 rzeczywiście się pojawiła, a na blogu ruby on rails, można przeczytać przepraszająco-wyjaśniający post.

Podsumowanie

W takim wypadku najlepiej poczekać kilka dni z upgradem, aż sytuacja się wyjaśni i bugi zostaną wyłapane. Z jednej strony jest to spora wtopa, bo całkiem pokaźna paczka usprawnień nie została należycie przetestowana, zwłaszcza w zakresie bezpieczeństwa. Dodatkowo poprawiona wersja okazała się również zbugowana. Jednak z drugiej strony cieszy tak szybka reakcja.

Hej, to w końcu jest open source. Jeśli uważasz, że Ty nie dopuściłbyś do takiej sytuacji, nic nie stoi na przeszkodzie byś zaczął się udzielać.



Komentarze

  1. czak 25.05.2010

    Comment Arrow

    Grubo… 🙂


  2. Seban 25.05.2010

    Comment Arrow

    No wtopa dość mocna. Podobnie było przy 2.0 i zachwilę 2.0.1, 2.0.2 i dopiero 2.1 przyniosła dużo nowości. Mam nadzieję, że wnioski na przyszłość zostaną wyciągnięte i w przyszłości do takich sytuacji nie dojdzie.
    Tjeden, napisz do mnie maila w sprawie biletu na EuRuKo jeśli nadal jesteś zainteresowany.


  3. hipertracker 22.12.2010

    Comment Arrow

    Oni sie jakoś nie uczą. Kolejna afera z Rails 3.0.3 który zmienił publiczne API. Nie dość że bez ostrzeżenia, to na blogu wciąż (od paru tygodni!) widnieje kłamliwa informacja że zmiany są niewielkie i możn po prostu sobie zaktualizować bez żadnego ryzyka. Zobaczcie komentarze http://weblog.rubyonrails.org/2010/11/15/rails-3-0-3-faster-active-record-plus-plenty-of-fixes




O autorze

Aleksander Dąbrowski

Od 2008 zawodowo programuje w Ruby i Railsach. Jest maniakiem prostych i eleganckich rozwiązań, nie boi się usuwania brzydkiego kodu. Uwielbia dzielić się wiedzą, a w wolnych chwilach naprawia samochody.