changeset 2630:465d31a53896

doc (CHANGELOG): prepared CHANGELOG for 0.7 release + unified indentation to 4 spaces
author Goffi <goffi@goffi.org>
date Mon, 02 Jul 2018 08:26:02 +0200
parents 346887f256f0
children a381186e2398
files CHANGELOG
diffstat 1 files changed, 393 insertions(+), 310 deletions(-) [+]
line wrap: on
line diff
--- a/CHANGELOG	Mon Jul 02 08:25:04 2018 +0200
+++ b/CHANGELOG	Mon Jul 02 08:26:02 2018 +0200
@@ -1,4 +1,87 @@
-All theses changelogs are not exhaustive, please check the mercurial repository for more details.
+All theses changelogs are not exhaustive, please check the Mercurial repository for more details.
+
+v 0.7.0 (NOT RELEASED YET):
+    This version is a huge gap with previous one, changelog only show a part of novelties
+    - XEP-0070 implementation (HTTP Auth via XMPP)
+    - XEP-0184 implementation (Delivery Receipts)
+    - XEP-0231 implementation (Bits of Binary)
+    - XEP-0280 implementation (Mesage Carbons)
+    - XEP-0329 implementation (File Information Sharing)
+    - XEP-0264 implementation (Thumbnails)
+    - new bridges are available: pb (perspective browser), and embedded (use backend as a module)
+    - components (SàT can now act as a component)
+    - templates engine
+    - invitations (create temporary account to invite somebody without XMPP account)
+    - events
+    - tickets
+    - tickets importer from Bugzilla
+    - merge-requests
+    - merge-requests handler for Mercurial
+    - new node schema experimental feature: allows to attach a dataform to a node and to filter items based on it
+    - forums
+    - XML log plugin can now logs stream as soon as it starts
+    - many improvments in Jingle and file transfer, updated to last spec version
+    - file sharing (direct sharing between devices)
+    - file sharing component (to store file on a server)
+    - better SàT version handling (in particular Mercurial revision)
+    - language detection plugin
+    - jp:
+        - new debug commands, to monitor stream, call bridge method or send fake signals
+        - new info/session command, to get data on current session
+        - new blog/get command, to retrieve locally XMPP blog
+        - new pubsub commands, for low level pubsub manipulations
+        - include pubusb/search command for "grepping" pubsub nodes
+        - new invitation commands
+        - new event commands
+        - new uri commands, to parse/build XMPP URI
+        - new input commands, to use a file to generate series of actions
+        - new ticket commands
+        - new merge-request commands
+        - new ad-hoc/list and ad-hoc/run commands
+        - new forums commands
+        - new avatar commands
+        - better handling of arguments for pubsub related commands
+        - improved outputs
+        - new template output, jp can now act as a static site generator
+        - a REPL shell is now available with "jp shell" command
+        - specified several exit codes
+    - Primitivus:
+        - new "g" shortcut to move on bottom of chat history
+        - show occupants count
+        - better notifications
+        - separation bar to see new messages since chat widget has been focused for the last time
+        - affiliations are show in MUC rooms
+        - message language is displayed if available
+        - filter messages by language
+        - merge join/left infos messages of a contact when they happen in a row (without new message between them)
+    - Cagou:
+        - new desktop/mobile (Android for now) frontend
+        - handle widget splitting à la Blender
+        - chat mode
+        - contacts mode
+        - file sharing mode
+        - settings mode
+        - Android adaptation + build
+    - Templates:
+        - new sat_templates module
+        - blog
+        - chat
+        - event
+        - file sharing
+        - forums
+        - invitations
+        - login/session
+        - merge-requests
+        - photos albums
+        - tickets
+    - Libervia:
+        - Libervia pages: a web framework to easily create web pages using SàT/XMPP under the hood. Will be the cornerstone of future of Libervia
+        - this framework has been used to make following features: blog, chat, events, file sharing, forums, invitations, merge-requests, photo albums and tickets 
+        - dynamic version of Libervia (made with Pyjamas) is still available, but under minimal maintenance, it will be re-implemented using other tools in 0.8
+        - static blog has been deprecated (still availble in "/blog_legacy" for now) in favor of Libervia pages' blog
+        - many internal changes and improvments to handle Libervia page
+    - usual internal improvments + refactoring + bug fixes
+    - many other stuff, check Mercurial logs
 
 v 0.6.1 (12/07/2016):
     - minimum Twisted version is now 15.2.0
