Com a versão 2.2, Rails finalmente é thread-safe, graça ao projeto do Josh Peek para o Google Summer. Com este passo também veio a necessiade de pools de conexão. Mas o que significa ser thread-safe para o Rails? Direto dos release notes:
Dependendo da infraestrutura do seu servidor web, isso significa que você pode lidar com mais requisições com menos cópias do Rails em memória, levando à uma melhor performance de servidor e maior utilização de multiplos núcleos de processamento.
Charles Nutter do JRuby também escreveu um post detalhado respondendo essa questão aqui: "isso significa remover o filtro amplo de cada requisição substituindo-o por um filtro mais específico que abrange somente os recursos que precisam ser compartilhados entre threads".
A documentação interna do Rails foi melhorada em vários lugares, e há também o site de guias do Rails Ruby on Rails guides site com ótimos artigo falando sobre tópicos como segurança, testes, debugging.
Outras mudanças incluem os novos layouts de email, ou memoization confortável para tornar seu código mais legível. Outra nova característica é suporte a conditional get mais simples, sobre o quals nós já falamos na notícia Rails roundup on ETags no InfoQ.com. Algumas mudanças de último minuto foram feitas no RC2, chamadas de melhorias da proteção de requisições falsas e tunning do pool de conexões do ActiveRecord.
Há muito mais mudanças do que as apresentadas aqui. Você pode achar uma lista mais completa nos release notes do Rails 2.2.