LINUX.ORG.RU

Релиз Rails 3.1

 , , , ,


0

3

Для загрузки и установки доступен релиз фреймворка для построения веб-приложений rails 3.1.

Основные новшества в этой версии:

  • Asset Pipeline - фреймворк для сборки и сжатия JS и CSS под управлением Sprockets 2.0. Теперь как генерируются контроллеры, виды и модели для ваших скаффолдов, также будут создаваться и JS и CSS. Это позволяет достичь более удобной архитектуры и разгрести десятки десятки файлов из public/javascript по модулям. Рельсы сами будут заботиться о сборке всех ваших клиентских файлов в один и кешировании. Краткое руководство по Asset Pipeline
  • HTTP Streaming - позволит начать браузеру скачивать таблицы стилей и javascript'ы ещё до того, как сервер закончит формировать ответ. Результат — заметное увеличение скорости отдачи страниц. Это всего лишь опция, которая требует поддержки от web-сервера. Связка nginx+unicorn уже готова поддерживать эту возможность. Пример и как это работает можно посмотреть на RailsCasts.
  • jQuery теперь используется по умолчанию. Использовать prototype можно всего лишь поменяв jquery-rails на prototype-rails в Gemfile.
  • Другие изменения:
    • DRY миграции, которые знают сами, как себя обратить.
    • Mountable engines теперь могут быть иметь своё собственное пространство маршрутов и помошников.
    • Prepared statements - ActiveRecord теперь использует кешированные подготовленные выражения, которые дают большой прирост производительности в PostreSQL и на сложных запросах в MySQL. Вместо формирования запроса и передачи его в БД каждый раз, Rails один раз формирует запрос, а затем использует его специальный токен (подставляя нужные данные), когда нужно сделать похожий. Дает прирост в производительности на 20-30% на простых запросах и 10-кратный прирост по запросам в секунду на сложных запросах.
    • Rack::Cache включен по умолчанию. Делает возможным использование HTTP-кеширования с условным получением (Conditional Get) как замены для постраничного кеширования. В скором времени постраничное кеширование уберут из стандартной поставки.
    • Turn — новый вывод для Test::Unit в Ruby 1.9
    • ForceSSL - позволяет использовать безопасные соединения намного проще.
    • Основанный на ролях mass-assignment. attr_protected теперь принимает в качестве параметра роль.
    • has_secure_password - простое встраивание парольной защиты на BCrypt.
    • Custom serializers - теперь есть возможность самому указать способ хранения объектов в базе, а не только в формате YAML.

Также можно посмотреть небольшой видео обзор на RailsCasts
Если вы создаёте новое приложение, то лучше используйте Ruby 1.9.2. Rails будут поддерживать 1.8.x вплоть до 4.0, но только для совместимости.

>>> Подробности



Проверено: maxcom ()
Последнее исправление: maxcom (всего исправлений: 4)

Поздравляю рельсовиков!

renya ★★★★★
()
Ответ на: комментарий от adriano32

Ну что за занудство? Ну нет на главной еще новости. Тут есть и уже судя по статистике скачали ~2500 раз.

wolfovich
() автор топика
Ответ на: комментарий от anonymous

Ну теперь все! Прямая дорога на главную.

wolfovich
() автор топика

а generic views как в Django они до сих пор не научились делать?

Sosiska
()

от восьмого Rc чем-то отличается?

kelyar ★★★★★
()

И всё же что Rails что Djanga это не фреймворки это уже полноценные движки в которых что то менять крайне трудно. Pylons наше всё!

stalkerg ★★★★★
()
Ответ на: комментарий от stalkerg

Что в Django не так?

На самом деле в Django три возможных пути развития, как и во всех остальных фреймворках:

  • используем все искоробочное, если оно полностью подходит для нашей задачи;
  • используем искоробочное со своими допилами в коде;
  • не юзаем искоробочное вообще, а только лишь костяк MVC и пишем свое, если задача совсем кастомная.
SteveBallmer
()

обновился уже утром...

с релизом!

DILIN ★★★★★
()

Поздравления! Всё хочу попробовать освоить, но никак не доходят руки.

AlexKiriukha ★★★★
()

C первый rc смотрел на него. Это просто канфетка.

paranormal ★★
()

>теперь могут быть иметь своё собственное
OH SHI~!