@@ -6,218 +89,218 @@
     - added mutagen to recommended in README4PACKAGERS
     - use of /usr/bin/env instead of /usr/bin/python in shebang
     - core:
-          - connection and initialisation improvements
-          - leave the handling of delay elements to XEP-0203
+        - connection and initialisation improvements
+        - leave the handling of delay elements to XEP-0203
     - memory:
-          - fixes handling of jids_list parameter type
-          - fixed exception when setting an empty password
-          - disco: better handling of response failures
+        - fixes handling of jids_list parameter type
+        - fixed exception when setting an empty password
+        - disco: better handling of response failures
     - tools:
-          - improved repository version detection
-          - moved data methods from common to common.data_format
-          - added common.regex module
+        - improved repository version detection
+        - moved data methods from common to common.data_format
+        - added common.regex module
     - new plugins:
-          - blog_import: generic plugin to import blogs to SàT
-          - blog_import_dotclear: import dotclear blog
-          - blog_import_dokuwiki: import dokuwiki blog
-          - extra_pep: display messages from extra PEP services
-          - syntax_wiki_dotclear: convert dotclear wiki syntax from and to XHTML
-          - directory_subscription: temporary plugin moved from XEP-0055 implementation
+        - blog_import: generic plugin to import blogs to SàT
+        - blog_import_dotclear: import dotclear blog
+        - blog_import_dokuwiki: import dokuwiki blog
+        - extra_pep: display messages from extra PEP services
+        - syntax_wiki_dotclear: convert dotclear wiki syntax from and to XHTML
+        - directory_subscription: temporary plugin moved from XEP-0055 implementation
     - already existing plugins:
-          - account:
-                - auto add some roster contacts at profile creation
-                - parameter "admin_email" is now "email_admin_lists"
-                - email sending improvements (new authentication options)
-                - email the admins when a profile is created from an existing XMPP account
-          - ip: changed URL of GET_IP_PAGE for the new one on salut-a-toi.org
-          - XEP-0045: fixes commands feedback
-          - XEP-0060: MAM (XEP-0313) integration
-          - XEP-0166, XEP-0260: better handling of proxy error
-          - XEP-0277:
-                - improve comments handling
-                - uses new "extra pep" plugin
-                - Atom feed retrieval is left to Libervia
-                - fixes XHTML content encapsulation and handling of new lines
-          - XEP-0313: cleaning and improvements
-          - text_syntaxes: various improvements
+        - account:
+            - auto add some roster contacts at profile creation
+            - parameter "admin_email" is now "email_admin_lists"
+            - email sending improvements (new authentication options)
+            - email the admins when a profile is created from an existing XMPP account
+        - ip: changed URL of GET_IP_PAGE for the new one on salut-a-toi.org
+        - XEP-0045: fixes commands feedback
+        - XEP-0060: MAM (XEP-0313) integration
+        - XEP-0166, XEP-0260: better handling of proxy error
+        - XEP-0277:
+            - improve comments handling
+            - uses new "extra pep" plugin
+            - Atom feed retrieval is left to Libervia
+            - fixes XHTML content encapsulation and handling of new lines
+        - XEP-0313: cleaning and improvements
+        - text_syntaxes: various improvements
     - tmp/wokkel:
-            - updated behaviour and namespace to new urn:xmpp:mam:1
-            - several MAM and RSM improvements
+        - updated behaviour and namespace to new urn:xmpp:mam:1
+        - several MAM and RSM improvements
     - frontends:
-          - printing the history and notifications are left to quick_frontend
-          - restore printing the day change while displaying history
-          - fixes main item update and auto addition of a scheme to HTML links
-          - added ui_show_cb in actionManager (frontend can handle the XMLUI display)
+        - printing the history and notifications are left to quick_frontend
+        - restore printing the day change while displaying history
+        - fixes main item update and auto addition of a scheme to HTML links
+        - added ui_show_cb in actionManager (frontend can handle the XMLUI display)
     - jp:
-          - new start method used by all commands
-          - new --output option to change the format of command output:
-                - possible outputs for now are "default", "json" and "json_raw" 
-          - new commands:
-                - blog: import, edit, preview
-                - roster: get, stats, purge
-          - command "message" moved to "message send"
-          - command "profile list" uses the new --output option
-          - added constants for exit codes
+        - new start method used by all commands
+        - new --output option to change the format of command output:
+            - possible outputs for now are "default", "json" and "json_raw" 
+        - new commands:
+            - blog: import, edit, preview
+            - roster: get, stats, purge
+        - command "message" moved to "message send"
+        - command "profile list" uses the new --output option
+        - added constants for exit codes
     - primitivus:
