More features description.
The Sympa Community is proud to release the first beta of the next version of sympa. Please install it to test and report bugs, or translate user interface to your language, if you want to help the sympa community to deliver a more reliable version of Sympa.
Read the original announcement for more details.
June 25th, 2017
Sympa 6.2.18 is the new stable version of Sympa.
It is the first stable release from the new expanded community, led by S. Ikeda.
Read the original announcement for more details.
March 13th, 2017
Sympa version 0.0.1 was released on the 1st of April 1997. Originally conceived as a mailing list server, it evolved along its 20 years of history to a minimalist groupware server, with strong features for delegation, industrialization and customization. It includes many options for working groups creation and customization, shared documents, web archives, original authorization mechanisms and “many more”, as David Verdin, the former lead developer, stated in his 2014 YAPC::EU presentation of Sympa.
To celebrate Sympa's 20th birthday, the community organizes a hackathon hosted by the Strasbourg university. The aim of the hackathon is to work on a new and modern interface, but you can consider it as the first step towards a Sympa rebirth, from its code internals to the developers community.
You can join the hackathon by simply subscribing to this list.
The hackathon partners:
June 17th, 2016
RENATER is proud to release the newest version of Sympa to the open-source community.
Sympa 6.2.16 is the new stable version of Sympa.
This version finally fixes the old problem for primo-installation when the sympa wizard would not start to generate the sympa.conf... because the sympa.conf file was empty. Our thoughts go to the listmasters who had to fight this problem. Let them get rest knowing that, thanks to their reports, future generations will never ever have to face it. Kudos.
In addition, Soji fixed a timeout problem when Sympa closed a list, because Sympa spent ages checking whether the list was included or not in another one. He simply added a table registering the lists inclusions to speed up the checking process. And because fixing the problem was not enough to him, he also added a new page in the Sympa web interface to visualize lists inclusions. In summary, what you have now is:
This version fixes also several bugs. Please have a look at the release notes to see which ones. Some points of interest are:
[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 being passed to the templates.
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.
May 12th, 2016
The most important change in this version is 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.
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.
A few other changes in this version:
This version fixes also several bugs. Please have a look at the release notes to see which ones.
May 12th, 2016
Sympa 6.1.25 is a maintenance version for the previous 6.1 branch of Sympa.
Since a long time, the Debian packagers of Sympa maintained several patches for some Sympa bugs. We finally incorporated them to the Sympa core, so the the fine packagers don't have to maintain these patches. As the 6.1 version is the one currently supported by Debian stable releases, we found relevant to tag a new 6.1 version. Many thank to E. Bouthenot for both maintaining the Debian package and pointing us these patches that really needed to be integrated upstream.
Please note that, as we did with 6.0 branch when 6.1 was the current stable branch, we will maintain the 6.1 branch and fix blocking bugs or security issues.
Matter of factedely enough, the 6.1.25 version is an anagram of the 6.2.15 version, the stable tag which was released the same day. It doesn't mean a thing but I realized this while typing the announce so I thought I would underline it for all of you, numerologist friends around.
February 26th, 2016
RENATER is proud to release the newest version of Sympa to the open-source community.
Sympa 6.2.14 is the new stable version of Sympa.
The 6.2.13 version had a typo that made SOAP service fail. This is fixed, along with an annoying web error log that appeared when querying the lists SOAP service. Thanks to Bruno Malaval for reporting this!
Soji also improved Sympa daemons to capture the SIGCHLD signal, so that defunct children will be closed quicker.
As we tend to change the CSS regularly according to the different feedback you send us, we added the Sympa version number in the CSS file URL, so that it will be automatically reloaded, ignoring cache, when your users arrive on the web interface after an upgrade.
A set of other bugs were fixed in this version, among which:
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.Once again, Soji was the spearhead in fixing these bugs. Many thanks to him and his dedication to Sympa!
A word about translators:
Translation is what makes Sympa usable to non-English speaking people, so many thanks to all these great people involved in translating Sympa. Please let me know if, by any chance, I missed your work in internationalization.
February 12th, 2016
This version mainly introduces some bug fixes, code refactoring and several improvments to the web interface.
Soji had an ongoing work on bug fixes and overall refactoring for better maintainability. Many thanks again to him!
We had a lot of feedbacks about the web interface. Though most people agreed that it was more modern than previously, not so rare people also mentioned the bulky fonts and presentation, along with weird welcome page with lonely buttons.
Ah, well.
We heard you, people! The main page and Sympa menu were reorganized for - we hope - better clarity. Several bugs were fixed.
November 18th, 2015
This version mainly introduces some bug fixes, code refactoring and several improvments to the web interface.
November 5th, 2015
Release 6.2.10 never existed actually: we had engineering problems when tagging the version - nothing to see with the code. As the branch was still created, the 6.2.10 was removed from Sympa oficiaal history. As it still existed, we changed the version number anyway.
This version mainly introduces non-blocking bug fixes.
October 13th, 2015
This version fixes bugs:
October 2nd, 2015
This version introduces a table of content in Sympa help, as well as several bug fixes.
September 25th, 2015
This version mainly fixes a severe bug introduced in 6.2.4: Parsing of VERP bounces files in spool was broken due to a typo. Consequently, VERP, tracking and automatic unsubscription for service messages did not work.
September 22th, 2015
This version mainly introduces bug fixes.
Thanks to a suggestion by Y. Baouch (university of Colorado) - and development by S. Ikeda , the following problem is fixed: If DMARC protection feature munges originator field, many mail client cache such address by the replaced display name, and misleadingly associate the list address with the sender name. Now, the dmarc_protection.phrase can take the value “list_for_email”. In that case, the From field will take the value : “List (on behalf of SENDER) <munged_email
>".
September 15th, 2015
Public visé Taille : 20 personnes.
Profil :Des administrateurs actuels ou potentiels du logiciel Sympa appartenant à la communauté Enseignement supérieur / Recherche française. Le TP peut convenir à des personnes connaissant déjà le logiciel et désirant explorer des fonctionnalités plus avancées, ainsi qu'à des personnes désirant découvrir le logiciel et ses potentialités.
Pré-requis techniques :
Formateurs : La formation est assurée par les auteurs du logiciel Sympa (Étienne Méléard et David Verdin).
September 1st, 2015
This version mainly introduces bug fixes. Many thanks to all the users who reported troubles on the mailing lists!
July 16, 2015
This version mainly introduces bug fixes.
July 01, 2015
This version mainly introduces bug fixes, most of them being related to tweaks in the new Sympa skin.
Amongst the bugs fixed, some notables are the following:
datasource
_ca parameters were editbale by list owners by default; This is wrong AND confusing, as users erroneously take these parameters as subscribers data sources.It was not mentioned in previous release notes, but a lot of translations have been update by our numerous contributors. Thanks to all of them!
June 17, 2015
RENATER is proud to release the newest version of Sympa to the open-source community.
Sympa 6.2.1 “Damien” is the new stable version of Sympa.
This version mainly introduces bug fixes, most of them being related to tweaks in the new Sympa skin.
Amongst the bugs fixed, some notables are the following:
It was not mentioned in previous release notes, but a lot of translations have been update by our numerous contributors. Thanks to all of them!
June 10, 2015
After 5 months of intensive beta testing, RENATER is proud to release the newest version of Sympa to the open-source community.
Sympa 6.2 is the new stable major version of Sympa.
This version owes a lot to Soji Ikeda, one of the nice Sympa core developers. Soji is probably the most notable not-in-RENATER actor of Sympa 6.2's birth. He did a really great work at revamping large parts of the code. He was also the one who had the idea to put the bulk spools back to filesystem, though retaining all the bulk.pl specificities. He was eager to debug, analyze and finally solve a lot of the problems we had while working on it. May he be warmly thanked.
This version introduces a great deal of new functionnalities. Consequently, we can only highlight the main improvements in this announce.
To our numerous contributors: if your contribution does not appear in this announce, it does not mean we consider it less important. Actually, for some users, it can even be the key feature that will encourage them to switch to 6.2. But we prefer a reasonnably short announce that will be read rather than an exhaustive list of features. So we focused on:
Please refer to the release notes above for a full list of new functionnalities.
Unless the name of the contributor is specified, all theses change were done by the Sympa core developement team.
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”.
Then, 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 lists 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 controlled 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/parameters-bounces#tracking
One of the reasons why this new version took so long to be issued is that we tried to move all spools in database. Testing of this change in actual conditions proved it to be completely unscalable. we then had to revert our changes. In addition, a lot of people had recurring trouble with the current bulk spool tables, dut to limits showing in fields length or n RDBMS availability.
Spool for bulk sending no longer depend on database tables: It is based on filesystem.
Packets and messages stored in database by earlier version of Sympa should be migrated using upgrade_bulk_spool.pl
utility. (See upgrade instructions for when and how to run this utility).
[Submitted by W. Roquet]
Now Sympa stores data whenever one of the following event occurs:
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 displayed 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.
main.tt2
template, then set the “top_menu” variable to 0 instead of 1!We added or improved several ways to plug new functionnalities in Sympa.
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
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). Previously, a custom action was a simple TT2 template added to the web interface. It could only display data, not process them. They were improved to allow greater expressiveness. You can now develop a perl module to process the data passed to your custom action.
Warning: AFTER UPGRADING TO 6.2, ANY PRE-EXISTING CUSTOM ACTION MUST BE MOVED TO THE RELEVANT CUSTOM_ACTION DIRECTORY TO KEEP WORKING. Check upgrade instructions.
See https://www.sympa.org/manual/customizing#custom_actions for full details on this functionnality.
Sympa::Message::Plugin provides hook mechanism to intervene in processing by Sympa. Each hook may modify messages or may break ordinary processing. This functionnality is quite new and still experimental. Please read the perldoc of Sympa::Message::Plugin for more details about how to create and enable hooks in message handling.
If you have no idea what a “perldoc” or a “Sympa::Message::Plugin”” are, you should not try to use this functionnality. Ask a Perl developer nearby instead.
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 previously. 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:
In several organizations, nightly maintenances make the datasources unavailable during some period of times. a new sub-parameter in data sources definition allow to prevent Sympa from trying to synchronize list members with these sources during a defined time range.
See the no_sync_time_ranges sub-parameter documentation for details.
A recurrent question regarding list inclusion was to be able to extract not the whole list, but only a subset. It is now possible.
include_list parameter value can now look like this:
<code><listname> filter <filter_condition></code>
filter_condition
is a TT2-compatible condition expression, it inherits current potential subscriber properties such as email, gecos, custom_attributes, etc. 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 gecosPlease see the reference manual for a full description on how to extract subsets from mailing lists.
$<underscore>
, this allows for complex, single-module CustomConditions.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. Check upgrade instructions.
Postgresql RDBMS are now automatically upgraded!
wwsympa.conf will no longer be used: it would be migrated to sympa.conf.
Note: Run “sympa.pl –upgrade” to migrate wwsympa.conf into sympa.conf. Check upgrade instructions.
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. Check upgrade instructions.
Now alias maintenance utilities other than newaliases may be used without special configure options nor patch to alias_manager.pl. Changes:
openssl(1) utility is no longer required. Instead, a few CPAN modules are required to use S/MIME or SSL features:
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.
i18n titles in configuration.
lang
lines in scenario files are available again, though this feature was broken for a while.lang
line in scenario fileslang
line in task fileslang
line in topics.confNote that canonicalization will be done internally so that existing config must not be changed.
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/.
Until now, only the config.tt2 file was parsed when the family was instantiated, thus producing the lists' config file. As a lot of other files can be used to configure a list (footer, header, etc.), we added the possibility to instantiate these files as well. 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 added to their name, 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'.
These files are updated in existing lists when a family is instantiated. note that it will overwrite any other customization.
This feature existed in 6.1 but it deserved a little more advertisment.
[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.
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:
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
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.
File extension of lock files are changed from ”.lock” to ”.LOCK”, because lowercase name can conflict with domain part in the future.
Public visé Taille : 20 personnes.
Profil :Des administrateurs actuels ou potentiels du logiciel Sympa appartenant à la communauté Enseignement supérieur / Recherche française. Le TP peut convenir à des personnes connaissant déjà le logiciel et désirant explorer des fonctionnalités plus avancées, ainsi qu'à des personnes désirant découvrir le logiciel et ses potentialités.
Pré-requis techniques :
Formateurs : La formation est assurée par les auteurs du logiciel Sympa (Étienne Méléard et David Verdin).
January 13, 2015
RENATER is proud to release the newest version of Sympa to the open-source community.
Sympa 6.1.24 is the new stable version of Sympa branch 6.1
Sympa 6.0.10 is the new stable version of Sympa branch 6.0
These two versions fix a security breach. Please read the security advisory.
David and Étienne went to YAPC::Europe at Sofia in August 2014. We finally dare presenting our software to the cream of the European Perl community. Big pressure, but the speech went quite well.
This speech by David is available on the YAPC Youtube account or just below if you prefer:
In addition to boosting our ego (Hi mom! I'm on the interwebs!) the speech is a good sneak peek at the main Sympa features and gives an insight on how the Sympa project works and what we plan for the future.