これはあくまでも予備的なアナウンスです。リリースアナウンスではありません。 #ソフトウエアデザイン4月号とシンクロしようとしてちょっとしませんでしたが;) --------->8--------->8--------->8--------->8--------->8--------->8--------->8 次世代 fml プロジェクト http://www.fml.org/devel/fmlsrc/index.ja.html Copyright (C) 2001 Ken'ichi Fukamachi 改変しない限り再配布は自由です fml 5.0 への道(はるかなる道)について現在次のように構想しています。 基本的な考え方は fml 4.0 の”機能”を再構想/再実装することです。 まず最初にしたいことは 4.0 の機能についての再検討です。例えば 5.0 へ引き継ぐものは何か? 5.0 でもっとうまく、よりカスタマイズしやすいものに実装できないか? もう要らないものは何か? についての意見を募集したいと思っています。ですが、漠然と議論してもしょ うがないので、議論の叩き台としてある程度動くものを作りました。 ftp://ftp.fml.org/pub/fml-devel/ にあります。まだまだ 5.0 の α 版ではなく、プロトタイプですらないので、 リリースなどではありません。これは、あくまでもアイデアを表現するための ものですが、配送プログラムとしては十分動きます。fml-devel MLをはじめ として、いくつか運用テストに入っているものがあります。 #注: 実運用には fml-devel を使わずに 4.0 stable を使って下さい。 # fml-devel は開発用 fml-current ですらありません。 現状動いている機能は fml 1.2 相当の最低限の機能 + postfix スタイルの設定ファイル + IPv6 + チケットシステム(最小限の機能、CGI 含む) + 抽象化 IO 層 メンバーファイルをファイル、/etc/group, NIS, MySQL から取り出す。 # 3 行くらい変更すれば PostgreSQL も動くはず 程度です。ざっくりとしたイメージは sendmail と postfix のような違いか と個人的には思っています。 ○ fml 4.0 と 5.0 の関係 http://www.fml.org/devel/fmlsrc/fml/doc/purpose.ja.html 4.0 と 5.0 はアイデアは継承していても、起源は別です。 図解すれば次のようなものといえます。 -----------------------------> 5.0 (本プロジェクトの目標) ↑↓交流 1.2 〜 4.0 ------------------------------> 4.0-current | | 4.0.1 4.0.2 .... (リリース / 4.0-stable バージョン) 今後 4.0 シリーズに投入する新機能は、原則として 5.0 ライン上で作ったも のを逆輸入する形になるでしょう。 ○ fml5で既に動く機能 http://www.fml.org/devel/fmlsrc/fml/doc/built_already.ja.html これらのものは /usr/local/libexec/fml以下にインストールされます。実際には /usr/local/libexec/fml/loaderへのリンクです。起動される時の名前で振舞いを変 えています。 注意: fml5ではすべてのプログラムは /usr/local/libexec/fml/loaderを経由して 起動されます。バージョン依存性を処理するために、つねにこの loaderを通して 起動していくことになっています。 +------------------+--------------------------------------------------------+ |fml.pl |配送処理をする。subjectを書き換える。スプールに記事とし | |distribute |て溜める。IPv6をしゃべる。チケット番号をふる。et. al. | +------------------+--------------------------------------------------------+ |command |プログラム自体は動きますが、機能するコマンドはまだない | |fml.pl --ctladdr |です。 | +------------------+--------------------------------------------------------+ |makefml |登録と削除関係、および最低限のMLの作成だけは動きます( | | |add subscribe | | |bye unsubscribe resign remove | | |そして newml)。使い方は fml 4.0と一緒です。 | | |% makefml add elenaアドレス | | |% makefml bye elenaアドレス | | |% makefml newml elena | +------------------+--------------------------------------------------------+ |makefml.cgi |makefmlの CGIインターフェイス。うごくけど、まだプロトタ | | |イプ。動く機能は makefmlと同等のものです。それは最終的 | | |に makefmlと同じ関数を呼び出しているからです。 | +------------------+--------------------------------------------------------+ |fmlconf |変数一覧を表示します | +------------------+--------------------------------------------------------+ |fmldoc |モジュールのマニュアルを表示する | | |perldocへの wrapperです。 | +------------------+--------------------------------------------------------+ |fmlticket |現在のチケットシステムのサマリを表示する | | |チケットの close | +------------------+--------------------------------------------------------+ |fmlticket.cgi |fmlticketの CGI版 | | |チケットを closeする。あるチケットに該当する記事群を表 | | |示する。 | +------------------+--------------------------------------------------------+ |mead |ま〜だだよ | +------------------+--------------------------------------------------------+ |fmlserv |ま〜だだよ | +------------------+--------------------------------------------------------+