-          - detect direct pasting in the message bar
-          - add bracketed paste mode
+        - detect direct pasting in the message bar
+        - add bracketed paste mode
     - libervia:
-          - browser and server sides:
-               - replaced isRegistered call by a more generic getSessionMetadata
-               - new option "allow_registration" to enable/disable new accounts registration
-          - browser side:
-                - improved the popup message banner
-                - replaced old favicon and display favicon counter
-                - fixed handling of connection with external JID
-                - improved some regexps
-                - replace "re" module usage with pure javascript
-          - server:
-                - added mechanism for URL redirections
-                - renamed "ssl_certificate" to "tls_certificate"
-                - new options "tls_private_key", "tls_chain options", "base_url_ext"
-                - blog:
-                      - several improvements
-                      - implement tags/categories
-                      - removed max_items as we use RSM
-                      - fixed atom feed, add link and categories (tags) elements
+        - browser and server sides:
+           - replaced isRegistered call by a more generic getSessionMetadata
+           - new option "allow_registration" to enable/disable new accounts registration
+        - browser side:
+            - improved the popup message banner
+            - replaced old favicon and display favicon counter
+            - fixed handling of connection with external JID
+            - improved some regexps
+            - replace "re" module usage with pure javascript
+        - server:
+            - added mechanism for URL redirections
+            - renamed "ssl_certificate" to "tls_certificate"
+            - new options "tls_private_key", "tls_chain options", "base_url_ext"
+            - blog:
+                - several improvements
+                - implement tags/categories
+                - removed max_items as we use RSM
+                - fixed atom feed, add link and categories (tags) elements
 
 v 0.6.0 (02/12/2015):
     - modification of the social contract according to the General Assembly of August, 19th 2014
     - improved launching/stopping scripts:
-          - use SIGTERM instead of SIGINT with the “stop” command
-          - now manage "status" command and additional arguments
+        - use SIGTERM instead of SIGINT with the “stop” command
+        - now manage "status" command and additional arguments
     - updated setup.py and INSTALL files:
-          - add PyOpenSSL to the dependency list
-          - added jsdebug option to use debug mode with pyjsbuild
-          - replaced the deprecated distribute_setup.py by ez_setup.py
-          - fixed INSTALL instructions
+        - add PyOpenSSL to the dependency list
+        - added jsdebug option to use debug mode with pyjsbuild
+        - replaced the deprecated distribute_setup.py by ez_setup.py
+        - fixed INSTALL instructions
     - updated README and README4PACKAGERS for third party modules
     - added some tests for sat.tmp.wokkel and Libervia JID* classes
     - core:
-          - new bridge signals: actionNew, progressStarted, progressFinished, progressError 
-          - new bridge methods:
-                - disco: getFeatures
-                - profile: profileStartSession, profileIsSessionStarted, profileSetDefault
-                - memory: getEntitiesData, asyncGetParamsValuesFromCategory, getMainResource 
-                - progression (e.g for file transfer): progressGetAll, progressGetAllMetadata
-                - actionsGet to retrieve the deferred actions ordered by actionNew
-          - xmpp: added auxiliary methods sendError and IQ, improved roster management
-          - plugins: more robust loading, detect name conflicts, added unload method
-          - repository data are checked and added to SàT "dev" versions
-          - add several new constants for MUC, profiles, plugins
+        - new bridge signals: actionNew, progressStarted, progressFinished, progressError 
+        - new bridge methods:
+            - disco: getFeatures
+            - profile: profileStartSession, profileIsSessionStarted, profileSetDefault
+            - memory: getEntitiesData, asyncGetParamsValuesFromCategory, getMainResource 
+            - progression (e.g for file transfer): progressGetAll, progressGetAllMetadata
+            - actionsGet to retrieve the deferred actions ordered by actionNew
+        - xmpp: added auxiliary methods sendError and IQ, improved roster management
+        - plugins: more robust loading, detect name conflicts, added unload method
+        - repository data are checked and added to SàT "dev" versions
+        - add several new constants for MUC, profiles, plugins
     - memory:
-          - new parameters: "Chat history limit", "Show offline contacts" and "Show empty groups"
-          - add "int" parameter type with "constraint" attributes
-          - removed resource from the default JabberID
+        - new parameters: "Chat history limit", "Show offline contacts" and "Show empty groups"
+        - add "int" parameter type with "constraint" attributes
+        - removed resource from the default JabberID
     - tools:
