- argparse argument with nargs > 1 and default == {} crashes when reading the user input
- separate blog import options with a new line
- convert DBus strings received by the backend to unicode
fileUpload is used by external frontends, while upload can be used by frontends. upload return in addition to the progress_id a download_d Deferred which fire with URI when file is uploaded.
changed option ignore-tls-errors to ignore_tls_errors.
- profile modify was resetting profile password if the option was not used
- str types where used instead of unicode decoder
- a new option allow to disable profile password (mutually exclusive with --password)
- XMPP password was broken in a similar way as profile password
- progress use new API, and signals to monitor progression and avoid use of progressGet before progress is actually started
- progress behaviour on event is managed by callbacks which are Jp attributes
- progress with unknown or 0 size don't show the progress bar
- better handling of errors
- CommandAnswering is update to manage actions instead of the deprecated askConfirmation
- managed actions use callback easy to associate with an action type.
- file command is updated to manage these changes and the recent changes in backend behaviour
- verbosity is used to display more or less message when sending/receiving a file
- destination path can be specified in file receive
- file receive doesn't stop yet, still need some work in the backend
- new "profile/default" command
- info doesn't show password anymore by default, need to be explicitly requested
- info and modify don't need to connect anymore
- modify can now set default profile. As use_profile is set, at least a profile session need to be started when it would not be mandatory technicaly (if just setting the profile as default is needed). But this option should not be used often, and it's not a big side effect, so I don't feel the need to create a new dedicated command, or to do complicated checks to avoid the session start.
- a new need_connect option is used when during BaseCommand init
- if need_connect is True, profile connection is necessary, so use_profile must be True too
- if need_connect if False, session can be started without connection, use_profile must be True
- if need_connect is None, use_profile can be True (need_connect will be set to True) or False (need_connect is not used)
- if need_connect is False (and so use_profile is True), a new --start-session option is usable
- param get and set are the first commands to use this option, so parameters can be changed if connection is not working
category and name are both optionals:
- if nothing is given, categories list is printed
- if only a category is given, a list of params and their values is printed
- if both category and name are given, the requested param is printed
/!\ not finished, everything is still instable !
- bridge: DBus bridge has been modified to allow blocking call to be called in the same way as asynchronous calls
- bridge: calls with a callback and no errback are now possible, default errback log the error
- constants: removed hack to manage presence without OrderedDict, as an OrderedDict like class has been implemented in Libervia
- core: getLastResource has been removed and replaced by getMainResource (there is a global better management of resources)
- various style improvments: use of constants when possible, fixed variable overlaps, import of module instead of direct class import
- frontends: printInfo and printMessage methods in (Quick)Chat are more generic (use of extra instead of timestamp)
- frontends: bridge creation and option parsing (command line arguments) are now specified by the frontend in QuickApp __init__
- frontends: ProfileManager manage a more complete plug sequence (some stuff formerly manage in contact_list have moved to ProfileManager)
- quick_frontend (quick_widgets): QuickWidgetsManager is now iterable (all widgets are then returned), or can return an iterator on a specific class (return all widgets of this class) with getWidgets
- frontends: tools.jid can now be used in Pyjamas, with some care
- frontends (XMLUI): profile is now managed
- core (memory): big improvment on entities cache management (and specially resource management)
- core (params/exceptions): added PermissionError
- various fixes and improvments, check diff for more details
- fix bug 3
- modify "Connection" params:
- rename "Server" to "Force server" and "Port" to "Force port"
- set the default value to empty string for both
- no '-c': same behavior as before, do not connect the profile
- '-c' with not following value: autoconnect and use the default value '' as profile password
- '-c' with a following value: autoconnect and use that value as profile password
Note that previous scripts may not work. For example, even if the profile password for "test1" is empty:
jp disco -p test1 -c contact@host.net
must be changed to:
jp disco -p test1 -c -- contact@host.net
Otherwise, argparse will think that "contact@host.net" is the password and that the target JID is missing.