21 listopada miało miejsce wydanie nowej wersji open source’owego frameworku do tworzenia aplikacji webowych przy użyciu języka Ruby. Nowe RoR-y czy Railsy, jak zwykło się potocznie o nim mówić, przynoszą długo oczekiwane zmiany, warto więc się z nimi zapoznać.
Wypada wręcz zacząć od dodania wsparcia dla budowania wielojęzycznych aplikacji. To chyba najważniejsza nowa funkcjonalność, która jest łatwa w użyciu, a przy tym nie zamyka drogi do rozszerzania jej, czego przykładem może być Globalize2. Projekt, który był poświęcony wprowadzeniu owych mechanizmów to Rails I18n, a demonstrację możecie zobaczyć na stronie Localizing Rails.
Osoby zainteresowane optymalizacją wykorzystania łącza i prędkością wczytywania stron wcześniej już odwiedzonych z pewnością ucieszy informacja o poprawie obsługi nagłówków ETag oraz Last-Modified. Tym samym łatwiej teraz pominąć kosztowne przetwarzanie jeżeli klient posiada już aktualną wersję serwowanych treści.
Następna zmiana to uczynienie RoR-ów bezpiecznymi przy wielowątkowym wykorzystaniu. Jest to zasługa Josha Peeka, ale bez pracy Nicka Siegera z zespołu rozwijającego JRuby, dzięki któremu Active Record uzyskał poprawną pulę połączeń, nie byłoby to w pełni możliwe. Jest to szczególnie istotna modyfikacja dla użytkowników stosujących JRuby. Aby ten nowy potencjał mógł być wykorzystany z użyciem wzorcowej implementacji Ruby (napisanej w języku C), niezbędne jest jeszcze poprawienie grupy zależnych bibliotek poprzez uczynienie ich nieblokującymi – prace nad tym już się zbliżają.
Jeremy Kemper zagwarantował pełną kompatybilność nowych Railsów zarówno z Ruby w wersji 1.9 jak i JRuby. Trzeba jednak pamiętać, że dodatkowe biblioteki i gemy nie muszą tego oferować, ale i na tym polu należy oczekiwać dalszych usprawnień.
Pozytywne zmiany nie mogły ominąć dokumentacji, która i tak już była mocną stroną tego frameworku. Jej ulepszenia, w tym zupełnie nowe przewodniki, z pewnością ułatwią zapoznanie się z Ruby on Rails zupełnie zielonym, a i bardziej doświadczeni użytkownicy znajdą tam wiele przydatnych informacji.
Obszerniejsze informacje znajdziecie w notach na temat nowego wydania. Zapraszam do testowania.