<!--
	$FML: preface.sgml,v 1.6 2001/04/26 09:27:45 fukachan Exp $
-->

<preface>

<title> 前書き </title>

<!-- ======================================================== -->
<sect1>

<title> はるかなる fml 5.0 への道 </title>

<para>
fml 5.0 とは fml 4.0 を一から書き直す次世代 fml プロジェクトの総称です。
fml 4.0 までに至る約 10 年の経験を再実装する試みといえます。
これには何年もの歳月がかかるでしょう。
</para>

<warning>
<para>
	実運用には fml-devel を使わずに 4.0 stable を使って下さい。
	fml-devel は開発用で、 fml-current ですらありません。
</para>
</warning>

<para>
fml 5.0  への道(はるかなる道)について、
現在次のように構想しています。
基本的な考え方は fml 4.0 の”機能”を再構想/再実装することです。
</para>

<para>
まず最初にしたいことは 4.0 の機能についての再検討です。
例えば、次のような項目です。

<itemizedlist>

   <listitem>
	<para>
	   5.0 へ引き継ぐものは何か？
	</para>
   </listitem>

   <listitem>
	<para>
	   5.0 でもっとうまく、よりカスタマイズしやすいものに実装できないか？
	</para>
   </listitem>

   <listitem>
	<para>
	   もう要らないものは何か？
	</para>
   </listitem>

</itemizedlist>

これらについての意見を募集したいと思っています。ですが、漠然と議論して
もしょうがないので、議論の叩き台としてある程度動くものを作りました。

	<ulink url="ftp://ftp.fml.org/pub/fml-devel/">
	ftp://ftp.fml.org/pub/fml-devel/
	</ulink>

にあります。まだまだ 5.0 の α 版ではなく、プロトタイプですらないので、
リリースなどではありません。これは、あくまでもアイデアを表現するための
ものですが、配送プログラムとしては十分動きます。fml-devel ＭＬをはじめ
として、いくつか運用テストに入っているものがあります。
</para>

<para>
最初に実装するのは
<emphasis>
fml 1.2 相当の最低限の機能
</emphasis>
だろうと考えています。
</para>

<para>
ざっくりとしたイメージは sendmail と postfix のような違いになるだろう
と個人的には思っています。
</para>

</sect1>


<!-- ======================================================== -->
<sect1>

<title> fml-devel プロジェクトの構想 </title>

<para>
fml 5.0 ないしは
<ulink url="http://www.fml.org/devel/">
fml-devel 
</ulink>
とも呼んでいる fml 5.0 プロジェクトは、
fml 4.0 の再構想(refactoring)とその実装(例)の構築
を行なっています。
</para>

<para>
<ulink url="http://www.fml.org/devel/">
http://www.fml.org/devel/
</ulink>
では将来の fml-current についてのデザインや実装例を紹介しています。
</para>


<para>
これは fml 5.0 のアイデアを募るための、
fml 5.0 のアルファ版のアルファ版のアルファ版
もしくは
プロトタイプ
とでもいうべきものです。ですが、すでに動く実装例をダウンロードできます
し、fml 1.2 相当の機能を使うこともできます。しかしながら、変数名もアー
キテクチャアも本決まりではないので、将来変わる可能性があります。
</para>

<para>
また、多くの機能が実装されていません。これは、デザインを最初から考え直
すにあたり、アイデアや意見を募集するためにまだまだ原型にとどまっている
ためでもあります。
</para>

<para>
ものによっては fml 5.0 用に作られたモジュールを fml 4.0 へ
輸入/輸出することも検討しています。
たとえば 4.0 でも独立性の高い mead (エラーメール解析プログラム)などは
その良い例だろうし、新機能を提供するモジュールなども再輸入(輸出)可能な
ものは順次マージしていきます。
</para>

</sect1>


<!-- ======================================================== -->
<sect1>

<title> fml 4.0 と 5.0 の関係 </title>