-          - new tools.sat_defer, implementation of RTDeferredSessions and DelayedDeferred
-          - xmlui:
-                - added JidInput and JidsList widgets
-                - allow to select a tab when adding it
-                - keeps data form result headers sorted
+        - new tools.sat_defer, implementation of RTDeferredSessions and DelayedDeferred
+        - xmlui:
+            - added JidInput and JidsList widgets
+            - allow to select a tab when adding it
+            - keeps data form result headers sorted
     - new plugins:
-          - XEP-0059: Result Set Management
-          - XEP-0166: Jingle \o/
-          - XEP-0203: Delay Delivery
-          - XEP-0234: Jingle File Transfer
-          - XEP-0260: Jingle SOCKS5 Bytestreams
-          - XEP-0261: Jingle In-Band Bytestreams
-          - XEP-0297: Stanza Forwarding
-          - XEP-0300: Cryptographic Hash Functions
-          - XEP-0313: Message Archive Management
-          - XEP-0334: Message Processing Hints
-          - XEP-0363: HTTP File Upload
-          - file, upload: file transfer management
-          - ip: external IP discovery
-          - pipe: Jingle pipe transfer
-          - nat-port: NAT port mapping
-          - watched: alert when a watched entity goes online
-          - welcome: display welcome message
+        - XEP-0059: Result Set Management
+        - XEP-0166: Jingle \o/
+        - XEP-0203: Delay Delivery
+        - XEP-0234: Jingle File Transfer
+        - XEP-0260: Jingle SOCKS5 Bytestreams
+        - XEP-0261: Jingle In-Band Bytestreams
+        - XEP-0297: Stanza Forwarding
+        - XEP-0300: Cryptographic Hash Functions
+        - XEP-0313: Message Archive Management
+        - XEP-0334: Message Processing Hints
+        - XEP-0363: HTTP File Upload
+        - file, upload: file transfer management
+        - ip: external IP discovery
+        - pipe: Jingle pipe transfer
+        - nat-port: NAT port mapping
+        - watched: alert when a watched entity goes online
+        - welcome: display welcome message
     - already existing plugins:
-          - XEP-0045: several improvements
-          - XEP-0047: improvements, increased timeout to 2 minutes
-          - XEP-0050: better disco info, pre-fill the target server
-          - XEP-0054: improvements, especially concerning the hash
-          - XEP-0055: add "simple" and "advanced" modes to Jabber Search
-          - XEP-0060:
-                - try to find a default PubSub service
-                - retractItem manage "notify" attribute
-                - added addManagedNode and removeManagedNode
-                - new signal psEvent will be used to notify the frontends
-          - XEP-0065: chunk size optimization, session cleaning and timeout
-          - XEP-0085: various fixes, including a bad use of threads
-          - XEP-0096: use file plugin to choose the best available method
-          - XEP-0115: better disco error handling
-          - XEP-0163: replaced personalEvent with psEvent, improved addPEPEvent
-          - XEP-0277:
-                - improved bridge methods, better parsing of atom, better error handling
-                - auto-create nodes on default pubsub service if available, else PEP
-                - use checkFeatures and other new methods from XEP-0060
-                - added subscribeToMany and getFromMany methods
-                - manage retract feature
-          - account: add method asyncConnectWithXMPPCredentials
-          - groupblog: many improvements as in XEP-0060 and XEP-0277
-          - sec_otr, text commands: some improvements
-      - removed plugin: deprecated tmp_demo_directory
+        - XEP-0045: several improvements
+        - XEP-0047: improvements, increased timeout to 2 minutes
+        - XEP-0050: better disco info, pre-fill the target server
+        - XEP-0054: improvements, especially concerning the hash
+        - XEP-0055: add "simple" and "advanced" modes to Jabber Search
+        - XEP-0060:
+            - try to find a default PubSub service
+            - retractItem manage "notify" attribute
+            - added addManagedNode and removeManagedNode
+            - new signal psEvent will be used to notify the frontends
+        - XEP-0065: chunk size optimization, session cleaning and timeout
+        - XEP-0085: various fixes, including a bad use of threads
+        - XEP-0096: use file plugin to choose the best available method
+        - XEP-0115: better disco error handling
+        - XEP-0163: replaced personalEvent with psEvent, improved addPEPEvent
+        - XEP-0277:
+            - improved bridge methods, better parsing of atom, better error handling
+            - auto-create nodes on default pubsub service if available, else PEP
+            - use checkFeatures and other new methods from XEP-0060
+            - added subscribeToMany and getFromMany methods
+            - manage retract feature
+        - account: add method asyncConnectWithXMPPCredentials
+        - groupblog: many improvements as in XEP-0060 and XEP-0277
+        - sec_otr, text commands: some improvements
+    - removed plugin: deprecated tmp_demo_directory
     - tmp (used as a buffer module until the changes are integrated to wokkel):
