Zope 2.11.0
Up to Product page
2.11系の最初のリリースです。主要な新機能として、1) 最新のZopeコンポーネント(Zope-3.4.0)を組み込んでいます。 2) BLOB(binary large objects)に対応したZODB 3.8にアップデートしました。 3) トランザクション対応のMailHost実装に対応し、非同期でメール送信を行うようになりました。 また、プロダクトの互換性にご注意ください(特にPlone)。
Available downloads
For additional information about this project, please visit the
project page.
Release Notes
| Tested with | Python 2.4.5, Python 2.4.4, Python 2.4.3 |
|---|---|
| State | Final |
| License | ZPL |
| Released | 2008/06/21 |
- 最新のZopeコンポーネント(Zope-3.4.0)を組み込んでいます。
- BLOB(binary large objects)に対応したZODB 3.8にアップデートしました。
- トランザクション対応のMailHost実装に対応し、非同期でメール送信を行うようになりました。
- Python-2.4.2以降が必要です。
- Python-2.5系列はサポートしていません。
- Five-1.5.2, Zope3 3.4.0 が同梱されています。
- Python/Zope/Ploneのバージョンの組み合わせについて もご確認ください。
Change log
Zope-2.11.0 (2008/6/15) の変更点
再構築(Restructuring)
- 長らく残っていた著名な、しかし表に現れていなかったZope2スタイル のインターフェース(これらはInterfaceパッケージのimportで 使われる)は既にtrunkから取り除かれました。
バグ修正(Bugs Fixed)
- Launchpad #229549 :
PageTemplateを描画中に
debugフラグを無視しないようにした。 (thanks to Eric Steele for the patch). - zope.confのルールに従って、
fast_listenをfast-listenに 修正した。(ダッシュが正しい。アンダースコアではない)
Zope-2.11 rc 1 (2008/5/8) の変更点
バグ修正(Bugs Fixed)
- Launchpad #142350 : 概要が提供されている場合に、各プロパティーの行のタイトルとして 表示するようにした。
- Launchpad #200007 : DateTime(anotherDateTime) がタイムゾーンを保持するようになった。
- Launchpad #213311 :
ページ発行時のURLトラバース中に
unsubscriptable objectエラーを ハンドリングする様にした。 - Products.Five: vocabulary検索機能が2.11 beta 1で壊れていたのを修正。 ZopeVocabularyRegistryが起動時にフックされていなかった。
- Launchpad #143813 : zopectl は子プロセスが失敗したときに非ゼロ終了するようになった。
- Products.Five: browser.addingの実装を再度zope.app.containerに合わせ調整した。 この修正で多くのマイナーバグの修正と、古くなったコードの除去を 行った。
- Launchpad #173658 : 使用されていないコード OFS.Traversable の unrestrictedTraverse を取り除いた。 (NameErrorとなっていた).
- Launchpad #198274 : '空の' ZopePageTemplate をunpickleすることが出来ない問題を修正。
Zope-2.11 beta 1 (2007/12/29) の変更点
再構築(Restructuring)
- メソッド manage_afterAdd, manage_beforeDelete, manage_afterClone の deprecation警告をdiscouraged警告に変更した。これらのメソッドは Zope2.11では削除されないことになったが、近い将来無くなるだろう。イベ ントの仕組みを使うことを強く推奨する。
- 2つの宣言の実装をFiveから実クラスへ移動した。
- Document.sequence: zope.sequencesort に置き換えた。
- 全てのProductsフォルダ(zopeやzope.appフォルダ)はsetuptools名前空間パ ッケージで定義されるようになった。詳しくは以下のURLを参照。 http://peak.telecommunity.com/DevCenter/setuptools#namespace-packages
- ZPT: ZPT警告の画面表示を削除。zope.pagetemplateの実装から削除されたた め。
- パッチ当て版ではない標準のdocutils 0.4 をZopeに同梱した。Both trusted and untrusted code are stillprotected against unwanted file inclusion.
- ZGadflyDA を削除した(Zope 2.9からdeprecated)。コードは以下から取得可 能。 http://svn.zope.org/Products.ZGadflyDA
- OFS.content_types を削除した(Zope 2.9からdeprecated)。
- zLOGのdeprecatedを解除。まだ後方互換性のために必要。(which will remain a backward-compatibilityshim for the Python logging module.)
- Indexes: 使用されていないパラメータを
_apply_indexメソッドから削除 __ac_permissions__とmeta_types属性によるプロダクトの初期化の推奨 されないサポートを削除。- reStructuredText/ZReST: セキュリティー上の理由により、raw_enabled を 0 に設定。
- OFS Image: 画像とファイルでisinstance(data, str)を使うように更新し、 unicodeオブジェクトに遭遇した場合はTypeErrorをraiseするようにした。
- OFS Application: deprecation warnings (推奨しないことを表す警告) を更
新した。
__ac_permissions__とmeta_typesサポートをZope 2.11で削 除し、methodsサポートはまだ残す。
機能追加(Features added)
- Zope2 startup: ZopeはDatabaseOpendとProcessStartingイベントを起動時に 送るようになった。
- Testing.ZopeTestCase: "ZopeLite" テストレイヤーを導入した。これはZTC と非ZTCテストをより手軽に混在させることが可能とする。
- Testing/custom_zodb.py: DemoStorage以外のストレージ使用のサポートを追 加した。FileStorageは $TEST_FILESTORAGE環境変数によってカスタム Data.fsをマウントできる。ZEOサーバーは$TEST_ZEO_HOSTと$TEST_ZEO_PORT 環境変数で設定できる。この新しい機能により、標準のZopeテストランナー で既存のZopeインストール環境のためのテストを書き、実行することが出来 るようになる。
- ZPublisherのHTTPリクエストに、Zope3に相当するdebugとlocaleの属性を持 つようになった。debug属性は今までのところ、Zope3 ZPTエンジンを働かせ るようにzope.*名前空間からコードに制限されました。locale属性は zope.i18n.interfaces.locales.ILocaleオブジェクトへの、localeに関連し た情報(日時のフォーマット情報、言語変換、国名など)付きでのアクセスを 提供する。Form variables of both debug and locale will shadow these two attributes and their use is therefor discouraged.
- MailHost: メールの配信にzope.sendmailを使うようになりました。これによ
り、MailHostがZopeのトランザクションシステム(コンフリクトエラーでの送
信emailの複製を除く)に対応しました。追加で、MailHostが非同期メール配
信サポートに対応しました。
Use queueコンフィグオプションにより、フ ァイルシステム上に(Queue directory以下に)メールキューが作成され、 queueスレッドが起動し3秒ごとにqueueをチェックします。これにより、メー ル送信時の衝撃を吸収します。また、MailHostにTLS/SSLによる暗号通信サポ ートが追加されました。 - ZODB 3.8 にインテグレートしました(BLOBサポート対応)
- 最新の Zope3 コンポーネントをインテグレート(Zope 3.4)
- Windowsでzopectlを使えるようになりました。全てのコマンドがサポートさ
れています。また、Windows専用に2つのコマンド install と remove が追加
されています。これらはWindows Serviceへの登録と解除を行います。
start, stop, restart の各コマンドはWindowsサービスを操作します。これ
らのコマンドを使用する前に
bin\zopectl installを一度行う必要があり ます。 - ZCatalog の返値となるobject (catalog brains) は ZCatalog.interfaces.ICatalogBrains インターフェースを持つようになりま した。
- 新しいモジュール, AccessControl.requestmethod は一つのリクエスト利用 にのみメソッドの利用を制限するデコレータファクトリーを提供します。例 えば、メソッドを @requestmethod("POST") のようにマーキングすると、 publish時にPOSTリクエストでのみ利用できるよう制限されます。いくつかの セキュリティーに関連したメソッドはPOSTのみに制限されます。
- PythonScripts: Pythonのsetsモジュールを使えるようになりました。
fast_listenディレクティブをetc/zope.confの http-server と webdav-source-server セクションに追加しました。これにより、起動フェー ズでソケットを開く順番を遅らせます。これはZopeがロードバランサーの背 後で動作している場合などの特定の状況で使用します。(patch by Patrick Gerken)- ZopePageTemplate の内部実装にunicodeを使用するようにしました。非
unicodeインスタンスはon-the-flyでunicodeに変換されます。ところでこれ
が正しく働くのはZPTインスタンスがutf-8かISO-8859-15でエンコードされて
いる場合のみです。他のエンコーディングの場合は、環境変数
ZPT_REFERRED_ENCODING の値のutf-8とISO-8859-15の前に使用するエンコー
ディングを設定してください。
output_encodingsプロパティーが、WebDAV/FTP操作での各エンコーディン グとunicodeとの相互変換をコントロールします。 - ZPTの実装はUnicodeDecodeError時の振る舞いについてコンフィグ出来るよう になりました。カスタム UnicodeEncodingConflictResolver をZCMLで設定す ることが出来ます。詳しくは Products/PageTemplates/(configure.zcml, unicodeconflictresolver.py, interfaces.py) を参照のこと。
- AccessControl.Role: 新しいメソッド manage_getUserRolesAndPermissions() が追加されました。
- AccessControl: "Security" タブのフォームに新しくユーザーに関連したパ ーミッションとロールのフォームを追加しました。
- Zope 3 ベースの、Zopeが起こしたいくつかの例外のための例外viewをZCMLで
登録できるようになりました。例外Viewを以下のように登録できます:
<browser:page for="zope.publisher.interfaces.INotFound" class=".view.SomeView" name="index.html" permission="zope.Public" />
これに関連する、Viewを持っている例外は:
- zope.interface.common.interfaces.IException
- zope.publisher.interfaces.INotFound
- zope.security.interfaces.IForbidden
- zope.security.interfaces.IUnauthorized
注意として、例外viewが動作するためには name は index.html でなけれ
ばならない。(patch by Sidnei da Silva from Enfold,
integration by Martijn Faassen (Startifact) for Infrae)
- DateTime のタイムゾーンデータに pytz を使うようになりました。これによ って多くのタイムゾーン追加と夏時間情報の更新されました。
バグ修正(Bugs Fixed)
- Collector #2113 :
zopectl testが Ctrl-C をマスクしていて効かない問題. - Collector #2190 :
zope.security.management.checkPermission 呼び出しがZope2のセキュリテ
ィーポリシーに迂回されていなかった。
注意: もしあなたがすでにZope2.10のインスタンスを使用しているなら、 イ ンスタンスを作り直すか、以下の数行をetc/site.zcmlファイルに追加する必 要がある:
<securityPolicy component="Products.Five.security.FiveSecurityPolicy" /> - Collector #2223 : TALESにおけるboolean評価時のdefaultの扱いについて。
- Collector #2213 : "古い" ZopePageTemplateを編集できない問題を修正。
- Collector #2235 :
いくつかの ZCatalog メソッドがオブジェクトのブール評価行っていたため、
Noneではなく__len__で評価されていた。いくつかの
if not objをif obj is Noneに置き換えた。
参考: CHANGE.txt の原文(英語)