Почему мы используем Zope c python 2.2.*? |
печать | 2002-11-10 22:09:24
| mcray
|
В самом деле, по официальным заявлениям DC Zope работает с версией
2.1.3, и в списках рассылки иной раз попадаются багрепорты, ответом
на которые является требование перейти на Python2.1.3, в то
же время в нашем дистрибутиве Zope работает с версией python2.2.*.
|
|
Такое решение было принято на
основе следующих размышлений:
- Держать в дистрибутиве питон разных версий (трех, как это сделано в
некоторых дистрибутивах) принципиально плохой путь, так как
утрачивается свобода в интеграции различных компонент дистрибутива;
- DC не заявляет о неработоспособности Zope под python2.2 (по крайней
мере я не видел таких заявлений), а заявляет лишь о его
неоттестированности - так вот, мы его оттестировали : наш пакет
эксплуатируется по крайней мере на 5ти коммерческих хостах, что
составляет более 30ти сайтов;
- Тестирование этой комбинации на 50ти продуктах взятых с сайта Zope, и
не выявило серьезных проблем. В число
протестированных продуктов вошли такие сложные проекты как ZEO,
CMF, ZUBB, Tracker, все поддерживаемые продукты, а также ряд других;
- Едва ли не единственный тип исправлений, который приходится
делать для совмещения Zope и python2.2 - это отказ от использования
Obsoleted модулей, таких как strop, FCNTL и др.;
- Проблемы, возникающие при установке нетипичных продуктов при
использовании python2.2, как правило, легко могут
быть устранены элементарным вмешательством в исходный код продукта (в
случае с Obsoleted-модулями для этого достаточно элементарных навыков
программирования);
- Количество проблем при установке нетипичных
продуктов, возникающих из-за установки под Zope + py2.2 существенно
меньше количества проблем, возникающих при установке такого
продукта под новую версию
Zope : поэтому можно утверждать, что пользователь, не
сумевший преодолеть проблемы предыдущего пункта, все равно не сумел
бы пройти проблемы этого пункта;
- Мы поставляем вместе с Zope критичные для пользователей
продукты и тестируем их работоспособность;
- Использование
Zope совместно с python2.2 позволяет уже сегодня разрабатывать решения
завтрашнего дня, используя всю мощь
средств, еще недоступных конкурентам;
Косвенным подтвержденим этой позиции является то, что
на прошедшем однажды спонтанном диспуте с противниками такого
подхода, оппоненты не смогли продемонстрировать
ни одной ошибки, непосредственно демонстрирующей неработоспособность
Zope & python2.2 с каким-либо продуктом. А единственная проблема совсем
другого рода (несовместимость старой версии
ZMySQLDA с новой версией MySQL-python), которая действительно проявлялась
под python2.2, решена в нашем варианте поставки.
Таким образом, хотя принципиально проблема совместимости Python22 &
Zope существует, она столь эфемерны, что в практически важных случаях
не имеет значения для подавляющего большинства пользователей. Если вдруг
серьезная проблема будет обнаружена или кто-либо сообщит о ней - либо
проблема будет решена, либо будет проделан возврат к версии python2.1.3.
До сих пор проблемы решались.
|