-          - added support for RSM (XEP-0059) and MAM (XEP-0313)
-          - pubsub: added retract "notify" attribute management
+        - added support for RSM (XEP-0059) and MAM (XEP-0313)
+        - pubsub: added retract "notify" attribute management
     - frontends:
-          - deprecated wix frontend and Libervia's unibox
-          - frontends can also use listeners and triggers mechanisms
-          - improved management: menus, widgets, rosters, chat and blog
-          - merge sat_frontends.constants to sat_frontends.quick_frontend.constants
-          - new method getFullJid which is the frontend's equivalent to getMainResource
-          - contact list: display the counts of waiting messages per contact
-          - MUC: display activities' symbols, resources for private messages
+        - deprecated wix frontend and Libervia's unibox
+        - frontends can also use listeners and triggers mechanisms
+        - improved management: menus, widgets, rosters, chat and blog
+        - merge sat_frontends.constants to sat_frontends.quick_frontend.constants
+        - new method getFullJid which is the frontend's equivalent to getMainResource
+        - contact list: display the counts of waiting messages per contact
+        - MUC: display activities' symbols, resources for private messages
     - jp:
-          - added commands "profile connect" and "modify", "param get" and "set", "file upload"
-          - added attributes --verbose, --password and --xmpp-password
-          - profile session can now be started without connection
+        - added commands "profile connect" and "modify", "param get" and "set", "file upload"
+        - added attributes --verbose, --password and --xmpp-password
+        - profile session can now be started without connection
     - primitivus:
-          - now manages multi-profiles \o/
-          - new command "search" to search the local history
-          - xmlui: manage message in FileDialog and several improvements
+        - now manages multi-profiles \o/
+        - new command "search" to search the local history
+        - xmlui: manage message in FileDialog and several improvements
     - libervia:
-          - Libervia is now based on QuickFrontend \o/
-          - browser and server sides:
-                - allow to connect with an external JID
-                - implemented blog tags
-          - server side:
-                - set a timeout to reset the waiting connection requests after 2 minutes
-                - special handling of Connection/JabberID and Connection/autoconnect
-                - add a link to the FAQ in the HTTP/HTTPS warning dialog
-                - static blog: themes based on Jinja2 template engine
-                - enable HTTP gzip compression
-          - browser side:
-                - removed unibox, RichMessageEditor and RecipientManager
-                - features checks for microblogging and group blogging
-                - new methods displayWidget, setStatusOnline, showDialog
-                - added signal caching before profile is plugged
-                - do a hard reload on disconnected signal
-                - news classes for JID iterables
-                - display MUC occupants presences
-                - show version number in the about dialog
-                - improve login and register panels visibility
-                - use favico.js to display the total number of waiting messages
-                - json: replaced the Window.alert by a log warning when signal is lost
-                - contact list: ContactPanels is used instead of OccupantsList in MUC
-                - OTR: use listeners, fixed missing resource issue and icons updates
-                - widget's drag and drop:
-                      - border widgets are now visible on drag start
-                      - allow to drop a widget in the "+" button to add a new tab
-      - and a lot of improvements and fixes that are not listed here :-)
+        - Libervia is now based on QuickFrontend \o/
+        - browser and server sides:
+            - allow to connect with an external JID
+            - implemented blog tags
+        - server side:
+            - set a timeout to reset the waiting connection requests after 2 minutes
+            - special handling of Connection/JabberID and Connection/autoconnect
+            - add a link to the FAQ in the HTTP/HTTPS warning dialog
+            - static blog: themes based on Jinja2 template engine
+            - enable HTTP gzip compression
+        - browser side:
+            - removed unibox, RichMessageEditor and RecipientManager
+            - features checks for microblogging and group blogging
+            - new methods displayWidget, setStatusOnline, showDialog
+            - added signal caching before profile is plugged
+            - do a hard reload on disconnected signal
+            - news classes for JID iterables
+            - display MUC occupants presences
+            - show version number in the about dialog
+            - improve login and register panels visibility
+            - use favico.js to display the total number of waiting messages
+            - json: replaced the Window.alert by a log warning when signal is lost
+            - contact list: ContactPanels is used instead of OccupantsList in MUC
+            - OTR: use listeners, fixed missing resource issue and icons updates
+            - widget's drag and drop:
+                - border widgets are now visible on drag start
+                - allow to drop a widget in the "+" button to add a new tab
+    - and a lot of improvements and fixes that are not listed here :-)
 
 v 0.5.1 (18/09/2014):
     - fixed some typos (Matteo Cypriani)
     - updated the setup file, INSTALL and README* (Matteo Cypriani)
     - already existing plugins:
