このファイルには現在の Zope リリースでの変更点を記載しています。 これ以前の変更については HISTORY.txt を参照してください。
メソッド manage_afterAdd, manage_beforeDelete, manage_afterClone の deprecation 警告を discouraged 警告に変更した。これらのメソッドは Zope 2.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’ 属性によるプロダクトの初期化の推奨 されないサポートを削除。
0 に設定。
OFS Image: 画像とファイルで isinstance(data, str) を使うように更新し、 unicode オブジェクトに遭遇した場合は TypeError を raise するようにした。
OFS Application: deprecation warnings (推奨しないことを表す警告) を更新した。 ‘__ac_permissions__’ と ‘meta_types’ サポートを Zope 2.11 で削除し、 ‘methods’ サポートはまだ残す。
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 リクエストに、 Zope 3 に相当する debug と locale の属性を持つようになった。 debug 属性は今までのところ、 Zope 3 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サポート対応)
最新の Zope 3 コンポーネントをインテグレート (Zope 3.4)
Windows で zopectl を使えるようになりました。全てのコマンドがサポートさ れています。また、 Windows 専用に2つのコマンド install と remove が追加 されています。これらは Windows Service への登録と解除を行います。 start, stop, restart の各コマンドは Windows サービスを操作します。これ らのコマンドを使用する前に ‘binzopectl 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 を持っている例外は:
注意として、例外 view が動作するためには name は ‘index.html’ でなけれ ばならない。(patch by Sidnei da Silva from Enfold, integration by Martijn Faassen (Startifact) for Infrae)
DateTime のタイムゾーンデータに pytz を使うようになりました。これによ って多くのタイムゾーン追加と夏時間情報の更新されました。
Collector #2113: ‘zopectl test’ が Ctrl-C をマスクしていて効かない問題.
Collector #2190: zope.security.management.checkPermission 呼び出しが Zope 2 のセキュリティーポリシーに迂回されていなかった。
注意: もしあなたがすでに Zope 2.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 に置き換えた。
(Translated by Shimizukawa, r104363)