etwrq ★★★★★
()
Ответ на: комментарий от stalkerg

>Pylons наше всё!

проверьте, у вас хладоген потек, pylons - rip, да здравствует pyramid

hizel ★★★★★
()
Ответ на: комментарий от SteveBallmer

потому что в django ни когда не было новых идей. на старте все идеи они слизали с тогдашних рельсов, и накодили м.. как смогли. теперь рельсы ушли далеко вперёд. а джанга так и осталась фреймворком для новостных порталов. это факт.

Lucky ★★
()

> Это позволяет достичь более удобной архитектуры и разгрести десятки десятки файлов из public/javascript по модулям.

десятки десятки

Сотни? :)

А вообще 3.1 прекрасны. Сижу и использую с rc6. Периодически возникали мелкие проблемы, но ничего занимающего более 5 минут на поиск причины небыло. Всех рельсовиков поздравляю!

Alve ★★★★★
()

Как во время вышли, как раз опосля новостей об маразме Оракла

AlexVR ★★★★★
()

Рубе, джанга-петон, пыхпых, жаба и им подобные поделия абсолютно не годятся для нагруженых систем. Разве что собственные тормозные бложики поднимать.

HTTP Streaming - позволит начать браузеру скачивать таблицы стилей и javascript'ы ещё до того, как сервер закончит формировать ответ. Результат — заметное увеличение скорости отдачи страниц

И этого раньше не было? Это даст прирост пары миллисекунд при загрузке первой страницы, потом должно выдаваться 304 или кеш на клиенте. Ни о чём.

Prepared statements - ActiveRecord теперь использует кешированные подготовленные выражения, которые дают большой прирост производительности в PostreSQL и на сложных запросах в MySQL. Вместо формирования запроса и передачи его в БД каждый раз, Rails один раз формирует запрос, а затем использует его специальный токен (подставляя нужные данные), когда нужно сделать похожий

Шел ХХI век... А произвольные куски кода в рубе так и нельзя закешировать?

В общем, по количеству новых кешей в каждой новой версии и сомнительных перделок можно сделать вывод, что рубе как была тормозом так и осталась.

shahid ★★★★★
()
Ответ на: комментарий от shahid

>Рубе, джанга-петон, пыхпых, жаба и им подобные поделия абсолютно не годятся для нагруженых систем

37signals удивленно смотрят на ваш комментарий, постепенно начиная ржать.

resure
()
Ответ на: комментарий от shahid

>В общем, по количеству новых кешей в каждой новой версии и сомнительных перделок можно сделать вывод, что рубе как была тормозом так и осталась.

Ни о чём.

daris
()
Ответ на: комментарий от shahid

> В общем, по количеству новых кешей в каждой новой версии и

сомнительных перделок можно сделать вывод, что рубе как была тормозом

так и осталась.



Иногда лучше жевать, чем говорить.

anonymous
()

Поздравляю рельсоводов! Ждем ответа django.

crono
()

А есть какой-нибудь относительно официальный гайд по переносу существующего проекта с 3.0?

INFOMAN ★★★★★
()

А чем это лучше, чем Spring + GWT Ext?

Bioreactor ★★★★★
()

jQuery по умолчанию - это хорошо. Все остальные либы или слишком громоздки, или сложны, а некоторые не имеют должного количества фич. Или имеют неудобную для WEB лицензию.

lucentcode ★★★★★
()
Ответ на: комментарий от shahid

> Рубе, джанга-петон, пыхпых, жаба и им подобные поделия абсолютно не годятся для нагруженых систем.

Если бы жавы не было в списке, я бы заподозрил здесь условно-здравую мысль...

sv75 ★★★★★
()
Ответ на: комментарий от shahid

«Рубе, джанга-петон, пыхпых, жаба и им подобные поделия абсолютно не годятся для нагруженых систем. Разве что собственные тормозные бложики поднимать.

А что такое „нагруженные системы“?

Кажется тебя судьба обидела жестоко..

anonymous
()
Ответ на: комментарий от anonymous

> А что такое «нагруженные системы»?

Для которых компьютеры не годятся, судя по.

sv75 ★★★★★
()
Ответ на: комментарий от shahid

> Шел ХХI век... А произвольные куски кода в рубе так и нельзя закешировать?

Всю жизнь можно было, ещё с первой версии.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.