-          - XEP_0033: fixed message sending
+        - XEP_0033: fixed message sending
     - wix: avoid setting a bad icon (Olly Betts)
     - libervia's browser side:
-        - fixed bug at profile disconnection
-        - fixed signal callback with no argument
-        - disable OTR if the browser doesn't offer CSPRNG
+      - fixed bug at profile disconnection
+      - fixed signal callback with no argument
+      - disable OTR if the browser doesn't offer CSPRNG
 
 v 0.5 (09/09/2014):
     - removed deprecated Sortilege frontend
@@ -231,150 +314,150 @@
     - the backend is now a twisted plugin (as libervia)
     - added a .service file for D-Bus auto-launch feature
     - improved launching/stopping scripts:
-          - do not kill all instances anymore
-          - add a "status" command
-          - launch as daemon by default
-          - new option "fg" for launching in foreground
+        - do not kill all instances anymore
+        - add a "status" command
+        - launch as daemon by default
+        - new option "fg" for launching in foreground
     - updated setup.py and INSTALL files:
-          - adapt to the new improvements
-          - added "clean" and "purge" options
-          - update distribute_setup.py to ez_setup.py
-          - replace PIL dependencies with it's fork pillow
+        - adapt to the new improvements
+        - added "clean" and "purge" options
+        - update distribute_setup.py to ez_setup.py
+        - replace PIL dependencies with it's fork pillow
     - use XDG recommended paths as the defaults
     - look for DNS SRV records to find the XMPP server and port
     - tests: bug fixes, improvements and addition
     - bridge:
-          - fixes some D-Bus frontend generator issues
-          - set the timeout to 120 seconds for async calls
-          - added methods getReady, discoInfos and discoItems
+        - fixes some D-Bus frontend generator issues
+        - set the timeout to 120 seconds for async calls
+        - added methods getReady, discoInfos and discoItems
     - core:
-          - wider use of asynchronous methods, removal of some synchronous ones
-          - improved retrieval of the client with better error management
-          - plugins now accepts recommendations in addition to dependencies
-          - sendMessage handles the extra data key "send_only"
-          - sendMessageTrigger now manage pre and post treatments
-          - xmpp:
-                - fixes sending of presence stanzas (were sent twice)
-                - warns about roster's contact unilateral subscriptions
-                - fixes presence status, handle message's subjects
-                - refactorisation of the messages reception and sending
-          - memory:
-                - moved Params class in its own module
-                - param definition handles multi-selection for list widgets
-                - Parameters "Server" and "Port" renamed to "Force server" and "Force Port"
-                - added module crypto for password hashing and block encryption/decryption
-                - improvements and bug fixes (entities cache, last resource, importing/filtering parameters)
+        - wider use of asynchronous methods, removal of some synchronous ones
+        - improved retrieval of the client with better error management
+        - plugins now accepts recommendations in addition to dependencies
+        - sendMessage handles the extra data key "send_only"
+        - sendMessageTrigger now manage pre and post treatments
+        - xmpp:
+            - fixes sending of presence stanzas (were sent twice)
+            - warns about roster's contact unilateral subscriptions
+            - fixes presence status, handle message's subjects
+            - refactorisation of the messages reception and sending
+        - memory:
+            - moved Params class in its own module
+            - param definition handles multi-selection for list widgets
+            - Parameters "Server" and "Port" renamed to "Force server" and "Force Port"
+            - added module crypto for password hashing and block encryption/decryption
+            - improvements and bug fixes (entities cache, last resource, importing/filtering parameters)
     - tools:
-          - config improvements
-          - moved sat.tools.jid to sat_frontends.tools.jid
-          - XMLUI:
-                - added read-only attribute
-                - handle data forms and button callbacks
-                - read value element/attribute of input widgets
-                - new and improved widgets (boolean, list, texbox, JID)
-                - manage dialogs for message, note, confirm and file upload
+        - config improvements
+        - moved sat.tools.jid to sat_frontends.tools.jid
+        - XMLUI:
+            - added read-only attribute
+            - handle data forms and button callbacks
+            - read value element/attribute of input widgets
+            - new and improved widgets (boolean, list, texbox, JID)
+            - manage dialogs for message, note, confirm and file upload
     - new plugins:
-          - XEP-0048: MUC bookmarks
-          - XEP-0049: private xml storage
-          - XEP-0092: software version
-          - OTR: Off The Record (end-to-end) encryption
-          - register account: refactorisation of the method to register an XMPP account
-          - static blog:
-                - user can set his blog's banner, title, meta keywords and description
-                - add a menu of type MENU_JID_CONTEXT to open a contact's public blog
+        - XEP-0048: MUC bookmarks
+        - XEP-0049: private xml storage
+        - XEP-0092: software version
+        - OTR: Off The Record (end-to-end) encryption
+        - register account: refactorisation of the method to register an XMPP account
+        - static blog:
+            - user can set his blog's banner, title, meta keywords and description
+            - add a menu of type MENU_JID_CONTEXT to open a contact's public blog
     - already existing plugins:
-          - XEP_0033, XEP-0085: bug fixes
-          - XEP-0045:
-                - added "Configure room" menu
-                - added /kick, /ban and /affiliate commands
-                - added user information to /whois text command
-          - XEP-0050: manage notes and forms returned by completed command
-          - XEP-0054: crop uploaded avatar to get a square
-          - XEP-0060: handle retrieving items by node identifiers
-          - XEP-0065: fixed initialisation sequence
-          - xep-0115: caps optimisation
-          - XEP-0249: added command /invite
-          - groupblog: added a convenient bridge method getGroupBlogsWithComments
-          - radiocol: add MP3 support, preload signal also contains the uploader nickname
-          - account:
-                - prosody gid is used to spawn prosodyctl process
-                - user can change his password, purge his microblogs, delete his account
-                - do not send the password with the confirmation email for account creation
-          - text command:
-                - refactoring and fixes
-                - plugin can register their own commands
-                - do not send the message on invalid command
-                - added /me command, commands are now sorted in /help
+        - XEP_0033, XEP-0085: bug fixes
+        - XEP-0045:
+            - added "Configure room" menu
+            - added /kick, /ban and /affiliate commands
+            - added user information to /whois text command
+        - XEP-0050: manage notes and forms returned by completed command
+        - XEP-0054: crop uploaded avatar to get a square
+        - XEP-0060: handle retrieving items by node identifiers
+        - XEP-0065: fixed initialisation sequence
+        - xep-0115: caps optimisation
+        - XEP-0249: added command /invite
+        - groupblog: added a convenient bridge method getGroupBlogsWithComments
+        - radiocol: add MP3 support, preload signal also contains the uploader nickname
+        - account:
+            - prosody gid is used to spawn prosodyctl process
+            - user can change his password, purge his microblogs, delete his account
+            - do not send the password with the confirmation email for account creation
+        - text command:
+            - refactoring and fixes
+            - plugin can register their own commands
+            - do not send the message on invalid command
+            - added /me command, commands are now sorted in /help
     - stdui (standard XMLUI forms and callbacks):
-          - contact list: unify the roster management UIs
-          - profile manager: manage profile authentication and password prompts
+        - contact list: unify the roster management UIs
+        - profile manager: manage profile authentication and password prompts
     - frontends:
-          - async failures are more detailed
-          - signals are managed in a more generic way
-          - force JID's node and domain to lower-case
-          - use the new "info" type for system message
-          - manage menu types MENU_ROOM and MENU_SINGLE
-          - display messages from contacts not in roster
-          - display presence with the highest priority
-          - reset your own presence on connection/disconnection
-          - display chat states for MUC participants
-          - XMLUI: add setter methods, bug fixes
+        - async failures are more detailed
+        - signals are managed in a more generic way
+        - force JID's node and domain to lower-case
+        - use the new "info" type for system message
+        - manage menu types MENU_ROOM and MENU_SINGLE
+        - display messages from contacts not in roster
+        - display presence with the highest priority
+        - reset your own presence on connection/disconnection
+        - display chat states for MUC participants
+        - XMLUI: add setter methods, bug fixes
     - jp:
-          - updated main loop to gobject 3
-          - option '-c' is used to define the SàT profile password
-          - added commands for bookmarks, info disco/version, load/save parameters template
+        - updated main loop to gobject 3
+        - option '-c' is used to define the SàT profile password
+        - added commands for bookmarks, info disco/version, load/save parameters template
     - primitivus:
-          - improved vertical container
-          - fixes contact group update, freedesktop notifications
-          - history edit bar doesn't propagate up/down key events anymore
-          - use of new keys modules from Urwid SàText and inhibate SIG_INT
-          - fixes the messages display order when opening a conversation
-          - prevent a notification flood when displaying the history
-          - add the /history command
-          - focus fixes
-          - added keys to focus main parts
+        - improved vertical container
+        - fixes contact group update, freedesktop notifications
+        - history edit bar doesn't propagate up/down key events anymore
+        - use of new keys modules from Urwid SàText and inhibate SIG_INT
+        - fixes the messages display order when opening a conversation
+        - prevent a notification flood when displaying the history
+        - add the /history command
+        - focus fixes
+        - added keys to focus main parts
     - libervia:
-          - reorganize all the source files hierarchy, fixes module import
-          - refactor HTTP request result values, handle "NoReply" error
-          - new account password must contain at least 6 chars
-          - display favicons
-          - server side:
-                - added support for SSL and its related parameters
-                - adapt setup.py to follow the changes in the backend
-                - improvements (options management, failure handling...)
-                - added option empty_password_allowed_warning_dangerous_list
-                - twisted plugin:
-                      - fix unicodes issues in the options
-                      - bug fix passing twistd arguments to Libervia
-                - static blog:
-                      - added URL query parameter 'max_items'
-                      - retrieve blog's banner, title, meta keywords and description
-                      - display blog comments when you click on a main item header or title
-          - browser side:
-                - force profile name to lower case at new account creation
-                - display new lines and clickable URLs for headline message
-                - notifications enhancements, manage the "info" message type
-                - refactorisation of the JID class with modifiable attributes
-                - refactorisation of the file uploaders and the menus
-                - manage menus of level > 2 which can be flattened
-                - handle menus of type ROOM, SINGLE and ROSTER_JID
-                - PromptDialog can display several input fields
-                - added a dialog to update/delete the account
-                - added classes LightTextEditor, HTMLTextEditor
-                - announcements from the host are displayed in a popup
-                - use a default avatar, display avatars in the contact panel
-                - display chat states for MUC participants
-                - first steps to manage somehow browser side's plugins
-                - implementation of OTR based on otr.js
-                - improvements from feedbacks, bug fixes
-                - microblogs:
-                      - display new lines in microblogs
-                      - <shift> + <enter> makes a new line, <esc> finishes the edition
-                - XMLUI:
-                      - implement the divider styles
-                      - manage multi-selection for list widgets
-                      - follow the changes in the backend (dialogs, read-only attribute...)
-                - nativedom manages more node properties
+        - reorganize all the source files hierarchy, fixes module import
+        - refactor HTTP request result values, handle "NoReply" error
+        - new account password must contain at least 6 chars
+        - display favicons
+        - server side:
+            - added support for SSL and its related parameters
+            - adapt setup.py to follow the changes in the backend
+            - improvements (options management, failure handling...)
+            - added option empty_password_allowed_warning_dangerous_list
+            - twisted plugin:
+                - fix unicodes issues in the options
+                - bug fix passing twistd arguments to Libervia
+            - static blog:
+                - added URL query parameter 'max_items'
+                - retrieve blog's banner, title, meta keywords and description
+                - display blog comments when you click on a main item header or title
+        - browser side:
+            - force profile name to lower case at new account creation
+            - display new lines and clickable URLs for headline message
+            - notifications enhancements, manage the "info" message type
+            - refactorisation of the JID class with modifiable attributes
+            - refactorisation of the file uploaders and the menus
+            - manage menus of level > 2 which can be flattened
+            - handle menus of type ROOM, SINGLE and ROSTER_JID
+            - PromptDialog can display several input fields
+            - added a dialog to update/delete the account
+            - added classes LightTextEditor, HTMLTextEditor
+            - announcements from the host are displayed in a popup
+            - use a default avatar, display avatars in the contact panel
+            - display chat states for MUC participants
+            - first steps to manage somehow browser side's plugins
+            - implementation of OTR based on otr.js
+            - improvements from feedbacks, bug fixes
+            - microblogs:
+                - display new lines in microblogs
+                - <shift> + <enter> makes a new line, <esc> finishes the edition
+            - XMLUI:
+                - implement the divider styles
+                - manage multi-selection for list widgets
+                - follow the changes in the backend (dialogs, read-only attribute...)
+            - nativedom manages more node properties
 
 v 0.4.1 (28/02/2014):
     - fixed README4PACKAGERS