
O time de desenvolvimento do Rails continua forte nas alterações para torná-lo compatível com o Ruby 1.9, mas isto não significa que o resto será deixado de lado. Como vocês verão nas alterações relacionadas abaixo muita coisa está sendo feita para melhorar o sistema de cache e também o código como um todo. Vamos as últimas alterações:
Code refactoring
Foi feito um refactoring no ActionController::Verification e aproveitaram para melhorar a documentação.
Cache
David também aproveitou para mudar algumas coisas nas classes de cache.
Todos os métodos fragment_cache_key agora retornam por padrão o namespace 'view/' na frente.
Todos os caching stores foram retirados de ActionController::Caching::Fragments:: e agora estão em ActiveSupport::Cache::. Neste caso se você faz referência a um store, como ActionController::Caching::Fragments::MemoryStore, por exemplo, será necessário alterar sua referência para ActiveSupport::Cache::MemoryStore.
ActionController::Base.fragment_cache_store deixa de existir e dá lugar à ActionController::Base.cache_store.
Foi incluído no ActiveRecord::Base o método cache_key para facilitar o armazenamento em cache de Active Records pelas novas bibliotecas ActiveSupport::Cache::*. Este método funciona assim:
>> Product.new.cache_key
=> "products/new"
>> Product.find(5).cache_key
=> "products/5"
>>Person.find(5).cache_key
=> "people/5-20071224150000"
Foi incluído o ActiveSupport::Gzip.decompress/compress para facilitar o wrapper para o Zlib.
Agora você pode usar entre as opções de environment o config.cache_store para informar o local padrão de armazenamento do cache. Vale lembrar que se o diretório tmp/cache existir o padrão é o FileStore, caso contrário o MemoryStore é usado. Você pode configurar das seguintes formas:
config.cache_store = :memory_store
config.cache_store = :file_store, "/path/to/cache/directory"
config.cache_store = :drb_store, "druby://localhost:9192"
config.cache_store = :mem_cache_store, "localhost"
config.cache_store = MyOwnStore.new("parameter")
Prototype e script.aculo.us
O Rails passa a usar a partir de agora a versão 1.6.0.1 do Prototype. Isto serve como um preparatório para a versão 1.8.1 do script.aculo.us.