<para>
fml-devel で作られたモジュールのマージおよび 
4.0 自体のコードの保守をしつつ、
4.0 と 5.0 は並行開発されていく予定です。
</para>

<para>
そのため 4.0 系は stable に近い current という位置付けになります。
そして 4.0 の bug fix は 4.0.x (4.0.1 4.0.2 …)としてまとめられリリー
スれていく予定です。
逆に 5.0 は本当の開発用のコード( fml-current )ということになります。
</para>

<screen>
             -----------------------------> 5.0 (本プロジェクトの目標)
                       ↑↓交流
1.2  〜 4.0 ------------------------------> 4.0-current
              |      |
            4.0.1   4.0.2 .... (リリース / 4.0-stable バージョン)
</screen>

<warning>
<para>
	実運用には fml-devel を使わずに 4.0 stable を使って下さい。
	fml-devel は開発用で、 fml-current ですらありません。
</para>
</warning>

</sect1>

<!-- ======================================================== -->
<sect1>
	<title> fml5で既に動く機能 </title>

<para>

<itemizedlist>

   <listitem>
	<para>
		postfix スタイルの設定ファイル 
	</para>
   </listitem>

   <listitem>
	<para>
		配送、ヘッダの書き換え、(単純な)フィルタ
	</para>
   </listitem>

   <listitem>
	<para>
		いくつかのユーティリティプログラム:
		fmldoc fmlconf makefml fmlticket
	</para>
   </listitem>

   <listitem>
	<para>
		IPv6 
	</para>
   </listitem>

   <listitem>
	<para>
		チケットシステム(最小限の機能、CGI 含む):
		fmlticket fmlticket.cgi
	</para>
   </listitem>

   <listitem>
	<para>
		抽象化 IO 層

		メンバーファイルをファイル、/etc/group, NIS, MySQL 
		から取り出すことができます。
	</para>
   </listitem>
</itemizedlist>


<link linkend="available"> 詳細はこちら </link>
</para>

</sect1>

<!-- ======================================================== -->
<sect1 id="mailinglist">

	<title> メーリングリスト </title>

<para>
fml 5 の議論のためのメーリングリストを用意してあります。
</para>

<para>
登録の仕方はいつもと一緒です。

fml-devel MLへの自動登録は fml-devel-ctl@ffs.fml.org へ 
subscribe の後に自分の名前をローマ字で続けたフレーズをメールの"本文"
(注意: メールの本文)に書いて送って下さい。例えば次のようになります。

<screen>
To: fml-devel-ctl@ffs.fml.org

subscribe Kinomoto Sakura
</screen>

このメールに対し、登録意志確認のメールが送り返されてきます。
そのメールに返事をしてください。
ＭＬに登録されます。
</para>

<para>
fml-devel ＭＬのログは
	<ulink url="http://www.fml.org/mlarchives/">
	http://www.fml.org/mlarchives/
	</ulink>
で公開しています。
</para>

<para>
ＭＬに参加しないが、要望等を送りたいという場合、ＭＬではなく 

	<ulink url="mailto:fml-request@fml.org">
	fml-request@fml.org
	</ulink>

へメールを送って下さい。このメールは適宜 fml-devel 等に流して議論した
いと思います。他にフォワードなどされたくない場合はその旨を一筆書いてお
いて下さい。
</para>

</sect1>


<!-- ======================================================== -->
<sect1>

<title> ご意見募集中 </title>

<para>
5.0 のアイデアのついて、
<ulink url="mailto:fml-request@fml.org">
ご意見・御感想をお待ち
</ulink>
しております。
端的にいえば 4.0 のここは受け継ぎたいが、あの機能は
どうでもよいとか、あの機能はこう実装するべきだなどといった
意見も募集しています。
</para>

</sect1>


<!-- テクニカルタームの定義を与える -->
&sect.terms;


</preface>
