Sympa 6.1.19

提供: Sympa-JA
移動: 案内, 検索

目次

Sympa 6.1.19をリリース

原文 (英語)

技術・教育・研究全国通信網 (RENATER、フランス) は、Sympaの新版をオープンソースコミュニティにリリースいたします。

今回リリースするSympa 6.1.19は、Sympaの最新安定版です。

本リリースの変更点は以下のとおりです。

重要な変更

[仕様追加] 言語ごとのcss.tt2でサイト全体のCSSすべてを置き換えるのではなく、一部だけを上書きできるようになりました。ロケールに応じたカスタマイズが可能です。たとえば、初期値のcss.tt2は西洋の用字系 (ラテン文字、キリル文字など) のみに適したフォントファミリを指定していますが、東アジアのユーザは西洋のみならず東洋の用字系 (漢字、ハングルなど) にも対応したフォントファミリを指定したいでしょう。Sympaをインストールすると、default/web_tt2/<locale> (<locale> の箇所は“ja_JP”、“ko_KR”、“zh_CN”、“zh_TW”) にロケール専用のCSSができます。

[変更] newaliases以外のエイリアス管理ユーティリティを、特別なconfigureオプションやalias_manager.plへのパッチ当てなしに使えるようになりました。aliaswrapperとvirtualwrapperは廃止され、sympa_newaliases-wrapperに置き換えられました。新しいエイリアス管理プログラムsympa_newaliases.plがこのラッパを通じてalias_manager.plから呼び出されるようになりました。 新たなサイト設定パラメータaliases_db_type、aliases_programでエイリアス管理の動作を制御できます。 configureスクリプトの--with-sendmail_aliasesオプション、--with-virtual_aliasesオプションは廃止されました。代わりに--with-aliases_fileオプションを使ってください。新たに--with-makemapオプション、--with-postaliasオプションが追加され、従来の--with-newaliasesオプション、--with-postmapとともに使えます。--with-postmap_argオプションは削除されました。 エイリアスマネジャ (alias_manager.pl、ldap_alias_manager.pl、mysql_alias_manager.pl) は、newaliaseスタイルのマップ (「:」で区切る) だけでなくpostmap/makemapスタイルのマップ (空白文字で区切る) を扱えるようになりました。

[バグ修正] 権限のない人が制限のある一部の機能にアクセスできていました。「スキン、CSS、色」の機能に誰でもアクセスして操作可能でした。テンプレートの削除では、引数をチェックしていませんでした。機能を定義するハッシュの記述に間違いがありました。また、無意味な定義もありました。

