[personal profile] muwlgr
как следствие переезда с Ubuntu Hardy на Intrepid.
И если выразить это словами, то мне показалось, что они шире, чем 2.0.
Т.е. без дополнительной адаптации поезда в них проваливаются :>

Вот, например, в модуль Enumerable они давно уже добавляют метод group_by. Удобная штука, чтоб делать хэши из массивов и прочих контейнеров. И вот в Rails 2.0 этот метод возвращает простой и всем знакомый Hash, а в 2.2 - некий  ActiveSupport::OrderedHash. Который весьма похож на Hash, только не имеет метода has_key?. В результате пришлось мне из OrderedHashа довльно примитивным и лишним телодвижением делать просто Hash, только для того, чтобы в дальнейшем юзать этот has_key?, как встарь.

Я знаю и люблю эту инженерскую поговорку, что система достигает совершенства не тогда, когда к ней нечего добавлять, а когда из неё нечего выбрасывать. Но по-моему, это не тот случай. Если в названии вашего класса есть Hash, то согласно duck typingу и принципу подстановки Барбары Лисков всё ж хочется питать надежду, что вести он себя будет как Hash. Если, конечно, метод has_key? не объявлен устаревшим и ему не подыскана более современная замена.

Даже переезд с Рельсов 1.2 на 2.0 со сменой старшей версии прошёл у меня гладше. Понадобилось только добавить в указанное место произвольную строку в качестве шифровального ключа для stateless-session-cookies.

Там ещё умельцы из Canonical скрутили головку courier-maildropу в Intrepide.
Но это уже другая история, хотя и столь же малоприятная.

Date: 2008-11-25 09:27 pm (UTC)
singalen: (Default)
From: [personal profile] singalen
2.2 наступили, типа.

Profile

Volodymyr Mutel

February 2026

S M T W T F S
1234567
89 1011121314
15161718192021
22232425262728

Page Summary

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 12th, 2026 06:29 pm
Powered by Dreamwidth Studios