*****    Changes which are not compatible with previous versions are
*****    listed using "*****"in the margin. Please check this at least.

(See Changelog file for the full changes log)

6.2.16		June 17, 2016

  Features:

	[12807] src/cgi/wwsympa.fcgi.in, src/lib/Sympa/List.pm:  WWSympa:
	"including_lists" page to get lists including particular lists.  This
	page is accessible only by list owners and listmasters.

	[12805] src/lib/Sympa/List.pm:	Now looping by include_list settings
	can be detected.  Inclusion is skipped if a setting will cause looping.



  Changes:

	[12810] default/web_tt2/help_editlist.tt2, src/lib/Sympa/Admin.pm,
	src/lib/Sympa/List.pm, src/lib/Sympa/ListDef.pm,
	src/lib/Sympa/Upgrade.pm:  'include_sympa_list' parameter obsoletes
	'include_list' parameter in list config and named data sources.  Older
	one may still be used and mapped to newer one internally.

	[12806] src/lib/Sympa/Spindle/ProcessModeration.pm: [REported by J.P.
	Barrière, ENIT] Now when a message is successfully moderated, a DSN is
	sent to the original author.

  Bug fixes:

	[12837] src/lib/Sympa/Upgrade.pm:  When upgrading from versions older
	thant 5.0, upgrade would fail some steps because the call to List::new
	did not use the domain name.

	[12831] src/lib/Sympa/Language.pm, src/lib/Sympa/ModDef.pm:  [Submitted
	by X. Bachelot] Older version of Locale::Messages is available on
	several distributions (e.g. RHEL/CentOS 6/7), while Sympa requires 1.22
	or later.  The patch tests the Locale::Message version and falls back
	to gettext_pp if the version is too old.

	[12827] src/cgi/wwsympa.fcgi.in: [Reported by P. Kissman, Commonwealth
	of Massachusetts and D. Stoye, Univ. Berlin] The subindex page did not allow to actually
	accept/reject subscriptions. This was because of a badly named
	parameter passed to the templates.

	[12821] src/lib/Sympa/DatabaseDriver/PostgreSQL.pm:  PostgreSQL: With
	DBD::Pg 3.x, non-ASCII inputs are broken.
	DBD::Pg 3.x needs "utf8 flags" for text parameters of queries, even if
	pg_enable_utf8 option is disabled.  As a workaround, now parameters fed
	to queries will be decoded to Unicode strings.	This fix is
	experimental.

	[12819] src/lib/Sympa/Marc/Search.pm:  WWSympa: arcsearch crashes if a
	search key word contains "'" and search area includes "Body".
	Fixed by escaping search key words appropriately.

	[12817] src/lib/Conf.pm:  [Reported by several listmasters]
	Sympa_wizard.pl crashes if sympa.conf do never include valid
	parameters.  Fixed by initializing hashref appropriately.

	[12813] src/etc/script/sympa.servicein:  [Reported by P. Camps, Univ.
	Montpellier 2] On rebooting, Sympa cannot be started by systemd units,
	because database service may not have been started always.
	Improved sympa.service by ensuring other daemons will be started after
	invocation of sympa_msg.pl.  Note that this fix does not solve starting
	order of database service and Sympa: sympa.service should be customized
	if necessary.

	[12812] src/lib/Sympa/User.pm:	A test on the number of effected rows
	displayed an error when updating a user. Fixed by removing this test -
	which was useless as, if the query fails, an error is raised already.

	[12800] src/lib/Sympa/DatabaseDescription.pm, src/lib/Sympa/List.pm,
	src/sbin/sympa.pl.in:  [Reported by S. Rich, Duke univ.] Close List
	operation cause timeout on web interface.  Because Sympa scans all
	lists to ensure that any lists do never include the list to be closed.
	Fixed by introducing new DB table 'inclusion_table' to cache
	'include_list' configuration of lists.	The new table will be created
	and filled automatically during upgrade process.

6.2.15		May 12, 2016

  Features:

	[12772] src/bin/sympa_test_ldap.pl.in, src/lib/Conf.pm,
	src/lib/Sympa/DatabaseDriver/LDAP.pm, src/lib/Sympa/List.pm,
	src/lib/Sympa/ListDef.pm, src/lib/Sympa/ListOpt.pm:  New parameter
	"use_tls" for LDAP settings in list config, datasources and auth.conf. 
	Obsoleted parameters "use_ssl" and "use_start_tls" still can be used.
	"use_tls" takes one of following values corresponding to old ones:
	- "starttls" : use_ssl=0, use_start_tls=1.
	- "ldaps"    : use_ssl=1, use_start_tls=0.
	- "none"     : TLS/SSL is disabled. Now STARTTLS may be enabled in LDAP
	datasource configuration of lists along with LDAPS.

	[12756] configure.ac, src/etc/script/Makefile.am,
	src/etc/script/nginx-sympasoap.servicein,
	src/etc/script/nginx-wwsympa.servicein,
	src/etc/script/sympa-archive.servicein,
	src/etc/script/sympa-bounce.servicein,
	src/etc/script/sympa-outgoing.servicein,
	src/etc/script/sympa-task.servicein,
	src/etc/script/sympa-tmpfiles.confin, src/etc/script/sympa.servicein: 
	[experimental] configure can take an option "--with-unitsdir=DIR" to
	install Systemd unit files.  It would be used with "--without-initdir"
	not to install System V init scripts.
	If specified, five unit files will be installed.  A few more unit files
	to suppor nginx environment are provided but they are not installed
	automatically.

	[12734] default/mail_tt2/listowner_notification.tt2,
	default/web_tt2/info.tt2, default/web_tt2/list_menu.tt2,
	default/web_tt2/news.tt2, default/web_tt2/review.tt2,
	src/lib/Sympa/List.pm:	Unsubscription requests forwarded to owner can
	be approved or rejected using web interface.



  Changes:

	[12792] default/web_tt2/sympa_menu.tt2:  The feedback link was
	mis-interpreted by end users with their local helpdesk link. Now this
	link is visible by listmasters only (the one whose advice interest the
	Sympa developers).

	[12785] src/lib/Conf.pm: [Submitted by E. Bouthenot, openics] Disable
	email notification 'css updated' on each upgrade

	[12750] src/lib/Sympa/Message/Template.pm:  Now the DSN (error message)
	sent by Sympa has address <sympa-request@host> as "From:" field instead
	of <sympa@host>.  This change also will avoid looping between command
	addresses of two Sympa servers.

	[12743] src/cgi/wwsympa.fcgi.in, src/lib/Makefile.am,
	src/lib/Sympa/CommandDef.pm, src/lib/Sympa/Internals/Workflow.pod,
	src/lib/Sympa/Request/Handler/auth.pm,
	src/lib/Sympa/Request/Handler/invite.pm,
	src/lib/Sympa/Request/Message.pm, src/lib/Sympa/SOAP.pm,
	src/lib/Sympa/Spindle/AuthorizeRequest.pm,
	src/lib/Sympa/Spindle/ToAuth.pm, src/lib/Sympa/Spindle/ToAuthOwner.pm,
	src/lib/Sympa/Spool/Auth.pm, src/lib/Sympa.pm:	Authentication key used
	by mail commands are no longer reusable.  It will be randomly
	generated.
	Note that the keys generated by earlier releases are no longer
	available.

*****	[12729] src/cgi/wwsympa.fcgi.in, src/lib/Sympa/HTMLSanitizer.pm,
*****	src/lib/Sympa/Tools/WWW.pm:  WWSympa does no longer respect HTTP
*****	request header fields noticing the request was forwarded
*****	("X-Forwarded-Host:" etc.).  In particular cases, you may require
*****	adjusting configuration.
*****	- Now wwsympa_url parameter defines the URL publicly accessed by users.
*****	- Contrarily http_host and cookie_domain parameters indicate the URI
*****	and/or domain which are locally recognized by wwsympa, i.e taken form
*****	HTTP_HOST ("Host:" filed) and REQUEST_URI CGI environments.
*****	- "Location:" response field sent by wwsympa to cause redirection also
*****	gives local URL.
*****	If requests sent from users to wwsympa are rewritten by intermediate
*****	server(s), you should make sure that wwsympa server and rewriting
*****	server(s) are appropriately configured.  For example when the server is
*****	placed behind some sort of reverse-proxy including Apache mod_proxy
*****	(with ProxyPass), nginx (using proxy_pass) and squid (in accelerator
*****	mode).	Note that not all reverse-proxies rewrite requests.  For
*****	example, Pound does never rewrite requests by default.
*****	If it is not the case, existing configuration need not changing.

	[12722] src/cgi/wwsympa.fcgi.in:  Now [% path_cgi %] template variable
	respects "wwsympa_url" configuration parameter.  Previously it was
	taken from CGI environment variable.
	In almost all cases this change will not affect anything, however, if
	web interface started generating incorrect links, please make sure that
	the parameter is defined correctly.

	[12716] default/web_tt2/css.tt2:  css buttons alignment in messages
	moderate form in reveal modal

  Bug fixes:

	[12748] src/lib/Sympa/Spindle/ProcessIncoming.pm:  If a message without
	command is sent to the sympa@domain.tld address, a DSN is issued
	telling that the command could not be processed. If the return path to
	the original mail is a sympa@anydomain.tld, then the two Sympa
	processes will send themselves DSN in a messenging loop. The message is
	finally discarded by the loop prevention regexp but, due to the
	dyssymetry between both servers state, DSN will still be regenerated,
	re-igniting the loop. Fixed by testing whether a message in msg spool
	is a DSN report or not. As this spool is not supposed to treat any DSN,
	we can safely move such messages to bad.

	[12736] default/web_tt2/nav.tt2: [#10448] [Reported by A. Casado, Univ.
	of Almeria] If the user is not owner of any lists, "Copy an existing
	list" page on web interface is empty.  Fixed by changing template not
	to show unusable menu.

	[12735] src/lib/Sympa/Request/Handler/invite.pm:  INVITE command is
	accepted even if invited user is not really allowed to subscribe the
	list.  Fixed by appropriately checking privilege of target user.

	[12732] src/lib/Sympa/List.pm: [#10453] [Reported by A. Meaden, Univ.
	of Kent & submitted by C. Kerlin, Florida Atlantic Univ.]
	include_remote_file ignores user name and password.  Fixed by assigning
	appropriate credential.

	[12728] src/lib/Sympa/Bulk.pm, src/lib/Sympa/Spindle/ToList.pm:  logs
	displayed the wrong number of STMP sessions when a message was
	accepted, because the location where it is possible to count such
	sessions has changed. Fixed by making Sympa::Bulk::store return a
	reference to a hash containg its previous data along with the number of
	sessions to be created.

	[12726] default/mail_tt2/automatic_bounce_management.tt2,
	default/mail_tt2/d_install_shared.tt2,
	default/mail_tt2/expire_warning1.tt2,
	default/mail_tt2/expire_warning2.tt2,
	default/mail_tt2/list_created.tt2,
	default/mail_tt2/listeditor_notification.tt2,
	default/mail_tt2/listmaster_notification.tt2,
	default/mail_tt2/listowner_notification.tt2,
	default/mail_tt2/moderate.tt2, default/mail_tt2/modindex.tt2,
	default/mail_tt2/reject.tt2, default/mail_tt2/remind.tt2,
	default/mail_tt2/send_auth.tt2, default/mail_tt2/sendpasswd.tt2,
	default/mail_tt2/sendssopasswd.tt2, default/mail_tt2/summary.tt2,
	default/mail_tt2/user_notification.tt2, default/mail_tt2/welcome.tt2,
	default/mail_tt2/x509-user-cert-missing.tt2,
	default/web_tt2/active_lists.tt2, default/web_tt2/admin.tt2,
	default/web_tt2/admin_menu.tt2, default/web_tt2/arc.tt2,
	default/web_tt2/arc_manage.tt2, default/web_tt2/arcsearch.tt2,
	default/web_tt2/arcsearch_form.tt2, default/web_tt2/blacklist.tt2,
	default/web_tt2/compose_mail.tt2, default/web_tt2/copy_template.tt2,
	default/web_tt2/crash.tt2, default/web_tt2/create_list_request.tt2,
	default/web_tt2/d_control.tt2, default/web_tt2/d_editfile.tt2,
	default/web_tt2/d_properties.tt2, default/web_tt2/d_read.tt2,
	default/web_tt2/d_upload.tt2, default/web_tt2/edit_list_request.tt2,
	default/web_tt2/edit_template.tt2, default/web_tt2/editfile.tt2,
	default/web_tt2/editsubscriber.tt2,
	default/web_tt2/get_biggest_lists.tt2,
	default/web_tt2/get_closed_lists.tt2,
	default/web_tt2/get_inactive_lists.tt2,
	default/web_tt2/get_latest_lists.tt2,
	default/web_tt2/get_pending_lists.tt2, default/web_tt2/home.tt2,
	default/web_tt2/info.tt2, default/web_tt2/latest_arc.tt2,
	default/web_tt2/latest_d_read.tt2, default/web_tt2/latest_lists.tt2,
	default/web_tt2/list_menu.tt2, default/web_tt2/list_panel.tt2,
	default/web_tt2/lists.tt2, default/web_tt2/lists_categories.tt2,
	default/web_tt2/loginbanner.tt2, default/web_tt2/ls_templates.tt2,
	default/web_tt2/main.tt2, default/web_tt2/manage_template.tt2,
	default/web_tt2/menu.tt2, default/web_tt2/modform.tt2,
	default/web_tt2/modindex.tt2, default/web_tt2/my.tt2,
	default/web_tt2/nav.tt2, default/web_tt2/news.tt2,
	default/web_tt2/pref.tt2, default/web_tt2/rename_list_request.tt2,
	default/web_tt2/review.tt2, default/web_tt2/review_family.tt2,
	default/web_tt2/reviewbouncing.tt2, default/web_tt2/rss.tt2,
	default/web_tt2/search_user.tt2, default/web_tt2/serveradmin.tt2,
	default/web_tt2/suboptions.tt2, default/web_tt2/subscriber_table.tt2,
	default/web_tt2/suspend_request.tt2, default/web_tt2/sympa_menu.tt2,
	default/web_tt2/tracking.tt2, default/web_tt2/tt2_error.tt2,
	default/web_tt2/viewlogs.tt2, default/web_tt2/your_lists.tt2,
	src/lib/Sympa/Template.pm:  If the list name contains "+", incorrect
	web links are generated in service messages and web interface.
	Fixed by encoding special characters using new "url_abs" and "url_rel"
	template
	filters.

	[12720] default/web_tt2/head_javascript.tt2:  correction of calendar
	week first day

	[12719] src/cgi/wwsympa.fcgi.in:  Fixing all calls to 
	Sympa::Report::reject_report_web in whic a user argumment was an email
	instead of a user object.

	[12718] src/cgi/wwsympa.fcgi.in:  When changing email address in user's
	preferences, wwsympa.fcgi would crash because the user passed to
	reject_report_web was an email address instead of a User object. Fixed
	by passing a User object. FIXME : all calls to reject_report_web using
	a user should be checked. Alternate solution: create a Sympa::User
	object if needed in Message::Template. This adds additional dependency
	to this module, though, and also increases the testing difficulty
	(creating a user object requires database access).

	[12715] default/web_tt2/css.tt2:  css gap correction for sso login
	button

6.2.14		February 26, 2016

  Features:

	[12680] src/lib/Sympa/Mailer.pm, src/lib/Sympa/Process.pm,
	src/lib/Sympa/Spindle/ProcessArchive.pm,
	src/lib/Sympa/Spindle/ProcessAutomatic.pm,
	src/lib/Sympa/Spindle/ProcessBounce.pm,
	src/lib/Sympa/Spindle/ProcessIncoming.pm,
	src/lib/Sympa/Spindle/ProcessOutgoing.pm, src/sbin/archived.pl.in,
	src/sbin/bulk.pl.in, src/sbin/sympa_automatic.pl.in,
	src/sbin/task_manager.pl.in:  Now daemons capture SIGCHLD signal so
	that defunct child processes (sendmail) will be reaped faster.



  Changes:

	[12696] default/web_tt2/head_ui.tt2:  Adding version number in CSS URL
	to ensure stylesheet reloading when changing version.

  Bug fixes:

	[12702] default/mail_tt2/certif_warning.tt2,
	default/mail_tt2/delivery_status_notification.tt2,
	default/mail_tt2/expire_deletion.tt2,
	default/mail_tt2/expire_warning1.tt2,
	default/mail_tt2/expire_warning2.tt2,
	default/mail_tt2/global_remind.tt2, default/mail_tt2/invite.tt2,
	default/mail_tt2/list_unknown.tt2,
	default/mail_tt2/listowner_notification.tt2,
	default/mail_tt2/lists.tt2, default/mail_tt2/moderate.tt2,
	default/mail_tt2/remind.tt2, default/mail_tt2/removed.tt2,
	default/mail_tt2/request_auth.tt2, default/mail_tt2/send_auth.tt2,
	src/lib/Sympa/List.pm:	If the list name contains "+", incorrect
	"mailto:" links are generated in service messages.
	Fixed by encoding special characters using new "mailtourl" template
	filter.

	[12697] src/cgi/sympa_soap_server.fcgi.in:  Sympa SOAP server crashed
	because Sympa::Alarm module was not loaded.

	[12690] default/web_tt2/active_lists.tt2, default/web_tt2/arc.tt2,
	default/web_tt2/latest_lists.tt2, default/web_tt2/list_panel.tt2,
	default/web_tt2/lists.tt2, default/web_tt2/my.tt2,
	default/web_tt2/search_user.tt2, default/web_tt2/suspend_request.tt2,
	default/web_tt2/your_lists.tt2, src/cgi/wwsympa.fcgi.in,
	src/lib/Sympa/Archive.pm: [#6987] [Reported by D. Pritts, Internet2]
	Changing web_archive_spam_protection did not update spam protection
	mode on past archives.	Fixed by applying spam protection at the time
	of display, not when archives were created / rebuilt.

	[12687] default/web_tt2/crash.tt2, default/web_tt2/main.tt2,
	default/web_tt2/tt2_error.tt2, src/cgi/wwsympa.fcgi.in: [#8570]
	[Reported by A. Epstein, Cornell Univ.] <base> element in web output
	should be eliminated, because it will mess reverse proxy and so on. 
	Fixed by making partial URIs to be redirected to base URI.

	[12685] src/cgi/wwsympa.fcgi.in, src/lib/Sympa/Archive.pm,
	src/lib/Sympa/Spool/Moderation.pm:  WWSympa: Cannot view attachements
	in bounce messages and moderated messages.  Fixed by correcting
	inappropriate relative URL paths.

	[12683] default/web_tt2/css.tt2, default/web_tt2/home.tt2:  Home
	submenu with top_menu mode was not rendered correctly.	Fixed by
	updating CSS.

6.2.13		February 12, 2016

  Changes:

	[12631] default/Makefile.am, default/web_tt2/lists_categories.tt2,
	src/cgi/wwsympa.fcgi.in:  Displaying lists by categories is now a
	specific action, accessible through Sympa main menu, instead of a part
	of the default home page.

	[12625] default/web_tt2/help_faq.tt2, default/web_tt2/sympa_menu.tt2: 
	top menu reorganisation (search and support)

	[12624] default/web_tt2/css.tt2: css modifications for major
	reorganisation of homepage submenu

	[12623] default/web_tt2/home.tt2, default/web_tt2/main.tt2: major
	reorganisation of homepage submenu

	[12622] default/web_tt2/my.tt2:  delete end useless >

	[12618] default/web_tt2/css.tt2, default/web_tt2/list_menu.tt2: 
	modification of aside menu structure and class divider color

	[12617] default/web_tt2/css.tt2, default/web_tt2/my.tt2:  new look for
	my lists page

	[12604] src/lib/Makefile.am, src/lib/Sympa/Internals,
	src/lib/Sympa/Internals/Workflow.pod, src/lib/Sympa/Internals.podpl: 
	[Notice contributors] Logic to handle messages in processes of Sympa
	has been highly refactored.  See the documentation
	Sympa::Internals::Workflow for overview.

	[12592] default/web_tt2/css.tt2:  title and table td font-size
	reduction

	[12583] default/mail_tt2/delivery_status_notification.tt2,
	src/lib/Sympa/Spindle/AuthorizeMessage.pm,
	src/lib/Sympa/Spindle/DoForward.pm, src/lib/Sympa/Spindle/DoMessage.pm,
	src/lib/Sympa/Spindle/ProcessAutomatic.pm,
	src/lib/Sympa/Spindle/ProcessIncoming.pm,
	src/lib/Sympa/Spindle/ProcessModeration.pm:  If distribution of a
	message is rejected or fails, delivery status notification (DSN)
	instead of normal report will be sent by Sympa.  This behavior may
	mitigate backscattering caused by unwanted situation (virus, storm of
	spam, system trouble, ...).

	[12573] default/web_tt2/css.tt2, default/web_tt2/modform.tt2,
	default/web_tt2/modindex.tt2, default/web_tt2/viewmod.tt2:  Complete
	reorganization of message moderation interface, with action icons and
	modals, otherwise improve alert messages presentation and lisibility

	[12572] default/web_tt2/blacklist.tt2:	delete paragrah tag

	[12571] default/web_tt2/css.tt2:  titles font-size unit modification
	(rem to em)

	[12570] default/web_tt2/blacklist.tt2:	custumize info message 

	[12569] default/web_tt2/get_closed_lists.tt2,
	default/web_tt2/get_pending_lists.tt2:	add info message when no closed
	or pending lists

	[12539] default/web_tt2/css.tt2:  Global font-size reduction

	[12535] default/web_tt2/review.tt2:  optimization of message info view

	[12534] default/web_tt2/reviewbouncing.tt2,
	default/web_tt2/subscriber_table.tt2:  medium-centered for alert-info

	[12533] default/web_tt2/review.tt2,
	default/web_tt2/subscriber_table.tt2:  global page settings and message
	info when no list members

	[12532] default/web_tt2/reviewbouncing.tt2:  alert-box info size for
	small screens

	[12530] default/web_tt2/reviewbouncing.tt2:  global page settings,
	message when no bouncing members (bounce_rate=0), and responsive class
	deleted for table because of th rowspan

	[12529] default/web_tt2/reviewbouncing.tt2:  h3 title tag replaced by
	h2 tag

  Bug fixes:

	[12672] src/lib/Sympa/User.pm:	Test in Sympa::User::moveto sub made
	email change fail even though it was actually succesful. This is due to
	the fact that ->rows will most of the time return 0 in case of
	multiples virtual hosts. Fixed by getting rid of the rows test and
	counting on the result of do-prepared_query to check whether the query
	succeeded or not. The number of rows affected should not be a clue
	because it will be zero for all virtual hosts if the user does not
	exist. This should be checked before trying to change email address.

	[12671] src/cgi/wwsympa.fcgi.in:  Password validation is not used
	anymore when adding a new user, because such addition is made using a
	temporary password that might not comply to password validation rules.
	Actually the temporary password will never be used because user need to
	define their password themselves the first time they login, using a one
	time ticket. So they are more temporary placholders in the database
	than temporary passwords.

	[12670] src/lib/Sympa/Admin.pm: [Reported by S. Rich, Univ. Duke] A
	typo in Admin.pm made the --change_user_email sympa command to fail.

	[12667] src/lib/Sympa/User.pm:	[Reported by S. Rich, Duke univ.]
	sympa.pl --change_user_email fails due to typo in source.

	[12655] src/cgi/wwsympa.fcgi.in:  Downloading the list certificate from
	the web interface returned an error because an obsoleted sub was used
	to build the file name.

	[12641] default/web_tt2/head_javascript.tt2:  Correction of javascript
	for disapeared top-bar-dropdown menu on input lost focus

	[12640] src/cgi/wwsympa.fcgi.in: [Introduced in rev. 11267][Reported by
	V. Juloux, EPHE] The test of avatar's file size was inverted;
	consequently, files respecting the size limit were rejected for size
	limit reasons.

	[12626] default/web_tt2/sympa_menu.tt2:  top comment modification

	[12616] src/lib/Sympa/Language.pm, src/lib/Sympa/Session.pm:  Tests in
	code using a few regexps were invalid due to typos.  These also produce
	"Unescaped left brace in regex" deprecation warnings many, many times
	with Perl 5.22 or later.

	[12611] src/lib/Sympa/Commands.pm, src/lib/Sympa.pm:  If UNSUBSCRIBE
	command with an email parameter not the same as sender is sent and
	"unsubscribe" scenario returns value "request_auth(sender)", an invalid
	auth key will be sent back to the sender.  Fixed by generating auth key
	using right parameter.

	[12610] src/lib/Sympa.pm:  REVIEW command cannot handle the result
	"request_auth" returned by review scenario.

	[12577] src/cgi/wwsympa.fcgi.in, src/lib/Sympa/List.pm,
	src/lib/Sympa/Spindle/ProcessOutgoing.pm:  If an incoming message is
	encrypted, certificates of list members exist and any of them are
	invalid, message distribution by bulk.pl aborts and part of list
	members does not receive any messages.
	Fixed by replacing outgoing messages with error messages if
	re-encryption by bulk.pl fails.

	[12568] default/web_tt2/css.tt2:  fix alert-box info color, and
	*-centered foundation class margin-left

	[12567] default/mail_tt2/moderate.tt2:	If send scenario returns result
	"editor" (forwading to editor without validation key), notification
	sent to editor does not include original message.
	Fixed by correcting moderate.tt2 mail template.

	[12551] src/lib/Sympa/Spindle/ProcessIncoming.pm:  Loop prevention of
	the messages bound for administrators (listmaster, owner or editor)
	using "X-Loop:" field does not work.  Fixed by comparing the field with
	correct administrator address.

	[12540] default/web_tt2/subscriber_table.tt2:  List members table
	correction, end table tag wasn't at the correct place

	[12538] src/lib/Sympa/DatabaseDriver/LDAP.pm, src/lib/Sympa/ListDef.pm:
	 [Reported by S. Hatteberg & suggested by S. Shipway] "none" or other
	value can not be specified to ca_verify parameter of LDAP datasource,
	though it became required as of Sympa 6.2.
	Fixed by adding new "ca_verify" defaulting "required" to corresponding
	config paragraphs.

	[12521] default/web_tt2/css.tt2:  new correction of uncolored dropdown
	menu menu below form element

	[12520] default/web_tt2/css.tt2:  correction of uncolored dropdown menu
	menu below form element

6.2.12		November 18, 2015

  Changes:

	[12507] default/web_tt2/css.tt2:  clean css table rules commented

	[12506] default/web_tt2/admin.tt2:  delete div and br tags

	[12505] default/web_tt2/css.tt2, default/web_tt2/list_menu.tt2,
	default/web_tt2/list_panel.tt2, default/web_tt2/loginbanner.tt2: 
	Improve role view in top bar menu and aside menu

	[12502] default/web_tt2/css.tt2:  delete #noticeMSG rule because it's
	not used any more

	[12501] default/web_tt2/info.tt2:  replace div tag with noticeMSG id by
	p tag with alert-box info class

	[12497] default/web_tt2/css.tt2:  sidebar menu background hover

	[12496] default/web_tt2/css.tt2, default/web_tt2/list_menu.tt2,
	default/web_tt2/sympa_menu.tt2:  improve sidebar lisibility with
	background color on title menu and complete active class on sympa menu

  Bug fixes:

	[12508] default/web_tt2/info.tt2:  End </a> tag was missing on Review
	link

	[12504] default/web_tt2/css.tt2:  correction of responsive table script
	bug, by adding 2 css rules

	[12498] src/lib/tools.pm:  Password validation does not work due to a
	typo.

6.2.11		November 05, 2015

  Changes:

	[12445] default/web_tt2/subrequest.tt2, src/cgi/wwsympa.fcgi.in:  When
	an anonymous user (user who has not logged in) selects "subscribe" menu
	specifying e-mail address, fake message "a message containing an
	validation link was sent" is shown and message is not really sent, even
	if the e-mail had been already subscribed.  Previously, user was
	notified that they are already subscribed.
	The new behavior will prevent using "subscriber" menu to sniff
	subscribers.

  Bug fixes:

	[12478] src/lib/Sympa/Spindle/ProcessAutomatic.pm:  Logging invocation
	of sendmail was not disabled even if log_smtp parameter was "off".

	[12468] src/lib/Sympa/DatabaseDescription.pm, src/lib/Sympa/Log.pm,
	src/lib/Sympa/Upgrade.pm: [#9850] Database logging fails on rare
	occations.  This is because primary key of logs_table is not
	sufficiently unique.
	Fixed by dropping primary key.	Table structure will be upgraded
	automatically during upgrade process.  Additionally, upgrade table will
	also keep subsecond part of logging date.

	[12464] src/lib/Sympa/Topic.pm:  If message topics feature is enabled
	and a message has message-ID containing "/" character, such message
	cannot be tagged topics.
	Fixed by escaping filesystem-unsafe characters in message-ID.

	[12462] default/web_tt2/subindex.tt2, src/cgi/wwsympa.fcgi.in,
	src/lib/Sympa/List.pm, src/lib/Sympa/Spool/Request.pm:	If a user
	submits subscription requests to a list multiple times, owner can see
	the last one in moderation page, but when she approves it, the first
	one will be chosen.  As a result, custom attribute of subscribed user
	may be differ from that owner has chosen.
	Fixed by assigning unique key to each subscription request.  To make
	this fix, format of files in subscribe spool (queuesubscribe) were
	changed: Older format will be migrated during upgrading process
	(sympa.pl --upgrade).

6.2.10		November 04, 2015

  Never released: problem occured while tagging the version.

6.2.9		October 13, 2015

  Bug fixes:

	[12429] src/lib/Sympa/List.pm:	When using LDAP 1 or 2 levels  queries
	in owner_includes, include failed because the full incl source was
	passed instead of the MD5 sum, leading to a failed prepared statement.

	[12423] t/tools_file.t:  "make check" run by root fails.  Fixed by
	taking care of super-user privileges.

	[12418] src/lib/Conf.pm:  Some parameters could not take the value '0'
	(and were then set to their default value) because a test about whether
	the parameter was set in config relied on a true value instead of a
	defined value.

	[12412] src/lib/Sympa/List.pm:	When using sql queries in
	oxner_includes, it failed because the fulle incl source was passed
	insetead of the MD5 sum, leading to a failed prepared statement.

6.2.8		October 02, 2015

  Features:

	[12381] doc/Makefile.am, doc/sympa_toc.pod, src/sbin/sympa.pl.in: 
	Let's start with sympa_toc(1) manual page to get overview of
	documentation on Sympa.

  Bug fixes:

	[12385] src/lib/Sympa/Tracking.pm:  If "View last bounce" in
	editsubscriber page or "mail tracking" is clicked, earlier bounces or
	notification may be shown instead of the last ones.
	Fixed by clearling older HTML view when a new bounce overwrites earlier
	one.

	[12382] src/cgi/wwsympa.fcgi.in, src/lib/Sympa/Tools/WWW.pm,
	src/lib/Sympa/Upgrade.pm: [Reported by T. Fillmore and S. Shipway] URL
	path to bundled Raleway font is incorrect, and HTTP server responds 404
	Not Found many times.  Fixed by passing static_content_url parameter to
	css.tt2 when it is parsed.

6.2.7		September 25, 2015

  Bug fixes:

	[12376] src/sbin/bounced.pl.in:  (Introduced on 6.2.4) Tracking does
	not work, and automatic removal of subscribers using welcome or remind
	probe does not work.  Fixed typo in the code by which bounce addresses
	could not be parsed properly.

6.2.6		September 22, 2015

  Features:

	[12352] src/lib/Sympa/ListDef.pm, src/lib/Sympa/Message.pm:
	[#10005][Proposed by Y. Baouch, univ. of Colorado] New
	dmarc_protection.phrase parameter values "list_for_email" and
	"list_for_name" to give the from field "List (on behalf of SENDER)
	<munged_email>".
	This will solve the problem reported by several listmasters: If DMARC
	protection feature munges originator field, the many mail client caches
	such address by replaced display name, and misleadingly associates the
	list address with the name of sender.



  Changes:

  Bug fixes:

	[12370] src/lib/Sympa/List.pm: [Reported by I. Foulhouze, INRA] Review
	page did not display the lists's subscribers because the query to
	retrieve subscribers from the database did not use a correct field
	name.

	[12369] default/web_tt2/css.tt2, default/web_tt2/loginbanner.tt2:
	[Reported by N. Samus] When using several SSO services, Sympa stackes
	them into a drop down menu. The resulting menu was very long and badly
	colored.

	[12362] src/lib/Sympa/List.pm:	List aliases derived from slightly
	older release of Sympa, prior to 5.2b, may not have domain part in
	parameter of queue program, and messages sent to such aliases are
	rejected.  Fixed by assigning appropriate domain.
	Note: In the future release, domain part may be mandatory.

	[12360] src/cgi/wwsympa.fcgi.in: [#10016] compose_mail: Even when
	use_html_editor is set to 1, sent message has "text/plain"
	content-type.

6.2.5		September 10, 2015

  Bug fixes:

	[12342] src/sbin/sympa_msg.pl.in: [Reported by U. Buhvestov, Tartu
	Tamme Gymnasium] "sympa" alias prepared for earlier version of Sympa
	may not have domain part in argument of queue program.	Sympa rejects
	messages sent to such alias with error "robot * undefined".  Fixed by
	assigning default domain.

	[12340] src/cgi/wwsympa.fcgi.in: [#10003] [Reported by S. Hatteberg,
	Universitetet i Oslo] WWSympa: Robot listmaster can get global
	listmaster privileges using "Impersonate another User" function.  Fixed
	by checking if target user is the super-listmaster.

6.2.4		September 01, 2015

  Features:

	[12323] src/sbin/bounced.pl.in:  Now bounced.pl can analyze RFC 6533
	Internationalized Delivery Status and Disposition Notifications.


  Bug fixes:

	[12335] default/web_tt2/css.tt2: [Submitted by O. Lumineau, RENATER]
	Several improvments in CSS.[Reported by J-M. MArtins Da Cruz, Mines
	Paristech] Display bug in Pending and deleted lists page.

	[12326] src/lib/Sympa/List.pm:	[Reported by S. Rich, Duke univ.] If
	"send" scenario returns the result "editor", message will not be
	forwarded to the editors.
	This bug was injected during 6.2alpha.

	[12320] src/lib/Sympa/List.pm: [#9998] [Submitted by A. Berenstein,
	Electric Embers] The number of messages sent in list "stats" file is
	updated as if the message were sent to the list's total subscribers,
	including suspended members and so on.
	Note: the number of bytes sent is still incorrect, because it looks a
	bit difficult to calculate sizes of various reception modes, summary,
	txt and so on.
	Contributed patch is modified for 6.2.

	[12315] src/lib/Sympa/Tracking.pm:  Flaw in bounce processing including
	tracking feature.
	- Messages bound for bounce addresses may be stored into bounce/
	directory, even if they are related to the e-mail not subscribing to
	the list.  The directory may be filled in by unwanted messages.
	- Only envelope IDs in DSN messages are considered but original
	recipients are not.  As a result, attacker can easily overwrite
	tracking database by using messages with arbitrary envelope IDs.
	Those problems are mitigated by checking if both original recipient and
	(in case of tracking) envelope ID are valid, then rejecting unknown
	emails/IDs.

	[12305] src/lib/Sympa/List.pm:	If member_include parameter is set, its
	contents are copied to include_users_* parameters.  Fixed by operating
	on the copy of that parameter.

	[12303] src/bin/upgrade_sympa_password.pl.in:  [Reported by S. Rich,
	Duke Univ.] upgrade_sympa_password.pl cannot decrypt passwords in the
	database properly, because it initialize cipher object before getting
	"cookie" parameter.

	[12295] src/lib/Sympa/Message.pm:  sympa_msg.pl will be crashed by
	messages with empty body (messages consist only of header).
	Though this bug had been found during 6.2alpha (r11232), it was fixed
	imperfectly.

6.2.3		July 16, 2015

  Bug fixes:

	[12282] src/lib/Sympa/List.pm:	Inclusion of member/owner/editor using
	LDAP with SSL did not work.  Fixed by adding CA certificate defined in
	sympa.conf (cafile and/or capath) to filter definition when database is
	opened.

	[12276] default/mail_tt2/get_archive.tt2, src/lib/Sympa/Commands.pm,
	src/lib/Sympa/Message.pm:  [Reported by J. Kirkland] Messages sent by
	Sympa robot uses list owner addresses and so on by default.  They
	should be "sympa" addresses.  This bug was injected by commit r10223.

	[12267] src/smtpc/configure.ac:  [Reported by B. Eliassen] "make" fails
	with Solaris, again.
	Fixed by taking care of additional libraries.  This fix probably may
	work with Solaris 8 or later.

	[12263] default/web_tt2/aside_menu.tt2, default/web_tt2/list_menu.tt2: 
	WWSympa: On mobile mode, List Options Menu was not shown (at least by
	Safari on iOS).

6.2.2		July 01, 2015

  Changes:

	[12260] default/edit_list.conf:  Hiding include_<datasource>_ca
	parameters to owners by default.

  Bug fixes:

	[12254] src/lib/Sympa/List.pm: [Reported by J.L. Marrion, univ.
	Louvain] when testing if list admins needed to be synced, all the test
	cases returned true because the test was badly formed. Alose removed
	optional_sync_admin option which was never used.

	[12250] src/smtpc/configure.ac, src/smtpc/sockstr.c:  "make" fails on
	Solaris.  A variable name conflicted with a predefined preprocessor
	macro.

6.2.1		June 17, 2015

  Changes:

	[12221] default/web_tt2/home.tt2:  Making the text inviting to log in
	in the home page change according to where the login form is supposed
	to be, depending on the top_menu TT2 variable value.

  Bug fixes:

	[12215] default/web_tt2/d_control.tt2:	d_control: Owner is not shown
	correctly.

	[12214] src/lib/Sympa/Tools/WWW.pm:  Shared folders: File icons were
	not shown due to a typo in code.

	[12199] default/web_tt2/blacklist.tt2,
	default/web_tt2/create_list_request.tt2,
	default/web_tt2/d_editfile.tt2, default/web_tt2/edit_template.tt2,
	default/web_tt2/editfile.tt2, default/web_tt2/editsubscriber.tt2,
	default/web_tt2/footer.tt2, default/web_tt2/help_user_options.tt2,
	default/web_tt2/manage_template.tt2, default/web_tt2/news.tt2,
	default/web_tt2/reviewbouncing.tt2, default/web_tt2/rss.tt2,
	default/web_tt2/tracking.tt2, default/web_tt2/viewbounce.tt2,
	default/web_tt2/viewmod.tt2:  Restoring past changes omitted by new
	skin.
	ToDo: Test.

	[12197] src/cgi/wwsympa.fcgi.in:  If the user is listmaster of the host
	with large number of lists, loading create_list_request page will slow
	down.  Fixed by not getting all lists but only owned lists.

	[12195] default/web_tt2/css.tt2: [Fixed by O. Lumineau, RENATER] The
	calendar javascript popup appeared with a bad style.

	[12194] src/lib/Conf.pm:  Reported by P. Grzesina, univ. Regina] The
	CAS button was not showed because the cas_number value in conf was
	never updated.

	[12193] default/web_tt2/lists.tt2: [Reported by P. Grzesina, univ.
	Regina] While retrieving updated web skin, an old version of lists.tt2
	had been restored, breaking selection by first letter in the lists
	index.

	[12192] default/mail_tt2/listmaster_notification.tt2,
	default/mail_tt2/user_notification.tt2, src/lib/Sympa/List.pm:
	[Reported by D. Lalot, univ. Aix Marseille] When a list is at 100 %
	erro, nobody receives the message, and nobody was warned that the
	message had been lost. Fixed by warning the message sender, the list
	owners and the listmaster when the bounce rate is at 100%.

	[12191] www/Makefile.am:  "make install" fails when install(1) omitting
	directory arguments.

	[12190] default/web_tt2/home.tt2:  Fixing bad link having hard-coded
	sympa string.

6.2		June 10, 2015

  Features:

	[12174] Makefile.am, configure.ac:  (addition to r12172) If you don't
	wish to install smtpc utility, use "--disable-smtpc" configure option.

	[12172] Makefile.am, configure.ac, src/smtpc, src/smtpc/Makefile.am,
	src/smtpc/configure.ac, src/smtpc/m4, src/smtpc/m4/ac_func_snprintf.m4,
	src/smtpc/smtpc.1, src/smtpc/smtpc.c, src/smtpc/sockstr.c,
	src/smtpc/sockstr.h, src/smtpc/utf8.c, src/smtpc/utf8.h: 
	[experimental] "smtpc" is a command line utility aiming to be an
	alternative to sendmail(1) utility and its clones with smaller
	footprint. (Note that this utility needs SMTP/LMTP server realying
	submitted messages).
	It also supports some SMTP extensions several clones (and partly
	original one) have not been supported:
	- DSN extension - As of Sympa 6.2, message tracking feature requires
	it.
	- SMTPUTF8 extension - As of planned Sympa 7.0, email address
	internalization (eai) feature presumes it.
	To use smtpc as replacement of sendmail, add sympa.conf the lines:
	sendmail      /path/to/smtpc
	sendmail_args --esmtp <host name of relaying server>
	or with LMTP server:
	sendmail      /path/to/smtpc
	sendmail_args --lmtp <socket path of relaying server>

	[12151] sympa.spec.pl:	Source tarball will be distributed with
	sympa.spec file.  It provides alternative way to build Sympa software
	on platforms adopting RPM package management system.
	In place of "configure; make; make install", you can do:
	1. rpmbuild -tb sympa-X.X.tar.gz
	2. Install dependent packages.
	3. rpm --install sympa-X.X-1.xxxx.rpm
	At once installation succeeded, you can upgrade it by doing:
	1. rpmbuild -tb sympa-Y.Y.tar.gz
	2. rpm --upgrade sympa-Y.Y-1.xxxx.rpm
	3. sympa.pl --upgrade
	Note:
	- rpmbuild package has to be installed.
	- Dependent packages are not always provided on your platform.	You
	might want to add appropriate third-party repositories.

	[12131] src/lib/Conf.pm:  Authentication methods ldap, cas and
	generic_sso support full feature of LDAPS and LDAP/STARTSSL.  These
	additional parameters may be put in auth.conf: use_start_ssl,
	ssl_ciphers, ssl_cert, ssl_key, ca_verify, ca_path, ca_file.

	[12098] www/js/sympa.js:  (r12097) Typo.

	[12097] www/js/sympa.js:  [experimental] Adding langmark roles to
	regions of the page.  These may improve experience with browsers
	supporting WAI-ARIA.
	cf. http://www.w3.org/TR/wai-aria/roles

	[12065] src/lib/Sympa/DatabaseDriver/Oracle.pm:  Now Oracle driver can
	update database structure automatically.

	[12050] src/lib/Sympa/DatabaseDriver/Oracle.pm:  Now Oracle driver can
	check database structure.
	However, you still must update structure manually.

	[12026] default/web_tt2/home.tt2:  News about list activities and
	potential user errors are displayed at the home page.

	[11969] src/lib/Sympa/ConfDef.pm, src/sbin/sympa_msg.pl.in: 
	[experimental] Multiple instances of sympa_msg.pl, daemon processing
	incoming message spool, may be run.  Multiplicity is controlled by
	"incoming_max_count" config parameter: By default single instance will
	run.

	[11806] default/Makefile.am, default/web_tt2/admin.tt2,
	default/web_tt2/arcsearch_form.tt2,
	default/web_tt2/create_list_request.tt2, default/web_tt2/css.tt2,
	default/web_tt2/edit_list_request.tt2, default/web_tt2/footer.tt2,
	default/web_tt2/home.tt2, default/web_tt2/info.tt2,
	default/web_tt2/list_menu.tt2, default/web_tt2/list_panel.tt2,
	default/web_tt2/lists.tt2, default/web_tt2/login_menu.tt2,
	default/web_tt2/loginbanner.tt2, default/web_tt2/main.tt2,
	default/web_tt2/menu.tt2, default/web_tt2/menu_search.tt2,
	default/web_tt2/nav.tt2, default/web_tt2/pref.tt2,
	default/web_tt2/renewpasswd.tt2, default/web_tt2/review.tt2,
	default/web_tt2/search_list.tt2,
	default/web_tt2/search_list_request.tt2,
	default/web_tt2/serveradmin.tt2, default/web_tt2/skinsedit.tt2,
	default/web_tt2/subindex.tt2, default/web_tt2/suboptions.tt2,
	default/web_tt2/subscriber_table.tt2,
	default/web_tt2/suspend_request.tt2, default/web_tt2/title.tt2:
	[Submitted by P. Rynhart, univ. Massey] A new Sympa skin, more modern,
	partly responsive.

	Tracking feature : a great contrib from French army DGA Information 
	Superiority (Guillaume Colotte and laurent Cailleux)
	The tracking feature is a way to request DSN or DSN + MDN when sending a 
	message to each subscribers. In that case, Sympa (bounced.pl) collect both 
	DSN and MDN and store them in a new table "notification_table". Them, for 
	each message, the list owner can display which subscribers has displayed, 
	received or not received the message. This can be used for some important 
	list where list owner need to collect the proof of reception or display of 
	each message. This page is accessible via archive (button "tracking").
	This feature is controled by 2 list parameters see "tracking" paragraph
	in "edit list config"/bounce .
	See : http://www.sympa.org/manual/bounces#message_tracking 
	and http://www.sympa.org/manual_6.1/parameters-bounces#tracking 

	[Submitted by W. Roquet] Stats feature. Now Sympa stores data whenever one of 
	the following event occurs:
	- a message is sent to a list;
	- a user subscribed to a list;
	- a user unsubscribed from a list;
	- a user is added to a list by another user;
	- a user is removed from a list by another user;
	- a user is removed from a list by the automatic bounce management;
	- a file is uploaded to the shared directory;
	- a file is deleted from the shared;
	- a message to a lsit is rejected in moderation;
	- a user logs in to the web interface;
	- a user logs out;
	- a list is created;
	- a list is deleted;
	- a list is restored;
	- a human user (not a harvester) hit a page.
	These data are regularly aggregated by the task_manager, in order to make 
	them anonymous and to have easily displayable data.
	The aggregated data are available to users, owners and listmaster in their
	respective interfaces. Only relevant data are presented. They are disiplayed
	in graphs to help people see trends and activity peaks.
	To be able to display these graphs, you must enable the static_content URL. 
	In addition, the stats are accessible through the web interface, so if you customized 
	your web templates, you must update them to include the links and template processing.

	Custom attributes provisionning: Custom attributes can now be provisionned using external
	data sources, the same way as email addresses.
	For now, only SQL or LDAP datasources are supported.
	To use this feature, you need first to define the custom attributes as previousley.
	This attribute must have the same name as the fields used in your queries.
	For example, if your query returns the user name in a field called "u_name",
	then your custom_attribute must also be called "u_name".
	New parameters: 
	- include_sql_ca
	- include_ldap_ca
	- include_ldap_2level_ca

	[11787] src/lib/Sympa/List.pm, src/lib/Sympa/ListDef.pm:  New list
	parameter: 'member_include'. This parameters allows to defined .incl
	files to include list members, the same way it is done for list admins.
	This grants extended flexibility in datasources, allowing list owners
	to tweak their own data sources without accessing to the actual details
	of the query made to gather email addresses.

	[11740] src/lib/Sympa/List.pm, src/lib/Sympa/ListDef.pm:  Add filtering
	capabilities to list inclusion.
	This allows to include criteria-based subsets of other lists.
	include_list parameter value can now be like :
	<listname> filter <filter_condition>
	filter_condition is a TT2-compatible condition expression, it inherits
	current potential subscriber properties such as email, gecos,
	custom_attributes ... Tests like isSubscriberOf, isEditorOf and
	isOwnerOf are also available.
	Test examples :
	- include_list foo filter email.match('@bar.tld$')
	Includes members from list "foo" whose email domain is "bar.tld"
	- include_list foo filter isSubscriberOf('bar')
	Includes members from list "foo" who are also subscribed to
	list "bar"
	- include_list foo filter reception == 'mail' and not gecos
	Includes members from list "foo" who have their reception mode
	set to mail and no gecos
	Available variables are (they represent the subscriber from the
	included list) :
	- email
	- gecos
	- bounce (last bounce info, see manual)
	- bounce_score (see manual)
	- bounce_address (see manual)
	- reception (reception mode)
	- topics
	- visibility (conceal, noconceal or empty)
	- date (first subscription date, as a unix timestamp)
	- update_date (last metadata update date, as a unix timestamp)
	- subscribed (1 if manually subscribed)
	- included (1 if included from one or more datasources)
	- id (datasources ids)
	- custom_attributes (as a hash)
	- ca (alias to custom_attributes)
	- suspend (1 if subscription is suspended)
	- startdate (subscription suspension start date, as a unix timestamp)
	- enddate (subscription suspension end date if provided, as a unix
	timestamp)
	Datasource synced custom attributes are available the same way as user
	defined ones.
	Additionnal fields defined in configuration parameter
	db_additional_subscriber_fields
	are also made available.
	The additionnal methods are :
	- isSubscriberOf(<listname>)
	- isEditorOf(<listname>)
	- isOwnerOf(<listname>)

	[11715] src/lib/Conf.pm, src/lib/Sympa/Auth.pm, src/lib/Sympa/SOAP.pm: 
	[Submitted by S. Shipway, Univ. of Auckland] Adding new functions to
	SympaSOAP: getDetails, setDetails, getCustom and setCustom.
	The patch was for Sympa 6.1 then a bit modified for Sympa 6.2.

	[11407] default/edit_list.conf, src/lib/Makefile.am,
	src/lib/Sympa/List.pm, src/lib/Sympa/ListDef.pm,
	src/lib/Sympa/Message/Plugin,
	src/lib/Sympa/Message/Plugin/FixEncoding.pm,
	src/lib/Sympa/Message/Plugin.pm: [experimental] Sympa::Message::Plugin
	providing hook mechanism to intervene in processing by Sympa.  Each
	hook may modify messages or may break ordinary processing. 

	[11331] default/Makefile.am, default/scenari/del.ownerdkim:  New
	scenarios to check DKIM signature are added:
	- add.authdkim
	- add.ownerdkim
	- del.authdkim
	- del.ownerdkim
	- remind.listmasterdkim
	- remind.ownerdkim
	- send.editordkim
	- subscribe.authdkim
	- subscribe.auth_notifydkim
	- subscribe.auth_ownerdkim
	- unsubscribe.authdkim
	- unsubscribe.auth_notifydkim

	[11154] po/de.po, po/el.po, po/es.po, po/fr.po, po/it.po, po/pt.po,
	po/sympa.pot, soap/sympasoap.pm, src/lib/confdef.pm, src/lib/tools.pm,
	src/sympa_wizard.pl.in, web_tt2/error.tt2, wwsympa/wwsympa.fcgi.in:
	[#9306] [Submitted by Evoltech, Riseup] Better password validation.
	When the user requests change of password via WWSympa or SympaSOAP, new
	password may be checked its strength.
	New parameter password_validation may be used to customize policy of
	password validation.  See help text of the parameter for more details.

	[11145] src/bin/mod2html.pl.in, src/lib/Sympa/Archive.pm,
	src/lib/Sympa/ConfDef.pm, src/lib/Sympa/ModDef.pm,
	src/sbin/archived.pl.in:  Now "mhonarc" may be configured per robot.

	[11069] src/lib/Scenario.pm:  Now CustomCondition can set the action to
	take (do_it, reject ...) by setting $_, this allows for complex,
	single-module CustomConditions.

	[11068] src/cgi/wwsympa.fcgi.in, src/lib/Auth.pm, src/lib/confdef.pm: 
	Behavior of one time ticket lock-out is configurable.
	Two new robot parameters were introduced:
	* one_time_ticket_lockout:
	- "one_time" won't allow access again.	This is previous behavior.
	- "remote_addr" will lock the ticket on remote address accessed at
	first time.
	- "open" will never lock-out tickets.
	* one_time_ticket_lifetime:
	Duration before ticket expires.  Default is "2d", previous hardcoded
	value.

	[11062] Makefile.am, configure.ac, sympa.spec.in, sympa.spec.in:11054):
	 sympa.spec with required package list up-to-date is generated at the
	time of "make dist".
	sympa.spec.in was replaced with sympa.spec.pl which outputs spec file.

	[10897] src/etc/script/sympa.in, src/sbin/sympa.pl.in,
	src/sbin/task_manager.pl.in:  "sympa.pl --health_check" checks config
	files, database connection and structure, and data structure version. 
	It is invoked at first time in sympa init script and reports errors if
	any.
	Instead, daemons such as sympa.pl no longer check database structure
	nor data version.

	[10626] po/Makefile.in.in, src/lib/Conf.pm, src/lib/List.pm,
	src/lib/Scenario.pm, src/lib/Sympa/User.pm, src/lib/tools.pm,
	wwsympa/SympaSession.pm:  i18n titles in configuration.
	- title.<lang> lines in scenario files are available again, though this
	feature was broken for a while.
	- Now topics.conf recognizes "title.gettext" lines.
	- scenario, task and topics.conf recognize "title" line for default
	title.
	- lang value in user_table
	- title.<lang> line in scenario files
	- title.<lang> line in task files
	- title.<lang> line in topics.conf
	- lang names in charset.conf
	- lang parameters of list config, robot.conf and sympa.conf
	Note that canonicalization will be done internally so that existing
	config must not be changed.

	[10617] web_tt2/crash.tt2, web_tt2/javascript.tt2, web_tt2/main.tt2,
	web_tt2/tt2_error.tt2:	Now outputs by WWSympa have HTML5 document type
	definitions.

	[10541] src/lib/List.pm:  [Submitted by S. Shipway, Univ. of Auckland]
	Workaround for aggressive DMARC policy such as yahoo.com.  The patch
	adds option #3 of this DMARC FAQ: http://dmarc.org/faq.html#s_3
	- New list config paragraph "dmarc_protection" to munge "From:" header
	and put original header content erc. into comment. See 
	https://www.sympa.org/manual/dmarc for more details.

	[10393] src/lib/Log.pm, web_tt2/Makefile.am, web_tt2/main.tt2:10363),
	wwsympa/wwsympa.fcgi.in:  Show traceback when the process crashed.  May
	be useful to investigate abnormal termination.

	[10332] configure.ac, src/Makefile.am:	configure: New option
	--with-smrshdir (or --without-smrshdir) to install (or not to install)
	symbolic links to queue programs for Sendmail smrsh.  Default is to
	install them into SYSCONDIR/smrsh.

	[10327] src/lib/Conf.pm, src/lib/Upgrade.pm, src/lib/confdef.pm,
	src/sympa_wizard.pl.in, web_tt2/edit_config.tt2,
	wwsympa/wwsympa.fcgi.in:  serveradmin/edit_config page and sympa_wizard
	are internationalized.
	- confdef: keys of 'query' & 'advice' in @confdef::params were changed
	to 'gettext_id' & 'gettext_comment', 'title' to 'gettext_id', to sync
	style with 0stdef::pinfo;
	- sympa_wizard: keys of 'usage' and 'prerequisites' in pan_modules
	were changed to 'gettext_id' & 'gettext_comment'.

	[10321] src/lib/Conf.pm, src/lib/Upgrade.pm, src/lib/confdef.pm,
	web_tt2/javascript.tt2, wwsympa/wwsympa.fcgi.in:  New "html_editor_url"
	robot parameter (formerly "html_editor_file" at 6.2a).	The parameter
	may specify full URL, absolute URL path _or_ relative URL path under
	static_content_url.

	[10306] web_tt2/modindex.tt2, wwsympa/wwsympa.fcgi.in:	Added "Add
	subscriber" button to modindex page if the sender is not subscribed. 
	It may be useful because users need not know about SUB command and
	sympa command address.	The buttons appear only when Web user is the
	list owner.

	[10299] src/lib/tt2.pm, wwsympa/wwsympa.fcgi.in:  Introducing template
	plugins
	This feature allows to package code to be used in templates.
	It enables foreign data integration in Sympa's UI and emails, user
	specific UI enhancement and much more !
	Integrating user targeted data retreived through a call to a webservice
	becomes possible in a simple way, automatically adding info from a
	database to outgoing emails as well !
	Further details here : https://www.sympa.org/manual/templates_plugins

	[10244] src/sympa_wizard.pl.in:  Now sympa_wizard.pl detects encoding
	of the console automatically.  Optional Encode-Locale module is
	required.

	[10081] ext:9097), ext/DEVEL.pm:9097), ext/NetVOOT:9097),
	ext/NetVOOT/ChangeLog:9097), ext/NetVOOT/Makefile.PL:9097),
	ext/NetVOOT/examples:9097), ext/NetVOOT/examples/voot:9097),
	ext/NetVOOT/lib:9097), ext/NetVOOT/lib/Net:9097),
	ext/NetVOOT/lib/Net/VOOT:9097),
	ext/NetVOOT/lib/Net/VOOT/Renater.pm:9097),
	ext/NetVOOT/lib/Net/VOOT/SURFconext.pm:9097),
	ext/NetVOOT/lib/Net/VOOT.pm:9097), ext/NetVOOT/t:9097),
	ext/NetVOOT/t/10surfnet.t:9097), ext/NetVOOT/t/20renater.t:9097),
	ext/NetVOOT/xt:9097), ext/NetVOOT/xt/99pod.t:9097), ext/OAuth1C:9097),
	ext/OAuth1C/lib:9097), ext/OAuth1C/lib/Sympa:9097),
	ext/OAuth1C/lib/Sympa/OAuth1:9097),
	ext/OAuth1C/lib/Sympa/OAuth1/Consumer:9097),
	ext/OAuth1C/lib/Sympa/OAuth1/Consumer/Upgrade.pm:9097),
	ext/OAuth1C/lib/Sympa/OAuth1/Consumer/Website.pm:9097),
	ext/OAuth1C/lib/Sympa/OAuth1/Consumer.pm:9097), ext/OAuth1P:9097),
	ext/OAuth1P/VOOTProvider.pm:9097), ext/OAuth1P/lib:9097),
	ext/OAuth1P/lib/Sympa:9097), ext/OAuth1P/lib/Sympa/OAuth1:9097),
	ext/OAuth1P/lib/Sympa/OAuth1/Provider.pm:9097),
	ext/OAuth1P/lib/Sympa/OAuth1P.pm:9097), ext/OAuth2C:9097),
	ext/OAuth2C/lib:9097), ext/OAuth2C/lib/Sympa:9097),
	ext/OAuth2C/lib/Sympa/OAuth2:9097),
	ext/OAuth2C/lib/Sympa/OAuth2/Consumer:9097),
	ext/OAuth2C/lib/Sympa/OAuth2/Consumer/Upgrade.pm:9097),
	ext/OAuth2C/lib/Sympa/OAuth2/Consumer/Website.pm:9097),
	ext/OAuth2C/lib/Sympa/OAuth2/Consumer.pm:9097), ext/Plugin:9097),
	ext/Plugin/lib:9097), ext/Plugin/lib/Sympa:9097),
	ext/Plugin/lib/Sympa/Plugin:9097),
	ext/Plugin/lib/Sympa/Plugin/ListSource.pm:9097),
	ext/Plugin/lib/Sympa/Plugin/Manager.pm:9097),
	ext/Plugin/lib/Sympa/Plugin/Util.pm:9097),
	ext/Plugin/lib/Sympa/Plugin.pm:9097), ext/README:9097), ext/VOOT:9097),
	ext/VOOT/MANIFEST:9097), ext/VOOT/lib:9097), ext/VOOT/lib/Sympa:9097),
	ext/VOOT/lib/Sympa/VOOT:9097),
	ext/VOOT/lib/Sympa/VOOT/Consumer.pm:9097),
	ext/VOOT/lib/Sympa/VOOT/Renater.pod:9097),
	ext/VOOT/lib/Sympa/VOOT/SURFconext.pod:9097),
	ext/VOOT/lib/Sympa/VOOT/Website.pm:9097),
	ext/VOOT/lib/Sympa/VOOT/tt2:9097),
	ext/VOOT/lib/Sympa/VOOT/tt2/help_editlist_voot.tt2:9097),
	ext/VOOT/lib/Sympa/VOOT/tt2/list_menu_opensocial.tt2:9097),
	ext/VOOT/lib/Sympa/VOOT/tt2/message_report_voot_failed.tt2:9097),
	ext/VOOT/lib/Sympa/VOOT/tt2/select_voot_groups_request.tt2:9097),
	ext/VOOT/lib/Sympa/VOOT/tt2/select_voot_provider_request.tt2:9097),
	ext/VOOT/lib/Sympa/VOOT/tt2/sync_include_voot_failed.tt2:9097),
	ext/VOOT/lib/Sympa/VOOT.pm:9097), ext/VOOT/xt:9097),
	ext/VOOT/xt/99pod.t:9097), mail_tt2/message_report.tt2, po/ar.po,
	po/br.po, po/cs.po, po/el.po, po/en.po, po/es.po, po/et.po, po/eu.po,
	po/fr.po, po/gl.po, po/hu.po, po/id.po, po/it.po, po/ko.po, po/ml.po,
	po/nb_NO.po, po/nl.po, po/pl.po, po/pt_BR.po, po/ro.po, po/ru.po,
	po/vi.po, src/bulk.pl.in, src/etc/script/create_db.Oracle,
	src/etc/script/create_db.Pg, src/etc/script/create_db.SQLite,
	src/etc/script/create_db.Sybase, src/etc/script/create_db.mysql,
	src/lib/List.pm, src/lib/report.pm, src/sympa.pl.in,
	src/sympa_wizard.pl.in, web_tt2/error.tt2, web_tt2/help_editlist.tt2,
	web_tt2/list_menu.tt2, web_tt2/select_voot_groups_request.tt2,
	web_tt2/select_voot_provider_request.tt2, wwsympa/wwsympa.fcgi.in:
	[Submitted by M. Overmeer, overmeer.net, funded and led by Surfnet,
	http://www.surfnet.nl] Full VOOT 2.0 protocol support. VOOT is an
	opensocial subset to manage group membership. fulle details on this
	IETF draft here: http://openvoot.org/voot-2.0.html. This feature
	enables Sympa to be both group provider and consumer in the VOOT
	protocol. VOOT in Sympa uses both Oauth 1.0 and 2.0 for authorization
	from and to a peer in the VOOT protocol.

	[10074] mail_tt2/command_report.tt2, mail_tt2/info_report.tt2,
	mail_tt2/review.tt2, src/lib/Commands.pm, src/lib/List.pm,
	src/lib/tt2.pm, web_tt2/edit_list_request.tt2,
	web_tt2/review_family.tt2, web_tt2/search_user.tt2,
	web_tt2/suboptions.tt2, web_tt2/subscriber_table.tt2,
	web_tt2/suspend_request.tt2, wwsympa/wwslib.pm,
	wwsympa/wwsympa.fcgi.in:  i18n of options for list parameters and
	subscriber options.
	- Options on edit_list page are shown by i18n'ed titles.
	- Only listmasters can view real config values.
	- Subscriber options on review pages, command results, subscriber
	option pages and so on are shown by i17n'ed titles (along with real
	option values).

*****	[10051] src/lib/tt2.pm, web_tt2/Makefile.am, web_tt2/css.tt2,
*****	web_tt2/ja_JP, web_tt2/ja_JP/css.tt2, web_tt2/ko_KR,
*****	web_tt2/ko_KR/css.tt2, web_tt2/main.tt2, web_tt2/zh_CN,
*****	web_tt2/zh_CN/css.tt2, web_tt2/zh_TW, web_tt2/zh_TW/css.tt2,
*****	wwsympa/wwsympa.fcgi.in:  Per-language css.tt2 will override any
*****	portion of main css, not fully replacing it.  So they may be used for
*****	locale-specific customization.
*****	Background: Default css.tt2 specifies the font families covering
*****	Western scripts (Latin, Cyrillic, ...).  East Asian users may prefer
*****	consistent font family supporting Western along with Eastern scripts
*****	(Han, Hangul, ...).

	[10038] src/lib/Scenario.pm: [bug][#8581][Reported by M. Ferrante]
	Scenari: Inconsistent handling of header fields in rule conditions.
	New features:
	- "[msg_header->field][index]" returns the value of particular field. 
	Index may be negative.
	- "[msg_header->field]" still returns list of field values,
	additionally, ordering will be preserved.
	Fixes:
	- Conditions is_listmaster, is_owner, is_editor and is_subscriber can
	handle multiple values.
	- They also parse arguments as header field values to get address
	parts.

	[9966] src/lib/Message.pm, src/lib/confdef.pm:	New sympa.conf config
	parameter "sender_headers" to specify header fields by which message
	sender is detected.
	This is a enhancement to S. Shipway's improvement.
	RFC: What is the reasonable default for this parameter?

	[9963] web_tt2/review.tt2, web_tt2/show_exclude.tt2,
	wwsympa/wwsympa.fcgi.in: [Reported by so many listmasters we lost the
	count] Exclusion table was just a display of the users excluded. list
	owners could not do anything to restore subscriptions;
	This page is now a form, similar to the review page, which allows to
	restore users subscriptions.

	[9959] src/bulk.pl.in, src/lib/Bulk.pm: [Submitted by S. Shipway, univ.
	Auckland] When mail merge is activated, new parameters can be used,
	taken from the mail headers:
	- subject
	- x-originating-ip
	- message-id
	- date
	- x-original-to
	- from
	- to
	- thread-topic
	- content-type

	[9955] src/lib/List.pm, src/lib/SQLSource.pm, src/sympa_wizard.pl.in:
	[Submitted by S. Shipway, univ. Auckland] ODBC is now supported for
	email data sources.

	[9951] src/lib/List.pm:  Now you can define a "scenari" directory in
	the lists family directory. These scenarii will be available for lists
	instantiated from this family.
	The "scenari" directory must be put directly in the family directory,
	not in the overall "families" directory. For example, if you want to
	define scenarii specific to the "staff" family, you must define a
	scenari directory in the /home/sympa/etc/families/staff/ directory. Not
	in /home/sympa/etc/families/.

	[8823] src/alias_manager.pl.in,
	src/etc/script/ldap_alias_manager.pl.in,
	src/etc/script/mysql_alias_manager.pl.in:  alias_manager can handle
	postmap/makemap style maps (delimited by whitespace), not only
	newaliases style maps (delimited by colon).

	[8451] src/etc/Makefile.am, src/etc/create_list_templates/confidential,
	src/etc/create_list_templates/confidential/comment.tt2,
	src/etc/create_list_templates/confidential/config.tt2,
	src/etc/scenari/send.confidential:  New "confidential" list model.
	These lists are used for groups who don't want any publicity around
	their activities; All possible restrictions are applied to prevent
	unauthorized users to know these lists exist and to learn anything
	about them.

	[7644] soap/sympa.wsdl, soap/sympasoap.pm:  The soap server now exposes
	full review with owners, editors and gecos to list masters and list
	owners.

*****	[7596] wwsympa/wwsympa.fcgi.in:  Enhancing the custom_action
*****	functionnality :
*****	Custom actions are used to run specific code and/or display user
*****	defined templates.
*****	They can be executed in list or global context (it is up to you to
*****	decide what to do in both cases).
*****	You can create a <your_action>.pm module under etc/custom_actions or
*****	etc/<robot>/custom_actions (<your_action>_plugin package) with a
*****	"process" sub to add custom processing.
*****	In list context you can also create it under
*****	expl(/<robot>)?/<list>/custom_actions.
*****	You can also create a <your_action>.tt2 file at the same place to
*****	display your template. You don't need the <head/> section or the
*****	<body/> tag.
*****	ANY PRE-EXISTING CUSTOM ACTION MUST BE MOVED TO THE CUSTOM_ACTION DIRECTORY
*****   TO KEEP WORKING.
*****	The HTML code in <your_action>.tt2 can make use of the parameters this
*****	way: [% ap.1 %] for param1, [% ap.2 %] for param, and so on.
*****	If the module is not defined the template is displayed.
*****	You can even have a robot-common <your_action>.pm module with a
*****	specific <your_action>.tt2 for each robot as the file (.pm or .tt2) is
*****	conducted in this order :
*****	- expl/<robot>/<list>/custom_actions (if list context and robot
*****	support)
*****	- expl/<list>/custom_actions (if list context and no robot support)
*****	- etc/<robot>/custom_actions (if robot support)
*****	- etc/custom_actions
*****	Your custom action is reachable using URL:
*****	-
*****	http://your-sympa-server-root-url/ca/your_action/param2/param2/param3/...
*****	in global context
*****	-
*****	http://your-sympa-server-root-url/lca/your_action/listname/param2/param2/param3/...
*****	in list context
*****	The module process sub receive @cap entries as arguments (the List
*****	object is prepended to the argument list in list context).
*****	The module process sub return value can be either :
*****	1 to parse and display the custom action related tt2
*****	<a global action name> to display its template
*****	ca:<other_custom_action> to parse and display another custom action
*****	related tt2
*****	a hash which entries will override $param ones, in case "custom_action"
*****	or "next_action" are present they act as described above.
*****	Example : (etc/custom_actions/foo.pm
*****	package foo_plugin;
*****	sub process {
*****	my $arg = shift;
*****	return 'info' if(ref($arg) eq 'List'); # Show list info page if in list
*****	context
*****	return 'ca:bar' if($arg eq 'bar'); # Show bar custom action tt2 if
*****	first arg is "bar"
*****	return {name => 'John'} if($arg eq 'barbar'); # Show foo.tt2 (own tt2)
*****	after putting "John" under the key "name" in $param
*****	return {name => 'John', next_action => 'review'} if($arg eq
*****	'barbarbar'); # Same thing, but showing review page
*****	return 1; # Just showing own tt2 (foo.tt2)
*****	}
*****	1;

	[7511] src/lib/tt2.pm, wwsympa/wwsympa.fcgi.in:  Now WWSympa responds
	with "404 Not Found" status code, instead of sending notification to
	listmaster, if any random pages under /sympa/help/ are requested.
	Added new option 'has_header' for tt2::parse_tt2() to prepend newline
	to page body so that TT2 parse error can be handled before all HTTP
	headers have been sent.

	[7501] mail_tt2/Makefile.am,
	mail_tt2/listmaster_groupednotifications.tt2, src/bulk.pl.in,
	src/lib/List.pm, src/lib/mail.pm, src/sympa.pl.in,
	src/task_manager.pl.in, wwsympa/archived.pl.in, wwsympa/bounced.pl.in: 
	Listmaster notifications can now be grouped.
	If, for a specific robot, several notifications are issued within a
	short period
	of time with the same operation code only the first ones are sent, the
	next ones
	are stacked. The stacking ends when no notifications are issued
	anymore, or when
	the first one is too old. All the stacked notifications are then sent
	as attachments
	of a single message.
	Internal settings :
	- Stack if more than 3 notifications with the same operation code are
	issued
	for the same robot
	- Send stacked notifications if no new one satisfying the condition
	above was
	received for more than 30 seconds
	- Send stacked notifications if the oldest one was issued more than 60
	seconds ago

	[7489] wwsympa/wwsympa.fcgi.in:  By default, arcsearch (simple)
	searches in current month and in the previous non-empty one.

	[7488] src/lib/List.pm, src/lib/tools.pm, src/sympa.pl.in:  Revived
	"Re:" munging.	cf. Feature Request #1044.
	- Supports "Re:" and its equivalents: "AW:" (de);
	"?\208?\157?\208?\144:" (ru etc.); "Re:" (en, la etc.); "Rif:" (it);
	"SV:" (da, sv); "VS:" (fi).  Additionally, command in subject with them
	can be recognized.
	- Multiple "Re:" and its equivalents in case of "Subject: AW: Re:
	quelque chose" will be truncated .
	- custom_subject will be placed at beginning of subject in case of
	"Subject: Another was Re: [list] Something".

	[7486] web_tt2/review.tt2, wwsympa/wwsympa.fcgi.in: [#8318][Submitted
	by Dominique Fournier] Subscriber search results aren't limited anymore
	when using a @domain search mask. "similar subscribers" results do not
	repeat the found subscribers anymore and are limited to 50 results.

	[7485] web_tt2/Makefile.am, web_tt2/get_biggest_lists.tt2,
	web_tt2/serveradmin.tt2, wwsympa/wwsympa.fcgi.in: [#8338][Submitted by
	Dominique Marant] Added a "view lists sorted by subscriber count"
	functionnality to sympa admin.

	[7483] src/lib/List.pm: [#1119][#8403][#8413][#8414][Submitted by
	Patrick von der Hagen, Renan Manola and Steve Shipway] sql, ldap and
	ldap2 user inclusions now handles gecos. It uses 2nd returned column
	for sql and 2nd given attribute for ldap (comma separated).

	[7448] mail_tt2/user_notification.tt2, src/etc/Makefile.am,
	src/etc/scenari/automatic_list_creation.family_owner:7447),
	src/lib/Conf.pm, src/lib/Family.pm, src/lib/List.pm,
	src/lib/Scenario.pm, src/lib/Upgrade.pm, src/lib/admin.pm,
	src/lib/confdef.pm, src/sympa.pl.in, web_tt2/Makefile.am,
	web_tt2/automatic_lists.tt2:7447),
	web_tt2/automatic_lists_management_request.tt2:7447),
	web_tt2/automatic_lists_request.tt2:7447),
	web_tt2/family_signoff.tt2:7447),
	web_tt2/family_signoff_request.tt2:7447),
	web_tt2/family_signoff_request2.tt2:7447), web_tt2/menu.tt2,
	wwsympa/wwsympa.fcgi.in: [Requested and funded by the CNRS] Automatic
	lists can now be manipulated through the sympa web interface, in a
	"user friendly" form. This is merely a web layer around the general
	autmatic lists feature. This feature is fully documented here:
	https://www.sympa.org/manual_6.2/user_friendly_autolists
	Additionnally, it is now possible to unsubscribe to all the lists of a
	given family in two clicks.

	[7414] src/lib/List.pm, src/lib/confdef.pm, src/sympa.pl.in,
	src/sympa_wizard.pl.in, wwsympa/wwsympa.fcgi.in:  New "voot_feature"
	sympa.conf paramter. Default value is "off". If set to "on", enables
	the VOOT feature.

	[7341] configure.ac: [Submitted by X. Bachelot] New configure option
	available: --with-staticdir. this option allows admins to specify the
	location of the static data directory. this directory is used for data
	that don't need to be parsed by Sympa at each web request, e.g. CSS,
	icons, etc.

	[7326] wwsympa/wwsympa.fcgi.in:  Search on list review page allows
	case-insensitive match for non-ASCII letters.

*****	[7325] src/lib/Datasource.pm, src/lib/List.pm, src/lib/tools.pm,
*****	web_tt2/notice.tt2, web_tt2/review.tt2:  Adding a datasource config
*****	parameter to disable sync include when in specified time ranges.
*****	Ranges are described as a space separated list of time periods.
*****	A time period consists in 2 times separated by an hyphen.
*****	A time can be either just the hours digits or also hours and minutes if
*****	separated by a colon.
*****	Examples of time periods :
*****	17:45-19:35
*****	08:20-12:00
*****	8:20-12
*****	21-23
*****	23-02:10
*****	23-02
*****	23-2
*****	As a bonus the big pinfo list parameter description hash gets a new
*****	indentation for increased readability.

	[7323] src/lib/admin.pm:  If the follwing files are defined in the
	family directory, they are parsed and installed for each list in the
	family:
	- message.footer.tt2 (parsed as message.footer)
	- message.header.tt2 (parsed as message.header)
	- message.footer.mime.tt2 (parsed as message.footer.mime)
	- message.header.mime.tt2 (parsed as message.header.mime)
	- info.tt2 (parsed as info)
	For now, these files are parsed at list creation only. Later
	improvments will allow these files to be recreated when a list is
	reinstantiated.

*****	[7321] src/lib/Conf.pm, src/lib/List.pm, src/lib/Upgrade.pm,
*****	src/lib/admin.pm, src/lib/confdef.pm, src/sympa.pl.in,
*****	wwsympa/wwsympa.fcgi.in: [Patch from Riseup] Adding a database cache of
*****	several list config values. This cache allows to speed up list
*****	searches, pending lists page and such. To set up the cache after the
*****	upgrade run the following command : sympa.pl --sync_list_db

	[7311] mail_tt2/invite.tt2, mail_tt2/message_report.tt2,
	soap/sympa.wsdl, soap/sympasoap.pm, src/lib/List.pm,
	src/lib/Makefile.am, src/lib/Message.pm,
	src/lib/OAuthConsumer.pm:7310), src/lib/OAuthProvider.pm:7310),
	src/lib/Sympa/DatabaseDescription.pm, src/lib/VOOTConsumer.pm:7310),
	src/lib/VOOTProvider.pm:7310), src/lib/report.pm, web_tt2/Makefile.am,
	web_tt2/create_list_request.tt2, web_tt2/css.tt2, web_tt2/error.tt2,
	web_tt2/list_menu.tt2, web_tt2/oauth_authorize.tt2:7310),
	web_tt2/oauth_check.tt2:7310),
	web_tt2/select_voot_groups_request.tt2:7310),
	web_tt2/select_voot_provider_request.tt2:7310),
	wwsympa/SympaSession.pm, wwsympa/wwsympa.fcgi.in:  Adding OAuth/VOOT
	provider/consumer capabilities.
	VOOT is a Opensocial/OAuth based group membership sharing protocol.
	It allows to easily synchronize external groups with any Sympa list
	using Opensocial requests.
	It also allows to include members from an external Opensocial capable
	group manager in a list.
	For more information on VOOT, see :
	https://github.com/andreassolberg/voot/wiki/Protocol

	[7201] src/lib/admin.pm, src/sympa.pl.in, wwsympa/wwsympa.fcgi.in:  new
	--change_user_email for sympa.pl. It allows to change a user email
	address in all virtual robots with a single command

	[7172] wwsympa/wwsympa.fcgi.in: Added stack traces to log level 'err'

	[7144] src/lib/DBManipulatorDefault.pm,
	src/lib/DBManipulatorPostgres.pm, src/lib/SDM.pm,
	src/lib/Sympa/DatabaseDescription.pm:  Full support of automatic
	database upgrade for PostgreSQL.

	[7073] web_tt2/list_menu.tt2:  Added a hook in the list_menu.tt2 web
	template. This allows you to create a template called
	"additional_list_menu_links.tt2". If the template is present in the
	relevant web_tt2 directory (either list, robot or server), its content
	will be added at the bottom of the list_menu panel.

	[7067] mail_tt2/command_report.tt2,
	mail_tt2/listmaster_notification.tt2, soap/sympasoap.pm,
	src/etc/edit_list.conf, src/lib/Commands.pm, src/lib/Family.pm,
	src/lib/List.pm, src/lib/Upgrade.pm, src/lib/confdef.pm,
	src/sympa.pl.in, wwsympa/wwsympa.fcgi.in:  The maximum number of users
	for a list can now be limited. This number is set using the new
	"max_list_members" list parameter. If set to 0 (default), the number of
	users is not limited. The default value for this list parameter is the
	new sympa.conf parameter "default_max_list_members".

	[7066] src/lib/Datasource.pm, src/lib/List.pm, web_tt2/notice.tt2,
	web_tt2/review.tt2: [#6089]There is now, four new params in a config
	list :Starthour,Startminute,Endhour,
	Endminute.
	There are implements in SQLSources, LDAPSources and LDPA2levelSources.
	With this params, you can 
	enter a period of time wich disable the syncronization.
	There are use in a new function, in "Datasoutce.pm" :
	"is_allowed_to_sync", which return 1 if the
	syncronization is allowed, or 0 if it is not. With this function, you
	can start your period of n
	o syncronization the current day, and finish it, the next day.
	Then, this function is called in the function
	"_load_list_members_from_include" in "List.pm"
	Firstly, we check if the current id was present in the hash of
	old_subscribers* (it corresponds a
	t the subscribers before the syncronization).
	This permit to know if it's a new subscribers, OR if there is changing
	in the configuration list.
	Next, we check if it's allowed to syncronize or not :
	If it is : we can add new subscribers and update the others.
	It it is not : we make an array with subscribers who are excluded.
	To finish, in sync_include, we check if there are exclusions. 
	If it is the case :
	Feed the new_subscribers hash with users previously subscribed with
	data sources not used because
	we were not in the period of
	time during which synchronization is allowed. This will prevent these
	users from being unsubscrib
	ed.
	*The hash of old_subscribers (wich is returned)is create in a new
	function "get_list_of_sources_i
	d".
	This function is called in parameters in the function
	"_load_list_members_from_include".

	[7063] src/lib/Log.pm, src/lib/tools.pm, src/task_manager.pl.in,
	web_tt2/stats.tt2, wwsympa/wwsympa.fcgi.in:  Improved stats display:
	data are agregated for each day and all the available data are diaplyed
	in charts.

	[7046] src/lib/confdef.pm, web_tt2/main.tt2, wwsympa/wwsympa.fcgi.in:
	[#6631][requested by O.Lumineau]Per-robot favicon URL

	[7037] mail_tt2/certif_warning.tt2, mail_tt2/command_report.tt2,
	mail_tt2/global_remind.tt2, mail_tt2/helpfile.tt2,
	mail_tt2/index_archive.tt2, mail_tt2/list_created.tt2,
	mail_tt2/list_rejected.tt2, mail_tt2/list_unknown.tt2,
	mail_tt2/listeditor_notification.tt2,
	mail_tt2/listmaster_notification.tt2,
	mail_tt2/listowner_notification.tt2, mail_tt2/lists.tt2,
	mail_tt2/message_report.tt2, mail_tt2/request_auth.tt2,
	mail_tt2/sendpasswd.tt2, mail_tt2/user_notification.tt2,
	mail_tt2/which.tt2, mail_tt2/your_infected_msg.tt2, src/lib/List.pm,
	src/lib/confdef.pm: [#3802][submited by P.Crandall, U.Chicago] SYMPA
	gecos used in service messages is no more hard-coded. New 'email_gecos'
	sympa.conf parameter.

	[7035] src/lib/confdef.pm, src/sympa.pl.in: [#6492]Provide expiration
	of in-memory msgid_table. 2 new sympa.conf parameters :
	msgid_table_cleanup_frequency msgid_table_cleanup_ttl

	[7001] src/etc/auth.conf, src/lib/Conf.pm, wwsympa/wwsympa.fcgi.in: 
	New 'auth_service_friendly_name' in auth.conf CAS paragraph. This
	allows to set a display name for the CAS server, without the
	constraints that 'auth_service_name' entry has ([\w\-\.]).

	[6975] src/etc/script/create_db.Pg, src/lib/Sympa/Constants.pm.in,
	src/lib/Upgrade.pm:  add support of postgresql in automatic upgrade
	process

	[6959] src/lib/tools.pm, web_tt2/compose_mail.tt2, web_tt2/error.tt2,
	wwsympa/wwslib.pm, wwsympa/wwsympa.fcgi.in:  It is now possible, when
	sending an HTML newsletter through the web interface, to upload a local
	file from the computer instead of using an URL.

	[6944] src/etc/Makefile.am, src/etc/mhonarc-ressources.tt2,
	src/etc/scenari/tracking.owner, src/etc/scenari/tracking.private,
	src/lib/List.pm, src/lib/mail.pm, wwsympa/wwsympa.fcgi.in:  tracking is
	now controled by a scenario (default is tracking.owner)


  Changes:

	[12182] default/Makefile.am, default/web_tt2/active_lists.tt2,
	[Submitted by O. Lumineau, RENATER] Improved web skin with responsive design and several
	skins bug fixes. You'll note that the Sympa top menu is back. For those
	of you who preferred the original Massey side menu, you can switch the
	menu position by simply editing the main.tt2 template. At the
	beginning, you'll see this: [% top_menu = 1 %]. Simply set this
	variable value to 0 and the menu will go back on the side and clear up
	the top window area.

	[12180] Makefile.am, configure.ac, src/smtpc/Makefile.am,
	src/smtpc/configure.gnu, sympa.spec.pl:  (r12172) Move $sbindir/smtpc
	to $libexecdir/sympa_smtpc and restrict access permission only to sympa
	user.  Below is revised commit log message.

	[12132] src/lib/Sympa/DatabaseDriver/LDAP.pm:  Now "ca_verify none"
	must be specified explicitly to disable certificate verification in
	LDAP data sources and LDAP authentication service including cas and
	generic_sso.
	Background: Earlier releases of IO::Socket::SSL would fallback
	SSL_verify_mode to SSL_VERIFY_NONE when there are no usable CAfile nor
	CApath.  However, recent releases won't: They simply deny connection. 
	As a workaround, make ca_file or ca_path parameter mandatory unless
	"none" is explicitly assigned to ca_verify parameter (its default is
	"optional").

	[12129] src/bin/Makefile.am, src/bin/testldap.pl.in:12113),
	src/bin/testldap.pl.in:  testldap.pl was renamed to sympa_test_ldap.pl
	and uses LDAP database driver.

	[12127] src/lib/Sympa/ConfDef.pm:  Making urlize_min_size definable at
	the virtual host level.

	[12093] default/create_list_templates/confidential/comment.tt2,
	default/create_list_templates/discussion_list/comment.tt2,
	default/create_list_templates/hotline/comment.tt2,
	default/create_list_templates/html-news-letter/comment.tt2,
	default/create_list_templates/intranet_list/comment.tt2,
	default/create_list_templates/news-letter/comment.tt2,
	default/create_list_templates/private_working_group/comment.tt2,
	default/create_list_templates/public_web_forum/comment.tt2,
	default/web_tt2/create_list_request.tt2, src/cgi/wwsympa.fcgi.in,
	src/lib/tools.pm:  Format of create list templates was changed. 
	comment.tt2 may have title line.  "title.gettext" and "title.<lang>"
	are allowed.  Customized templates for earlier releases should be
	modified.

	[12075] src/bin/arc2webarc.pl.in, src/cgi/wwsympa.fcgi.in,
	src/lib/Conf.pm, src/lib/Makefile.am, src/lib/Sympa/List.pm,
	src/lib/Sympa/Spool/Archive.pm, src/lib/Sympa/Upgrade.pm,
	src/sbin/archived.pl.in:  Format of messages in archiving spool
	("outgoing" spool) are changed.  By this change, messages will be
	handled safer and archiving will be done a bit faster.
	Messages in the spool with older format will be automatically migrated
	during upgrading process.

	[12074] src/bin/Makefile.am:  create_db script for Oracle was dropped.
	Use sympa.pl --health_check instead.

	[12029] default/web_tt2/news.tt2, src/cgi/wwsympa.fcgi.in:  Impoving
	the details given to user when errors are reported to him.

	[12004] src/lib/Sympa/Upgrade.pm:  If you upgrade from Sympa 6.2a or
	6.2b, statistics are cleared, because older information is no longer
	usable.

	[11995] src/lib/Sympa/Scenario.pm:  When scenario debug log is
	activated, the scenario file used is also logged.

	[11985] src/lib/Sympa/ListDef.pm, src/libexec/ldap_alias_manager.pl.in:
	 Default cryptographic protocol of LDAP over SSL/TLS became TLSv1. 
	Note that SSLv2 and SSLv3 are no longer recommended due to their
	weakness.
	- List config: The default of "ssl_version" parameters in
	"include_ldap" paragraph and so on became "tlsv1".
	- ldap_alias_manager.pl: New parameter "ldap_ssl_version" to specify
	protocol version which defaults to "tlsv1" was introduced.  On earlier
	releases it was fixed to "sslv3".
	[11978] src/bin/mod2html.pl.in, src/bin/testlogs.pl.in,
	src/cgi/sympa_soap_server.fcgi.in, src/cgi/wwsympa.fcgi.in,
	src/lib/Log.pm, src/libexec/alias_manager.pl.in,
	src/sbin/archived.pl.in, src/sbin/bounced.pl.in, src/sbin/bulk.pl.in,
	src/sbin/sympa.pl.in, src/sbin/sympa_automatic.pl.in,
	src/sbin/sympa_msg.pl.in, src/sbin/sympa_newaliases.pl.in,
	src/sbin/task_manager.pl.in:  A few service names in system log and
	database logs were changed.  Now they are taken from the name of each
	program:
	- sympa_automatic.pl : "sympa_automatic" (formerley "sympa")
	- sympa_msg.pl : "sympa_msg" (formerly "sympa")
	Exception:
	- sympa_soap_server.fcgi : "sympasoap" (formerly "soap")
	ToDo: sympa_soap_server.fcgi would be renamed.

	[11970] src/lib/Sympa/List.pm, src/lib/Sympa/Upgrade.pm,
	src/lib/tools.pm, src/sbin/sympa.pl.in, src/sbin/sympa_msg.pl.in:  Now
	digest spool will keep messages as separate files by each, instead of
	accumulating messages in single file with RFC934 format.  This change
	is desirable because messages may be locked and handled safely.

	[11912] src/etc/script/sympa.generic, src/etc/script/sympa.in,
	src/libexec/alias_manager.pl.in, src/sbin/Makefile.am,
	src/sbin/archived.pl.in, src/sbin/bounced.pl.in, src/sbin/bulk.pl.in,
	src/sbin/sympa.pl.in, src/sbin/sympa.pl.in:11903),
	src/sbin/sympa.pl.in:11903), src/sbin/task_manager.pl.in:  sympa.pl was
	splitted to three programs: sympa.pl command-line utility, sympa_msg.pl
	daemon and sympa_automatic.pl daemon.

	[11881] src/bin/Makefile.am:  create_db scripts for MySQL, PostgreSQL
	and SQLite were dropped.
	Use sympa.pl --health_check instead.

	[11880] default/web_tt2/editsubscriber.tt2,
	default/web_tt2/tracking.tt2, src/cgi/wwsympa.fcgi.in,
	src/lib/Sympa/DatabaseDescription.pm, src/lib/Sympa/Tracking.pm,
	src/sbin/bounced.pl.in, src/sbin/task_manager.pl.in:  Tracking: DSN and
	MDN are no longer stored into database table: They are stored into
	bounce directory by each list.
	Additionally, notifications may be shown in separate viewbounce page,
	instead of loading all notifications at the time of showing tracking
	index page.

*****	[11848] src/lib/Conf.pm, src/lib/Sympa/Upgrade.pm:  Improved upgrade
*****	process:
*****	- Now CSS files and colors are automatically forced to be defaulted to
*****	Sympa default values
*****	- templates are reinitialized to match the new Sympa skin
*****	The following files and directories are copies:
*****	- sympa.conf
*****	- robot.conf
*****	- web_tt2 for etc and each robot
*****	Users should see how their customization can be reinserted into the new
*****	Sympa skin.

	[11804] src/bin/Makefile.am, src/bin/crypt_passwd.pl.in,
	src/bin/crypt_passwd.pl.in:11797), src/lib/Sympa/Upgrade.pm,
	src/sbin/sympa.pl.in:  "sympa.pl --md5_encode_password" was obsoleted:
	Use upgrade_sympa_password.pl instead.
	Additionally, crypt_passwd.pl for earlier releases was deprecated.

	[11794] src/cgi/wwsympa.fcgi.in, src/lib/Conf.pm,
	src/lib/Sympa/Auth.pm, src/lib/Sympa/Datasource/LDAP.pm,
	src/lib/Sympa/Datasource.pm, src/lib/Sympa/List.pm,
	src/lib/Sympa/ListDef.pm, src/lib/Sympa/Regexps.pm,
	src/lib/Sympa/Scenario.pm:  Now "host" parameter of the LDAP datasource
	in list config may include URLs (ldap, ldaps and ldapi) along with
	hostnames.
	So "port" and "use_ssl" parameters would be obsoleted.
	Changes on code: host parameter of the LDAP datasource is checked by
	multiple_host_or_url regexp instead of multiple_host_with_port regexp;
	constructor of Sympa::Datasource::LDAP recognizes bind_dn and
	bind_password parameters; and as side effects, several cosmetic changes
	in sources are made.

*****	[11789] default/create_list_templates/confidential/config.tt2,
*****	default/create_list_templates/discussion_list/config.tt2,
*****	default/create_list_templates/hotline/config.tt2,
*****	default/create_list_templates/html-news-letter/config.tt2,
*****	default/create_list_templates/intranet_list/config.tt2,
*****	default/create_list_templates/news-letter/config.tt2,
*****	default/create_list_templates/private_working_group/config.tt2,
*****	default/create_list_templates/public_web_forum/config.tt2,
*****	default/edit_list.conf, src/cgi/wwsympa.fcgi.in,
*****	src/lib/Sympa/ConfDef.pm, src/lib/Sympa/List.pm,
*****	src/lib/Sympa/ListDef.pm, src/lib/Sympa/Scenario.pm,
*****	src/lib/Sympa/Upgrade.pm, src/sbin/archived.pl.in:  Changes of list
*****	config parameters on archiving.
*****	* New parameter "process_archive" controls archiving.
*****	The default is "off": To enable archiving, it must be set to "on"
*****	explicitly.  OTOH even if archiving is disabled by setting it "off",
*****	past archives will be kept and accessible according to access settings.
*****	* Renamed parameters.
*****	web_archive.access to archive.web_access;
*****	archive.access to archive.mail_access;
*****	web_archive.quota to archive.quota;
*****	web_archive,max_month to archive.max_month.
*****	Though config files of exisiting lists will be updated during upgrading
*****	process, listmasters are highly recommended to check new configuration.
*****	Customized scenarios, list creation templeates and edit_list.conf will
*****	never be upgraded automatically.  They should be modified manually, if
*****	neccessary.

	[11664] src/etc/script/sympa.generic, src/etc/script/sympa.in,
	src/lib/Conf.pm, src/lib/Sympa/ConfDef.pm, src/lib/Sympa/List.pm,
	src/sbin/sympa.pl.in:  sympa.pl distribution mode was withdrawn.
	- distribution spool will not be used anymore.
	- The --service option of sympa.pl was deprecated.
	- The distribution daemon and command processing daemon were removed.
	- The creation daemon will be forked from sympa.pl main daemon if
	automatic_list_feature configuration option is "on".
	- The distribution_mode configuration option was deprecated.

	[11655] default/web_tt2/javascript.tt2, www/Makefile.am, www/js:11654),
	www/external/images,
	www/external/images/ui-bg_flat_0_aaaaaa_40x100.png,
	www/external/images/ui-bg_flat_75_ffffff_40x100.png,
	www/external/images/ui-bg_glass_55_fbf9ee_1x400.png,
	www/external/images/ui-bg_glass_65_ffffff_1x400.png,
	www/external/images/ui-bg_glass_75_dadada_1x400.png,
	www/external/images/ui-bg_glass_75_e6e6e6_1x400.png,
	www/external/images/ui-bg_glass_95_fef1ec_1x400.png,
	www/external/images/ui-bg_highlight-soft_75_cccccc_1x100.png,
	www/external/images/ui-icons_222222_256x240.png,
	www/external/images/ui-icons_2e83ff_256x240.png,
	www/external/images/ui-icons_454545_256x240.png,
	www/external/images/ui-icons_888888_256x240.png,
	www/external/images/ui-icons_cd0a0a_256x240.png,
	www/external/jquery-ui.css, www/external/jquery-ui.js,
	www/external/jquery.js, www/external/sympa.js, www/js, www/js/sympa.js:
	 Update jquery version, add jquery ui, starts updating javascript to
	use more modern features.

	[11607] src/lib/Sympa/Message.pm, src/lib/tools.pm,
	src/sbin/sympa.pl.in:  New automatic lists handling logic so that file
	naming is more consistent and milter and familyqueue behave the same
	way.
	Now the sendmail milter MUST put serialized messages in files
	respecting the usual format
	(<final_list_with_domain>.<timestamp>.<pid>), file proccessing then
	becomes simpler.
	tools::unmarshal_metadata don't fail if listname doesn't exist, this is
	left to main::proccess_message logic.
	Patch will be submitted to the milter author to add a configuration
	switch enabling the new behavior in sympa-milter.conf -> <general> :
	file_prefix				list # Value defaults to
	"family" which is the old behavior

	[11596] default/Makefile.am, default/mail_tt2/Makefile.am,
	default/mail_tt2/digest_plain.tt2,
	default/mail_tt2/digest_plain.tt2:11584):  mail_tt2/digest_plain.tt2
	was renamed to mail_tt2/digestplain.tt2.

*****	[11556] Makefile.am, src/lib/Conf.pm, src/lib/Sympa/Bulk.pm,
*****	src/lib/Sympa/ConfDef.pm, src/lib/Sympa/DatabaseDescription.pm,
*****	src/lib/Sympa/LockedFile.pm, src/lib/Sympa/Mailer.pm,
*****	src/lib/Sympa/Message.pm, src/lib/Sympa/Tools/Daemon.pm,
*****	src/sbin/bulk.pl.in, src/sbin/sympa.pl.in, src/sbin/task_manager.pl.in:
*****	 Spool for bulk sending no longer depends on database tables: It based
*****	on filesystem.
*****	Packets and messages stored in database by earlier version of Sympa
*****	should be migrated using update_bulk_spool.pl utility.

*****	[11475] configure.ac, src/lib/Conf.pm, src/lib/Sympa/Upgrade.pm,
*****	src/sbin/sympa.pl.in, src/sbin/sympa_wizard.pl.in:  Default config
*****	location is now /etc/sympa/ (or $sysconfig/sympa/) instead of /etc/.
*****	This solves the problem of config file lock creation being denied when
*****	trying to read the binary version of the config file at startup.
*****	WARNING : to upgrade the config location one MUST run sympa.pl
*****	--upgrade_config_location before any other upgrading operation.

	[11325] src/bin/Makefile.am, src/lib/tools.pm:11322),
	src/cgi/wwsympa.fcgi.in, src/lib/Sympa/Mail.pm,
	src/lib/Sympa/Message.pm, src/lib/tools.pm, src/sbin/sympa.pl.in:  Now
	messages sent via WWSympa will be stored in bulk spool, directly if
	they are outbound messages.  On earlier releases outbound messages were
	injected in msg spool with special checksum.
	A program upgrade_send_spool.pl to migrate messages with old format is
	proveded.

	[11313] src/cgi/wwsympa.fcgi.in, src/lib/Sympa/List.pm,
	src/sbin/sympa.pl.in:  Messages forwarded to listmaster, owner or
	editor, and archived messages resent by user, will be added or modified
	header fields such as Sender:.	Thus, messages will be forwarded
	safely.
	Known bug: Existing DKIM signature depending on those header fields may
	be broken.

	[11311] src/cgi/wwsympa.fcgi.in, src/lib/Sympa/Mail.pm,
	src/sbin/sympa.pl.in:  Messages forwarded to listmater, owner or
	editor, and archived messages resent by user, no longer have
	"Auto-Submitted: auto-forwarded" header field.
	The "auto-forwarded" keyword was once proposed by
	draft-palme-autosub-01, however withdrawn by rev.02 of this I-D and
	have not been registered by IANA:
	http://www.iana.org/assignments/auto-submitted-keywords

	[11309] src/bin/p12topem.pl.in, src/lib/Conf.pm,
	src/lib/Sympa/ConfDef.pm, t/Tools_SMIME.t:  openssl(1) utility is no
	longer required.  Instead, a few CPAN modules are required to use
	S/MIME or SSL features:
	- Crypt::SMIME
	- Crypt::OpenSSL::X509
	The parameter "openssl" in sympa.conf was obsoleted.
	Note that p12topem.pl still needs openssl: To make it work, PATH
	environment variable should be set appropriately.

	[11160] src/sbin/archived.pl.in, src/sbin/bounced.pl.in,
	src/sbin/sympa.pl.in:  (r11007, r11158) Again, file extensions of lock
	files are changed from ".lock" to ",lock" (comma and "lock"), because
	names including full stop can conflict with domain parts.  Temporary
	files created by Sympa::LockedFile are also renamed in similar way.

	[11007] src/lib/Sympa/LockedFile.pm:  File extension of lock files are
	changed from ".lock" to ".LOCK", because lowercase name can conflict
	with domain part in the future.

	[11001] src/sbin/sympa.pl.in:  Now sympa.pl discards (ignores) messages
	without message ID (Message-Id: header field).	Such messages will
	cause several troubles.

*****	[10721] important_changes.pl, po/sympa/add-lang.pl,
*****	po/sympa/check_locales.pl, po/sympa/xgettext.pl,
*****	src/Sympa/Extractor.pm, src/bin/arc2webarc.pl.in, src/bin/arcrepair.pl,
*****	src/bin/crypt_passwd.pl.in, src/bin/find_missing_messages.pl,
*****	src/bin/init_comment.pl.in, src/bin/mod2html.pl.in,
*****	src/bin/p12topem.pl.in, src/bin/sympa_soap_client.pl.in,
*****	src/bin/testldap.pl.in, src/bin/testlogs.pl.in, src/bin/tpl2tt2.pl.in,
*****	src/cgi/sympa_soap_server.fcgi.in, src/cgi/wwsympa.fcgi.in,
*****	src/lib/Archive.pm, src/lib/Auth.pm, src/lib/Bounce.pm,
*****	src/lib/Bulk.pm, src/lib/Commands.pm, src/lib/Conf.pm,
*****	src/lib/Config_XML.pm, src/lib/DBManipulatorDefault.pm,
*****	src/lib/DBManipulatorInformix.pm, src/lib/DBManipulatorMySQL.pm,
*****	src/lib/DBManipulatorOracle.pm, src/lib/DBManipulatorPostgres.pm,
*****	src/lib/DBManipulatorSQLite.pm, src/lib/DBManipulatorSybase.pm,
*****	src/lib/Datasource.pm, src/lib/Family.pm, src/lib/Fetch.pm,
*****	src/lib/LDAPSource.pm, src/lib/Ldap.pm, src/lib/List.pm,
*****	src/lib/Log.pm, src/lib/Marc/Search.pm, src/lib/Marc.pm,
*****	src/lib/Message.pm, src/lib/PlainDigest.pm, src/lib/Robot.pm,
*****	src/lib/SDM.pm, src/lib/SQLSource.pm, src/lib/Scenario.pm,
*****	src/lib/SharedDocument.pm, src/lib/Sympa/Constants.pm.in,
*****	src/lib/Sympa/DatabaseDescription.pm, src/lib/Sympa/Language.pm,
*****	src/lib/Sympa/ListDef.pm, src/lib/Sympa/LockedFile.pm,
*****	src/lib/Sympa/ModDef.pm, src/lib/Sympa/Regexps.pm,
*****	src/lib/Sympa/User.pm, src/lib/SympaSession.pm,
*****	src/lib/SympaTransport.pm, src/lib/Task.pm, src/lib/Upgrade.pm,
*****	src/lib/admin.pm, src/lib/confdef.pm, src/lib/cookielib.pm,
*****	src/lib/mail.pm, src/lib/report.pm, src/lib/sympasoap.pm,
*****	src/lib/tools.pm, src/lib/tracking.pm, src/lib/tt2.pm,
*****	src/lib/wwslib.pm, src/libexec/alias_manager.pl.in,
*****	src/libexec/ldap_alias_manager.pl.in,
*****	src/libexec/mysql_alias_manager.pl.in, src/sbin/archived.pl.in,
*****	src/sbin/bounced.pl.in, src/sbin/bulk.pl.in, src/sbin/sympa.pl.in,
*****	src/sbin/sympa_newaliases.pl.in, src/sbin/sympa_wizard.pl.in,
*****	src/sbin/task_manager.pl.in:  Reformatting Perl sources using perltidy,
*****	except: src/lib/Challenge.pm, src/lib/WebAgent.pm and files under ext/.
*****	Additionally reparing long comment lines.
*****	Used configuration for perltidy (.perltidyrc) is approximately:

	[10616] web_tt2/tt2_error.tt2:	Give tt2_error.tt2 the same layout with
	main page.

	[10540] src/lib/Bulk.pm:  New parameters for merged messages.
	"part.description", "part.disposition", "part.encoding" and "part.type"
	may be used for each part of input messages.  These are all-lowercase
	(except "part.description").

	[10529] Makefile.am, po/Makefile.in.in, po-wwsympa/Makefile.in.in,
	src/lib/Makefile.am, src/lib/Language.pm:10481),
	src/sympa_wizard.pl.in, t/Language.t, t/locale, t/locale/cs,
	t/locale/cs/LC_MESSAGES, t/locale/cs/LC_MESSAGES/sympa.po,
	t/locale/cs/LC_MESSAGES/web_help.po, t/locale/zh_TW,
	t/locale/zh_TW/LC_MESSAGES, t/locale/zh_TW/LC_MESSAGES/sympa.po,
	t/stub, t/stub/Sympa, t/stub/Sympa/Constants.pm:  Sympa::Language,
	rewriting of Language module to handle i18n.
	The new module is committed for purpose of unit test.
	Coming features:
	- Language/locale contexts are identified by IETF language tags defined
	by RFC 5646 (BCP 47).  Older style "locale" by earlier releases would
	be canonicalized.
	- System locale is not absolutely nessessary to add a new language:
	gettext catalog is required.
	- If appropriate POSIX locale is not installed, gettext_strftime()
	emulates POSIX::strftime(): names of days, months etc. will be taken
	from catalog.
	- Content negotiation used by HTTP 1.1 was implemented.
	Internal changes:
	- "Language:" field in PO header became mandatory to determine actually
	selected catalog.  Modified po/Makefile.in.in to run msgcat, msgen or
	msgmerge with --lang option.
	- Dependent libintl-perl (Locale::Messages) requires 1.22 (virtually
	1.23) or later to use locale-independent gettext_dumb feature.
	- Default language context is fixed to "en" and no longer retrieved
	implicitly from site config (charset.conf).  $Language::default_lang
	was deprecated.
	Miscelaneous:
	- Added unittest t/Language.t and several test data.
	- Added test stub module for Sympa::Constants.

	[10347] src/lib/confdef.pm:  Now listmater_email parameter doesn't have
	the default.  It should be defined explicitly.

	[10325] src/lib/List.pm, wwsympa/wwsympa.fcgi.in:  Some list parameters
	are marked 'obsolete' since they are not used:
	* archive.priod
	* bounce.halt_rate
	* dkim.header_list
	* account
	wwsympa.fcgi: On edit_list page, skip obsoleted components of
	structured parameters.
	ToDo: obsoleted components also would not be load/saved (List.pm).

	[10324] src/lib/List.pm:  Custom subject tag will be encoded by the
	charset encoding original subject as much as possible.	Because some
	MUAs cannot handle encoded headers containing encoded-words encoded by
	multiple charsets by each.

	[10266] src/lib/Bulk.pm, src/lib/Conf.pm, src/lib/List.pm,
	src/lib/Makefile.am, src/lib/Sympa/LockedFile.pm, src/lib/admin.pm,
	src/lib/confdef.pm, src/lib/tools.pm, src/sympa_wizard.pl.in, t,
	t/LockedFile.t:  New Sympa::LockedFile replacing Lock.
	Sympa::LockedFile is full rewrite of Lock.  It will carry out lock &
	open / close & unlock at once.	flock() will never be used:
	File::NFSLock will be entirely used.
	Note:
	- File::NFSLock is mandatory.
	- An unit test LockedFile.t was added but it may not work at present.

*****	[10237] Makefile.am, src/lib/Conf.pm, src/lib/List.pm,
*****	src/lib/Upgrade.pm, src/sympa_wizard.pl.in:  wwsympa.conf will no
*****	longer be used: it would be migrated to sympa.conf.
*****	- Makefile.am: no longer create wwsympa.conf during installation.
*****	- sympa_wizard.pl: --create argument disallows "wwsympa.conf" option.
*****	- Upgrade.pm: migrate wwsympa.conf during upgrade process.
*****	- wwslib::load_config() were renamed to Conf::_load_wwsconf().
*****	Note: Run "sympa.pl --upgrade" to migrate wwsympa.conf into sympa.conf.

*****	[10207] src/etc/script/create_db.Oracle, src/etc/script/create_db.Pg,
*****	src/etc/script/create_db.SQLite, src/etc/script/create_db.Sybase,
*****	src/etc/script/create_db.mysql:  Two new database fields appeared in
*****	this version and a field was modified.
*****	- The new fields are prev_id_session (varchar(30)) and
*****	refresh_date_session (int(11)). they are located in the session_table 
*****	table.
*****	- The modified field is dkim_privatekey_bulkspool and is located in the
*****	bulkspool_table table. Its length went from varchar(1000) to
*****	varchar(2000).
*****	Sympa install using MySQL and SQLite backends will have no trouble at
*****	all, as the database structure is updated by Sympa.
*****	However, if you use Postgres, Oracle or Sybase, please have a look
*****	(respectively) at the create_db.Pg, create_db.Oracle or
*****	create_db.Sybase to check the definition of those fields. Please update
*****	your database structure before running Sympa.

	[10206] src/lib/Sympa/DatabaseDescription.pm:  Changing length of DKIM
	private key in database to ensure database creation scripts will be
	updated.

	[10193] src/lib/admin.pm, src/lib/confdef.pm:  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'.

	[10129] src/lib/List.pm:  Custom vars values can take any character
	string as values (previously, spaces were forbidden).

	[10065] web_tt2/javascript.tt2, web_tt2/skinsedit.tt2,
	wwsympa/wwsympa.fcgi.in:  custom colors along with configured colors
	are shown during testing colors.
	Improved javascript.js:chooseColorNumber() to update position.

	[10039] src/etc/scenari/send.editorkey,
	src/etc/scenari/send.privateandnomultipartoreditorkey,
	src/etc/scenari/send.publicnoattachment,
	src/etc/scenari/send.publicnomultipart,
	src/etc/scenari/spam_status.x-spam-status:  (con'd r10038) Limit the
	header fields to be checked by scenarios.
	- In spam_status scenario, last occurrences of X-Spam-status and so on
	will be checked, since others are not trustworthy.
	- Also, the last X-sender field would be checked.
	n.b. I doubt if this field is trustworthy, though.
	- In send scenario, first occurrences of Content-Type and so on will be
	checked, since they must appear only at once.

	[10025] src/bulk.pl.in, src/lib/Conf.pm, src/lib/confdef.pm,
	src/lib/tools.pm, src/sympa.pl.in, src/task_manager.pl.in,
	wwsympa/archived.pl.in, wwsympa/bounced.pl.in, wwsympa/wwslib.pm: 
	[bug] [#7059] pidfile site parameters should be obsoleted.
	As PID file paths are fixed during configure and included in init
	script, those parameters are not usable.

*****	[9989] configure.ac, src/Makefile.am, src/alias_manager.pl.in,
*****	src/etc/script/ldap_alias_manager.pl.in,
*****	src/etc/script/mysql_alias_manager.pl.in, src/lib/confdef.pm,
*****	src/sympa_newaliases-wrapper.c, src/sympa_newaliases.pl.in:  Now alias
*****	maintenance utilities other than newaliases may be used without special
*****	configure options nor patch to alias_manager.pl.
*****	Changes:
*****	- aliaswrapper and virtualwrapper were deprecated and replaced with
*****	sympa_newaliases-wrapper.
*****	- New alias management program sympa_newaliases.pl which will typically
*****	be
*****	called by alias_manager.pl via sympa_newaliases-wrapper.
*****	- New site configuration parameters aliases_db_type and aliases_program
*****	will control behaviour of alias database maintenance.
*****	- configure script:
*****	- Options --with-sendmail_aliases and --with-virtual_aliases were
*****	deprecated.  Use --with-aliases_file instead.
*****	- New options --with-makemap and --with-postalias, along with
*****	options --with-newaliases and --with-postmap are available.
*****	- Option --with-postmap_arg was removed.
*****	- Alias managers can handle postmap/makemap style maps (delimited by
*****	whitespace), not only newaliases style maps (delimited by colon).

	[9972] src/lib/admin.pm:  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.

	[9954] src/lib/Message.pm: [Submitted by S. shipway, univ. Auckland]
	When Sympa receives a mail without 'From' field, it tries to find the
	sender by parsing the 'Envelope-From', 'X-Sender' and 'return-Path'
	fields before giving up and moving the message to bad.

	[9953] wwsympa/wwsympa.fcgi.in: [Submitted by S. Shipway, univ.
	Auckland] several changes in privilegs to ease everyday lists
	moderation:
	- Owners and lismasters can moderate messages and shared repository
	- Editors can moderate subscriptions
	- 'del' and 'add' sceanrios are evaluated to make their result
	available in each page.

	[7658] src/lib/Sympa/DatabaseDescription.pm:  Reverting commit [7637].
	This change could have lead to exclusion preventions by Sympa. Family
	does not have to be part of the key to allow multiple family
	unsubscritption as a dummy list name is given when family
	unsubscribing.

	[7657] src/lib/Sympa/DatabaseDescription.pm:  Reverting commit [7636].
	This change could have lead to exclusion preventions by Sympa. Family
	does not have to be part of the key to allow multiple family
	unsubscritption as a dummy list name is given when family
	unsubscribing.

	[7636] src/lib/Sympa/DatabaseDescription.pm:  Now the family_exclusion
	field is part of the exclusion_table primary_key. This allows users to
	be excluded from several families.

*****	[7614] src/lib/List.pm, src/lib/Scenario.pm, src/lib/confdef.pm: 
*****	Widely extended logs when the log_module parameter is activated with
*****	the value 'scenario': all scenario results are evaluated.
*****	Remember that extended logs can be limited by the IP or the email of
*****	the user, using the 'log_condition' parameter. log_module and
*****	log_condition are now declared in sympa.conf instead of wwsympa.conf
*****	Remember these parameters syntax:
*****	log_module: can take the value "scenario"
*****	log condition: takes a character string as value. The form is
*****	"ip=<an.ip>,email=<an_email>". You can pu ip alone, email alone or
*****	both, with the comma-separated form.

	[7612] src/lib/List.pm:  Lowering the log level of message in
	'get_list_member_no_object' stating that a user was not found in the
	list members. this is a normal behaviour and should not issue a log in
	normal circumstances.

	[7601] src/lib/Sympa/DatabaseDescription.pm:  Now
	DatabaseDescription.pm contains the full description of teh database,
	including comments and field position in tables.

	[7585] web_tt2/list_panel.tt2:	Adding/updating links to quickly edit
	owners and editors from list panel

	[7583] web_tt2/edit_list_request.tt2, web_tt2/main.tt2,
	web_tt2/nav.tt2:  Moving the "Customising" link from main list admin to
	list config sub section as list related text files are in a way list
	configuration parameters as well.

	[7577] wwsympa/wwsympa.fcgi.in:  When an error occurs when creating a
	list through the web interface, the user stays on the list creation
	page with her previously filled list description still present.

	[7576] src/lib/admin.pm:  Now Sympa prevents users from creating a list
	whose local part of email address would be the local part used by sympa
	for mail commands.

	[7541] src/lib/Bulk.pm:  Now the bulk master will fork slave bulks only
	if the number of UNLOCKED remaining packets exceeds the threshold
	defined in 'bulk_fork_threshold' sympa.conf parameter.

	[7529] po/LINGUAS, po/Makefile.in.in, po/ar.po, po/bg.po, po/br.po,
	po/ca.po, po/cs.po, po/de.po, po/el.po, po/en.po, po/en_US.po,
	po/es.po, po/et.po, po/eu.po, po/fi.po, po/fr.po, po/gl.po, po/hu.po,
	po/id.po, po/it.po, po/ja.po, po/ko.po, po/la.po, po/ml.po,
	po/nb_NO.po, po/nl.po, po/oc.po, po/pl.po, po/pt.po, po/pt_BR.po,
	po/ro.po, po/ru.po, po/sv.po, po/sympa.pot, po/tr.po, po/vi.po,
	po/zh_CN.po, po/zh_TW.po, po-wwsympa/LINGUAS, po-wwsympa/en.po,
	po-wwsympa/en_US.po, src/lib/Language.pm, src/lib/confdef.pm,
	src/lib/mail.pm, wwsympa/wwsympa.fcgi.in:  Now the English locale is
	the - more general - 'en' instead of 'en_US', saving people the need to
	install the en_Us if they don't use it.

	[7525] src/lib/Sympa/DatabaseDescription.pm:  Now SQLite fields
	corresponding to booleans or timestamps are defined as plain numeric.

*****	[7518] src/lib/Conf.pm, src/lib/confdef.pm, wwsympa/archived.pl.in,
*****	wwsympa/wwsympa.fcgi.in:  The arc_path wwsympa.conf parameter can now
*****	be defined at the robot level. If you want to use this feature, follow
*****	these steps:
*****	1- stop archived.pl
*****	2- move the robot archives to the location specified in the arc_path
*****	robot parameter
*****	3- restart wwsympa.fcgi
*****	4- start archived.pl

	[7490] web_tt2/help_admin.tt2, web_tt2/help_introduction.tt2,
	web_tt2/help_listconfig.tt2, web_tt2/serveradmin.tt2:  Some fixes on
	help ---
	- web_tt2/help_listconfig.tt2: Removed non-existing visibility scenari
	(private and semipublic).
	- web_tt2/serveradmin.tt2: changed link to translation FAQ.
	- web_tt2/help_introduction.tt2, web_tt2/help_admin.tt2: Removed dead
	links to example of charters.

*****	[7444] mail_tt2/listmaster_notification.tt2, src/bulk.pl.in,
*****	src/lib/tools.pm, src/sympa_wizard.pl.in: Now the bulk master daemon
*****	checks its actual children processes, compare the pid found to the list
*****	of children it created. If some children died, the listmaster is
*****	notified and new children are created to reach the maximum allowed
*****	number of processes. This functionnalityt introduces a new dependency
*****	to the Proc::ProcessTable module. In addition, Sympa processes put a
*****	lock on pid files when changing its content. This prevents multiple
*****	instannces process from failing to write to the pid file.

	[7416] src/bulk.pl.in:	Now bulk master daemon checks the number of
	packets to send at its first loop, preventing it from trying to send
	packets before forking. This will speed up the distribution process if
	the bulk starts when a lot of packets are already waiting to be sent.

	[7415] src/lib/tools.pm:  Now a lock is put on pid file before
	modifying them. This will prevent conflicts when a Sympa process can
	run in multiple instances.

	[7413] src/lib/Lock.pm:  Now the "new" function in Lock.pm
	systematically give ownership of the ".lock" files to the Sympa user to
	prevent lock modification impossibility due to write permission denial.

	[7402] src/lib/List.pm:  When a user did not exist in database, trying
	to retrieve information would lead to a log indicating that it was not
	possible to retrieve informations about the user in the database.
	Though true, this message could lead admins to think that connection to
	the databdase was faulty. Now, the messages clearly distinguish the
	cases when the database had troubles and when the query did not return
	any records.

	[7381] src/task_manager.pl.in:	Task manager now aggregates stats
	starting from oldest non-processed stat_table entry,
	not form 1 year ago like before, in normal use this avoid thousand of
	useless requests (2 per hour over 1 year,
	even if there is nothing to process) but still allows processing of
	stats if the task_manager was stopped for more than 1 day.

	[7367] src/lib/Upgrade.pm:  Removing mandatory NOT NULL references from
	most of the fields in list_table table

	[7342] web_tt2/editfile.tt2, wwsympa/wwsympa.fcgi.in: [Reported by E.
	Duval, CGT] In edit_list.conf, the "info" key controlled both the info
	list parameter and the info file. Now, when one needs to control the
	edition of the info parameter, one will use the key "info" in
	edit_list.conf. If one needs to control the edition of the info file,
	one will use the key "info.file" in the edit_list.conf.

	[7335] src/lib/Upgrade.pm:  Now lists are cached in database at upgrade
	time.

	[7328] web_tt2/suspend_request.tt2:7326), web_tt2/help_user.tt2,
	web_tt2/suspend_request.tt2: [Submitted by S. Ikeda]Move subscription
	management documentation to the help.

*****	[7327] doc/sample/config.include, src/etc/edit_list.conf,
*****	src/lib/Commands.pm, src/lib/Family.pm, src/lib/List.pm,
*****	src/lib/admin.pm, src/task_manager.pl.in, web_tt2/help_editlist.tt2,
*****	web_tt2/subscriber_table.tt2, wwsympa/wwsympa.fcgi.in:	[Submitted by
*****	S. Ikeda] 'user_data_source' list parameter is obsoleted; only
*****	'include2' was its available value.

	[7312] src/etc/edit_list.conf:	Removing default config hidding
	default_user_options config options to list owners.

	[7277] po/cs.po, po/es.po, po/eu.po, po/ko.po, po/pt_BR.po,
	src/lib/admin.pm:  Replacing usage of the "rename" function by
	"File::Copy::move". this is more likely to work on different systems.

	[7253] src/lib/Bulk.pm, src/lib/SDM.pm, src/lib/SQLSource.pm:  Now
	queries are cached once prepared to save database workload.

	[7241] src/lib/OAuthConsumer.pm, src/lib/Sympa/DatabaseDescription.pm: 
	Set table name accordingly to uses

	[7234] src/lib/SQLSource.pm:  Removed the systematic ping when
	performing a query to the database. The connection check is now done
	only if a quyery fails, the query is then resubmitted.

	[7219] src/lib/List.pm: Making the email subparameter of the update
	parameter optional to get rid of useless errors when loading the
	config.

	[7213] src/lib/admin.pm:  changed code to collect error messages from
	alias manager

	[7204] src/etc/scenari/send.editorkeyonly,
	src/etc/scenari/send.editorkeyonlyauth,
	src/etc/scenari/send.privateandnomultipartoreditorkey,
	src/etc/scenari/send.privatekeyandeditorkeyonly:  ***** scenarios using
	the editorkey action needs to be adapted to work with the new code. You
	should remove rules o
	f type "is_editor() md5 -> do_it" to prevent message from editor sent
	throught the web "Post" function to escape from the mo
	deration process. This change is required because web posted messages
	now REALLY are considered to have the "md5" authentica
	tion method.

	[7182] soap/sympa_soap_server.fcgi.in, soap/sympasoap.pm,
	src/bulk.pl.in, src/etc/script/mod2html.pl.in,
	src/etc/script/testlogs.pl.in, src/etc/script/tpl2tt2.pl.in,
	src/lib/Archive.pm, src/lib/Commands.pm, src/lib/Conf.pm,
	src/lib/Config_XML.pm, src/lib/DBManipulatorMySQL.pm,
	src/lib/DBManipulatorOracle.pm, src/lib/DBManipulatorSQLite.pm,
	src/lib/DBManipulatorSybase.pm, src/lib/Family.pm, src/lib/Fetch.pm,
	src/lib/LDAPSource.pm, src/lib/Language.pm, src/lib/List.pm,
	src/lib/Lock.pm, src/lib/Log.pm, src/lib/Message.pm, src/lib/SDM.pm,
	src/lib/SQLSource.pm, src/lib/Scenario.pm, src/lib/Task.pm,
	src/lib/Upgrade.pm, src/lib/admin.pm, src/lib/mail.pm,
	src/lib/report.pm, src/lib/tools.pm, src/lib/tt2.pm, src/sympa.pl.in,
	src/task_manager.pl.in, wwsympa/Auth.pm, wwsympa/Challenge.pm,
	wwsympa/SharedDocument.pm, wwsympa/archived.pl.in,
	wwsympa/bounced.pl.in, wwsympa/cookielib.pm, wwsympa/wwslib.pm,
	wwsympa/wwsympa.fcgi.in:  functions from Log.pm are no longer exported.
	Therefore, they can't be called in the local namespace of the caller
	and must always be prefixed by 'Log::'.

	[7174] mail_tt2/moderate.tt2, po/en_US.po: fi moderation message when
	topics are required:
	- keep the standard Subject
	- don't refer to the viewmod web page, it does not allow tagging
	- added attached message
	- made spam-related string localized

	[7164] src/lib/confdef.pm:  In the parameters config definition, the
	empty default values were replaced by a mention stating that the
	parameter is optional. That way, it won't be written automatically in
	the config.

	[7142] src/lib/Conf.pm, src/lib/SDM.pm:  When no listmaster is defined
	for a robot, the main server listmasters are the default listmasters.

	[7093] src/lib/confdef.pm, src/sympa_wizard.pl.in: [#7689][Submitted by
	S. Ikeda] Several improvments in the sympa_wizard.pl and default
	parameters handling:
	* Duplicated entries in confdef.pm were removed.
	* Parameters definitions were sorted according to Sympa.org site
	documentaion.
	* parameter ``domain'' and ``wwsympa_url'' are allocated values when
	sympa_wzard.pl is run.
	* Some parameters were not found in Sympa 6.2 online documentation:
	* list_check_helo
	* bulk_sleep
	They are now listed at and after ``Tag based spam filtering'' category.
	* Enhancement: sympa_wizard.pl create_configuration() was i18n'ized.
	* Some parameter defaults are differ between confdef.pm and online doc.
	pictures_feature, automatic_list_creation,
	misaddressed_commands_regexp, remove_headers, list_check_suffixes,
	process_bouncers_task, session_table_ttl. 

	[7060] src/lib/Conf.pm, src/lib/Upgrade.pm:  The binary cache for the
	main configs are removed during the upgrade. This way, new default
	values will be applied even on the binary cache.

	[7045] src/etc/script/sympa.in: [#6722][D.Pritts, Internet2]modify init
	script to have all configure variables defined at top of script

	[7027] soap/sympa_soap_server.fcgi.in, src/bulk.pl.in,
	src/etc/script/crypt_passwd.pl.in, src/etc/script/init_comment.pl.in,
	src/lib/Bulk.pm, src/lib/Conf.pm, src/lib/DBManipulatorDefault.pm,
	src/lib/DBManipulatorMySQL.pm, src/lib/DBManipulatorOracle.pm,
	src/lib/DBManipulatorPostgres.pm, src/lib/DBManipulatorSQLite.pm,
	src/lib/DBManipulatorSybase.pm, src/lib/Datasource.pm,
	src/lib/LDAPSource.pm, src/lib/List.pm, src/lib/Log.pm,
	src/lib/Makefile.am, src/lib/SDM.pm, src/lib/SQLSource.pm,
	src/lib/SympaDatabaseManager.pm, src/lib/Upgrade.pm, src/lib/tools.pm,
	src/lib/tracking.pm, src/sympa.pl.in, src/task_manager.pl.in,
	wwsympa/Auth.pm, wwsympa/Challenge.pm, wwsympa/SympaSession.pm,
	wwsympa/archived.pl.in, wwsympa/bounced.pl.in, wwsympa/wwsympa.fcgi.in:
	 Refactoring : All the code related to database and LDAP access was
	refactored. Main changes: 
	- new module SDM.pm : handles all the connection and access to the
	Sympa database. Now querying the Sympa database anywhere in the code
	can be done by calling: '&SDM::do_query($statement, @variables). all
	the connections, errors, statement preparation and executions are
	handled in the SDM module.
	- SQLSource and LDAPSource MUST now be manipulated through instances.
	the usage of class methods have been removed, because, with the
	exception of the Sympa database, all the usages are related to
	non-resident connections, so there is no usage of class instances and
	variables.

	[7022] src/lib/DBManipulatorInformix.pm, src/lib/DBManipulatorMySQL.pm,
	src/lib/DBManipulatorOracle.pm, src/lib/DBManipulatorPostgres.pm,
	src/lib/DBManipulatorSQLite.pm, src/lib/DBManipulatorSybase.pm,
	src/lib/DefaultDBManipulator.pm, src/lib/Makefile.am:  DBManipulator*
	modules now inherit from a generic class called DefaultDBManipulator.
	This class will implement all the required functions in MySQL syntax.
	Therefore, functions in DBManipulator* files will only be needed if the
	corresponding RDBMS has a specific behaviour.

	[7021] src/lib/Bulk.pm, src/lib/Conf.pm,
	src/lib/DBManipulatorInformix.pm, src/lib/DBManipulatorMySQL.pm,
	src/lib/DBManipulatorOracle.pm, src/lib/DBManipulatorPostgres.pm,
	src/lib/DBManipulatorSQLite.pm, src/lib/DBManipulatorSybase.pm,
	src/lib/Datasource.pm, src/lib/List.pm, src/lib/Log.pm,
	src/lib/Makefile.am, src/lib/SQLSource.pm,
	src/lib/SympaDatabaseManager.pm:  Factorizing: creating the
	DBManipulator*.pm modules. These modules contain the code specific to
	each RDBMS Sympa supports. The inherit from the generic class
	DataSource. Anytime Sympa tries to access data in an SQL database, it
	must create a SQLSource object with, in argument, a hash containing the
	connexion parameters. All the database manipulations are subsequently
	done through this generic object, not having to take into account any
	RDBMS specificity.
	Also added the "SympaDatabaseManager.pm" module which is specialized in
	manipulating the Sympa database: upgrade, connexion, version checking,
	etc.

	[7020] src/lib/Archive.pm, src/lib/Commands.pm, src/lib/List.pm,
	src/lib/Message.pm, src/lib/mail.pm, src/lib/tools.pm, src/sympa.pl.in,
	wwsympa/archived.pl.in, wwsympa/wwsympa.fcgi.in:  Now Message object is
	used from sympa.pl down to mail::sending 

	[7017] src/lib/Makefile.am, src/lib/SympaDatabaseManager.pm,
	src/lib/Upgrade.pm:  All the code realted to database management in
	Upgrade.pm was moved to a new module: SympaDatabaseManager.pm

	[7013] src/lib/Conf.pm: [#7071]CGI.pm changes environment variable
	names ('-' => '_')
	While using generic_sso, declared environment variable names needs to
	be transformed accordingly

	[7007] src/lib/Makefile.am, src/lib/Sympa/Constants.pm.in,
	src/lib/Sympa/DatabaseDescription.pm, src/lib/Upgrade.pm:  The database
	description is moved to a dedicated "DatabaseDescription.pm" module to
	improve code lisibility and orthogonality.

	[7000] src/lib/Conf.pm, src/lib/List.pm, src/lib/admin.pm,
	src/lib/confdef.pm, src/lib/tools.pm, wwsympa/Auth.pm,
	wwsympa/wwsympa.fcgi.in:  Now the sympa.conf, wwsympa.conf and
	robot.conf are cached in binary form (e.g. sympa.conf.bin). This speeds
	up that startup process. Full refactoring of Conf.pm to better
	distinguish conf/robot loading. First step towards robot-independant
	and on-the-fly config loading, and also wwsympa.cnf and sympa.conf
	merge.

	[6986] src/lib/List.pm, web_tt2/get_inactive_lists.tt2,
	wwsympa/wwsympa.fcgi.in: [Submitted by M. Lievre, Orange] Adding
	detailed informations to the get_inactive_lists page of the web
	interface.

	[6980] src/lib/List.pm: [#7392][Submitteb by A. Bernstein,
	electricembers.net] Some MUA and the web page sending option in Sympa
	use Multipart/related content-type. In this case, the footer was not
	appended to messages.

	[6972] mail_tt2/message_report.tt2, src/sympa.pl.in: [#7420][Submitted
	by A. Bernstein, electricembers.net] When a message is rejected because
	it exceeds the maximum allowed size for a list, the report now provides
	informations regarding the size of the mesage, the maximum allowed size
	for this list and a technical notice regarding attachments.

	[6968] wwsympa/wwsympa.fcgi.in:  On list created through the web
	interface, if the list name contains higher case letters, they are
	lower cased to prevent any later inconsistencies in data describing the
	list. The user is warned about it.

	[6958] src/lib/tools.pm, web_tt2/compose_mail.tt2, web_tt2/error.tt2,
	wwsympa/wwslib.pm, wwsympa/wwsympa.fcgi.in:  Factorizing the file
	uploading and HTML page sending code.

	[6956] src/lib/List.pm:  Patch from Adam Bernstein to always set
	Reply-To header

	[6950] src/etc/script/Makefile.am, src/lib/Sympa/Constants.pm.in,
	src/lib/Upgrade.pm:  database structure is described in
	Sympa::Constants. db creation script are produced by an authors only
	script part of the tools involved for new version creation. They should
	not be edited anymore by developpers 

	[6947] src/lib/List.pm, src/lib/Upgrade.pm, src/lib/confdef.pm,
	src/lib/tracking.pm, src/task_manager.pl.in:  new entry in notification
	 table for expiration of notification records. retention period is
	controle by a new list parameter (tracking/retention_period) with a
	default in robot;conf : tracking_default_retention_pediod. Job is
	performed by task_manager (purge_tables task)

  Bug fixes:

	[12170] src/lib/Sympa/List.pm, src/lib/Sympa/Message.pm,
	src/sbin/sympa_msg.pl.in:  [Reported by R. Klorese, QueerNet] Despite
	that posts to the list are protected against DMARC aggressive policy,
	messages sent to owners or editors of the list are not.  Now such
	messages will also be protected.
	More known bug: Messages sent to listmaster would also be protected.
	ToDo: Test.

	[12169] src/lib/Sympa/List.pm:	If an inclusion setting (*.incl) is
	malformed, task_manager.pl running sync_include task crashes.
	Fixed by checking if *.incl file is successfully parsed.

	[12149] Makefile.am, src/sbin/sympa_wizard.pl.in:  sympa.conf should be
	writable by sympa user and should not be world-readable.  Because it
	may be edited via web interface, and it contains secure "cookie"
	parameter.  This file generated by initial "make install" was owned by
	installing user (root) and was world readable.	Fixed by make
	sympa_wizard.pl to set appropriate umask and makefile to set owner.

	[12126] src/lib/Sympa/Admin.pm:  When renaming a list, digest spool was
	not renamed.

	[12120] src/cgi/wwsympa.fcgi.in:  If signoff action failed, WWSympa
	crashes.
	Fixed by removing a hash dereference on scalar.

	[12094] src/cgi/wwsympa.fcgi.in, src/lib/Conf.pm: [Submitted by P.
	Grzesina, univ. Regina] When CAS was enabled, if you weren't already
	authenticated against CAS, the browser would go into a redirect loop
	when you went to Sympa. If you were authenticated, Sympa would not get
	the user information.

	[12092] src/cgi/wwsympa.fcgi.in:  Missing @other_include_path for RSS
	too.

	[12087] default/mhonarc-ressources.tt2,
	default/web_tt2/add_request.tt2, default/web_tt2/arcsearch_form.tt2,
	default/web_tt2/compose_mail.tt2, default/web_tt2/editsubscriber.tt2,
	default/web_tt2/exclusion_table.tt2, default/web_tt2/modform.tt2,
	default/web_tt2/request_topic.tt2, default/web_tt2/review.tt2,
	default/web_tt2/reviewbouncing.tt2, default/web_tt2/search_user.tt2,
	default/web_tt2/set_pending_list_request.tt2,
	default/web_tt2/viewmod.tt2: [#9735][Reported by Y. Baouchi, Univ. of
	Colorado] In the screen, label should precede to checkbox.  If it was
	not, "quiet" checkbox is read first by screen readers and user doesn't
	know what the checkbox is related to.  So they have to continue on,
	find a label "quiet" then go back to the checkbox to check it if
	desired.
	Note: mhonarc-ressources.tt2 was changed: Past archives can need to be
	rebuilt.

	[12086] default/web_tt2/blacklist.tt2: [#9740][Reported by Y. Baouchi,
	Univ. of Colorado] Character should be read by its name, for example
	"number sign" instead of "#".  Latter may often not be read properly by
	e.g. screen readers.
	Also in a few other templates, using "#" as abbreviation of the word
	"number" is inappropriate.

	[12085] default/web_tt2/footer.tt2: [#9727][Reported by Y. Baouchi,
	Univ. of Colorado] Missing alt attribute in <img> element.

	[12081] src/lib/Sympa/Auth.pm:	LDAP authentication fails to get email.
	 The "alloptions" feature of Net::LDAP::Entry returns an array of
	hashrefs, not of scalars.
	As a quick fix, alloptions was disabled, while it is desired.

	[12078] src/lib/Sympa/Archive.pm, src/lib/Sympa/Commands.pm:  INDEX
	mail command returned wrong dates and sizes of archives.
	Fixed by getting them of arctxt directories.  Additionally, now sizes
	are shown in kilobytes.

	[12064] src/lib/Sympa/Message.pm, src/lib/tools.pm,
	src/sbin/sympa_msg.pl.in:  A few bugs on email command processing:
	- Long lines folded by flowed format (RFC 3676) were not handled
	correctly.
	- mesaddressed_commands feature checked encoded body.

	[12059] default/web_tt2/d_control.tt2, src/cgi/wwsympa.fcgi.in:  Sympa
	would issue an error when trying to edit access control to a file in
	the shared repository. This was due to a mismatch in parameters between
	list owenrs and document owners.

	[12058] src/lib/Conf.pm: [Reported by P. Grzesina, univ. of Regina]
	Sympa issued errors when trying to setupe a CAS server for SSO login.
	This was due to Sympa setting a hash value to scalar and then trying to
	use this value as a hash ref. Fixed by deleting affectation to scalar
	value - which is immediately changed to a hash anyway.

	[12055] src/cgi/wwsympa.fcgi.in, src/sbin/sympa.pl.in:	wwsympa and
	sympa/health_check did not check change of "cookie" parameter.

	[12053] default/web_tt2/list_menu.tt2:	Additional list menu links had
	vanished when setting up the new skin.

	[12052] src/lib/Sympa/List.pm, src/sbin/archived.pl.in,
	src/sbin/bounced.pl.in, src/sbin/bulk.pl.in,
	src/sbin/sympa_automatic.pl.in, src/sbin/sympa_msg.pl.in,
	src/sbin/task_manager.pl.in:  (probably fixes bug[#6204])
	task_manager.pl sometimes ignores signal to shutdown it.  If there are
	large number of lists, calling get_lists() can take long time and the
	process cannot deal with TERM signal.
	Now get_lists() checks HUP, INT and TERM signals and returns
	immediately when signal is raised.  As a side effect of this fix,
	get_lists() may return undef.

	[12047] src/bin/create_db.Oracle, src/bin/create_db.Sybase,
	src/lib/Sympa/DatabaseDescription.pm, src/lib/Sympa/Log.pm,
	src/lib/Sympa/Upgrade.pm:  If multiple instances of sympa_msg.pl are
	running, i.e. incoming_max_count parameter is greater than 1, adding
	information to stat_table occasionally fails.  Probably because forked
	instances can share random seed used to generate primary key.
	Fixed by removing id_stat field from stat_table: It was not used
	anyway.

	[12027] src/cgi/wwsympa.fcgi.in, src/lib/Sympa/List.pm:  When
	displaying user errors; errors were displayed even if the user was not
	concerned by the error. Fixed by getting the actual user data.

	[12025] src/lib/Sympa/Upgrade.pm:  When upgrading from pre-beta
	version, archives parameters are renamed. The upgrade process crashed
	on mail_access sub-parameters because they were set as a string instead
	of as a scenario. Simply setting them as a hash containing a 'name'
	entry whose value was the scenarion name was not enough: it led to
	totally messed up archive parameters. Finally fixed by loading the
	mail_access scenario to initialize the mail_access sub-parameter.

	[11994] src/lib/Sympa/Family.pm:  When instantiating a family, Sympa
	would crash if no list is found in the XML file. Preventing it by
	setting the list of lists to create as an empty list. Having an empty
	XML file can be a reasonnable (yet crude) mean to close all lists in a
	family.

	[11989] src/lib/Sympa/Family.pm:  Several bugs made family
	instantiation crash sympa.

	[11988] src/lib/Sympa/List.pm:	When using DB list cache, all lists
	would be returned when queryinf the lists from a family, leading to the
	possibility that ALL lists not belonging to a family would be closed if
	close_unkown option was used.

	[11980] src/lib/Conf.pm, src/lib/Sympa/List.pm,
	src/lib/Sympa/ListDef.pm: [#9665] [Reported by L. Einarsen, Norges
	teknisk-naturvitenskapelige universitet] Invalid SSL_version "tls"
	specified in include_ldap_query.  Recent versions of IO::Socket::SSL
	(though it is not explicitly documented that which version changed the
	syntax) accepts "tlsv1" and so on.
	Fixed by treating "tls" as synonim of "tlsv1".	Additionally, "tlsv1_1"
	and "tlsv1_2" are also supported now.

	[11979] src/cgi/wwsympa.fcgi.in, src/lib/Log.pm,
	src/lib/Sympa/Commands.pm, src/lib/Sympa/List.pm:  Statistics: Some
	action weren't recorded correctly and were omitted.  Fixed by
	correcting typos.

	[11949] src/lib/Sympa/Tools/SMIME.pm:  Crypt::OpenSSL::X509->email has
	a bug: when email comes from subjectAltName certificate field, it
	return the whole field as a string. Consequently, if several addresses
	are defined in this field, it returns
	address1@domain.tldaddress2@domain.tld... Fixed by explicitely parsing
	subjectAltName before deciding how to set the email. A bug report has
	been made to the module maintainer:
	https://github.com/dsully/perl-crypt-openssl-x509/issues/40

	[11946] src/sbin/sympa_wizard.pl.in:  In some cases, module install
	would fall in a recursive infintie llop. It was because we first called
	CAPN::Shell::make, then force or test, then only install. It looks like
	make would not actually install dependencies, but only build them.
	Consequently, dependencies reuired to build a module would never be
	available forerequire, leading to the infinite loop. Fixed by simply
	skipping all the make, force and test to directly go to the install
	call. It performs make and test anyway.

	[11942] default/Makefile.am, default/mail_tt2/authorization_reject.tt2,
	default/scenari/access_web_archive.closed:11920),
	default/scenari/access_web_archive.owner:11920),
	default/scenari/access_web_archive.private:11920),
	default/scenari/access_web_archive.public:11920),
	src/lib/Sympa/Commands.pm, src/lib/Sympa/ListDef.pm:  Blacklist was not
	applied to GET, INDEX and LAST email commands.
	New scenario archive_mail_access (archive.mail_access in list config)
	is intrduced, and it will perform authorization.

	[11920] src/lib/Sympa/DatabaseDescription.pm, src/lib/Sympa/List.pm: 
	Stat for mail sending had disappeared.

	[11919] src/lib/Sympa/ModDef.pm:  DBD::mysql module was mandatory. It
	should not.

	[11914] src/lib/Sympa/ConfDef.pm:  Bad defaults and examples were set
	for the http_host parameter: it must not start by http:// or https://.
	Protocol is irrelevant. Only the domain part is usefull.

	[11910] src/sbin/sympa.pl.in:  Fix "constant" getter to satisfy "strict
	subs".

	[11898] src/cgi/wwsympa.fcgi.in, src/sbin/sympa.pl.in,
	src/sbin/task_manager.pl.in:  Default robot was ignored and its lists
	won't be processed in some cases,
	if no virtual robot setting with the same domain as default robot.
	sympa.pl:
	- --change_user_email omits lists in default robot.
	task_manager.pl:
	- List tasks in default robot aren't loaded. 
	- purge_user_table task: Users subscribing only to the lists in default
	robot will be purged.

	[11884] src/libexec/Makefile.am: [Reported by B. Eliassen] An option
	given to install(1) terminates installation.  This utility at least of
	Solaris needs the space between "-m" and argument.

	[11877] src/lib/Sympa/Mailer.pm:  Postfix: If tracking feature is
	enabled, distribution of messages will be denied when Envelope-Id is
	"10" to "99".  Postfix (2.3 or later) clone of sendmail interprets -V
	option with two characters as -XV option and rejects it because
	argument is incorrect.
	Fixed by padding "0" to make length of envid at least eight.

	[11863] default/web_tt2/crash.tt2, default/web_tt2/main.tt2,
	default/web_tt2/tt2_error.tt2, src/cgi/wwsympa.fcgi.in:  WWSympa: When
	TT2 parse error occurs and tt2_error.tt2 has error again, no content is
	sent and HTTP server will report error status (e.g. 503 with nginx).
	To prevent such situation, wrap PROCESS directives in this template
	with TRY...CATCH.  The same measure is taken for crash.tt2.

	[11847] src/lib/Sympa/List.pm:	Lists typed with upper-case by end
	users were considered as not existing on the server. This was because
	the name typed by the user was compared to the list folder name, which
	iw always lower-cased. Fixed by lower-casing the list name before
	creating a new List object.

	[11749] default/mail_tt2/removed.tt2: [#7245] When a list owner deletes
	a user, a message suggesting that unsubscription was due to automatic
	process is sent.
	Fixed by removing a phrase "probably because we received non-delivery
	reports for your address" in removed.tt2 template.

	[11748] src/lib/Log.pm: [#9578][Reported by M. Howe, univ. of Oxford]
	viewlogs with date range does not work.  Fixed by allowing any
	non-alphanumeric characters as separator.
	And, now viewlogs supports date formats YY*MM*DD and YYYY*MM*DD along
	with previous DD*MM*YYYY.  Note that the format MM*DD*YYYY is not
	supported.

	[11698] src/lib/Sympa/Admin.pm:  Don't do STDOUT/STDERR dupping when
	calling alias manager, use multi-arguments system call with output
	redirection instead.
	When running under web server (web interface, soap) CGI ties STDOUT and
	STDERR with FGCI::Stream and override "open", leading to either a
	syntax error or a Carp::croak (see FCGI.pm) depending on version of
	FCGI.
	Multi-arguments call to system avoids having to redirect STDOUT/STDERR
	in code and is safer than original single string call with
	concatenated/sprintf'ed command.

	[11690] src/sympa.pl.in: [Submitted by B. Marchal, univ. Lorraine] the
	loop_prevention_regex parameter was never taken into account. This was
	due to a o modifier in the regexp which resulted in the regexp being
	set at compile time and never changed after. Fixed by removing this
	modifier.

	[11595] src/lib/Sympa/List.pm: [#6477] Digest and summary messages
	should include List-* header fields to provide information about
	archive, unsubscribe and so on.

	[11594] src/lib/tools.pm:  cid URLs in archived messages were omitted. 
	As a result, MHonArc treated multipart/related HTML messages just as if
	simple multipart.
	Fixed by overwriting HTML::StripScripts::validate_src_attribute()
	method.

	[11587] src/lib/Sympa/Mailer.pm: [#9555] [Reported by M. Howe, Univ. of
	Oxford] bulk.pl or sympa.pl will crash if sendmail failed to accept
	messages, e.g. insufficient space for spool.  Fixed by making
	Sympa::Mailer::store() to check status of close().

	[11579] src/lib/Sympa/List.pm:	Topics for message bodies in signed
	messages can't be detected by Sympa.
	Check if message has multipart/signed content and strip signature
	before seeking topics.
	ToDo: Should support application/pkcs7-mime format too.

	[11553] src/lib/Sympa/Alarm.pm, src/lib/Sympa/Bulk.pm,
	src/lib/Sympa/List.pm, src/lib/Sympa/Mailer.pm, src/sbin/bulk.pl.in:
	[#6749] Sending is not always specified in the logs.  Now logging is
	done when the messages are really sent to sendmail.

	[11506] src/lib/Sympa/List.pm:	If users' reception mode are "html",
	"text" or "urlize", and if any of such users don't have user
	certificate, encryption is failed and no messages are sent.

	[11470] src/lib/Sympa/DBManipulatorOracle,
	src/lib/Sympa/DBManipulatorOracle/St.pm,
	src/lib/Sympa/DBManipulatorOracle.pm:  Oracle: If NLS_LANG environment
	variable is properly set with charset AL32UTF8 (or UTF8), DBD::Oracle
	treats character values as Unicode, i.e. "utf8 flags" are set.	This
	behavior is not desirable for Sympa.
	Sympa::DBManipulatorOracle::St overrides functions of DBI statement
	handle object to reset utf8 flags.

	[11430] src/cgi/wwsympa.fcgi.in, src/lib/Sympa/Constants.pm.in,
	src/lib/Sympa/DatabaseDescription.pm, src/lib/Sympa/Family.pm,
	src/lib/Sympa/SOAP.pm, src/sbin/sympa.pl.in: [#6162] [Reported by T.
	Retout] When creating a list with a name longer than 50 characters, the
	validation process allows this, but creation fails or list name is
	truncated.  Fixed by checking length before creation.

	[11428] src/lib/confdef.pm, src/lib/tools.pm:  When checking
	misaddressed commands in subject, the command length was not taken into
	account. Any message whose subjects started with unsubscribe, signoff
	or subscribe would be rejectd. Fixed by forcing test to match only if
	the subject contains two words exactly, including the command. We might
	miss wom better form subscribe commands but will have very less false
	positive.

	[11384] default/web_tt2/viewlogs.tt2, src/cgi/wwsympa.fcgi.in:
	[#9243][Submitted by M. Howe, Univ. of Oxford] Sorting for viewlogs is
	broken.  It tries to sort on the non-existent 'email' field.
	Patch was modified a bit.

	[11327] src/lib/Sympa/List.pm:	When dkim_add_signature_to parameter
	contains "list", DKIM signature won't be added.  A typo has been
	corrected.

	[11239] src/lib/Message.pm, src/sbin/sympa.pl.in:  Could not check
	S/MIME signature if the message was encrypted.	An S/MIME message may
	be nested either as "encrypted then signed" or as "signed then
	encrypted", however we didn't check latter case.

	[11229] src/lib/Message.pm:  DKIM signatures become ineffective even if
	messages are altered.
	This is caused by refolding of	base64 and quoted-printable contents:
	Signatures are kept.  Fixed by keeping original content if MIME
	structure were not really changed.
	n.b. Though I previously compared binary form using Storable::freeze,
	this method was incompetent.  Now MIME::Entity::as_string is used.

	[11211] src/lib/Message.pm:  Messages attached to system messages, such
	as moderation notifications, were altered.  As a result, for example,
	editors could not verify signature in attached messages.
	This was caused by that attachments were always parsed and stringified
	again.	Now stringified attachments won't be parsed anymore.

	[11147] web_tt2/javascript.tt2: [#9270] [Submitted by A. Bezverkhyy]
	Fixing buggy getElementById behavior on IE8/9.

	[11146] src/lib/Scenario.pm, src/lib/Sympa/ModDef.pm: [#9034][Reported
	by D. Fournier, CNRS CRIC] Scenario: verify_netmask doesn't support
	IPv6.  Use Net::CIDR instead of Net::Netmask to support it.

	[11144] wwsympa/wwsympa.fcgi.in: [#9328][Submitted by F. Angebault]
	Back button prints an error "Webpage has expired" on IE9.
	On IE9, "Cache-Control: no-cache" HTTP response is treated as never
	keep content.  Alternatively, "Cache-Control: max-age=0" may be used:
	This workaround may not affect to other browsers.  For more details see
	item #9328 in bug tracker.

	[11136] src/lib/Scenario.pm: [#9326] [Submitted by M. Howe, Univ. of
	Oxford] Search conditions in scenario of text filter were not excaped. 
	Several characters in condition such as ".", "+" were treated as regexp
	metacharacter then search gave unexpected result or simlpy failed.

	[11134] src/lib/List.pm: [#9300] [Sumitted by M. Howe, Univ. of Oxford]
	Sympa crashes if a list config does not have web_archive paragraph.
	In such case $list->{admin}{web_archive} may be an arrayref.  If
	program accesses to this element as hashref, it will die with "Not a
	hash reference".  Fixed by checking if the element is hashref.

	[11133] wwsympa/wwsympa.fcgi.in: [#9262] [Originally submitted by
	Evoltech, Riseup] Prevent special list addresses from being added as
	list owner address.
	Check owner addresses to be added and reject ones falling under any of
	owner, return path etc. of the list.  Patch was modified to check also
	VERP (bounce+) address pattern and suffixes in list_check_suffixes
	parameter.

	[11132] src/lib/Language.pm: [#9256] [Submitted by F. Angebault]
	"Manage your subscriptions" help page is only partially translated.

	[11009] src/sympa.pl.in, wwsympa/archived.pl.in, wwsympa/bounced.pl.in:
	 When lock_method is "nfs", Lock files in the spool are removed.
	Fixed by skipping files with ".lock" or ".NFSLock" extension.

	[11008] src/sbin/archived.pl.in, src/sbin/bounced.pl.in,
	src/sbin/sympa.pl.in:  Lock files in the spool are removed.
	Fixed by skipping files with ".LOCK" extension.

	[10966] default/mail_tt2/Makefile.am, default/web_tt2/error.tt2,
	src/cgi/wwsympa.fcgi.in, src/sbin/bulk.pl.in, src/sbin/sympa.pl.in:
	[#8497][Reported by S. Shipway, Univ. of Auckland] If mailmerge TT2
	processing fails, a blank email is distributed.
	Fixes:
	- wwsympa/send_mail: Roughly test personalization before the message is
	sent.
	- sympa::DoMessage: Test personalization and if it failed, reject
	message and send DSN.
	- bulk: If personalization failed during bulk processing, abort and
	inform it to listmaster.
	ToDo: Mark failed bulk packet as "bad" and keep it.

	[10932] default/mail_tt2/urlized_part.tt2, src/lib/Message.pm,
	src/lib/mail.pm:  Bodies of urlized parts were raw UTF-8.  Made them be
	encoded by correct charset and transfer-encoding.
	As a side effect:
	- Added Message::as_string().
	- Moved mail::reformat_message() to Message::reformat_utf8_message().
	- mail::fix_parts() now became internal function
	Message::_fix_utf8_parts().
	- Simplified mail_tt2/urlized_part.tt2.

	[10925] src/lib/Message.pm:  Body of urlized part may be
	double-encoded.
	On MIME-tools 5.501 or later, MIME::Head::recommended_filename()
	returns Unicode values ("utf8 flag" set).  Fixed by encoding them to
	UTF-8.

	[10911] src/sympa.pl.in:  When parameter dkim_signature_apply_on
	contained the value 'dkim_authenticated_messages', DKIM signing was
	used even for unsigned messages or messages containing an unvalid DKIM
	signature. Fixed by testing that DKIM verification passed before
	deciding if we need to add a DKIM signature.

	[10904] src/lib/List.pm:  If footer_type is "append" and header/footer
	include characters beyond charset of target part, they are not
	appended.  Fixed as:
	- On text/plain, fallback to UTF-8.
	- On text/html, use HTML entity.  Because charset metadata in original
	body is difficult to change.
	Other fixes:
	- text/plain: Add newline at end of footer as neccessity.
	- text/html: Header/footer will be inserted inside of <body> element.

	[10875] src/lib/Conf.pm, src/lib/List.pm, src/sympa_wizard.pl.in: 
	Various problems related to DMARC:
	1- dmarc_protection_mode was not correctly taken as default for lists
	configuration because it was not split into an array by Conf.pm. Fixed
	in main and robot config.
	2- Net::DNS can now be considered mandatory. Added to the module
	dependencies as such with the latest packaged version for RHEL 6.
	3- Added debug and error logs while addressing DMARc issues.

	[10860] soap/sympasoap.pm: [#7318][Fixed by V. Bonamy, univ. Rouen]
	When usingUTF-8 encoded data, data were twice encoded before being sent
	by the SOAP server. Fixed by decoding from UTF-8 any text data.

	[10858] src/lib/Message.pm:  Scenarios were not evaluated for DKIM auth
	level, because DKIM signature was found invalid. This was due - again
	- by the usage of MIME::Entity::as_string to store the message as
	string. Fixed by simply storing the raw data from message file instead
	of using this sub.

	[10829] src/lib/tools.pm:  When using DKIM, both DKIM and S/MIME
	signatures were broken. This was due to the usage of
	MIME::Entity->as_string that rewrapped the message body to 60 columns -
	thus changing the character string of the message body and probably
	also the \015\12 end of line required to get valid DKIM signatures.
	Fixed by storing the message body fed to Mail::DKIM and concatenating
	it to the new headers containing the DKIM signature.

	[10827] src/lib/Conf.pm:  DKIM parameterswere not correctly loaded and
	dkim_signer_domain parameter was not correctly defaulted to the list
	service domain.

	[10825] src/lib/List.pm:  When using binary cache for list configs, if
	the main config (sympa.conf or wwsympa.conf) was changed, binary cache
	were still used. Problem: These bainary cache contain default values
	taken from main config. If these values were changed in main config,
	they were not updated in binary cache. Fixed by testing the last
	modification time for sympa.conf and wwsympa.conf against the
	binary_cache last update time.

	[10776] src/lib/mail.pm, src/sbin/bulk.pl.in, src/sbin/sympa.pl.in: 
	log_smtp parameter and --mail command line option have no effect. 
	There are two reasons:
	- Since sympa.pl sets the flag to log SMTP before robot context is
	determined, flag is always cleared.
	- bulk.pl doesn't set that flag in the first place.
	As a side effect, bulk.pl became using per-robot log_smtp settings.

	[10767] src/lib/Marc/Search.pm, src/lib/Marc.pm:  Undefined function
	message() and wwslog() may crash WWSympa.

	[10727] src/etc/script/ldap_alias_manager.pl.in:  Fixed typos broke
	ldap_alias_manager.pl.

	[10725] wwsympa/wwslib.pm, wwsympa/wwsympa.fcgi.in:  WWSympa may crash
	due to unknown subroutine when:
	- Anonymous user accesses to $wwsympa_url/signoff/LIST/EMAIL, i.e.
	specifying email but not logging-in.
	- User does not exist in user_table.
	This causes because wwslib::init_passwd() called in wwsympa.fcgi
	doesn't have qualified name.  Use qualified name and do fix another
	logical bug on unknown variable.

	[10709] src/cgi/wwsympa.fcgi.in, src/lib/List.pm,
	src/lib/Sympa/ListDef.pm, src/lib/tools.pm,
	src/libexec/ldap_alias_manager.pl.in, src/sbin/sympa.pl.in,
	src/sbin/task_manager.pl.in:  Fixed several misspellings of the word
	"occurrence(s)" in sources.

	[10619] src/lib/Sympa/ModDef.pm, src/lib/tools.pm:  tt2::maketext():
	Numeric values are occasionally interpolated using inproper format: In
	many regions period (full stop) is not used for decimal point.
	Made tools::sanitize_var() not to modify numeric values.

	[10539] src/task_manager.pl.in:  If cache_list_db is "on" and
	list_table is empty, all users in user_table except listmaster will be
	purged.
	To prevent information loss, made purge_user_table task not to use
	list_table cache.

	[10538] src/lib/Bulk.pm, src/lib/List.pm, src/lib/mail.pm:
	[#7289][Reported by D Launay, RENATER] Signed mail body are altered. 
	Fixed by making following functions not to alter such parts:
	- Bulk::merge_msg()
	- List::_append_parts()
	Backported from sympa-6.2-branch.

	[10535] wwsympa/SympaSession.pm: [#9105] [Originally submitted by M.
	Howe, Univ. of Oxford] Session for multiple robots sharing same cookie
	domain is broken.
	Fixed injected bug by fix for bug #6180: the sessions were limited to
	each virtual robot at the first access.  The patch was modified a bit.

	[10447] src/lib/Sympa/Admin.pm, src/lib/Sympa/Archive.pm,
	src/lib/Sympa/Auth.pm, src/lib/Sympa/Message.pm,
	src/lib/Sympa/Tools.pm:  revert commit #10446, my mistake

	[10441] src/lib/Upgrade.pm:  Obsoleted parameter filesystem_encoding
	was not recognized during upgrade from the releases earlier than
	5.3b.3.  Fixed bug introduced in r5656 with Conf::Conf::Ignored_Conf.

	[10431] soap/sympa_soap_server.fcgi.in, src/alias_manager.pl.in,
	src/bulk.pl.in, src/etc/script/testlogs.pl.in, src/lib/Conf.pm,
	src/lib/mail.pm, src/lib/tools.pm, src/sympa.pl.in,
	src/sympa_wizard.pl.in, src/task_manager.pl.in, wwsympa/archived.pl.in,
	wwsympa/bounced.pl.in, wwsympa/wwsympa.fcgi.in:  (pre-beta fix)
	Log::fatal_error() won't work when configuration has not been loaded. 
	Use croak sprintf() or printf STDERR instead.

	[10398] src/lib/tools.pm:  (pre-beta fix) fc() was not available with
	Perl >= 5.16.

	[10394] src/lib/Sympa/DatabaseDescription.pm:  (pre-beta fix)
	messagekey field of bulkspool_table would be text.  There are no use to
	change it to auto-increment type.
	Note: bulkspool_table is planned to move file spool.

	[10380] src/lib/SDM.pm:  (pre-beta fix) SDM::probe_db() didn't set
	proper field type on auto-increment fields.
	Incorrect access to 0b_struct miss field types specific to DBMS, and
	try to add a spurious field named 'fields'.

	[10377] src/sympa_newaliases.pl.in:  sympa_newaliases fails to update
	aliases for virtual robot.
	Conf::load_conf() won't load robot config if no_db option is true.  As
	a result, No virtual robots were recognized.

	[10373] src/lib/Log.pm, src/lib/SDM.pm:  sympa.pl and other daemons
	crash when database access is gone, instead of keeping retry.
	Now SDM::check_db_connect() keeps retry unless 'just_try' option is
	given.	As a result, when db connection is gone (or not available):
	- SDM::db_get_handler() returns immediately.
	- SDM::probe_db(), SDM::quote(), SDM::do_prepared_query() and
	SDM::do_query() stall while connection is restored.
	Note:
	- SDM::check_db_connect() should be used instead of
	SDM::connect_sympa_database() to wait for connection safely.
	- SDM::db_get_handler() is not recommented.  DB handler should not be
	used directly.

	[10355] src/lib/mail.pm:  wwsympa/send_mail: Duplicate Message-ID:
	header field.
	do_send_mail() feeds mail_file() a Message-ID as 'headers' parameter,
	but mail_file() didn't check it.

	[10323] src/lib/Archive.pm, src/lib/Commands.pm, src/lib/List.pm,
	wwsympa/archived.pl.in, wwsympa/wwsympa.fcgi.in:  viewmod only shows
	message source.
	- Generate HTML view of moderated messages in dedicated directory
	specified by viewmail_dir parameter.
	- Avoid using trivial TT2 tag which gives attackers a chance to execute
	arabitrary TT2 directives: Use new Archive::convert_single_message() to
	generate non-trivial tags.
	- Archive::convert_single_msg_2_html() and archived.pl::get_tag() was
	deprecated.

	[10309] src/lib/Bulk.pm, src/lib/List.pm, src/lib/mail.pm:
	[#7289][Reported by D Launay, RENATER] Signed mail body are altered. 
	Fixed by making following functions not to alter such parts:
	- Bulk::merge_msg()
	- List::_append_parts()

	[10307] src/lib/Bulk.pm:  Mail merge: Parameters taken from mail
	headers may be overwritten by ones of each subpart.
	Initialize $data->{'headers'} only once at calling Bulk::merge_msg().

	[10297] src/lib/List.pm:  Distributed messages may have duplicate
	content of some header fields, i.e. Errors-To:, Precedence: and Sender:
	(and From: and Message-ID: when anonymous_sender is enabled).  Several
	content filtering systems will take off the score for such messages.
	Make sure that the fields will be overwritten by
	List::distribute_msg().

	[10243] src/sympa_wizard.pl.in:  sympa_wizard.pl --create dies when any
	of CPAN modules had not been installed.  Check if modules can be loaded
	at first.  And in case, try to fallback to Text::Wrap.

	[10233] src/lib/DBManipulatorPostgres.pm, src/sympa_wizard.pl.in:
	[#7459][Originally submitted by Mitar] SDM/PostgreSQL: probe_db()
	scanned tables only in "public" schema, therefore, tables in user
	schema and so on were omitted.
	Getting available schemas in search_path then use it, instead of the
	workaround on 6.1.
	Note: PostgreSQL 7.4 or later is required to use array support of
	DBD::Pg >= 2.00.  PostgreSQL 7.3.x and earlier are no longer supported.

	[10229] src/lib/DBManipulatorPostgres.pm:  SDM/PostgreSQL: PostgreSQL
	does not have 'ALTER TABLE ... DROP PRIMARY KEY'.  Instead, get a name
	of constraint then drop it.

	[10214] src/lib/Archive.pm, src/lib/Message.pm, src/lib/tools.pm,
	wwsympa/archived.pl.in:  On rebuilt archives, src attributes of HTML
	elements may be removed.  Because Message::clean_html() was given
	Message object of message without X-Sympa-To: pseudo header.  Give
	robot argument to this method.
	Changes:
	- Following methods/functions require the argument of Robot object:
	Archive::clean_archived_message(), Archive::clean_archive_directory(),
	Message::clean_html(), tools::sanitize_html(),
	tools::sanitize_html_file() and tools::sanitize_var().
	- archived.pl: Now mhonarc will be given arguments with per-robot value
	of wwsympa_url parameter instead of site-default value.

	[10194] src/lib/Scenario.pm:  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.

	[10163] src/sympa_wizard.pl.in:  Mail-DKIM < 0.39 depended on
	Crypt::OpenSSL::Bignum.  Updates dependency.

	[10159] Makefile.am, configure.ac, src/lib/Makefile.am:  Ugly fix for
	make install bug: the important_changes.pl script was not correctly
	executed at the end of make install. Indeed, the Makefile.am
	"importantchanges" macro checked for the previous version number in
	Sympa binaries AFTER this version number had been substituted with the
	NEW version number. Then, previous and current version numbers had
	always the same values. None of the -sometimes vital- informations
	supposed to be displayed by this script were tehrefore displayed. The
	ugliness of the fix resides here: I stored the previous version number
	in a temporary file during the make and read it (then delete the file)
	during make install.

*****	[10076] wwsympa/wwsympa.fcgi.in:  wwsympa: Non-privileged users can
*****	access to some restricted functions.
*****	- Any users can access to skinsedit function and execute it.
*****	- The remove_template function won't check argument.
*****	These are due to typos in some tables (hashes) defining functions.
*****	In addition, there are a few ineffective definitions in the tables.

	[10070] src/lib/tools.pm:  tools::get_filename() has been ignoring
	symbolic links.  Because "-r" file test operator returns false on
	symlinks.  Expand symlink paths by Cwd::abs_path() then test them by
	-r.
	This will be a part of fixes for bug #7383.

	[10063] src/sympa_wizard.pl.in:  MHonArc 2.6.18 should be used to avoid
	vulnerabilities.
	cf. CVE-2010-4524, CVE-2010-1677.

	[10030] src/lib/List.pm: [#7840][Reported by P. Freyhult] Attribute
	values in ldap_2level_query must be escaped.

	[10029] src/lib/mail.pm:  mail::fix_part(): Newline "\n" in text/plain
	body should be normalized to "\r\n" if content-transfer-encoding is
	BASE64.

	[10028] src/lib/Message.pm:  (con'd 10027) Message::fix_html_part()
	breaks texts encoded by several charsets such as UTF-16.  Convert parts
	always except their charset is UTF-8 or US-ASCII.

	[10027] src/sympa_wizard.pl.in:  Sympa may be crashed by the UTF-16
	texts without BOM.  It is due to a feature of Encode module.
	Update MIME-Charset to 1.010 to prevent crash.
	ToDo: Workaround for modules such as MHonArc, StripScripts not
	supporting UTF-16.

	[9988] src/lib/List.pm:  When sending a crypted message, it was
	possible that very few users would have provided their certificate to
	the list. In such a situation, if either all the the non VERP
	receipients array of receipients was empty, the message was not sent at
	all (the message distribution was stopped and the non VERP receipients
	were not distributed). Fixed by checking the number of receipients for
	each situation and issuing an info in the logs but without stopping the
	overall distribution.

	[9985] src/lib/mail.pm: [Reported by S. Shipway, univ. Auckland] When
	merge was activated on a list, Sympa would merge even signed messages.
	Signed messages should not be altered in any way, so merge is
	deactivated when such a message is sent to a list.
	Note that an alternate solution would be to remove the incoming
	signature and make the list sign the message, if it has a certificate.
	This solution should be investigated in later versions of Sympa.

	[9984] src/lib/SQLSource.pm: [#7688] Supplemental Unicode characters
	beyond BMP can't be used on MySQL.
	As of MySQL 5.5.3, text types supported UTF-8 characters with 4 octets
	(a.k.a. utf8mb4).  By them, additional characters such as CJK
	ideographs used
	in persons' names can be used.
	Change: Try to set 'utf8mb4' then 'utf8' as client-side character set.
	Note:
	- Server also must enable utf8mb4, or supplemental characters will be
	ignored
	silently.  Add "character-set-server=utf8mb4" line to my.cnf.
	- Tables must be defined with "DEFAULT CHARACTER SET utf8mb4" option,
	or run
	"ALTER TABLE" queries to change default character sets of preexisting
	tables.

	[9982] src/lib/tools.pm:  When DKIM was activated, removing invalid
	DKIM signatures would break S/MIME signature.

	[9978] src/lib/SQLSource.pm: [#8983] MySQL: session charset is cleared.
	connect() sets "mysql_auto_reconnect" driver attribute to true when the
	processes are running under mod_perl or CGI environment so that ping()
	will always succeed and then "SET NAMES utf8" will be skipped.
	Fixed by resetting that attribute as soon as connect() succeeded.

	[9971] src/lib/admin.pm, wwsympa/wwsympa.fcgi.in: [#8684][Reported by
	D. Fournier, CNRS] In some cases - such as changing a user email
	address through the Sympa admin > Users web interface - the email value
	was not set in the "update" config paragraph, leading to logs stating:
	'Missing key "email" in param "update" in...'.

	[9961] src/lib/confdef.pm, web_tt2/edit_config.tt2: [#8712][Reported by
	L. Didry, CIRIL] In the main admin edition page, the database password
	was displayed as clear text. replaced by a series of stars.

	[9960] src/lib/Lock.pm: [#8711][Submitted by a nice anonymous
	contributor aka "Luke"] When using NFS lock, timeout and
	stale_lock_timeout were inverted and the timout value was increased.

	[9952] wwsympa/wwsympa.fcgi.in: [#8916][Reported by Adam Bernstein,
	Electric Embers] wwsympa/search: Date is not displayed in human
	readable form in "other similar subscribers" results.
	Format date and update_date fields in tt2 parameters.

	[9948] src/lib/List.pm: [Reported by Ö. Sahin, univ.Lyon 2] When
	List::new sub was called, sync_include_admin was systematically
	executed, except when specifically stated. If using a lot of owenr and
	editor datasources, this resulted in large amount of queries to these
	datasources when seraching lists or displaying the list of lists. This
	is now modulated. When calling get_lists, calling sync_include_admin is
	now optional and executed if the limits of the 'ttl' and
	'ditribution_ttl' parameters are not exceeded.

	[9946] src/lib/List.pm, wwsympa/wwsympa.fcgi.in: [Reported by P. Aepli,
	univ. Genève] Multi-valued parameters obtained from Shibboleth IdP were
	badly parsed. This as due to the fact that Sympa stored additional
	parameters under the form: "key1=value1;key2=value2;etc." As Shibboleth
	uses semi-columns to separate values in multivalued attributes, values
	were misinterpreted as new - empy - attributes. Fixed by separating
	keys and values by totally unlikely strings.

	[9456] src/etc/Makefile.am, src/etc/scenari/info.conceal:  The
	"info.conceal" scenario was neither packaged nor installed.

	[9419] src/lib/List.pm:  When adding footers, nothing appeared in the
	mail received by subscribers in the following condition:
	- footer_type was set to "append"
	- the mail was multipart/html
	This was due to the footer being added to the text/plain part only. Now
	it is added to the text/teml part as well.

	[9226] src/lib/Bulk.pm, src/lib/List.pm: [#8466][#8468][Initially
	Submitted by Marton J., Budapesti M?\197?\177szaki ?\195?\169s
	Gazdas?\195?\161gtudom?\195?\161nyi Egyetem] Oracle cannot handle
	messages as long type.
	* DBI::Oracle has a default setting of LongReadLen=80.	As a result,
	driver does not fetch a record in bulkspool_table containing a long
	column that have value longer than 80 characters.
	* DBI::Oracle raises error if messages larger than approximately 2600 o
	(4000 o in base64 encoding) was sent.
	Fixes:
	- Original patch was for Sympa 6.0.1; it was rewritten for
	sympa-6.1-branch.
	* Set $dbh->{'LongReadLen'} to be max_size * 2.
	* Give SQL the messages as bound parameters to avoid long text
	literals.
	* Rewritten patch also includes support for Sybase which needs similar
	concern.

	[9217] src/lib/SQLSource.pm: [#8628][Submitted by Marton J., Budapesti
	M?\197?\177szaki ?\195?\169s Gazdas?\195?\161gtudom?\195?\161nyi
	Egyetem] Inproper connection pool-handling: database user is not taken
	into account.
	Modified patch was applied.

	[9180] soap/sympa.wsdl:  [for backward compatibility] Soap which
	response format differs from wsdl, changing the wsdl in order to keep
	existing clients working

	[9178] soap/sympasoap.pm: [#7318] Encoding problem on sympasoap.
	UTF-8 strings were encoded twice as latin-1 strings.

	[9131] wwsympa/Marc/Search.pm: [#8662][Reported by A. Bernstein,
	Electric Embers] wwsympa: arcsearch crashes on non-UTF-8 bytes in HTML,
	with error "Malformed UTF-8 character (fatal)".
	Marc::Search uses Unicode internally to utilize case-insensitive match.
	 Fixed by replacing ":utf8" input layer with ":encoding(utf8)", since
	former won't really check inputs.

	[9058] src/sympa.pl.in:  [#7825] [Reported by D. Marant, Université
	Lille 1] spam_status scenario has no effect for messages sent to
	command addresses.
	Fixed  a typo in sympa::DoCommand(). 

	[8449] src/lib/Scenario.pm, web_tt2/error.tt2, wwsympa/wwsympa.fcgi.in:
	 For lists which should not be visible to users, some actions still
	displayed the list side menus, granting informations regarding the
	list: number of users and identity of list owners and moderators. Fixed
	by short-cutting some parts of the code to prevent this display when an
	action is attempted. If privileges for an action are not granted and
	the list should not be visible to the user who requested them, the user
	is redirected to the main home page and list is decalred as "not
	found". In addition, subscribe and sigrequest will not display a form
	to unauthenticated users if, respectively, subscribe or unsubscribe
	scenarios are set to "closed", i.e.: any subscription or unsubscription
	request would be rejected.

	[7643] wwsympa/archived.pl.in:	When a user achieved to request a
	message deletion from archives without having the proper rights,
	archived.pl crashed because a return undef was then used outside a
	function context. Fixed by replacing it by a "next".

	[7620] src/lib/Scenario.pm:  When using include.<action>.header in list
	configurations, the blacklist was not taken into account before the
	implicitely included scenario. This was due to the blacklist rule being
	added at the top of the rules stack BEFORE the include scenario was
	prepended to this stack. Fixed by adding the blacklist rule only after
	the include rules have been added.

	[7573] wwsympa/Auth.pm, wwsympa/wwsympa.fcgi.in: [Reported by R.
	Tassoni, National Library of Australia] Requests for new password with
	email address containing an apostrophe, SQL queries failed.

	[7563] wwsympa/wwsympa.fcgi.in: [#8462][Reported by S. Thomas]
	arcsearch_id can not find message if Message-ID contains a hyphen ("-")

	[7544] wwsympa/wwsympa.fcgi.in: [#8449][Submitted by A. Bernstein,
	Electric Embers] subrequest and sigrequest accepted invalid email
	addresses.

	[7526] web_tt2/subscriber_table.tt2, wwsympa/wwsympa.fcgi.in:
	[#6931][Reported by D. Pritts, Internet2] On the review page for the
	list without any subscribers, a message "ERROR (review) - List has no
	subscribers" is shown.	It is not an error.

	[7509] src/lib/Conf.pm, src/lib/confdef.pm:  User-friendly automatic
	lists were not robot-enabled. Fixed.

	[7499] src/lib/OAuthConsumer.pm, src/lib/VOOTConsumer.pm,
	src/lib/VOOTProvider.pm:  VOOTConsumer didn't getting well formed JSON
	led to process death due to the use of Carp::croak in JSON::XS module
	Process could die if JSON::XS module failed to encode responses to JSON
	in VOOTProvider due to the use of Carp::croak Getting HTTP response's
	"code" instead of non existing "status" in OAuthConsumer

	[7487] src/lib/Family.pm, src/lib/List.pm, src/lib/admin.pm:
	[#8116][Submitted by Jean-Hugues Belpois] Added a progressbar to list
	family instantiation. Fixed dumb list table insert/update workflow that
	was generating useless errors.

	[7480] src/lib/admin.pm: [#8425][Reported by Steve Shipway] List table
	was not populated upon command line list creation.

     	[7479] soap/sympasoap.pm: [#7733][Submitted by A. Bernstein, Electric
	Embers] SOAP 'add' function resets subscriber's password

	[7475] src/lib/List.pm: [#1031][Reported by Emmanuel Eyer] Lists
	remained in memory cache after purge in processes, so if a new list was
	created with the same name it "inherited" some outdated parameters,
	especially param_constraint entries when using list famillies. Also the
	list table was not purged.

*****	[7449] src/lib/Upgrade.pm: [#8400][Submitted by M. Deranek] Issue #3
*****	(#2 was solved): On SQLite, fields with 'NOT NULL' constraint won't be
*****	added so upgrade process will fail.
*****	Workaround is to assign DEFAULT value 0 or "" to such fields.

*****	[7442] src/bulk.pl.in, src/etc/script/create_db.Oracle,
*****	src/etc/script/create_db.Pg, src/etc/script/create_db.SQLite,
*****	src/etc/script/create_db.Sybase, src/etc/script/create_db.mysql,
*****	src/lib/Bulk.pm, src/lib/Conf.pm, src/lib/List.pm, src/lib/Upgrade.pm,
*****	src/lib/confdef.pm, src/lib/mail.pm, src/lib/tools.pm:	The
*****	"dkim_header_list" sympa.conf parameter and "dkim > header_list" list
*****	parameter are in fact unapplicable using the Mail::DKIM module. This
*****	doesn't allow the list of headers to be modified. Consequently, anybody
*****	using these parameters could find the DKIM signature to be broken
*****	because the list of signed headers in the "h" tag of the DKIM signature
*****	would not match the actual headers used to compute the signature. Fixed
*****	by obsoleting this parameter.
*****	In addition, the algorithm computing the signature now use $dkim->PRINT
*****	instead of $dkim->load. Indeed, the load function computing time grows
*****	exponentially relatively to the message size; this is not the case when
*****	using PRINT directly.

	[7432] web_tt2/arcsearch.tt2, wwsympa/Marc/Search.pm: [#3918] HTML tags
	escaped in search results.
	Improved Marc::Search:
	- Now it also gives rich text information.
	arcsearch template was modified so that it would build HTML text from
	that information.
	- Strip HTML tags in the file generated from HTML message.
	Entity references are also unescaped.
	- Texts are handled as Unicode instead binary text to perform
	case-insensitive match on non-ASCII characters.

*****	[7430] src/etc/mhonarc-ressources.tt2, web_tt2/arcsearch_form.tt2,
*****	wwsympa/wwsympa.fcgi.in:  Fixed some bugs on arcsearch.
*****	- Submission to arcsearch with empty key_word causes "Missing argument
*****	key_word" error then takes user to empty page.
*****	Workaround is to check key_word by JavaScript.	To enable it, archives
*****	must be reconstructed.
*****	- Escaped key_word is shown in search result and form entry.
*****	- The key_word with some characters (<>\\\*\$) causes "syntax_errors"
*****	error
*****	then takes user to empty page.
*****	Now these characters are also allowed.
*****	- Subjects in search result were decoded twice.
*****	- arcsearch_id could not search message-ID containing regexp
*****	metacharacters.
*****	Now regexp metacharacters are properly escaped.

	[7425] wwsympa/wwsympa.fcgi.in:  HTTP Date & Last-Modified headers are
	not RFC-compliant, and strftime format %z is not portable.  Modify
	format and use GMT.

	[7423] wwsympa/wwsympa.fcgi.in: [By E. Bouthenot, Debian Project]
	Properly fix CVE-2012-2352.
	http://bugs.debian.org/672893

	[7408] src/lib/List.pm:  Appended message header/footer cause
	"mojibake".  Encode header/footer by charset of body parts.

	[7400] src/lib/List.pm:  Got rid of the "Failed to parse custom
	attributes" errors by checking whether the parsing was actually
	successful or not.

	[7387] src/lib/Archive.pm, src/lib/Commands.pm, src/lib/List.pm,
	src/lib/PlainDigest.pm, src/lib/report.pm, src/lib/tools.pm,
	src/sympa.pl.in, wwsympa/wwsympa.fcgi.in:  MIME::Head::get() returns
	multiple (or zero) values in array context.  It caused various problems
	on Sympa. For example, decoded subjects became 'Charset' when subject
	header did really not exist.  Explicitly specify index argument to
	get() method to force scalar context in array.
	Note: Not assume that specific headers occur only once: RFC*822 allows
	multiple occurrance of some headers (To, CC, ...) and malformed
	messages may have another multiple headers.

	[7380] src/lib/Message.pm, src/sympa.pl.in:  Mail commands in message
	body were not decoded.	Detect charset of body then convert it to
	UTF-8.
	Additionally, 7-bit charset detection is improved to choose nearly
	compatible one of unsupported charset (for example, Mac OS X Lion with
	ja locale occasionally uses "ISO-2022-JP-2" which has not been
	supported by any CPAN modules).


6.1.8		January 09, 2012

  Bug fixes:

	[7261] src/lib/List.pm: [Reported by J.H. Belpois, univ. Brest] When a
	lot of lists used inclusions for their members, displaying the list of
	lists could lead an error 500. This was due to attempts to include list
	ADMINS even though they were not included from external sources. These
	attempts led to the creation of write locks (include_admins.lock) that,
	beyond a certain number of lists, led to automatic collisions with read
	locks used when gathering the admins mail addresses. After a certain
	number of collisions, the web request timed out. Fixed by quitting the
	skipping the admin sync when no admin source is defined.

	[7254] src/bulk.pl.in: [Submitted by P. Vandry, TZoNE.ORG] The VERP
	return path was never correctly set due to a bad variable
	initialization.

	[7251] src/bulk.pl.in: [#8094][Submitted by A. Piper, univ. Marburg] In
	some contexts, using the unsubscription URL would not work.

	[7248] src/lib/List.pm: [#7424] Excluding then restoring (eg manually
	subscribing) an included member resulted in member being included and
	subscribed at the same time.

	[7215] src/lib/List.pm, src/lib/Lock.pm: [Reported and boldly tested by
	O. Menkens] In perl, when the real and effective uids of a sccript are
	different, the tainted mode is activated. This caused mod_fcgid to
	issue a lot of "Insecure dependency" errors in the Apache logs. Fixed
	by untainting the variables causing these errors.

	[7211] mail_tt2/summary.tt2: [Submitted by A. Bernstein,
	electricembers.net] The summary.tt2 template contained a wrap TT2
	command that caused the URL to be broken. Fixed by moving this command
	around parts of the message that don't contain URLs.

	[7208] configure.ac: [Submitted by R. di Cosmo] When installing Sympa,
	if configure was used with the --enable-fsh option, then the lists
	directory was incorrectly set.

	[7205] src/sympa_wizard.pl.in:	When using the SOAP server, if the
	lists subjects or gecos
	fields included UTF-8 characters. The response content-length header
	was
	smaller than the real character count in the response document, thus,
	clients created too small buffers to process the XML document and
	validation
	of said document failed. This issue was due to the fact that libwww is
	counting characters instead of bytes.
	Fixed by upgrading to the latest version of SOAP::Lite.

6.1.7		August 25, 2011

  Bug fixes:

	Upgrading the required version for Unicode::LineBreak to fix the problem of borken URL in service messages such as moderation request.


6.1.6		July 20, 2011

  Bug fixes:

	[7135] web_tt2/notice.tt2, wwsympa/wwsympa.fcgi.in: [Reported by J.C.
	granger, INRA] In the "Manage your subscriptions" page, list members
	could unsubscribe from list where unsubscription was closed. Fixed by
	checking authorization scenarios.

	[7132] wwsympa/wwsympa.fcgi.in: [Reported by F. Gadin, univ. La
	Rochelle] The code in wwsympa used the - deprecated - way of testing
	hash emptiness. Fixed by removing the "defined" pragma when testing
	whether the has contains a defined value.

	[7131] src/lib/tools.pm:  In some cases, sympa.pl would reach 100% CPU
	while processing a message. Fixed by updating the way the text is
	wrapped when a message is constituted.

	[7124] src/etc/mhonarc-ressources.tt2: [#7055][Submitted by Andras
	Bendzsak] email with RFC5322-incompliant mailbox quoted by MTA such as
	Postfix messes archive browsing.  Backported from trunk.

	[7119] wwsympa/bounced.pl.in:  filehandle was not closed.  Backport
	from trunk.

6.1.5		June 06, 2011

  Changes:

	[7014] src/lib/Conf.pm: [#7071]CGI.pm changes environment variable
	names ('-' => '_')
	While using generic_sso, declared environment variable names needs to
	be transformed accordingly

  Bug fixes:

	[7059] wwsympa/SympaSession.pm: [Reported by V. Carpier, AC Réunion
	(but seriously, he was in the CRU before!)] SympaSession.pm caused
	"fetch without execute" errors to be issued into the Apache error logs.
	This was due to a second call to "fetchrow_hashref" after all the lines
	had already been fetched, and the statement handler subsequently
	finished. Fixed by including result fetching into a loop.

	[7055] src/lib/Upgrade.pm:  reported by gauthier Catteau Message-ID may
	be longer than 100 chars and so they may result in a SQL error.

	[7019] src/lib/Scenario.pm: [#7521][Submitted by E. del Rio] Explicit
	incldes in scenarios did not longer work because the rules using them
	did not have an authentification method. Fixed by adding them to the
	scenario list as soon as they are found in the main scenario body.

	[7012] src/lib/SQLSource.pm: [Reported by J.C. Vergerolles, univ.
	Bordeaux 2] Some DBD, such as DBD-Oracle, issue croak statements when
	the connexion can't be established. This lead to sympa crashing just
	beacuse the database is unreachable. Fixed putting each database
	connection attempt in an eval block. If the connection fails, Sympa
	retries to connect if asked or simply returns undef after logging.

	[7011] src/lib/Conf.pm: [#7071][reported by I.Krzysztof]While using
	generic_sso, allow other characters for the
	'netid_http_header'parameter (including hyphen).

	[7004] mail_tt2/sendssopasswd.tt2, web_tt2/sso_login.tt2,
	wwsympa/wwsympa.fcgi.in: [#7070]Login with generic_sso failed when
	'force_email_verify' was enabled
	The problem was due to the user password no more stored in the user DB.
	Usage of password to validate the user email address has been replaced
	with one-time tickets.

	[7003] src/lib/List.pm, wwsympa/wwsympa.fcgi.in: [#5989][submited by
	A.Bendzsak] change_email web feature did not updae the netidmap_table.
	Now it does.

	[7002] wwsympa/wwslib.pm: [#3049][reported by L. Foucher, IUT P.
	Sabatier] CAS authentication failed when Sympa web server was behind an
	HTTP reverse proxy. The URL of the service passed to the CAS server was
	incorrect. Now using get_header_field() that can use
	'HTTP_X_FORWARDED_HOST' env variable if set.


6.1.4		January 21, 2011

  Changes:

	A lot of translations have been updated:
		- Swedish (P. Freyhult)
		- Russian (S. Dukachev)
		- Polish (M. Woloszyn)
		- Japanese (S. Ikeda)
		- Estonian (U. Buhvestov)
		- Hungarian (A. Bendszak)
		- German (J. Krehbiel-Graether)
		- Catalan (J. Giralt Baldellou)
	Many thanks to all of you, Sympa translators!

	[6986] src/lib/List.pm, web_tt2/get_inactive_lists.tt2,
	wwsympa/wwsympa.fcgi.in: [Submitted by M. Lievre, Orange] Adding
	detailed informations to the get_inactive_lists page of the web
	interface.

	[6980] src/lib/List.pm: [#7392][Submitteb by A. Bernstein,
	electricembers.net] Some MUA and the web page sending option in Sympa
	use Multipart/related content-type. In this case, the footer was not
	appended to messages.

	[6972] mail_tt2/message_report.tt2, src/sympa.pl.in: [#7420][Submitted
	by A. Bernstein, electricembers.net] When a message is rejected because
	it exceeds the maximum allowed size for a list, the report now provides
	informations regarding the size of the mesage, the maximum allowed size
	for this list and a technical notice regarding attachments.

	[6968] wwsympa/wwsympa.fcgi.in:  On list created through the web
	interface, if the list name contains higher case letters, they are
	lower cased to prevent any later inconsistencies in data describing the
	list. The user is warned about it.

	[6753] src/etc/script/sympa.in: [#6847][Submitted by S. Ikeda] The
	sympa init script now actually waits for the dameon to be stopped (up
	to 20 seconds) prior to issuing a status message (failed or success).

  Bug fixes:

	[6988] wwsympa/SympaSession.pm, wwsympa/cookielib.pm: [#7423][Reported
	by M. Larchet, univ. Nancy 2] The CGI::Cookie.pm module issues a
	warning when trying to parse an empty cookie. This led to overwhelming
	warning logs in Apache error_log. Fixed by not trying to parse an empty
	cookie and directly return undef, which would have happenned anyway
	because the needed cookie is obviously not here in such a situation.

	[6987] wwsympa/wwsympa.fcgi.in: [Reported by M. Larchet, univ. Nancy 2,
	M.Lièvre, Orange and L. Grégoire, ENSEEIHT] Owners trying to access the
	list config edition form, section "Sending/receiving setup" when:
	1- No digest parameter was defined in the config file and
	2- they had only read access to the digest parameter
	were being displayed an empty page. this was due to a faulty population
	of this parameter. Fixed by affecting a "type = enum" value to the
	parameter hash.

	[6984] src/lib/Upgrade.pm: [#7372][Reported by L. Breuil] Upgrading to
	6.1.3 broke Sympa startup when using SQLite, because Sympa tried to use
	the CHANGE query, which is unavailable in SQLite. Short term fixed by
	not trying to change database fields with SQLite. The automatic upgrade
	of database will be completely rewritten with version 6.2.

	[6982] web_tt2/editsubscriber.tt2: [#7376][Submitted by A. Bernstein,
	electricembers.net] If you narrowed your browser window or zoomed the
	text size enough that the row of admin tabs had to wrap to a new line,
	the entire contents of the editsubscriber.tt2 page would shift off to
	the right side of the browser. What was left behind under the admin
	tabs was just a blank box. Fixed by enclosing the whole
	editsubscriber.tt2 file content with <div class="block"></div>.

	[6981] src/lib/admin.pm: [#7391][Reported by A. Bernstein,
	electricemebers.net] The homepage file was not copied when renaming a
	list.

	[6978] wwsympa/wwsympa.fcgi.in: [#7409]The template in
	user_notification.tt2 for the sigrequest action was missing the $list
	parameter, so the $list.name variable came out blank in the resulting
	message to user. Fixed by adding the parameter to the $tt2_param list.

	[6977] src/lib/List.pm: [#7410][Submitted by A. Bernstein,
	electricembers.net] In List::send_file(), there were certain times when
	the sender value was getting set to the recipient when it shouldn't be.
	Fixed by checking that the sender field has not been previously set
	before affecting the $who var to ist value.

	[6976] wwsympa/wwsympa.fcgi.in: [#7411][Submitted by A. Bernstein,
	electricembers.net] After editing a subscriber's options (do_set()), a
	list owner was returned to the suboptions page by default (if
	previous_action wasn't populated), which porduced an error message if
	the owner happenned to not be subscribed to the list. Fixed by
	redirecting to the list's info page instead.

	[6974] wwsympa/wwsympa.fcgi.in: [#7412][Submitted by A. Bernstein,
	electricembers] At the end of do_reviewbouncing(), the $param->{'size'}
	setting was taken from $in{'size'}. ItI should actually be set to
	$size, which is equal to $in{'size'} if it's provided or else defaults
	to the wwsconf setting if not. This created an error under some
	conditions.

	[6973] src/lib/PlainDigest.pm: [#7417][Submitted by A. Bernstein,
	electricembers.net] Some outdated MUA, like Eudora, use an uncommon
	MIME type called text/enriched, which provides formatting without HTML.
	Such a proprietary formatting is not worth a special develmopment -
	ragarding what is possible with HTML, so we treat it now as text/plain.

	[6971] wwsympa/wwsympa.fcgi.in: [#7421][Submitted by A. Bernstein,
	electricembers.net] The message displayed on the web when attempting to
	create a list which already exists was incorrect, due to a call to a
	call to reject_report_web() using the wrong error condition.

	[6970] src/etc/script/create_db.SQLite: [Reported by L. Breuil] Fixing
	two typos in the create_db.SQLite script.

	[6942] src/lib/Scenario.pm: [#7356][Submitted by A. Bernstein,
	electricembers.net] a space between two auth methods in scenario (e.g.
	smtp, md5 instead of smtp,md5) caused the second authentication method
	to be ignored. Fixed by changing the regexp responsible of scenraio
	rules extraction.

	[6765] src/sympa.pl.in: [Reported by J. Arnoux, infomaniak.ch] When a
	message was rejected because its size exceeded the allowed quotas, it
	was forwarded with the rejection report message. It made no sense
	because rejection based on the size is there to prevent the circulation
	of too large files. In addiotion, very large messages caused Sympa to
	hang on the reprot generation, doing nothing without crashing.

	[6763] mail_tt2/listmaster_notification.tt2, wwsympa/bounced.pl.in:
	[#6747][Reported by D. Pritts, Internet2] A call to
	send_notify_to_listmaster was done using a non existing error_code.
	Fixed by creating a dedicated error code to be issued when bounce related
	errors occur.

	[6757] src/etc/scenari/spam_status.x-spam-status: [#7076][Reported by
	D. Pritts, Internet2] The default antispam scenario included the
	following regexp test on the X-Spam-Status header: /yes/. this was true
	for any antispam engine using the expression "bayes". fixed by changing
	the regexp to /^\s*yes/.

	[6755] src/lib/List.pm: [#6883][Submitted by S. Ikeda]* Topics tagging
	did not work properly on encoded subject and on message body using
	charset other than US-ASCII or UTF-8.
	* case-ignore match was available only on Latin letters without
	accents.

	[6754] src/lib/Lock.pm: [#7015][Submitted by S. Ikeda] In some
	distributions (RHEL 5 for example) File::temp package conflicts with
	OS-bundled perl. Users need then to install the package manually.
	Errors are then triggers when using NFS. Fixed by calling explcitely
	the "new" sub when creating a File::NFS object.

	[6752] src/lib/mail.pm: [#7003][Submitted by S. Ikeda] Bodies of
	service messages were encoded by list character set, diregarding the
	actual receipient lanquage preferences. Fixed by testing user
	preferences prior to set the message charset.

	[6751] src/lib/List.pm, src/lib/Message.pm:
	[#6385][#6396][#7029][Submitted by S. Ikeda] Messages containing a
	subject with illegal charset crashed sympa.pl. Fixed by verifying that
	decoding is possible before doing it and leaving otherwise the subject
	unchanged.

	[6749] wwsympa/wwsympa.fcgi.in: [#6530][Submitted by S. Ikeda]If you
	chose in WWSympa to have the digest for a list go out only on, say,
	Saturday, it would instead go out on Sunday. There was a mismatch
	somewhere between the days of the week referenced by WWSympa and by
	sympa.pl. Fixed by replacing the call to "localtime" by a call to
	"gmtime". See explanations by A. Berstein in the follwing URL for
	details:
	https://sourcesup.cru.fr/tracker/?group_id=23&atid=167&func=detail&aid=6530

	[6745] src/lib/tools.pm, src/sympa_wizard.pl.in: [#7301][Submitted by
	S. Ikeda] sympa.conf and cookies.history contain confidential
	information. Access to them should be restricted. Fixed by making Sympa
	set their access permissions to 740.


6.1.3		November 15, 2010

  Bug fixes:

*****	src/lib/confdef.pm, wwsympa/Auth.pm:  [Reported by N. Matthies] Since
*****	revision 6168, when a user logged in using LDAP with an email address,
*****	if this address was returned by the LDAP server, the user was
*****	authentified with this address. Some administrators prefer to force the
*****	usage of canonical addresses. If you want to let userssubscribers use
*****	the address they used logged in with, set the value of the new
*****	wwsympa.fcgi parameter "ldap_force_canonical_email" to '0'.

	src/lib/List.pm, src/lib/PlainDigest.pm, src/lib/tools.pm,
	src/sympa_wizard.pl.in, wwsympa/Challenge.pm, wwsympa/SympaSession.pm:
	[#4452][C.Hastie, S.Ikeda] Issue: handling of different character sets
	in PlainDigest.pm was poor. Messages were assumed to be in ascii,
	iso-8859-1 or a closely related character set, and if they were not all
	characters above \x80 were dumped to provide crude, lossy iso-8859-1
	output.updated PlainDigest.pm which normalises all parts to UTF-8.
	Cleanup from Soji :
	- don't bother trying to find path to lynx unless use_lynx is true 
	- anchor content-type test strings to end of string to avoid picking up
	malformed headers as per bug 3702 
	- local Text::Wrap variables - moved repeated code to get charset into
	sub _getCharset 
	- added use of MIME::Charset to check charset aliases 

	src/lib/tools.pm: Fixing a rule problme with Stripscript.

	src/lib/Message.pm: Plain text message lost linebreaks in the web archives.
	This was due to the text/plain parts in mesasges were handled by Stripscript.
	Fixed by only handling test/html parts with Stripscripts.

	src/etc/script/create_db.mysql: [Reported by Sungmo Ahn] Fix createdb.mysql.

6.1.2		November 05, 2010

  Bug fixes:

	src/etc/script/create_db.mysql:  Fixe from Bob Wood in create_db script
	for mysql

	src/lib/Bulk.pm:  While using "merge_feature on", bulk.pl would die if
	the processed mail's encoding was either not defined or unknown to the
	Encode perl module. The error message in STDERR was: "Unknown encoding
	'' at /home/sympa/bin/Bulk.pm line 283".

	wwsympa/wwsympa.fcgi.in:  fix In-reply-to:<> header that make thread
	display in mutt or mozilla eroneous  (reported by Peter Schober 
	univie.ac.at

6.1.1           October 22, 2010

	This version includes a lots news such as DKIM support, autosignoff footer link
	included in lists messages, ...

	Various vulnerability have been solved in 6.1.1 : cross side scripting,
	cross-Site request forgeries, brute force attack, DOS.
	These vulnerabilities were identified with the help of P. Gardenat (Rectorat de Rennes)
	during a security audit on Sympa.

        WE STRONGLY SUGGEST YOU TO UPGRADE ANY PREVIOUS VERSION TO 6.1.1

	The changes and features below are the compilation of the announces made for the
	previous beta releases of Sympa 6.1b.x. Don't bother read them if you followed the
	beta. The bugs specifically fixed in each beta are still referred in these beta 
	version sections below.

	NOTE THAT DKIM FEATURE REQUIRES THAT YOU UPDATE YOUR CUSTOM AUTHORIZATION SCENARIOS (see DKIM bellow)

  Bug fixes:
	
        src/lib/List.pm:  Double quotes around field names in "order by" SQL
        clauses caused said order to have no effect. fixed by removing the
        double quotes for all supported RDBMS. It looks like none of them uses
        such a syntax.

        src/lib/mail.pm:  HTML pages sent through the web interface arrived
        with an empty body. this was due to a bad variable intialization in the
        reformat_message sub in mail.pm. This var is now initialized and the
        problem vanished.

        wwsympa/wwsympa.fcgi.in:  In some - difficult to precisely describe -
        configurations, sessions could be messed due to an inner cache of
        cookie environement variable, either in Apache of perl. Fixed by
        force-blanking this variable as soon as we affect it to a session.

	CAS authentication bug when multiple httpd parameter are submitted
        (fix by Vincent Bonamy)

	src/lib/LDAPSource.pm: [#6802] [T.Berry, NASA] Remove duplicate code +
	variable declared twice

	wwsympa/wwsympa.fcgi.in: [#6842] [S.Ikeda] /help/editlist does not show
	title of parameters

	src/lib/tools.pm: [#6901][reported by D.Black] tools::smime_decrypt()
	could make sympa.pl process crash. 

	src/lib/tools.pm, wwsympa/wwsympa.fcgi.in: [S.Ikeda][#3779] Comma in
	gecos caused invalid From: in Web posting. New tools::addrencode() for
	proper encoding of From: SMTP header field according to RFC5322.

	src/lib/Upgrade.pm, wwsympa/wwsympa.fcgi.in: [#4106][reported by
	M.Larchet] Shared documents could not get manipulated. This was due to
	changes in the algorithm of MIME::EncWords::encode_mimewords() function
	(chars -_+! no more Q-encoded). The problem started with version 1.010
	of MIME::EncWords. The fix consists in a massive renaming of shared
	files (according to new algorithm) during sympa.pl --upgrade.

	src/lib/mail.pm, wwsympa/wwsympa.fcgi.in: [#3984] [submitted by
	S.Kristoffersen] Restored code to add Auto-Submitted SMTP header field.
	mail::mail_file() does 
	not set this header when 'not_auto_submitted' is set, ie when wwsympa
	sends commands to sympa.pl through the msg/ spool.

	src/lib/Lock.pm: [#6513] [Landry Breuil] Fix errors in apache error log
	(Use of uninitialized value in sprintf) when debug is enabled

	configure.ac, doc/Makefile.am: [#6855][S.Ikeda] Samples were installed
	under / and sympa.pdf was not installed. Added missing docdir def in
	configure.ac + AC_PREREQ(2.60)

	configure.ac: [O.Lacroix, CIRIL] ./configure --help was not consistant
	with the directory defaults. Changed the help message for the following
	options : --with-expldir, --with-spooldir, --with-scriptdir,
	--with-modulesdir
	***** piddir default changed from PREFIX/var to /var

	wwsympa/wwsympa.fcgi.in: [#6879][reported by A.Koshokin, Intel] Fixed
	the BASE HTML tag. The base previously was the archive directory, now
	setting it to the archive message. 
	Bug description: NAME anchors within HTML archived messages were
	broken.

	src/lib/Bulk.pm: [#7038][reported by D.Pritts, Internet2] Prevent
	duplicate entry error in Bulk::store(). This error occured while
	sending duplicate service messages (same content to the same user). The
	listmaster is no more notified, but the second instance of the message
	is still not sent; this should be fixed.

	wwsympa/wwsympa.fcgi.in:  To field was not set while sending the
	sendpasswd service message.
	This bug was introduced in revision 5150.

	src/lib/Lock.pm:  The debug4 log facility does not exist. Replacing its
	occurences with debug3.

	mail_tt2/listmaster_notification.tt2, src/lib/admin.pm:
	[#7053][D.Pritts, Internet2] Listmaster notification for renaming was
	wrong - got "list copied" notification instead.

	src/lib/Conf.pm:  Previously only default distributed css.tt2 was used
	to generate CSS files in static_content/. Now also checking customized
	css.tt2.

	src/lib/List.pm:  fix verp rate ase where Sympa do not send
	messages to subscriber with bounces 

	src/sympa_wizard.pl.in: Encoding in body of web composed messages was
	broken. Now require version 1.03 of HTML::StripScripts::Parser

	wwsympa/wwsympa.fcgi.in:  Functions rename_list and change_email could
	not be run by a robot listmater. Added missing $robot parameter to
	List::is_listmaster() calls

	src/lib/Lock.pm:  Invalid log facility for some logs in Lock.pm. It
	looks like we can't go below debug3.

	src/lib/Bulk.pm: [#6937][#6907][#6915][Reported by S. Dukachev, A.
	Gouaux and A. Michon (in order of apparition)] The query used to store
	packets in the bulk_mailer table did enclose interger values between
	quotes, which is not correct. In addition, it obfuscated the problem
	that the '$merge' parameter was sometimes undefined. This led to trying
	to submit an insert query containg a value '' for an integer field.
	Fixed by suppressing quotes for integer values and ensuring that the
	$merge variable has a value set.

	web_tt2/Makefile.am: [Reported by P. Evans] The edit_config.tt2 file
	was not installed during the "make install" because it was not declared
	in the Makefile.am.

	src/etc/script/create_db.Oracle, src/etc/script/create_db.Pg,
	src/etc/script/create_db.SQLite, src/etc/script/create_db.Sybase,
	src/etc/script/create_db.mysql:
	[Reported by A. Michon, IBCP and A.Gouaux]
	In the create_db.* scripts, some of the name of the fields
	related to DKIM were uncorrect, leading bulk.pl to fail starting. These
	names are now correct.

	src/etc/script/create_db.Pg: [reported by A. Michon, IBCP] A typo in
	create_db.Pg caused the db creation query to fail.


	wwsympa/wwsympa.fcgi.in:  Dan Pritts fix
	https://sourcesup.cru.fr/tracker/index.php?func=detail&aid=6839&group_id=23&atid=167

	src/lib/List.pm:  Reverting a part of revision #6227. This lead to
	datasources loosing all their subscribers when using a single
	datasource and the synchronizing failed.

	src/lib/List.pm:  When calling send_notify_to_owner, the '$param'
	parameter was used as a hash, wihout checking first that it was
	actually a hash. in some cases though, such as in
	set_status_family_closed(), it was a ref to an array. This caused Sympa
	to crach with a "Can't coerce array into a hash" error. Fixed by moving
	the bad line in the hash-specific part of the sub.

	wwsympa/wwsympa.fcgi.in:  security fix : block login submitted with any
	http method but POST. (security audit vuln #5)

	web_tt2/edit_config.tt2:  missing template for config editor

	src/etc/script/arc2webarc.pl.in:  fix incorrect check of date format
	that block 2010 messages (reported by Omen Wild  (ucdavis.edu)

	src/etc/script/create_db.Sybase:   fix missing conf_table in Sybase
	creation script.

	web_tt2/error.tt2, wwsympa/wwsympa.fcgi.in:  Now shared document can't
	be read or edited unless list is open. This is a security fix

	soap/sympa_soap_client.pl.in: Fixed a bug that prevented authentication
	while using authenticateAndRun()

	src/lib/SQLSource.pm: [Submùitted by F. Lachapelle, Inverse] If the
	db_type is set to Oracle and db_port is specified in the main
	configuration file, than the port would appear two times in the
	connection string.

	src/lib/tools.pm: [reported by F.Fareneau, univ Valenciennes] shared
	documents/folders names were badly encoded while using Encode >= 2.19.
	The issue was related to a low level subroutine
	(Encode::MIME::Header::_encode_q()) that slightly changed its API
	(expecting unicode instead of bytes parameter). Now using
	MIME::EncWords::encode_mimewords() instead.

	src/lib/tools.pm: [#6552] [Soji IKEDA] Wwsympa would stall while
	loading session data including metacharacters. Existing code
	(tools::string_2_hash()) would loop on a regular expression match.
	Patch also escapes ``"'' characters.

	src/sympa.pl.in: [Submitted by H. Moa] Some message could cause a
	sympa.pl crash. Fixed by embedding the dangerous part of the code in an
	eval statement.

	src/lib/List.pm:  Users received the same message multiple times. This
	was due to a problem in the VERP provisionning. When filling the array
	containing the users for which VERP will be used, Sympa add to sources
	of users : a certain rate of all the users and all the users that have
	a high bounce rate already. for each reception mode, Sympa provisions
	VERP users this way. the problem was the following: for each reception
	mode, Sympa used the list of users using the default distribution mode
	instead of the list of users using the specific distribution mode
	currently treated. this lead to the addition, to the list of bouncing
	users of each reception mode, the list of users selected to receive the
	message in VERP for normal reception mode instead of the high bouncers
	for this reception mode. fixed by using an aray variable regarding the
	kind of reception mode currently treated.

	src/bulk.pl.in, src/lib/tools.pm:  When parsing a message to merge or
	verifying DKIM signature, a MIME::Parser object was created and the
	message parsed into a MIME::Entity. The output of the parser was not
	set to core, so it used its default: the filesystem. It led to the
	creation of a lots of files in the expl directory, that were never
	removed. Fixed by adding the line :

	src/bulk.pl.in:  bulk.pl exited when it could not remove the packet it
	had juste sent. It now only issue an error messge in the logs.

	mail_tt2/urlized_part.tt2, src/lib/List.pm:  Urlize messages charset
	was nor properly set. Consequently, bulk crashed when trying to merge
	the message. In addition, a faulty var name caused Sympa to try to send
	the originla message instead of the urlized message.

	src/lib/Bulk.pm:  Messages were tagged multiple times as last.

	mail_tt2/command_report.tt2:  fixed bug introduced in revision 6187.
	Sympa.pl would send empty command reports with a "Failed to parse
	command_report.tt2 : Template::Exception" error in its log file

	wwsympa/wwsympa.fcgi.in:  Fixed bug introduced in revision 5998. web
	signoff did not recognize authenticated users.

	src/bulk.pl.in:  When merge was not activated, Messages were not
	initialized, leading to empty messages.

	src/lib/Bulk.pm:  remove usage of fingerprint authentication token 

	web_tt2/compose_mail.tt2:  remove some coin coin style text

	src/lib/List.pm: [#3047][reported by N.Chipaux, Mandriva] Some service
	messages sent by Sympa would use an unappropriate language (did not
	match the user language). This issue happened whenever a message was
	sent to more than one reciepient; the first user's language was used
	for the following ones. Fixed List::send_file() and
	List::send_global_file(): now duplicating the 'context' parameter to
	prevent changes of the original data structure.

	src/lib/confdef.pm:  http_host was not set by default in syma.conf,
	making the sympa wizard to fail starting.

	doc/sample/test/web_tt2/welcome.tt2, sympa.spec.in, wwsympa/Auth.pm:
	[Submitted by M. Warkus, univ. Marburg] When a user logged in, using
	LDAP, by providing an email address, if this email was not the first
	one in the LDAP email attribute, then the uiser was not logged with the
	address she provided but with the default address found in the LDAP
	directory. Now, if an email is provided and the login is successful
	,the user is logged in with the email she provided.

	doc/sample/test/web_tt2/welcome.tt2, soap/sympa_soap_client.pl.in,
	sympa.spec.in:	Fixed a typo in the sympa_soap_client.pl command line
	tool that prevented the service parameters to be used.

	doc/sample/test/web_tt2/welcome.tt2, src/sympa_wizard.pl.in,
	sympa.spec.in:	Installed MHonArc version was not properly detected

	doc/sample/test/web_tt2/welcome.tt2, src/sympa_wizard.pl.in,
	sympa.spec.in: Can't do $module->require() since we no more require the
	UNIVERSAl::require module. Replaced with eval "require $module".

	Makefile.am: [Submitted by M.Deranek] On a multi core system,
	installdir & installconfig targets can run in parallel. Added a
	dependency between these targets.

	doc/sample/test/web_tt2/welcome.tt2, src/lib/Bulk.pm, src/lib/List.pm,
	sympa.spec.in:	Missing "use WebAgent" directive since recent
	reorganization of code (revision 5939).

	Makefile.am, doc/sample/test/web_tt2/welcome.tt2, src/lib/tools.pm,
	sympa.spec.in: [#6380][Reported by M.Warkus, Philipps-Univ. Marburg]
	Added a line break to written PID files.

	configure.ac, doc/sample/test/web_tt2/welcome.tt2, sympa.spec.in:  Fix
	typo introduced in recent commit.

	src/lib/Conf.pm: [Submitted by M. Warkus, univ.Marburg] Inverted test
	caused the config not to be loaded.

	Makefile.am:  The last install message didn't tell to launch
	sympa_wizzard.pl but sympa.pl.

	src/lib/Conf.pm, src/lib/confdef.pm:  Now Sympa don't complain about
	optional robot parameters without definition in sympa;conf and
	wwsympa.conf. Sympa now stop because of required robot parameters
	without value (minimum a default).  

	wwsympa/wwsympa.fcgi.in:  [reported by N.Matthies] Added notice when
	user preferences have been updated

	doc/sample/test/web_tt2/welcome.tt2, po/de.po, po-wwsympa/de.po,
	sympa.spec.in, web_tt2/help_listconfig.tt2, web_tt2/help_shared.tt2,
	web_tt2/help_user.tt2: [Submitted by M. Warkus, univ. Marburg]
	Reporting commits 6012 and 6013 from the 6.0 branch: german translation
	and fixed typos in webhelp.

	src/bulk.pl.in:  bulk.pl now uses the "use strict" pragma. Some
	variables were not properly defined.


  Changes:

        wwsympa/wwsympa.fcgi.in:  Restoring use of HTML::Stripscript module for
        XSS protection.

        wwsympa/wwsympa.fcgi.in:  Now custom actions can accept an infinite
        number of parameters. These are stored in an array accessible in TT2
        through the name "cap".

	configure.ac: [Submitted by G. Rousse, INRIA] Several improvments in
	configure.ac:
	- changed the minimal version of autoconf to 2.60
	- factorization of the section regarding the FSH/non FSH alternative.

	soap/sampleClient.php, src/lib/Message.pm, src/lib/Scenario.pm,
	src/lib/confdef.pm, src/sympa.pl.in:  spam_status message property is
	now evaluated from a scial scenario spam_status. This scenario accept
	ham, spam and unsure as result. This replace the antisspam_header_name
	antispam_tag_header_spam_regexp 

	mail_tt2/digest.tt2, mail_tt2/digest_plain.tt2,
	mail_tt2/get_archive.tt2, mail_tt2/global_remind.tt2,
	mail_tt2/helpfile.tt2, mail_tt2/info_report.tt2, mail_tt2/review.tt2,
	mail_tt2/summary.tt2, src/lib/mail.pm, src/lib/tools.pm,
	src/lib/tt2.pm, src/sympa_wizard.pl.in, wwsympa/wwsympa.fcgi.in:
	[Submitted by S. Ikeda] Line wrapping is now enabled for both European
	and non European languages.

	src/etc/script/create_db.Oracle, src/etc/script/create_db.Pg,
	src/etc/script/create_db.SQLite, src/etc/script/create_db.Sybase,
	src/etc/script/create_db.mysql, src/lib/Upgrade.pm:  change database
	structure in order to store nimber of wrong login attempts

	src/bulk.pl.in, src/lib/Bulk.pm, src/lib/List.pm, src/lib/mail.pm,
	web_tt2/suboptions.tt2, wwsympa/wwsympa.fcgi.in:  Is is now possible to
	enable topics chen the reception mode is 'mail', 'notice', 'not_me',
	'txt', 'html' or 'urlize'.

	web_tt2/get_inactive_lists.tt2: [Submitted by M. Warkus] Lists for
	which no message was ever sent will display a user friendly message
	instead "January 1 1970".

	doc/sample/test/web_tt2/welcome.tt2, src/lib/Archive.pm,
	src/lib/Message.pm, src/lib/PlainDigest.pm, src/lib/mail.pm,
	src/lib/tools.pm, src/sympa_wizard.pl.in, sympa.spec.in,
	wwsympa/wwsympa.fcgi.in: Changes to the cpan installation process :
	 - Mail::Internet and MIME::Lite modules not directly required
	 - fix calls to install_module()
	 - added informations about prerequisites
	 - generalized the 'usage' entry for each module
	 - added an introduction to warn the user about the length/nature of the process

	[Submitted by M.Warkus, Univ. Marburg, Germany] fixing many German translations as well as typography
	errors.

	doc/sample/test/web_tt2/welcome.tt2, src/lib/Makefile.am,
	sympa.spec.in:	AuthCAS module used to be distributed with Sympa. Since
	Sympa 6, it is a standalone CPAN module. The module still has the same
	name, therefore old installed versions of the module need to be removed

	src/sympa_wizard.pl.in, wwsympa/wwsympa.fcgi.in: [#6022][Submited by
	Soji Ikeda] Text::Wrap module worked only with languages with word
	separator (space). New module Text::LineFold supports most languages.

	src/etc/script/sympa.in:  [proposed by Jpse-Marcio Martins] no more
	check the OSYTE, check if functions file exists instead


  Features:


*****  DKIM : Sympa now supports DKIM for message diffusion and control.
*****          Incoming messages: Authorization scenarios can now use DKIM. Turning
*****on the dkim_feature configuration parameter will provide a new authentication level
*****to the scenario engine. Scenario evaluation for incoming messages with a valid DKIM
*****signature (but no S/MIME signature) will be evaluated with authentication method dkim.
*****So rules that use authentication method smtp will not match. You will nedd to update
*****your scenarios if you want to use DKIM.
*****
*****          Outgoing messages: You may want to make Sympa sign outgoing messages.
*****Almost every aspects of DKIM signature behavior can be customized via Sympa
*****configuration parameters. Please check the DKIM parameters section for
*****further details. Note that each parameter can also be set for a given
*****virtual robot; and most of them are available as list parameter.
*****
*****Which messages should be signed?
*****In order to configure Sympa for signing outgoing messages, you have to decide which messages Sympa should sign . This should be decided for four kind of messages:
*****     Services messages : these are all messages sent by Sympa itself : welcome messages, answers to mail commands, various notification such as remind message and digest messages;
*****     List messages : messages distributed to list members (where the initial From: header is preserved). These messages will fall is one one the following subcategory:
*****           - authenticated messages (using S/MIME signature, challenge or password);
*****           - received with a valid DKIM signature;
*****           - validated by one of the list editors;
*****           - other messages.
*****
*****Server parameters used with DKIM:
*****    o dkim_feature
*****    o dkim_add_signature_to
*****    o dkim_signature_apply_on
*****    o dkim_private_key_path
*****    o dkim_selector
*****    o dkim_signer_domain
*****    o dkim_signer_identity
*****    o dkim_header_list
*****
*****List parameters used with DKIM:
*****
*****    o dkim_feature
*****    o dkim_signature_apply_on
*****    o dkim_parameters
*****        + private_key_path
*****        + selector
*****        + header_list
*****        + signer_domain
*****        + signer_identity
*****
***** YOU WILL NEED TO ADAPT YOUR SCENARIOS TO USE DKIM.
***** PLEASE READ THE DOCUMENTATION: 
***** http://www.sympa.org/manual_6.1/dkim


	web_tt2/Makefile.am, web_tt2/ca.tt2, web_tt2/lca.tt2,
	wwsympa/wwsympa.fcgi.in:  It is now possible to create Custom actions
	at the list or robot level. These custom actions allow you to create
	new pages in the Sympa web interface. for now, you can only display
	informations using this method. any post treatment (such as form
	submission) must be handled outside of Sympa. See
	https://www.sympa.org/manual_6.1/customizing#custom_actions for more
	details.


	mail_tt2/user_notification.tt2, src/lib/Bulk.pm,src/lib/mail.pm,
	src/sympa_wizard.pl.in, web_tt2/Makefile.am, wwsympa/wwsympa.fcgi.in
	web_tt2/auto_signoff.tt2:
	Autosignoff footer link. It is nw possible to add a link in list messages
	which are customized for each user. When clicking this link, the user will
	trigger the sending of a confirmation email. This confirmation email
	contain an authenticating link. Clicking this link will unsubscribe
	the user.


	[Submitted by J. jourdan] Exclude users. Beware, that this feature is different from the blacklist.
	Exclusion makes sense when a list is based on external data sources, thanks
	to exclusion, a user can unsubscribe (or being removed by list owner) even
	though he should be included via an external data source. Users get into the
	exclusion table, through the standard unsubscribe / delete functions. They get
	off the exclusion table with the standard subscribe / add functions. Adding of
	the table 'exclusion_table'.

	[Submitted by J. jourdan] "suspension of membership." The user can suspend his subscription to the lists
	that he subscribes. For a finite length or not. Added a calendar in javascript
	to select a date.

	[Submitted by J. jourdan] Messages parsing; custom attributes can be
	now used as parameters for TT2 tags in messages distributed by Sympa.
	This adds notably the possibility to add authenticated unsubscribe URL
	to message footers. merge is controled by a list|robot paremeter :
	merge_feature on|off

	soap/sampleClient.php, soap/sympa.wsdl, soap/sympasoap.pm:  Now soap
	complexWhich service include subscribers information about bounce

	mail_tt2/listowner_notification.tt2, src/lib/Commands.pm,
	src/lib/Conf.pm, src/lib/List.pm, src/sympa.pl.in,
	web_tt2/javascript.tt2, web_tt2/menu.tt2, web_tt2/nav.tt2,
	web_tt2/review.tt2, web_tt2/serveradmin.tt2,
	web_tt2/subscriber_table.tt2, wwsympa/wwsympa.fcgi.in:
	sympa.pl --conf2db load in database sympa.conf, wwsympa.conf and robot.conf

	src/lib/List.pm, src/lib/confdef.pm, web_tt2/renewpasswd.tt2,
	wwsympa/Auth.pm, wwsympa/wwsympa.fcgi.in:  max_wrong_password robot
	parameter (default 19) now Sympa block account after this number of
	wrong account submition is reached. Needed to block brut force attack. 

	configure.ac, src/bulk.pl.in, src/etc/script/create_db.Oracle,
	src/etc/script/create_db.Pg, src/etc/script/create_db.SQLite,
	src/etc/script/create_db.Sybase, src/etc/script/create_db.mysql,
	src/lib/Bulk.pm, src/lib/Upgrade.pm, src/lib/mail.pm:  two new fields
	in the database :
	- messageid_bulkspool in bulkspool_table
	- messageid_bulkmailer in bulkmailer_table
	These fields both contain the value of the "Message-ID" SMTP header for each message
	-or packet - to be sent. This allows more reliable logs about the treatment of messages
	all along the distribution chain.

	doc/sample/test/web_tt2/welcome.tt2, soap/sympa_soap_client.pl.in,
	sympa.spec.in:	add new features to soap client :
	add,del,subscribe,signoff

	doc/sample/test/web_tt2/welcome.tt2, src/lib/Conf.pm, sympa.spec.in,
	wwsympa/wwsympa.fcgi.in:  Extended the format of the generic_sso
	paragraph in auth.conf.
	Added two new parameters :
	  - http_header_list : allows to explicitely list HTTP header fields that should be
		cached in sympa user_table. 
	  - http_header_value_separator : user attributes may be multi-valued (including the
		user email address. This parameter defines the values separator ;
		defualt is ';' (adapted for Shibboleth)


        src/lib/Conf.pm, src/lib/confdef.pm, wwsympa/wwsympa.fcgi.in:  You can
        now define a single custom parameter at the robot level, using the new
        parameter custom_robot_parameter. The format for it is: "parame_name ;
        param_value". See
        https://www.sympa.org/manual_6.1/conf-parameters/part1#custom_robot_parameter
        for details.



6.0.6		September 20, 2010

  Bug fixes:

	src/lib/Bulk.pm: [#7038][reported by D.Pritts, Internet2] Prevent
	duplicate entry error in Bulk::store(). This error occured while
	sending duplicate service messages (same content to the same user). The
	listmaster is no more notified, but the second instance of the message
	is still not sent; this should be fixed.

	wwsympa/wwsympa.fcgi.in:  To field was not set while sending the
	sendpasswd service message.
	This bug was introduced in revision 5150.

	wwsympa/wwsympa.fcgi.in:  In some - difficult to precisely describe -
	configurations, sessions could be messed due to an inner cache of
	cookie environement variable, either in Apache of perl. Fixed by
	force-blanking this variable as soon as we affect it to a session.

	configure.ac, doc/Makefile.am: [#6855][S.Ikeda] Samples were installed
	under / and sympa.pdf was not installed. Added missing docdir def in
	configure.ac + AC_PREREQ(2.60)

	configure.ac: [O.Lacroix, CIRIL] ./configure --help was not consistant
	with the directory defaults. Changed the help message for the following
	options : --with-expldir, --with-spooldir, --with-scriptdir,
	--with-modulesdir
	***** piddir default changed from PREFIX/var to /var

	wwsympa/wwsympa.fcgi.in: [#6879][reported by A.Koshokin, Intel] Fixed
	the BASE HTML tag. The base previously was the archive directory, now
	setting it to the archive message. 
	Bug description: NAME anchors within HTML archived messages were
	broken.

	src/lib/Bulk.pm: [#7038][reported by D.Pritts, Internet2] Prevent
	duplicate entry error in Bulk::store(). This error occured while
	sending duplicate service messages (same content to the same user). The
	listmaster is no more notified, but the second instance of the message
	is still not sent; this should be fixed.

  Changes:

	configure.ac: [Submitted by G. Rousse, INRIA] Several improvments in
	configure.ac:
	- changed the minimal version of autoconf to 2.60
	- factorization of the section regarding the FSH/non FSH alternative.

6.1b.6		August 23, 2010

  Bug fixes:

	src/lib/LDAPSource.pm: [#6802] [T.Berry, NASA] Remove duplicate code +
	variable declared twice

	wwsympa/wwsympa.fcgi.in: [#6842] [S.Ikeda] /help/editlist does not show
	title of parameters

	src/lib/tools.pm: [#6901][reported by D.Black] tools::smime_decrypt()
	could make sympa.pl process crash. 

	src/lib/tools.pm, wwsympa/wwsympa.fcgi.in: [S.Ikeda][#3779] Comma in
	gecos caused invalid From: in Web posting. New tools::addrencode() for
	proper encoding of From: SMTP header field according to RFC5322.

	src/lib/Upgrade.pm, wwsympa/wwsympa.fcgi.in: [#4106][reported by
	M.Larchet] Shared documents could not get manipulated. This was due to
	changes in the algorithm of MIME::EncWords::encode_mimewords() function
	(chars -_+! no more Q-encoded). The problem started with version 1.010
	of MIME::EncWords. The fix consists in a massive renaming of shared
	files (according to new algorithm) during sympa.pl --upgrade.

	src/lib/mail.pm, wwsympa/wwsympa.fcgi.in: [#3984] [submitted by
	S.Kristoffersen] Restored code to add Auto-Submitted SMTP header field.
	mail::mail_file() does 
	not set this header when 'not_auto_submitted' is set, ie when wwsympa
	sends commands to sympa.pl through the msg/ spool.

	src/lib/Lock.pm: [#6513] [Landry Breuil] Fix errors in apache error log
	(Use of uninitialized value in sprintf) when debug is enabled

	configure.ac, doc/Makefile.am: [#6855][S.Ikeda] Samples were installed
	under / and sympa.pdf was not installed. Added missing docdir def in
	configure.ac + AC_PREREQ(2.60)

	configure.ac: [O.Lacroix, CIRIL] ./configure --help was not consistant
	with the directory defaults. Changed the help message for the following
	options : --with-expldir, --with-spooldir, --with-scriptdir,
	--with-modulesdir
	***** piddir default changed from PREFIX/var to /var

	wwsympa/wwsympa.fcgi.in: [#6879][reported by A.Koshokin, Intel] Fixed
	the BASE HTML tag. The base previously was the archive directory, now
	setting it to the archive message. 
	Bug description: NAME anchors within HTML archived messages were
	broken.

	src/lib/Bulk.pm: [#7038][reported by D.Pritts, Internet2] Prevent
	duplicate entry error in Bulk::store(). This error occured while
	sending duplicate service messages (same content to the same user). The
	listmaster is no more notified, but the second instance of the message
	is still not sent; this should be fixed.

	wwsympa/wwsympa.fcgi.in:  To field was not set while sending the
	sendpasswd service message.
	This bug was introduced in revision 5150.

	src/lib/Lock.pm:  The debug4 log facility does not exist. Replacing its
	occurences with debug3.

	mail_tt2/listmaster_notification.tt2, src/lib/admin.pm:
	[#7053][D.Pritts, Internet2] Listmaster notification for renaming was
	wrong - got "list copied" notification instead.

	src/lib/Conf.pm:  Previously only default distributed css.tt2 was used
	to generate CSS files in static_content/. Now also checking customized
	css.tt2.

	src/lib/List.pm:  fix verp rate ase where Sympa do not send
	messages to subscriber with bounces 

	src/sympa_wizard.pl.in: Encoding in body of web composed messages was
	broken. Now require version 1.03 of HTML::StripScripts::Parser

	wwsympa/wwsympa.fcgi.in:  Functions rename_list and change_email could
	not be run by a robot listmater. Added missing $robot parameter to
	List::is_listmaster() calls


  Changes:

	configure.ac: [Submitted by G. Rousse, INRIA] Several improvments in
	configure.ac:
	- changed the minimal version of autoconf to 2.60
	- factorization of the section regarding the FSH/non FSH alternative.

  Features:

	web_tt2/Makefile.am, web_tt2/ca.tt2, web_tt2/lca.tt2,
	wwsympa/wwsympa.fcgi.in:  It is now possible to create Custom actions
	at the list or robot level. These custom actions allow you to create
	new pages in the Sympa web interface. for now, you can only display
	informations using this method. any post treatment (such as form
	submission) must be handled outside of Sympa. See
	https://www.sympa.org/manual_6.1/customizing#custom_actions for more
	details.

6.0.5		July 06, 2010

  Bug fixes:

	src/lib/Lock.pm:  The debug4 log facility does not exist. Replacing its
	occurences with debug3.

6.0.4		July 05, 2010

  Bug fixes:

	src/lib/Lock.pm: [#6513] [Landry Breuil] Fix errors in apache error log
	(Use of uninitialized value in sprintf) when debug is enabled

	wwsympa/Bounce.pm: [#3881] [Michael Quintero] code to handle Groupwise
	7 bounces

	wwsympa/wwsympa.fcgi.in:  An extra "\n" appended to the "From:" field
	caused HTML message to be trimmed from their headers and consequently
	treated as plain text. This caused HTML messages to arrive as a plain
	text messages starting by SMTP headers.

	src/lib/LDAPSource.pm: [#6802] [T.Berry, NASA] Remove duplicate code +
	variable declared twice

	wwsympa/wwsympa.fcgi.in: [#6842] [S.Ikeda] /help/editlist does not show
	title of parameters

	src/lib/tools.pm: [#6901][reported by D.Black] tools::smime_decrypt()
	could make sympa.pl process crash. 

	src/lib/tools.pm, wwsympa/wwsympa.fcgi.in: [S.Ikeda][#3779] Comma in
	gecos caused invalid From: in Web posting. New tools::addrencode() for
	proper encoding of From: SMTP header field according to RFC5322.

	src/lib/Upgrade.pm, wwsympa/wwsympa.fcgi.in: [#4106][reported by
	M.Larchet] Shared documents could not get manipulated. This was due to
	changes in the algorithm of MIME::EncWords::encode_mimewords() function
	(chars -_+! no more Q-encoded). The problem started with version 1.010
	of MIME::EncWords. The fix consists in a massive renaming of shared
	files (according to new algorithm) during sympa.pl --upgrade.

	src/lib/mail.pm, wwsympa/wwsympa.fcgi.in: [#3984] [submitted by
	S.Kristoffersen] Restored code to add Auto-Submitted SMTP header field.
	mail::mail_file() does not set this header when 'not_auto_submitted' is
	set, ie when wwsympa sends commands to sympa.pl through the msg/ spool.

  Features:

	src/etc/create_list_templates/hotline/config.tt2,
	src/etc/create_list_templates/private_working_group/config.tt2,
	src/lib/List.pm, src/lib/confdef.pm, src/sympa.pl.in: [#6693]
	[requested by R.Sharshenov] New "reject_mail_from_automates_feature"
	list parameter allows to disable the
	detection (and rejection) of mails from automates. This detection is
	based on the From header field as well as the Auto-S
	ubmitted header field. A default behavior can be defined in sympa.conf.

6.1b.4		June 14, 2010

  Bug fixes:

	src/lib/Lock.pm:  Invalid log facility for some logs in Lock.pm. It
	looks like we can't go below debug3.

	src/lib/Bulk.pm: [#6937][#6907][#6915][Reported by S. Dukachev, A.
	Gouaux and A. Michon (in order of apparition)] The query used to store
	packets in the bulk_mailer table did enclose interger values between
	quotes, which is not correct. In addition, it obfuscated the problem
	that the '$merge' parameter was sometimes undefined. This led to trying
	to submit an insert query containg a value '' for an integer field.
	Fixed by suppressing quotes for integer values and ensuring that the
	$merge variable has a value set.

	web_tt2/Makefile.am: [Reported by P. Evans] The edit_config.tt2 file
	was not installed during the "make install" because it was not declared
	in the Makefile.am.

6.1b.3		June 07, 2010

  Bug fixes:

	src/etc/script/create_db.Oracle, src/etc/script/create_db.Pg,
	src/etc/script/create_db.SQLite, src/etc/script/create_db.Sybase,
	src/etc/script/create_db.mysql:
	[Reported by A. Michon, IBCP and A.Gouaux]
	In the create_db.* scripts, some of the name of the fields
	related to DKIM were uncorrect, leading bulk.pl to fail starting. These
	names are now correct.

	src/etc/script/create_db.Pg: [reported by A. Michon, IBCP] A typo in
	create_db.Pg caused the db creation query to fail.

6.1b.2		June 03, 2010

  Features:

	mail_tt2/user_notification.tt2, src/lib/Bulk.pm,src/lib/mail.pm,
	src/sympa_wizard.pl.in, web_tt2/Makefile.am, wwsympa/wwsympa.fcgi.in
	web_tt2/auto_signoff.tt2:
	Autosignoff footer link. It is nw possible to add a link in list messages
	which are customized for each user. When clicking this link, the user will
	trigger the sending of a confirmation email. This confirmation email
	contain an authenticating link. Clicking this link will unsubscribe
	the user.

6.1b.1		May 26, 2010

  Features:

*****  DKIM : Sympa now supports DKIM for message diffusion and control.
*****          Incoming messages: Authorization scenarios can now use DKIM. Turning
*****on the dkim_feature configuration parameter will provide a new authentication level
*****to the scenario engine. Scenario evaluation for incoming messages with a valid DKIM
*****signature (but no S/MIME signature) will be evaluated with authentication method dkim.
*****So rules that use authentication method smtp will not match. You will nedd to update
*****your scenarios if you want to use DKIM.
*****
*****          Outgoing messages: You may want to make Sympa sign outgoing messages.
*****Almost every aspects of DKIM signature behavior can be customized via Sympa
*****configuration parameters. Please check the DKIM parameters section for
*****further details. Note that each parameter can also be set for a given
*****virtual robot; and most of them are available as list parameter.
*****
*****Which messages should be signed?
*****In order to configure Sympa for signing outgoing messages, you have to decide which messages Sympa should sign . This should be decided for four kind of messages:
*****     Services messages : these are all messages sent by Sympa itself : welcome messages, answers to mail commands, various notification such as remind message and digest messages;
*****     List messages : messages distributed to list members (where the initial From: header is preserved). These messages will fall is one one the following subcategory:
*****           - authenticated messages (using S/MIME signature, challenge or password);
*****           - received with a valid DKIM signature;
*****           - validated by one of the list editors;
*****           - other messages.
*****
*****Server parameters used with DKIM:
*****    o dkim_feature
*****    o dkim_add_signature_to
*****    o dkim_signature_apply_on
*****    o dkim_private_key_path
*****    o dkim_selector
*****    o dkim_signer_domain
*****    o dkim_signer_identity
*****    o dkim_header_list
*****
*****List parameters used with DKIM:
*****
*****    o dkim_feature
*****    o dkim_signature_apply_on
*****    o dkim_parameters
*****        + private_key_path
*****        + selector
*****        + header_list
*****        + signer_domain
*****        + signer_identity
*****
***** YOU WILL NEED TO ADAPT YOUR SCENARIOS TO USE DKIM.
***** PLEASE READ THE DOCUMENTATION: 
***** http://www.sympa.org/manual_6.1/dkim

	[Submitted by J. jourdan] Exclude users. Beware, that this feature is different from the blacklist.
	Exclusion makes sense when a list is based on external data sources, thanks
	to exclusion, a user can unsubscribe (or being removed by list owner) even
	though he should be included via an external data source. Users get into the
	exclusion table, through the standard unsubscribe / delete functions. They get
	off the exclusion table with the standard subscribe / add functions. Adding of
	the table 'exclusion_table'.

	[Submitted by J. jourdan] "suspension of membership." The user can suspend his subscription to the lists
	that he subscribes. For a finite length or not. Added a calendar in javascript
	to select a date.

	[Submitted by J. jourdan] Messages parsing; custom attributes can be
	now used as parameters for TT2 tags in messages distributed by Sympa.
	This adds notably the possibility to add authenticated unsubscribe URL
	to message footers. merge is controled by a list|robot paremeter :
	merge_feature on|off

	soap/sampleClient.php, soap/sympa.wsdl, soap/sympasoap.pm:  Now soap
	complexWhich service include subscribers information about bounce

	mail_tt2/listowner_notification.tt2, src/lib/Commands.pm,
	src/lib/Conf.pm, src/lib/List.pm, src/sympa.pl.in,
	web_tt2/javascript.tt2, web_tt2/menu.tt2, web_tt2/nav.tt2,
	web_tt2/review.tt2, web_tt2/serveradmin.tt2,
	web_tt2/subscriber_table.tt2, wwsympa/wwsympa.fcgi.in:
	sympa.pl --conf2db load in database sympa.conf, wwsympa.conf and robot.conf

	src/lib/List.pm, src/lib/confdef.pm, web_tt2/renewpasswd.tt2,
	wwsympa/Auth.pm, wwsympa/wwsympa.fcgi.in:  max_wrong_password robot
	parameter (default 19) now Sympa block account after this number of
	wrong account submition is reached. Needed to block brut force attack. 

	configure.ac, src/bulk.pl.in, src/etc/script/create_db.Oracle,
	src/etc/script/create_db.Pg, src/etc/script/create_db.SQLite,
	src/etc/script/create_db.Sybase, src/etc/script/create_db.mysql,
	src/lib/Bulk.pm, src/lib/Upgrade.pm, src/lib/mail.pm:  two new fields
	in the database :
	- messageid_bulkspool in bulkspool_table
	- messageid_bulkmailer in bulkmailer_table
	These fields both contain the value of the "Message-ID" SMTP header for each message
	-or packet - to be sent. This allows more reliable logs about the treatment of messages
	all along the distribution chain.

	doc/sample/test/web_tt2/welcome.tt2, soap/sympa_soap_client.pl.in,
	sympa.spec.in:	add new features to soap client :
	add,del,subscribe,signoff

	doc/sample/test/web_tt2/welcome.tt2, src/lib/Conf.pm, sympa.spec.in,
	wwsympa/wwsympa.fcgi.in:  Extended the format of the generic_sso
	paragraph in auth.conf.
	Added two new parameters :
	  - http_header_list : allows to explicitely list HTTP header fields that should be
		cached in sympa user_table. 
	  - http_header_value_separator : user attributes may be multi-valued (including the
		user email address. This parameter defines the values separator ;
		defualt is ';' (adapted for Shibboleth)

  Changes:

	soap/sampleClient.php, src/lib/Message.pm, src/lib/Scenario.pm,
	src/lib/confdef.pm, src/sympa.pl.in:  spam_status message property is
	now evaluated from a scial scenario spam_status. This scenario accept
	ham, spam and unsure as result. This replace the antisspam_header_name
	antispam_tag_header_spam_regexp 

	mail_tt2/digest.tt2, mail_tt2/digest_plain.tt2,
	mail_tt2/get_archive.tt2, mail_tt2/global_remind.tt2,
	mail_tt2/helpfile.tt2, mail_tt2/info_report.tt2, mail_tt2/review.tt2,
	mail_tt2/summary.tt2, src/lib/mail.pm, src/lib/tools.pm,
	src/lib/tt2.pm, src/sympa_wizard.pl.in, wwsympa/wwsympa.fcgi.in:
	[Submitted by S. Ikeda] Line wrapping is now enabled for both European
	and non European languages.

	src/etc/script/create_db.Oracle, src/etc/script/create_db.Pg,
	src/etc/script/create_db.SQLite, src/etc/script/create_db.Sybase,
	src/etc/script/create_db.mysql, src/lib/Upgrade.pm:  change database
	structure in order to store nimber of wrong login attempts

	src/bulk.pl.in, src/lib/Bulk.pm, src/lib/List.pm, src/lib/mail.pm,
	web_tt2/suboptions.tt2, wwsympa/wwsympa.fcgi.in:  Is is now possible to
	enable topics chen the reception mode is 'mail', 'notice', 'not_me',
	'txt', 'html' or 'urlize'.

	web_tt2/get_inactive_lists.tt2: [Submitted by M. Warkus] Lists for
	which no message was ever sent will display a user friendly message
	instead "January 1 1970".

	doc/sample/test/web_tt2/welcome.tt2, src/lib/Archive.pm,
	src/lib/Message.pm, src/lib/PlainDigest.pm, src/lib/mail.pm,
	src/lib/tools.pm, src/sympa_wizard.pl.in, sympa.spec.in,
	wwsympa/wwsympa.fcgi.in: Changes to the cpan installation process :
	 - Mail::Internet and MIME::Lite modules not directly required
	 - fix calls to install_module()
	 - added informations about prerequisites
	 - generalized the 'usage' entry for each module
	 - added an introduction to warn the user about the length/nature of the process

	[Submitted by M.Warkus, Univ. Marburg, Germany] fixing many German translations as well as typography
	errors.

	doc/sample/test/web_tt2/welcome.tt2, src/lib/Makefile.am,
	sympa.spec.in:	AuthCAS module used to be distributed with Sympa. Since
	Sympa 6, it is a standalone CPAN module. The module still has the same
	name, therefore old installed versions of the module need to be removed

	src/sympa_wizard.pl.in, wwsympa/wwsympa.fcgi.in: [#6022][Submited by
	Soji Ikeda] Text::Wrap module worked only with languages with word
	separator (space). New module Text::LineFold supports most languages.

	src/etc/script/sympa.in:  [proposed by Jpse-Marcio Martins] no more
	check the OSYTE, check if functions file exists instead

  Bug fixes:

	wwsympa/wwsympa.fcgi.in:  Dan Pritts fix
	https://sourcesup.cru.fr/tracker/index.php?func=detail&aid=6839&group_id=23&atid=167

	src/lib/List.pm:  Reverting a part of revision #6227. This lead to
	datasources loosing all their subscribers when using a single
	datasource and the synchronizing failed.

	src/lib/List.pm:  When calling send_notify_to_owner, the '$param'
	parameter was used as a hash, wihout checking first that it was
	actually a hash. in some cases though, such as in
	set_status_family_closed(), it was a ref to an array. This caused Sympa
	to crach with a "Can't coerce array into a hash" error. Fixed by moving
	the bad line in the hash-specific part of the sub.

	wwsympa/wwsympa.fcgi.in:  security fix : block login submitted with any
	http method but POST. (security audit vuln #5)

	web_tt2/edit_config.tt2:  missing template for config editor

	src/etc/script/arc2webarc.pl.in:  fix incorrect check of date format
	that block 2010 messages (reported by Omen Wild  (ucdavis.edu)

	src/etc/script/create_db.Sybase:   fix missing conf_table in Sybase
	creation script.

	web_tt2/error.tt2, wwsympa/wwsympa.fcgi.in:  Now shared document can't
	be read or edited unless list is open. This is a security fix

	soap/sympa_soap_client.pl.in: Fixed a bug that prevented authentication
	while using authenticateAndRun()

	src/lib/SQLSource.pm: [Submùitted by F. Lachapelle, Inverse] If the
	db_type is set to Oracle and db_port is specified in the main
	configuration file, than the port would appear two times in the
	connection string.

	src/lib/tools.pm: [reported by F.Fareneau, univ Valenciennes] shared
	documents/folders names were badly encoded while using Encode >= 2.19.
	The issue was related to a low level subroutine
	(Encode::MIME::Header::_encode_q()) that slightly changed its API
	(expecting unicode instead of bytes parameter). Now using
	MIME::EncWords::encode_mimewords() instead.

	src/lib/tools.pm: [#6552] [Soji IKEDA] Wwsympa would stall while
	loading session data including metacharacters. Existing code
	(tools::string_2_hash()) would loop on a regular expression match.
	Patch also escapes ``"'' characters.

	src/sympa.pl.in: [Submitted by H. Moa] Some message could cause a
	sympa.pl crash. Fixed by embedding the dangerous part of the code in an
	eval statement.

	src/lib/List.pm:  Users received the same message multiple times. This
	was due to a problem in the VERP provisionning. When filling the array
	containing the users for which VERP will be used, Sympa add to sources
	of users : a certain rate of all the users and all the users that have
	a high bounce rate already. for each reception mode, Sympa provisions
	VERP users this way. the problem was the following: for each reception
	mode, Sympa used the list of users using the default distribution mode
	instead of the list of users using the specific distribution mode
	currently treated. this lead to the addition, to the list of bouncing
	users of each reception mode, the list of users selected to receive the
	message in VERP for normal reception mode instead of the high bouncers
	for this reception mode. fixed by using an aray variable regarding the
	kind of reception mode currently treated.

	src/bulk.pl.in, src/lib/tools.pm:  When parsing a message to merge or
	verifying DKIM signature, a MIME::Parser object was created and the
	message parsed into a MIME::Entity. The output of the parser was not
	set to core, so it used its default: the filesystem. It led to the
	creation of a lots of files in the expl directory, that were never
	removed. Fixed by adding the line :

	src/bulk.pl.in:  bulk.pl exited when it could not remove the packet it
	had juste sent. It now only issue an error messge in the logs.

	mail_tt2/urlized_part.tt2, src/lib/List.pm:  Urlize messages charset
	was nor properly set. Consequently, bulk crashed when trying to merge
	the message. In addition, a faulty var name caused Sympa to try to send
	the originla message instead of the urlized message.

	src/lib/Bulk.pm:  Messages were tagged multiple times as last.

	mail_tt2/command_report.tt2:  fixed bug introduced in revision 6187.
	Sympa.pl would send empty command reports with a "Failed to parse
	command_report.tt2 : Template::Exception" error in its log file

	wwsympa/wwsympa.fcgi.in:  Fixed bug introduced in revision 5998. web
	signoff did not recognize authenticated users.

	src/bulk.pl.in:  When merge was not activated, Messages were not
	initialized, leading to empty messages.

	src/lib/Bulk.pm:  remove usage of fingerprint authentication token 

	web_tt2/compose_mail.tt2:  remove some coin coin style text

	src/lib/List.pm: [#3047][reported by N.Chipaux, Mandriva] Some service
	messages sent by Sympa would use an unappropriate language (did not
	match the user language). This issue happened whenever a message was
	sent to more than one reciepient; the first user's language was used
	for the following ones. Fixed List::send_file() and
	List::send_global_file(): now duplicating the 'context' parameter to
	prevent changes of the original data structure.

	src/lib/confdef.pm:  http_host was not set by default in syma.conf,
	making the sympa wizard to fail starting.

	doc/sample/test/web_tt2/welcome.tt2, sympa.spec.in, wwsympa/Auth.pm:
	[Submitted by M. Warkus, univ. Marburg] When a user logged in, using
	LDAP, by providing an email address, if this email was not the first
	one in the LDAP email attribute, then the uiser was not logged with the
	address she provided but with the default address found in the LDAP
	directory. Now, if an email is provided and the login is successful
	,the user is logged in with the email she provided.

	doc/sample/test/web_tt2/welcome.tt2, soap/sympa_soap_client.pl.in,
	sympa.spec.in:	Fixed a typo in the sympa_soap_client.pl command line
	tool that prevented the service parameters to be used.

	doc/sample/test/web_tt2/welcome.tt2, src/sympa_wizard.pl.in,
	sympa.spec.in:	Installed MHonArc version was not properly detected

	doc/sample/test/web_tt2/welcome.tt2, src/sympa_wizard.pl.in,
	sympa.spec.in: Can't do $module->require() since we no more require the
	UNIVERSAl::require module. Replaced with eval "require $module".

	Makefile.am: [Submitted by M.Deranek] On a multi core system,
	installdir & installconfig targets can run in parallel. Added a
	dependency between these targets.

	doc/sample/test/web_tt2/welcome.tt2, src/lib/Bulk.pm, src/lib/List.pm,
	sympa.spec.in:	Missing "use WebAgent" directive since recent
	reorganization of code (revision 5939).

	Makefile.am, doc/sample/test/web_tt2/welcome.tt2, src/lib/tools.pm,
	sympa.spec.in: [#6380][Reported by M.Warkus, Philipps-Univ. Marburg]
	Added a line break to written PID files.

	configure.ac, doc/sample/test/web_tt2/welcome.tt2, sympa.spec.in:  Fix
	typo introduced in recent commit.

	src/lib/Conf.pm: [Submitted by M. Warkus, univ.Marburg] Inverted test
	caused the config not to be loaded.

	Makefile.am:  The last install message didn't tell to launch
	sympa_wizzard.pl but sympa.pl.

	src/lib/Conf.pm, src/lib/confdef.pm:  Now Sympa don't complain about
	optional robot parameters without definition in sympa;conf and
	wwsympa.conf. Sympa now stop because of required robot parameters
	without value (minimum a default).  

	wwsympa/wwsympa.fcgi.in:  [reported by N.Matthies] Added notice when
	user preferences have been updated

	doc/sample/test/web_tt2/welcome.tt2, po/de.po, po-wwsympa/de.po,
	sympa.spec.in, web_tt2/help_listconfig.tt2, web_tt2/help_shared.tt2,
	web_tt2/help_user.tt2: [Submitted by M. Warkus, univ. Marburg]
	Reporting commits 6012 and 6013 from the 6.0 branch: german translation
	and fixed typos in webhelp.

	src/bulk.pl.in:  bulk.pl now uses the "use strict" pragma. Some
	variables were not properly defined.

6.0.3		June 03, 2010

  Bug fixes:

	src/lib/SQLSource.pm: [Reported by O. Germes, univ. Rennes1] The upper
	case "O" in "Oracle" caused the task_manager.pl to be unable to
	synchronize datasources. This is a quick fix that reverts the patch for
	bug [#6603].

	src/lib/Conf.pm: [submitted by G. rousse, INRIA] Spool directories
	created in Conf.pm didn't have ownership set, meaning they belonged to
	root.root, preventing sympa to create new content therein, preventing
	sympa.pl to start.

	src/bulk.pl.in: [Reported by S. Bosquin, Ejinov] A bad variable name
	seemed to have appeared just before the version tag, making bulk.pl to
	fail starting. Fixed by giving the right name to this variable.


6.0.2		May 28, 2010

  Bug fixes:

	src/lib/Bulk.pm: [Submitted by S. Ikeda] When bulk_max_count was
	increased, some message packets were processed more than once. Fixed to
	check that a packet is really not locked before trying to send it and
	using a prepared statement to quicken lock process.

	wwsympa/wwsympa.fcgi.in:  Dan Pritts fix
	https://sourcesup.cru.fr/tracker/index.php?func=detail&aid=6839&group_id=23&atid=167

	src/bulk.pl.in:  When a packet was found which corresponded to no
	message in the spool table, then an empty message was sent anyway.
	Should such a case arise again, the packet would be deleted.

	src/lib/List.pm:  Reverting a part of revision #6227. This lead to
	datasources loosing all their subscribers when using a single
	datasource and the synchronizing failed.

	src/lib/List.pm:  When calling send_notify_to_owner, the '$param'
	parameter was used as a hash, wihout checking first that it was
	actually a hash. in some cases though, such as in
	set_status_family_closed(), it was a ref to an array. This caused Sympa
	to crach with a "Can't coerce array into a hash" error. Fixed by moving
	the bad line in the hash-specific part of the sub.

	src/lib/List.pm: [Submitted by M. Brethous, Orange FT Group] When a
	file was used as datasource for subscribers inclusion, no test was done
	on the data found in the file. This led to 100% CPU usage when, for
	example, a very large excel file was used instead of a normal text file
	- a likely error when sources are handled by list owners. Fixed by
	cancelling inclusion when no valid email is found in the 50 first non
	empty lines of the source file.

	src/lib/Bulk.pm:  Fix a bug reported by K Clair (riseup) and Thomas
	Berry (nasa) : no purge where done in bulk_spool_table.

	src/sympa_wizard.pl.in: [Submitted by R. ANDERSSON] With older version
	of DBD::Mysql, bulk.pl happened to die with an "Out of memory!" cry.
	Fixed by increasing the version to the oldest fixing this problem. See
	http://bugs.mysql.com/bug.php?id=19453 for more details.

	src/lib/SQLSource.pm: [Submitted by T. Berry, NASA] Some SQL statements
	with Sybase failed when the actual backend was Microsoft SQL Server
	2005 sp3. This was due to a double quote in the definition of a
	constant breaking the query. Fixed by replacing double quotes by
	slash-escaped simple quotes.

	src/lib/Log.pm: [Submitted by P. DiCamillo, univ. Brown] Using Oracle
	10, the logs for the list were never displayed in the web interface.
	This was due to Oracle returning 0 to function $sth->rows, before any
	row are fetched. fixed by first trying to fetch rows before counting
	the number of rows.

	src/sympa_wizard.pl.in: [Reported by M. anderson, riseup.net] changed
	the minimal version of Time::hires to the older which doesn't seem to
	have any problem with the "time()" function.

	po/ar.po, po/bg.po, po/br.po, po/ca.po, po/cs.po, po/de.po, po/el.po,
	po/en_US.po, po/es.po, po/et.po, po/eu.po, po/fi.po, po/fr.po,
	po/hu.po, po/id.po, po/it.po, po/ja.po, po/ko.po, po/la.po, po/ml.po,
	po/nb_NO.po, po/nl.po, po/oc.po, po/pl.po, po/pt.po, po/pt_BR.po,
	po/ro.po, po/ru.po, po/sv.po, po/sympa.pot, po/tr.po, po/vi.po,
	po/zh_CN.po, po/zh_TW.po, web_tt2/home.tt2: [Reported by M. deranek,
	slonko.net] Removed inheritance of a faulty message with the sympa
	email address in it.

	Makefile.am: [Reported by P. Polkinghorne, Brunel univ.] The message
	displayed at the end of the "make install" didn't make it clear that
	the Perl modules checking must be done before any other upgrade or
	setting operation.

	wwsympa/wwsympa.fcgi.in: [Submitted by K. Maneva-Jakimoska, univ.
	Montclair] when a user had set her name, she could not delete it. the
	only was to set it as ' '. fixed by setting it to undef if no value is
	provided by the form.

	wwsympa/Bounce.pm: [Reported by Q. Brown, univ. Simmons] Sympa
	misinterpreted a header added by the puremessage antispam engine when
	no from was present in a bounce file. this lead to huge filenames for
	bad bounces and overwhlmingly large logs.

	src/lib/List.pm: [Submitted by R. Pinson] When a cutsom_subject was
	used AND the user added the tag herself AND The subject was a
	multi-line subject, then only the first line of the subject was kept in
	the final messgage. Fixed by changing the way Wympa catches the
	non-funtional (subject message and "Re:") part of the subject.

	wwsympa/wwsympa.fcgi.in: [Submitted by K. clair, when no user was
	bouncing in a list, trying to access to the bounces review lead to a
	cryptic error : "No page 1". Fixed by checking if there are more than 0
	bounces before issuing an error.

	src/lib/Upgrade.pm: [Reproted by M. Deranek, slonko.net] Upgrade.pm had
	three problems :

	src/lib/Conf.pm: [Reported by J. Bazik, Brown University] When the
	'sendmail_aliases' parameter was set to 'none', a file named 'none' was
	still created in the list_data directory. Fixed by testing the value of
	this parameter before creating the file.

	src/lib/Lock.pm: [Reported by J. Bazik, Brown University] In the
	subroutine Lock::_lock_nfs, if File::NFSLock failed, the else clause
	attempted to close a filehandle that was never set. Fixed by removing
	this closing attempt.

	Makefile.am:  During the make isntall, the Makefile used a line tha
	ttested the existence of the data_structure.version file in the sympa
	subdirectory of etc. If the file did not exist, then it was created.
	Problems:

	configure.ac: [Reported by M. Deranek, slonko.net] While running
	configure, the option "--with-localedir" could be used, but a warning
	was issued, stating that this option was obsolete. But the replacement
	option proposed (--localedir) was invalid. Fixed by deleting this
	warning message and the overall documentation in configure. Same
	problem fixed with the pair "--with-docdir"/"--docdir".

	src/lib/Upgrade.pm: [Submitted by M. Deranek, slonko.net] The upgrade
	process failed with SQLite, because DBD::SQLite >= 1.26_02 returns the
	table names prefixed with "main".

	web_tt2/compose_mail.tt2: [Submitted by M. Warkus, univ. Marburg]When
	accessing the "Compose message" page from an archive by selecting
	"sender", "list" or "both" with the radio buttons, the selected
	destination address appeared next to two buttons: "Send to the list"
	and "Send to me".

	wwsympa/wwsympa.fcgi.in:  Avoid to print a sybillin message when no
	bounces exist. If nothing exist, just go on and display a page with no
	entries.

	src/lib/SQLSource.pm: [Submitted by F. Lachapelle, Inverse] If the
	db_type is set to Oracle and db_port is specified in the main
	configuration file, than the port would appear two times in the
	connection string. Fixed by removing useless isolated port insertion
	in the connect string, as it is done for any connection in a central place.


	src/lib/tools.pm: [reported by F.Fareneau, univ Valenciennes] shared
	documents/folders names were badly encoded while using Encode >= 2.19.
	The issue was related to a low level subroutine
	(Encode::MIME::Header::_encode_q()) that slightly changed its API
	(expecting unicode instead of bytes parameter). Now using
	MIME::EncWords::encode_mimewords() instead.

	src/lib/tools.pm: [#6552] [Soji IKEDA] Wwsympa would stall while
	loading session data including metacharacters. Existing code
	(tools::string_2_hash()) would loop on a regular expression match.
	Patch also escapes ``"'' characters.



  Changes:

	po/Makefile.in.in:  Updated the make rules for i18N to update the
	English catalogue withou loosing customization.


6.0.1		9th December 2009

  Bug fixes:

	[Submitted by Wen Si] "date" is a reserved keywork with Oracle. Fixed by replacing all the occurrences
	of "AS date" by "AS \"date\".

	wwsympa/wwsympa.fcgi.in: [Submitted by T. Bellempois, ENS Lyon] In case of CAS error, wwsympa.fcgi crashed,
	because it was calling a subroutine in the module CAS, which doesn't exist in Sympa, instead of AuthCAS.


	mail_tt2/listmaster_notification.tt2, wwsympa/wwsympa.fcgi.in:
	[Reported by P. Maes, univ. Louvain] The report sent to the listmaster when a user cloned a list
	said "<newlistname> was cloned as <newlistname>". the old listname was not used.

	src/sympa.pl.in: [Submitted by H. Moa] Some message could cause a sympa.pl crash. Fixed by embedding
	the dangerous part of the code in an eval statement.

	src/etc/script/tpl2tt2.pl.in: [Reported by A. Schieber, AMUE] tt2.pl was still called by tpl2tt2.pl,
	though the former has been renamed to tt2.pm.


	configure.ac: [Submitted by G. rousse, INRIA] Existence of a postfix command was tested in the configure step. failing to find such a command
	caused the configure to stop. As postfix is not mandatory, such a behaviour is a bug. Check command path (both
	for postmap and newaliases) only if explicitely given by user, otherwise it revert to default values.

	configure.ac: [Submitted by G. Rousse, INRIA] Verifies in detail that the newaliases commnd exists and is executable by Sympa.

  Changes:

	po/ po-wwsympa: [Submitted by M. Warkus, univ. Karlsruhe]: All the i18n strings include now diacritics signs, such as semi-column.
	this allows to respect each language's typography rules.

	po/de.po, /po-wwsympa/de.po: [Submitted by M. Warkus, univ. Karlsruhe] Updated german translations.

	po/pl.po: [Submitted by Marcin Woloszyn, Silesian univ. of Poland] Updated polish translation.

6.0		1st October 2009

	The changes and features below are the compilation of the announces made for the
	previous beta releases of Sympa 6.0. Son't bother read them if you followed the
	beta. The bugs specifically fixed in each beta are still referred in these beta 
	version sections below.

  Features:

*****   New bulk.pl daemon installed with Sympa. This daemon is dedicated to mail distribution and 
*****   allows to parallelize this process on a single server as well as on multiple servers.
*****   The main bulk.pl processes will automatically fork new processes, depending on the amount
*****   of messages left in the database. You can control this behavior with the parameters 
*****   bulk_fork_threshold, bulk_max_count,bulk_fork_threshold, see below.
*****
*****   Messages spool used by the bulk.pl daemon is stored in the database, in two tables : 
*****   - bulkspool_table : one entry per message
*****   - bulkmailer_table : subset of receipients for each message 
*****   New associated sympa.conf parameters :
*****   - bulk_fork_threshold : minimum number of packets in database before the bulk forks to increase sending rate
*****   - bulk_max_count : max number of bulks that will run on the same server
*****   - bulk_lazytime : number of seconds a slave bulk will remain running without processing a message before 
*****     it spontaneously dies
*****   - bulk_wait_to_fork : number of seconds a master bulk waits between two packets number checks
*****   - sympa_packet_priority : default priority set to a packet to be sent by the bulk (for future use)
*****   - pidfile_bulk : location of the daemon PID file

*****   [Olivier Lumineau, CRU] Fresh new web CSS for the web interface.
*****   Here is the list of changes in the web interface :
*****   - New css.tt2
*****   - A new Sympa logo :-)
*****   - New navigation menu through list admin menu and server admin menu
*****   - Miscellaneous modifications in templates (list_admin_menu.tt2 not used anymore)
*****   WARNING : if you customize your own templates you may notice some mess in the page layout. 
*****   In such a case compare your templates to the distributed version and report any difference 
*****   to your own files...

*****   Replace storage of password with encryption by md5 fingerprint. This 
*****   make remind password impossible. So now a one time ticket table is created
*****   ticket are  sent by email as an authentication token. Ticket can be used 
*****   for lost password, create account, moderation request . It should be
*****   generalized to all operation that need a email chalenge.
*****
*****   sympa.pl --md5_encode_password change password encoding in the database using md5.So IT IS NOT REVERSIBLE,
*****   so you should save the database (in a safe place to protect password) 
*****
*****   <WARNING><WARNING><WARNING><WARNING><WARNING><WARNING><WARNING><WARNING><WARNING>
*****
*****   UPGRADING TO SYMPA 6.0 WILL NOT BE REVERSIBLE!
*****   BECAUSE WE DRASTICALLY CHANGED THE WAY THE PASSWORDS ARE STORED, ONCE YOU UPGRADED TO 6.0
*****   YOU WILL NEVER BE ABLE TO USE THE SYMPA DATABASE WITH A PREVIOUS VERSION AGAIN (UNLESS YOU ERASE ALL PASSWORDS)
*****   SO IF YOU'RE NOT SURE YOU WILL KEEP SYMPA 6.0, 
*****
*****   MAKE SURE YOU SAVED YOUR DATABASE BEFORE UPGRADING!
*****
*****   MAKE SURE YOU SAVED YOUR DATABASE BEFORE UPGRADING!
*****
*****   <WARNING><WARNING><WARNING><WARNING><WARNING><WARNING><WARNING><WARNING><WARNING>

      	src/Conf.pm, src/sympa_wizard.pl: Four new languages are now available by default in Sympa:
	  - Bokmal (B. C. Aasgaard)
	  - Polish (L. Zygmanski)
	  - Finn (J.P. Paloposki)
	  - Vietnamese (C. Siddall)
      	Thanks to the translators for their efforts!

     	/po/Makefile: New make command: "clean-po". Updates the PO catalogues but doesn't try to save strings that disappeared 
	in this version.

     	New button to toogle select/unselect all spams in modindex page
	
	New propertie in object message : spam_status .  This feature is used in modindex (listing of message waiting for 
	moderation) to show message tagued as spam.
	4 new parameters :
	- antispam_feature default off
	- antispam_tag_header_name default X-Spam-Status 
	- antispam_tag_header_spam_regexp default ^\s*Yes
	- antispam_tag_header_ham_regexp default ^\s*No

	If you change antispam_feature to value 'on' the other parameters default are compatible with spamassassin defaults.

	src/sympa.pl:  new sympa.pl options in order to recode shared document files and solve charset slag

	src/Conf.pm: Legacy character set support (submitted by S. Ikeda) is now enabled if the 
	'legacy_character_support_feature' sympa.conf parameter is set to on.

	New parameter 'legacy_character_support_feature'. If set to 'on', legacy character support will be enabled, as 
        discussed in https://listes.cru.fr/sympa/arc/sympa-dev/2006-09/msg00029.html and its follow-ups. Any other value 
	or no definition at all disables the functionnality.

 	Now http://server/sympa/<a valid listname> is redirect to http://server/sympa/info/<a valid listname> insteed of 
	"unkown action" error
	
	New database table in order to store robot config parameters that can be edited inline. This feature is used for color 
	edition in sympa admin/skinsedit

	New scenario test : less_than. (Submitted by S. Amrani, gendarmerie nationale). It Allows to compare two values. Is true
        if the first one is less than the second one. Works with strings, too, if you like.
	  
	Now sympa.pl --test_database_message_buffer can be used in order to verify database capacity to store messages spool 
	(dirty output a nicer is needed ;-)

   	New delivery_time list parameter in order to make distribution at a specified time
	
  	Now template of lists created using web interface can use any input from the create_list_request form referenced as 
	[% custom_input.VARNAME %]

    	New parameter 'inclusion_notification_feature'. If its value is set to 'on', subscribers are notified when they are 
	included in a list through an external datasource. 
	We no longer use the visibility to manage this behaviour to avoid confusion for users and an overwhelming number of 
	scenario evaluations.

	New inline color editor (skins section from "sympa admin")

	New [% editor_msg_body %] mail_tt2 variable : When rejecting a message by email reject command, the message body is 
	transmisted to the tt2 parser so it is now possible to print the message body in the notification sent to the original 
	message sender. The tt2 var to use is [%editor_msg_body%]

	The change_email feature has been rewritten as follows:
	- using authenticating URLs to check the new user email (instead of collecting his password)
	- provide an equivalent listmaster feature to change a user's email address
	- check if user is included ; if so, notify the list owner
	- rename list member picture if he changes his member email address

	[Peter Hart] Message moderation : Added a new function for the moderation of messages. On rejection of messages 
	personalised messages can be created 	and saved and used to give more information as to why these messages were 
	refused by the moderator.

	[Peter Hart] New scenario condition verify_netmask. exemple : verify_netmask('1.12.123.00/24') (changes in intanet 
	scenrii are just comment because we don't have access to the local netmask of installation)

	[Roland Hopferwieser] Extended the ldap_alias_manager.pl to use template to create LDAP entries. Also added a 
	simulation mode for debug purpose.

	New sympa;conf parameters to control logging for a specific module.
	Current version provide only logs for scenario . 
	- log_condition is used to controle in which case logs are applied. Both are multivaluated (list of values comma 
	separated). Example: log_module scenario,smtp
	- log_condition ip=127.0.0.1,email=foo@domain
	- log_module is not implemented for most modules. 'log_module smtp'
	  should replace the option sympa.pl -m

	Clone list : a new way to create lists : creation list form allows now to clone a list as a new empty list, all 
	config and customization are copied but not subscribers, archives and shared.

	src/lib/Conf.pm, wwsympa/wwsympa.fcgi.in: Extended the format of the generic_sso paragraph in auth.conf.
	Added two new parameters :
	  - http_header_list : allows to explicitely list HTTP header fields that should be cached in sympa user_table. 
	  - http_header_value_separator : user attributes may be multi-valued (including the user email address.
	    This parameter defines the values separator ; defualt is ';' (adapted for Shibboleth)

	soap/sympa_soap_client.pl.in: add new features to soap client : add,del,subscribe,signoff

  Changes:

*****   [Submitted by G. Rousse, INRIA] A lot of modification brought to the autotools usage in Sympa. 
*****   This is still a work in progress, but should make the life of Sympa packagers quite easier once it is finished.
*****   This work has greatly simplified all Makefiles, turned into Makefile.am
*****   Substitutions in perl modules are now performed at the "make" time, no more during "make install"
*****
*****   HERE IS THE LIST OF SIGNIFICANT CHANGES REGARDING THE INSTALLATION PROCESS:
*****   - Default sympa configuration files, previously stored in PREFIX/bin/etc/ are now stored in 
*****     PREFIX/share/default/ directory
*****
*****   - Most --with-xxdir configure options are now obsolete, replaced by equivalent standard --xxdir options
*****     Here is the list of concerned options : 
*****      --with-etcdir => --sysconfdir
*****      --with-bindir => --bindir
*****      --with-sbindir => --sbindir
*****      --with-libexecdir => --libexecdir
*****      --with-datadir => --with-defaultdir
*****      --with-libdir => --with-modulesdir
*****      --with-localedir => --localedir
*****      --with-mandir => --mandir
*****      --with-docdir => --docdir
*****      --with-sampledir => now installed with the documentation
*****    
*****   - Most default installation directories have been change to adopt standard FHS-compliant locations
*****     However, the distributed tar.gz still uses most of the previous locations to make upgrade process 
*****     less awkward. If you run "./configure ; make ; make install" with the tar.gz things will install as 
*****     usually. 
*****     If you run autoconf, it will define the set of target directories either the old way
*****     or the FHS way, depending on wether it finds an existing /etc/sympa.conf file.
*****
*****   - Removed obsolete sudo wrappers ; Sympa now includes C wrappers for both wwsympa.fcgi and sympa_soap_server.fcgi
*****     Check the manual <http://www.sympa.org/manual/index> for more informations on that topic

*****   New required library : gettext-devel

*****   New required CPAN modules :
*****   - AuthCAS : replaces the Sympa's CAS.pm own library
*****   - File::Copy::Recursive
*****   - Net::Netmask
*****   - Term::ProgressBar
*****   - Time::HiRes
*****   - MIME::Lite
*****   - MIME::Lite::HTML
*****   - Email::Date::Format

	[Submitted by G.Rousse, INRIA] check_perl_modules.pl now replaced with sympa_wizard.pl --check. All recent changes in 
	check_perl_modules.pl have been reported in sympa_wizard.pl

	When subscribing to a list, the confirmation popup now shows up only if no custom attributes will be used; Otherwise, 
	this would require that the user confirm twice : first in the popup, then in the custom attributes form; Also adapted 
	the text displayed in the submission form to custom attributes. 

	No more require Net::SSLeay perl module. Using LWP::UserAgent instead

	Now, when performing "make update-po", the catalogue file to update is temporarily saved to avoid losing strings from 
	beta version when updating stable version, or vice-versa. Both updated and saved files are then merged.

	If a message is tagued as a spam and if it is to be moderated or rejected, do not send a report information to the 
	message sender even if the scenario did not return 'quiet' directive

	Now message for moderation is not attached in the message sent to the moderator if tagued as spam.

	Now archives by thread or by chronologie is a session attribute (and a user preference). This feature also fix a bug 
	related to the way archives are cached by client. Now page are "static" for robots (as detected by SympaSession) and 
	dynamic for any others.

	Now if antispam_feature is configured, sympa robot will ignore incomming command messages if tagued as spam. By the same 
	way, spam messages for listmaster, list-request and list-editor will be ignored. Such messages are moved in spool bad 
	and message-id is loggued.  

	New structure %required_args defining required parameters, %required_privileges defines required privileges to run 
	actions and new subroutine check_action_parameters() that does the checking. Removed 1200 lines of code in wwsympa.fcgi

	Changes regarding SOAP session management :
		* SOAP session now uses the session DB table
		* session_id can be validated, checked, used in authenticateAndRun()
		* sympa_soap_client.pl has been extended : new --session_id option, new supported service 
		  --service=getUserEmailByCookie

	No more store unknown bounces in OTHER directories. They are now kept in a bad/ subdirectory in the bounce spool.

	When subscribing to a list, the confirmation popup now shows up only if no custom attributes will be used; Otherwise, 
	this would require that the user confirm twice : first in the popup, then in the custom attributes form; Also adapted 
	the text displayed in the submission form to custom attributes.
	
	css modifications for different internet explorer versions compatibilities
	
	Notifications are now sent to users, for remind, add and del commands, only if the visibility is set to true for these 
	users. Notifications can now be sent to users included by external data sources, when they are added or removed from 
	user list.
	
	Recent versions of Oracle do support the AS clause
	
	Web interface:
	- Adding HTML comments in web templates to help users spotting which template is used for customizing purpose.
	- Alphabetical index of lists in lists action.
	- added contextual help links whenever appropriate
	- thread/chronological archive sorting is now a user session preference
	
	Use homogenous terminology for authentication. Also use one-time tickets for web signoff now
	
	[reported by Micah Anderson, Riseup] Micah reported problems with the use of $* instead of /m in the parser.pl module. 
	It was a good oportunity to remove the old parser code that was used by the task_manager only. The task_manager now 
	uses the TT2 parser. It forces us to change the task template format for structured variables : [x->y] should now
	be written [x.y].
	
	[submitted by Peter Langhans, univ Zurich] in create_list form, bring back the form if a parameter is missing

	[proposed by Peter Langhans, univ Zurich] made units for list parameters translatable

	Add "toggle selection" button in list of closed lists

	Now raising an error if alias_manager failed to install new aliases

	[#713] Now notifying new list owners/moderator as they are added to the list configuration.

	[#534] added more informations to the reviewbouncing page (bounce total, first bounce and last bounce date). 
	Now printing "no score" when the bounce score could not be computed

	Show custom attributes as cells in the list members html table. Now it can be copy&paste in openoffice or excel.

	SOAP server : Changes regarding SOAP session management :
	- SOAP session now uses the session DB table
	- session_id can be validated, checked, used in authenticateAndRun()
	- sympa_soap_client.pl has been extended : new --session_id option, new supported service --service=getUserEmailByCookie

	[Reported by L. Gentis, IUFM Lorraine]When updating a config file while the upgrade process, the "email" parameter 
	value of the "update" paragraph was set to 'listmaster'. However, this value was validated against a regexp for emails. 
	this produced an error log, as 'listmaster' is not a valid email address. Fixed by allowing 'listamster' and 'automatic'  
	strings in this regexp. 'automatic will be used to designate updates done by processes instead of users.

	Message moderation : 
	- Now message for moderation is not attached in the message sent to the moderator if tagued as spam.

	src/confdef.pm: define longer period for default values of cleandelay_xx parameters

	src/lib/List.pm, /src/lib/confdef.pm: Now ttl and distribution_ttl list parameters
	take their defaults in default_ttl and default_distribution_ttl sympa.conf parameters.

	po/de.po, po-wwsympa/de.po: [Submitted by M. Warkus, univ. Marburg] Updated German translation.

*****	The directory in which all the default configuration files and directories is installed
*****	is now "default", under the root installation directory. In the previous release, it was
*****	share/sympa/default. You should remove this directory now to avoid confusion.

*****	New configure option: '--enable-fhs'. Sympa supports two kinds of files hierarchies. 
*****	The historical one, where by default all is gathered in the Sympa directry, and also the FHS 
*****	recommended hierarchy. Now if the '--enable-fhs' configure option is set, Sympa is installed 
*****	according to the FHS. Otherwise, it is installed using the historical paths.

	sympa.spec.in: [proposed by Jose-Marcio Martins] no more check the OSYTE, check if functions file exists instead.
	
	[Suggested by G.Rousse] removed 'check-macro-version' Makefile target to avoid the "*** warning: gettext
	infrastructure mismatch: using a Makefile.in.in from gettext version 0.17 but the autoconf macros are from
	gettext version @GETTEXT_MACRO_VERSION@" error. The check can be safely removed because very few macros are used

***** [#6190][Submitted by P.Crandall, univ Chicago] custom inputs, set in create_list, are now clearly prefixed
*****  in the create_list_request.tt2 HTML form. Prefix is 'custom_input.'

	src/lib/Makefile.am: AuthCAS module used to be distributed with Sympa. Since Sympa 6,
	it is a standalone CPAN module. The module still has the same name, therefore old installed
	versions of the module need to be removed

	po/de.po: [Submitted by M. Warkus, univ. Marburg] Updated German translation.

	src/lib/CAS.pm: Use a standard AuthCAS module instead of CAS.pm

	check_perl_modules.pl, src/sympa_wizard.pl.in:  check_perl_modules.pl now replaced with sympa_wizard.pl --check

	src/lib/Archive.pm, src/lib/Message.pm, src/lib/PlainDigest.pm, src/lib/mail.pm, src/lib/tools.pm, src/sympa_wizard.pl.in,
	 wwsympa/wwsympa.fcgi.in: Changes to the cpan installation process :
		 - Mail::Internet and MIME::Lite modules not directly required
		 - fix calls to install_module()
		 - added informations about prerequisites
		 - generalized the 'usage' entry for each module
		 - added an introduction to warn the user about the length/nature of the process

***** configure.ac: default value for localstatedir changes from $prefix/var to /var.
***** This change should make upgrade easier for sympa 5.x and previous

***** The expl directory has been renamed "list_data". This name better reflects the actual directory content.
***** If you are upgrading from a previous version, you SHOULD:
*****    1- rename you "/home/sympa/expl" directory to "/home/sympa/list_data" to reflect this change.
*****    2- set the "home" sympa.conf parameter to "/home/sympa/list_data".

	Makefile.am, NEWS, configure.ac:
	- Improving the last install message to help people know what command is required to have a running Sympa.
	- Restoring usage of list_data instead of expl. Updating the NEWS file to reflect this change.
	- Restoring the localedir definition in non FHS context to avoid i18n directories to be scattered in the root directory.

	src/etc/create_list_templates/discussion_list/comment.tt2, src/etc/create_list_templates/hotline/comment.tt2,
	src/etc/create_list_templates/html-news-letter/comment.tt2,src/etc/create_list_templates/news-letter/comment.tt2,
	src/etc/create_list_templates/private_working_group/comment.tt2, src/etc/create_list_templates/public_web_forum/comment.tt2,
	web_tt2/create_list_request.tt2: 
	[Submitted by M. Warkus, univ. Marburg] In the list creation form, suppress the display of the files name
	without a comment.tt2. Get also rid of useless <dl/> tags. The whole page is now translatable.

	web_tt2/css.tt2, web_tt2/javascript.tt2, web_tt2/main.tt2, web_tt2/notice.tt2: When notifying a successful
	action in the web interface, the full interface was unusable before a user clicked a validation button.
	Now, the notification doesn't prevent users from clicking other links or button in the interface.
	It is also smaller, though visible.

 Bug fixes:

       Unsorted:
       - When storing subscription requests, Sympa ignored subscription request if an user had already asked for a subscription, 
	 event if the new request was for another list. Fixed by checking the list name before searching previous subscription 
	 requests for the user.
       - [#3953] Lock.pm imports some constants from Fnctl module and used to redefine them. it resulted in warnings while 
	 running wwsympa.fcgi : "Prototype mismatch: sub Lock::LOCK_SH () vs none at /usr/share/sympa/lib/Lock.pm line 38. 
	 Constant subroutine LOCK_SH redefined at /usr/share/sympa/lib/Lock.pm line 38.". Removed duplicate definitions.
       - [#3990][Submitted by A. Berstein, electricembers.net] The quiet option had been deactivated from the "reject" mail 
         command.

	Bounce management :
	- When a bounce file could not be created, nothing was done, so at the next bounced.pl iteration, the faulty
	  report was still present. In such a case, the bounce report is now moved to bad.
	- [reported by H.Rousseau]: bounced.pl would fail to create files in OTHER/ if From contained incorrect chars. The 
	  bounced.pl process would loop on these files.
	  Now such bounce files are moved to the bad/ subdirectory.

	Init.d script:
	- Sympa start and stop script used the "status" command for system whose OSTYPE was 'linux-gnu'. These systems don't 
	  seem to have such a command.
	- Error in the status check for plain gnu-linux stystems.
	- [Submitted by P. Brown, univ.Southern California] init script sympa was broken for Solaris. It used some syntaxes not 
	  supported by this OS' shell language.

	Install process : 
	- [#3898][Submitted by M. Keisler, mitsein.net] Fix: When checking perl version, Sympa was using human readable 
	  version notation (5.8.8 for example) instead of the format returned by $] (5.008008 for example).
	- [#4453][reported by Chris Hastie] Added dependencies for HTML::TreeBuilder and HTML::FormatText CPAN modules

        Internationalization :
	- [#3919][reported by M.Denarek] Error "missing locale parameter" would happen whenever a notification is sent to the 
	  listmaster before the current language et set. Now using the default language when set. Also initialized the default 
	  language with 'en'.
	- [submitted by A.de Bignicourt, UREC] : fixed a charset problem with custom attributes

	LDAP:
	- [Reported by F. Perrichon, univ. Lille 2 and C. Zimmer, univ. Nice Sophia Antipolis] LDAP 2 level queries failed as soon 
	  as one of the queries failed during the second passe. Sympa now just issues a warning in the logs, specifying that a 
	  part of the second passe was not successful.
	- [Submitted by O. Menkens, Fraunhofer IAIS] Wrong error handling of LDAP searches caused Sympa to be unable to sychronize 
	  sources. Some attributes in the LDAP search were not correctly passed to the function.

	List configuration :
	- [#3229][#3237][#3518][Reported by T. Berry, NASA and D. Lalot, univ. Aix-Marseille] Lock failed when two processes 
	  were reading the same file, then one of them switched to write mode. It could then modify the file while the other
	  process was reading, leading to uncomplete informations gathered from reading. Fixed by changing behaviour: Now if 
	  a process wants to switch to or from write mode, it first release the file lock at the filesystem level, then tries 
	  to put a new one. this way, switching to write mode is controlled by the filesystem.
	- [#3713][Reported by A. Bernstein, evil-wire.org] Call to functions in the Storage CPAN module could lead to Sympa
	  processes dying because these functions could issue "croak" message. Fixed by enclosing these call into eval{} blocks.
	- [#3596] "spam_protection" list parameter was not used. Just the robot parameter value.
	- The anti-XSS mecanism HTML-escape outgoing parameters before web pages are parsed. This leads to quotes '"' replaced 
	  with &quot; while editing list parameters. This could break SQL queries for example. The fix consists in unescaping 
	  HTML characters in edit_list function.
	- When notifying the listamaster that an owner had changed her/his mail address, the message was croped. Only on affected 
	  list name was displayed instead of the full list. this was due to a bad parameter sending to the tt2 engine and to a bad 
	  syntax in TT2 FOREACH directive.
	- When removing the last data source by manual edition of the config file, the task manager didn't do the last 
	  synchronization needed to remove the last included subscribers. Fixed by checking if a data source still exist after 
	  each synchronization (instead of before).
	- [Reported by V. Mathieu, univ. Nancy 2] When deleting the last data source, the subscribers list was not correctly 
	  updated. Fixed by restoring a faulty test in wwsympa.fcgi.
    	- It was possible to manually remove all the list owners. This is now impossible by taking into account the minimal 
	  cardionality of complex list parameters.

	List creation :
	- create_list notification failed if listname contained uppercased chars
	- When a list was created, Sympa failed to display the liste activation page to listmaster if an info file didn't exist 
	  for this list. Fixed by testing the existence of this file, and, if it isn't found, displaying an informative message 
	  instead.

	Message moderation :
	- [#3790][Reported by R. Tassoni, National Library of Australia and T. Danel] When displaying a message to moderate 
	  in the web interface, if a document was attached to the message, the link to display the message lead to empty
	  documents. This was because we didn't take into account the fact that MHonArc put the file in a subdirectory.
	  Fixed by changing the kind of ergument file passed from scalar to vector.

	MIME : 
	- [#3702][Reported by A. Bernstein, electricembers.net] Some malformed headers caused Sympa to crash by calling a 
	  method on an undefined MIME::Entity::head object. Fixed by testing the definition of this object before calling 
	  the method.

	RDBMS support :
	- [M.Redinger] reported problems with field names upper cased with Oracle. Now forcing lower cased field names.
	- [Submitted by B.C. Aasgaard, Univ. Oslo] Fix several errors int Postgres database definition and usage in Sympa 6.
	- [Reported by M. Jozsef, Budapest University of Technology and Economics] When fetching queries result into a hash, the 
	  case of each key string was unsure, as some RDMS could return higher cased field name, for example. This led to 
	  apparently empty queries result when trying to acces a lower case field value that had been returned with a higher case 
	  name. Fixed by systematically lowercasing the field name when fetching results in a hash.
   	- [Submited by Ryan Fox] Patch to allow informix external data source.
	- [submitted by Peter Langhans, univ Zurich] fixed oracl-related issues ($parameter longer than 100 chars would make 
	  errors and "date" is a reserved keyword with Oracle)

	Security:
	- [reported by T. Retout] SQL injection threat removed by using place holders instead of direct sprint in a query.
  	- [Submitted by N. Bertrand, univ.  Minnesota] Basic logs in debug don't issue the password  unencrypted in the logs for 
	  function Auth::ldap_authentication. This way, this password won't be sent unencrypted to a possible syslog server.
	- [#4439] [#4440] [reported by O.Berger] security vulnerability which use a file in /tmp.
	- [#4430] store temporary files in Sympa's own tmp directory instead of /tmp to prevent symlink attacks

	Shared web documents :
	- [#1809][Reported by P. von der Hagen, univ. Karlsruhe] Files in the shared directory with regexp special characters 
	  could not be renamed. Fixed by using "\Q" escape signal at the beginning of the regexp (s/\Q$strtofind/strtosubst/).
	- [Submitted by H. Moa] When accessing an rss-feed for the shared files of a list upgraded from 5.2b, wwsympa entered a 
	  tight-loop, load went up to 100%, the webfrontend failed making the webserver reply with 500 and a single-processor 
	  system had to be rebooted. The list in question had no shared files. Fixed by checking that we don't use double slashes 
	  in the path to the shared directory.

	S/MIME : 
	- [Submitted by W. Werner, Fraunhofer-Institut SIT] Message signature verification didn't work if user used
	  different certificate for signing and encrypting AND didn't send both in each message, like Kmail does.
	- [Submitted by W. Werner, Fraunhofer-Institut SIT] The path that Sympa used to look for encryption keys had
	  '.enc' instead of a '@enc' in the file name.

	SOAP server:
	- [reported by S. Bilbeau, univ. Rennes 1] For trusted applications, when declaring an application in
	  trusted_applicaitons.conf, if the app name contained a higher case character, the application was not found, because 
	  Sympa compared the app name to its lower-cased version. Fixed by comparing two lower case strings, thus making 
	  the app name completely case insensitive for Sympa.


 	Web archive:
	- Fixing a problem in custom archiver : now the custom archiver MUSt accept two parameters : list and filename. Both 
	  parameters are filled by archived.pl at execution time. wwsympa.conf must contain the absolute path to the custom 
	  archiver script if admins to use this feature.
	- [Reported by F. Guilleux, CRU] Searching for a string containing some special characters provoked various errors. 
	  Fixed by escaping characters at the moment we use the search engine and not just when parising the characters.
	- [Reported by M. Kretchner, INRIA] It was impossible to remove a message from web archvives or to rebuild them. 
	  this was due to a regexp to prevent archived.pl from using dot-starting files added by some Linux distribution
	  (as Gentoo). Fixed by extending the regexp.

	Web authentication :
	- Login banner was shown even though no user_table entry was listed in auth.conf
	- [Reported by M. Gorecka-Wolniewicz, Nicolaus Copernicus univ., Torun] In some cases, CAS logout
	  didn't work, due to a value of "0" trnaformed into an empty string in the session cookie. Fixed by upgrading CGI version.
	- [#3947][Reported by S. costard Univ. Haute Bretagne] In the case of CAS authentication, a CAS ticket was requested 
	  for any request in the web interface. Fixed by ensuring that the user email is attached to the session.
	- Fix web pages in order to give appropriate messages when requesting first password or password renewal. 
	- Fix incorrect password storage when crating a new user (add_user_db did not use password finger print as 
	  update_user_db does)
	- [#4543] When multiple "ldap" entries were defined in the auth.conf file, only the first one was queried.
	  Also fixed a bug with the default scope being "base", now "sub".

	Web interface:
	- [Reported by M.P. Laisne, Rennes Academy] email change through the user preferences in the web interface was our of 
	  order. This was due to a bad initialization of old and new email parameters. Fixed by using values associated to the 
	  ticket.
	- [Reported by A. Stephens, Bristol University] A [% list %] TT2 var was trailing after e return directive in javascript.
	- [Reported by F. Guilleux] the W3C  gives recommendations for the use of GET and POST: 
	  http://www.w3.org/2001/tag/doc/whenToUseGet.html#checklist. Sympa was not fully compliant to these recommendations, 
	  leading for example to possible unwanted list deletion by administrators using prefetching tools. Fixed by replacing 
	  all the threatening GET requests by POST requests.
	- When using the multiple add form, it was difficult to create a list by copy / paste, because a javascript erased any 
	  data in the textarea on click event. Fixed by modifying said javascript.
	- [Submitted by M. Keisler, mitsein.net] Sympa refused to save topics which contained dashes in their name, due to an 
	  excessively selective regexp. Consequently, it was showing lists with such topics as topicsless. Fixed by accepting 
	  dashes in their regexp. Topics can now contain any alphanumeric, plus '-' and '_'. That should be enough for most needs.
	- DB logs : 'logs_expiration_period' sympa.conf parameter was not loaded. As a result DB logs were expired every day.
	  Also added an error message if two virtual hosts use the same URL.

	Web list config edition form : 
	- default value for parameters like owner/visibility are now compliant with the default value defined in %List::pinfo.
	- is the edit_list context, some unedited parameters were shown as edited. This has been fixed.
	
	Web template edition : 
	- [Reported by J.M. Beuken, univ. cat. Louvain] Fix: When copying a template through the web 
	  interface, HTML was not unescaped before writing the file. c onsequently, the file used to reload the page for 
	  template edition had escaped HTML. for critical files such as main.tt2 or title.tt2, this caused the web page diaply 
	  to choke on tt2 parse errors.
	- Copy_template failed when multiple directories had to be created (mail_tt2/ll_CC for example). Now calling mkdir_all() 
	  from tools::mk_parent_dir(). Also fixed a typo regarding authz errors handling


6.0b.4		23 September 2009

  Bug fixes:

	src/lib/Bulk.pm: [Reported by M. Waltz, univ. univ. of the Pacific] When the verp value
	was not defined, it resulted in the value used when storing a packet into database to be
	an empty value. PostgreSQL refuses to store an integer with an empty value. Fixed by
	forcing the value of the VERP field to '0' when it is given undefined to the Bulk::store function.

	wwsympa/wwsympa.fcgi.in: When a user already connected on the web interface used a
	one time ticket based on another address than the one she was connected with, the
	identity was not changed in the session. It lead to the impossibility to actually
	change its user email address. Now the session email is defined using the email of
	the one time ticket, whatever was previously set in the current session.

	wwsympa/wwsympa.fcgi.in: [Reported by S. Lorenz, univ. Karlsruhe] If an owner or editor
	of a list was registered with one ore more large capitals in her address, the change_email
	function did not change the address for that list. Fixed by lowercasing the addresses.
	when comparing them.

	src/lib/Bulk.pm: [Submitted by M. Waltz, univ. univ. of the Pacific] The reception_date_bulkmailer
	field's value was set to an integer value when storing a packet, htough it is an integer field.
	This led PostGReSQL to refuse to sotre the packets. Fixed by restricting thi value to its integer part.

	wwsympa/wwsympa.fcgi.in: [Reported by M. Warkus, univ. Marburg] In the mulitple add form, if a a usbscriber address was preceded
	by empty spaces, it was ignored. Fixed by ignoring leading white spaces in that form.

	src/lib/Scenario.pm: [Reported by M. Warkus, univ. Marburg] In the "match" scenario condition,
	if the regexp was empty, the condition returuned true. So if the regexp contained a list variable
	that was not set for that list, the condition returned true. Logically, norhing matches an empty
	regexp, so if the rexep is empty (not white space, really empty) then the condition now return false.

	src/etc/Makefile.am: [Reported by M. Walts, univ. of the Pacific][solution by G. Rousse, INRIA] Default scenarios were
	not installed on Solaris 10 x64/x86, because the regular expression used to do it in the Makefile
	used the "+" sign which is not available in POSIX. replaced it by "*" fixed the problem.

	mail_tt2/listmaster_notification.tt2, src/lib/List.pm: [Reported by P. Maes, univ. Louvain] When using
	several user data sources, if one source failed the whole synchronization aborted. Now Sympa keeps one
	synchronizing all the data sources, and a mail is sent to the listmaster, in which all the sources for
	which an error was encountered are listed. no error is diplayed to the list owner.

	wwsympa/wwsympa.fcgi.in: [#6438][Reported by M. Warkus, univ. Marburg]When the list homepage of a list
	was empty, displaying the info in lieu of it resulted in displaying a text without any linebreaks, as
	they have no meaning in HTML. fixed by replacing linebreaks with <br/> tags when this happens.

6.0b.3		14 September 2009

  Bug fixes:

	src/lib/tools.pm: [Reported by M.Warkus] remove_dir() subroutine (used to remove web archives of closed lists) did expect
	the path to include a minimum of 4 slashes '/'. This limitation was introduced in revision 2108.
	Removed this limitation.

	src/lib/confdef.pm: http_host was not set by default in syma.conf, making the sympa wizard to fail starting.

	src/lib/tools.pm: [#6380][Reported by M.Warkus, Philipps-Univ. Marburg] Added a line break to written PID files.
	Without the linebreak, the init script failed to check process status on OS without /etc/init.d/functions

	src/lib/Bulk.pm, src/lib/List.pm: [bug] Missing "use WebAgent" directive since recent reorganization of code (revision 5939).
	Error: Sympa.pl would die while running List::_include_users_remote_file() with error
	"Can't locate object method "new" via package "WebAgent" at /home/sympa/bin/List.pm line 7505."

	Makefile.am: [Submitted by M.Deranek] On a multi core system, installdir & installconfig targets can run in parallel.
	Added a dependency between these targets.
	
	src/sympa_wizard.pl.in: Can't do $module->require() since we no more require the UNIVERSAl::require module.
	Replaced with eval "require $module". Error message : Can't locate object method "require" via package 
	"XX" at /home/sympa/bin/sympa_wizard.pl line 515

	src/sympa_wizard.pl.in: Installed MHonArc version was not properly detected

	soap/sympa_soap_client.pl.in: Fixed a typo in the sympa_soap_client.pl
	command line tool that prevented the service parameters to be used.

	wwsympa/Auth.pm: [Submitted by M. Warkus, univ. Marburg] When a user logged in, using LDAP,
	by providing an email address, if this email was not the first one in the LDAP email attribute,
	then the uiser was not logged with the address she provided but with the default address found
	in the LDAP directory. Now, if an email is provided and the login is successful ,the user is
	logged in with the email she provided.

	wwsympa/wwsympa.fcgi.in: return to the user target page after authentication even if using shibboleth.

	src/lib/Scenario.pm: [Submitted by P. Maes, univ. Louvain] On some servers, the 'is_bcc'
	condition failed event though the message sent was not a BCC. Fixed by moving the code
	setting the BCC state to another place in the module.

	Makefile.am, configure.ac: [Submitted by G. rousse, INRIA]
		- Make sure that directories exist before trying to copy files into them
		- Copy i18n catalogues into standard directories instead of dedicated location
		- Remove modification of $datadir. Replaced by defaultdir redefinition.
		- gives explicit ownership of pid dir to Sympa by adding the "sympa" subdirectory.

	soap/sympasoap.pm: [#6400][Submitted by A. Bendzsak] There was a typo in sympasoap.pm making
	it use authorization.tt2 instead of authorization_reject.tt2.

	src/lib/confdef.pm: [#6425][Reported by S. Rijnhart, milieudefensie.nl] The spool directories
	not often used were automatically deleted because CleanSpool was sometimes called on the spool
	root directory instead of one the actual spools.This was due to the automatic spool being
	initialized as the spool root directory. Therefore, the sympa.pl automatic cleaning was called
	on the root directory and all its too old subdirectories were deleted.
	Fixed by giving its right value to this spool (and to the digest spool too, by the way).


6.0b.2		31 July 2009

 Bug fixes:

	src/sympa_wizard.pl.in: [Reported by P. Maes, univ. Louvain] Net::Netmask CPAN module
	was not checked by the Sympa wizard, though it is required.

	d_install_shared.tt2, mail_tt2/moderate.tt2, mail_tt2/modindex.tt2,
	mail_tt2/user_notification.tt2, mail_tt2/welcome.tt2, po/fr.pomail_tt2/moderate.tt2:
	[Submitted by P. Maes, univ. Louvain] The one time ticket URL was included in the
	internationalization message. It had no sense, as an URL won't be translated, and any
	change in the layout (such as putting the URL in another line) would break the translation
	key. Fixed by putting the URL out of the i18n string.

	src/etc/script/create_db.mysql: [Submitted by D. Ayre, univ. E. Carr, Vancouver]
	A missing comma in create_db.mysql made the creation script fail with an SQL error.

	src/lib/Conf.pm: [Reported by M. Warkus, univ. Marburg] When using the default robot,
	wwsympa.conf parameters were not taken into account, only the default values set
	in confdef.pm. The value could only be set in sympa.conf. This was due to the load_robots
	function which initialized the config with default values and sympa.conf values and then
	looked for customized values for virtual hosts only. Fixed by replacing default values by
	their equivalent in wwsympa.conf when found.
	
	wwsympa/wwsympa.fcgi.in: [Reported by Wen Si] Single value and single instance list
	parameters value could not be removed using the web interface. fixed by *not* going
	directly to the next parameter in do_edit_list when such a parameter is found empty.

	src/lib/Upgrade.pm: [Reported by A. Suter, crox.net] "0" character was not allowed in
	md5 encoded passwords. Changed regular expression to allow it.

	src/lib/Sympa/Constants.pm.in: [Reported by N. Matthies] Typo in ARCDIR constant declaration.

	src/task_manager.pl.in: [Reported by N. Matthies] The task manager failed to process the
	eval_bouncers and purge_orphan_bounces tasks because the corresponding functions did not
	return 1. It cause the manager to conclude there had been an error.

	Makefile.am, configure.ac: [Reported by N. Matthies] It looks like some "general_task_models"
	and "task_models" directory still installed in the etc directory. These directory are not used
	anymore. this was due to a command in Makefile.am installing  "non  writable directories".
	These directories were all isntalled in a separate part of the install process, using
	their normal names and location.

	src/lib/Conf.pm, src/lib/confdef.pm: Sympa doesn't complain anymore when an optional parameter
	is missing in robot.conf.

	src/lib/Bulk.pm: [Reported by Wen Si] A query in the Bulk.pm module was using MySQL-specific SQL orders.
	This caused Oracle (and probably Sybase too) to fail to lock packets in database.
	Fixed by splitting the query into a selection followed by an update,
	and by tweeking it on the base of the RDBMS used.

	src/etc/script/create_db.SQLite, src/lib/Upgrade.pm: [Submitted by M. deranek, slonko.net]
	SQLite support was broken in Sympa, due to syntax errors.

	src/etc/script/ldap_alias_manager.pl.in: --modulesdir-- placeholder was badly spelled in
	ldap_alias_manager.pl, cauing it not to be replaced by its real value at install time.

	src/sympa_wizard.pl.in: Removing useless warning when the 'file' parameter is not indicated
	in the confdef.pm parameter definition. This 'file' parameter is used only when we want to 
	write a value by default in the config file. Otherwise default value will be used.


6.0b.1		16 June 2009

	Changes introduced by this version are int the main 6.0 section.

5.4.3		05 May 2008

  Features:

	po/ja.po, po/web_help_ja.po: Introduction of the huge work in progress by Soji Ikeda to update the Japanese translation of the user interface and translate the online help in Japanese.

	po/ru.po: Updated Russian translation.

	 src/Commands.pm: [#3990][Submitted by A. Berstein, electricembers.net] The quiet option has been reactivated for the "reject" mail command.

  Bug fixes:

	wwsympa/archived.pl: [Reported by M. Kretchner, INRIA] It was impossible to remove a message from web archives or rebuild these archives. This was due to a regexp to prevent archived.pl from using dot-starting files added by some Linux distribution (as Gentoo). Fixed by extending the regexp.

	check_perl_modules.pl: [Reported by M. Gorecka-Wolniewicz, Nicolaus Copernicus univ., Torun] In some cases, CAS logout didn't work, due to a value of "0" transformed into an empty string in the session cookie. Fixed by upgrading CGI version.

	src/task_manager.pl, wwsympa/archived.pl, wwsympa/bounced.pl: [#3957][Reported by O. Berger, Telecom & Management SudParis] When launching Sympa daemons (other than sympa.pl) with an unknown option, the daemon was still launched instead of failing to launch.


5.4.2		14 April 2008

  Features:

	po/zh_CN.po: [Submitted by Li Xuejiang, Zhao Yongming, Yahoo!] Simplified Chinese is now fully translated.

  Changes:

	src/List.pm, src/Upgrade.pm: [Reported by L. Gentis, IUFM Lorraine]When updating a config file while the upgrade process, the "email" parameter value of the "update" paragraph was set to 'listmaster'. However, this value was validated against a regexp for emails. this produced an error log, as 'listmaster' is not a valid email address. Fixed by allowing 'listamster' and 'automatic' strings in this regexp. 'automatic will be used to designate updates done by processes instead of users.

  Bug fixes:

	wwsympa/wwsympa.fcgi: [#3947][Reported by S. costard Univ. Haute Bretagne] In the case of CAS authentication, a CAS ticket was requested for any request in the web interface. Fixed by ensuring that the user email is attached to the session.

	src/List.pm: [Submitted by W. Werner, Fraunhofer-Institut SIT] The path that Sympa used to look for encryption keys had '.enc' instead of a '@enc' in the file name.

	src/List.pm: [Submitted by W. Werner, Fraunhofer-Institut SIT] Message signature verification didn't work if user used different certificate for signing and encrypting AND didn't send both in each message, like Kmail does.

	src/Upgrade.pm, src/etc/script/create_db.SQLite: [#3915][Submitted by M. Deranek, slonko.net] SQLite support was broken for the session table.
   

5.4.1		01 April 2008

  Bug fixes:

	/wwsympa/wwsympa.fcgi: [Reported by J.M. Beuken, univ. cat. Louvain] When copying a template through the web interface, HTML was not unescaped before writing the file. c onsequently, the file used to reload the page for template edition had escaped HTML. for critical files such as main.tt2 or title.tt2, this caused the web page diaply to choke on tt2 parse errors.

  Changes:

	src/Lock.pm: Increasing log levels in low level functions of Lock.pm.

5.4		27 March 2008

   Bug fixes :

 	/wwsympa/wwsympa.fcgi: While processing a subscription request, first check if user is member of the list

 	/wwsympa/bounced.pl: When a bounce file could not be created, nothing was done, so at the next bounced.pl iteration, the faulty report was still present. In such a case, the bounce report is now moved to bad.

 	/wwsympa/wwsympa.fcgi: Anybody loading a page from the web archives would presented a HTTP header for the page expiration corresponding to the last time the archive file was modified (this was introduced to limit multiple harvesting of hte same page by web crawlers). The drawback was that, when browsing archives, all the page is not staitc, just the part related to archives. This posed problems for session management. Fixed by testing if a user is a crawler prior to define the expiration header.

 	/wwsympa/wwsympa.fcgi: [#3790][Reported by R. Tassoni, National Library of Australia and T. Danel] When displaying a message to moderate in the web interface, if a document was attached to the message, the link to display the message lead to empty documents. This was because we didn't take into account the fact that MHonArc put the file in a subdirectory. Fixed by changing the kind of ergument file passed from scalar to vector.

	src/etc/scenari/access_web_archive.intranet, src/etc/scenari/review.intranet, src/etc/scenari/visibility.intranet: [#3744] [remote_addr] variable might not be available for a scenario. [env->remote_addr] should be used instead

	wwsympa/wwsympa.fcgi: [#1809][Reported by P. von der Hagen, univ. Karlsruhe] Files in the shared directory with regexp special characters could not be renamed. Fixed by using "\Q" escape signal at the beginning of the regexp (s/\Q$strtofind/strtosubst/).

	src/Lock.pm: [#3229][#3237][#3518][Reported by T. Berry, NASA and D. Lalot, univ. Aix-Marseille] Lock failed when two processes were reading the same file, then one of them switched to write mode. It could then modify the file while the other process was reading, leading to uncomplete informations gathered from reading. Fixed by changing behaviour: Now if a process wants to switch to or from write mode, it first release the file lock at the filesystem level, then tries to put a new one. this way, switching to write mode is controlled by the filesystem.

	wwsympa/SympaSession.pm, wwsympa/wwsympa.fcgi: Bug related to session lost when RSS access comes from the same browser as web browser.


	src/PlainDigest.pm: [#3702][Reported by A. Bernstein, electricembers.net] Some malformed headers caused Sympa to crash by calling a method on an undefined MIME::Entity::head object. Fixed by testing the definition of this object before calling the method.

	src/List.pm: [#3713][Reported by A. Bernstein, electricembers.net] Call to functions in the Storage CPAN module could lead to Sympa processes dying because these functions could issue "croak" message. Fixed by enclosing these call into eval{} blocks.

	src/etc/script/create_db.Pg: [Reported by S. Kristoffersen, univ. Oslo] Missing "DROP TABLE session_table;" line in Pg creation script.  Field id_session in table session_table had the type "int4" which was too small for the size of session id. Fixed by changing type to int8.

	wwsympa/wwsympa.fcgi: [#3479] http://listes.mydomain.fr/sympa/dump/mylist/light returned an error if authentication was required and not satisfied. Now Sympa asks for authentification instead.

	wwsympa/wwsympa.fcgi: [#3596] "spam_protection" list parameter was not used. Just the robot parameter value.


   Changes:

	src/SQLSource.pm: [M.Redinger] Reported problems with field names upper cased with Oracle. Now forcing lower cased field names.

	src/Commands.pm, src/List.pm, src/report.pm: [#3636] When accepting multiple subscription requests, the list of pending subscription was not updated. This was due to two loops over email addresses one the one hand and over files on the other hand which were embedded in the wrong order, causing only the first file to be parsed. When an authorized subscription request is received, if the sender is subscribed already, the request is rejected.




5.4b.1		31 January 2008


   New features :

	
	[A.de Bignicourt, UREC]: Custom user attributes
	This feature allows the use of per list custom user attributes. Once defined by the list owner, a form will be presented to new list members on the subscription web page. These custom attributes are either optional or mandatory. The list owner will then see the provided user information while taking the subscription decision. Custom attributes can later be viewed from the review page and editsubscriber page. Custom attributes are stored in a dedicated field of the subscriber_table DB table, as XML data.

	wwsympa/wwsympa.fcgi: Anti-XSS protection. Sympa escapes any HTML that is not its generated by its templates. Some exceptions are the homepage file, which is filtered using  the perl module HTML::StripSripts.

	[#3235][requested by T.Berry, NASA] Allow list owners and editors to set a visibility option. If set to 'conceal', the person is not listed in the list panel. This new option also applies to owner_include and editor_include parameters.

	[requested by S.Carmody, Internet2] New 'remove_outgoing_headers' sympa.conf and list parameter. This parameter
	allows to define a list of SMTP header fields that should be removed before
	a message is distributed to list members. Thus it even makes it possible to
	remove the header fields that Sympa sets.
	The existing 'remove_headers' can now be set in a list config file.
	New 'ignore_x_no_archive_header_feature' sympa.conf parameter ; if set to
	'on', x-no-archive SMTP header field is ignored if found in an incoming
	message (sympa will archive the message).

	custom_vars. Users can define custom parameters in lists and use them in scenarios and mail templates.

	User pictures are now showed (if available) in the web archives. Pictures are showed to authenticated users only, to prevent web harvesters to get them.

	Online help is now internationalized. Use [%helploc%] tags anywhere in the code to create strings that will be located in web_help.po catalogue.

	[#3520][Submitted by C. Paul, evil-wire.org] New parameter in sympa.conf: "allow_subscribe_if_pending". Default value is "on". If set to "off", it is forbidden to add subscribers (through wwsympa) to a list whose status is different from "open".

	[#3357][P.Baumgart, British Telecom] LDAP alias manager is now LDAPS enabled and can be configured via a separate configuration file.
	We've also added a new 'alias_manager' sympa.conf parameter that allows to use such alternate mail aliases management scripts.

	Add custom button in main menu by config 
	https://www.sympa.org/wiki/manual/conf-parameters/part1#main_menu_custom_button

	[requested by B.Thale, Motorola] Keep the 'nomenu' attribute from page to page. Note that the nomenu attribute is lost whenever the user hits a button that uses POST. A better implementation would require the nomenu attribute to be attached to the user session.

	Five new languages supported in Sympa:
	Almost complete:
		- Korean: Mark Smith and Kang Tae-Hee (HP)
		- Simplified Chinese: Mark Smith and Xun Yan (HP)
		- Tradional Chinese: Mark Smith (HP)
	Still partial but on good way:
		- Russian: Chernysh
		- Catalan: Jordi Deu-Pons



   Changes :


	Character strings in po files are now sorted following the files they are found in and their order of apparition in the files.

	src/Scenario.pm: Now, in scenari using SMTP header fields, if a message exists, the value of the header is defaulted to an empty strings if it is empty or missing.

***** NOTE 1 :YOU MAY HAVE TO CHANGE YOUR WEB SERVER CONFIGURATION! We definitely disabled the setuid solution to run **wwsympa.fcgi**.
***** If the script you used in your web server configuration was wwsympa.fcgi (to whom you had attributed the "S" bit) you MUST change
***** your Apache configuration so that the script you use becomes wwsympa-wrapper.fcgi instead of wwsympa.fcgi.

***** NOTE 2 :YOU MUST CHANGE YOUR SOAP SERVER CONFIGURATION! We ALSO definitely disabled the setuid solution to run **sympa_soap_server.fcgi**.
***** If the script you used in your web server configuration was sympa_soap_server.fcgi (to whom you had attributed the "S" bit) you MUST change
***** your Apache configuration so that the script you use becomes sympa_soap_server-wrapper.fcgi instead of sympa_soap_server.fcgi.

	wwsympa/wwsympa.fcgi: Now wwsympa switches to maintenance mode if not run under the right user id. It quits the maintenace mode as soon as the user id is the good one.

	web_tt2/review.tt2: The Dump button is now proposed to list owners only

	src/List.pm, src/SQLSource.pm: [#3550] Change: Changed the SQLSource module to keep track of existing DB handler and their status. The new code allows to save connect() if $dbh already exists. It also allows to prevent multiple "DB connectoin" notifications to be sent to the listmaster ; only the first one is sent.

	mail_tt2/listmaster_notification.tt2, wwsympa/archived.pl, src/tools.pl: [#3388] If archived.pl can't create the list archive directory when archiving the first message, a notification is set to the listmaster, and the message is saved to spool/outgoing/bad.

	mail_tt2/listmaster_notification.tt2, wwsympa/bounced.pl: When a problem occurs while handling a bounce, the message is saved to a "spool/bounce/bad" directory.

	src/List.pm: [#3219][Charles Paul, evil-wire.org] Optimizations to List::get_list and List::get_which. List::get_lists() calls from List::get_which() now only load lists of interest, ie those that were determined by querying the subscriber_table DB table.

	src/List.pm: [#1174] default_user_options now applies to included list members. Sympa now ignore most user attributes coming from the original data source (date, update_date, reception, visibility). It make sence to adopt this behavior because these data were set in another list's context and should not be inherited in the new list.

	src/Conf.pm, web_tt2/menu.tt2, wwsympa/wwsympa.fcgi: [#3537] In web archives, sets a "Last-Modified" HTTP header to prevent frequent web-harvesting.

	[#2989][Reported by J.C. Delepine, univ. Picardie] If "apply" has the value "forced", then a single "reply" button is available, without any choice. The reply is sent to the addresses specified by "value". Otherwise, the user has three choices: reply to sender, to list or to both.

	Web mail composer is now able to send messages to several recipients.

	Genralization of "use strict vars"

	wwsympa/SympaSession.pm, wwsympa/wwsympa.fcgi: Reduce SQL queries for sessions. Don't exist if new session abort.
	Also renew the cookie (a random used as session_id) so it make session hijacking much more difficult.
	
	src/List.pm: [#3611][Reported by A. Berstein, electricembers.net] Adds a "Precedence:" field with value "bulk" in addition to the preexisting one with the value "list" to let MS exchange autoresponders ignore mails from Sympa.

	src/Task.pm: [Reported by M. Deranek, slonko.net] task_manager now ignores files whose name starts with a dot in the spool directory. this done to avoid errors in distributions (such as gentoo) which add doted (system) files in the file system.

	src/sympa.pl, src/List.pm: [#3253][Reported by P. Ferrari, riseup.net] When all editors and owners have set their reception mode to "nomail", a message is sent to all of them instead of generating an internal server error and sendinf a message to listmaster.

src/Commands.pm, src/List.pm, src/Scenario.pm, src/sympa.pl, src/tools.pl: [#3662][Submitted by J. Kirkland, westover.org] Message headers can now be used by any scenario. Admin can use, for example, match([msg_header-><HeaderName>],/someregexp/)       smtp      -> do_it in a scenario, for any message header.

	web_tt2/add_request.tt2: multiple_add : a JS to clear textarea on click

	src/List.pm: [Reported by C. desmoulins and J. Beretta, Orange] During an LDAP include, we didn't check if an email address was present several times, leading to a database field "include_sources_subscriber" containing the LDAP source id as many times as the address had been found. Fixed by preventing an address to be taken into account if it has been met already in the LDAP query result set.



   Bug fixes :


	src/Log.pm: Sympa no longer crashes when logs are not available.

	src/List.pm, /src/admin.pm: When a new Lock object is created, we didn't check that the object tcreation had succeeded. On one occasion, it made task-manager to crash. Now, if the object isn't defined after the "new"
invocation, the functions return undef.

	wwsympa/wwsympa.fcgi: [#3363][Reported by M. Deranek, slonko.net] The HTML document date was set to 1 jan 1970 instead of current date, causing some browser to be unable to unlog because they seem to compare cookie date to document date for expiration purpose.

	src/SQLSource.pm, /src/Upgrade.pm:[#3305][#3136][#3319] [Reported by G. Haverkamp and M. Deranek] Support of SQLite was broken.

	src/List.pm: [#3298][Reported by A. Ma and S. Ikeda] Fix: Sympa would add a "Re:" to each reply, leading to possibly very long chains of "Re:" in messages subjects.

	src/List.pm: [#3182][Reported by G. Bouteille, univ. Rennes 1 and J.H. Belpois, univ. Brest] Fix: When instantiating a family with list containing an include_sql_query paragraph, new parameters appeared in the paragraph (db_user, db_host, db_psswd). This was because we used to pass a ref to the hash containing list config values to functions which added values to this hash. We now pass a copy of this hash, temporary values are then never added to the hash finally saved.

	wwsympa/wwsympa.fcgi: [#3334, #3308][reported by C.Peck, wm.edu and D. Stefano] Dump of bouncers would only return the first 25 entries.
	src/tools.pl: [#3499][reported  by R.Morvan] Prevent sympa.pl to crash while processing malformed multipart command message.  Error message is "Can't call method "effective_type" on an undefined value".
	Now tools::as_singlepart() does not recurse with an undefined $msg parameter.

	wwsympa/wwsympa.fcgi: sympa was not able to create missing picture directory in a recursive way

	src/Log.pm: [#3137][Reported by M. Walther, Sun] Error in SQL request for web logs visualization. "GROUP BY" was used instead of "ORDER BY".
	
	web_tt2/rss.tt2: [#2959] [proposed by  Luoh Ren-Shan] escape sensible chars in RSS title

	soap/SympaTransport.pm, src/task_manager.pl, wwsympa/wwsympa.fcgi: Some Sympa processes did not initialize the List.pm cache between 2 requests. It could lead to false responses from these processes that still used the cache in memory.

	web_tt2/menu.tt2, wwsympa/wwsympa.fcgi: [#3541] The code and web templates have been changed to still provide the list of topics, even though the default_home is set to 'lists'.

	wwsympa/wwsympa.fcgi: [#3466] Could no more change user's email from the preference page.

	wwsympa/bounced.pl: [Reported by M. Anderson, riseup.net] Sympa didn't support ARF format correctly. errors were thrown when Original-Rcpt-To field was missing, though this field is optional. We now separate two steps of control: the Feedback-Type field value control and the Original-Rcpt-To field value control.

	wwsympa/bounce-lib.pl: [Submitted by M. Quintero, North Central College, Naperville, IL] Bounces from Postfix were not always properly spotted due to a bad identification of the postfix bounce message. Fixed by extending the regexp to match a new kind of message.

	mail_tt2/listmaster_notification.tt2, src/List.pm: [#3272][Reported by M. Anderson, riseup.net] In some cases still to elucidate, the "verp_rate" parameter trailing percent sign disappears before being use. This would mak sympa crash. We now return undef if this parameter hasn't the right structure.

	web_tt2/main.tt2, wwsympa/wwsympa.fcgi: [#2222] RSS feeds for web archives and shared documents are only proposed if access to these contents is available and public. This is required because RSS does not provide authentication methods.

	wwsympa/wwsympa.fcgi: [#3397] while running change_email(), don't try to update the member in DB if new email address is already member of the list.

	src/Conf.pm, src/sympa.pl, task_manager.pl, tools.pl: [#3234] Bounces in spool/bounce/OTHER/ were never cleaned up. Cleaning is now intergrated into the "expire_bounce" task, and the existence duration of such bounces is ruled by a new parameter : clean_delay_queueother.

	soap/sympasoap.pm, src/Commands.pm: [#1287] ADD commands are now rejected if user is already member. This will prevent multiple welcome messages to be sent.

	src/Family.pm: [Reported by D. Lalot, univ. Aix-Marseille] Opening XML files when instantiating families would make Sympa crash under Debian Etch. Fixed by switching "<:utf8" opening mode to "<:raw".

	src/Family.pm, src/List.pm: [#3528][Reported by D. Lalot, univ. Aix-Marseille] A list created by family instantiation without "config_changes" file in its directory would be set to status "error_config". Now, if the file is missing we assume that no changes occur. We still set the list in status error_config if the file exists but can't be opened.
	**Same behaviour implemented with the file "param_constraint.conf".**

	mail_tt2/invite.tt2: [Reported by M. Bouissou] Invite message suggested to reply to the message to accept to subscribe to a list. This led to an answer with "unknown command" error. Fixed by removing this message and giving an answer address and an appropriate subject string for people who couldn't hit the "mailto" link.

	src/sympa.pl: [Reported by M Bouissou] Command "quit" was ignored in mail commands. This was due to the correction of bug fix in Rev 3548: "Commands starting with 'qui' would be skipped, including QUIET". Fixed by removing comments and changing the regexp to match lines containing 'quit', 'stop', 'end' or '-' ONLY.

	wwsympa/wwsympa.fcgi: [#3661][Reported by S. Kristofferesen, univ. Oslo] In-Reply-To header did not follow rfc2822 format: opening '<' and closing '>' were missing.

	src/tools.pl: [Reported by C. Andrews, Boston College] Ampersand character was forbidden in email addresses though it is authorized by the RFC 2822.

	web_tt2/copy_template.tt2: [#3032][Submitted by J. Kirkland] It was impossible to copy a template through wwsympa to a language-specific directory because the lang was no passe as argument to Sympa. Fixed by modifying the template.

	web_tt2/serveradmin.tt2: All the radio buttons in the form used by the "set_log_level" action didn't share the same control name, thus preventing the web client from expliting them as a set of buttons. This prevented the value from being correctly processed.

	src/Datasource.pm: In a review, data sources name were not displayed because they were searched by comparing a MD5 hash on their parameters to the value stored in the database. As for complex datasources, these description were stored in hash, the order of the parameters was not fixed, leadinf to different values of MD5 for the same data sources. Fixed by sorting the hashes according to the hash keys, storing the result into an array and computing the MD5 with the array.




5.4a.4		25 September 2007

   
   New features :

	New session management : introduction of http session in order to replace a lot of cookies, for better user interface and security.
	  -new table session_table
	  -new module SympaSession.pm
	  -new features
	  - from admin page set log level for the current session
	  - from admin page list active sessions
	  - from admin page change user email identity
	  -new task to purge old sessions from table (inactive delay to remove session is set by the sympa.conf parameter session_expiration_period (defaul 1 month)
	  -session start at first hit usually with an anonymous user. The session continue when the user logging.
	  -cookie lang replaced by a session parameter
	  -cookie sympa-user removed
	  -Crawler detection is controled by /etc/crawlers_detection.conf.

	src/Log.pm: Added "trace" log facility to facilitate development messages insertion, visualization and deletion.

   Changes :

	check_perl_modules.pl, src/tools.pl, src/tt2.pl, wwsympa/wwsympa.fcgi: XSS protection: Any output web parameter is filtered 
	to avoid creation of XSS vector. Change:Additionnaly, any HTML file put in the shared directory is filtered using StripScripts.
	Change:HTML::StripScripts::Parser CPAN module is now mandatory.

	src/Conf.pm: [requested by JM.Martins da Cruz] Added X-Sympa-To and X-Family-To header fields to those header that should be
	removed by Sympa for outgoing mails

	web_tt2/home.tt2: Moved the search list form to the top of the Sympa home page.

	Makefile.am, Makefile.in, configure, configure.in, src/sympa_wizard.pl, wwsympa/Makefile, wwsympa/wwslib.pm,
	wwsympa/wwsympa.fcgi: icons are now included in the sympa static content directory. Consequently, the
	"--with-iconsdir" configure option and the "icons_url" wwsympa.conf parameter are no longer used. The default path to
	icons is now {sympa home}/static_content/icons and the default icons URL is http://host/icons/.

	src/tools.pl: refined Simple XSS filter. Don't ding on simple "<" only, but on <script, <meta and <fdfds javascript:

	wwsympa/wwsympa.fcgi: Web archive search is now performed by default in the whole archive instead of just the current month.

	src/Upgrade.pm, src/etc/script/create_db.Pg, src/etc/script/create_db.mysql: added indexs on email
	column in both admin_table and subscriber_table. Also changed the order of column in CREATE INDEX directives.

	src/Conf.pm, wwsympa/SympaSession.pm: taskmanager remove anonymous sessions if older then anonymous_session_table Sympa
	conf parameter

	wwsympa/wwsympa.fcgi: [M.Massar, univ Kaiserslautern] : Sympa is now able to get the Email in SubjAltName. As I
	was not able to find the mentioned patch to mod_ssl to get SSL_CLIENT_S_EMAIL exported, I wrote another patch based on SSL_CLIENT_CERT 
	from "SSLOptions +ExportCertData". REAPPLY the patch that had been removed.

	src/Conf.pm: css_url default value is now static_content/css/current_robot. This make it possible to set a
	single Apache Alias directive for static_content, shared by all virtual hosts.

	src/List.pm: optimization to skip some code in List::load()

	src/sympa.pl: [suggested by T.Berry, NASA] Changed the process identifier in the logs from (message) to (distribute)

   Bug fixes :

	src/List.pm, wwsympa/wwsympa.fcgi: changes of scenario from the admin web interface did not seem to work because the
	'selected' attributes were cumulated in %Scenario::all_scenarios. Now only pass the required scenario attributes (name and web_title) 
	to the TT2 web parser.
	
	src/Scenario.pm: [#3306][Reported by C. Andrews, boston College] The List::verify resolution of the true test would be applied for
	all custom conditions that have "true", "any" or "all" in them. Fix: Checks that condiotn starts and ends with the serached condition name.

	soap/sympasoap.pm, src/admin.pm, src/sympa.pl, wwsympa/wwsympa.fcgi: info and config files were not properly encoded 
	when a list was created using the web or SOAP. fixed by adding the declaration of origin in create_list_old call
	and then testing this value to know how to handle encoding.

	wwsympa/Auth.pm: [#3183][] : Trusted application name check was case sensitive, xhreas it is not supposed to be the case.
	Fixed by lowercasing comparison in remote_app_check_password().

	src/Language.pm: [#3269][Submitted by J. Ãstman, Helsinki univ.of technology]: sympa would take the LANGUAGE environment
	variable as its default instead of its lang parameter value, because this is Gettext default behaviour.

	src/Conf.pm, src/Family.pm, src/List.pm, wwsympa/bounce-lib.pl: [#3271][Reported by M. Anderson, riseup.net] 
	"$/" value was changed in several places without using a proper "local" operator to prevent system-wide field seperator contamination.

	src/Conf.pm: robot-specific 'static_content_path' parameter was never used to build 'css_path' parameter value.

	wwsympa/archived.pl: [reported by Alaxa]: rebuild() subroutine did not include code to create index file if missing

	soap/sympasoap.pm: "use strict" into "use strict vars" to prevent "Can't use string xx as a subroutine ref while strict
	refs" error

	wwsympa/wwsympa.fcgi: [reported by C.Peck, wm.edu] dump of bouncers would only return the first 25 entries

	src/List.pm: [reported by Y.Blusseau]: include_remote_file feature was not supported to include owners or editors.

	src/List.pm: [reported by Y.Blusseau]: $include_file was altered before _load_include_admin_user_file() calls.

	wwsympa/wwsympa.fcgi: missing ',' in check_list_authz() call. The change_email action could therefore never succeed.

	wwsympa/bounce-lib.pl: [reported by R.Levo, J.Hopkins university]: some rfc1891 compliant bounces were not correctly parsed,
	whenever the "Status" line included the status code + additional comments. The regular expression has been extended.

	soap/sympasoap.pm: [reported by O.Berger, INT]: typo in List::store_susbscription_request() would make
	sympa_soap_server.fcgi die while receiving a subscription request with moderated subscription.
	The "use strict" pragma has been added and many other typos have been fixed.

	src/Upgrade.pm: [reported by C.Peck, William and Mary university]: Upgrade process could make subscribers
	unsubscribeable. The subscribed_subscriber DB field was first set to 1 but then turned into 0 (because of an old enum2int problem).
	Changed the order of the upgrade processes.

	src/Conf.pm: [A.Hicks, Persistent Objects]: css_url and css_path are not being set from the main config if they do not
	exist in the robot config as they are being set before the static_content_* checks

	wwsympa/wwsympa.fcgi: 'send_me' feature was broken because of an incorrect regexp on 'month' parameter

	src/Upgrade.pm: [reported by J.M.Martins de Cruz]: incorrect Language::SetLang() calls while migrating create_list_templates
	and families to UTF-8

	src/etc/script/create_db.Oracle: [reported by F.Lachapelle,Sophos]: incorrect index name

	src/admin.pm: [#3229][reported by T.Berry, NASA]: Sympa did not perform a lock before list config file was created/updated.
	This could leed to corrupted config files

	wwsympa/wwsympa.fcgi: no more use the buggy regexp $tools::regexp{'html-free'}. It would regexp any string
	containing '60' or '3c'

	po/check_locales.pl, src/Language.pm: [reported by JG.Pailloncy, O.Girard and JMM. da Cruz] : setlocale() failed on FreeBSD
	because locales syntax were not standard (ll_CC.ISO8859-N instead of ll_CC.ISO-8859-N). Now using utf-8 as encoding, thus solving
	the problem. Also changed the algorithm used by check_locales.pl to be the same as Language::SetLang()


5.4a.2		7 August 2007

   New features :

	src/List.pm: Added distribution_ttl parameter which will be used when an action should check if a sync_include is needed
	prior to be executed.

	src/List.pm: When sending a message, Sympa now checks whether the last include is older than ttl OR distribute_ttl if
	this one is defined. If it is, sychronization is done.

	soap/sympasoap.pm, src/Commands.pm, src/List.pm, wwsympa/wwsympa.fcgi: removes "sync_include" task when a synchronization 
	is triggered by another event than task processing.
	Review actions on list using includes trigger a user's list synchronization.

   Changes :

	src/List.pm, wwsympa/wwsympa.fcgi: added a new Robot package inside List.pm. Also optimized List::get_lists() to cache
	the results within a session and prevent multiple browsing of the expl/ directory

	soap/sympasoap.pm, src/Commands.pm, src/List.pm, src/Makefile,src/Scenario.pm, src/sympa.pl, web_tt2/d_control.tt2,
	web_tt2/edit_list_request.tt2, wwsympa/wwsympa.fcgi: new Scenario.pm module. The way autorization are loaded has changed :
	they are now stored in a central place, ie a single copy of a scenario is stored if 2 lists use it. This should make the sympa
	processes consume less memory when running lots of lists. The scenario are now reloaded whenever they change on disk, except
	for operations that require good performances (like the 'lists' command). Inclusion of third party scenarios is now performed at
	evaluation time (in request_action()) and not while loading the scenario as it used to be.

*****	user_data_source values of 'file' and 'database' are no more supported. A migration precedure is run during the upgrade process
*****	This change will allow to optimize the code where 'file' user_data_source still had to be supported

	check_perl_modules.pl: [reported by S.Hornburg] remove unuseful dependency for Crypt::OpenSSL::X50 perl module. It was
	introduced in revision 3754.

	soap/sympasoap.pm, src/List.pm, src/Upgrade.pm, src/etc/script/arc2webarc.pl, src/etc/script/mod2html.pl,
	src/etc/script/p12topem.pl, src/sympa.pl, src/task_manager.pl, wwsympa/archived.pl, wwsympa/bounced.pl, wwsympa/wwsympa.fcgi:
	Now set List::use_db in Upgrade::Probe_db() and List::check_db_connect() to prevent "Sympa not setup for DBI" errors.

	check_perl_modules.pl: Sympa requires Perl 5.8 (for encoding features)

	src/task_manager.pl: check the $end variable before processing each task, thus making a kill -TERM more quickly
	processed

	src/Log.pm, subst.pl: optimizations to save most calls to do_log()

	src/List.pm: optimizations to lower the List::new() calls and perform locks on list config files only if reloading is
	required

   Bug fixes :

	wwsympa/wwslib.pm: [#2931][A.GAVARA, INPL Nancy] CAS authentication would fail because http was used instead of https.
	Fixed get_my_url() to use HTTPS environment variable instead of SSL_PROTOCOL and SSL_PROTOCOL_VERSION.

	src/task_manager.pl: [#3142][submitted by Y. BLUSSEAU] A typo made the stop() command fail to remove tasks.

	soap/sympasoap.pm: [Reported by P. David, univ. Strasbourg] In some very rare occurences, the session identifier would be
	constituted of decimal numbers only AND start with at least one "0" (zero) character. In this case, this string was considered a
	number by sympasoap.pm and the zero removed, thus shortening - and invalidating - the id. This would prevent the user from being
	authorized to see pages in the wiki.

	soap/sympasoap.pm: Avoid potentially forged cookie from SOAP client.
	
	src/List.pm, src/mail.pm: use 'warning' log level instead of 'warn'

	src/Family.pm, src/admin.pm: config files generated by instantiate_family were not UTF-8 but ISO. Now opening files as
	UTF-8.

	soap/sympa_soap_client.pl, wwsympa/wwsympa.fcgi: sympa_soap_client.pl now takes into account the "--service" and
	"--service_parameter" arguments for "play_soap()" function.

	src/tools.pl, wwsympa/wwsympa.fcgi: [#2960][Reported by L. Ren-Shan] First attempt at XSS prevention. Now prevents such
	intrusions in the web interface.

	wwsympa/wwsympa.fcgi: [reported by Alessio] : a security problem would allow a user to directly access arctxt/* files or
	.mhonarc.db files. A %in_negative_regexp hash has been added to define forbidden expressions in parameters. XSS-related code has
	also been changed.


5.3.2		13 June 2007

   Bug fixes :

	/src/List.pm : logic for setting 'keep_trying' option to SQLSource::connect() was upside down. As a result, initial DB creation could not happen.

	/src/etc/mhonarc-ressources.tt2 : [#3126][Reported by E. Koblinger, uhulinux.hu] Removed "keepspace" option from MIME options to avoid inclusion of useless "&nbsp;" sequences.

	/web_tt2/home.tt2 : [reported by R.Touchais] No more refer to a URL on the front page


5.3		22 May 2007

   New features :

	/src/Conf.pm, /wwsympa/wwsympa.fcgi,/wwsympa/cookielib.pm : [proposed by P.Schober, Univ Vienna] added logout feature to generic_sso. This required adding a new sympa_sso_id HTTP cookie to keep track of which SSO was used to login. Also reorganized the cookielib subroutines.

   Changes :

	/web_tt2/login_menu.tt2, /web_tt2/loginbanner.tt2:  replaced the "magic authentication" with the SSO service name, defined in auth.conf.

	/src/List.pm: [#3097]: moved the code that remove SMTP header fields (defined by the remove_headers parameter) before the archiving code.

	/po/pt_BR.po: [submitted by Prof. P.E.M. Almeida] Updated brazilian translation.

	po/: Several improvment in translations. Main changes are found in Spanish, Italian and Occitan.

	/src/Upgrade.pm: During upgrade process, if an existing primary key is incomplete, it is completed.

	/src/Upgrade.pm: [requested by S.Amrani, Gendarmerie Nationale] Change: probe_db() would previously alter DB field format if different from the expected format. Now accept fields with a size larger than expected.

   Bug fixes :
	
	/check_perl_modules.pl : [#3107][E.Koblinger, uhulinux] DBI 1.48 is required by use of selectall_hashref()

	/src/List.pm, /src/Message.pm: [reported by T.Berry, NASA] Empty Subject field were replaced with 'Charset'. This seems to be a MIME::EncWords::decode_mimewords() bug. Also fixed problems with custom subject parsing that was still using the old
parser::parse_tpl().

	/src/bouncequeue.c, /src/familyqueue.c, /src/queue.c: [#2945][D.Jahnke-Zumbusch] queue, bouncequeue and familyqueue scripts were removing the first "From xx" line found even though it was not part of SMTP headers. This caused problems with Postif if the 'F' flag was not set in master.cf, because postfix would not add the expected "From xx" Header field to the delivered message.
	The code has been fixed to look for the "From xx" in the first line of the message only.

	/src/tt2.pl: [#3086 Submitted by S. Hornburg, linuxia.de] When Sympa failed to create a template object, the last system error was displayed instead of the last Template error.

	/wwsympa/wwsympa.fcgi: [reported by L.Sousa, univ. do Algarve] Change: don't print the list_menu if info scenario forbid access to list info.

	/src/Upgrade.pm: [Reported by T. Davis, Metaphor studios] Useless warnings regarding PRIMARY KEY and INDEX at upgrade no longer appear.

	/src/Upgrade.pm: [Reported by X. Moghrabi, Objectweb] Former indexes are removed if necessary to avoid double indexing of primary keys.

	/src/tools.pl: [#3075] file were renamed with a parasite '\'

	/src/List.pm: [Submitted by M. Gaudet, EHESS] Encoding problems when upgrading from versions of pre-all-UTF-8 era. config files were saved into UTF-8 without character conversion which messed list subjects and some admin values.

	/src/Upgrade.pm: [Reported by M. Gaudet, EHESS] Resolves encoding problems for lists' info files when upgrading from version 4.1.5 in lists where no 'filesystem_encoding' parameter was set.

	/src/List.pm: Definition of a default LDAP port (389) for include_ldap_xxx was leeding Sympa to use 389 port for LDAPS (instead of 636 port)

	/src/Upgrade.pm: [deb#418836][Reported by O. Berger, INT] Fix: SHOW FIELDS failed while upgrading. Now removing the dbname part in the tables() return value.

	/src/List.pm: [T.Berry, NASA] "Undefined subroutine &Task::list_tasks called at /usr/local/jpl/msg/list/sympa/bin/List.pm line 12333". The new version of List::purge() uses Task::list_tasks() subroutine but a "use Task" pragma is missing in List.pm.

	/src/List.pm: Error "Can't use an undefined value as an ARRAY reference" while processing digests. Fixed the parameter loading procedure to handle correctly defaults (structured parameter with no default in subentries)


5.3b.5		23 April 2007

   New features :

	src/etc/script/sympa: Startup script now works with Slackware distributions.

	src/LDAPSource.pm: [#934] [reported by A.Powers, DigiPen] added support for start_tls().

	src/Family.pm, src/sympa.pl: [submitted by S.Amrani, Gendarmerie Nationale] made the family instanciation process quiet 
	(required when run from a crontab). New sympa.pl options : --quiet and --close_unknown

	web_tt2/skinsedit.tt2: Added color_* parameters usage in the skin administration page.

   Changes :

	src/Conf.pm: [#724] max_size parameter can now be used in robot.conf

	src/List.pm: [requested by S.Amrani, Gend.Nationale] Specify the searched attribute 1.1 (the DN) in List::search()

	src/List.pm: [#2932] [reported by R.Gilbert, Univ Sheffield] Use listmaster as default in List::send_notify_to_owner(), in case no owner is defined.


   Bug fixes :

	po/Makefile, src/Language.pm: [reported by L.Garnier, CNRS] complete locale ID for Basque is eu_ES

	src/aliaswrapper.c, src/virtualwrapper.c: [reported by L.Garnier, CNRS] added missing include of stdlib.h

	src/etc/mhonarc-ressources.tt2, wwsympa/archived.pl: [#3013][submitted by P. Timmons, Ec. Polytechnique Montreal] : The button "toggle selection" 
	did not trigger its action and produced a javascript error instead. Plus added some pod documentation.

	web_tt2/css.tt2: [#2975]removed a '{' in excess at the end of file which would cause two javascript errors at each page loading 
	("Selector expected. Invalid rule set ignored." and "unexpected end of file while looking for closing } of an invalid rule set."). 
	Leaving IE proprietary "zoom" property. Must be useful in some way.

	wwsympa/wwsympa.fcgi: [#3012][submitted by P. Timmons, Ec. Polytechnique Montreal] Robot listmaster couldn't edit scenarios due to the $robot parameter not being called by is_listmaster() function in do_dump_scenario().

	wwsympa/archived.pl: archived.pl would die while processing a message for an unknown list. Error message : "Can't call method "get_list_id" on 
	unblessed reference at /home/sympa/bin/archived.pl line 526."

	soap/sympasoap.pm: [#1325][#2969] [submitted by *both* O. Duval and O. Berger (INT Evry)] topics parameter wasn't used while creating a list with SOAP.

	src/Language.pm, src/tools.pl, wwsympa/wwsympa.fcgi: wwsympa.fcgi would die when a ZIP archive was uploaded (d_unzip). 
	Added the missing parameter to &tools::qencode_hierarchy()

	src/tt2.pl: [#1464][submitted by S. Ikeda] [patch sympa-MAIN-20070103-escape_url.patch] Some MUAs aren't able to decode ``%40'' (escaped ``@'') 
	in e-mail address of mailto: URL, or take ``@'' in query component for a delimiter to separate URL from the rest.
	
	src/Log.pm: [#1222] [submitted by G.Donnini, Univ Milano] check DB connectivity in Log::db_log_del()

	src/List.pm, src/admin.pm, wwsympa/wwsympa.fcgi: [#2957] Stored Encode::from_to() return value (string length) instead 
	of string value in info file at list creation time.

	src/Log.pm: [#2930][Reported by T. Berry, Nasa] do_log sub don't apply Encode::from_to() function to reference variables anymore.

	wwsympa/wwsympa.fcgi: [reported by Univ. Rennes 1] Prevent problems with URLS containing '//'. It would break navigations that uses relative URLs. 

	src/Family.pm: [reported by T.Berry, Nasa] [fixed by S.Amrani, Gendarmerie nationale] automatic list creation failure was 
	incorrectly handled and message could be lost.
	
	src/Lock.pm: [#2930][reported by T.Berry, Nasa] sympa processes would print binary data to the TTY. 
	It was due to a File Handler variable that was logged. Also fixed a bug related to file unlocking.

	src/List.pm, src/Task.pm: [#2940] [reported by T.Berry, Nasa] remove list-related task when purging a closed list

	src/List.pm, wwsympa/wwsympa.fcgi: [#1075] Default values for parameter 'reply_to_header' are now correctly loaded.

	web_tt2/edit_list_request.tt2, wwsympa.fcgi: [#985]: Hide "update" button whenever no parameter can be edited in the current page

	[reported by R.Caldwelr, Franklin university] wwsympa::is_ldap_user() would not use provided bind_dn and bind_password.
	Change: New LDAPSource module to gather all LDAP-related code. Currently only connect() and disconnect() have been implemented.
	Change: removed obsolete export_list() functions (+related)


5.3b.4		13 March 2007

   New features :

	src/etc/script/: Makefile, mysql_alias_manager.pl: [Bea, Cartables.net] added an alias_manager that is MySQL enabled.

   Changes :

	src/admin.pm: Added sync_include after list creation/update (family context)

	src/: Family.pm, admin.pm: trigger a sync_include after list creation/update Also made list topics problems non blocking

   Bug fixes :

	mail_tt2/listmaster_notification.tt2, src/sympa.pl: sympa.pl processes dedicated to message distribution or automatic list
	creation would not remove their pid file properly

	src/Log.pm: increase entropy for logs table ID. It was required to prevent "duplicate entries" errors.

	src/Log.pm, web_tt2/viewlogs.tt2, wwsympa/wwsympa.fcgi: list owner could view db logs of other lists.  Changed the feature so
	that only the current list logs can be viewed. Also simplified the code. Fixed the resize feature. The sortby feature is still
	buggy

	wwsympa/wwsympa.fcgi: arcsearch would crash wwsympa process if provided a search expression with both invalid expression and
	\n, because tools::escape_regexp() does not apply on multi-line. Changed the allowed regexp for wwsympa incoming parameters to
	forbid \n in most of them.


5.3b.3		7 February 2007

   New features :

	STDERR of daemons is redirected to a file. If process crashes, next process started will detect the failure and send a notice to listmaster.

	src/Language.pm, wwsympa/wwsympa.fcgi: [reported by E.Beliveau] made the user lang available in the editsubscriber page

	check_perl_modules.pl, src/Conf.pm, src/Lock.pm: [ID 435] [patch provided by Moriwaka] added support for NFS locking,
	using File::NFSLock perl module. A new 'lock_method' sympa.conf parameter can be set to 'nfs'.

	web_tt2/modindex.tt2: [ID 444] [requested by A.Lund, Uninnett] added "toggle" button in moderation page

	po/xgettext.pl, src/tt2.pl, src/etc/mhonarc-ressources.tt2: [ID 1338][S.Ikeda] A new filter [%|locdt()%] is added
	for TT2 templates to format date/time according to language context.  It takes a format string to be gettext'ized as main
	argument, and an extra argument representing date/time.  MHonArc resource file was modified so that it may generate output
	including this filter spec as nessessity.

	  Note that this spec will be available for newly-updated archives. To apply this improvement to all past archives, it is nessessary
	  that all archives are rebuilt.

   Changes :

	po/ Translations updatfs from pootle.sympa.org

*****	If your RDBMS is MySQL, you need it to be at least version 4.1.
*****	src/Upgrade.pm: [ID 1500][S.Ikeda] converting mail templates to UTF8. The script has been integrated 
*****	into Upgrade.pm and has been extended to convert other configuration files

*****	mail_tt2/, src/mail.pm: all service messages are now UTF8.
*****	Also made the templates structure simpler.

	src/List.pm: trigger sync_include before distributing a message to a list, unless it was performed during the last 5 min.
	Fix: $self->{'last_sync'} was never loaded

*****	src/List.pm, wwsympa/wwsympa.fcgi: 'include' mode is now obsolete. 
*****	Now performing a mapping while to 'include2' while loading the parameter.

	wwsympa/wwsympa.fcgi: remove authentication request for do_tag_topic_by_sender and do_request_topic, autehntication is
	done because of the md5 key of the message.

	src/: List.pm, sympa.pl: New value possible for msg_topic_required to adpat it both for moderated list and unmoderated lists

	po/pl.po: [Lukasz Zygmanski] Updated Polish translations

	mail_tt2/moderate.tt2, src/List.pm, src/mail.pm: Renamed 'msg' parameter to 'msg_path' in moderate.tt2.  
	Take 'spool' parameter into account (for 'modindex' template) in the reformat_message() process

	src/: added "use strict" to tools.pl

	wwsympa/wwsympa.fcgi: [ID 106] after unsubscription, no more bring the user back to the list page. He might not be
	allowed to see the info page.

	po/ja.po: [S.Ikeda] Updated Japanese catalog

   Bug fixes :

	src/Log.pm: db_logs were expired too early (parameter expressed in days instead of months)

	web_tt2/error.tt2: [requested by C.Andrews, Boston College] Added an error message for list creation failure.  It is required when
	an existing listname has been used ; we cannot get the error diagnostic from admin::create_list_old() though

	wwsympa/Marc/Search.pm: wwsympa might die with error "Cannot decode string with wide characters".	
	Now opening archives as bytes (not utf8) to prevent decoding

	wwsympa/Marc/Search.pm: arcsearch_id would fail on some  messages.  
	Marc::Search expects mhonarc to add X-Subject data to generated HTML files. Some examples were found with X-Subject
	value split among 2 lines.  Marc::Search::search() is now able to parse split X-Subject entries.

	src/task_manager.pl, wwsympa/archived.pl, wwsympa/bounced.pl: debug mode would not work with task_manager.pl, archived.pl
	and bounced.pl

	src/List.pm: [reported by F.Lachapelle] sync_include tasks were created for all lists, including those with no external data
	sources The List::has_include_data_source() subroutine has been fixed to correctly check owner_include

	web_tt2/request_topic.tt2, wwsympa/wwsympa.fcgi: Internal error with message that can't be parsed solved in request_topic action.

	src/sympa.pl: incorrect var definition (msg_topic and moderation)

	src/tools.pl: escape_regexp would not work.  This would break arcsearch_id used in RSS context

	src/mail.pm: Some service messages (moderation, topics tagging and reminder) delegated by wwsympa to sympa.pl would have
	missing X-Sympa-From header field.  Now setting a default value for the return-path in mail.pm

	mail_tt2/remind.tt2: [reported by O.Lacroix] Fix type for transfert_encoding

	src/List.pm: [ID 117][reported by M.Bernard, univ St.Etienne] user initial passwords were not crypted when subscribed by
	list owners. Moved encrypting logic to lower layers.

	mail_tt2/Makefile: [requested by S.Hornburg] Debian packaging requires that symbolic links are not absolute links
	because of DESTDIR use.

	src/etc/mhonarc-ressources.tt2: [G.Youger, Univ Newcastle] archive template was inappropriate for email addresses that
	include an apostrophe (').

	src/List.pm: [S.Ikeda] [ID 1396] A bug relating this patch: ASCII-only subjects are unfolded then can become one long line.

	src/etc/mhonarc-ressources.tt2: [S.Ikeda] [ID 1393] added more translatable items to mhonarc-resources.tt2

	src/: List.pm, mail.pm, tt2.pl: [S.Ikeda] [ID 1396] Body or subject header were occationally empty.  Reproduced by: Sympa CVS
	HEAD with Encode 2.08.  Not reproduced by: Sympa CVS HEAD with Encode 2.12, 2.18.

	  - Body of service message is removed at all when its source contains non-UTF-8-compliant sequence.  - Subject body of
	  distributed message is removed when original subject contains  unencoded non-ASCII sequence.

	  It may be caused by a bug in Encode module, RT#8872:  http://rt.cpan.org/Public/Bug/Display.html?id=8872

	src/SQLSource.pm: set SQL client preference regarding character encoding to UTF8. Otherwise we can't determine how data
	got from SQL is encoded.

	src/List.pm: [J.Schmalenbach, Barrett] empty 'get_subscriber' when removing a list member



5.3b.1		29 November 2006

   New features :

	src/Ldap.pm: [requested by E.Beliveau] allow folded lines in ldap filters (using '\')

	src/List.pm, src/sympa.pl: new Sympa.pl option : sympa.pl --purge_list <list>@<robot>
	
	web_tt2/: [V.Paitrault, CRU] translated online user/admin help to English

	doc/sympa.tex.tpl, src/List.pm: [requested by S.Peterson] Extended available parameters for search filters

	src/etc/script/arc2webarc.pl: can use an input directory containing individual messages files

   Changes :
	
	po/fr.po: Updated French translations

	src/: sympa.pl, tools.pl: files in the msg/ spool were processed according to the file name (abbb before zbbb). 
	now use the date as the sort criteria

	po/: remove Chinese/Taiwan catalog that was out of date and could not be transformed to UTF-8

	po/, src/Language.pm: Updated translations from Rosetta ; added Russian and Bulgarian PO files

	mail_tt2/, soap/sympasoap.pm, src/Language.pm, src/List.pm, src/mail.pm, src/tt2.pl: 
	no more use encoding defined in PO files to determine charset for messages.  
	We now use the charsets defined in Language.pm instead.  We now use [% charset %] in mail_tt2 files and
	&Language::GetCharset() in the code These changes will make it easier to mode all PO files to UTF-8

	mail_tt2/, src/: [Soji Ikeda] changes have been made to switch from Perl Unicode to UTF-8: 
	  - read raw config files then to convert them to UTF-8.
	  - change Language::gettext()'s output from Unicode to UTF-8.
	  - remove Template::Directive::OUTPUT hack (see src/tt2.pl).
	  - disable PerlIO layer on wwsympa.fcgi.

	web_tt2/, po/en_US.po: revision from Jill Gemmill have been reported down to templates. en_US.po has been reset (with
	  sympa.pot)

	src/Upgrade.pm: regenerate all config.bin files while upgrading ; required for character encoding problems


   Bug fixes :

	src/Upgrade.pm: [reported by J.Schmalenbach] qualify send_notify_to_listmaster() call

	web_tt2/rss.tt2: RSS feed encoding was incorrect

	src/mail.pm: Incorrect handling of empty header fields, could result in duplicate header fields

	soap/sympa.wsdl: [BugID 1262][O.Duval] missing sections in Binding for add, del and closeList

	web_tt2/error.tt2, wwsympa/Auth.pm, wwsympa/wwsympa.fcgi: [BugID 285][reported by M.Verove, Atos Origin]
	no more allow password reminder if regexp doesn't match user email

	check_perl_modules.pl: inactivity_timeout was not set

	web_tt2/login_menu.tt2: [reported by R.Cadwell] "forgot password" and "first password" buttons were shown regardless of
 	auth.conf

	src/List.pm: [A.Zamboni, Univ Strasbourg] sort by subscriber name failed with Pg

	eb_tt2/edit_list_request.tt2: missing form input attribut 'multiple'. Because of this bug parameter digest and
	avalaible_user_option may habe been corrupted

	wwsympa/wwsympa.fcgi: arcsearch_id would fail if message-id contained '&' because mhonarc encodes it in HTML messages.

	src/, wwsympa/wwsympa.fcgi: [S.Ikeda] strftime() accepts/returns a string encoded by charset that is determined by
	current system locale. Therefore date strings needed to be decoded according to current charset.

	src/List.pm: print error message if include_remote_file failed

	soap/sympasoap.pm: fixed typo in authenticateAndRun()

	src/List.pm: load topics.conf using filesystem_encoding

	

5.3a.10		6 November 2006

   New features :

	src/etc/script/arc2webarc.pl: arc2webarc.pl can use an input directory containing individual messages files

	soap/: New SOAP method getUserEmailByCookie

	src/: Commands.pm, report.pm, sympa.pl: [requested by W.Howard]: original_msg is now available in msg reports

	[S.Amrani, Gend.Nationale] : Automatic list creation 
	This new feature allows to trigger list creation when a message is sent for the list. 
	The set of "possible" lists is defined by a generic mail alias and a list family. 
	New sympa.conf parameter include :
	  automatic_list_feature, automatic_list_creation,
	  automatic_list_removal,	    pidfile_creation,
	  queueautomatic, clean_delay_queueautomatic 
	A new familiqueue.c binary file is provided.  The list creation job is performed by a
	sympa.pl process that forks.	Check the documentation for more informations.


   Changes :

	src/List.pm: [requested by S.Peterson] Extended available parameters for search filters

	web_tt2/ : applied revisions from Jill Gemmill to templates

	src/Upgrade.pm: regenerate all config.bin files while
	  upgrading ; required for character encoding problems

	reported changes in en_US.po (updated by Jill Gemmil) to templates.  
	Work is half-done.

	[Soji Ikeda] : Sympa now uses new Perl modules MIME::Charset and MIME::EncWords to encode characters. 
	These modules are alternatives for MIME::Words with better handling of multibyte charsets.

	po/en_US.po: [J.B.Gemmill, Univ. Alabama at Birmingham] Revised version of English translations.

   Bug fixes :

	src/List.pm: print error message if include_remote_file failed

	[S.Ikeda] : strftime() accepts/returns a string encoded by charset that is determined by current system locale. 
	Therefore date strings needed to be decoded according to current charset.

	wwsympa/wwsympa.fcgi: arcsearch_id would fail if message-id contained '&' because mhonarc encodes it in HTML messages.

	src/List.pm: load topics.conf using filesystem_encoding

	[S.Ikeda] made some fixes to documentation and templates

	wwsympa/Marc/Search.pm: No more decode X-Subject from web  archives ; they are already decoded WWSympa.fcgi would die with
	the following error : "MIME::Words: unexpected case"

	src/: mail.pm, tt2.pl: [S.Ikeda] : type for suggest_encoding() subroutine ; better UTF-8 management with TT2.
	Patches: sympa-MAIN-20061021-mail_encoding_fix1.patch + sympa-MAIN-20061015-tt2_utf8.patch

	src/Language.pm: [reported by Soji Ikeda] Japanese was incorrectly encoded in the list of languages.  
	Also changed the way gettext() handles parameters to prevent unwanted modifications

	src/mail.pm: [reported by Soji Ikeda] : mail_file() subroutine incorrectly detecting folded header fields.

	mail_tt2/moderate.tt2: To header field now also Q-encoded

	src/Log.pm: do_log() would modify parameters by reference, now using an intermediate variable to preserve original
	parameters from being decoded

	mail_tt2/send_auth.tt2: [Reported by M.Larchet, Univ Nancy 2]: subject of confirmation message was localized

	src/sympa_wizard.pl: [BugID 1102][reported by R.Roessner] sympa_wizard.pl failed because of a typo

	src/List.pm, src/tools.pl, wwsympa/wwsympa.fcgi: could not edit message.header and message.footer from the admin web
	interface The tools::get_filename() sub did not return the right structure ; it should return an empty array if expected

	web_tt2/compose_mail.tt2, wwsympa/wwsympa.fcgi: [Reported by P.Farmer] topics tagging was not proposed from the "Post" page.

	q-encoding of shared documents filenames has been fixed :  - Encode::Guess now uses list lang  -
	prevent problems with Encode (words) ; now using lower layer subroutine



5.3a.9		6 October 2006

   New features :

	[S.Amrani,Gend.Nationale] Custom scenario conditions You can use a Perl package of your own to evaluate a custom scenario
	condition.  The scenario condition will look like this :
	  CustomCondition::my_custom_condition([sender],[list->name],[list->total]) smtp,smime,md5	 -> do_it

	Now bounced recognize Abuse Report Feedback forat (ARF). In order to use it, you just need to create a new
	alias to redirect message from ARF loop (mainly AOL) to bounced according to the documentation (section bounces)

	[S.Amrani, Gendarmerie Nationale] SQL named filters Listmasters can now define SQL search conditions in authorization
	scenarios such as :	"search(example.sql, [sender]) smtp,smime,md5    -> do_it" 
	Here is the example.sql named filter  :   
		sql_named_filter_query
		   db_type	  mysql
		   db_name	  people
		   db_host	  dbserver.rennes1.fr
		   db_user	  sympa   
		   db_passwd	  pw_sympa_mysqluser
		   statement	  SELECT count(*) as c FROM users WHERE mail=[sender] AND EmployeeType='PROFESSOR' AND department='mathematics'

	[A.Brard] Accessibility of the web interface has been enhanced :
	  - removed styles elements from within web templates
	  - added ALT tags to images
	  - all font sizes are expressed in 'em' unit now
	  - added detailed titles to links
	  - generalized use of titles (H)
	  - added "headers" to table/td
	  - added "label", "id" and "for" attributes to forms
	  - added alternate to scripts
	  - other cosmetic / IE compatibility changes
	The web interface (CSS and HTML) have been validated by the W3C validator

	doc/: Added documentation about i18n

	soap/: New features on the SOAP interface : add, del, closeList

   Changes :

	web_tt2/serveradmin.tt2: Changed the bug tracking URL to a more stable URL

	doc/sympa.tex.tpl: Added libxml 2 as a requirement for Sympa

*****	sympa.pl --upgrade is now the only way to upgrade Sympa data structure
*****	YOU NEED TO RUN THIS COMMAND AFTER EACH UPGRADE OF SYMPA

	[S.Amrani, gendarmerie Nationale] new Datasource.pm and SQLSource.pm modules that should contain all 
	DB access subroutines. An LDAPSource.pm module should be created later.



   Bug fixes :

	src/Commands.pm: [BugID 1071][reported by F.Guilleux, CRU]  response to message confirmation did not include listname.
	Incorrect $which variable was used.

	src/List.pm: [S.Amrani, Gend. Nationale] errors were not properly raised if an error occured while performing 
	a scenario search()

	src/tools.pl: [BugID 792] bug in tools.pl prevents per family customization of scenarios, mail_tt2 and web_tt2

	src/List.pm: 'host' robot.conf parameter was not well supported. It is now the default value for the list 'host'
	parameter.

	src/sympa.pl: [reported by P.Maes, Université Louvain] Sympa would improperly detect a loop if the same message 
	is sent to 2 lists with same local part. Now added list robot to %msgid_table keys.

	mail_tt2/message_report.tt2, src/Commands.pm: [reported by D.Lamballais, IRISA] moderator was no more notified after
	message rejection

	src/List.pm: [S.Amrani, Gend. Nationale] incorrectly closed file handle

	src/List.pm: prevent recursive loop when DB connection failed : 
	db_connect > send_notify_to_listmaster > send_global_file > get_user_db > db_connect


5.3a.8		6 September 2006

   New features :


	[Adrien Brard] DB logs : each operations that changes the status of messages/subscriptions/list 
	config is now logged in a structured DB entry. Both listmasters and listowners can search this events
	DB using the Sympa web interface.

	New static_content_path and static_content_url parameters. It refers to a directory, accessible
	from the web server, containing CSS stylesheats, member pictures and other statuc contents 
	managed by Sympa.

	[Adrien Brard] List members can upload and share their pictures via the REVIEW web page.

	[Virginie Paitrault, Univ. Rennes 2] New user and admin web documentation.
	Currently in French only.

	Per list blacklist : list owners can manage a blacklist for their list, via the web interface
	Only one new sympa.conf parameter : use_blacklist

	List creation available via the SOAP server. 
	New trusted_applications.conf file that defines the trust relationship with SOAP clients.

	src/etc/script/testldap.pl: testldap made LDAPS-aware

	src/List.pm: Added LDAPS support to include_ldap_xx

	wwsympa/wwsympa.fcgi: Templates editor for the listmaster.

   Changes :

	src/etc/script/arc2webarc.pl: [reported by D.Ghent, UMBC] [ID 927] arc2webarc.pl failed 
	with big lists (lots of messages) because all messages were stored in memory.  Now process 
	one log file at a time.

	wwsympa/wwsympa.fcgi: [requested by M.Ward] [ID 935] When renaming a list, custom_subject 
	is not updated with the new list name

	[S.Amrani, Gendarmerie Nat.] alias management can now be disabled.  You should set the 
	'sendmail_aliases' parameter to 'none'

***** 	Change: config.bin files are no more used unless the new cache_list_config sympa.conf parameter 
***** 	is set to 'binary_file'. This mode is only usefull if you manage lots of lists (1000+) to 
***** 	have a faster startup of web processes.

***** 	Changes: web pages are now utf-8 encoded, as well as mhonarc HTML 
***** 	archives that can now mix different character sets within a single 
***** 	web archive. Sympa now uses perl's I/O layer to encode/decode characters.  
***** 	The web_recode_to  parameter is now obsolete ; the new 
***** 	filesystem_encoding parameter allows you to define how the configuration 
***** 	files are encoded on disk. A new mhonarc-ressources.tt2 file is provided 
***** 	and should replace any custom one.
***** 	Shared documents filenames are now Q-encoded to prevent any encoding problems.
***** 	An automatic upgrade process will rename existing files according to Q-encoding

***** 	Change: default for css_path is now relative to static_content_path.  
*****   CSS files are now AUTOMATICALLY updated by sympa.pl if a new css.tt2 has been installed.
*****	You NEED to add an Alias directive in your Apache config file, as folows :
*****		Alias /static-sympa /home/sympa/static_content


	web_tt2/arcsearch.tt2: [A.Bernstein] [ID 899] Minor bugs and cosmetic improvements 
	in archive search results 
	1. In the presentation of search results in the archive, the listing of parameters that 
	was used for the search is incorrect because of various typos in the arcsearch.tt2 file.
	2. Search results are hard to read because messages blend together, so I've made minor changes 
	(making them list elements), and also added some linebreaks and removed some confusing
	feedback (the "Results" lines at the bottom).

	web_tt2/arcsearch_form.tt2: [A.Bernstein] [ID 900] Cosmetic reorganization of the archive advanced 
	search page

	doc/sympa.tex.tpl: Added comments about the requirements on the aliases file

	web_tt2/editsubscriber.tt2, wwsympa/wwsympa.fcgi: [A.Bernstein] [ID 901] 
	List owners are now able to edit subscriber's visibility

	web_tt2/suboptions.tt2: [A.Bernstein] Subscribers can now edit their gecos on a list

	src/etc/mhonarc-ressources.tt2: now provide archives mass-deletion also from the threaded page

	src/etc/mhonarc-ressources.tt2: [A.Bernstein] [ID 905] The threaded view is more useful 
	if you can see the date of each message in the list.	This requires both adding the date 
	field to a few lines in mhonarc-ressources.tt2 and adding two new resources that weren't 
	customized at all before.

	po/: en_US.po, fr.po: use sympa.pot as the default en_US.po

	po/en_US.po, src/Language.pm: changed charset for English from us-ascii to utf-8

	wwsympa/wwsympa.fcgi: [M.Massar, univ Kaiserslautern] Sympa is now able to get the Email in SubjAltName.  
	As I was not able to find the mentioned patch to mod_ssl to get SSL_CLIENT_S_EMAIL exported, I wrote 
	another patch based on SSL_CLIENT_CERT from "SSLOptions +ExportCertData"

	src/List.pm: [requested by A.Bernstein] now scenario rules can apply on header fields that have multiple values

	mail_tt2/listmaster_notification.tt2, src/List.pm:  notify listmaster if upgrade procedure failed

	[BugID 709] prevent any process to run before data structure have been updated. 
	This prevents "duplicate entries error" in DB tables

	src/List.pm: hide closed lists, even to listmasters

   Bug fixes :

	src/etc/script/ldap_alias_manager.pl: [A.Gavara, INPL Nancy] [ID 953] added missing -owner aliases 
	; fixed $tt2_include_path construction

	wwsympa/archived.pl: sort archives directories before expiring ; otherwise latest months might expire.

	wwsympa/wwsympa.fcgi: [reported by S.Amrani, Gendarmerie Nat.] After editing a subscriber email, 
	the list owner might get a "not subscribed to list" error.  The bug happened because the do_set() 
	is used by both list members and list owners. Wwsympa now used the previous_action information to 
	bring the user back to the right page.

	wwsympa/wwsympa.fcgi: [reported by P.Von Der Hagen, Karlsruhe Univ.] [ID 876] 
	Sympa sends message "topics have changed" when owner is changed

	mail_tt2/message_report.tt2: [reported by P.Von Der Hagen, Karlsruhe Univ.] [ID 878] used incorrect 
	variable in mail report

	src/sympa.pl: [reported by S.Amrani, Gendarmerie Nat.]  sympa.pl would die when processing 
	a message for unknownlist-request. The error message was : "Can't modify non-lvalue subroutine 
	call" Fixed a buggy call to chomp.

	src/sympa.pl: [requested by P.Farmer, ZVENO] [ID 828] on OS X 10.3 scripts can't change their 
	real UID.  Now checking that the UID change succeeded.

	src/etc/mhonarc-ressources.tt2: [A.Bernstein] [ID 898] Numerous bugs in mhonarc-ressources.tt2 
	for thread view When viewing an archive in threaded order, the first/previous/next/last buttons 
	all return incorrectly to chronological view.  This happens because the line in the 
	mhonarc-ressources.tt2 that creates these buttons is an exact copy of the one from the chronological 
	view section, with "PREVPGLINK" and "NEXTPGLINK" instead of "TPREVPGLINK" and "TNEXTPGLINK".

	mail_tt2/send_auth.tt2: [reported by W.Werner, Fraunhofer]  When using x509 list certificates, 
	reply-to would be forced to list-request.  Added a reply-to header field to the send_auth.tt2 template

	src/etc/script/: [reported by P.Bricourt, Mongueurs] still refering to idp_netimap DB field

	wwsympa/wwsympa.fcgi: [reported by J.Abbott, univ Duke]  sending a mail from the web archives would 
	raise an error if the mail subject contained unusual characters.  The subject regexp has been extended.

	web_tt2/: create_list_request.tt2, editfile.tt2: [reported by P.von der Hagen, univ. Karlsruhe] 
	removed the wrapping in	textarea

	wwsympa/wwsympa.fcgi: [reported by V.Nilsen] links to archives month from calendar were broken. 
	Now clean up the arc_file parameter

	src/Language.pm: [reported by P.Maes, Univ. Louvain] localization failed on Solaris. 
	The native Solaris gettext libraries failed to use the appropriate .mo file.  We're now using the "Pure Perl" 
	implementation of gettext

	src/: Conf.pm, List.pm: [reported by P.Maes, Univ. Louvain] Don't use chown user.group that fails on Solaris. 
	Run separate chown and chgrp commands instead

	soap/sympasoap.pm: [reported by V. Mathieu, Univ. Nancy2] [BugID 281] now decoding and encoding SOAP data to UTF-8

	wwsympa/wwsympa.fcgi: [reported by JM.Bourdin, IUFM Dijon] visibility authorization scenario was not 
	evaluated to compute the "your lists" box.

	src/List.pm: [BugID 750] include_sql_query requests would fail with Oracle.  
	Apparently the ->rows() method does not return the number of rows.  We now use fetchrow_arrayref() 
	to get rows, thus allowing to differenciate an empty field an the last row.

	wwsympa/bounce-lib.pl: analyze the 'Original-recipient' entries of message/delivery-status MIME parts

	src/etc/mhonarc-ressources.tt2: [proposed by E.Hood] now using $FROMADDRNAME$@$FROMADDRDOMAIN$ instead of $FROMADDR$. See
	https://savannah.nongnu.org/bugs/index.php?func=detailitem&item_id=11759

	important_changes.pl: [reported by C.Peck, Univ William and Mary] on Solaris, chown does not like the '.' separator

	web_tt2/review.tt2: don't show bouncing status to other members

	wwsympa/wwsympa.fcgi: [reported by J.Beretta, France Telecom]: a renamed list would keep its previous domain name

	mail_tt2/listmaster_notification.tt2, src/List.pm: Sympa now check if the DBD is available ; otherwise processes would die

5.2		11 April 2006

   New features :

*****	wwsympa.fcgi can use sudo instead of setuidperl 
*****   You should run 'configure --enable-secure' and 
*****   use wwsympa_sudo_wrapper.pl instead of wwsympa.fcgi

	po/nb_NO.po:  [A.Lund and J.Gunnar] Added Norwegian Bokmål

	po/Makefile: new "check" target to compare the PO files with another set of PO files (usefull for Rosetta)

	src/sympa.pl: sympa.pl --reload_list_config is provided to recreate config.bin files

   Changes :

	src/etc/mhonarc-ressources.tt2: Added Dkim-signature to hidden
	SMTP header fields

	wwsympa/wwsympa.fcgi: [BugID 482] keep track of first accessed URL in 'referer' variable.  
	It is then possible to bring the user back to this URL at the end of the authentication
	process.

	po/: updated tranlations from Rosetta

	src/sympa.pl, wwsympa/wwsympa.fcgi: cancel previous change to reload list config for each action.
	This behavior would require locking of config files.	

	wwsympa/wwsympa.fcgi: [bugID 567] if 'web_recode_to' is  set, decode incoming parameters from this charset to perl's
	internal encoding (utf-8). This is required for CJK binary strings that can't be used in perl regexp.

	mail_tt2/command_report.tt2: no more provide the listmaster email address ; refer to the web site instead

   Bug fixes :

	wwsympa/bounce-lib.pl: [reported by P.Young, Ac. Creteil] bounce-lib would not analyse correctly som kind of
	message/delivery-status

	src/Language.pm: [reported by P.Maes, Univ. Louvain] locales would not work with Solaris. 
	Solaris requires that POSIX::setlocale() is run before Locale::Messages::textdomain()
	and Messages::bindtextdomain()

	wwsympa/Makefile: [C.Peck, William and Mary univ ] replaced == with =
	
	src/CAS.pm: [BugI 694] CAS ticket validation fails due tovirtualhost error

	wwsympa/wwsympa.fcgi: [BugID 599] Language dropdown displays names in wrong codeset

	src/etc/mhonarc-ressources.tt2, wwsympa/archived.pl, wwsympa/wwsympa.fcgi: [BugID 602] Rebuild would remove index
	files.  New feature: now providing the index info to web templates ; used to provide the number of messages per month in
	the calendar

	src/Commands.pm: [reported by A.Lund, Uninett] moderator received an unwanted notification when rejecting a message

	src/List.pm: [BugID 664] [E.Rynes, Case Western Reserve University] The get_first_admin_user subroutine in Lists.pm
	does not free up the DB statement handle on a failed lookup. This causes the database (at least when using oracle) 
	to run out of cursors when the number of lists is high.

	src/List.pm: made 'creation' parameter optional, for list that were created before web creation was provided


5.2b2		27 March 2006

   New features :
	
	[John-Paul Robinson] When using generic_sso, Sympa is now able to verify the user's email
	address when it is provided by the SSO. If no email is provided, the user is asked.
	Check The related documentation for more details.

	src/etc/script/ldap_alias_manager.pl: [F.Lachapelle] a LDAP-enabled version of alias_manager.pl is now distributed.

	src/List.pm, src/sympa.pl: New feature sympa.pl --upgrade usefull to trigger data structure updates

	Listmaster can create or edit scenario with a scope limited to a list. access tothis feature from 
	"dump scenario" button in edit_list_request.

	[J.Abbott, Duke University] added a new 'loop_prevention_regex' parameter

	The "search user" feature now has its own web template. It provides more information 
	about the searched user and the ability to remove him from the list.

	src/: Conf.pm, mail.pm: new nrcpt_by_domain.conf file allows to control the number 
	of recipients per SMTP session, depending on the destination domain

	src/Conf.pm: [reported by M.Paineau] Sympa.pl is now able to create missing sympa_aliases file 
	(as defined by 'sendmail_aliases' sympa.conf parameter)

   Changes :

	src/List.pm, src/sympa.pl, wwsympa/wwsympa.fcgi: force the config reload for the current list
	This is an important feature because config.bin files maitains a cache of scenario structures.
	
	mail_tt2/listmaster_notification.tt2, src/List.pm: [ID 467] Notify the main listmaster 
	when the DB structure has been updated

	src/tools.pl: [M.Bouissou] extend support to clamDscan

	src/etc/mhonarc-ressources.tt2: [N.Duboc] now preserving attachments filenames in web archives

	src/etc/list_task_models/: changed the behavior of REMIND tasks.  
	The task is first programmed and executed later

	src/List.pm: Dropping and recreating INDEXES and PRIMARY KEYS

	[requested by JC Delepine] Call List::probe_db() only from sympa.pl to prevent conflicts in the DB upgrade

*****	PostgreSQL DB fields type changes
*****	The following fields have changed from bit(1) to smallint :
*****	subscribed_subscriber, included_subscriber, subscribed_admin, included_admin
*****	You should perform as follows to migrate :
*****		1/ stop Sympa
*****		2/ run pg_dup on the database
*****		3/ change in the dump-file "bit(1)" to "smallint" in both subscriber_table and admin_table
*****		4/ remove the old tables and did a fresh import

   Bug Fixes :

	src/etc/mhonarc-ressources.tt2: [BugID 622] [reported bby A.Lund, Uninett]  only list owners 
	and messages authors could get an archived message resent


	src/List.pm: [BugID 627] Encrypted mail don't work with split certificates

	web_tt2/rss.tt2: [BugID 545] XML-escape wired caracters in RSS feed

	src/Conf.pm, src/sympa.pl: [ID 462] tmp and subscribe spools were never cleaned

	src/: bouncequeue.c, queue.c: replaced 'unsigned char' with 'char' to prevent warnings on FC4

	src/Task.pm: task manager would not detect existing tasks and would recreate them.  
	This could lead to some tasks running in loop (remind for example)

	web_tt2/review.tt2: ****** dump button should be printed as long as review is permitted (not only for owners)

	src/: new required list tasks were not created by the task_manager. This only concerns Sympa 5.2b.

	src/: List.pm, PlainDigest.pm: check if $msg->bodyhandle is defined before calling object methods

	wwsympa/archived.pl: removing a message was removing the whole month.

	src/Conf.pm, wwsympa/wwsympa.fcgi: when defining per robot auth.conf files, 
	they would not be fully partitioned

	mail_tt2/get_archive.tt2: Missing file in first 5.2b

	src/etc/script/create_db.mysql: Fix: type enum() was changed to int(1)

5.2b		13 February 2006

   New features :
	
*****	Full virtual robot support ; you can now create 2 lists with the same same in different virtual robots.
*****	The database structure should be updated (automatically performed with MySQL) to add new database fields.
*****	Check the create_db.XX scripts (XX being your RDBMS) to know about the new fields
*****	Make sure to recreate appropriate INDEXES and PRIMARY KEYS
*****	The spool file names has evolved to include the hostname, but existing spools will be processed.

	Auth.conf file can be defined for each virtual robot.

	[G. Bouteille] Message topics : list messages can be tagged with topics. List owner defines a set of topics for the list.
	List members can select topics and only recieve related messages. See documentation for more info.

	Added support for an SQlite backend.A create_db.SQLite has been added. Sympa.pl is able to
	automatically create the database if none exists. SQLite is now  the default 'db_type' in sympa.conf 
	(SQlite drivers include the database engine itself, therefore nothing needs to be installed).

	Sympa is now VERP enabled ; this includes the following changes:	 
		* new bounce_address_subscriber DB field   
		* verp_rate list and global parameter

src/sympa.pl: new --sync_include sympa.pl option

	web_tt2/review.tt2, web_tt2/reviewbouncing.tt2,	wwsympa/wwsympa.fcgi: 
	[BugID 538] [A.Bernstein]: provide a dump for searched members or bouncing members

	[requested by J.Abbott] new return_path_suffix parameter in sympa.conf

	po/Makefile, po/sv.po, src/Conf.pm, src/Language.pm: [D.Nylander] sympa translated to Swedish

	src/List.pm: [requested by D.Jahnke] 'db_port' now available in include_sql_query paragraph

	src/: Language.pm, mail.pm: New PushLang() and PopLang() subroutines

	doc/: New "roles and privileges" section

	src/List.pm: clean buggy list config files at startup

	
	[A.Bernstein] subscriber's groups always listed in a box. Resized the menu box (+60px) ; 
	removed the "your subscriptions ; new your_lists.tt2 template

	src/List.pm: new 'digest_max_size' list parameter. If a digest exceeds this limit, then multiple messages are sent.

	Added PO files for Greek, Dutch, Portuguese (Brazil) and Turkish
	
  Changes :

	[G. Bouteille] Redesigned the message distribution subroutines. The new organization is described in a new section 
	of the reference manual entitled "Internals"
	Reorganisation of error reports (mail and web interface) to provide more precise error notification.

*****	Only one copy of message for archive. No more archiving in expl/list/arc directory
*****	Mail archive command now uses web_archive. Old list parameter   section for
*****	archive still in use for access control.



*****	src/List.pm: load/save a binary version of the list config file on disk. This makes the List::load() calls much
*****	faster.  This was a major problem with sites hosting thousands of mailing lists

*****	src/List.pm: turned the mysql subscribed and included fields into int(1) 
*****	to be compatible with other RDBMS 
	
	src/: Introduced a new Task.pm module

	src/etc/script/tpl2tt2.pl: old customized web templates are translated but should not be used 
	because they will not fit the new CSS/XHTML web structure

	wwsympa/wwsympa.fcgi: [BugID 537] [A.Bernstein] Don't display Subscribe/Unsubscribe for not logged-in users, if closed

*****	Authorization scenarios that refer to mailing list outside the current virtual robot should qualify the 
*****	list with the domain. Example: is_subscriber([sender],'list@dom')

	Authorization scenarios are now able to provide a reason for a reject() this reason can then be 
	used within mail notice. Check provided scenarios to customize your own.

	All command / mail reports have been moved to mail templates.
	
	po/oc.po: [Moni] Completed Occitan translations
	
	po/fr.po: Updated translations

	No more saving data_structure.version if version did not change

	src/tools.pl: tools::lock() is now able to force the lock if the blocking lock was performed 
	more than 20 minutes ago. The PID is now written in the lockfile.  The number of attempts to
	lock is now different in a web context

	wwsympa/wwsympa.fcgi: [BugID 526] () and [] no more allowed in search expressions

	soap/sympasoap.pm: [G.Bouteille] which SOAP subroutine result now includes lists the user is admin of

	po/de.po: [M.Redinger] Updated de.po

	po/et.po: [T.Kindsigo] Updated Estonian PO file

	po/ja.po: [K.Moriwaka] Update from Rosetta

	wwsympa/wwsympa.fcgi: optimization : skip get_which() when either in a list context or while returning CSS

	Makefile.am, Makefile.in: [requested by S.Hornburg] never wait for user input while building a package (DESTDIR is set)

	src/admin.pm: [reported by JH. Belpois] owner and subject XML nodes are no more mandatory while instantiating a family

	src/Family.pm: [BugId 411] use File::Copy::copy instead of rename() to allow traversing filesystems

  Bug fixes :	
	
	src/Language.pm: [BugID 597] use LOCALEDIR var instead of DIR/locale

	wwsympa/wwsympa.fcgi: skip month without arctxt/ dir in archives

	src/List.pm, src/tools.pl, wwsympa/wwsympa.fcgi: now cleaning up the message-id for use 
	with summary reception mode

	wwsympa/wwsympa.fcgi: don't set cookies while performing a RSS request Doing so would logout the current user

	wwsympa/wwsympa.fcgi: [BugID 594] if urlized file had no file extension, 
	the attach web action failed with the following error : "file error - attach.tt2 not found"

	mail_tt2/urlized_part.tt2: [BugID 594] Fix typo

	src/List.pm: [BugID 608] If multiple edit_list.conf files exist, the first one loaded is always used for that domain

	src/sympa.pl: [BugID 114] ignore SIGPIPE, to prevent sympa.pl crash

	src/List.pm: [BugID 539] no more show closed lists to list owners

	src/List.pm: [BugID 481] prevents crash if _save_stats_file() parameter has the wrong type

	src/sympa.pl: [BugID 545] using File:Copy instead of rename() for the --keepcopy option, 
	because the keepcopy directory might be on a different filesystem

	src/Language.pm: prevents case problem with locale names

	wwsympa/wwslib.pm: [reported by H.Brunet] apache-ssl does not set SSL_PROTOCOL env variable 
	but SSL_PROTOCOL_VERSION instead

	soap/sympasoap.pm, wwsympa/Auth.pm, wwsympa/wwsympa.fcgi:  now report CAS authentication failures 
	Also fixed a bug related to recent auth_services changes

	wwsympa/wwsympa.fcgi: 'your_lists' was empty just after the login
	
	src/Conf.pm: [requested by F.Jammes] in auth.conf, allow white spaces in the list of hosts

	src/List.pm: [BugID 589] restore correct get_editors_email() subroutine

	soap/sympasoap.pm: [BugID 591] typo iun which()

	src/List.pm: [reported by M.Schoeb]  List::has_include_data_sources() did not check owner_include and
	  editor_include.  Therefore sync_include task might not be created.

	[reported by B.Riffle] no more use quoting in SQL queries with numeric fields

	check_perl_modules.pl: [reported by J.Beretta] the '-modifybodyaddresses' option is only available 
	since mhonarc  2.6.0

	rc/task_manager.pl: [BugID 498] 'process_bouncers' task failed if no owner could be contacted ; no more return undef

	[BugID 522] escape quotes in javascript calls
	
	wwsympa/archived.pl: archived.pl would die with a "Modification of non-creatable array value attempted" 
	error while creating the index file

	src/Language.pm: [reported by O.Lacroix] failed to setlocale on HPUX ; now trying without dashes ('-').  
	Also fixed the setlocale(LC_TIME)

	wwsympa/wwsympa.fcgi: [proposed by G.Crompton] problems when using Sympa in a proxy context (virtual robot selection,
	navigation in web archives). WWSympa now uses the HTTP_X_FORWARDED_SERVER and HTTP_X_FORWARDED_HOST header fields
	if set

	src/Language.pm: [BugID 502] Fix for i18n on FreeBSD

	src/List.pm: [BugID 501] if family_name was set to an unknown family, wwsympa would die with the following error msg
	"Can't call method "check_param_constraint" on an undefined value at /var/sympa/bin/List.pm line 1728."

	src/List.pm: [reported by P.Maes] while including users from SQL, Sympa would stop at the first NULL row. 
	Now going though all rows

	src/List.pm: [BugID 461] List::am_i() cache control had 2 blocks which returned before updating the cache

	src/Language.pm:  when 'web_recode_to' is set, also change the 'charset'

	src/alias_manager.pl: [BugID 451] print errors to STDERR

	src/task_manager.pl: [D.Lamballais] missing chomp ; incorrect split on file path.  
	The consequence of this bug : all tasks would fail ("Error while processing task..")

	wwsympa/wwsympa.fcgi: [BugID 447] [E.Rynes]  If a multivalued list parameter is set to read only, 
	then the web pages will display an extra, empty value

	wwsympa/wwsympa.fcgi: [reported by JH.Belpois] load subscribers in DB if changing the user_data_source from file to
	include2

	src/List.pm: limit the SQL queries when calling get_which().
	Sympa would do run am_i() on every list the user is not owner of

	src/alias_manager.pl: [reported by L.Ghys] reference to incorrect sympa.conf parameter 'sendmail_alias'

	src/: Family.pm, sympa.pl: [reported by S.Amrani & JH.Belpois] Sympa.pl would die while instantiating families with the
	following error : "free(): invalid pointer". Using parse_file() instead of parse_fh() seems to fix the problem.

	web_tt2/arcsearch.tt2, wwsympa/wwsympa.fcgi: [BugId 427] [reported by K/Moriwaka] sort by age did not work properly
	in web archives search engine



5.1.2		31 October 2005

   New features :

	po/Makefile, src/Conf.pm, src/Language.pm, web_tt2/rss_request.tt2, wwsympa/wwsympa.fcgi: 
	[D.Nylander] sympa translated to Swedish

   Changes :

	soap/sympasoap.pm: [G.Bouteille] which SOAP subroutine result now includes lists the user is admin of

	src/Language.pm: try a setlocale() with locale.charset first

	po/de.po: [M.Redinger] Updated de.po

	po/ja.po: [K.Moriwaka] Updated Japanese translations

	po/et.po: [T.Kindsigo] Updated Estonian PO file

	Makefile.am, Makefile.in: [requested by S.Hornburg] never wait for user input while 
	building a package (DESTDIR is set)

   Bug fixes :	

	src/task_manager.pl: [BugID 498] 'process_bouncers' task failed if no owner could be contacted ; no more return undef

	wwsympa/wwsympa.fcgi: [BugID 528] adding a pending subscriber failed if the user gecos contained a comma (',')

	web_tt2/rss.tt2, wwsympa/wwsympa.fcgi: Fixed some RSS problems

	src/List.pm: get_which() for listamster returned all non-include2 lists
	
	* src/tt2.pl, web_tt2/: [BugID 522] escape quotes in javascript calls

	wwsympa/wwsympa.fcgi: never go back to the search action after a del

	soap/sympasoap.pm: [BugID 516] lists and which used domain in list address instead of host

	wwsympa/wwsympa.fcgi: optimization : skip get_which() when either in a list context or while returning CSS

	wwsympa/wwsympa.fcgi: escape encoded SMTP header fields for RSS

	wwsympa/archived.pl: archived.pl would die with a "Modification of non-creatable array value attempted" 
	error while creating the index file

	src/Commands.pm, web_tt2/skinsedit.tt2: [reported by A.Brugalle] Add a notification 
	when a message is moved to the distribution spool

	src/: Archive.pm, List.pm: [reported by V.Mathieu] mail archives files had an incorrect 'log.' filename

	src/Language.pm: [reported by O.Lacroix] failed to setlocale on HPUX ; 
	now trying without dashes ('-').  Also fixed the setlocale(LC_TIME)

	src/List.pm: [G.Bouteille] missing 'family_closed' parameter to close()

	src/tt2.pl: [G.Bouteille] SetLang only if lang is available

	mail_tt2/info_report.tt2: prevents a parser failure if info file was not found

	web_tt2/review.tt2: [O.Lacroix] subscriber add form was shown regardless of owner privilege

	po/fr.po: [O.Lacroix] [BugId 471] Fix

	Makefile.am, Makefile.in: [BugId 504] Fix: LOCALDIR was hardcoded

	ChangeLog, src/Language.pm: [BugID 502] Fix for i18n on FreeBSD

	src/List.pm: [BugID 501] if family_name was set to an unknown family, wwsympa would die with 
	the following error msg "Can't call method "check_param_constraint" on an undefined value
	at /var/sympa/bin/List.pm line 1728."

	web_tt2/list_menu.tt2, wwsympa/wwsympa.fcgi: [BugID 465] "contact owners" failed if protection mode was not javascript

	src/List.pm: [BugID 461] List::am_i() cache control had 2 blocks which returned before updating the cache

5.1		4 August 2005

  New features :

*****	New set of web templates, CSS and XHTML compatible. These new templates almost have the
*****	same names, BUT if you previously customized Sympa web template, you will certainly have 
*****	to edit these templates.
*****	
*****	Because of the new web templates, you have to start a "rebuild" process for all web archives 
*****	(see the "Sympa Admin" page).
*****
*****	New parameters have been introduced : color_0 .. color_15 (replacing previous xx_color parameters)
*****	logo_html_definition and css_url (you should customize this parameter to install a "static" CSS 
*****	stylesheet ; otherwise wwsympa will cope with 2 requests foreach page)

	doc/: New "roles and privileges" section

	doc/: New chapter: running 2 sympa versions of a single server

	doc/sympa.tex.tpl, mail_tt2/digest.tt2,  mail_tt2/digest_plain.tt2, src/List.pm: 
	new 'digest_max_size' list parameter. If a digest exceeds this limit, then multiple messages are sent.

	web_tt2/, wwsympa/wwsympa.fcgi: [A.Bernstein] subscriber's groups always listed in a box. 
	Resized the menu box (+60px) ; removed the "your subscriptions ; new your_lists.tt2 template

	po/: Makefile, ja.po: [K.Moriwaka] New translation to Japonese

	po/Makefile, po/el.po, po/fr.po, po/nl.po, po/pt_BR.po, po/tr.po, src/Conf.pm, src/Language.pm: 
	Added PO files for Greek, Dutch, Portuguese (Brazil) and Turkish

	wwsympa/: Makefile, SharedDocument.pm, wwsympa.fcgi: New SharedDocument.pm module to 
	clean the shared documents code. Only used in new_d_read() now

	po/Makefile, po/oc.po, src/Language.pm: [M. Allaya] first version of Sympa in Occitan

	ChangeLog, src/Message.pm, src/tools.pl: add sanity check of incoming email address

	Makefile.am, Makefile.in: Added a warning about the long installation process

   Changes :

	src/List.pm: clean buggy list config files at startup

	src/etc/script/sympa: [BugID 403] made init script compatible with OS X, Debian and Suze

	src/: admin.pm: [reported by JH.Belpois] owner and subject nodes no more mandatory (while updating a family)

	src/: Family.pm, sympa.pl: [reported by S.Amrani & JH.Belpois] Sympa.pl would die while 
	instantiating families with the following error : "free(): invalid pointer". 
	Using parse_file()  instead of parse_fh() seems to fix the problem.

	po/cs.po, src/Conf.pm: [V.Adamec] Updated czech translations

	check_perl_modules.pl: Change: DBI and DBD_mysql required

	src/etc/script/sympa: [D.Chopard-Lalier] Fix for Debian

	src/: Family.pm: [BugId 411] use File::Copy::copy instead of rename() to allow traversing filesystems

	Makefile.am: [BugId 431] USER and GROUP was not provided to the man Makefile

	po/de.po, src/Conf.pm: [M.Redinger] Updated German translations

	src/List.pm, wwsympa/wwsympa.fcgi: Now running List::get_which() at wwsympa startup to initialize
	%List::list_cache.  This prevents subsequent SQL queries in List::am_i() and List::is_user()

	src/List.pm, wwsympa/wwsympa.fcgi: [reported by S.Amrani] for every web request, 
	wwsympa was running List::probe_db() that performs a database structure checkup. 
	Now using a lighter subroutine

	wwsympa/wwsympa.fcgi: [BugID 406] wrapping lines to 80 characters when posting from the web interface.  
	Also moved the ^M removal to get_parameters()

	src/: Conf.pm, List.pm: New update_db_field_types parameter to disable automatic DB changes

	wwsympa/wwsympa.fcgi: create sympa_dump files (when incorrect parameter format) in Sympa's own tmp dir instead of /tmp

	src/Language.pm: try performing different setlocale() with $lang and with $locale.charset


   Bug fixes :

	src/task_manager.pl: [D.Lamballais] missing chomp ; incorrect split on file path.  
	The consequence of this bug : all tasks would fail ("Error while processing task..")

	wwsympa/: wwsympa.fcgi: [BugID 447] [E.Rynes] If a multivalued list parameter is set to read only, 
	then the web pages will display an extra, empty value

	wwsympa/wwsympa.fcgi: [reported by JH.Belpois] load subscribers in DB if changing the 
	user_data_source from file to include2

	src/List.pm: Fix: limit the SQL queries when calling get_which().
	Sympa would do run am_i() on every list the user is not owner of

	wwsympa/: wwslib.pm, wwsympa.fcgi: Reception modes can now be translated on the web interface

	wwsympa/wwsympa.fcgi: various RSS fixes

	src/etc/script/sympa: [S.Amrani] incorrect condition for debian and suse

	web_tt2/: remore width: 100% (compatibility issues with IE6)

	src/List.pm: List::get_subscription_requests() would return undef if one request was incorrect

	Makefile.am: missing CGIDIR in documentation

	wwsympa/wwsympa.fcgi: [S.Amrani] the regexp run by search_list could make wwsympa.fcgi process die ; 
	now using eval{} Now escaping some more dangerous caracters.

	web_tt2/arcsearch.tt2, wwsympa/wwsympa.fcgi: [BugId 427] [reported by K/Moriwaka] sort by age 
	did not work properly in web archives search engine

	src/etc/script/create_db.Oracle: [reported by Emr] incorrect enum types for Oracle

	po/xgettext.pl: [M.Redinger] xgettext.pl did not collect all gettext_id from List.pm

	mail_tt2/: helpfile.tt2, lists.tt2: [G. Bouteille] Add header fields top templates
	
	soap/sympa_soap_server.fcgi: [S.Amrani] replace hard-coded path to Sympa libdir

	src/List.pm: [BugID 418]  Ldap search return code was not examined in _include_users_ldap()

	wwsympa/wwsympa.fcgi: Fix: $rss variable was not reinitialized if in POST context. 
	Wwsympa could provide RSS content instead of HTML content

	src/List.pm: check if no null while doing a ALTER TABLE

	src/: List.pm, mail.pm, tt2.pl: [BugID 415) [Moriwaka] incorrect parameters to encode_mimewords() ; 
	Sympa previously encoded every string in iso-8859-1

	Makefile.am, Makefile.in, doc/man8/Makefile: [reported by S.Amrani] Fix umask while installing man pages ; 
	also reorganized Makefiles

	src/List.pm: [BugID 393 & 409] adding custom_subject would break subject encoding

	src/tools.pl, wwsympa/wwsympa.fcgi: [reported by S.Lalonde] regexp for email was too restrictive, not allowing uid

	mail_tt2/: global_remind.tt2, moderate.tt2: [reported by O.Archer] some MUA require an empty line after mailto: URLs

	po/xgettext.pl: some multi-line strings were not properly added to sympa.pot. 
	Therefore these translations were not available.

	wwsympa/Auth.pm: CAS authentication was not able to use ldap_bind_dn and ldap_bind_password

	src/Ldap.pm, src/List.pm, wwsympa/wwsympa.fcgi: [BugID 402] [J.Dalbec] : Sympa did not report failed LDAP binds

	wwsympa/wwsympa.fcgi: [BugID 400] error mesage would be printed if user previously failed to login 
	(previous_action problem)

	wwsympa/wwsympa.fcgi: Users could set empty passwords (\s+)

5.0		20 April 2005

   New features :

	src/tt2.pl, web_tt2/main.tt2, web_tt2/rss.tt2, wwsympa/wwsympa.fcgi: [G.Bouteille] Changes: RSS related :	 
		* fixed various encoding problems	
		* added a link, refering to RSS chanels, in HTML pages

	wwsympa/wwsympa.fcgi: now performs syntaxical checks on incoming parameters to prevent malicious code injection

   Changes :

	po/: added a check of available locales (usefull for Debian) at make time

	wwsympa/wwsympa.fcgi: [proposed by S.Ducoulombier] base URL for viewmod and archives now uses the wwsympa_url parameter

	mail_tt2/: most service messages no more refer to user password

	po/: Update PO and POT

	src/etc/auth.conf: Fix exemple with eppn

	po/hu.po: [G.Hargitai] Update translations

	wwsympa/wwsympa.fcgi: return to the get_pending_list page when a list has been installed

	src/sympa_wizard.pl: list of supported languages is reduced

	src/Language.pm: Allow '%' chars to be escaped in templates : %%

	wwsympa/wwsympa.fcgi: [BugID 369] [A.Bernstein]: check 'send' scenario to determine if 'Post' button is shown

   Bug fixes :

	mail_tt2/welcome.tt2: [reported by P.Chevalier] failed to parse default welcome.tt2 if info file was not found

	src/List.pm: [reported by P.Young] Fix: add_user() failed if one entry could not be added. Replaced 'return undef' with 'next'

	soap/sympa_soap_server.fcgi, src/List.pm, src/task_manager.pl, wwsympa/archived.pl, wwsympa/wwsympa.fcgi: 
	daemons should not start if database is not available.  Admin hash used to be undef if database was not available ; 
	changed this behavior.  If list status is set to error_config, no more save the config to preserve list config file

	src/task_manager.pl: Add a log entry when running a task ; do not execute a task if the associated parameter is 
	no more defined

	wwsympa/wwsympa.fcgi (1.513): Check 'size' type in review ; prevent division by zero

	wwsympa/wwsympa.fcgi (1.512): Allow web message composition, even for moderated lists

	src/List.pm (1.522): [BugID 394] Sympa died while calling MIME::Entity::remove_sig()

	wwsympa/wwsympa.fcgi: [BugID 391]: wwsympa did not rise an error if user provided no password at login

	po/xgettext.pl: Fix: allow dashes in [% END %] tags

	po/xgettext.pl: [reported by M.Charlot] an additional \n was added to multiline entries.  
	These translations could not be used (not matched by gettext())

	src/tools.pl: allow comment.tt2 file (create_list context) be localized

	src/etc/mhonarc-ressources.tt2: [L.Kirsher] Domainkey-signature is not printed in archives (too long)

	mail_tt2/moderate.tt2, src/List.pm: [BugID 299] Add number of messages awaiting moderation in moderate.tt2

	mail_tt2/moderate.tt2, src/List.pm: [requested by G.Hargitai] Add message sender (msg_from) to the subject of the default
	moderate.tt2 template

	po/Makefile: [reported by G.Hargitai] translations in create_list templates were not collected

	web_tt2/: [BugID 375] some input maxlength were too short

	src/List.pm: [G.Bouteille] check if $user is defined first. Otherwise wwsympa would create loops

	src/task_manager.pl: [reported by S.Ruberti] [BugID373] the task_manager created dummy remind tasks

	mail_tt2/Makefile, web_tt2/Makefile: [C.Orteu] remove incorrect 'cd tt2' commands

	src/queue.c, src/bouncequeue.c: [M.Schulze] fix vulnerability to a buffer overflow. This could potentially lead to 
        the execution of arbitrary code under the sympa user id.

	src/List.pm, wwsympa/wwsympa.fcgi: urlize and attach function were not fully working

	wwsympa/archived.pl: Remove all previously generated files when rebuilding web archives. 
	Attachments used to be duplicated...

	src/task_manager.pl: remind messages (automatically sent by the task_manager) 
	did not use appropriate variables (because current robot was not given)

	check_perl_modules.pl: problem with RedHat ES and Archive:Zip

	src/tools.pl: Could not create tmp directory for antivirus if already exists



5.0b.1		11 January 2005

   New features :

	wwsympa/wwsympa.fcgi: perform security checks on incoming parameters syntax

	 doc/: Upgrade chapter added

   Changes :

	web_tt2/: [P.Levesque]complete XHTML compliance work 

	src/etc/mhonarc-ressources.tt2: Add keepspace to text/plain filter args

	src/List.pm: use tools::lock() and tools::unlock() for include_admin

	wwsympa/archived.pl: Remove previous HTML files while rebuilding web archives

   Fixes :

	src/sympa.pl, src/Commands.pm: daemon_mode variable was not accessible from within Commands.pm.  
	Bug description : moderated / confirmed messages were moved to 'distribute' spool though 
	'distribution_mode' sympa.conf parameter was not set to 'fork'

	src/etc/mhonarc-ressources.tt2: htmlize text/plain messages in archives, 
	otherwise <> chars are not correctly printed

	src/List.pm: [H.Gabor] Postgresql does not support && and || ; replaced them with OR and AND


5.0b		04 January 2005

   New features :

	[G.Bouteille] RSS channels are providing the following features :	   
		* latest messages in list archives
		* latest documents in web repository
		* latest created mailing lists
		* most active mailing lists
	(read documentation for more informations)

	Web pages can be recoded to utf-8 (web_recode_to parameter) ; 
	default is to use each language native charset (iso-xxx)


   Changes :
	
	check_perl_modules.pl: Newer version of MIME::Base64 required by MIME::Words

	po/: Update POT ; sync PO with POT

   Fixes :

	wwsympa/archived.pl: Remove .mhonarc.lck if required
	
	src/etc/mhonarc-ressources.tt2, wwsympa/archived.pl: now using a MD5 hash 
	(based on cookie+listname) to set tags in mhonarc-ressources. This prevents 
	message contents to be parsed (when refering to TT2 templates)


5.0a.1		13 December 2004

   New features :

	[O.Lacroix] New 'listmaster_email' and 'bounce_email_prefix' parameters in sympa.conf

	wwsympa/wwsympa.fcgi:[G.Bouteille] 
		+ New expert/user modes in the document repositoryDocument
		+ Allow upload and unzipping of a ZIP file in the document repositorySympa.pl 

	src/Commands.pm, src/Conf.pm, src/Log.pm, src/sympa.pl, src/tools.pl:
	New mode with two processus one dedicated for messages one dedicated for commands  
		At start : use --service process_message to process only distribution
			       --service process_command to process only command

		In sympa.conf : distribution_mode fork to make symap.pl fork and run two daemon.
		distribution_mode single (default) to run as previous version.

		This mode requiert more computer ressources but provide better priority handling 
		and faster answer to commands.

		Internal : new spool distribute where sympa distribute message with asking for 
		more auth nor editor validation.


   Changes :

	src/etc/script/sympa: Add a sleep between stop and start

	src/sympa_wizard.pl default wwsympa_url is set to /sympa (instead of /wws)

	check_perl_modules.pl: auto-install mhonarc

	wwsympa/wwsympa.fcgi: Allow caching for archives (should prevent gfoogle looping in archives)

	wwsympa/wwsympa.fcgi: Add a Date: HTTP header field telling the mast update time of the HTML 
	archive file (should prevent google looping in web archives)

	web_tt2/main.tt2, wwsympa/wwsympa.fcgi: [M.PELTIER][BugID354]: 
	Added a noparse html tag ; page substitle is the archive message subject

	src/etc/mhonarc-ressources.tt2: [M.Peltier] [BugID 353]  mhonarc resources improvement 
	(used TSLICE instead of Ref and Followup, HTML 4 conformance, ...)

   Bug fixes :

	src/List.pm: mysqld needed to be reloaded after GRANT was run

	src/List.pm, web_tt2/edit_list_request.tt2, wwsympa/wwsympa.fcgi: [BugID 346]
	hide passwords in the edit_list web form

	src/: bouncequeue.c, queue.c: [BugID 347] queue.c and bouncequeue.c did not compile on HP-UX

	src/Conf.pm: [BugID 351]'db_env' was stored internally in the wrong format

	src/task_manager.pl: [reported by S.Balmos] 'purge_orphan_bounces' task failed (and was reprogrammed) 
	when no list exist

	src/admin.pm: failed to create lists with topic/subtopic

	wwsympa/archived.pl: addressmodify code passed as an argument because $AddressModify 
	.mhonarc.db var was used inbstead of M2H_ADDRESSMODIFYCODE env var



5.0a		06 December 2004

   New features :

	[G. Bouteille] List families make it possible to automatically create a set of mailing lists that
	share a common configuration template,  a set of constraints, templates and authZ scenarios. 
	Family instantiation requires an XML document that defines mailing lists.
*****	require new perlmodule XML-LibXML

	[G.Bouteille] Owners and moderators can be extracted from an external datasource. 
	Data sources are gathered in a new 'data_sources' directory. Sympa manages a cache of data in a new 
	'admin_table' database table.
*****	You should update your DB structure (automatically performed by Sympa with MySQL), adding the following table (mySQL example) :
*****	CREATE TABLE admin_table (
*****	list_admin              varchar(50) NOT NULL,
*****	user_admin              varchar(100) NOT NULL,
*****	role_admin              enum('listmaster','owner','editor') NOT NULL,
*****	date_admin              datetime NOT NULL,
*****	update_admin            datetime,
*****	reception_admin         varchar(20),
*****	comment_admin           varchar(150),
*****	subscribed_admin        enum('0','1'),
*****	included_admin          enum('0','1'),
*****	include_sources_admin   varchar(50),
*****	info_admin              varchar(150),
*****	profile_admin           enum('privileged','normal'),
*****	PRIMARY KEY (list_admin, user_admin,role_admin),
*****	INDEX (list_admin, user_admin,role_admin)
*****	);

*****	Extend the generic_sso feature ; Sympa is now able to retrieve the user email address in a LDAP directory

	New include_remote_file list parameter

	src/Conf.pm, src/alias_manager.pl: New sympa.conf parameter : sendmail_aliases

	web_tt2/review.tt2, wwsympa/wwsympa.fcgi: Add a "synchronize members with data sources" on the review page


   Changes :

	wwsympa/wwsympa.fcgi: [O.Lacroix] notify listmasters of list creation/rejection

	po/it.po, src/Conf.pm: [G. Donnini] Update of Italian translations

	Makefile.am, configure.in: Check that msgfmt is available

	wwsympa/: wwsympa.fcgi: When data-source related parameters have been edited, sync_include is run 
	(not delegated to the task_manager)

	wwsympa/wwsympa.fcgi: check the UID at startup

   Bug fixes :

	wwsympa/wwsympa.fcgi: datasources did not appear after a search ; now use a common subroutine

	src/Commands.pm: 'SIG *' failed ; only unsubscribed from the first list

	src/: List.pm, etc/script/create_db.Pg, etc/script/create_db.Sybase, etc/script/create_db.mysql: 
	replace attributes_user type from 'text' to 'varchar(255)'; could make an "out of memory problem"

	web_tt2/admin_menu.tt2: [O.Lacroix] data source admin menu was restricted to listmasters

	src/mail.pm: Lang was not set correctly before parsing a template

	src/List.pm: [G.Bouteille] check if $user is defined first. Otherwise wwsympa would create loops

	wwsympa/wwsympa.fcgi: duplicate topics on the front page while changing the language

	wwsympa/: wwsympa.fcgi: prevent upload if no file was selected

	soap/: sympasoap.pm: [reported by F.Fareneau] CAS login failed on the SOAP interface if robot was not 
	the default one

	wwsympa/wwsympa.fcgi: could not save templates if mail_tt2/ directory did not exist

	[BugID 336] regenerated config.sub and config.guess files

	src/: List.pm: ldap include removed previous data about the user (overwritten with defaults)

	src/: List.pm, task_manager.pl: do not create tasks for lists that have no include data sources

	wwsympa/wwsympa.fcgi: [reported by E.Hoppenot] Moderators could not view concealed subscribers

	src/List.pm: Fix default for archive_encrypted_message

	src/List.pm, wwsympa/wwsympa.fcgi: [reported by E.Tinturier] : SSO-related user attributes 
	were not available in web template. There are now available in [% user.attributes %] hash. 
	Also made environment variables in both web templates and scenarios.

	src/etc/templates/us/invite.us.tpl: [BugID 329] orphan [ELSE] removed

	src/Commands.pm: [bugID 328] while setting reception options or unsubscribing for all lists, 
	skip hidden lists

	src/task_manager.pl: [reported by M.Bouissou] the bounce_score was not an integer.  
	This would generate an error with Sybase : "invalid input syntax for integer:"

	


4.2b.3		13 August 2004

   New features :

*****	We have both changed Sympa's template format and catalogue format
*****	
*****	Template file format is now TT2 (hhtp://www.tt2.org). Its format is similar
*****	to the old template format. Sympa.pl should detect that you are upgrading
*****	from an old version and will run the tpl2tt2.pl script to migrate your
*****	existing .tpl files to .tt2 format.
*****	
*****	We now use PO format for Sympa internationalization. This is a much more
*****	standard format which make it easier for translators to update catalogues.
*****	Because we could not automatically extract translatable strings from templates
*****	most of the translation job is to be done again and only 3 languages are supported 
*****	with this release (the one that have uptodate PO files)
*****	If you are concerned about translating Sympa, please read this document :
*****	http://www.sympa.org/howtotranslate.html

	po/Makefile: add stats on translation progress (cd po ; make stats)

	doc/sympa.tex.tpl, src/Conf.pm, src/Language.pm, src/List.pm, wwsympa/wwsympa.fcgi: 
	added 'supported_lang' parameter to restrict supported languages on the user interface

	src/List.pm: [requested by P.Garnier] allow non-anonymous bind in LDAP filters

	src/mail.pm, wwsympa/wwsympa.fcgi: [requested by L.Kirsher] add user gecos to From: field when 
	for messages composed on the web interface

   Changes :

	wwsympa/tt2/: [P.Levesque] Making the web interface XHTML

	src/sympa.pl: Change: sympa.pl dies if it was given unknown options

	src/Conf.pm: check that queuebounce and bounce_path parameters are not the same

	src/: tools.pl: [reported by O. Lacroix] previously made too many trials for safefork()

	wwsympa/tt2/: arc.tt2, arcsearch_form.tt2: default behavior of search engine will search in messages subjects


	src/sympa.pl: notify listmaster if antivirus check failed ; keep message as BAD

	src/: Conf.pm, tools.pl: check Sympa access to capath and cafile if defined

	po/hu.po: [S. Vizi] Update of Hungarian translations

	check_perl_modules.pl: Checking for Locale::TextDomain version instead of Locale::Messages because $VERSION 
	was not defined

*****	The 'msgcat' sympa.conf parameter is now obsolete. You should set the 'locaeldir'
*****	parameter instead.


   Bug fixes :

	src/tt2.pl: Fix problem with spaces between encoded words (bug 5462 of MIME::Words)

	src/: sympa.pl, tools.pl: as_singlepart() ; would fail on signed messages

	src/tools.pl: Default for $virusfound was 'undef' (generating errors) ; changed default to '0'

	src/Conf.pm, wwsympa/Auth.pm: [reported by D.Lamballais 'password_case' wwsympa.conf parameter was not used

	src/etc/mhonarc-ressources.tt2: [reported by Jeg] the viewmod page would propose a "reply to" and 
	"send it back to..." buttons

	wwsympa/wwsympa.fcgi: [reported by Chaosmedia] while editing a template, the template name could be altered 
	(lang element lost)

	wwsympa/: wwsympa.fcgi: [reported by J.Koret] Fix an XSS vulnerability

	src/tools.pl: [L.Veillon] incorrectly handled Uvscan code 12

	src/: tools.pl: [reported by J.Beretta] sympa would incorrectly change the MIME structure of multipart/alternative
	messages composed with Outlook.

	src/: tools.pl: [BugID 305] Missing <> around Message-id when messages are posted from the web

	src/: List.pm: rfc2369_header_fields parameter edition incorrectly handled

	wwsympa/wwsympa.fcgi: could not restore a list in include2 mode

	src/List.pm, wwsympa/wwsympa.fcgi: load-cert() failed with Mozilla because the content-type was forced to
	application/pkix-cert and the certificate was in PEM format. Now convert it to DER

	src/task_manager.pl: do not create 'sync_include' tasks if lists status is not 'open'.

	src/: List.pm, tools.pl: task_manager could previously be stuck on an include.lock file (when list had no subscriber).
  	Changes :	   - lock is release in List::get_first_user() if list has zero subscriber	   
		- move lock/unlock code to tools.pl     
		- no more perform a blocking lock ; iterate 10 times (with increasing delay) instead

	wwsympa/: wwsympa.fcgi: [BugID 301] Fix: do_arc_delete() subroutine was inadvertently removed 
	(while introducing SOAP features)

	soap/sympa_soap_server.fcgi, src/List.pm: Using error_message() subroutine where it is not defined

	wwsympa/: wwsympa.fcgi: [reported by Y.Edelist] wwsympa would log a warning if Net::LDAP was not installed, 
	even though it was not used : "Unable to use LDAP library, Net::LDAP required,install perl-ldap (CPAN) first"

	wwsympa/wwsympa.fcgi: restore d_edit privilege to document authors in the shared

	src/List.pm, wwsympa/wwsympa.fcgi: [BugID 295] "Internal Server Error" while accessing to modindex

	src/List.pm, wwsympa/wwsympa.fcgi: security issue : close a pending list then restore it make the
	list open even if the list owner is not authorized. Fixed.

	src/etc/: edit_list.conf: new include_xxx parameters should be hidden for owners

	configure.in: [reported by L.Veillon] [O.Lacroix] incorrect AC_ARG_WITH

	src/List.pm: [BugID 294] replacing [msg_header] in scenario files

	wwsympa/: archived.pl, bounced.pl: when in debug mode, log entries were not printed

	src/: List.pm: [reported by P.Maes] list creation request message could not be sent 
	(foo-owner User Unknown) because Return-path address was not yet created

	wwsympa/Marc/Search.pm: [requested by R.Marchand] decode Subject and From while searching in archives


	wwsympa/wwsympa.fcgi: [reported by V. Mathieu] incorrectly handled multiple enum parameters in edit_list

	src/List.pm: [reported by O.Lacroix &  C.Nahaboo] Move subject tagging upward to have homogenous tagging in web archives

	src/Commands.pm, src/List.pm, src/sympa.pl, src/tools.pl,  wwsympa/wwsympa.fcgi: 
	Now always set 'subscribed' DB field, whatever the user_data_source is.  New feature: Store a
  	data_structure_version file in etc/ to determine what changes need to be done to the DB.  
	Set 'subscribed' DB field if version < 4.2a


	src/: List.pm: set 'subscribed' to 1 if neither subscribed  nor included is set

4.2b.1		04 May 2004

   New features :

	[BugID 260] [C.Hastie] Add an extra reception option :"digestplain".
	The 'digestplain' reception option generates a digest of messages in a plain text format.
	All attachments are stripped out.

	[Gwenaelle Bouteille] added document moderation (in the document repository) and other shared-related work

	[requested by C.hastie] per list rfc2369_header_fields parameter	

   Changes :

*****	src/List.pm: Changed default for 'user_data_source' ('file' => 'include2')	

	src/etc/templates/us/digest.us.tpl: [C.Hastie] Changed encoding	of the table of content part to 8bit

	wwsympa/wwsympa.fcgi: [requested by O.LACROIX] notify all listowners, even if reception is nomail

	[Petr Prazak] Update Czech translations + some English typos fixed

	src/etc/script/arcrepair.pl: This script will fix a bug of Sympa 4.1


   Bug fixes :

	wwsympa/wwsympa.fcgi: notify user that the config will be updated soon when user_data_source changed 
	from anything to 'include2'

	src/sympa.pl: [bugID 115] missing newline after mail headers in command reports

	wwsympa/wwsympa.fcgi: previously created ML directory directly in expl/ directory if robot was also the default host.

	src/tools.pl: [O.Lacroix] failed to remove list directory (while purging) becaude finddepth() used to chdir. 
	rmdir() failed	with 'device busy' error

	wwsympa/wwsympa.fcgi: [reported by mwk] escape single quotes in archives search engine (could cause a 500 error)

	src/List.pm, wwsympa/wwsympa.fcgi: an empty document to	moderate (sympauser) would appear if there was nor shared space

	wwsympa/Makefile: [BugID 152] UMASK was not set when installing web templates

	wwsympa/Makefile: [BugID 205] wws_templates/ directory was installed with wrong permissions

	src/task_manager.pl: Do not warn/remove boucing members that are included

	doc/sympa.tex.tpl: [reported by V.Mathieu] Fix	include_ldap_2level example

	src/task_manager.pl: removing task files for unknown/closed lists

	src/List.pm: [reported by O.Thalmann] total of subscribers was not uptodate just after a DEL or ADD operation.
	Added 'nocache' option to the call to _load_total_db() in get_first_user()

	src/List.pm, src/sympa.pl, wwsympa/wwsympa.fcgi: [reported by V.Mathieu]  Ldap.pm was not loaded in sympa_soap_server.fcgi

	check_perl_modules.pl: [reported by V.Mathieu] FCGI 0.67 is required for the SOAP server.
	Corresponding error message : Can't locate object method "BINMODE" via package "FCGI::Stream"

	src/sympa.pl:  --make_alias_file must not create alias for list where list status is not 'open'

	src/tools.pl: [L. Labat] Antivirus check would fail under some circumstances (Unable to open xxx). 
	BODY filehandle was never closed

	wwsympa/wwsympa.fcgi: renaming a list if the list was moved to another robot with the same name

	src/sympa.pl: remove call to deprecated MIME::Head::decode()

	src/List.pm: [reported by V. Mathieu] removed 'visibility.private' scenario is considered the same as 
	'visibility.conceal'

	src/etc/scenari/send.editor, wwsympa/archived.pl: web archives were stored in the wrong directory

	wwsympa/wwsympa.fcgi: [reported by V. Mathieu] list of inactive lists did not consider the msg_count file was not ordered

	src/List.pm: sorting msg_count file when it is updated


4.1		15 March 2004

   Changes :

	src/etc/scenari/visibility.secret: [proposed by P. Young] : make the list visible to list owners and editors

	src/Conf.pm, src/List.pm, src/tools.pl,	src/etc/templates/fr/urlized_part.fr.tpl,
	src/etc/templates/us/urlized_part.us.tpl: urlized parts are now defined in a template. 
	Default is a text/plain part

	src/Message.pm: previously only messages that included SMIME checked signature were preserved,  
	now protect them even though signature might not be checked

	check_perl_modules.pl: IO::Socket::SSL is also used by CAS

	src/List.pm: List::load() should not return undef if user data sources were unreachable. 
	Otherwise List object cannot be	created

   Bug fixes :

	src/etc/templates/: fr/your_infected_msg.fr.tpl, us/your_infected_msg.us.tpl: [H.Gabor] 
	used incorrect variable	in template ([from] instead of [user->email])

	src/List.pm: prevent multiple custom_subject in message subjects with long threads

	src/sympa.pl, src/task_manager.pl, wwsympa/archived.pl,	wwsympa/bounced.pl: [BugID 262] 
	getpwnam instead of getgrnam used for setting a group id

	wwsympa/bounced.pl: [reported by H. Penning] bounced would process BAD files, ending with BAD-BAD-BAD...files created

	src/CAS.pm, src/Ldap.pm, src/List.pm, src/X509.pm, src/tools.pl, wwsympa/Auth.pm, wwsympa/wwslib.pm, wwsympa/wwsympa.fcgi: Change:
	now use eval() to check if perl modules are available ; this is
	required by recent Perl interpreters

	src/List.pm: [reported by C.Hastie]  [msg_header->xxx] variables were not parsed in scenario files

	src/sympa.pl: [D.Young] Ignore messages without MessageID in loop detection process

	src/task_manager.pl: [reported by O.Thalmann] regular expression was applied on full task file path. 
	Could leed to incorrect task files created (1077886032..expire_bounce._global) if path include dots ('.')

	src/etc/templates/us/welcome.us.tpl: [H. Gabor] Remove trailing '.'near password

4.0.b3		17 February 2004

   New features :

	wwsympa/wwslib.pm, wwsympa/wwsympa.fcgi,wwsympa/wws_templates/us/main.us.tpl: 
	Plugging of a on line html editor in the shared document feature

	wwsympa/:  new "list of	inactive lists" from the serveradmin interface

	doc/: Added documentation for include2

   Changes :

	doc/ [D. Dussart] Add Java SOAP client documentation

	doc/ Update doc: multiple virtual robots management

	src/etc/templates/, wwsympa/wws_templates/: [H. Maza] updating online help

	Makefile.am, configure.in,: [BugID 257] Add --with-lockdir to configure
        
	src/List.pm:  now creating a MIME::Entity in send_msg_digest() instead of Mail::Internet. 
	make it possible to use	body_as_string()

	src/Conf.pm: Initialize the %Conf::robots hash with default robot ; can be overloaded by a Virtual Robot

   Bug fixes :

	src/List.pm:  Sympa would die if a list custom_subject contained '+' chars

	src/smtp.pm: Exit if message could not be opened

	src/smtp.pm:  -m option was not logging sendmail calls

	wwsympa/: wwsympa.fcgi,	wws_templates/us/sso_login_succeeded.us.tpl: [reported by V.Mathieu] 
	when authenticating in the nomenu window, the user was not brought back to the main window

	wwsympa/wwsympa.fcgi: [reported by V. Mathieu & I. Kim] authentication failed with first defined CAS 
	or generic_sso entry (if at the beginning of auth.conf)

	src/: List.pm, smtp.pm: [reported by T. Herrero] : smtp::mailto() failed if the subscriber_table included 
	entries with empty email addresses. Some checks have been added

	src/List.pm: lowercase current subscribers email address before running a sync_include() 
	to prevent duplicate entries problem

	src/List.pm: [reoprted by A. Bernstein] indexes were not automatically added by sympa.pl

	src/List.pm: [BugID 250] Escape more chars in custom_subject ('(',')','-')

	src/List.pm: [I. Kim] : When using the generic sso, user_attributes were not parsed in authorization scenarios

	wwsympa/wwsympa.fcgi: Fix: remove bounces directory when purging a list

	src/List.pm: [reported by C. Hastie] Decode From: and Subject: header fields only in the table of content, 
	not in rfc822 parts

	src/List.pm: [reported by C. Hastie] : only loop once among subscribers in List::send_msg_digest()

	src/etc/script/sympa: [BugID 256] OSTYPE not defined on Solaris, now running 'uname -s' if OSTYPE is not defined


4.0.b2		12 January 2004

   Fix : 
	soap/Makefile: Failed installing sympa_soap_client.pl script


4.0.b1		09 January 2004

   Changes :

	Makefile.am: now using rpmbuild -ba (instead of rpm -ba)

   Bug fix :

	wwsympa/Auth.pm: 'regexp' in auth.conf paragraphs only apply to email addresses (not uids)

4.0.a9		23 December 2003

   New features :

	doc/ : Adding SOAP documentation

	soap/sampleClient.php: New sample PHP SOAP client

   Changes :

	src/tools.pl: More carefull controls in remove_dir subroutine

	wwsympa/wwsympa.fcgi: Purge list now remove archive directory


   Bug fixes :

	wwsympa/wwsympa.fcgi: 'failure missing email adresse or	cookie' errors 	
	when no alt email was defined

	wwsympa/wwsympa.fcgi: Error message : 'Insecure dependency in chdir while running 
	setuid at Find.pm' Now use addDirectory() and addFile() subroutines

	src/List.pm, wwsympa/wwsympa.fcgi: pending subscriptions for email addresses 
	containing strange characters (+) failed

	src/etc/mhonarc-ressources, wwsympa/wws_templates/, :
	request_confirm() calls should be used with submit

	src/etc/mhonarc-ressources: request_confirm() parameters changed

	soap/sympasoap.pm: respect Virtual robots organization

	src/sympa.pl: messages sent from the web interface could not be confirmed 
	(internal error : configuration for operation send is not yet performed by scenario)

	wwsympa/wwsympa.fcgi: could not validate pending subscriptions

	src/sympa_wizard.pl: default_shared_quota parameter have to be set in sympa.conf, 
	not in wwsympa.conf

	src/: List.pm, Log.pm, sympa.pl: [BugID 238] Error processing with --dump batch mode

	src/sympa.pl: [BugID 234] $host was declared twice ; now use $listname instead of $name

	src/List.pm: [BugID 235] the predefined variable $* is obsolete in the recent perl releases

	src/List.pm: 'listmaster' was not an accepted action ("Matched unknown action 'listmaster')

	src/List.pm: Fix: need to reconnect to DB to grant privileges

	src/sympa_wizard.pl: sympa_wizard would die with "undefined tolls::xx subroutine"


4.0.a8		02 December 2003

   New features :

	New SOAP server

	wwsympa/wwsympa.fcgi: Add robot to log entries

	src/List.pm: [K.Libby] : allow listmaster to ignore some scenario files at different levels 
	(global, robot, list), by creating :ignore empty files

   Changes :

*****	Change 'cas' entries format in auth.conf :
*****		host 		=> base_url
*****		login_uri 	=> login_path
*****		check_uri	=> service_validate_path
*****		logout_uri	=> logout_path


	src/etc/script/: sympa.spec, sympa.spec.rh80: [requested by J.Dalbec] 
	RPM should change /etc/mail/sympa_aliases user and group only if this file was created

	wwsympa/archived.pl: [S. Zhuk] Store the latest arctxt filename ; 
	this prevents the readdir in arctxt/

	src/CAS.pm: Add a CAS client module

   Bug fixes :

	src/etc/scenari/ send.privateandeditorkey send.privateandnomultipartoreditorkey: [reported by J. Nin]
	messages from moderator needed confirmation

	src/List.pm: [BugID 216][reported by T.Kindsigo]: "order by email" 
	clause was commented for MySQL
	
	src/etc/scenari/send.privateandeditorkey: revert rules order

	src/task_manager.pl: task_manager would die with "Illegal division by zero" error

	src/X509.pm: fix get_https the "verify_mode" in order to control the certificat validity.

	src/sympa.pl, src/task_manager.pl, wwsympa/archived.pl,	wwsympa/bounced.pl: 
	[BugID 219] set UID with POSIX::setuid(), required on FreeBSD

	rc/task_manager.pl, wwsympa/archived.pl, wwsympa/bounced.pl: [BugID 127] missing LoadLang()

	src/List.pm: [BugID 208] [M. Verdier]: in pending subscriptions page, if the name of the 
	requestor was not provided, check in user_table table

	src/List.pm: pass the option (nocache) from get_total() to _load_total_db(). 
	This will prevent incorrect total of subscribers displayed on the web interface after 
	adding or removing subscribers.

	wwsympa/wwsympa.fcgi: Total of subscribers was incorrect after subscriptions/removal ; 
	fixed check_param_in()

	wwsympa/wwsympa.fcgi: 'subject' was not decoded when used in reject messages

	wwsympa/wws_templates/: add missing rename_list template ; also move the "rename list" link
	fix archives renaming ; add virtual robot support and spool processing

	wwsympa/wws_templates/: Fix request_confirm() javascript function

	wwsympa/wwsympa.fcgi: a blank page was returned when accessing an unknown list

	src/: List.pm, sympa.pl: [BugID 222] Sympa did not detect incorrect actions in scenarios. 
	A message could be lost if the send scenario was corrupted.

	src/List.pm: [reported by P.Maes] on Solaris shared lock fails with "Bad file number" error. 
	This is due to the fact that flock() perl functions uses lockf() system call that requires the
	locked file to be open in read mode.

	wwsympa/wws_templates/: text in loginbanner refered to CAS servers, even though none had been defined

	wwsympa/wwsympa.fcgi: logout failed if auth.conf entries had been removed

	wwsympa/Auth.pm: contact LDAP directory in asynchronous mode

4.0.a7		18 October 2003

   New features :

	[requested by Internet2 Shib developpers] Support for a generic SSO system, compatible with
	Shibboleth. New 'generic_sso' auth.conf paragraphs. Sympa delegates the authentication process 
	to the SSO and is also able to use provided user attributes within authorization scenarios.  
***** 	New 'attributes_user' field in the 'subscriber_table' 
***** 	If you are using MySQL, Sympa.pl will change the database structure 
***** 	at startup. If using Pg, Oracle or Sybase you should ALTER the table
***** 	structure according to the provided create_db.x scripts.
	
	src/Conf.pm, wwsympa/wwsympa.fcgi: New CAS parameter in auth.conf : non_blocking_redirection 
	to disable automatic transparent redirection to CAS server

   Changes :

	wwsympa/archived.pl: Use standard tools::get_fileneme()	to find relevant mhonarc-ressources file.

	src/task_manager.pl: no more update update_date user field in the bounce process

	src/sympa.pl: Parse all message (except bounce) because Sobig was able to subscribe 
	via sympa@domain?subject=subscribe%20liste

	src/: Commands.pm, List.pm, tools.pl, task_manager.pl: [J.Dalbek] 
	Incorrect listname regexp in task_manager (ingnored lists with '+').  Now centralized regexps in tools.pl

   Bug fixes :

	src/List.pm: [K.Marrocco] incorrectly refers to column "attributes" instead of "attributes_user" (for Oracle)

	src/Archive.pm, wwsympa/archived.pl: [BugID 273] [C.Nahaboo]  filenames in archived spool
	(outgoing) were using current time and PID which is not enough when 2 messages for the same list are sent 
	within the same second. Now adding incremental number to filenames in outgoing spool.

	src/tools.pl: S/MIME related ; Sympa would die if it could	not find user certificate

	src/etc/scenari/visibility.private: visibility was not granted to list owner

	src/: bouncequeue.c, queue.c: [BugID 2006] Wrong exit codes

	src/List.pm: [BugID 204] [reported by M. Grund] db_env variables could not be set (usefull for Oracle)

	src/: Conf.pm, etc/auth.conf: Install a default auth.conf otherwise authentication would 
	not work without auth.conf.

	wwsympa/wwsympa.fcgi: [reported by M. Krafft] Javascript email addresses protection was not working 
	with owner/editor when	no gecos was defined

	web spam protection : corrected regexp (M2H_ADDRESSMODIFYCODE var) in archived.pl
	email list address now protected ; document authors in shared now protected

	wwsympa/wwsympa.fcgi: Fix a bug related to cas logout et virtual robot.

	wwsympa/wws_templates/: fr/loginbanner.fr.tpl,	us/loginbanner.us.tpl: 
	missing ENDIF ; loginbanner was broken

	wwsympa/wwsympa.fcgi: Fix bug related to CAS and virtual robot

	src/List.pm: wrong multiple_host_with_port regexp would	require a comma after a single hostname

4.0.a6		18 September 2003

   New features :

	src/Commands.pm, src/List.pm, src/sympa.pl: new variable available in authz scenarios :
	[msg_encrypted] is set to 'smime' if message was S/MIME encrypted

	src/: Conf.pm, List.pm, tools.pl: [C. Mock] : 
		-allow separate signing/encryption S/MIME keys for users, lists, 
		sympa; keys are extracted from the received signed emails, analyzed
		for the key usage extensions, and saved either as before (when they
		allow signing and encryption) or with a file extension
		"@enc"/"@sign" for separate keys; cf extract_certs() in tools.pl
		for saving them, parse_smime_cert() for getting all the info out
		(this also encapsulates the issue of email addresses in the DN vs
		SubjectAlternativeName), and find_smime_keys() to encapsulate the
		decision which key to use for signing, encrypting and decrypting.
		wwsympa has been altered accordingly to deliver either the
		encryption certificate or the "both purposes certificate" from
		"load cert".  

		- allow multiple "generations" of certificates for
		lists + sympa, so that you can renew your certs before they expire
		and run old and new certs alongside, so you don't need all your
		users to switch at the very same moment; this is also encapsulated
		in find_smime_keys().
  
   Changes :

	wwsympa/wwsympa.fcgi: [C. Mock] Change: patched mod_ssl to extract the  SubjectAlternativeName 
	X509 email storage variant and deliver it in $ENV{SSL_CLIENT_S_EMAIL}; this is checked in wwsympa
	in preference to $ENV{SSL_CLIENT_S_DN_EMAIL}; need this for our certificates which contain the 
	email address _only_ in the SubjectAlternativeName.


   Bug fixes :

	wwsympa/wwsympa.fcgi: [C. Mock] Fix: set content-type of list cert depending on user-agent, 
	so IE can automatically import the file too; also, send CRLF terminated certificates with the
	certificate itself only (no comment lines), also for IE. Certificate installation from the web 
	interface works for netscape and IE now.

	src/Commands.pm,src/sympa.pl: [C. Mock] Remove unusefull SMIME code, performed in Message.pm


4.0.a5		12 September 2003

   New features :
	
	Sympa can rely on CAS single sign-on system (Yale central Authentication Service)
	for authenticating users. Check auth.conf section in documentation for more details.
	Sympa first tries a transparent login, if it did not succeed, it then prompts the user
	for his favourite CAS server.
*****	auth.conf format has changed ; if you had a previous auth.conf file you 
*****	should change it according to the new format
*****	To keep the existing authentication bahovior you should add the following entries at the
*****	end of your existing auth.conf file :
*****		    user_table
*****		    regexp                 .*


   Changes :

	doc/: Reorganize documentation with authN and authZ chapters

	doc/sympa.tex.tpl: Change: rename 'scenario' to 'authorization scenario'
	

4.0.a4		14 August 2003

   New features :

	Automatic bounce management based on 2 tasks :	  
		* eval_bouncers sets a bouncing score for bouncers.	  
		* process_bouncers will either notify or remove them  The list config defines 2 bouncing
		levels (rate, action and notification).
*****	You should update your database structure based on the create_db.xxx scripts
*****	unless you are using MySQL (Sympa tries to update the database automatically at startup)

	New purge_orphan_bounces task that removes archived bounces files concerning old subscribers

   Changes :

  	Clean code related to replicat LDAP hosts.  
***** 'port' parameter no more supported in include_ldap_query paragraphs



   Bug fixes :

	src/: List.pm, tools.pl: [BugID 153] [reported by G. Tellier] E-mail addresses 
	containing an apostrophe were rejected

	src/tools.pl: [H. Ulliac] create_list templates were not searched in the robot directory

	wwsympa/cookielib.pm: Fix: could not set 'sympalang' cookie

	INSTALL: [micah AT riseup.net] Fix HTML documentation URL

	src/alias_manager.pl: [Zakaria] unset PATH before anything else ; 
	store the lock in a writeable directory
	
	src/List.pm: [BugID 179] [user->xxx] variables were never available in scenarios

	src/List.pm: [reported by R. Pfeiffer & T. Oger] recent	versions of DBD::mysql 
	have changed the behavior for tables() : Table names are surrounded by ``. 
	Sympa considered Sympa DB did not have the right structure.

	src/Conf.pm: [reported by P. Machard] remove trailing spaces in robot.conf

	src/tools.pl: tools::split_mail did not return 1 ; antivirus was not applied on messages


4.0.a3		17 June 2003

   New features :

	[Benoit Ortner] web archive management ; allows to remove multiple months and/or
	get and archive (zip) or archive month.

	src/List.pm: Sympa is now able to create its database (try as root) and tables.  
	Change: if database is	unreachable, Sympa daemon dies to prevent blocking of Server
	startup

	'remove_list' sympa.pl option to remove a list from the command line

	[proposed by J. Douglass]: Add SSL support while authenticating to LDAP server New
	'use_ssl', 'ssl_version' and 'ssl_ciphers' parameters in auth.conf

	src/parser.pl, wwsympa/wws_templates/us/viewbounce.us.tpl:
	[reported by G. Helou] Add escape_html option to the parser.  
	This was required to escape <> chars in bounces

	[requested by Eric Sandquist] : db_additional_subscriber_fields (declared in sympa.conf) 
	can now be edited in editsubscriber page (ENUM are used)

	src/List.pm, src/etc/script/create_db.mysql, wwsympa/wwsympa.fcgi: (incomplete) 
	New subroutine for logs in DB. It could provide data for statistics

	INSTALL, src/etc/script/sympa.spec, src/etc/script/sympa.spec.rh80: 
	Add quick install notes

	src/etc/script/mod2html.pl: provide a script for generating missing HTML views of moderated messages

	src/etc/script/: Makefile, testlogs.pl: new script "testlogs.pl" that use sympa.conf file 
	and just add a	line to logs.

	wwsympa/wwsympa.fcgi: new suported parameter 'failure_referer' for login action

	src/etc/mhonarc-ressources, wwsympa/wwsympa.fcgi: 	
	Add a button in archive to send back a message to a user.  Feature not complete :	 
	-encrypted message ?	-add some headers "resent-from" resend-date ?

	src/List.pm: [V. Mathieu] allow usage of multiple ldap host for include_ldap:
	ldap1.dom.net:port,ldap2.dom.net:port

	wwsympa/wwsympa.fcgi: New "Rename list" button. (move and rewrite of pending messages in
	spool is not yet implemented).


   Changes :

	Makefile.am, src/etc/script/sympa.spec:  these changes are related to the RPM building : 	
		+ Add missing variables to build sympa.spec for RH	  
		+ require 'smtpdaemon' with RH, 'MailTransportAgent' with MDK   
		+ ./configure is done at RPM build time with relevant options   
		+ correct path to sympa_wizard  
		+ fix problems with the %files section, when changing directories	  
		+ missing %changelog

	[B. Ortner] : no more use Locale::Msgcat for NLS management, home-made	functions instead.  
	This solves MacOS X users problem that don't have gencat available ;-)

	Makefile.am, configure.in: check suidperl and mhonarc are installed

	src/etc/create_list_templates/: [S. Hornburg]: German translation, 
	English text for hotline type, Spelling fix for English

	src/List.pm, wwsympa/wwsympa.fcgi: HTML version of moderated messages were generated by WWSympa, 
	but recent release of MhOnArc (5.6) refuse to run SetUID. Therefore mhonarc is now run by
	sympa.pl when storing moderated messages.
		
	src/etc/templates/us/welcome.us.tpl: [ben AT socialtools.net]
	Grammatical error in English translations

	wwsympa/wwsympa.fcgi: allow to have  multiple virtual robots on the same http_host

	check_perl_modules.pl: Require recent LDAP modules with SSL features

	Ignore topics if no topics.conf was found. Also install a default topics.conf

	wwsympa/wws_templates/us/main.us.tpl: [reported by Antoine AT rezo.net] : complete cookies 
	warning message, Javascript might not have cookies read access

	doc/sympa.tex.tpl: Complete documentation about mail aliases

	Makefile.am: use different SPEC file for RedHat RPM building

	src/etc/script/sympa.spec.rh80: only require packages for standard Sympa installation 
	(not LDAP, SSLEAY).  Some package have different naming conventions with Mandrake and RedHat

	Makefile.am, src/etc/script/sympa.spec:
	[reported by G. Paressant] : make languages no required since NLS or no more compiled

	src/etc/script/: Search functions in INITDIR
	
	check_perl_modules.pl: set FTP Passive mode for CPAN install to work behind a firewall

	wwsympa/wwsympa.fcgi: [from Guy Paressant] Remove in ldap_authentication a unusefull anonymous bind

	check_perl_modules.pl: Net::LDAP 0.27 is required if using multiple ldap host definition.

	src/: List.pm, Log.pm, sympa.pl: use &fatal_error() instead of exit. 
	fatal_error() now notifies the listmaster

	src/: List.pm, etc/script/create_db.Pg: [E. Dreyfus] [reported by pamelant AT nerim.net] 
	Postgresql 7.3 has no support for not SQL standard type 'datetime'.  
***** If you are upgrading from	a previous Sympa version, you should update 
***** your sympa DB as	follows : 
***** ALTER TABLE subscriber_table CHANGE date_subscriber timestamp with time zone NOT NULL; 
***** ALTER TABLE subscriber_table CHANGE update_subscriber timestamp with time zone;

   Bug fixes :

	** NOW refer to the Changelog file for ug fixes **

4.0.a1		14 November 2002

   New features :

	[requested by V. Mathieu]: Add names to data sources, also allow sorting from REVIEW page

	[O. Lacroix] New feature: new 'FastForward' and 'Rewind' button in archives

	New web templates translation system (first version)

   Changes :

	sympa_wizard.pl: Change: make the wizard less quiet

	src/Conf.pm: detect 'SET listname mode' commands as miaddressed commands

	check_perl_modules.pl: Require recent Mailtools because	of mailx security problems

	src/List.pm: lots of errors were logged in 'debug' log level ; now use 'err'

	wwsympa/wws_templates/: remove unusefull 'domain' column in REVIEW page

	src/tools.pl: Also look for templates in the list's templates/ subdir
	
	wwsympa/wwsympa.fcgi: Fix: re-evaluate important vars before parsing templates ; 
	things change so fast....

	wwsympa/wwsympa.fcgi: [path_info] available in web templates

   Bug fixes :

	src/List.pm: [reported by M. Beheregaray] : Sympa.pl would die with error "unmatched [] in regexp" 
	if custom_subject contained '[]' Now do some custom_subject cleanup

	src/tools.pl: Fix incorrect openssl argument rtelated to null capath or null cafile argument.

	[reported by G. Paressant] : if	email entries returned by List::_include_users_ldap() contained
	spaces characters, then the database update could lead to a "duplicate entry error", 
	causing the List::sync_include() to fail

	src/List.pm: [BugID 63] [reported by G. Paressant]: sync_include() made the task_manager die if 
	duplicate emails where found in SQL or LDAP query result

	wwsympa.fcgi: wwsympa would die	under certain circumstances if LDAP Bind failed with error message
	: "Can't call method "code" on an undefined value"

	wwsympa would prompt a 'template error' if an LDAP user requested a password reminder when
	the authentication_info_url URL was not defined in auth.conf. Now return an error message.

	src/List.pm: reset 'get_subscriber' cache entry after an update

	in inckude2 mode, show 'subscribe' button even if user is included

	wwsympa/wwsympa.fcgi: with 'include2', included users could not be added ; 
	included+subscribed users could not be deleted

	doc/:Missing	documentation for 'authentication_info_url' in auth.conf

	doc/sympa.tex.tpl: Fixe cookie format description

	doc/sympa.tex.tpl: [Janek Hiis] Fix AVP example

	[reported by R. Salmon] rejection of pending lists was not coded

	src/Commands.pm: Sympa would use part of the email address as the user name.  
	Fix regular expretion usage

	src/sympa.pl: 'antivirus_notify' was only used in message forwarding context

	wwsympa/wwsympa.fcgi: [O. Lacroix] wrong comparison operator for reloading wwsympa

	wwsympa/wwsympa.fcgi: [reported by Philippe Amelant] incorect command for remove_aliases

	src/sympa_wizard.pl: [BugID 58] [reported by Xavier AT cs.gouv.qc.ca] : sympa_wizard used temporary 
	files in /tmp/ ; if /tmp/ was an a different filesystem than /etc/, then the rename()
	would fail. No more use temporary files.  Change: only warn if rename() of previous cong files failed

	src/sympa.pl: [BugID 70] [H. Maza] :  In the final report of expire process, 
	the first subscriber is skiped, no matter his subscription is confirmed ot not.

	src/Commands.pm: [BugID 70] [H. Maza] :  In many cases,	uncorrect list of 
	subscribers to be notified, or uncorrect list of unconfirmed subscriptions, 
	is reported during an expire process. In addition, sympa reports an error : 
	"Command not understood: ignoring end of message."

3.4		15 October 2002

   Changes :



   Bug fixes :

	[reported by O. Lacroix & V. Mathieu] Better syntaxical checks on email addresses ; 
	also lowercase

	src/List.pm: 'db_env' no more a multiple parameter ; variables/values pairs should be 
	separated by ';' Fixes the problem with 'ARRAYxxxx' appearing in the 'db_env' entry of 
	edit_list web form

	src/etc/list_aliases.tpl: Fix: incorrect alias parameters
	
	[BugID 50] allow (privileged) listowner to close/restore list.  
	Also allow shared opening/closure

	wwsympa/wwsympa.fcgi: [BugID 52] Fix : Moderated messages were not accessible from the web 
	interface. WWSympa runs as user	'sympa' and the mhonarc process that generates HTML version of
	moderated messages also requires to run as user 'sympa'. Obviously Perl refused to allow this 
	script to run as SetUID 'sympa' because	mhonarc had double quotes (") in its argument.


3.3.6b.6	03 October 2002

   Changes :

	src/alias_manager.pl: Requires at least 3 arguments

   Bug fixes :

	wwsympa/wwsympa.fcgi: No more 'alias_manager' parameter in sympa.conf

	src/parser.pl:  $current_output was not set when working on a
	file descriptor Bug description: the parser would append output to
	the latest arrayref used, whereas fd is not used

	wwsympa/wwsympa.fcgi:  vars used in list_aliases.tpl had changed

	wwsympa/wwsympa.fcgi: Fix: parse_tpl() requires a reference to a
	file descriptor as a parameter


3.3.6b.5	02 October 2002

   New features :
	
	check_perl_modules.pl: provide further information about required Perl modules

	wwsympa/wwsympa.fcgi:  Allow non-anonymous bind in auth.conf. 
	New bind_dn and bind_pawword parameters


   Changes :

	Makefile.in, configure, configure.in: [Julien Wajsberg] Use virtual_aliases as 
	default postmap_arg

   Bug Fixes :

	src/List.pm: [reported by A. Bernstein] [BugID 45] robot-related variable 
	used in summary.tpl were not available. List::send_msg_digest() was expecting 
	an additional $robot parameter

	src/List.pm: don't add a 'dir' entry in 'admin' ; it was considered a list parameter

	wwsympa/wwslib.pm: Reported by J. Andre better checking of email syntaxe

	src/List.pm: [Paul Marquess] [reported by Jean-Claude Ben, Harri Czesla, Glenn Gillis]  
	with DB_File (Perl module) 1.805, Sympa processes died with the following error message :    
	Key 'compare' not associated with a code reference at /var/sympa/bin/List.pm line 918 
	Compare callback had to be changed to DB_BTREE->{compare} = \&_compare_addresses

	src/sympa.pl: Use list domains instead of list host for making 	aliases

	src/: task_manager.pl: task manager error management

	[Harry Westerman] Fix web templates, were based on release 3.3.3


3.3.6b.4	19 September 2002

   New features :
	
	[Harry Westerman] Complete translation to Dutch

	src/sympa.pl: New '--make_alias_file' option to build a complete alias file

	wwsympa/wwsympa.fcgi: to avoide httpd restart when installing
	some change wwsympa/wwsympa.fcgiserver exit just after serving a
	page if wwsympa.fcgi as changed on disk.. Then Apache launch a new
	fastcgi server

	[requested by Janek Hiis] : custom subject can now refer to list variables 
	([list->name] or [list->sequence])

   Changes :

*****	wwsympa.conf parameter 'alias_manager' no more used
*****	Sympa now always uses alias_manager.pl script ; installed aliases can be customized 
*****	via the 'list_aliases.tpl' file (can be done via sympa admin web interface)

	New Message.pm module that provide a complex message object including S/MIME information.  
	This should fix the bug	related to moderation of crypted messages

	src/List.pm: query database for total of subscribers, if no LIMIT was given or if first page

	wwsympa/wwsympa.fcgi: [reported by Vincent Mathieu] Add filename to upload log

   Bug fixes :

	[reported by Sergiy Zhuk] Fix: umask was considered a decimal number ; now taken as octal

	wwsympa/wwsympa.fcgi: [Herve Maza]:  missing $robot parameter to load_scenario_list() 
	subroutine. Robot-specific d_read and d-edit scenarios were not available.

	src/List.pm: wwsympa died (in request_action) if scenario had incorrect format

	wwsympa/wwsympa.fcgi: reply-to problem from web archives

	src/X509.pm: SSL and LWP were required ; made them optional

3.3.6b.3	10 September 2002

   New features :

	src/parser.pl: a arrayref can be used by parse_tpl() as an output ; 
	template can also be an arrayref

	New include : include_remote_sympa_list allow to fetch a list from
	a remote sympa server using https only. New action dump use as the 
	server part of sympa to sympa subscribers importation

	src/X509.pm: X509.pm currently just include subroutines for sympa
	to sympa https communication. All S/mime should be moved from
	tools.pl to X509.pm as soon as ther use openssl perl module instead
	of openssl commands.

*****	src/etc/script/p12topem.pl: Now can be used to install a
*****	certificate to sympa robot itself.  Usage  
*****	P12topem.pl --pkcs12 <pkcs#12_cert_file> --robot <robot> 
*****	p12topem.pl --pkcs12 <pkcs#12_cert_file> --listname <listname>

	wwsympa/bounce-lib.pl: Now recognize "x-failed-recipients:" comma
	separated list of recipient.  (exim). Reported by Stefan Hornburg
	<racke AT linuxia.de>
  
*****	Introduce a 2 new parameters in sympa;conf : spam_protection and
*****	web_archive_spam_protection. They are use to define the way that 
*****	sympa protect email adrersses from spambot. "cookie" "at" "javascript" "none"
*****	Because mhonarc ressources as changed, you MUST rebuild all archives
*****   otherwise old archive are unprotected. (Use rebuild button in sympa
*****   admin page).

	New [SETOPTION ignore_undef] in parser

	src/sympa.pl: Loop prevention based on X400-Content-Identifier
	header field

	add [current_date] in scenarios

   Changes :

	wwsympa/wws_templates/us/admin_menu.us.tpl: Revised by john
	Douglas for a better organisation.

*****	src/List.pm: now sympa.pl dump any list (even if user_data_source = file)
*****	in a single file $list->{'dir'}/subscribers.db.dump

	nls/de.msg: [Andreas Krueger] small improvements

	src/List.pm: if cannot connect to DB, keep trying, do not
	die (this prevent from sending hundreds of worning messages to
	listmaster)

*****	src/Commands.pm: 'lists', 'lists.header' and 'lists.footer' file no 
*****	more recognized by Sympa. 'lists.tpl' template used instead

   Bug fixes :

	src/List.pm: (related to include2 implementation):
	_include_users_xxx() not properly working on tied hash. Failed
	including duplicates in 'include' mode

	src/List.pm: Reported by Sergiy Zhuk. Fix incorrect number of
	subscriber when deleting.

	wwsympa/wwsympa.fcgi: Fix wwsympa infinite loop when adding
	subscribers with incorrect adress !

	Fix moderate.xx.tpl templates : Incorrect From, breaking SMIME signatures ; 
	add correct reply-to header field

	src/sympa.pl, src/task_manager.pl, src/tools.pl,
	wwsympa/archived.pl, wwsympa/bounced.pl: [Marcin Deranek] Fix:
	Previously group_id and user_id were always set to user_id. Now use
	getgrnam() instead of getpwnam()

	src/tools.pl: better log in virus_infected

	wwsympa/wwsympa.fcgi: Reported by John Douglass john.douglass AT
	oit.gatech.edu : Allow listowner to close a list.

	Makefile.am: Fix: wizard was never started

	src/etc/script/sympa: ps -A|grep failed because of a space
	char ; could not stop processes.  Also supress removal of .pid file
	(sympa processes do it themselves)

	src/task_manager.pl: Use Digest::MD5 instead of MD5

	wwsympa/wwsympa.fcgi: [reported by S. Medard] do_arcsearch_id
	failed if key_word (Message-ID) contained '$' character

	Makefile.am, src/Makefile, src/etc/script/Makefile: do not
	install scripts and aliaswrapper in bindir (install them in
	sbindir and libexecdir instead)

	wwsympa/wws_templates/de/compose_mail.de.tpl: [reported by Hanke
	Penning] could not reply to the sender

	src/sympa.pl: Sympa.pl would die if smime_decrypt() failed

	src/sympa.pl: Sympa would consider application/pkcs7-mime;...; 
	smime-type=signed-data as crypted messages and would die while trying to decode them

3.3.6b.2	31 July 2002

   New features :

	###############################################################
	New 'include2' user_data_source ; should replace 'include'.
	Users cache is stored in the main database instead of using a 
	DB_File. Updates of the cache are performed by the task_manager

	* Advantages

        	+ lower memory usage :
        	Sympa processes used to use lots of memory when managing
        	big (>200 000) 'include' types of lists. The list of 
        	subscribers is now stored in the database.

        	+ updating the cache :
        	Cache update is now performed by the task manager. It used to
        	be performed by sympa.pl and wwsympa.fcgi.

        	+ bounces management : 
        	Because included users now have an entry in subscriber_table,
        	their bounces are managed like any other subscribed users

        	+ user reception options :
        	Included users can set their reception mode

	* Subscriber_table changes

		The subscriber_table Db table has 3 new fields :

        	  	* included_subscriber
        		This boolean value tells if the user has been included into
        		the list

        		* subscribed_subscriber
        		This boolean value tells if the user has subscribed to the
        		list

        		* include_sources_subscriber
        		Comma-separated list of include source IDs. It is not 
        		exploited yet, but could be used to :
                	  - set different TTL for each include data_sources
                	  - show include sources in the REVIEW pages
                	  - tell the user he/she has been included as part
                	  of X,Y external datasources

	* Task manager 

	New 'sync_include' list task : 
	Only one model (ttl) is available. TM checks if the list is
	in 'include2' mode and runs the sync_include. The syn_include()
	does an in-memory comparison of already cache users list and
	included users list ; subscriber_table is then updated. 	
	List::delete_user() and List::add_user() have been optimized
	to make sync_include() faster.
	A new task is created based on 'ttl' list parameter.

	New 'purge_user-table' global task :
	Each time a user unsubscribes the user_table had to be cleaned ;
	this was time-consuming. This is now performed periodically
	by the 'purge_user-table' task. 


	* Changes of commands behavior

	Reception options 
	Included users can now set their reception mode

	Subscription
	Included users can moreover subscribe to the list (if allowed by scenario).
	It allows them to remain in the list though they might no more be included.

	Review (web only)
	Foreach user, tell if he/she is included or subscribed


	* Locking while updating cache

	An exclusive lock is performed by sync_include() to prevent other processes
	from accessing an uncomplete list of users. A shared lock is set in 
	List::get_first_user(), then released for the last List::get_next_user().
	File locking is performed on ~sympa/expl/<list>/include.lock file

	* Stats file 

	A new value has been added to lists 'stats' file : last_sync
	I is the date (epoch format) of the last include cache update.

	* List configuration edition

	When the list configuration has been changed (from the web), then :
	        * if we changed a datasource-related parameter
        	=> the current 'sync_include' task is removed from the task
        	spool, to make cache update happen as soon as possible.

        	* if user_data_source changed from 'database' to 'include2'
        	=> existing subscribers have their 'subscribed_subscriber' DB
        	field set to '1'

        	* if user_data_source changed from 'include2' to 'database'
        	=> existing included users are purged from subscriber_table

	* TODO

        + sending messages when users are included/decluded (should be an option)
        + migrating from 'include' to 'include2'
        + showing user datasources within REVIEW page
        + adding "sort by datasource" in REVIEW page
	#####################################################################


   Changes :

	database structure has	been extended for 'include2' user_data_source
*****	New database fields added to subscriber_table
*****	With MySQL :
*****		ALTER TABLE subscriber_table ADD subscribed_subscriber enum ('0','1');
*****		ALTER TABLE subscriber_table ADD included_subscriber enum ('0','1');
*****		ALTER TABLE subscriber_table ADD include_sources_subscriber varchar(50);
*****	If you are using another RDBMS, please check create_db.xxx scripts

	src/etc/script/sympa: [Pierre Métras] Changes: adapt statup
	script for Solaris (second episod)	 
		* comparison operator with SH is '=' ('==' is Bash-specific)    
		* use PIDDIR    
		* check if process is running before stopping 

	src/task_manager.pl:  create missing task before exuting
	existing ones.	It allows faster excution of newly created tasks

	src/task_manager.pl: use the task model to create a new
	task, not a simple copy of previous task. This was required for
	sync_include()

	wwsympa/wwsympa.fcgi: call List::add_user() and
	List::del_user() with multiple emails as parameters

    Bug fixes :

	wwsympa/wwsympa.fcgi: Fix: prevent document edition/deletion by
	anonymous users in the shared

	src/tools.pl: [Robert Marcjand] Fix virus detection : With
	McAffee, MIME Exploit gen virus are found, but are not detected by
	the Sympa Software because the report is "Found application"
	instead of "Found the .... virus"

	src/tools.pl: [Thibaut Dabonneville] Fix AVP virus detection

	src/tools.pl: Fix duration_conv()

	src/List.pm: make sql_query regexp case-insensitive

	wwsympa/wwsympa.fcgi: [reported by Robert Marchand] When
	closing a list the subscribers.db.closed was not created (wrong
	path)

	Makefile.am, Makefile.in, src/etc/sample/Makefile: [BugID
	0000019] Fix: EXPLDIR (set by configure --with-expldir) was not
	used at directory creation time

	src/List.pm: [BugID 0000024] When URLIZINg attachments which
	contain a single Content-Type header without attributes, the
	attachment saved contains an additional newline after the
	Content-Type header on disk.

	wwsympa/wwsympa.fcgi: [reported by Denis Creusot] missing
	closedir() could leed to a 'too many open files' problem

	wwsympa/wwsympa.fcgi: [Laurent.Aublet-Cuvelier] Fix scenario_test
	action : authentication's methods do not appear

	src/sympa.pl: [reported by Robert Marchand]  message confirmations 
	request was not sent in the proper language (robot lang instead of list lang)

	nls/: et.msg, ro.msg: [Olivier LACROIX] Fix: NLS compilation
	(with gencat) failed with HP-UX


	src/task_manager.pl: [BugID 0000026][Stephen Braswell] Fix:
	task_manager.pl now removing its PIDfile



3.3.6b.1	26 June 2002

   New features :

	src/tools.pl: Sympa working with Clam antivirus (http://clamav.elektrapro.com/)

	src/Conf.pm, src/sympa.pl: Add 'antivirus_notify' sympa.conf parameter to 
	disable antivirus notification

	src/List.pm: [list->total] variable made available in scenarios

	[Vesa Alho] Finnish translations of templates

	src/etc/mhonarc-ressources: [Georg Bauer] German translation of	Mhonarc ressources

   Changes :

	src/List.pm: [proposed by Guy Paressant]  make LDAP queries asynchronous. 
	Entries are fetched on the fly.  This saves lots of memory while building big 
	inlude type of lists

	wwsympa/wws_templates/fr/list_menu.fr.tpl: Hide owners/editors email addresses

	wwsympa/wws_templates/us/main.us.tpl: Language menu now available in login page

	src/List.pm: [reported by gilles tellier] Add a Fileneme 
	message-header.txt or message-footer.txt name for compatibility with outlook.

	src/etc/templates/us/your_infected_msg.us.tpl: Adapt virus alert
	message for spoofing virus

*****	src/tools.pl: replace trusted_ca_option with cafile and capath in
*****	sympa.conf

	src/etc/script/sympa.spec: [Zenon Panoussis] Added check
	and aliases file and link for Courier.	Changed "Requires: apache"
	to "Requires: webserver" for compatibility with apache2


   Bug fixes :

	src/List.pm: [reported by Fabien Salvi] made Sympa die if sender 
	address contained '*'

	src/List.pm: [reported by Marty Pauley] Email comparison
	performed with a regexp. This could leed to incorrect comparison if
	email contained '+' chars

	src/task_manager.pl, wwsympa/bounced.pl: [reported by Hanke
	Penning] Fix: Zombie sendmail processes were not made free

	src/List.pm: [reported by Sergiy Zhuk] if a list was in
	'user_data_source include' and had no include source, the List
	object could not be created.


	src/List.pm: [reported by Adam Bernstein] 'not_me' reception
	option did not have the expected behavior

	src/etc/script/sympa: [reported by J.P. Dalbec] 'status' action

	src/sympa.pl: [reported by Christophe Ruhlmann] do not
	reject mails from sender starting with 'sympa' ; perform exact
	match on the local part

	src/tools.pl:  suppress '2>&1' when calling openssl ; this syntax 
	is shell-dependant

	wwsympa/wwsympa.fcgi: write cookie even if empty (otherwise previous 
	one was used) Set 'which_info' once only, before template parsing

	wwsympa/wwsympa.fcgi: [reported by Jeg] file renaming failed
	in shared root directory

	wwsympa/wwsympa.fcgi: [reported by Jeg] desc files were not renamed

	wwsympa/wwsympa.fcgi: [reported by Jeg] check URL renaming

	wwsympa/wwsympa.fcgi: [reported by Jeg] filename containing %xx chars 
	could not be accessed/edited/deleted.  Supress the global unescape_chars() 
	call in get_parameters() Also fix escaping in do_editsubscriber()

	wwsympa/wwsympa.fcgi: [reported by Jeg] '/' not allowed in filenames

	wwsympa/wwsympa.fcgi: [reported by patrick]: For a list of files/dirs wwsympa 
	(in the shared section) list the "last update time". However it is wrong, 
	since it is based on the ctime instead of the mtime.

	wwsympa/wwsympa.fcgi: [Adam Bernstein] Remove DOS linefeeds (^M)
	that cause problems with Outlook 98, AOL, and EIMS

	src/sympa_wizard.pl: [reported by H. Ulliac] missing task_manager_pidfile 
	'expire_bounce' => 'expire_bounce_task'

	src/Commands.pm: [reported by Philippe Allart] Bad report when 'REMIND *' 
	is not allowed

	src/Commands.pm, wwsympa/wwsympa.fcgi: Fix Gecos management with subrequest

	src/List.pm, wwsympa/wwsympa.fcgi: [Sergiy Zhuk] check listname for '-request' 
	'-unsubscribe'... in List::new() and wwsympa::create_list()

3.3.5		14 May 2002

   New features :

	doc/Makefile: now generate sympa.pdf

   Changes :

	src/Conf.pm, src/task_manager.pl: Rename task-related sympa.conf 
	parameters (append _task). Restore default for 'global_remind' parameter

	Makefile.am: rename doc target documentation (because of the
	confusion with doc directory)

   Bug fixes :

	wwsympa/wwsympa.fcgi: [reported by Olivier Lonni] when creating a list, 
	'other' now means no topic


3.3.4b.9	07 May 2002

   New features :

	New "your_subscribtions" HTTP cookie to carry subscriptions in
	all templates. [get_which] is a table with one  entry per list
	[which_info] is a hash using listname keys and SUBJECT and HOST as value

	Topics are now available in all templates

	[Frederic Connes] add postfix-style alias management in Sympa New Makefile
	parameters POSTMAP, POSTMAP_ARG and VIRTUAL_ALIASES New script
	postfix_manager.pl. New C wrapper virtualwrapper.c

	sympa_wizard.pl: new script to help filling sympa.conf & wwsympa.conf
	at first installation

   Bug fixes :

	src/mail.pm: [reported by Anas Agoumi] S/MIME signed
	templates sent from the web (welcome/bye) where empty messages.
	This was due to same file descriptor used in different contexts and
	rename() performed too early

	src/List.pm: Can't use string ("mail") as an ARRAY ref
	while "strict refs" in use at /home/sympa/bin/List.pm line 6735
	while installing pending lists _save_admin_file() would modify the
	List object (change array references to scalar)

	wwsympa/wwsympa.fcgi: skip auth.conf if empty This prevents 
	'require Net::LDAP' to be run, only because auth.conf exists

	wwsympa/wwsympa.fcgi: [reported by O. Lonni] Scalar list
	parameters could not be reset Because of the split config edition
	form, empty parameters were skipped.  All parameters editable in
	the form are now processed
	
	wwsympa/wwsympa.fcgi: [reported by Frederic Connes] 
	could not empty parameters such as web_archive quota.

	[reported by Frederic Connes] admin page help always appeared in its US
	english version

	[Frederic Connes] Typography fixes in French mail and web templates

	wwsympa/wwsympa.fcgi: [Frederic Connes] set default value for bounce rate

	src/Conf.pm: also skip lines beginning with '\s+#'  in auth.conf

	get 'info' as default for 'homepage' in editfile ; also detail documentation


   Changes :

	src/parser.pl: Use syslog instead of STDERR

	src/parser.pl: Prevent loops when parsing/including files

3.3.4b.8	25 Apr 2002

   New features :
	
	[Lauri Jesmin] Complete	translation to Estonian

	[Valics Lehel] Web templates translation to Romanian

	src/List.pm: [proposed by Lauri Jesmin] Add Erros-to: header
	field to messages

   Bug Fixes :

	src/List.pm: "Can't use string ("monthly") as a HASH
	ref" _load_list_param() did not match task structure in memory
	(scalar vs hash)

	src/List.pm: 'urlize' reception option failed with lists in
	a Virtual Robot Did not work on the proper directory

	wwsympa/wwsympa.fcgi: closed lists are no more seen from
	other Virtual robots

	wwsympa/wwsympa.fcgi: editfile did not work on the correct
	language Now uses list's lang or robot's lang to find apropriate
	template

	[Valics Lehel] HTML fixes in web templates

3.3.4b.7	22 Apr 2002

   New features :
	
	[Valics Lehel] NLS and Mail templates translation to Romanian

   Bug Fixes :

	src/List.pm: did not load 'stats' file when creating List object

	wwsympa/wwsympa.fcgi: [reported by Virginie Perrot]  Could not set 
	file description in shared Error message : Synchronization failed for...

	[reported by Frederic Connes] main title used in sendpassword template 
	instead of robot title.	Fix: Load wwsympa.conf in Conf.pm ; use [conf->title]
	instead of [wwsconf->title]

	[Frederic Connes] Fix boundary in welcome messages

	src/List.pm: messages Header/footer addition did not work for VRobots
	

3.3.4b.6	10 Apr 2002

   New features :

   Changes :

*****	[reported by Daniel Pittman] extend 'bounce_subscriber' database field. 
*****	Could lead to errors in	Mysql : "value too long for type character varying(30)"
*****	With MySQL sympa.pl will make database structure changes at startup (if
*****	it has the alter_table privilege)

*****	DB_FIle < 1.75 will not work properly with BerkeleyDB 3.2 Sympa error log : 
*****	"_load_users : cachesise too small" ; you probably need to upgrade DB_FIle 
*****	perl module

	[John Paul Dalbec] Better english translations of web templates

   Bug Fixes :

	src/List.pm: [Guy Brand] Integer overflow occured when saving 'stats' file. 
	loadstats would fail leeding to "empty list" ; message was considered as bad

	src/List.pm: [reported by V. Mathieu] 'stats' file was not updated when 
	'subscribers.db' was updated (this concerns 'include' type of lists)

	src/List.pm: processes were always synchronizing with
	'subscribers.db' file even when they had up to date subscribers in
	memory, This was due to a wrong condition for _load_users_include()

	src/aliaswrapper.c: [Frederic Connes] problems when NEWALIASES_ARG is defined

	src/aliaswrapper.c: [Christian Mock] when NEWALIASES_ARGS is
	empty aliaswrapper died ; should be a NULL pointer

	wwsympa/wwsympa.fcgi: [Reported by Frederic Connes] : fix quota
	checking. (no quota applied if shared/quota is undef)

	wwsympa/archived.pl: don't check archives quota if no quota is defined

	wwsympa/wws_templates/fr/compose_mail.fr.tpl: Add hidden
	message_id

	[reported by Tellier Gilles] Don't propose 'close_list' button to listowners

	src/etc/scenari/create_list.listmaster: [reported by Frederic
	Connes] Wrong scenario (was public_listmaster)

3.3.4b.5	4  Apr 2002

   New features :

	Quotas for shared and archives. New list parameters in 'shared_doc' and
	'web_archive' paragraphs. New sympa.conf parameters 'default_archive_quota'
	and 'default_shared_quota'

   Changes :

	wwsympa/wwsympa.fcgi: Review Virtual robots from
	serveradmin page if Superlistmaster

	wwsympa/wwsympa.fcgi: Change log facilities from 'debug' to 'info'

   Bug fixes:

	src/tools.pl: [Sergy (Yahoo-inc)] fix incorrect file extention
	
	src/etc/script/p12topem.pl: Fix: p12topem.pl now working with VRobots

	src/tools.pl: Fix certificate location for list in virtual robot

	Fix digest inclusion of encrypted message

	src/List.pm: Fix wrong list certificate path related to a virtual
	robot

	wwsympa/wwsympa.fcgi: all pending lists were seen from each robot

	wwsympa/wwsympa.fcgi: [John Douglass] alternative email
	registering failed (incorrect listname)

	src/List.pm: better synchronization of processes with
	'stats' file (in partcular total of subscribers)

	src/etc/create_list_templates/private_working_group/config.tpl:
	[O. Lacroix] : wrong syntax for parameter reply_to

	src/List.pm: return 0 (instead of undef) in send_msg() if no
	subscribers


3.3.4b.4	26 Mar 2002

   New features :

	src/List.pm: custom subject can now refer to list variables
	([list->name] or [list->sequence])

	src/parser.pl: extend parse_tpl parameters format.
	Allow an ARRAY ref for $template Allow a SCALAR ref for $output

   Changes :

	src/List.pm: query DB for # of subscribers only if
	called without LIMIT in get_first_user ; perform total-- just
	before savestats (could be reinit because of get_which())

	src/List.pm: when evaluating a scenario, load subscriber
	database entry only if needed

	src/List.pm: if list has 0 subscriber, each time a new()
	is performed, the database was queried

   Bug fixes:

	wwsympa/wwsympa.fcgi: [reported by Herve.Brunet] "Sympa
	could not set a cookie for login" when accessing WWSympa via a
	hostname different from the Servername.  If http_host does NOT
	match cookie_domain then set cookie_domain to http_host

	wwsympa/wwsympa.fcgi: [Hanke Penning] navigation in archives failed 
	with HTTPS HTTP_HOST env variable already contained the TCP port

	wwsympa/wwsympa.fcgi: [reported by Robert Marchand] 
	password setup notice appeared twice

	src/aliaswrapper.c: [Nicolas Orlando Nappe] aliaswrapper
	exited with a bad address error (on RH 7.2 + gcc3) execle expects a
	pointer to NULL rather than a NULL pointer in the environment

	set_symlinks.pl: Security fix: default REVIEW was public

3.3.4b.3	13 Mar 2002

   New features :

	[Josep Roman] Update Spanish web templates

	wwsympa/wwsympa.fcgi: Add by_domain sort in
	REVIEW Also changed query for mysql in get_first_user()

	src/List.pm: [requested by Walter Hopgood] Make 'body' and
	'full_msg' available to summary.tpl

	Add 'log_level' conf parameter

	With FastCGI, serveradmin provides processid and request count

	Make 'lang' a robot.conf parameter

	New 'cookie_domain' parameter in robot.conf

	src/sympa.pl: [Christian Mock] : handle pkcs7-mime content-type
	of signed messages (outlook)

	Add use_ssl variable availible for all wwsympa template. This
	[use_ssl] and [auth_method]=smime must not be mistakeen one for the
	other. [use_ssl] may be set while user are not logged because they
	don't have certificate

	add 'db_env' parameter to 'include_sql_query'

   Changes :

	just a few commands are now searched in messages. This is now defined in
	sympa.conf ('misadressed_commands_regexp' parameter)

	no more provide mailto:	in info page ; spam prevention

	wwsympa/wwsympa.fcgi: [Herbert Straub] also search in
	previous month in do_arcsearch_id()

	wwsympa/wwsympa.fcgi: [reported by Yves Agostini] Change:
	navigation in archives could fail because <BASE> did not correspond
	to requested URL. Now use HTTP_HOST and SERVER_PORT to build BASE. 
	<BASE could not be supressed because of the archives main (current)
	page (relative URLs did not work).

	src/sympa.pl: [proposed by Christian Mock] close STDIN Could
	cause OPENSSL to hang under some circumstances..

	Prevent command looping ; block	messages with known Message-ID
	
	wwsympa/wwsympa.fcgi: Mime encode subject when compose a mail via
	WWsympa interface

	src/etc/script/sympa: [requested by Robert Marchand] No success &
	failure subroutine on IRIX

	[requested by Robert Marchand] Add '-m' option to gencat on IRIX
	Add '--with-iconsdir' configure	option

	[proposed by J. Marant] Add 'codeset' to NLS catalogs Otherwise catalogs 
	cannot be generated properly (Invalid caracter messages)

	src/sympa.pl: cleanup in moderation and authentication spools

	doc/sympa.tex.tpl: [reported by Benoit Marchal] Lots of
	corrections

	src/tools.pl: [Alan Hicks] message having the
	multipart/alternative embedded in the first part of the
	multipart/related were not recognized by tools::as_singlepart()

	src/etc/mhonarc-ressources: Delete <CharsetConverters> so Mhonarc
	uses its default

	[reported by Joe Davidson] add a Message-ID to compose form to prevent
	Sympa from distributing twice the same message (reload).  New
	tools::get_message_id() sub

	check_perl_modules.pl, src/List.pm: _ListTables is deprecated,
	use $dbh->tables() instead.  Therefore requires recent version of
	DBD::mysql

	src/sympa.pl: Prevent loop while unable to rename file to the
	'bad' directory.

	src/List.pm: [Vincent Mathieu] multiple reference to variable
	[sender] in lDAP filters.

   Bug fixes : 

	Makefile.am: Change configure options to with-xxx so they can be customized at
	configure time

	wwsympa/wwsympa.fcgi: did not store subscription request in wwsympa

	wwsympa/Marc/Search.pm: [Sergiy Zhuk] Bug fix: with FastCGI,
	despite the fact you're getting new search results, it still marks
	the old keyword.  The problem was caused by the 'o' modifier in
	Search.pm, which compiles the search pattern just once.

	[Maguy Lebreton] Make sleep() longer in archived, so mhonarc has time to
	process big messages.

	src/etc/mhonarc-ressources: [reported by Serge Algarotti] 
	Messages header fields were parsed in archives

	src/etc/mhonarc-ressources: [Sergiy Zhuk] Fix formating
	(introduced in 1.14)

	src/Conf.pm: [reported by Pascal Schelcher] allow \s in
	auth.conf entries (filters) auth.conf paring should be more strict

	src/tools.pl: Fixe sign_check  : checking using original message
	instead of object message in order to handle properly multipart
	messages (b64 sign bug)

	wwsympa/wwsympa.fcgi: [reported by Hanke Penning]
	'quiet' scenario action was not used in do_add() and do_subscribe()

	src/List.pm: [reported by Walter Hopgood] wrong value
	for Sunday digest Could not send Sunday digests

	wwsympa/wwsympa.fcgi: [Sergiy Zhuk] Fix Net::SMTP::mail() call

	src/Commands.pm: no relation between 'do_it' action and
	owner notification

	src/sympa.pl: Fix CleanSpool: could not remove directories

	wwsympa/bounced.pl: [reported by Malcolm] do not force file
	access permissions to 777

	wwsympa/wwsympa.fcgi: [reported by Michel Bouissou]
	wrong link to father directory in shared

	src/etc/scenari/send.publicnoattachment: [Reported by Roussel Florian] : 
	fix missmatch Content-Disposition/Content-Type

	src/Commands.pm: Command::which() did not skip first
	argument WHICH command returned a wrong result for Virtual Robots

	src/List.pm: [John Paul Dalbec] this section of code fixed
	"name=" but broke "URL="
	
	src/etc/mhonarc-ressources: reported by Vincent Mathieu : fix
	icons location in archive. must be related to wws.conf icons_url
	parameter

	[John Dalbec] Fix lots of misspellings/typos in templates

3.3.3		25 Jan 2002

   New features :

	src/task_manager.pl: New task : expire_bounce remove all bounces
	if the latest_bounce is older than 10 day before last distribution
	message. The delay "10 day" is set in the task model but it should
	be set in the bounce parameter paragraph in list/robot/site
	configuration file.

	[Luca Maranzano] Add support for the Sophos antivirus

   Changes :
	Makefile.am, wwsympa/Makefile: [reported by J.Marant] WWSBINDIR 
        var in Makefile had desappeared.  Reintroduce it as 'CGIDIR'

	wwsympa/wwsympa.fcgi: Initialisation of all lists context while
	starting wwsympa using fastcgi.

	Create msg/bad. spool at startup

	[reported by Samuel Tardieu] Change Digest::MD5->md5_hex calls to Digest::MD5::md5_hex

   Bug fixes : 

	src/List.pm: suppress 'untie %users' in	_load_users_include get_subscriber() 
	and is_user() subroutines failed with 'include' type of lists
	
	src/alias_manager.pl: [reported by Sergiy Zhuk] wrong argument to
	bouncequeue Also add @domain to arguments, even if default_domain

	src/smtp.pm: [John Dalbec] Patch for exim compatibility

	task_manager.pl: desactivate global_remind task (not implemented yet)

	src/task_manager.pl: run task_manager in background

	src/Commands.pm: REVIEW requested by non-owners failed
	(command not found) if a 'concealed' subscriber was found.

	wwsympa/wwsympa.fcgi: [reported by Sergiy Zhuk] Bug fix: Could
	not delete scalar multiple parameters (like 'include_list') via
	edit_list form.

	some default robot conf parameters where used instead of virtual robot
	ones. Added Conf::get_robot_conf() subroutine

	src/List.pm: Fix: do not save empty list parameters 

	[reported by J.	Marant] use $Conf{'etc'} instead of --DIR--/etc

	wwsympa/wwsympa.fcgi: [John Dalbec] save stats file when data_source changed

	src/parser.pl: parser could recursively evaluate vars ; made
	this cleaner (new do_eval() subroutine)

	wwsympa/Makefile: [reported by Benoit Marchal] chown of SRC
	(mime.types) had wrong path



3.3.1 		11 Jan 2002

   Bug fixes : 

	src/List.pm: [reported by M. Langlois] List::user_add()
	used the wrong entry in %$values.  With Oracle, subscriber
	insertion failed (ORA-00936: missing expression) ; with other RDBMS
	update_subscriber was empty

	[Sergiy Zhuk] Bug fix: in List::_load_users_include() subscribers data 
	could get corrupted if 'config' changed or 'subscribers.db' was deleted.

	nls/: reverting us and fr translations

	wwsympa/wwsympa.fcgi: replace buggy call to sendmail in
	do_change_email by &List::send_global_file...

   Changes :

	src/List.pm: [Sergiy Zhuk] If 'include' data source is
	unavailable, use previous cache (subscriber.db).  Caution: if one
	data source is unavailable, other sources updates will not be
	applied

	src/alias_manager.pl: [proposed by Sergiy Zhuk] Remove temporary file 
	when removing a list

3.3		09 Jan 2002

   New feature :

	src/List.pm: [John Dalbec] 'include_ldap_2level_query' perform an 
	LDAP query in 2 times.

	[Michel Bouissou] works with AvpLinux antivirus

	src/tools.pl: [Mathieu Peltier] Now Sympa can work with 'F-Prot'
	anti-virus

	Chronological list of lists in server_admin web pages

	Purge_list feature in server_admin web pages

	Provide the list of Virtual Robots in server_admin web pages

	[Sergiy	Zhuk] allows Sympa to check listname on SMTP server
	before list creation. New sympa.conf/robot.conf parameters
	(list_check_smtp, list_check_suffixes)

	[requested by Sergiy Zhuk] add wwsympa.conf 'password_case' parameter

	New html-newsletter list template

	src/etc/script/sympa.generic: [Harald Wilhelmi] Generic startup
	script that should work with HPUX.  It SHOULD be installed in
	/sbin/init.d ; Makefile should check system type (`uname -s` eq
	HP-UX)

	src/etc/script/logrotate: [Mathieu Peltier] Log rotation script

   Changes :

	List parameters edition (web) is now split into groups of parameters

	Move BAD messages to bad/ subdirectory instead of renaming them.
	This should fasten the readdir() in spool

	src/List.pm: if subscribers total is empty, query datasource

	[Autrijus Tang] Changes: cn-gb -> cn ; cn-big5 -> tw

	[Autrijus Tang] Updates of Chinese translations

	[requested by GNU] Add copyright notices and license notices to all 
	source files

	[Jerome	Marant] default welcome messages changed to multipart/alternative 
	(used to be HTML)

	Write PID on disk as user 'root' ; this allows to create .pid files
	in /var/run/

	Move configuration vars from Makefile to configure (still available
	at make time)

   Bug fix:

	[reported by B. De Boursetty] Fix: MS Exchange sends encrypted mail with 
	a "Content-type: application/pkcs7-mime" header

	wwsympa/wwsympa.fcgi: [reported by Sergiy Zhuk] Security fix: no
	more tell if part of password was correct ; no more lowercase passwords

	src/List.pm: [reported by John Dalbec] List::send_file did not set the 
	return path if the recipient(s) is/are passed as an array reference.  
	This caused problems with my MTA (exim) and results in sympa dying.

	Add 'robot' parameter to List::new() and List::load() This avoid robots from
	accessing each others lists from the web interface

	wwsympa/wwsympa.fcgi: wrong location of 'subscribers' file when changing
	datasource (failed for VRobots)

	src/List.pm: bad condition for 'subscribers.db' update

	src/List.pm: 'subscribers.db' could get corrupted ; leading to empty lists 
	Processes were not benefitting from include cache ('subscribers.db')

	src/List.pm: Allow WWSympa to update subscribers.db if
	config changed If subscribers.db changed on disk, use it, don't
	overwrite it

	task_manager.pl, sympa.pl, archived.pl, bounced.pl: [reported by Harald Wilhelmi]
	Change group before change user

	[Thomas Leavitt]: Typos/spelling/grammatical errors

	[J. Marant] Fix: replace /icons with [icons_url in web templates

	configure.in: [reported by Harald Wilhelmi] use ${prefix}
	instead of ${ac_default_prefix} This allows to override prefix at
	configure time (with --prefix=/xxx)

	src/etc/script/sympa: Fix stop and start functions. Stop was
	using killproc

	wwsympa/wwsympa.fcgi: [reported by V. Mathieu] Bug fix: could not
	perform a subrequest, providing an LDAP UID (for not identified
	people).

	src/List.pm: Fix: do not restrict 'db_type' to listed RDBMS for includes

	get_file did not find templates in list dir.  Could not edit list 
	templates from the web


3.3b.4		16 Nov 2001

   New feature :

	Reply_to_header/value parameter allow the value 'all' to force 
	Reply-to: [list],[sender]. This is usefull for hotline MLs

	New 'log_smtp' sympa.conf/robot.conf parameter : allows per/robot
	logging of Sendmail calls

   Changes :

	[requested by Daniel Pittman] If 'default_home' parameter was defined use it 
	anytime	instead of 'home'. Also use 'lists' as a default action if no
	topics.conf was found

	[requested by GNU] Change GIF icons to PNG. (Problem with transparency)

   Bug fix:

	edit_list_conf memory cache was not used

	Fix a bug in check_arc_cookie (users always redirected to the 
	"I'am not a spammer" form)

	REMIND <listname> failed

	[reported by V. Mathieu] Supress logging in Apache error log
	

3.3b.3		14 Nov 2001

   New features : 

	[L. Hamadouche] Ldap authentication via uid and emails stored 
	in LDAP Directories.  Alternative email addresses extracted from LDAP 
	directory ; may be used to "unify" subscriptions.

	[L. Hamadouche] Sympa can export lists in an LDAP directory.
	Directory is defined in  sympa.conf (ldap_export_xxx), exportation
	via 'export' list parameter.   WWSympa's search_list feature may be
	extended to LDAP directories.

	[L. Hamadouche] LDAP search filters can be used in scenarios via 'search'
	condition.

	Add 'timeout' and 'scope' to 'include_ldap_query' list parameter

	New sympa.conf parameter 'db_port'

	New db_env sympa.conf parameter ; usefull to set Oracle's 'ORACLE_HOME'

	New sympa.conf parameter 'misaddressed_commands' to disable command
	detection in messages

   Changes :

	src/List.pm: Changes: DB_File structure for 'includes' now stored on disk 
	(used to be in memory). It allows sharing of this cache	between processes.
	The cache is not updated by WWSympa, because it would leed to bad performences

*****	is_listmaster => write no more hardcoded in List::may_edit() ; 'default' no more
*****	allowed for population in edit_list.conf

*****	Now use configure.in and Makefile.am (uses automake/autoconf)
*****	Makefile is generated as follows :
*****		automake -a ; aclocal ; automake ; ./configure

	wwsympa/wwsympa.fcgi: [proposed by D. Bernard] Use 'SERVER_NAME'
	instead of 'HTTP_HOST' to determine current VirtualRobot. This is
	much more reliable (Apache uses the server name as defined in its
	config file)

	wwsympa/wwsympa.fcgi: [requested by Janos Kovacs] Replace glob() with 
	opendir/readdir().  This allows using WWSympa over an apache running in jail

	[requested by Janos Kovacs] Password remind message is now sent via sympa.pl ; 
	no more direct call to sendmail.  This allows using WWSympa over an apache running
	in jail

	[reported by Daniel Pittman] Add missing icons

	Moderation message is now a template

	A  unique template for listmaster notification

	src/Commands.pm: [Ralf Ebeling] Allow subscription request to be
	forwarded with no sender notification

	Notify listmaster if Virus scan failed

	[reported by J. Dalbec]	RH 7 compatibility changes : Web hierarchy location, 
	Sympa directory location

	[Szilard Vizi] Update ALL Hungarian translations

	nls/de.msg: [H. Wilhelmi]: update

	nls/cn-big5.msg: [Autrijus Tang] Update : adapt terms to Taiwan	usage

   Bug fixes :

	When saving a pending list, 'send' and 'visibility' were saved as 'closed' ; 
	previous values were lost.

	moderation message had no trailing boundary ; crypted messages were not properly 
	moderated ; template sent to multiple recepients could not be crypted ; all message 
	header fields were passed to OpenSSL, only content-type and content-transfer-encoding 
	are passed now.

	Many Virtual Robot related bug fixes

	[reported by S. Tardieu] Bug fix: summary of messages was sent to the list itself. 
	Digest/summary could be sent to an empty list of recipients.

	[Harald Wilhelmi] Bug fix: Could not perform an	anonymous LDAP bind

	[reported by Anne Durand] Bug fix: wwsympa did not reset list of topics before 
	reloading topics.conf

	wwsympa/bounce-lib.pl: Bug fix: NTMail reports made bounced die

	[reported by V. Mathieu] Bug fix: LDAP authentication is case-sensitive

	src/Conf.pm: [reported by JM Pouchoulon] Bug fix: auth.conf needed a last 
	empty lines

	Bug fix: moderation message had an empty boundary (unless md5)

	Raise an error if subscribers inclusion failed

	Raise error if incorrect scenario rule, so the message/command is kept as BAD

	Add 'other' topic in create_list form

	[reported by G. Mercey]Bug fix: scenario with '-' in name were not listed

	src/List.pm: [reported by Tanel Kokk] 'mkdir' function requires mode

	[Straub Herbert]: Encode mail subject for LISTS and HELP

	src/List.pm: Bug fix: Do NOT consider .tpl as hierarchical parameters 
	(like owner.email)

	src/etc/script/sympa.spec: [reported by D. Mostacero] corrected	'perl-ldap' RMP name

	src/etc/script/sympa.spec: [John Dalbec] Fix Perl dependency

3.3a-vhost.10   25 Sep 2001

   New features : 
   
        Sympa at last implements virtual robot :

	  Sympa virtual robots are likely Apache virtual hosting : a single
          daemon sympa.pl and a single cgi server wwsympa.fcgi now
          can serve multiple domains with their own set of list, templates
          and scenarii.
	
	  All configuration parameters can be define for each robot except
          Sympa installation parameters such as binary and spool location,
          SMTP engine, antivirus plugging etc. 

          A robot is named by its domain, and defined by a directory 
          ~sympa/etc/somedomain.org. This directory must contain 
          a robot.conf file that defines the virtual robot parameters
          http_host  title  default_home lang listmaster max_size and colors.

          ~sympa/etc/dom.org/ contains lists of dom.org robot

          ~sympa/etc/dom.org/wws_templates/, ~sympa/etc/dom.org/templates/,
          ~sympa/etc/dom.org/scenari/ directories are applied when loading
          templates or scenarii before searching into ~sympa/etc and 
          ~sympa/bin/etc. 
       
          Check sample dir.

        [Florent Guilleux]: Task manager
          wwsympa/wws_templates/fr/edit_list_request.fr.tpl
          Various task automatic processing. List master may use predefined
          task models to automate recurrent processings such as regurlaly
          reminding subscribers their belonging to a list or updating
          certificate revocation lists. It is also possible to write one's
          own task models to  meet particular needs. Unique actions may also
          be scheduled by this way.
             
        Sympa.pl recognize SIGHUP to reload sympa.conf, all sympa.conf
        parameters are reloaded except those related to syslog. In addition
        each HUP received change the value of the -mail option. 

        New variable 'is_bcc' available in scenario ; it is set to 1
	if the list was NOT mentioned in To: or Cc:
	This provides a usefull spam/viruses prevention

        You can define a set of common scenario rules, used by ALL LISTS.
	'include.<action>.header is automatically added to evaluated scenarios.

  Changes :
      
        Web interface colors are now defined in sympa.conf
      
        'reject' scenario action now accepts a template name as parameter

  Bug fixes :
  
        Forbid [] chars for shared documents

        STATS command controlled by "review" scenario
	
	List-specific invite.tpl was not used 'dir'. 
	List attribute is now an absolute path

        List config file contained strange 'default_user_options' entries.  
	&List::get_default_user_options() returns a reference ; 
	the value was changed when adding a subscriber, and might be saved later.
	
	Did not apply default_user_options while importing

        bouced.pl died if bounce file was empty

        bounced now die if it can't create file to store bounces. 
	This is needed to prevent the loop describe by Claus Atzenbeck.

3.2.2a  03 August 2001

  New features :

	Sympa returns non-delivery reports as multipart/report

	first version of subscription moderation

	new message-related variables available in scenari : [msg_body], [msg_part->type] 
	and [msg_part->body]

	rename file/directory in 'web repository'

	Add bookmarks management to the document repository (shared)

	New 'db_additional_user_fields' AND 'db_additional_subscriber_fields' in sympa.conf. 
	These fields are accessible from within templates and scenario.

	List creation request is a template. Add list creation	notification (using a template)

	[requested by C. Turbout] New feature: add 'connect_options' to 
	include_sql_query list param. Add 'db_options' to sympa.conf

	[Didier Lamballais] Change: add NEWALIASES_ARG var to Makefile

	[N. Euzen] new 'not_me' user reception option 
	changes for 'urlize' (added size, name ; add header/footer afterward)

	[requested by C. Atzenbeck] New 'anonymous_header_fields' sympa.conf parameter.

	[Nadia Euzen]: Add new user reception options "html","txt" and "urlize".

	Sympa recognises Trend Micro virusWall API

	non-identified users can change the language of WWSympa.  
	The preferred lang is stored in a cookie.

	src/Commands.pm: New 'verify' command (for s/mime checking)

  Changes :

	Replace remaining get_action() with request_action()

	Turn command (review,stats,info,modindex) reports into templates

	Split templates ; one per lang This makes translation easier 
	(charset problems, patches appliance)

	Now fully uses the update_subscriber DB field

	src/List.pm: 'update' changed to 'update_date' ; 'update' is a MySQL keyword

	use internal session cache for List::get_subscriber()

	src/List.pm: no more SQL join in List::get_subscriber()
	This should fasten list-related web actions (such as INFO, ARC,	ADMIN,...)

	[proposed by Josep Roman] Use Digest::MD5 instead of MD5 module

	doc/sympa.tex.tpl: Latex file is now parsed, to include sample files

	check_perl_modules.pl: Set inactivity timeout to 4 sec

	src/etc/ca-bundle.crt: Add Ca-CRU to bundle

  Bug fixes :
	
	wwsympa/bounced.pl: daemon would die on a strange bouncing address
	Better log messages

	[nablaphi] Fix logging for archived & bounced ; use Getopt::Long

	src/List.pm: Ignore empty email addresses, from LDAP

	doc/sympa.tex.tpl: [reported by M. Leclair] Fix 'host' list param
	documentation

	srand() is done	once to avoid multiple moderated messages to have the same ID

	src/etc/script/sympa.spec: [reported by S. AZRIEL] aliaswrapper was not installed

	[Vizi Szilard] cancel translation of From/Subject/To headers

	src/etc/mhonarc-ressources: fix the reply feature (when replying
	to list the adresse was not qualified)

	[reported by Foudil BRETEL] create_list.conf was not properly parsed Make it case-insensitive

	src/tools.pl: Sympa was bloquing in tools::smime_decrypt() on big encrypted messages. 
	=> now creates the FIFO before OpenSSL is called.

	Fix re-encryption of signed base64 messages

	[reported by Christian Mock] Bug fix: S/MIME encryption
	fixed signed AND crypted messages are recognized as signed

	wwsympa/wws_templates/us/create_list.us.tpl: [R. Manfredi] makes
	the message clearer

	wwsympa/wwsympa.fcgi: change_email fixed

	doc/sympa.tex.tpl: [Vizi Szilard] Hungarian NOT hungrian

	src/etc/script/create_db.Pg: [Jerome Marant] 
	CREATE INDEX ends with 2 parentheses instead of one

	src/mail.pm: Also encode $to, From and all $headers entries

	src/mail.pm: [reported by Straub Herbert] 
	owner notification messages subject was not encoded

	src/etc/script/create_db.Sybase: [reported by Guenter Lau] Update database structure, 
	make password longer

3.2.1	05 June 2001

  Bug Fix :

	src/tools.pl: [Renato Bonomini] typo
	Not enough arguments for mkdir at tools.pl line 815

	src/List.pm: sympa.pl would die with error message
	"Can't use an undefined value as a HASH reference" 
	It could not access reply-to value when defining an email as the reply-to

  Changes :

	src/etc/script/sympa.spec: [reported by Claus Atzenbeck]
	perl-CGI.pm has been renamed perl-CGI

  New features :

	Makefile, important_changes.pl: Print important changes extracted
	from RELEASE_NOTES (*****)

3.2     01 june 2001

  New features :

	[Nadia Euzen] antivirus scanner, curently working with McAfee Uvscan and 
	FSecure	FSAV.  New conf parameters antivirus_path and antivirus_args New
	template your_infected_msg.tpl

	nls/hu.msg, wwsympa/wws_templates/hu, src/etc/scenari/,src/etc/templates/: 
	[Vizi Szilard] New feature: Translations to Hungarian

	src/etc/templates/: [Rodrigo Filgueira Prates] templates translated to
	Portuguese

	[Harald Wilhelmi] Mail templates translated to German

	wwsympa/wws_templates/fr/help_editlist.fr.tpl: [Michel Bouissou]
	Translated editlist helpfile to french

	[Jérôme Marant] New feature: change sympa man page to POD format
	Add archived, bounced and alias_manager man pages

	wwsympa/wwsympa.fcgi: "Reply" feature from web archives It uses the "compose_mail" 
	action of WWSympa

  Changes :

*****	For enhanced performences, we recommend you add an INDEX to your
***** 	'sympa' database. This fasten the queries based on the subscriber email :
*****	With MySQL :
*****	ALTER TABLE subscriber_table ADD INDEX (user_subscriber,list_subscriber);
*****	With PostgreSQL :
*****	CREATE INDEX subscriber_idx ON subscriber_table (user_subscriber,list_subscriber));

*****	src/List.pm: [proposed by Petr Prazak] supress lower() function from SQL 
*****	SELECT queries in user_table.  This makes query much faster (t/100) with MySQL
*****	
*****	You should therefore lowercase your database entries :
*****	sympa.pl --lowercase

	src/List.pm: [proposed by Claus Atzenbeck] Add 'X-Envelope-To'
	header field deletion for anonymous mode

	src/etc/mhonarc-ressources: Decode encoded header fields

	src/List.pm, wwsympa/wwsympa.fcgi: Order list parameters within a paragraph

	src/List.pm: [Straub Herbert] Changes: change connect string for
	PostgreSQL Did not work with Pg 7.1

	Replace 'reply_to' and 'forced_reply_to' list parameters with 
	'reply_to_header' parameter (paragraph)

	Less restrictions on file names in shared (allow spaces)

	wwsympa/wwsympa.fcgi: Bug fix: did not work when scenario returned multiple actions

	wwsympa/wwsympa.fcgi: could not edit digest hour

	wwsympa/wwsympa.fcgi: [proposed by Petr Prazak] Don't stop deletion process 
	if one address is not subscribed

	src/etc/scenari/send.*: Changes in scenario titles

	src/etc/mhonarc-ressources: Changes: add deletion confirmation

	nls/es.msg, src/etc/create_list_templates/*, wwsympa/wws_templates/es/*: 
	[Philippe Mingo] Changes: corrections

	nls/de.msg [Harald Wilhelmi] updates

	[Petr Prazak] Czech templates update

	nls/es.msg: [Josep Román] additions and corrections

  Bug Fixes :
	
*****	Too many arguments for substr at CipherSaber.pm line 63
*****	If you have Perl Perl 5.005 or earlier installed, you
*****	should either upgrade to Perl 5.6 or change CipherSaber::decrypt() to :
*****	sub decrypt {
*****        	my $self = shift;
*****        	my ($iv, $message) = unpack("a10a*", +shift);
*****        	return $self->crypt($iv, $message);
*****	}

	src/etc/scenari/visibility.conceal: titel => title Sympa
	Could not parse visibility.conceal scenario

	src/Commands.pm, wwsympa/wwsympa.fcgi: Apply list
	visibility to WHICH command (hide secret lists)

	src/Conf.pm: Check if we may executes programs listed in sympa.conf

	wwsympa/cookielib.pm: could not set HTTP cookie if 'cookie_domain' 
	conf parameter was defined

	src/List.pm: [Michail Bachmann] missing comma (',') in Sybase SQL query

	src/etc/mhonarc-ressources: do not parse message body in archives

	src/Commands.pm: [reported by Odile Germes] Sympa would
	die when receiving a REMIND command for an unknown list

	src/List.pm: [reported by Petr Prazak] use correct charset for digest table of content

	src/tools.pl: always look for commands in subject (does
	not depend on body length)

	src/List.pm: Q-decode From header field in digest table of content

	src/List.pm: [Straub Herbert] encode digest Subject header field

	src/List.pm: Sympa was erasing user preferences	(including password) 
	when loading subscribers file to database (from wwsympa edit_list)

	wwsympa/wwsympa.fcgi: Set folder icon though directory
	has no .desc

	src/List.pm: [Yann Bizeul] Escape % chars in moderation message

	wwsympa/wwsympa.fcgi: Did not list lists with no topic

	could not delete editor/owner entries

	src/Makefile: [Jérôme Marant] Change: clean aliaswrapper

	src/Commands.pm: Missing list::get_user_db() in REMIND for getting 
	user prefs (including password)
	
	wwsympa/wwsympa.fcgi: Bug fix: don't reject login if user has no password in db

	src/etc/templates/global_remind.tpl: correct [user->passwd] to [user->password]

	wwsympa/Marc/Search.pm: Bug fix: Search in message body was
	looping if <!--X-MsgBody-End--> was not found

	src/List.pm: [reported by Jean-Michel Beuken] Bug fix: Check if
	scenari dir exists 
	Bug description: wwsympa died when editing list	config : 
		glob failed (child exited with status 1)

	src/sympa.pl: Bug fix: set list language for digest

	src/List.pm: Bug fix: Do not delete 'Received' header field in
	List::store_digest()

 	src/Commands.pm: Bug fix: SET <list> <mode> did not work
	Case-sensitivity problem 

	doc/sympa.tex: [David Lewis] corrections in documentation

	wwsympa/wws_templates/de/: [Harald Wilhelmi] Changes: a few typos in the
	german wwsympa templates

3.1.1	Wed 25 Apr 2001

  Bug fixes :

	Failed archiving emails. (this bug exists since 3.1 only)


3.1	Tue 24 Apr 2001

  New features :
	
	[Harald Wilhelmi] Translations of web templates & scenario titles
	to German

	[Petr Prazak] Translation of scenari titles to Czech

	Add auto alias removal

  Bug Fixes :

	src/List.pm: [reported by Petr Prazak] Did not keep date of 
	'subscribers' file Could not synchronize with changed 'subscribers' 
	file

	[reported by Fiona Dix] forgbid changes in subscriber options 
	if user_data_source is 'include'


	src/List.pm: [Petr Prazak] Died while getting first
	subcriber if subscribers file is empty 
	Bug error: Can't call method "seq" on an undefined value

	wwsympa/wwsympa.fcgi: [reported by Petr Prazak] did not
	apply subscriber options changes if user_data_source is 'file'

	doc/sympa.tex: [David Lewis] Many corrections

	wwsympa/archived.pl: [Petr Prazak] quote listname
	command line argument Add log if mhonarc call failed

	src/List.pm: Consider empty value as undef
	Empty editor/owner mailto: were displayed on WWSympa

	wwsympa/wws_templates/us/main.us.tpl: [reported by Petr Prazak]
	Bug fix: missing getCookieVal() function

3.1b.13 Fri 13 Apr 2001

  New features :

	[Petr Prazak] Translations of Sympa to Czech (nle & templates)

	Auto-install of aliases at list creation time 
	New parameter in wwsympa.conf: alias_manager
	[Harald	Wilhelmi] run newliases via a C wrapper

	src/sympa.pl: --import option 

	doc/sympa.man: Man pages for sympa

	src/sympa.pl: --help and --version options

	wwsympa/wwsympa.fcgi: New feature: Add Javascript cookie check

	wwsympa/wwsympa.fcgi: search_user for listmaster, available
	from "sympa admin" web page

  Bug Fixes :

	src/List.pm: when subscribers are extracted from an SQL query,
	the query ends getting emails at first empty entry

	src/sympa.pl: [reported by Jérôme Marant] parameter
	for --debug is compulsory

	wwsympa/wwsympa.fcgi: no more lowercase in shared ; otherwise
	could not access files with uppercase letters

	src/List.pm: Set list's lang for owner notification
	(instead of subscriber's lang)
	

3.1b.12 4 Apr 2001

  New features :
	
	propose	pre-defined cookie expiration periods in WWSympa

	src/sympa.pl: Add --keepcopy option to keep a copy of 
	incoming messages

	Notices are different from errors. Create new templates

	Add X-No-Archive header field to distributed messages

	src/Log.pm: Attempt to restore lost connexion to syslogd

  Changes :

	nls/es.msg: [Josep Roman] Changes: Removals of extra \n chars,
	new messages added

	Add creation date and email in list templates config

	src/Conf.pm: Change default create_list for reverse compatibility

	wwsympa/wws_templates/: error.fr.tpl, error.us.tpl: Add action
	name when failed

	src/List.pm: look for global header/footer in ~sympa/etc/templates/

	src/List.pm: if user_data_source is 'database', check if
	we have a database up

	wwsympa/wwslib.pm: provides file extention, given the
	content-type

  Bug fixes :

	src/: sympa.pl, tools.pl: Use original msg file for
	S/MIME signature checking

	src/: List.pm, sympa.pl: Use original message for confirmation, 
	not MIME::Entity object This prevents signature	breaking

	src/sympa.pl, src/tools.pl, wwsympa/wwsympa.fcgi: [reported by D.
	Lamballais] Make Cipher::Saber really optional Check in @INC first

	src/List.pm: bad condition, never alert owners about bounce rate

	src/etc/script/load_subscribers.pl: [Gérard Gachelin]
	insert comment

	src/tools.pl, wwsympa/wwsympa.fcgi: [reported by Anne Durand]
	escape quotes in edit_list_request

	src/sympa.pl, src/Commands.pm: Bug Fix: Messages to be approved 
	were not sent to editor (unless editorkey)

	src/tools.pl: [reported by Michael Brennen]
	fix a bug in encryption module introduce in 3.1b5

	src/: List.pm, sympa.pl: [reported by Philippe Leca] 
	signed multipart messages were altered by moderating process

	doc/sympa.tex: [David Lewis] Lots of corrections for "good
	english" compliance

	wwsympa/wwsympa.fcgi: could not delete owners/editors. 
	Format check was performed even on empty entries

	wwsympa/bounced.pl: [proposed by D. Lalot] use strict,
	basic check while opening files, daemon no more dying

	wwsympa/cookielib.pm: [reported by Fiona Dix] 
	Logged in as unknown, because of wrong date format in cookie.  
	Now use	CGI::Cookie for cookie read/write


3.1b.10 15 Mar 2001

  Changes :

*****	HTTP cookie prefix becomes  sympauser (used to be user)

  Bug fixes :

	[O. Lacroix]
	nls/cn-gb.msg: leading tabs instead of spaces, failed compiling
	on HPUX

	wwsympa/wws_templates/d_read.us.tpl: badly placed <FORM>s
	File upload and directory creation failed

	sympa.tex: missng/wrong  sympa.conf parameters


3.1b.9  14 Mar 2001

  Changes :
	
	Attempt to change database structure if needed (MySQL only)


3.1b.8	12 Mar 2001

  New features:
	
	Check db tables structure at sympa.pl startup
	

3.1b.7	9 Mar 2001

  New features:

	'post' action available on list info page

	[requested by Fil] Add an SQL clause while searching among subscribers 
	(used to fetch all subscribers and select afterward)

	[Lukasz Zalubski] Translation to polish

	[Olivier LACROIX] New list
	parameter 'available_user_options' Only available reception modes
	are listed on the web interface.  If a user sets a forbidden mode
	(not listed), he is asigned the mode in 'default_user_options'.  If
	default_user_option reception mode is not listed in
	'available_user_options' it is appended to it.

	wwsympa/wwsympa.fcgi: New action "show_cert" to print SSL
	information.

*****	src/tools.pl: Add reversible encryption for password (rc4)
*****	&crypt_passwd ; &decrypt_passwd ; &ciphersaber_installed
*****	You need to change your database structure :
*****
***** 	with MySQL
*****	 ALTER TABLE user_table CHANGE password_user password_user varchar (40);
*****
*****	with PostgreSQL
***** 	 SELECT * FROM user_table IN user_table_save;
*****	 DROP TABLE user_table; 
*****	 CREATE TABLE user_table ( 
*****    email_user                  varchar (100) NOT NULL, 
*****    gecos_user                  varchar (150), 
*****    cookie_delay_user       int4, 
*****    password_user           varchar (40), 
*****    lang_user               varchar (10), 
*****    CONSTRAINT ind_user PRIMARY KEY (email_user) 
*****	 ); 
*****	 INSERT INTO user_table SELECT * FROM user_table_save 
*****	 GRANT ALL ON user_table TO public; 
*****    GRANT ALL ON user_table TO sympa; 
*****
*****	crypt_passwd.pl: Script for password encryption in database

	[Wang Jian ] Web templates translated to  zh_CN.GB2312
	encoding, Simplified Chinese

	Add links to archives in summary

	Makefile: Added SHADED_COLOR

	src/parser.pl: Allow SET var=number

	Add 'toggle selection' in review page

	[requested by Beatrice Gatto Charton]
	Provide mailto: URL for confirming a subscriber deletion

	src/etc/script/list_alias.pl

*****	New field in table subscriber_table : comment_subscriber
***** 	You **MUST** change your database sctructure:
*****	ALTER TABLE subscriber_table ADD comment_subscriber varchar (150);
*****
*****	src/etc/script/init_comment.pl: Script to initialize newly
*****	introduced comment_subscriber data row

	owners can edit subscribers email address

  Bug fixes :

	src/List.pm: [reported by Ronan Salmon] Can't call
	method "compute_auth" on unblessed reference

	[reported by Fil] When sympa.pl	send a message for wwsympa.fcgi, 
	it uses From: header field for the Return-Path: Now uses additional 
	X-Sympa-From header field

	src/tools.pl: [reported by Fil]  '#' chars were not
	escaped in editsubscriber

	src/etc/script/Makefile: [reported by Jerome Dubois] 
	wrong 'wwsympaconf'

	[Harald Wilhelmi] Bug fix : Subscribers count was going mad 
	when closing/restoring a list

	Makefile: installconfig failed parsing PIDDIR and SPOOLDIR

	Sympa would break S/MIME signatures if message contained encoded
	parts.	This is due to MIME::Entity library use. It would not
	always encode the msg exactly the original way (Ex : number of
	columns for Base64) ; S/MIME signature is broken.  Correction :
	Unless message body was altered (header/footer added), Sympa uses
	the original message's body, bypassing MIME::Parser

	src/Archive.pm, wwsympa/archived.pl: [reported by Hubert Ulliac ]
	Bug fix : if 2 mails for the same list at same time, first was
	erased in outgoing/ Changed file format to
	<list_address>.<epoch_time>.<process_id>

	wwsympa/bounced.pl: check if SIGTERM was received
	before processing each file

	src/List.pm: decode subject while searching custom_subject
	avoids multiple custom_subjects

	src/tools.pl: [reported by Odile Germes] comment in
	list_templates were not seen by wwsympa

	[reported by Wang Jian] Bug fix :
	multiple add failed if one failed.  Display ALL error messages

	src/etc/templates/helpfile.tpl: [Lukasz Zalubski] : wrong var

	nls/es.msg: [reported by X-Term] Bug fixes: unwanted \n at the
	end of some messages Bug report: Helpfile contained MIME-Version,
	Content-Type & Content-Transfer-Encoding: 8bit in its body

	src/List.pm: used an obsolet var $Language::sympa_lang
	Bug description: If user had no lang pref, helpfile body was not in
	the correct lang

	src/tools.pl: Bug fix: could not create user cert dirs

	src/etc/scenari/visibility.conceal: show list for owners
	and editors

	src/etc/script/load_subscribers.pl: [Anton Slabbinck] 
	use db_xxx conf parameter

	src/List.pm: Escape \s chars in gecos and email

	wwsympa/wwsympa.fcgi: Escape weird chars in email Don't stop
	resetbounce processing if lastbounce not found

	wwsympa/bounced.pl: [reported by Philippe Riviere] : Escape weird 
	chars in from before creating directories

	When logged in, if main	window's URL is wws/logout, then 
	change it to wws/ before refresh

	src/List.pm: [reported by Fil] : truncated email
	address last char while including file

	src/List.pm: [reported by Dominique Marant] Failed to open 
	list local scenario

	src/List.pm: For compatibility concerns, [host] var is now
	available in scenari.

	check_perl_modules.pl: Fix typos. reported by Michael
	Yount <csf@moscow.com>

	src/List.pm: Bug fix: last topic not loaded if no ending blank
	line. Reported by ronan.salmon@staff.ittralee.ie

	wwsympa/wwsympa.fcgi: Wrong parameters to
	&List::send_sub_to_owner()

	src/List.pm: Set undefined Topic (defined via subtopic) Bug
	reported by thomas.morin@webmotion.com

	wwsympa/wwsympa.fcgi: Fixed "syntax errors, param xxx" while
	editing list config

	wwsympa/wwsympa.fcgi: Make %changed_params a global var Fix
	problem in edit_list
	
	wwsympa/wwsympa.fcgi: Lower case path for each do_d_XXX proc. The
	goal is to support random case in URL generated by some microsoft
	products.

	src/List.pm: Allow . and - in scenario file names. (reported by
	Odile Germès)

 	Hard-coded colors in wws_templates

	src/Language.pm: Bug fix (reported by Odile Germes) : Glob failed
	in language.pm

	src/Makefile: Install scenari/*.* and templates/*.tpl (not CVS/)

	wwsympa/Makefile: Install *.gif only (not CVS/)

  Changes :

	src/List.pm: Change: Don't query database for subscribers # ;
	read stats file instead

	Use mailto URLs instead of FORMs Did not work with Netscape 6

	Makefile: Setting sympa owner of installation directory

	src/Archive.pm: don't delete Received: header fields

	src/List.pm: Accept more characters for db_name and user
	Accept connect_string without db_name and host

	Make user password case-insensitive

	Add RCS Identification tags to templates

	Require MhOnArc 2.4.6

	set_symlinks.pl: Symlinks are set at installation
	time for templates and scenari 

	src/List.pm: [requested by Dominique Marant & Odile Germes]
	provide current config files when reporting errors

	rename wws-lib.pl to wwslib.pl

	wwsympa/wwsympa.fcgi: using "use strict vars"

	src/sympa.pl: when sending mail to <list>-editor, use
	<list>-owner if no editor are defined

	src/etc/scenari/create_list.listmaster: listmaster is listmaster 
	public_listmaster is anyone with validation

	Allow longer options (--debug for -d, --lang for -l) in sympa.pl

	sympa.pl has a new option for dumping
	subscribers list. sympa.pl -s <listname>|ALL

	Using a memory cache for is_user() in List.pm

	src/List.pm: Change : get_first_user() and
	get_first_bouncing_user() don't do JOIN with user_table anymore


3.0   4 Jan 2001

	3.0 is a major release of Sympa. It includes a lot of changes
        but no significant uncompatible changes. Major new features :
        
             -list configuration edition. At last !!!
             -S/MIME encryption and HTTPS authentication (because
              OpenSSL itself is a beta test distribution, all features
              based on OpenSSL are distributed under beta testing status)
             -Shared web space for each list.
             -New web navigation ergonomie.

        This version 3.0 has been distributed under alpha and beta testing
        version since October and has been widely tested. Special thanks to
        Olivier Lacroix for a lot of contributions.        

  Changes :

        tarball now include a KOWNBUGS file.

  Bug fixes :

	[Olivier LACROIX <Olivier.Lacroix@ciril.fr>]
	Corrected es.msg for HPUX
	Corrected chmod (for HPUX compatibility) in wwsympa/Makefile

	wwsympa::Savefile() failed because filename was lost when calling
        editfile() afterward (may_edit on an unblessed list reference)
        
3.0b.9	23 Dec 2000
  Bug Fixes :

	[reported by Jean-Luc OMS <Jean-Luc.Oms AT lirmm.fr>]
	"comment" files used for site's list templates

	[Olivier LACROIX <Olivier.Lacroix AT ciril.fr>]
	Fixed message rejection format in sympa.pl

        [Olivier LACROIX <Olivier.Lacroix AT ciril.fr>]
	Replace system call to MhOnArc in wwsympa.fcgi

        [reported by François Dagorn <dagorn AT univ-rennes1.fr>]
	When subscribtion is sent to owner, the approve command
        should be a mailto:

	[reported by Fil <fil AT bok.net>]
        Using uniq Return-path impossible with postfix. Replace the
        separator char "/" by "==".  
	
        [Jérôme Marant <jmarant AT free.fr>]
	Missing "CREATE DATABASE" in create_db.Pg

3.0b.8	18 Dec 2000

  New features :
	Sympa not archive anymore message with 'X-no-archive: yes' or
        'Restrict: no-external-archive' smtp header.

	[Fil <fil AT bok.net>]
	New "remove_headers" parameter in sympa.conf
	It tells sympa what SMTP header fields to remove in distributed
	messages.

*****	You need to add an alias for listmaster :
*****	listmaster: "|/home/sympa/bin/queue listmaster"

	New optional wwsympa.conf parameter "default_home" in order to choose
        another home page for exemple "lists"

        A new link to load X509 certificat in list page is added
        if list as it's own email certificat.

	New sympa.conf parameter "ssl_cert_dir"
	Default is expl/X509-user-certs
	Its value in sample sympa.conf can be overwritten with SSLCERTDIR variable
	at make time

	New [list->xxx] vars available within scenario conditions

  Bug fixes :

	[reported by Hubert Ulliac <Hubert.Ulliac AT Uhb.Fr>]
	First subscriber in digest mode did NOT receive digests
	The problem was due to a missing parameter at mailto() call

	[reported by Hubert Ulliac <Hubert.Ulliac AT Uhb.Fr>]
	[conf->xx] where not recognised in scenari match() conditions

	Fix welcome message lost when must be signed
        (bug introduced in 3.0b4)

	Reviewbouncing failed with "No Page 1" error message.

	[Philippe Bricout <pbricout AT setra.fr>]
	Change some hard-coded path to --ETCBINDIR-- in wws_templates

	[reported by J.E. Gadenne <jeg AT lettres.net>]
	Escape '<' and '>' chars in modindex's Subject field

	[Jérôme Marant <jmarant AT free.fr>]
	Delete Perl interpreter calls in perl modules
	Correct privileges on mhonarc-ressources file

	[Philippe Bricout <pbricout AT setra.fr>]
        fixe bugs in wwstemplates\admin_menu.*tpl
         
        [Olivier LACROIX <Olivier.Lacroix AT ciril.fr>] fixe the
        "%s" bug in sentence "Your message for list %s has been ..."
        fr translation of d_read template

	Could not change "digest" time in edit_list_request form

	[reported by Didier Lamballais <Didier.Lamballais AT irisa.fr>]
	Makefile : Missing conditional around Perl 5.6.0 warning

	"Make clean" now deletes the "bouncequeue" program

        Remove unused module sign_filter.pl 

	Fix reviewbouncing

  Changes :

	[Josep Roman <josep.roman AT zuerich-see.ch>]
	Updated spanish wws_templates

	Return the filled form when an error occurs in create_list

	Use a new window for Login

	Resulting addresses of a "search" are selected
	Deletion requires confirmation

	Subscribe/signoff web confirmation now performed with Javascript

	wwsympa.fcgi : default cookie expiration is 0 min
	Login will last until the web browser is closed.

3.0b.4	30 Nov 2000

  New features :

	[Josep Roman <josep.roman@zuerich-see.ch>]
	Complete spanish translations of the web interface, including update of es.msg

	Change_email feature in WWSympa (accessible from prefs)

	[requested by Geoffrey Lee <snailtalk AT linux-mandrake.com>]
	Makefile : include RPMTOPDIR variable

	Makefile : new "make rpm" building Linux RPM binaries for both
	RedHat and Mandrake.

	Makefile : new PIDDIR variable ; creating spool directories

        [reported by Patrick BROSSIER <Patrick.Brossier AT mgm.fr>]
	The main CGI (wwsympa.fcgi) can now be installed elsewhere (not BINDIR)
	by setting WWSBINDIR in Makefile
       
        [Renato Bonomini <renato AT ramiola.dsmnet.it>]
	Translation of web templates in Italian

  Bug fixes :

	[reported by Olivier LACROIX <Olivier.Lacroix AT ciril.fr>]
	Changes in mail::mailback() to leave messages in msg/ spool
	when working with FastCGI

	[Robert Marchand <robert.marchand AT UMontreal.CA>]
	A few bug fixes in Makefiles

	[reported by Olivier LACROIX <Olivier.Lacroix AT ciril.fr>]
	"unknown locale" errors in wwsympa log file

	[Olivier LACROIX <Olivier.Lacroix AT ciril.fr>]
	chomp() on From: in DoSendMessage()
	Corrected template inclusions

	archived.pl : backslashed '$' in msgid before system call to mhonarc

	Under some circonstances (FastCGI+Perl 5.6+...), WWSympa was dying
	with the following error :
	FastCGI: server wsympa.fcgi stderr: Not a GLOB reference 
	This happened while sending a service message (welcome, bye,...)
	because of the fork performed by WWSympa, not supported by FastCGI.
	WWSympa now completely relies on Sympa for message distribution.
	Communication is performed via spool/msg/.
	
	Could not set owner of non-empty directories or documents in shared.

	Better check of email addresses in ADD and DEL commands

	Marc/Search.pm : add trailing '/' to directories to make it work
	(on Linux system) with symbolic links

	Corrected REMIND from the web


  Changes

	Search among subscribers limited to 500 records

	Sympa deletes its pidfile when exiting

	wwsympa.fcgi : request a confirmation before unsubscription

	Generalization of mail::mailback() in List.pm

	wwsympa.fcgi (edit_list) : deleting an email address, deletes the
	corresponding owner/editor entry

	WWSympa.fcgi installed with SetUID bit

        New admin information in list_menu 

        french templates

3.0a.1


  Bug fixes

	Pass the module name to CPAN::Shell->install(), not the package name 

       	A few corrections in load_subscribers.pl

	Multple "list" INPUTs in wws_templates/review.tpl

       	[reported by Jean-Marc Larre <Jean-Marc.Larre AT cesr.fr>]
       	Accept complex string for 'user' entry in paragraph 'include_ldap_query'

       	Error in review.tpl ; could not delete users form review page.

       	[Bill Shirley <bill AT shirleyfamily.net] 
	a few bugs in documentation

3.0a	30 Oct 2000

	3.0 is a major release of Sympa. It include a lot of changes
        but no significant uncompatible changes. The 3 major new features
        are :
             -list configuration edition. At last !!!
             -S/MIME encryption and HTTPS authentication
             -Shared web space for each list.


   New features:

	S/MIME : Sympa now can be configured to distribute encrypted messages
        (need a email certificate for the list). It also sign welcome message
        comming from a list (in order to distribute the list certificate).
        HTTPS authentication can be used with user certificate. In this case
        no login form is needed at all.

	"edit_list" action in WWSympa : a important change in internal
        data structure for list configuration. You must check that sympa.sympa
        has write access on config files.

	Shared web features set. This developpement from Sophie Le Floch
        sophie.le-floch AT cru.fr is intended for new groupware features
        in WWSympa.
	
****	New design for web navigation. All web templates are changed. 3.0a
****    include ONLY us web templates. Of course 3.0 release will contain
        previous french and spanish translation. Translators are invited to take
        contact with us.


	New parameters in "include_ldap_query" paragraph :
	   o attrs <mail_attribute> (default 'mail') attribute
           containing the email address(es)
           o select <first | all> (default 'first') if the query
           returns multiple values, do we keep the first one or all of them

	Add a protection at the entrance of archives. If the user is
	not identified, he/she has to click a button to access archives.

	New parameter "visibility" for a topic in topics.conf
	It refers to "topics_visibility" scenario

	Check Message-IDs to avoid loops.

	"default_user_options" now applied to included users.
	
	Importing lists to 'database' mode can be performed using
	WWSympa. All you have to do is edit the list config (in WWSympa)
	and change the user_data_source from 'file' to 'database'.


    Changes :

**** 	[] are automatically added to the custom subject

****    Daemons(sympa.pl, archived.pl, bounced.pl) now set their UID themselves.
****    You can thereby run them with root privileges (a script is provided
****	in script/ directory for starting/stoping Sympa)

	No more list_parameter.conf : comments are in wws_template files
	titles are in NLS

	"make install" will install sample sympa.conf and wwsympa.conf 
	if none exist

	Added "INITDIR" var in Makefile, to install SYSV init scripts

	No more translations in wwsympa.fcgi and wws-lib.pl

	["Pascal J. Bourguignon" <pjb AT imaginet.fr>
	Add missing error messages to queue.c
	
	Multipart/report messages are ignored in distribution process

        Disposition-Notification-To headers are removed before distribution

	Search (among subscribers) in WWSympa, also searches the gecos

	Included files can now have a gecos column

	Set a password for users subscribing/ed via email.
	It can be added in templates ([user->password])

	Do not enter user information in user_table before he/she has
	subscribed.

	Set "log_socket-type" to "inet" in sample/sympa.conf if on a Linux 
	system.

	[requested by Geoffrey Lee <snailtalk AT linux-mandrake.com>]
	"DESTDIR" can be set in the main Makefile to install it in
	directory different from "DIR"
	This should make RPM & DEB packagers' life easier.

	Install samples in $(DIR)/sample

	Install scripts in ~sympa/bin/
	Variables parsed at make time in scripts

	[requested by Mathieu Arnold <arn_mat AT club-internet.fr>]
	Add "quiet" option to multiple add

	"editor,quiet" & "editorkey,quiet" actions in "send" scenario
	
	New "close_list" and "restore-list" features in WWSympa

	Made List::request_auth() and List::compute_auth() object methods

	List::_load_users_file() split in 2 subroutines

	Scripts in script/ are now parsed, via a Makefile and installed.

	Access to "info" page is controlled by "info" list parameter

    Bug fixes :
	
        [Jean-Marc Larre <Jean-Marc.Larre AT cesr.fr>] fixe LDAP interoperability
        problem with Netscape directory server.

	Use List::distribute_msg() with CONFIRM command.
	This will allow usage of anonymous_sender with confirmations.

	[Cedric Scott <cedric.scott AT sse.ie>] fix the quiet option
        in scenario.

	Fixe am_i('editor',..) in order to make owners as default editors

	List::verify() failed to evaluate [conf->xxx] and [header->xxx]
	if not exact match

	[Thibault Verollet <tverollet AT jetmultimedia.fr>]
	INSERT IGNORE in load_subscribers.pl

	[reported by Richard Balint <balint AT balintrc.oca.udayton.edu>]
	List::send_msg_digest() does a BULK call to sendmail with ALL 
	the recepients (in Digest mode)

	Bounced.pl failed writing bounces in OTHER directories

	Bounced enable to remove errors (get_action replace by request_action)
        Idem for Commands.pm : del

	[reported by Patrick CAO HUU THIEN <cao_huu_thien AT inrp.fr>]
	Strip end of lines from wwsympa.conf

	[reported by  Christian Perez <cperez AT drecam.saclay.cea.fr>]
	Syntaxe error in Archi.pm and arc2webarc.pl 
	(COMPILANT => COMPLIANT)

	[reported by Odile Germes <odile.germes AT univ-rennes1.fr>]
	Sympa would die while archiving a message for a list
	not in database mode.

	[Hadmut Danisch <hadmut AT danisch.de>]
	SQL query for MySQL changed from :
		bounce_subscriber != 'NULL'
	to :
		bounce_subscriber is not NULL

	[reported by "J.E. Gadenne" <jeg AT lettres.net>]
	Decode messages subject, included in reject.tpl

	[reported by Olivier LACROIX <Olivier.Lacroix AT ciril.fr>]
	With PostgreSQL, WHICH failed because SELECT is case-sensitive.
	Sender email address is now lower-cased in Commands.pm

	'comment' files in create_list_templates/ directories are
	now available from within 'create_list_request' template

	Changed Language.pm to use multiple NLS catalogues.
	Command reports related to a list now use its language.

	Number of subscribers of lists in 'include' mode is now correct.
	
	Variables in match expresions (/[var]/) were not evaluated
	in scenario 

	[Dominique ROUSSEAU <d.rousseau AT mail.dotcom.fr>]
	archived.pl could not log anymore

	[Olivier LACROIX <Olivier.Lacroix AT ciril.fr>]
	Rejection and forwarding reports did not include correct
	MIME headers

	Don't log strings with \0, driving syslogd mad.

	In WWSympa, listmaster has privileged_owner privileges

	[Dominique ROUSSEAU <d.rousseau AT mail.dotcom.fr>]
	Pass the umask to mhonarc in archived.pl

	[reported by Laurent Aublet-Cuvelier <Laurent.Aublet-Cuvelier AT imag.fr>]
	X-Sympa-To should be assigned 'email'@'host' as defined in sympa.conf.

	Rename a message as BAD if it cannot be opened

	[reported by Hervé Maza <herve.maza AT education.gouv.fr>]
	Add Subject: to moderation notification message

	Create "spool/" directory before attempting to create spools.

	[reported by Denis Havlik <denis AT mandrakesoft.com>]
	Header and Footer were not added in 'append' mode

	Could not remove_arc with Message-IDs containing a '$'

	$sortby now used in List::get_first_user() for Oracle and Sybase

	Deletes all Mail::Internet in Commands.pm

	[Hubert Ulliac <Hubert.Ulliac AT Uhb.Fr>]
	Corrected scenario "access_web_archive.intranet"

        fix &is_web_archived function in order to adapt it to the new
        load_admin proc. 

	fix incorrect storage of user certificats

	[reported by Olivier LACROIX <Olivier.Lacroix AT ciril.fr> and
        Bertrand.Poulet AT pasteur-lille.fr (Bertrand Poulet) ]
	Fix src/Makefile in order to update queue and bouncequeue when
	edition main Makefile.

	[reported by Mathieu Arnold <arn_mat AT club-internet.fr>]
	Confirmation for QUIET commands now works

	Change to check_perl_modules.pl :
	argument passed to CPAN::Shell->install() is the module name

	Save a copy of messages for digest before customizations
	(custom_subject, List-xx header fields, footer, ...)

	Warn if topics.conf is empty while creating list.

	[Luc Saillard <luc.saillard AT alcove.fr>]
	Aditional Bounce recognition (Wanadoo, Postfix, bigfoot)

	Don't consider messages as BAD if list has 0 subscriber

	[reported by Emmanuelle Rivière <cdb AT bok.net>]
	Hide recepients of summaries

	[reported by Michel Bouissou <michel.bouissou AT i-quake.com>]
	Corrected templates edition in serveradmin

	[Laurent Rathle <lrathle AT teaser.fr>]
	Corrected scenario_test, wrong path to scenari

	[Raymond Bourges <raymond.bourges AT univ-rennes1.fr>]>
	Missing quote in arcsearch_form.fr.tpl


2.7.3 25 July 2000

    Bug Fixes :

	[Gustavo Araujo Bittencourt <gustavo.bittencourt AT capes.gov.br>]
	Database name hard-coded for one query (Sybase only)

	[Marc Baudoin <babafou AT pasteur.fr>]
	Add <> to anonymous_sender MessageID

	Replace real color by --XX_COLORS-- in mhonarc-ressources

	Allow welcome.tpl edition in edit_list.conf

	Correct path for aliases when creating a list.

	[Laurent Ghys <Laurent.Ghys AT ircam.fr>]
	Sort %todo in check_perl_modules.pl to avoid error message with CGI::Fast

	[Gustavo Araujo Bittencourt <gustavo.bittencourt AT capes.gov.br>]
	Changed connect string for Sybase ("server" instead of "host")

	[Christophe Labouisse <labouiss AT cybercable.fr>]
	NULL characters are coded as 'NULL' with PostgreSQL ('\N' with MySQL)

	[reported by Didier Lamballais <Didier.Lamballais AT irisa.fr>]
	WWSympa would not use its "log_facility" parameter

	[jmr AT computing.com]
	Corrected the LIMIT clause for to work with PostgreSQL 
	LIMIT { count | ALL } [ { OFFSET | , } start ]

	Decode headers of command messages.

	Don't save decoded body data (MIME::Parser) to disk in bounced.pl

    Changes :

	Give up the "cgi-lib"-like ReadParse, to allow file upload.

	Every log entry is preceded by the service (sympa|wwsympa|bounced|archived)
	
	MIME::tools now requires File::Spec


2.7.2 30 June 2000

    Bug Fixes :

	[PORTE Olivier <porte AT dsi.cnrs.fr>]
	Corrected "returned" to "return" in Commands.pm
	(4/07/2000)

        One more bug in modindex

    Changes :
        [Josep Román <josep.roman AT zuerich-see.ch>] 
	update spanish templates

2.7.1 30 June 2000

    Bug Fixes :
	[reported by Claude Gross <Claude.Gross AT urec.cnrs.fr>] 
        Inhibit message footer insertion in multipart/(signed|alternative)
        messages !

	wws : default Content-Type 'application/octect-stream' for
        unknown file extention while viewing archive and moderated
        message attachement.

	wws : fixed modindex templates in order to be able to view
	message without subject

	[Christophe Labouisse <labouiss AT cybercable.fr>]
        bounced.pl : fixed test on regular file

	[proposed by Christophe Labouisse <labouiss AT cybercable.fr>]
        Sympa : patch file for List.pm is included in src directory, 
        not yet tested by Sympa authors :
        http://listes.cru.fr/wws/arc/sympa-dev/2000-06/msg00017.html

    Changes :
	
        New list optional parameter paragraph shared_doc for a futur
        set of features.
     
2.7   27 June 2000

    New features :

	[Christophe Labouisse <labouiss AT cybercable.fr>]
	bounced.pl patched to recognise Postfix bounces

	[proposed by Dominique Marant <Dominique.Marant AT univ-lille1.fr>]
	New configuration parameter "rfc2369_header_fields" to add 
	RFC2369 compliant header fields (List-xxx).

    Changes :

*****	Requires MIME::Parser >= 5.209
	
	[Josep Román <josep.roman AT zuerich-see.ch>]
	Updated nls/es.msg

	Default log_facility in wwsympa.conf is now sympa's log facility
        (used by wwsympa, archived and bounced)

	The directory for list creation templates is renamed
        "create_list_templates" 
	
    Bug Fixes :

	[reported by John Sheehy <jes AT e-techservices.com>]
	Corrected permissions on sample files wwsympa.conf
	& sympa.conf

	Fixed privileges to rw.r..r.. in bin/etc/

        [reported by Dominique Marant <Dominique.Marant AT univ-lille1.fr>]
	location of mhonarc-ressources file is now ~sympa/expl/<listname> or
        ~sympa/etc or ~sympa/bin/etc

        [reported by Lucas <Lucas AT ians.be>]
	Reply-to in list info command when using forced_reply_to

	[reported by Jean-Charles Godien <godien AT univ-nc.nc>]
	incorrect subscribtion form for closed list if user is
        not logged in

	[reported by Dominique Marant <Dominique.Marant AT univ-lille1.fr>]
	Ignoring temporary files T.<my_list> in bounce spool

	[Didier Lamballais <Didier.Lamballais AT irisa.fr>]
	'hostname --long' on Solaris systems sets hostname to '--long'
	Changes in the Makefile to make it work on Solaris

	[reported by Josep Román <josep.roman AT zuerich-see.ch>]
	Sympa is unable to use default helpfile.tpl and lists.tpl

2.7b.3 16 June 2000

    Changes :

	Set -d option when using -D

	Add "Pragma: no-cache" to HTTP headers

    Bug fixes :
	
	[reported by Dominique Marant <Dominique.Marant AT univ-lille1.fr>]
	In WWS, editfile would always show the site's default.
	Missing last;

	[Didier Lamballais <Didier.Lamballais AT irisa.fr>]
	Missing spaces before batslashes in main Makefile

	[reported by Patrick BROSSIER <Patrick.Brossier AT mgm.fr>]
	Bounced.pl failed to load sympa conf file

	When asking WWS for archives of not archived list :
	Can't use an undefined value as an ARRAY reference

	Failed to decode message bodies with MIME::tools 5.xxx
	Now uses bodyhandle() method instead of body().

2.7b.2 15 June 2000

    Bug fixes :
	
	Unknown list parameters welcome_return_path, remind_return_path,
	serial

	Failed to store S/MIME certificates
       
        Fixed SMIME feature in various commands

2.7b.1 14 June 2000

    New features :

	Boucing addresses are sorted by (last_bounce, bounce_class,
        bounce_count)in reviewbouncing page

	"make" now installs required CPAN modules

	WWSympa is now a part of sympa. Default installation location
*****   for wwsympa is now the same as sympa (you may update your
*****   httpd.conf)

*****   Simplifyed installation process with a Makefile in upper directory
*****   level. Others Makefile should not be applyed "by hand" anymore.

	You way define WWSympa colors in the main Makefile

	New etc/list_parameters.<lang>

	Allow templates in list's directory (eg info.tpl)

	Use a new message template named reject.tpl to send a notification
        to the sender of a rejected message while rejected by a editor.
        (quiet reject inibit this feature)

	View unmoderated messages on the web via MhOnArc for better viewing
	of complex MIME messages

	Implement wws/loginrequest/referer ; once logged in, WWS
	redirects to the referer URL

	[laurent Merot <laurent.merot AT univ-rennes1.fr>]
	New Sympa logo

	Commands in multipart messages are recognized in the first text/plain
        part.

	RFC 2369 compliant header fields (List-xxx) are automaticaly
        added to distributed messages.

	New list parameter forced_reply_to like reply_to but overrights
        existing Reply-To: header.

    Changes :

	[proposed by Dominique Marant <Dominique.Marant AT univ-lille1.fr>]
	Show the site's default in edit_file if the template doesn't
	exist for the list. This makes the action more user-friendly
	and helps owners understand templates format.

	Supressed 'sympa_conf_file' param in wwsympa.conf

	Initial password generated randomly

	List-related makefile test the list's language instead of
	the user language

        New HTTP cookie format. This cookie can be checked without access to
        user passwd. The goal is to allow different application to use
	Sympa cookies. New library module : cookie-lib.pl for developpers who
	want to share authentication with WWSympa. 

        New optional WWsympa parameter cookie_domain, used to control
        the domaine validity of Sympa cookies. 

	Scenario can be now located in the list directory. Sympa search
        scenario in the following order :
          -  ~sympa/expl/<listname>/scenari/
          -  ~sympa/etc/scenari/
          -  ~sympa/bin/etc/scenari/
        ~sympa/bin/scenari/ does not exist any more

	Replace --VAR-- in sample conf files

*****	Extend topics.conf format in paragraph mode for further lang info
*****	and scenarization, look at the sample to update you topics.conf

    Bug Fixes :

	Add "hidden" inputs in forms to allow submit when hitting "Return".

	[reported by Mathieu Arnold <arn_mat AT club-internet.fr>]
	"SET * <OPTION>" would only work on the first subscribed list .

	[reported by Dominique Marant <Dominique.Marant AT univ-lille1.fr>]
	Quoted strings not accepted as arguments to conditions in scenario.

	Attached document in web archives accessible through WWSympa.

	Sympa died if it failed to parse a message.

	Use &MIME::Words::decode_mimewords() instead of &tools::decode_string()
	in wwsympa.fcgi


	When a subscriber is deleted from a list, his record is deleted in
        user_table if he/she has no more subscription. This partly prevents
        discrepancy of database	size.

	Ignore white spaces at the end of sympa.conf lines

	[reported by Yves Maniette <et AT xps.sct.ub.es>]
	"unrecognized escape sequences" in fr.msg and es.msg

	[reported by Patrick BROSSIER <Patrick.Brossier AT mgm.fr>]
	Use sympa.conf's "log_socket_type" in archived.pl & bounced.pl

	[Patrick BROSSIER <Patrick.Brossier AT mgm.fr>]
	Create $(ICONSDIR) in Makefile

	[reported by Raymond Bourges <raymond.bourges AT univ-rennes1.fr>]
	WWSympa did not use user prefs for cookie expiration

	[reported by Christophe Turbout <Christophe.Turbout AT info.unicaen.fr>]
	Loosing topics info while creating lists

	No more duplicated headers fields (From, Subject, To) in digests.
	Now using MIME::Words

	Archive message when sent to zero subscriber.

2.7a 22 mai 2000

    New features : (WWsympa list creation, S/MIME handling, remove in archive
                    nls for fi, sorting lists by topics , ...)

	Search_list feature in WWSympa

	New ICONSDIR in WWSympa's Makefile
	New wwsympa.conf parameter icons_url

	Update all send scenario in order to accept smime messages

	script/arc2webarc.pl : for converting sympa archives in wwsympa format.

	Quiet DEL from the web

	etc/topics.conf

	Debug mode set when URL looks like wws/debug/xxx or wws/debug2/xxx

	New subscriber option "summary", available if list have a digest.
        Allow reception of just the list of messages (usefull if the
        list is archived).

	"Lists" page sorting lists by topics (see topics list param)

	SORT feature in REVIEW page.
	REVIEW is faster, thanks to LIMIT use in SQL selections

	New "homepage" file included in the info page of the list.
	"info" file is now text/plain, dedicated to the INFO
	mail command. Info page prints "homepage" file or "info" file.

       	WWsympa include list creation (at last !)   

       	Four new list parameters :
         -1- topics (optional). (key words about the list)
         -2- creation (optional)  include date of creation and creator email
         -3- update (optional) idem creation
         -4- serial (optional) (used for writting access conflict
             resolution on the config file)
	 -5- status (open|closed|pending)
       
       	Creation, update and serial are initialized by WWS's create_list.

	Operation access_web_archive now uses scenario (apply from
        web_archibe/access list parameter). Available scenario include
        previous keyword values and a new one name intranet. This
        scenario uses [remote_host] the client host name or
        [remote_addr] the client host addr  in order to allow privilege
        definition based on the browser host (not only on the email).

        [remote_host] and [remote_addr] are also useable in review 
        and visibility scenario. They should become availible in
        any scenario soon.  

	New operation for list configuration file display available
        from list admin page.

        rule in a scenario now accept a list of auth method :
        exemple :  is_subcriber([listname],[sender]) smime,md5 -> do_it

	List::get_first_user() has 3 new parameters :
	  o sortby : may be "domain"(default), "email" or "date"
	  o offset, rows : the offset of the row to return and the 
	    number of rows. 
	When these last parameters are set, a LIMIT clause is added to 
	the SELECT.

	[Mikko "Bemmu" Sepponen <lomise AT uta.fi>]
	Translation of Sympa in Finnish (NLS only)

        WWS archives are now parsed. 
          - the mhonarc_ressources file do not use anymore
           ".fr" or ".us" suffix but it the preference langage
           is applyed at runtime so anyone can chose it's lang.
          - the message sender can remove its messages
            (the remove button is inserted only to appropriate
            users : message sender, list owner and listmaster)
*****   REQUIRE MHonArc v2.4.6 available from <http://www.mhonarc.org>. Check:
*****   http://www.xray.mpe.mpg.de/mailing-lists/mhonarc/2000-04/msg00028.html
*****   You need to rebuild all your archive. This can be done
*****   using WWSympa (new feature in the "Server Admin" page).
        
       	New template tags : [STOPPARSE] and [STARTPARSE]
        (mainly to prevent abusive parse in mail archive)
          
        New send scenarii that reject multipart messages
        or request editor if message is multipart.

                
    Changes :

	Sympa notifies listmaster and dies when database is unreachable.

	Reverse order in REVIEW by date

	WWSympa RELEASE NOTES integrated into main release notes
	
	Control on email addresses (when subscribing) is more strict.

	New directory lists_templates both under ~sympa/bin/etc
        and  ~sympa/etc/ to store list profile used by WWSympa
        create list.

	Sympa no more reports signatures (quit command found).
	Replying to sender when no command was found.

	No more warning when using an old NLS catalogue file

	Sympa.conf parameter queuemod, queueexpire, queueoutgoing,
        queueauth and queuedigest are optionel. Sympa create all its
        spool at run time. 

	[Raphael Hertzog <rhertzog AT hrnet.fr>]
	Reintroducing alternatives to mailto: for REJECT,
	DISTRIBUTE, CONFIRM. Changed us.msg and fr.msg only.

    Bug Fixes

	No host in X-loop for lists with "host" config param

	[reported by Philippe Bricout <pbricout AT setra.fr>]
	chmod user.group not valid on Solaris system
	Replaced by chown + chgrp

	Deleting last bounce when doing a resetbounce

	[reported by David E. Bernholdt <bernhold AT npac.syr.edu>]
	Sympa processes the message body if no command processing 
	succeeded in the Subject:

	[reported by Jacques PYRAT <webmaster AT tregouet.org>]
	Preserve Subject header field encoding for messages.

	[reported by Hugo Frappier <hugo_f AT hotmail.com>]
	Use log_socket_type parameter within WWSympa.

	Bug detected in Mail::Header caused Sympa to "sleep".
	You should update to Mail::Header 1.18, when it is
	available

	Delete file when saving an empty file.

	The parser failed when processing interleaved loops

	Add smtp::reaper to wwsympa main loop

	No more "Sympa not setup to use DBI" logged by archived.pl

	[Olivier LACROIX <Olivier.Lacroix AT ciril.fr>]
	When archived.pl saved mail in arctxt it would
	not close the file descriptor. If the archived 
	process was killed, the last mail is never written.

	Setting gecos from editsubscriber now works.

	[reported by X-Term <xterm AT beta.cosapidata.com.pe>]
	Corrected bug in archived.pl :
	"No db_name defined in configuration file"

	[reported by X-Term <xterm AT beta.cosapidata.com.pe>]
	Setting reception would delete the user's gecos

	[X-Term <xterm AT beta.cosapidata.com.pe>]
	Corrected admin.es.tpl

	[email] may be used in del scenari

	In order to respect the maxsmtp sympa parameter, WWSympa
	moderation process do not distribute messages itself. It
        just put a valid distribute command in Sympa's spool.

	No more "No directory for list sympa" when parsing a
	command.
	
	Reload total of subscribers from database when stats file
	has changed. Total of subscribers used to be incorrect
	due to Sympa and WWSympa working on the same data.

	[reported by Olivier LACROIX <Olivier.Lacroix AT ciril.fr>]
	Added missing scenario invite.closed

	[reported by Albert Bruc <abruc AT electron-libre.com>]
	Add a subject "No subject" in modindex page to access
	messages

	MD5 confirmation keys are based on time only.
	To ensure keys for different messages are different,
	sympa sleeps 1 second before generating the MD5 key.

	[reported by X-Term <xterm AT beta.cosapidata.com.pe>]
	Corrupted helpfile.tpl

2.6.1   05 April 2000

   Bug Fixes :

	Incorrect inclusion of archives in arc.us.tpl

2.6	03 April 2000

    New features :

	First implementation of remove_arc

	Multiple add

	[list->owner] is made available in list templates
	Example :
		[FOREACH ow IN list->owner]
		  [ow->gecos] <mailto:[ow->email]>
		[END]

	Loop control : 3 new parameters define the site
	policy regarding loop control on command reports : 
	loop_command_max, loop_command_sampling_delay and 
	loop_command_decrease_factor

    Changes :

	Allow "+" in listnames

    Bug fixes :

	Correction in the Makefile, ie trying to install files
	before creating DEST directory.

	Command reports were not sent when using <listname>-<command> 
	addresses

	Unset locale LC_ALL while defining cookie expiration date
	so the client understands it

	Possible loop with reset_bounce action

	Rename a message to BAD-xx when it is rejected.

	Added X-Loop: header field to command reports

	List::is_digest() fixed  (bug from 2.5.4b)

	[Richard Balint <balint AT balintrc.oca.udayton.edu>]
	queue.c patched to match exact keyword "queue" in sympa.conf
	Applied to bouncequeue.c as well

	Restore case-sensitive search of NAME and INDEX in parser.pl


2.5.4b  23 March 2000

   New Features :

	Setlang for POSIX::strftime() use

	Gecos (user name) may be given at subscription time.

	Contextual help.
   
	Owners can choose review/reviewbounce page size from admin page.

	Added 'Reset errors' in bounce review page.

	[Hubert Ulliac <Hubert.Ulliac AT Uhb.Fr>]
	Search feature in web archives. This is based on MarcSearch,
	a search engine dedicated to MhOnArc, written by Eric D. Friedman
	<edf2 AT pacbell.net>.

        [Josep Román <josep.roman AT zuerich-see.ch>]
	Translations of templates to spanish (changes in wws-lib.pl
	and wwsympa.fcgi also)

    Changes :

	New subscribers are not obliged to set their password.

	Added "sigrequest" action and "unsubscribe" to info page. 

	"mhonarc-ressources" renamed "mhonarc-ressources.default".

	"log_socket_type" parameter's default becomes "unix".
	On Linux systems, syslogd requires an additional -r option
	to log via UDP.

	[Alberto Pasquale <techlist AT pianeta.it>]
	Improvements in it.msg
	Translation of templates to italian	

    Bug fixes :

	[reported by Christophe Harbine <Christophe.Harbine AT univ-savoie.fr>]
	Review page size was not respected when datasource was an inclusion.
	(the same problem appeared when using flat users file or Oracle/Sybase
	database)

	No more "Sympa not setup to use DBI" logged by bounced.pl

	Set NLS language in wwsympa.
	
	[Hervé MAZA <herve.maza AT education.gouv.fr>]
	Save files (as listmaster) in etc/templates/ instead
	of expl/ (in do_savefile()).

	Lowercase listname

	Archived.pl did not use default mhonarc ressource file.

        [Hervé Maza <herve.maza AT education.gouv.fr>]
	bounced died when using unique return_path. Fixed.

	[reported by Stephane Igounet <Stephane.Igounet AT univ-avignon.frd>]
	Sympa would die when receiving a WHICH if DBI is not
	installed. Corrected

	[reported by Alberto Pasquale <techlist AT pianeta.it>]
	user->lang variable was not accessible in global templates
	when not using a database. $lang variable becomes 
	$Language::sympa_lang

	[Laurent LAVAUD <laurent.lavaud AT u-bordeaux2.fr>]
	Changed the connect string for PostgreSQL

	[Hervé Maza <herve.maza AT education.gouv.fr>]
	Corrections in List::is_moderated()

	Number of subscribers updated in stats file

        Fixed INVITE scenario usage for INVITE command

        Fixed NLS usage for send auth context (fixe done in
        fr.msg and us.msg, need to be propagated in other NLS)

2.5.3b  9 March 2000

     New features :

*****	New "cookie" parameter in sympa.conf
*****	We HIGHLY RECOMMEND set this parameter to have
*****	different MD5 authentication keys from one site to another

	[Josep Román <josep.roman AT zuerich-see.ch>]
	Translation to spanish of :
		+ Sympa templates
		+ scenari descriptions
		+ WWSympa templates
	Update of es.msg

	[Thierry Charles <tcharles AT electron-libre.com>]
	[Albert Bruc <abruc AT electron-libre.com>]
	Sympa now recognises Sybase databases. 
	You need to install the Sybase openclient first,
	(http://www.sybase.com/products/databaseservers/linux/linux1192_reg.html)
	and then dbd-Sybase.
	(http://www.cpan.org/authors/id/TIMB/DBI/)
	
     Changes :

***** 	Abandon of inline scenarii (defined in list config file)
*****	Sympa now expects a scenario name in list config files.
*****	This is required to go further in list creation/edition in WWSympa
	
*****	Sympa's license is now GPL ONLY (users of previous versions 
*****	may choose between GPL and Artistic licenses). This is needed
*****	to allow inclusion of other GPL librairies within Sympa
*****	distribution (including WWSympa).

	[Carsten Clasohm <cc AT clasohm.com>]
	Update of de.msg

     Bug Fixes :
	
	Default value for "reply_to" parameter is "sender"

	[Raphael Hertzog <rhertzog AT hrnet.fr>]
	Reintroduce $(DESTDIR) in Makefile and subst.pl
	This simplifies the task of creating packages.

	Sympa deletes a digest for unknown lists

	List's hostname available in lists.pl, [l->host]

	[reported by Mathieu ARNOLD <arn_mat AT club-internet.fr>]
	List's "host" parameter uncompletely used ; when forwarding
	requests to owners for instance.

	[Hervé MAZA <herve.maza AT education.gouv.fr>]	
	Corrected $list->info()
	Corrected REMIND when authentifying
	Corrected loop in global_remind.tpl

2.5.2  18 Feb 2000

     Bux fixes :
 
	$List::use_db initialized 

	loginbanner translated to french

      	"subscribe.open" scenario was corrupted ; it was including
      	an unknown scenario

   Changes :
	
	WWSympa requires a RDBMS

2.5.1  18 Feb 2000

     Bux fixes :

      Sympa died when sending a message in an empty list with error msg :
      Illegal division by zero at /var/sympa/bin/List.pm line 751

      "bouncequeue" program accesses sympa.conf to locate "queuebounce" directory.
      There is no more default value for "queuebounce" (and "queue") in
      Conf.pm.

      Sympa died while parsing a template, it could not connect to an unknown
      database type :
      Can't connect(DBI::dbname=sympa;host=  ), no database driver specified 
      and DBI_DSN env var not set at /home/sympa/bin/List.pm line 216

      [Patrick BROSSIER <Patrick.Brossier AT mgm.fr>]
      Make of cn-gb and cn-big5 catalogs failed because of \" ending lines.


     New features :
     
      scenari can contain include directive. If a scenario contain 
      the line include foo
      the scenario will load the file include.foo according to the
      location preference. This is introduce in order to share
      various rules by deffernt scenario in order to made liter
      administration. Can be use for example to manage a blacklist.
    

     Changes :

      Sympa will not die if NLS catalogue version is different
      from Sympa version.

2.5  16 Feb 2000

   For more information on how to update to this version :
   http://listes.cru.fr/sympa/howtoupdate.html

   New features :

	error.<lang>.tpl

	Moderation can be performed from viewmod page

	"Rebuild archives" function restricted to listmaster

	New resetbounce action

	CHeck Sympa version number

	Service files edition is controlled by etc/edit_list.conf

	New action viewfile

	Initial login way be performed via an URL, a new
	password is requested.

 	Admin interface now includes bounce management

     	[Tung Siu Fai <sftung AT hongkong.com>]
     	Chinese localisation (8 bits) are now available :
	 cn-big5 -> BIG5 chinese (hong kong, taiwan)
	 cn-gb -> GB chinese (mainland china)

     	[Marco Ferrante <ferrante AT unige.it>]
     	New italian NLS (nls/it.msg)

     	[Fabien Marquois <fmarquoi AT univ-lr.fr>]
     	You may use Sympa with Oracle databases.
     	Major differences between Oracle and MySQL :
	- connection string uses a sid instead of a dbname
	- $dbh->tables() function doesn't work, a SELECT is performed
	instead
	- no oracle equivalent for UNIX_TIMESTAMP(), a tricky formula
	is used instead
	- no "AS" in SELECT
	- there are case problems with table names
	- "date" is a keyword ; it needs to be quoted

     	New parameter "wwsympa_url" in sympa.conf. Default is 
     	http://<host>/wws

     	make installs a default edit_list.conf in ~sympa/bin/

     	New list parameters "bounce", defining above what bounce rate owners
     	should be alerted, above what rate postings should be halted in
     	the list. The halting feature is not yet implemented.
     	Defaults for these parameters are defined by global parameters
     	"bounce_warn_rate" and "bounce_halt_rate"

     	New user command "INVITE <listname> <email> <gecos>" used to
     	send a message (see invite.tpl) to ask someone to subscribe
     	to a list (the guest user just need to reply the mail to subscribe).
     
     	New user command "LAST <listname>" can be used to received the
     	last message distributed in list <listname>

     	New "etc" parameter in sympa.conf, defining a configuration directory.
     	This etc contain local files that are never updated by "make install",
     	in particular etc/scenari and etc/templates  are local where
     	bin/scenari and bin/templates contains defaults.

######   You must now remove the old scenari sympa.conf parameter (replaced by 
######   etc/scenari)

     	Total of subscribers logged while performing a SUB, SIG, ADD or DEL

     	REMIND * is a new command, each subscriber received a personal
     	summari of it list subscription. It use ~sympa/etc/global_remind.tpl

     	In sympa.conf you can define multiple listmasters introducing
     	a comma separated list of email in the sympa.conf listmaster
     	parameter. 

     	new list option : hidden sender for anonymous list Setting the
     	list parameter "anonymous_sender" to some email, the From: field
     	of any message to distribute is replaced by the parameter value. Various
     	smtp field are removed.
     
     	new list option : welcome and/or remind message Return-path can
     	use can be unique in order to remove automatically subscribers
     	if there welcome or remind message bounce.
 
     	3 new functions in List.pm : get_first_bouncing_use(),
     	get_next_bouncing_use() and get_total_bouncing()

   Changes :

	Documentation is now included in Sympa documentation

     	"Archives" link in info.tpl is now a button to stop harvester

        Bounced now remove user when welcome or remind message
        which are sent using a unique return-path are bounced.
        need "sendmail plussed aliases" and welcome_return_path
        or remind_return_path list parameter set to the value "unique".

	Host added to listnames when doing a LISTS

	Store bounces info (<first_bounce> <last_bounce> <number_of_bounces>) 
	in database (bounce_user in user_table)

****** You need to change your mysql/pgsql database structure:
****** ALTER TABLE subscriber_table ADD bounce_subscriber varchar (30);
****** ALTER TABLE subscriber_table ADD update_subscriber datetime;
****** ALTER TABLE user_table CHANGE lang_user lang_user varchar (10);

	Default value for "user_data_source" list parameter is
	"database" when defining db_xxx parameters in sympa.conf.

*****  	All Sympa parameters defining filenames are NOT recognised
*****	anymore. This includes "subscribers", "config", "info",
*****	"stats", "welcome", "archives", "bye", "removed", "help",
*****	"help_advanced", "lists_header", "lists_footer", 
*****	"message_header", "message_footer"
*****	If you changed the default values of these parameters
*****	in sympa.conf (example: subscribers   abonnes), except
***** 	"reminder" that becomes "remind"
*****	YOU MUST rename the files the standard way, ie as defined 
*****	in documentation.

     	User lang is initialized at subscription time.

     	[Josep Román <josep.roman AT zuerich-see.ch>]
     	Corrections in es.msg

     	Makefile doesn't use "install" anymore.

     	No more unwanted command reports.

     	@sth_stack in List.pm allows to perform a new query while reviewing one.

     	**TO PACKAGERS**
     	--BIN-- in sample/sympa.conf has been corrected to --DIR--

     	New chapter about WWSympa in documentation

     	Sympa supports templates for global service messages ("helpfile",
     	"lists") as well as list service messages ("welcome", "bye", "removed",
     	"reminder","invite"). These files have a ".tpl" extension. Global ones
     	are located in ~sympa/etc/templates/, list specific in ~sympa/expl/<list>/ 
     	directory. Compatibility with old-style files (in ~sympa/expl/) 
     	is maintained. 
     	Templates begining with a From: line are considered as full
     	messages, no header is added (except To:).

     	INFO now includes content of list's "info" file.
     	REVIEW only shows subscribers' list, not configuration
     	informations.

     	List::get_subscriber now returns bounce info.

     	Bounces info are now stored in sympa database

   Bug fixes :

	Empty files are deleted (save_file)	

	Exotic chars (0x25, 0x22, 0x20, 0x2f), in email addresses are escaped.

	[reported by Lalot Dominique <lalot AT univ-aix.fr>]
	Review was limited to authentified users, though review
	was public.

	Subscribers don't access date & reception info in REVIEW
	
	[reported by Hubert Ulliac <Hubert.Ulliac AT Uhb.Fr>]
	Subscription dates now Y2K compliant in REVIEW

 	Archives are now working in english

	Set correct access to directories created at make time

	Corrected date in bounces historique

	Lists in "subscribe auth" mode were considered as closed

     	[Olivier LACROIX <Olivier.Lacroix AT ciril.fr>]
     	Gencat failed compiling on HPUX systems. 
     	$delset have been deleted from nls/*.msg

     	[reported by Vincent Jardin <jardin AT enst.fr>]
     	When parsing an empty header field, it cleans it up and deletes 
     	the carriage return (\n) at the end of the field. When printing 
     	the Mail::Internet header, this \n is missing.
     	A patch (patch.mailheader) has been proposed by the author of 
     	Mail::Internet

     	[reported Richard Balint <richard.balint AT notes.udayton.edu>]
     	Sympa died when openning an unknown scenario. Fixed by adding a
     	default in the code which always return "reject"

     	[reported by Emmanuel POIRET <E.poiret AT edf.fr>]
     	Whitespaces are not cleaned at the end of a command (reported
     	for DEL)

     	Corrected error message in log file when doing info :
     	"internal error, no sender find in List::verify, report authors"

     	Actions and menu templates now have defaults (templates/<action>.default.tpl).

     	List parameter "lang" was overidden by robot lang.

     	[Hubert Ulliac <Hubert.Ulliac AT Uhb.Fr>] 
     	Using postfix, all subscribers received a digest if no subscriber 
     	choose the digest option. Fixed.

     	[Olivier LACROIX <Olivier.Lacroix AT ciril.fr>]
     	Whitespaces are now cleaned at the end of commands.

2.4 13 Dec 1999

   New features :      

	WWSympa now includes a Makefile.
	wws_path var from wwsympa.conf is now obsolet

	Translation of titles and filenames to english

	Add now accepts gecos

	Default values for config parameters.

	Some templates have been translated. Lang user pref is now used.

	Usage of language information sent by the client (HTTP_ACCEPT_LANGUAGE)
	to initialize lang_user field in database.

	Privileges of the user (user/editor/owner/listmaster)have been added 
	to the menu.

     	Scenari for send parameter are available ! Check send.* in the 
     	scenari directory. The send scenari is paticular because you can
     	check headers in rules :  exemple.
      	  match ([header->Content-Type],/multipart/)  smtp -> editorkey
          (semantic is multipart messages must be approved by editor)

     	The list parameter "visibility" is performed by scenari. The goal
     	is to provide defferent lists of lists depending of the context
     	(mainly depending on the sender). The following exemple show how
     	to use visibility scenario in order to provide intranet lists

     	visibility 
       	 match ([sender],/cru\.fr/)  smtp -> do_it

     	New "profile" parameter in owner paragraph.

     	New spool for storing bounces, defined by "queuebounce" parameter.
     
	New bouncequeue binary

   Changes :

	Multiple DEL from REVIEW page.

	WWSympa looks for a site template (eg: ~sympa/expl/welcome.tpl) when 
	editing a service message. Template can include the "info" file of
	the list ([PARSE info_file]). If a such a template exists, owners can't 
	edit message, only listmaster can.
	
	Regexp in "search" are made simple : only "*" wild character
	is supported.

	main.tpl has been split, each action has .tpl file
	this should make internationalization easier

	Subroutines' parameters are now logged

	User email and list added to the log

	Search matches sub-strings

	<PRE> added to info if not HTML

     	Notification of sender when message is forwarded to editor

     	Contacting owners if no editor is defined

     	From field (SYsteme de MultiPostage Automatique) is in NLS

     	Documentation has been updated and slightly reorganized.

     	Moderation key has been added to the log at allocation,
     	distribution or rejection.

     	Default value for send is set to 'private'

     	Now scenario optionaly include title.<lang> <string> in order to
     	print the scenario title in wwsympa (edit_list_request and info)
     	This is compatible with old scenari style
	
   Bug Fixes :

	Editfile & Savefile were not working in 0.3.2 because of
	changes in parser

	[Olivier LACROIX <Olivier.Lacroix AT ciril.fr>]
	Lists in "subscribe auth" were seen as closed (pb in unsubscriber.*
	scenarii)

	Corrected "unknown auth method" is ADD action.

	PARSEs are now relative to templates dir (no more absolute path)

	[reported by <miguel AT presence1.observatoiredesmarques.fr>]
	Problems with scenarii auth_xxx

	[Olivier LACROIX <Olivier.Lacroix AT ciril.fr>]
	Notification of owners when deleting or adding users.

	WWSympa now bypass the parser when asked for a non-html
	document from the archives
	
	Reject subrequests for users already subscribed or with 
	incorrect email address

	Default prefs/lang is no more deutch, but sympa's or list's
	language

	Incorrect [sympa->email] and [sympa->host] in templates.

	Corrected icones/ to icons/ in mhomarc ressource files

    	[reported by Patrick Brossier <Patrick.Brossier AT mgm.fr>]
    	HASH(0x....) in wws/info

    	[reported by Philippe Allart <pallart AT nordnet.fr>]
    	Incorrect reference to config file (--CONF-- instead of --CONFIG--)
    	in archived.pl and bounced.pl

    	Corrected "lists" results when not authentified

     	incorrect content-type in confirmation requests

     	[reported by Emmanuel POIRET <E.poiret AT edf.fr>]
     	"Add" was forced to "closed" when "subscribe" was "closed"

     	dynamic LISTS commands are logged

     	[reported Jean-Pierre Doucet <jpd AT univ-lyon1.fr>]
     	For each command, Sympa says "No directory for list sympa"
     	It tries to create a "sympa"list object. This bug had no consequences
     	on Sympa behaviour.

     	Remind command did not work with lists in database mode.

     	[Olivier LACROIX <Olivier.Lacroix AT ciril.fr>]
     	bug in Command.pm, when parsing an auth command, so 
     	all auth message returns "No command found in message".

     	[Jean-Christophe Basaille <Jean-Christophe.Basaille AT u-bourgogne.fr>]    
     	oldadd entry has been deleted in %comms

     	Log message size whith DISTRIBUTE.

2.3.4 28 Oct 1999

   New features : 

	Edition of info file
	
     	[requested by Craig Carey <research AT ijs.co.nz>]
     	Sympa simulates Smartlist behaviour with command addressed to <list>-request
     	in subject. Commands recognised are "subscribe" and "unsubscribe"

     	new request_list, create_list and info parameters

     	email address are now allowed in "reply_to" list parameter.

   Changes :

     	list returned by REVIEW is now sorted

     	Listmaster is owner of every list
     
     	List::get_subscriber() returns «lang» and «gecos» from user_table.

     	New robot configuration parameter "helpfile_advanced"

     	possibility to use [host] in pcregexp use for scenario
     
     	New scenari subscribe.intranet subscribe.intranetorowner and
     	subscribe.open_quiet
	
   Bug Fixes :

	Corrected "already login" ; do_login() & do_logout() were called
	twice.

	Sauver le  fichier %s

	Corrected subscribe & signoff (get-notify_state() is upsolet)

    	First alpha version of WWSympa

     	Subject of messages are now Q- and B- decoded (to avoid
     	multiple custom-subject).

     	Sympa died while trying to process a T.xxx file (temporary
     	file created by queue prog) in the queue

     	Reply-to: header was corrupted when reply_to parameter was
     	not set.

     	owner and editor definition now eliminate space at the the end
     	of line

     	Sympa now uses $dbh->ping() (instead of $dbh->{Active}) to 
     	check database connectivity.

     	Sympa would loop on an incoming message for an unknown list

     	"use strict" in sympa.pl => DoFile now take listname as argument

2.3.3 29 Sept 1999

   New features :

     	New "max_size" parameter in sympa.conf, maximum size allowed
     	for messages. 

     	New "lang" parameter in sympa.conf for default language.

     	[Jens-Uwe Gaspar <gaspar AT tellux.de>]
     	German helpfile

   Changes :

     	Command-line option "-l" (language catalog) used to accept
     	a filename as an argument ; it now take a language.
	  Eg : %sympa.pl -l fr

     	Priorities for -owner and -request are no more list priority.
     	Two new global parameters define these priorities : «owner_priority» 
     	and «request_priority».

     	Command & messages priority added to the log.

     	New subroutine &List::is_listmaster()

     	[Olivier.Lacroix AT ciril.fr]
     	In scenario add, action "do_it,notify" is now possible
     	(usefull for list with multiple owners and subscribe controled
     	by  owners)

   Bug Fixes :

     	[Olivier LACROIX <Olivier.Lacroix AT ciril.fr>]
     	Now accepting is_editor in scenari (corrected in &List::verify()).

     	Sympa uses parameter "default_list_priority".

     	[Olivier.Lacroix AT ciril.fr]
     	Small adjustement in output of signoff command

2.3.2 21 Sept 1999

   Changes :

     	Changes in documentation : DB 2.x is now supported by DB_File.pm

     	load_subscribers.pl lowercases addresses before insertion in database.
     	This is needed by PostgreSQL, which is case sensitive.

   Bug Fixes :

     	[reported by "Frederic ALLIOD" <falliod AT jetmultimedia.fr>]
     	This occures when sending a message to an email address beginning
     	with a "-". When invoking sendmail, this is considered by sendmail 
     	like an argument which he doesn't understand. Sendmail call fails
     	and Sympa dies. 

     	Digest infos returned by Sympa are HASH(0x5f5a38)

2.3.1 16 Sept 1999

   Bug Fixes :
   
      	<listname>-subscribe and <listname>-unsubscribe messages are not 
      	processed by Sympa

2.3.0 16 Sept 1999

    New features :

      	["Carsten Clasohm" <cc AT clasohm.com>]
      	New german dictionnary (de.msg)      

    Changes :

      	[requested by <Michel.Beheregaray AT univ-pau.fr>]
      	Sympa now only includes the first email address from LDAP
      	entries.

      	Priorities are now defined in list configuration files (instead
      	of aliases) by «priority» parameter. New (optional) parameters
      	in sympa.conf : «sympa_priority» and «default_list_priority». 
      	Changes in aliases : no more priority param is needed
      	(though old style remains compatible)

      	[proposed by Carsten Clasohm]
      	Use lowercase email addresses in List.pm in ordrer 
      	for comptability with case-sensitive DBMS such as PostgreSQL.

      	Clean the "To:" header for mail sent to editors and owners.

      	Digest : the "Reply-to:" is set to the list if requested
      	by the replyto list parameter

    Bug Fixes :

      	Sympa used to systematically send a digest on Sunday (for
      	list in digest mode only).

      	Correction of "match()" condition in scenari.

2.3Beta 9 September 1999

    New features :

      	Optional "info" parameter in owner/editor paragraphs, allowing 
      	to store private information (such as tel number) about these 
      	people.

      	In order to use MhOnac to make html archive, Sympa copy
      	all messages distributed in a list which config file
      	containt a "web_archive" paragraph in the "queueoutgoing"
      	parameter.

      	[proposed by Manuel Valente <mvalente AT france-cybermedia.fr>]
      	Requested by users not afraid to corrupt original MIME
      	content-type and encoding! "footer_type" parameter in list
      	config. May be "mime"(default) or "append".

      	[asked by Manuel Valente <mvalente AT france-cybermedia.fr>]
      	"message.header"[.mime] appended at the beginning of messages.

      	Commands del, add, sig, rev, info are now controled by scenari
      
*****  New syntax for condition in scenario rules.
***** This will affect your scenari if you write your own scenari
***** in previous versions. If so, check scenari from src/scenari dir.

      
    Changes :
       
      	[reported by Carsten Clasohm <clasohm AT rivalnet.com>]
      	Table names "user" and "subscriber" respectively become
      	"user_table" and "subscriber_table". This is needed because
      	of a conflict with "USER" keyword in PostgreSQL v 6.4
      	(Define USER as synonym for CURRENT_USER per SQL92 specs).

****** You need to change your database structure:
****** with MySQL :
******    ALTER TABLE user RENAME user_table;
******    ALTER TABLE subscriber RENAME subscriber_table;
******
****** with PostgreSQL :
******    ALTER TABLE user RENAME TO user_table;
******    ALTER TABLE subscriber RENAME TO subscriber_table;


      	[Dominique ROUSSEAU <rousseau AT neuronnexion.fr>]
      	List.pm is patched so PostgreSQL can be used to store internal
      	subscriber data.

      	Added distribute_msg() and get_mod_spool_size()

      	Added message size to the log

      	Charset and Transfer-Encoding are now fully defined in language
      	catalogues.

      	Review command do not return the adminsitrative list info when
      	user isn't allowed to review a list.
     
      	Info return the adminsitrative info about a list, not the
      	welcome message.

      	List::probe_db() does checking of database 
      
      	Sympa warns if it finds unexpected parameters in list config.

    Bug Fixes :
    
      	[reported by Michel BEHEREGARAY <Michel.Beheregaray AT univ-pau.fr>]
      	"include_ldap_query" are now correctly parsed by Sympa. There
      	used to be a problem because of "host" parameter. 

      	set the process umask as defined in sympa.conf
    
      	listname provided to MODINDEX cmd has been made insensitive
      
      	[reported by Patrick Brossier <Patrick.Brossier AT mgm.fr>]
      	subscribers total corrected when using a database

      	Sympa did not keep messages detected as BAD-xxx
          (no from found, loop problems, ...)

      	Sympa now loads editors and owners GECOS 

      	Lists using includes now set correctly the scenario subscribe.closed

      	Sympa perfoms correctly list configuration comments in paragraph
      	mode. Warning when an unknown list parameter is found.

      	[reported by Dominique ROUSSEAU <rousseau AT neuronnexion.fr>]
      	No footer attachement if msg is multipart/alternative

      	[Raphael Hertzog <rhertzog AT hrnet.fr>]
      	Corrections to src/Makefile (scenari installation) and
      	doc/sympa.tex ("a4" extension no more used).

      	"subscribe xxx,yyy" was not recognised

2.2.7 22 June 1999

    Bug Fixes :

      	Fatal bug in HELP and WHICH commands for sites not using DBMs.
      	(Can't connect(DBI::dbname=sympa;host=  ), no database driver
      	specified)

      	Default scenari directory in Conf.pm

      	Reload $* and $/ after each dofile. It seem's to fix the 
      	bug specific to solaris ("No from found ..." for all messages
      	after a WHICH) !!!

2.2.6 17 June 1999

    Changes :

      	new archive parameters per list  :
      	archive
      	period [day|week|month|quater|year]
      	access [public|private|owner|closed]
      
      	New owner command : REMIND [listname] 
      	each subscriber receive a personal reminder. The reminder
      	message is constructed using ~expl/[listname]/remider.mime or
      	~expl/[listname]/remider or ~expl/remider.mime or ...

      	Messages welcome, removed, bye, reminder are parsed 
      	at runtime for variables instanciation. The following keystring
      	are parsed :
      	[listname] [subscriber_email] [sympa_email] [sympa_host]
      	Now you can use a single welcome message for all list :
      	"welcome to [listname], your  email is [subscriber_email]  ..."

      	The helpfile is now splitted into two files : helfile
      	and helpfile.advanced, only list owner and list editor will
      	receive bothg the helfile and the helfile.advanced section.
      	[sympa_email] is replaced by it value at runtime.
****** So you need to update your helpfile and create
****** helpfile.advanced, look in sample dir

      	"user_data_source include" allow multiple include sections

      	new include type :  include_list [listname]
                          include_file [path to a file]

      	parameter "unsubscription owner" is recognized

      	New fields added to the database :
	  lang_user
	  cookie_delay_user
****** You need to change your mysql database structure:
****** ALTER TABLE user ADD cookie_delay_user  int,
******                  ADD lang_user	  char (5);


      	Better management of error codes (undef|1) thoughout 
      	do_commands procedures.

      	Message body is ignored if a command is found in the subject

    Bug Fixes :

      	[Laurent Ghys <Laurent.Ghys AT ircam.fr>]
      	Better checking of modules in check_perl_modules.pl

      	[Francois Petillon <fanch AT netra.uic.asso.fr>]
      	Better checking pseudo MIME messages (rfc 1049) when parsing
      	commands. 

      	include_file fixed

      	Ignore «Re:» in front of commands in subjects
      	Process commands in subjects longer than 79 characters 
      	(Mail::Header) 

      	Decoding of "_" in Q-coded subjects

      	From: header fields of reports from sympa respect «host» config
      	; files sent (welcome, bye,...) are from <listname>-request.
            

2.2.5	18 may 1999


      	"subscription" list parameter is now "subscribe" for simplification
      	("subscription" and "unsubscription" are still accepted).

      	Lists subject returned by LISTS was truncated to 4 lines. It is now
      	extended to 8 lines.

      	List params "reply-to" and "custom-header" are changed to "reply_to"
      	and "cutom_header" ; previous syntax will still be recognized.

      	Creation of new susbscribers file is logged.

      	Safefork now waits longer before giving up.

      	[Laurent Ghys <Laurent.Ghys AT ircam.fr>]
      	Call to check_perl_modules.pl added to the Makefile

    New features :
      
      	New is_user_db and add_user_db in List.pm

      	Loop prevention based on "Content-Identifier: Auto-replied"
      	non standard header. This header is used by crasy X400 mailer.

    Bug Fixes :

      	Correction of List::get_state ("open" instead of "public")

      	Cleaning up in Locale messages loading code (no more "Locale
      	file not used, using builtin messages)

      	Content-disposition of messages within digests have been changed
      	to "inline" ; there were problems with Eudora and MSMail.
      
      	Subject of messages sent to sympa (ie commands) are
      	QuotedPrintable and Base64 decoded before processing
      	; new &tools::decode_string function.

      	Updates using ADD turned subscription mode to digest. Corrected.

      	[Guy Brand <guybrand AT chimie.u-strasbg.fr>]
      	Many syntax corrections in NLS catalogues.

2.2.4	29 april 1999

      Changes :
    
          new optional parameters in sympa.conf for the  file name of
            subscribers file ,welcome message, stats, archives
            directory, list config file.

          default for subscribers is 'subscribers'
                  for welcome is 'welcome'

*****   These 2 default values are not compatible with previous
*****   versions. In this case you must rename all 'bienvenue' files
*****   in 'welcome' and all 'abonnes' files in
*****   'subscribers' ; otherwise add 2 lines in sympa.conf :
 
        subscribers abonnes

        welcome bienvenue
	
*****	Defaults for spools path have been changed in Conf.pm:
*****		queue/		=> 	spool/msg/
*****		queueauth/	=>	spool/auth/
		queuedigest	=>	spool/digest/
		queuemoderation	=>	spool/mod/
		queueexpire	=>	spool/expire/
	
      New features :

	[Alex Nappa <alex.nappa AT imag.fr>]
	New Spanish dictionnary (es.msg).

      Bug Fixes :
      
	Corrections in List::get_lists()

	msg-xxx files created by MIME::Parser are now cleaned

2.2.3b    20 april 1999

      Changes :
	
	New parameter "suffix" in include_ldap_query paragraph (list config)

	Digest are now in "multipart/digest" format, conforming to RFC 2046
	(you need to install "MIME-tools" CPAN module)

	Trailer is now added to Digest messages

	Independant "_add_trailer" subroutine

	You need to update to Mail/Tools v 1.13

2.2.2b	   13 april 1999
	
      New features :

        [Jean Brange <jean AT kubos.org>]
        Per list "custom_subject" parameter. The value of this parameter
        is a string which is added to the subject.

	[Jean Brange <jean AT kubos.org>]
	message.footer file : If this file exists in the list directory,
        it is added to message
	This feature require MIME::Parser part of "MIME-tools" CPAN module

	Added sub update_user_db to update information in user table
	(password, gecos).

      Bug fixes :

	Correction of working version 2.2.1b : Help command needed DBI
	to be installed.

	us.msg corrected line 64 (reported by Luc VEILLON)

      Changes :

        Use "require" insteed of "use" when possible to make installation
        easier.

	Documentation is now in Tex format (SGML has been abandonned), currently
	in update process. French version is not maintained anymore.
	

2.2.1b     8 march 99

      New features :                (note yet documented)

	External data source can be CSV (Comma Separarted Values) files.
	Files are accessed using DBI and DBD::CSV. List config looks like :

		user_data_source include

	        include_sql_query
        	db_type CSV
	        f_dir /home/sympa/import/
        	sql_query SELECT email FROM students WHERE domain='physics'

      Changes :

	In order to make new langage nls file easier to produce,
        internationalization of log messages has been deleted. 
	NLS catalog's consistency can been checked (using nls/check.pl).

        Update sample/helpfile.(fr|en)


2.2b    31 March 99
      
      New features :            
    
	Subscriber list can be stored in a Database (Mysql). The
	Database parameters (db_type, db_name, db_host, db_user
	and db_passwd) have been added to sympa.conf.

	Sympa is able to dynamically load the subscriber list from
	an external datasource (DBM or LDAP). This can be specified
	in the list config. file whithin a include_sql_query or
	include_ldap_query paragraph. (not yet documented but
        easy to confugure using config samples).

	List parameter user_data_source specifies what kind of
	datasource the list use for the user database. Possible
	values are file, database or include.
  
        User command unsubscribe now accept optionaly a email as
        second parameter. Sample : "unsubscribe * foo@cru.fr"
        if email is different from sender ask md5 authentification.
        
        Definition of privateoreditorkey as a value the paramer send.

	New entry listmaster in sympa.conf to allow a site administrator
	to manage lists.

      Changes :

	Sympa may now be distributed under the GPL (GNU General Public 
	Licence Version 2)

	WHICH command's result doesn't contain lists configuration
	info anymore. It now returns ownership and "editorship"
	information. 

	Total of subscribers has been added to stats file.

      Bug fixes :
	
	Content-transfer-encoding fixed for key moderation 
	messages (reported by Andre Lagadec).

	Retun-path: and reply-to: SMTP fields corrected in
	digest messages (reported by Raymond Bourges).

        Fix the MD5  check sum case sensitive bug

	Auth is made more simple by just replying to the request
	(Command present in the Subject:).

1.5            1 march 99

      New features :
      
        Support alias for <listname>-subscribe and <listname>-unsubscribe
        toto-unsubscribe: "| ~sympa/expl/mqueue 1 toto-unsubscribe"       

        new subscriber : send       sympa/expl/[listname]/bienvenue.mime
                        else send  sympa/expl/[listname]/bienvenue
			else send  sympa/expl/bienvenue.mime
			else send  sympa/expl/bienvenue
			else send  a default welcome message according to nls
			
        unsubscribtion : send       sympa/expl/[listname]/bye.mime
                        else send  sympa/expl/[listname]/bye
			else send  sympa/expl/bye.mime
			else send  sympa/expl/bye
			else send  a default unsubscribtion message according to nls

        In those files (template) the string "[listname]" is replaced by the list name.
      
      Bug Fix :
       
        Check Content-Type and Content-Transfert-Encoding for commands

	Differences between French and English NLS catalogs have been corrected.

	[ Olivier LACROIX <Olivier.Lacroix AT ciril.fr> ]
	Correction of default_user_options parsing (pb with visibility).

	Conf::Default_Conf is now correctly used. $DIR defined in Makefile
	is used for the defaults.
	
	(private|public|editor)key : fixed

1.4.2-1   19 February 1999

      Bug Fix :
      
        Sympa now recognises any command sent in the Subject of a message.
      
        [ Fabrice Gaillard <gaillard AT ina.fr> ]
        Changes to NLS catalogs to fix problems under NetBSD1.3.2.

        Sympa was sending -request messages to other lists' owners. This
	bug is now fixed.

        [ Laurent Ghys <Laurent.Ghys AT ircam.fr> ]
	Mailto URLs sent to subscribers now contain %20 instead of spaces.

      Changes :
        
	[ Raphael Hertzog <rhertzog AT hrnet.fr> ]
	Most global parameters now have default values in Conf.pm

        Deletion of purge and reconfirm commands.

1.4.2   5 Febrary 99

      New features :
	
	The result of LISTS command can now be automatically generated.
	It uses 2 extra parameters / list :
	    + visibility [ conceal | noconceal ]
	    + subject 
	You can although define a header (lists.header) and footer 
	(lists.footer). Location of these files are defined in sympa.conf.

        [ Olivier LACROIX <Olivier.Lacroix AT ciril.fr> ]
        default_user_options per/list parameter to define a profile
	for subscribers (reception & visibility).	

        [ Laurent Ghys <Laurent.Ghys AT ircam.fr> ]
	Sympa now checks if NLS version have been updated (if not  => exit).

      Corrections :
      
	[ Laurent Ghys <Laurent.Ghys AT ircam.fr> ]
	Documention refers to Perl 5.004_03 as a prerequisite

        [ Laurent Ghys <Laurent.Ghys AT ircam.fr> ]
        Sort NLS messages (260 & 261) within delset 6.

        Replacement of some spaces with tabs in NLS between msg number
	and msg (Pb under HPUX reported by Olivier LACROIX 
	<Olivier.Lacroix AT ciril.fr>).
1.4.1
      Changes :
	Now accept message without @ in sender address

      Bug corrections :
	
	Your e-mail address has been removed from list %s.

1.4.0  Janary 1999
        
      Changes :

	Previous parameter 'tri' in sympa.conf is now renamed to 'sort'
	Compatibility with previous 'tri' is assured.

        The doc/  makefile use LANG variable to prepare french or
	english documentation. Use make LANG=fr or make LANG=gb or edit
	makefile to chose your langage.
	
	The nls/ directory include us.msg and fr.msg (us.msg was proposed
	by Stephane Alnet).
	
      New feature :

        -for each list config file, you can chose to notify
	 owner for each subscription and/or unsubscribtion
	 using parameters :
	           subscribtion [open|auth],notify
	           unsubscribe  [open|auth],notify
		  
        - Allow option "reception nomail" in owner and editor definition.
	  usefull to define multiple address of one privilegied person.
	
        - Add sympa version number at the end of command  «HELP» result.
	
	- Allow file bienvenue.mime insteed of bienvenue. In this case
	  bienvenue.mime is sent as is so you can use complexe mime structure
	  in the welcome message.

        - use URL mailto: in auth subscrition request (subscrition auth)
	
        - Sympa use his config to forward mails to owners and editor
	  so you can use the following aliases in your sendmail 
	  (no nedd to update alias when changing owner addresse) :
	
          toto-request: "| ~sympa/expl/mqueue 1 toto-request"
	  toto-editor:  "| ~sympa/expl/mqueue 1 toto-editor"

        - Star convention to specify  all lists in user's commands
	
  	     -SIGnoff *
	     -SET * <mail|nomail|digest|conceal|noconceal>

        - priority z and Z are null priority, message stay
	  in queue forever. Usefull to hangup a list.
	  
	 Bug correction  :
	 
	 -when unsubscribe is auth don't ask authentification
	  if the sender is not subscriber at all.
	  
	
	
1.3.4-1 29 décembre 1998

        Correction dans la numérotation des messages de fr.msg.

1.3.4	22 décembre 1998

	Les "digest" sont au format MIME, il faut maintenant installer
	le module CPAN MIME-Base64 en plus des autres modules déjà.

	Quelques petits défauts de corrigés.

1.3.3	10 décembre 1998

	Nouvelle option log_socket_type dans sympa.conf pour choisir la
	journalisation via UDP ou un socket Unix.

	La limite "anti-commandes" passe de 20 lignes à 15 lignes dans le
	corps du message (c'était vraiment pénible).

	On peut maintenant utiliser DESTDIR. Exemple :
		make install DESTDIR=/mnt
	Le nom DESTDIR est préfixé au répertoire DIR du fichier Makefile
	(proposition de Raphaël Hertzog).
	
	Nouvelle fonction : on peut dorénavant mettre des commandes dans
	le fichier sympa.conf. Exemple :
		host	`cat /etc/hostname`
	(proposition de Raphaël Hertzog).

1.3.2	18 septembre 1998

	Avec certaines versions de l'interpéteur Perl, "smtp.pm::reaper"
	ne se comportait pas correctement.

	IMPORTANT : changement des conditions d'utilisation, de modification
	et de diffusion de Sympa (grosso-modo on adopte GPL) -- ceci afin de
	permette création et la diffusion d'un module Debian sympa.deb.

1.3.1-2	6 juillet 1998

	Correction d'une erreur dans sympa.pl rejettant les messages et
	commandes provenant des domaines contenant les chaines "listeserv" ou
	"sympa" (par exemple sympatico.ca).
	Correction d'un défaut mineur dans Commands.pm.

1.3.1	1 juillet 1998

	Création automatique du répertoire "archives" d'une liste, si besoin
	est.
	Correction des messages associés à la commande EXPIRE.
	Restructuration du chapitre 7 (Commands.pm) du catalogue français.
	Ajout d'entête MIME dans les notifications de rejet (contribution
	d'Olivier.Lacroix AT ciril.fr).
	Journalisation des boucles
	Mise à jour de la détection des commandes dans les messages.

1.3.0	11 juin 1998	Contributions du CRU (Fabien Marquois)

	Nouveautés dans les commandes WHICH, expiration des abonnements,
	diffusion des messages pour les listes modérées, état des messages en
	attente.

	Nouvelles options de configuration : authentification des signatures de
	messages, valeurs privatekey, publickey et privateorpublickey pour le
	paramètre "send" ; paramètres clean_delay_queueauth et queueauth dans
	sympa.conf ; paramètre clean_delay_queue dans sympa.conf ; paramètre
	queueexpire dans sympa.conf ; paramètre clean_delay_queuemod dans
	sympa.conf ; paramètre sleep dans sympa.conf.

	Corrections : la date d'abonnement ou de dernière confirmation
	d'abonnement est mise à jour lorsque celui-ci envoie un mail dans
	la liste, uniformisation des logs de Sympa, correction de la
	vérification du champ x-loop des messages modérés, mise à jour de la
	documentation, utilisation du cookie dans la génération des clés de
	modération.

1.2.2	20 mai 1998	Contributions du CRU (Fabien Marquois)

	Corrections de défauts et nouvelles fonctions : plusieurs
	"custom-header", traiter les réponses préfixées par ">",
	présentation en MIME des messages à modérer, accents supprimés
	des journaux (syslog ne sait pas faire), gestion des accents dans
	certaines commandes, journalisation de la durée des commandes.

	Makefile pour générer et installer le catalogue de Sympa.

1.2.1	15 mai 1998	Contributions du CRU (Fabien Marquois)

	Corrections de défauts de la 1.2.0 : review, génération des clés de
	modération.

1.2.0	13 mai 1998	Contributions du CRU (Fabien Marquois)

	Refonte de la documentation : fonctions non encore documentées,
	fichiers de configuration, notes pour certains Unix.

	Nouvelles fonctions : digest, modérator avec editorkey et
	editorkeyonly, commentaires dans les fichiers de configuration,
	liste rouge (conceal, noconceal), nomail, custom-header, tri par
	priorité selon le domaine destination.

	Corrections : problème d'allocation mémoire, mot-clé msgcat pris en
	compte, corrections pour "confirm", fonction stats plus précise,
	problèmes avec les guillements dans le catalogue des messages.

0.011	2 février 1998

	Légers changements dans Makefile (création du répertoire bin qui
	n'était pas faite au bon endroit).

	Les commandes add/del ne fonctionnaient pas comme prévu dans certains
	cas à cause d'une erreur de programmation.

	Ajout systématique des entêtes MIME du catalogue des messages (si elles
	sont définies).

0.010   27 janvier 1998

	Modifications dans le fichier fr.msg -> il faut refaire le catalogue
	avec "gencat".

	Les commandes add/del permettent l'usage de l'authentifieur MD5. Pour
	cela il faut que le propriétaire de la liste ait "auth md5" dans le
	fichier de configuration.

	Une erreur dans Archive.pm mettait des dates fantaisistes dans la date
	de création d'une archive.

	On journalise la durée de l'envoi des messages ainsi que le nombre de
	sessions SMTP.

	Gestion des entêtes MIME (à définir à la fin de fr.msg).

0.009   10 décembre 1997

	Correction d'une erreur dans les expressions régulières de gestion des
	commandes : cela pouvait faire échouer l'usage de l'authentifieur dans
	certains cas très rares.

	Ajout de l'entête X-Loop et traitement visant à prevenir les boucles.

	Erreur dans le total du nombre d'abonnés : l'ajout d'un utilisateur
	n'était pas comptabilisé.

	Reply List ne fonctionnait pas dans certains cas en raison d'une faute
	de programmation.

0.008	15 novembre 1997

	Corrigé quelques bugs et rajout de l'option maxsmtp dans sympa.conf.

0.007   10 novembre 1997

	La modération était en avance sur son temps : on revient à la (mauvaise)
	vieille méthode (AtArticle to modérate).
	Corrections mineures dans les autres modules.
	Le fichier fr.msg a été corrigé et étendu.

0.006   15 septembre 1997

	Beaucoup de changements dans de nombreux modules, notamment un
	début d'écriture en objet pour certains d'entre eux. Quelques
	corrections de défauts. A se demander si on ne devrait pas
	appeler cela une béta de la version 2 de Sympa.


0.005	8 juillet 1997

	version.pl -> Version.pm      log.pl -> Log.pm

	La commande `get' fonctionne enfin.

	Certaines fonctions passent du module `tools' vers `list' où elles
	sont mieux à leur place.

	Bug dans list.pl lorsque le fichier des abonnés n'existe pas il faut
	refuser de charger la liste [signalé par Olivier Lacroix].

	La substitution remplace également le chemin vers le fichier de
	configuration définit dans le Makefile. Cela fonctionnait déjà
	pour le programme queue, mais par pour sympa.pl [O. Lacroix].

0.004	17 juin 1997

	La documentation évolue un peu.

	La commande reconfirm envoie un message aux abonnés qui n'ont pas
	confirmé leur abonnement à la liste depuis le délais indiqué en
	paramètre. Le troisième argument est le nombre de semaines de
	grâce (donné à titre indicatif). Ex : reconfirm tulp-fr 2 4.

	La commande purge permet de virer les abonnés qui n'ont pas
	renouvellé leur abonnement depuis le nombre de mois indiqué
	en argument. Ex : purge tulp-fr 2.

	L'authentification est maintenant supportée pour les commandes
	sub et sig : il faut mettre le drapeau `auth' dans le champ
	subscription du fichier de configuration (et non pas md5).

	Le paquettage MD5 (dans CPAN) n'est plus facultatif : vous devez
	l'installer pour utiliser Sympa.

	Correction de quelques bugs dans la gestion des entêtes
	[A. Thivillon].

0.003	13 juin 1997

	*** ATTENTION - IMPORTANT ***
	Pour utiliser Sympa vous devez installer le paquettage DB de
	Berkeley dans une version supportée par Perl (use DB_File),
	et il vous faut aussi installer MailTools (dans CPAN).

	Correction de 2 petits bugs de programmation [Alain Thivillon].
	Changement de la chaine de reconnaisance what(1) (bug signale
	par O. Robert).

	Utilisation de my a la place de local, usage de my devant $id (pour
	use strict) [O. Robert].

	La fonction "index" a été rajoutée et fonctionne.

	Le tri des abonnés se fait maintenant par un arbre binaire en
	utilisant le module DB_File. C'est beaucoup plus rapide pour
	les grandes listes.

	Le module rfc822.pl n'est plus nécessaire, il a été supprimé de
	la distribution. Le programme utilise maintenant Mail::Address
	(disponible dans CPAN).

0.002	19 mai 1997

	Ajout du nombre d'abonnés à la liste en dernière ligne de la
	commande Review.

0.001	1er avril 1997

	Première version de tests diffusée à un large public.