[バグ修正] [#6180][#6979][#7079][#8056] ほぼ同時に複数のHTTPリクエストがある場合 (たとえば、投稿保管庫のページにいくつか添付画像がある場合) に、セッションが中断する。 データベースの変更が必要です。session_tableに2つのフィールドを追加しなければなりません。prev_id_session (varchar(30)) と refresh_date_session (int(11)) です。通常、MySQLとSQLiteでは自動で変更されます。Postgres、Oracle、Sybaseではデータベースの構成を手作業で変更しなければなりません。 暗号化されたセッションクッキーを使用するには、Crypt-CipherSaberモジュールが必要です。 セッションIDの更新がアクセスごとに起こらなくなり、cookie_refreshパラメータで指定される間隔で起こるようになりました。セッションIDをそのままクライアントに送ることはなくなり、暗号化されたIDをクッキーに使うようにりました。前者によってセッション中断はなくなりますが、再生攻撃 (replay attack) への耐性は低くなることになります。後者によって、セッションクッキーの予測困難性は保たれます。

メッセージ操作

[仕様追加] [S. Shipway (オークランド大学) からの提供] メールの個別化を有効にしているときに、次のパラメータをヘッダから取得して利用できるようになりました。 subject x-originating-ip message-id date x-original-to from to thread-topic content-type

[仕様追加] 新たなサイト設定パラメータ“sender_headers”で、メッセージの送信者を特定するヘッダを指定できるようになりました。これはS. Shipwayによる下記の変更をさらに強化したものです。

[変更] [S. Shipway (オークランド大学) からの提供] Sympaが「From」ヘッダフィールドのないメッセージを受け取った場合、“Envelope-From”、“X-Sender”、“Return-Path”から送信者を探す。

[バグ修正] Message::fix_html_part() がUTF-16などのキャラクタセットで符号化されたメッセージを壊す。また、Encodeモジュールの仕様により、バイト順マーク (BOM) のないUTF-16テキストでSympaがクラッシュする。 メッセージがUTF-8かUS-ASCIIで符号化されていなければ、各パートをキャラクタセット変換することにしました。 今後、UTF-16に対応していないいくつかの関数への修正が必要です。

[バグ修正] 暗号化されたメッセージを送信する際に、リストにはごくわずかの読者の証明書しか提供されていないことがあります。このような状況で、非VERPの送信先がまったくないと、メッセージがまったく送信されませんでした (メッセージ配送は中止され、VERPの送信先にも配送されませんでした)。それぞれの状況での送信先数を検査してログに情報を出力する一方、配送は中止しないように修正しました。

[バグ修正] [S. Shipway (オークランド大学) より報告] メッセージ個別化が有効になっているリストで、署名付きのメッセージまで個別化してしまう。署名付きのメッセージは絶対変更すべきではないので、そういったメッセージがリストに届いたら個別化を無効にする。なお代替策として、リストに証明書があればメッセージの署名を取り除いてからリストで署名することも考えられます。この対策についてはSympaの今後の版で検討します。

[バグ修正] DKIMを有効にしているときに無効なDKIM署名を削除すると、S/MIME署名が壊れる。

[バグ修正] メッセージに前付けや後付けを追加しても、「append」を指定している場合、メッセージがHTMLメールのときは、受け取った読者に見えない。 これは前付けや後付けがtext/plainパートにのみ追加されていたためです。text/htmlパートにも追加されるよう変更しました。

[バグ修正] メッセージの個別化がonのとき、[% to %]をメッセージに含めることにより、全部または一部の読者のアドレスが披瀝されてしまう。Bulk::merge_msg() に渡されるパラメータから「recipients」要素を取り除くことにより修正。

読者管理

[仕様追加] [数えきれないほど多くのリストシステム管理者より報告] 除外一覧では除外された人を見ることしかできませんでした。リストのオーナーが読者登録を再開させたくてもどうしようもありませんでした。同ページを読者一覧ページと同様のフォームとし、読者登録を再開できるようにしました。

[仕様追加] [S. shipway (オークランド大学) より提供] 読者一覧ページに読者の電子メールアドレスの頭文字のリンクを追加。

[バグ修正] [#8684][D. Fournier (CNRS) より報告] 特定の操作 (たとえば「Sympaの管理」→「人」で人の電子メールアドレスを変更するなど) で、“update”設定に電子メールアドレスが設定されず、ログに'Missing key“email”in param“update”in...' が報告される。

認可

[変更] [S. Shipway (オークランド大学) より提供] 日々のモデレーション業務の便のための権限変更。 オーナーとリストシステム管理者がメッセージや共有文書保管庫のモデレーションをできるようにしました。 モデレータが読者登録のモデレーションをできるようにしました。 各ページで 'del' および 'add' のシナリオを実行するようにしました。

[バグ修正] [M. Ferrante より報告] シナリオの条件中でヘッダフィールドの扱いが一貫していない。 新たな仕様として、“[msg_header->field][index]”で特定のフィールドの値を返すようになりました (indexは負でもかまいません)。 “[msg_header->field]”は依然としてヘッダフィールドの値のリストを返しますが、順序が保たれるようになりました。修正点としては、is_listmaster、is_owner、is_editor、is_subscriberの各条件は複数値の引数を取れるようになりました。またこれらの条件では、引数をヘッダフィールド値とみなしてパースし、メールアドレスのみを取得します。

[バグ修正] シナリオで調べるヘッダフィールドを制限しました。 spam_statusシナリオではX-Spam-status等のフィールドの各々最後に現れるもののみ調べるようになりました。最後以外は信頼できません。またX-Senderフィールドも最後のものだけ調べます。sendシナリオでは最初に現れるContent-Typeフィールドのみを調べるようになりました。これは一度しか出現しないはずです。

[バグ修正] [#7825] [D. Marant (リール第1大学) より報告] コマンドアドレスに送ったメッセージに対してspam_statusシナリオが効かない。sympa::DoCommand()の誤字を訂正。

[バグ修正] [#7526] [Evili del Rioより提供] SQLフィルタが常に偽を返す。SQLSource::fetch()が返すものは列値の配列参照の配列参照でありえますが、列値の配列参照として扱われていました。

国際化

[仕様追加] リストのパラメータのオプションや読者オプションの表示を国際化。edit_listページのオプションの表示を国際化しました。実際の設定値はリストシステム管理者のときだけ表示します。読者一覧、コマンドの結果、読者オプションページなどのオプションの表示も国際化 (実際の設定値も表示)。

本リリースでは以下の言語の翻訳が更新されました。Sympaを世界に広めるために重要な働きをして下さっているSympa翻訳者の皆さんに深く感謝いたします。

  • バスク語 (“Dabid”による)
  • カタルーニャ語
  • チェコ語
  • 英語
  • フィン語 (J.P. Paloposkiによる)
  • フランス語 (RENATERチーム)
  • ガリシア語 (X. Mosqueraによる)
  • ドイツ語 (R. Heiderによる)
  • イタリア語
  • 日本語 (S. Ikedaによる)
  • オック語 (C. Valmaryによる)
  • ブラジル・ポルトガル語 (I. fontes Ferreiraならびに“Gomex”による)
  • ロシア語 (S. Dukachevによる)
  • スペイン語 (A. Marinによる) なお、スペイン語翻訳者のためのメーリングリストが発足しています。sympa-es@listes.renater.fr。Sympaのスペイン語翻訳にご協力いただけるかたは読者登録してください。
  • スウェーデン語 (P. FreyhultならびにM. Amnefeltによる)
  • トルコ語

前回のリリース後、新たな翻訳プロジェクトが追加されています。イドエスペラントラテン語です。Sympaをご自分の言語で使いたいかた --- そしてご自身や友人とともにそれに協力していただけるかたは、Sympa作者にご一報ください。共同で作業したいかたは、スペイン語翻訳者のみなさんがしたように、私共に翻訳者用のメーリングリスト作成をご依頼ください。

  • アフリカーンス語
  • アラビア語
  • バスク語
  • ブークモール
  • ブルトン語
  • ブルガリア語
  • カタルーニャ語
  • 中国語 (中国)
  • 中国語 (台湾)
  • チェコ語
  • オランダ語
  • 英語
  • 英語 (合衆国)
  • エスペラント
  • エストニア語
  • フィン語
  • フランス語
  • ガリシア語
  • ドイツ語
  • ギリシャ語
  • マジャル語
  • イド
  • インドネシア語
  • イタリア語
  • 日本語
  • 韓国語
  • ラテン語
  • マラヤーラム語
  • ニーノシク
  • オック語
  • ポーランド語
  • ポルトガル語
  • ポルトガル語 (ブラジル)
  • ルーマニア語
  • ロマンシュ語
  • ロシア語
  • スペイン語
  • スウェーデン語
  • トルコ語
  • ベトナム語

認証

[バグ修正] [P. Aepli (ジュネーヴ大学) より報告] Shibboleth IdPから複数値のパラメータが渡された場合に正しく処理できない。これは、Sympaが追加のパラメータを“key1=value1;key2=value2;……”の形式で保存していたためです。Shibbolethでは複数値属性の値をセミコロンで区切るため、値が別の空属性のものと解釈されてしまいます。Fixed by separating keys and values by totally unlikely strings.

Sympaとデータベース

[仕様追加] [S. Shipway (オークランド大学) より提供] データソースとしてODBCに対応しました。

[バグ修正] データベースのDKIM用フィールドが短すぎる。dkim_privatekey_spoolを1000オクテットから2000オクテットに拡張しました。

[バグ修正] [debian#642464] [元は E. Bouthenot (Debian Project) の提供] 最初のインストールやアップグレードの際、SQLiteを使うと失敗する。参照 http://bugs.debian.org/642464

[変更] MySQLで、BMP外のユニコード追加文字を使えない。MySQL 5.5.3から、テキスト型は4オクテットのUTF-8文字 (いわゆるutf8mb4) を使えるようになりました。これにより、人名の漢字など追加の文字が使えるようになります。 クライアント側の文字集合としてまず「utf8mb4」、次に「utf8」を試すようにしました。 注意: サーバでもutf8mb4を有効にしなければなりません。でなければ追加文字は単に無視されます。my.cnfに“character-set-server=utf8mb4”の行を追加すれば有効になります。 テーブルには“DEFAULT CHARACTER SET utf8mb4”オプションが指定されていなければなりません。そうなっていなければ“ALTER TABLE”クエリで既存のテーブルの初期キャラクタセットを変更すればそうなります。

[バグ修正] MySQLで、セッションのキャラクタセットが初期化される。プロセスがmod_perlやCGIの環境下で実行されている場合、connect()関数は“mysql_auto_reconnect”ドライバ属性を真に設定するため、ping()関数が常に成功するようになり、再接続の際に“SET NAMES utf8”が実行されません。connect()関数が成功した直後に属性をリセットすることにより修正。

[バグ修正] [#8466][#8468][Marton J. (ブダペスト工科経済大学) 提供のパッチを修正] Oracleがメッセージをlong型として扱えない。

  • DBI::Oracleは初期設定でLongReadLen=80となっているため、このドライバではbulkspool_tableの80文字より長い列を含む行を取得できませんでした。
  • DBI::Oracleは約2600オクテット (base64符号化により4000オクテットになる) を超えるメッセージを送るとエラーを発生させます。

元のパッチはSympa 6.0.1に対するものでしたが、sympa-6.1-branch用に書き換えました。 $dbh->{'LongReadLen'}をmax_size * 2に設定します。 長いテキストリテラルを避けるため、SQLにメッセージをバインドしたパラメータとして渡します。 書き換えたパッチでは、同様の考慮が必要なSybaseにも対応しました。

[バグ修正] [#8628][Marton J. (ブダペスト工科経済大学) 提供] 不適切なコネクションプーリング。データベースユーザを考慮していませんでした。修正したパッチを適用。

[バグ修正] [#8629][Marton J. (ブダペスト工科経済大学) 提供] Oracleの日付を変換する式の誤り。正午を過ぎると1日進んでいました。

[バグ修正] [#8669] create_db.SQLiteが最新の内容になっていない。

[バグ修正] [#7459][Mitar提供] アップグレード中にPostgreSQLのユーザスキーマにあるテーブルが認識されない。

設定族

[仕様追加] リストの属する設定族のディレクトリに“scenari”ディレクトリを作成できるようになりました。ここに置かれたシナリオは設定族に属するリストで利用できます。“scenari”ディレクトリは設定族のディレクトリの下に作成しなければならず、“families”ディレクトリ直下に作成しても機能しません。たとえば“staff”設定族用のシナリオを定義したければ、/home/sympa/etc/families/staff/ディレクトリの下にscenariディレクトリを作成します。/home/sympa/etc/families/の下ではありません。

[仕様追加] Now the list of files parsed (in addition to config.tt2) when instantiating a family are defined in a new (sympa.conf and robot.conf parameter called 'parsed_family_files'. This parameter must contain a comma-separated list of file names. If these files exist, with the '.tt2' extension in a family, they will be parsed and added to the list directory. The default value of the parameter is 'message.footer,message.header,message.footer.mime,message.header.mime,info'.

[変更] Now 'message.footer','message.header','message.footer.mime','message.header.mime','info' files are updated in existing lists when a family is instantiated. note that it will overwrite any other customization.

[バグ修正] In scenarios, the field [msg->spam_status] was never taken into account because the message objects fields were not made available to scenarios. Fixed by adding a new test in Scenario::request_action. Now any Message field can be accessed in scenarios.

Sympaのカスタマイズ

[変更] カスタムパラメータの値はどんな文字でも含むことができるようになりました (これまでは空白文字を使えませんでした)。

[変更] 「スキン・CSS・色」で色をテストしている間は、カスタマイズ中の色と設定されている色を並べて表示する。javascript.jsのchooseColorNumber()を、チャート上の位置を更新するよう改善。

投稿保管庫の管理

[変更] 脆弱性対策として、MHonArc 2.6.18を使うべきです。CVE-2010-4524、CVE-2010-1677を参照。

リストの管理

[バグ修正] “info.conceal”シナリオがパッケージに含まれておらず、インストールされなかった。

ウェブインタフェース

[バグ修正] スタイルシート (CSS) に対する若干の修正。 css.tt2の修正。特殊文字が文字参照に置き換わっていました。 一部の要素のメトリックを調整し、ほとんどのモダン・ブラウザで正常に表示できるようにしました。 IEのバグに対する回避策の追加 (これはSympaに起因するバグではありませんが)。IE 7以降では概ねまともな表示が得られるようになりました。が、IE 6以前はそうではありません。

[バグ修正] [#8712][L. Didry (CIRIL) より報告] ロボットの設定変更ページで、データベースパスワードが平文テキストで表示される。アスタリスクに置き換えて表示するようにしました。

[バグ修正] [#8916][A. Bernstein (Electric Embers) より報告] wwsympaのsearchで、“other similar subscribers”の結果の日付が人間可読な表示にならない。tt2パラメータのdateとupdate_dateをフォーマットするようにしました。

[バグ修正] [#8662][A. Bernstein (Electric Embers) より報告] wwsympaのarcsearchで、HTMLにUTF-8でないバイト列が含まれると“Malformed UTF-8 character (fatal)”エラーでクラッシュする。Marc::Searchは大文字小文字を同一視する照合のために、内部的にユニコードを用います。“:utf8”入力レイヤを“:encoding(utf8)”レイヤに置き換えました。前者は入力された内容の検査をしません。

SOAPインタフェース

[バグ修正] [#7318] sympasoapのエンコーディングの問題。UTF-8文字列がlatin-1文字列として扱われ、2度エンコードされていました。

データソース

[変更] LDAP二段階クエリの中間結果で '\'、'('、')'、'*'、ヌル文字 (\0) をエスケープするようになりました。

[バグ修正] [F. Périchonより報告] データソースから取り込まれた人でも、“unsusbscribe”シナリオで登録解除を許可されているリストなら登録解除できてしまう。登録解除は正常に行われるが、読者登録しなおしたときにリストシステム管理者と本人とにエラーが通知される (再取り込みの際に読者数を増やしていないため)。テストを修正し、除外テーブルからの削除でも読者数を増やすよう修正。

[バグ修正] [Ö. Sahin (リヨン第2大学) より報告] List::new()メソッドを呼ぶと、特に指定しない限りsync_include_adminが必ず実行される。データソースから取り込んでいるオーナーやモデレータが多いと、リストの検索やリストの一覧の表示の際にデータソースへ大量のクエリが発行される。この動作を変更し、get_lists() を呼んだときはsync_include_admin()を常に実行するのではなく 'ttl' および 'ditribution_ttl' パラメータの期限を超過したときだけ実行するようにしました。

Sympaの設定

[バグ修正] 一部のwwsympa.confのパラメータが@confdef::paramsに定義されていなかったり、初期値がwwslib::load_config() でも重複して定義されていたりしました。

  • 次ののものを@confdef::paramsに追加しました。custom_archiver review_page_size viewlogs_page_size htmlarea_url。
  • 次のものを削除しました。robots (wwsympa.confのパラメータ)。
  • wwslib::load_conf() で、初期値を@confdef::paramsから取得するようにしました。

判明しているバグ:

  • 次のものはwwsympa.confを参照したりsympa.conf/robot.confを参照したりと一貫していません。arc_path。
  • 次のものは初期値についてはsympa.conf/robot.confを参照しますが、wwsympa.confも参照しています。cookie_domain。
  • 次のものはwwsympa.confのパラメータとして定義されているにもかかわらず、sympa.conf/robot.confを参照します。password_case title default_home ldap_force_canonical_email。

内部仕様

[バグ修正] [#7819] 仮想ホストのリストであっても、リストの作成がサイト全体のリストシステム管理者だけに通知されていました。

[バグ修正] [#8711][匿名の貢献者“Luke”より提供] NFSロックを使うときにtimeoutとstale_lock_timeoutを取り違えていたため、タイムアウトがとても長くなっていた。

[バグ修正] [#8661][Y. Rouillard (INRA) より報告] Lock::remove_lock() がLockオブジェクトを正しく破棄しない。ロックのファイルハンドルだけでなくロックそのものを消去するようにしました。

[バグ修正] [#8650] pod2manが非ASCII文字を含むPODを処理できない。6.2-branchからの部分的なバックポートにより、非ASCII文字にE<...>を使うことでPODソースにASCIIしか含まれないようにしました。同時に、古くなっていたいくつかの説明を訂正しました。


以上です。 Sympa開発者

Sympa

提供 RENATER

個人用ツール
名前空間

変種
操作
案内
ツール