CHANGELOG 16.5 KB
Newer Older
1 2
This file describes the new features in each poezio release.
For more detailed changelog, see the roadmap:
3
https://dev.louiz.org/projects/poezio/roadmap
4

mathieui's avatar
mathieui committed
5 6
* Poezio 0.14 - dev

7 8 9 10 11 12
* Poezio 0.13.1 - dev

# Bug fixes

- Contacts won’t be seen playing games or music when they actually stop doing
  so.
13
- /leave now toggles off the autojoin flag instead of removing the bookmark.
14
- Only add auotjoin on new bookmarks for synchronise_open_rooms on /join
15 16 17 18 19 20 21 22
- /affiliation displays things in the info win instead of directly in the room,
  and additionally displays which room it refers to.
- List the correct required versions for package maintainers.
- Fix the AppStream manifest to get Flathub to accept it.
- Add a warning when the terminal doesn’t support 256color mode.
- Display our own nick properly in messages received from MAM.
- Only send an unavailable presence on closing a room if we are joined.
- Don’t display the current date for history messages received today.
23
- Fix marquee and dice plugin to use newer Last Message Correction format.
mathieui's avatar
mathieui committed
24

Link Mauve's avatar
Link Mauve committed
25 26 27 28
# Forgotten additions

- Add a clean theme for light terminals, thanks Armael!

mathieui's avatar
mathieui committed
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112
* Poezio 0.13

# Thanks

- madhur for the MAM code and various other fixes (GSoC 2019)
- Ge0rG for fixes in the reconnect and carbons code
- fiaxh for the nice SVG logo

Zash, PS Le Stang, Karthikeyan Singaravelan, Jonas Schäfer, Célestin Matte,
Andrey Utkin, root.

# Meta changes

- Packages: poezio is now packaged for Gentoo and Debian buster
  (poezio v0.12.1)
- Source: the repository is now hosted at https://lab.louiz.org/poezio/poezio

# Breaking changes

- BREAKING: requires python3.7 (previously python 3.5)
- DEPRECATION: `load_log` configuration was removed
- DEPRECATION: `bookmark_on_join` configuration option was renamed
  `synchronise_open_rooms`, and now defaults to true. This makes /join
  automatically create a bookmark, use /leave to remove it

# New features and plugins

- `/impromptu <jid> [jid ..]` command to create a new chat with these persons
- `/scrollback` to scroll back to a specific line/message in the current window
- `/invite <jid> [jid ..]` command in single user chat does like `/impromptu`
  creating a new MUC
- `/affiliation` command now returns the list of privileged users on the
  current MUC when no argument is supplied
- `default_muc_service`  configuration for replacing the server's default MUC
- `unique_prefix_tab_names` display option to show the shorter tab name
  prefixes in the tab list
- `/list` defaults to `default_muc_service` when no argument is specified
- XEP-0392 support
- New Plugin: OMEMO (experimental) - lives as an external plugin at
  https://lab.louiz.org/poezio/poezio-omemo
- New Plugin: Contact - queries an entity for contact addresses (XEP-0157)
- New Plugin: Upload - adds a `/upload <filename>` command in chats for HTTP
  upload
- New Plugin: remove_get_trackers - Remove GET trackers from URLs in sent
  messages.
- New Plugin: QR


# Under the hood

- Plugin API: `E2EEPlugin` is a new experimental API for message encryption
  (used by the OMEMO plugin)
- Plugin API: plugins can now declare a string list of dependencies
- Plugin API: plugins can now be setup using a well-known setuptools entrypoint
- Reworked Tab handling
- Split Message rendering
- Typing improvements

# Minor changes (bugfixes)

- Properly advertize gaming status
- Improve error reporting to users
- Add SVG support for avatars
- Plugin: Disco - allow node to be specified
- Don't always treat carbons from biboumi as MUC-PMs (#3705)
- Read newer Last Message Correction rules while still reading older ones
  (#3462)
- Allow /block and /unblock in ConversationTab (#3346)
- Experimental: Fetch archives (MAM) on scroll up in MUC (#3052)
- Allow /add in ConversationTab (#3395)
- Prevent Chat State Notifications from being stored in the archive (#3518)
- Rework MUC-PM Carbons handling (#3294)
- /scrollback (#3481)
- Read <delay/> in <subject/> (#3451)
- Only use MUC <subject/> in specific cases (#3452)
- Allow /reconnect in all tabs (#3471)
- Allow /embed in chat tabs (#3449)
- Allow /upload in chat tabs
- Properly identify MUC-PMs for normal messages and chatstates (#3491)
- /server_cycle: stricly match specified domain (#3412)
- Breaking: -v/--version previously for internal purposes now returns version
  as expected (#3429)
- Improve highlighting regex (#3433)
- Generate static resource at first launch (#3400)
mathieui's avatar
mathieui committed
113

mathieui's avatar
mathieui committed
114
* Poezio 0.12
mathieui's avatar
mathieui committed
115

116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138
- Require Python 3.5, to add support for Python 3.7, use proper async
  functions, use typing, italics formatting, FIXME
- Added support for XEP-0392 (Consistent Color Generation)
- Added support for XEP-0153 (vCard-Based Avatars) and XEP-0084 (User
  Avatar) in the roster tab
- Added support for XEP-0363 (HTTP File Upload) for easy file transfer,
  in the upload plugin with /upload
- Added support for XEP-0066 (Out of Band Data) for Conversations
  compatibility when sharing images, in the embed plugin with /embed
- Removed support for XEP-0296 (Best Practices for Resource Locking),
  to use all features available no matter what our contact’s current
  clients support
- Check for usable Unicode support on start
- Generate a device id on first start, and use it for our resource
- Display the public key hash instead of the certificate’s
- Handle carbons properly for private messages in rooms
- /bookmarks can now be used to rename tabs as you want
- Remove unexpected command completion based on command prefix
- Add an irssi theme
- Add a code plugin, which requires pygments
- Fix resource duplication on reconnect
- Misc fixes and improvements

mathieui's avatar
mathieui committed
139 140 141 142 143 144 145 146 147
* Poezio 0.11

- Implementation of XEP-0380
- Docker images
- Improved documentation
- GPG plugin fixes
- Added manpages for the utility scripts
- Misc fixes

mathieui's avatar
mathieui committed
148
* Poezio 0.10
mathieui's avatar
mathieui committed
149

mathieui's avatar
mathieui committed
150 151
- A lot of cleanup and refactor in order to use cython on the codebase
  more easily.
mathieui's avatar
mathieui committed
152
- A new poezio_logs script to make logfiles more human-readable
mathieui's avatar
mathieui committed
153
- Substantial performance improvements
mathieui's avatar
mathieui committed
154 155
- Added a new confirmation tab and used it for cert warnings and XEP-0070
- Added support for XEP-0070 (HTTP request verification)
mathieui's avatar
mathieui committed
156 157 158 159 160 161 162 163 164 165 166
- Enabled carbons (XEP-0280) by default
- Added support for XEP-0198 (stream management)
- Added support for XEP-0352 (client state indication)
- Added support for XEP-0319 (last user interaction in presence)
- Add an 'eval_password' config option
- Add a marquee and dice plugins
- Add a bob plugin
- simple_notify plugin works in MUC too
- The reorder plugin can now /save_order
- Minor ui changes
- Many Bugfixes
mathieui's avatar
mathieui committed
167 168

* Poezio 0.9
mathieui's avatar
mathieui committed
169 170

- Use slixmpp instead of sleekxmpp, remove threads and locks
171 172
- Require python 3.4 for the input handling, event loop, xml parser,
  and ssl API
mathieui's avatar
mathieui committed
173 174

- Due to the slixmpp move, /reconnect now works (ecf22cb)
mathieui's avatar
mathieui committed
175 176 177
- Add a check for broken python ncurses (1c5589b)
- Add a /reload command to reload the config (71f3848)
- Add a /color command to permanently set the color a nick (f7e7836)
mathieui's avatar
mathieui committed
178
- Add a /closeall command with a plugin, to cleanup the open tabs (ed7fe69)
179 180 181 182
- Add a /reorder command with a plugin to order the tabs based on a static
  layout (8afbb44)
- Add a /set_default command which sets the value of an option back to its
  default (9caa992)
mathieui's avatar
mathieui committed
183
- Use a deterministic algorithm to set the nickname colors by default (2452706)
mathieui's avatar
mathieui committed
184
- The user’s JID is now shown in the roster (a0a00d5)
mathieui's avatar
mathieui committed
185 186
- The screen_detach plugin now also detects tmux (21d8a3e)
- The autocorrect plugin now supports regular expressions (067ad58)
187 188
- Improve the XML tab with coloration, better filters, and filter chaining
  (1cd0b4d)
mathieui's avatar
mathieui committed
189 190
- Allow the use of client X.509 certificates for authentication, and add
  /certs, /cert_{add,disable,revoke,fetch} commands (00396c1)
191 192 193 194
- Stream errors are now displayed, which is more helpful to the user than
  'connection failed' (5cd854f)
- The (system-wide) launch script is now a setuptools entry point that checks
  dependencies (22f9b7a)
mathieui's avatar
mathieui committed
195
- XHTML-IM base64 embedded images are now extracted by default (a9f642f)
196 197
- New open_all_bookmarks option to let the user choose what to do with
  bookmarks without autojoin (5a5d581)
mathieui's avatar
mathieui committed
198
- Store the server certificate fingerprint with SHA-512 (8d2408c)
199 200
- pipe_cmd plugin that allows simple remote control of poezio (4b0d9a2,
  dc46286)
mathieui's avatar
mathieui committed
201
- /link now uses xdg-open (ba32d74)
202 203
- Display information about the XMPP features the contact supports (a1f86720,
  2dafd6d5)
mathieui's avatar
mathieui committed
204 205
- make the data forms tab better (3858273, 7378ea9)
- Implement ad-hoc commands (bbc55fa)
206 207 208
- A change_title plugin changes the title of the terminal depending on the
  current tab. Also, poezio is now "poezio" and not "python3" (c1d19fa,
  48e59d3)
mathieui's avatar
mathieui committed
209
- The OTR plugin now implements SMP (96442e9)
mathieui's avatar
mathieui committed
210
- The OTR plugin now tries to interpret html by default (4e4ab56)
211 212
- The OTR plugin also has nicer and more informative messages (71ae29df,
  f782516e, d7bbf339c, a0c5f95, 25e91b0)
mathieui's avatar
mathieui committed
213 214 215 216 217
- The interface will adapt if the terminal is too small (0caf941)
- Implement XEP-0184 (message delivery receipts) (5999b71)
- Better timezone handling (02d9fd9)
- Better alias plugin, with permanent alias storage (e80a90)
- poezio_gpg_export script to generate a config for the gpg plugin (8ec5671)
218 219
- improvements to dynamic tabs, information about jid lock/unlock (f7294b2,
  5c9dd44, fba511e)
mathieui's avatar
mathieui committed
220 221 222
- irc plugin to use with biboumi (cf752c2)
- implementation of XEP-0012 - last activity (65c2473)
- errors.log contains a lot less stuff (695877b)
223 224
- tabs where the input is not empty will not be considered as "normal"
  (52e6334, fe072a8)
mathieui's avatar
mathieui committed
225 226 227 228
- /bookmark * now preserves the order of the tabs (38061a6)
- /list on big servers should be much faster (7b446d9)
- /load and /unload can handle several plugins at once (0847643)
- nicks are no longer highlighted if they are inside another word (f58dfe2)
229 230 231 232
- /invite will now use the “direct” invitations of XEP-0249 when supported
  (3221534)
- tabs where the other party is currently composing will have a particular
  state (a784216)
mathieui's avatar
mathieui committed
233
- Implementation of room destruction (1f0ff4f)
234 235
- running theming.py and keyboard.py will be nicer and not pollute the output
  afterwards (5012611, 1bd9f78)
mathieui's avatar
mathieui committed
236
- Bugfixes
mathieui's avatar
mathieui committed
237 238 239

* Poezio 0.8.1
- fix compilation with python 3.4
mathieui's avatar
mathieui committed
240

mathieui's avatar
mathieui committed
241
* Poezio 0.8
mathieui's avatar
mathieui committed
242 243 244 245
- Allow in-band password changing with /password
- Force c2s encryption until configured otherwise
- Allow users to set their cipher suites and ship one by default
- Autocorrect plugin that sends sed-like corrections
mathieui's avatar
mathieui committed
246 247 248 249 250
- /invite in a MUCTab now has the behavior one could expect
  (inviting a specific JID to this MUC)
- Themes and plugins are now loaded using a set of paths instead
  of only a specific directory.
- The OTR plugin has been completly rewritten
mathieui's avatar
mathieui committed
251 252
- The completion can now complete the current argument in the input,
  instead of only the last one.
louiz’'s avatar
louiz’ committed
253 254
- Poezio now periodically pings the server to detect connection loss
- Improve the roster and the input (^R search, weechat-like
mathieui's avatar
mathieui committed
255 256 257 258 259 260 261
  behaviour with long lines)
- Add a way to send text with multiple styles at the
  same time.
- Background colors in themes are now fully supported (it
  wasn’t for information text and nick colors, mostly)
- The logs now use the mcabber format in order to improve tool
  reuse (plus, our old log format wasn’t parsable).
mathieui's avatar
mathieui committed
262
- The documentation now uses Sphinx/reST instead of AsciiDoc
mathieui's avatar
mathieui committed
263
- Add User Tune/Nickname/Mood/Activity/Gaming support
264 265 266 267
- More theming options
- Add xml:lang support
- Move to upstream sleekxmpp
- Add support for XEP-0296 (best practices for resource locking)
mathieui's avatar
mathieui committed
268
- Move the “config reload” signal to SIGUSR1 instead of SIGHUP
269 270 271
- Add a /disconnect command
- New style and API for /help
- Add a visual indicator of s2s errors in the roster
272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292
- Add an option (show_timestamps) to show message timestamps.
- Add an option (hide_user_list) to hide the user list in MUCs.
- Add a "reverse" theme option for highlight nicks that displays
  the nick in reverse mode on highlight messages.
- Use get_wch() if available (introduced in python3.3) instead of our custom
  way to read unicode input.
- Add an option to preload last logs into the conversation when opening a new tab.
- Introduce support for XEP 308, Last message correction
  (http://xmpp.org/extensions/xep-0308.html).
- Rewrite the Executor class to make remote execution more reliable, and
  command easier to write (without a lot of escaping to do).
- Increase roster speed a lot.
- Add option to sort the roster more precisely.
- Add an option to avoid gap in the tab numbering when closing a tab.
- Add a /move_tab command, to move tabs.
- Add simple communication blocking support
  (http://xmpp.org/extensions/xep-0191.html).
- Add last activity support (http://xmpp.org/extensions/xep-0012.html).
- Add a /self command.
- Add a /runkey command.
- Support underlined text in the input with C-c u.
293 294
- Add support for /set <option> toggle, which toggles the current value, if
  it’s a bool.
mathieui's avatar
mathieui committed
295 296 297
- Add a couple of (useless) funny plugins.
- New display of message errors/headlines
- bugfixes
mathieui's avatar
mathieui committed
298 299 300 301 302

* Poezio 0.7.5.1 & 2 - Summer 2012
- Fix tracebacks caused by a change in Sleekxmpp

* Poezio 0.7.5 - 25 May 2012
303
- Plugin system
mathieui's avatar
mathieui committed
304 305 306 307 308 309 310 311 312 313 314
- Server-side bookmarks
- New keyboard shortcuts tuning options
- New keyboard shortcuts
- Attention support
- Invitation support
- Improved contact management
- New tab list
- Certificate check (TOFU model)
- New commands for sending stanzas manually
- bugfixes

louiz’'s avatar
louiz’ committed
315

louiz’'s avatar
louiz’ committed
316
* Poezio 0.7.2 - 08 Nov 2011
louiz’'s avatar
louiz’ committed
317 318
- Huge speed improvements in both memory usage, text
  refresh speed and interface resize.
louiz’'s avatar
louiz’ committed
319 320
- Chatstate notifications (in private AND in MUCs)
- /message command to talk to any JID
louiz’'s avatar
louiz’ committed
321
- /version command to get the software version of an entity
louiz’'s avatar
louiz’ committed
322
- /bind command, and keys can be bound in the config file
louiz’'s avatar
louiz’ committed
323
- Multiline edition
louiz’'s avatar
louiz’ committed
324 325 326 327 328 329 330 331
- xhtml-im messages can be sent and received
- 256 colors support
- themes are easier to create and load. They can use
  up to 256 colors
- completion now works not only at the end of the input
- /affiliation and /role commands to administrate MUCs
- /export command to export your roster in a file
- data forms support (only for room configuration at the moment)
louiz’'s avatar
louiz’ committed
332
- documentation is now written in asciidoc format
louiz’'s avatar
louiz’ committed
333
- a *lot* of bugfixes
louiz’'s avatar
louiz’ committed
334

louiz’'s avatar
louiz’ committed
335

louiz’'s avatar
louiz’ committed
336
* Poezio 0.7.1 - 2 Feb 2011
louiz’'s avatar
louiz’ committed
337 338 339 340
- /status command to globally change the status
- /win command now accepts part of tab name as argument
- bugfixes

louiz’'s avatar
louiz’ committed
341

louiz’'s avatar
louiz’ committed
342
* Poezio 0.7 - 14 jan 2011
343
Codename ”Koshie & Mathieui”
louiz’'s avatar
Fix //  
louiz’ committed
344
- Library changed from xmpppy to SleekXMPP
345
- Python 3 only
346 347 348
- Introduce the roster
- One to one conversations
- Roster search
louiz’'s avatar
Fix //  
louiz’ committed
349
- Add/remove/accept/deny contact in the roster
350 351
- Resizable mini-buffer displaying various informations
- All colors can be changed with a theme file
352
- Command auto-completion
353
- /say and // commands
354 355
- /recolor command, changing the nick's colors in a MUC
- /list command lets the user browse the MUCs on a server
356 357 358 359 360
- Warn user about publicly logged rooms
- Possibility to limit the number of history messages received from MUC
- auto-rejoin when kicked from a MUC
- The number of lines available to scroll down is displayed
- Possibility to use a modified nickname automatically when a nick is reserved
361
- A line separates the alread-read messages from the new messages
362
- Information messages are more colored
363
- Man page added
364 365
- bugfixes

366

367
* Poezio 0.6.2 - 21 Jul 2010
368 369 370 371
- Lines are now broken between words and not in the middle of them
- /unquery command
- default nickname is now $USER
- Server on /join command can be omitted
372
- /query command can now take a message in parameters
373
- logs are now save in $XDG_DATA_HOME and this can be configured
374
- Available users now have a greater priority on nickname completion
375 376 377 378 379 380 381
- utf-8 characters (from the keyboard) are now completely supported
- Many new keyboard shortcuts (move the cursor, edit the line, switch tabs...)
- DESTDIR support in Makefile is fixed
- Completion on recently said words
- /join command now takes the current server if not specified in the parameters
- Many Bugfixes

382

383 384 385
* Poezio 0.6.1 - 13 Jun 2010
- Enable tracebacks

386

387
* Poezio 0.6 - 13 Jun 2010
388
- Private messages are handled
389 390 391 392 393 394 395 396 397 398 399 400 401
- Muc error messages are displayed
- Nickname auto-completion
- Users status are displayed in the MUC user-list
- Non-anonymous connection (registered nickname can now be used)
- An avatar can be set
- A minimal Vcard can be set
- Proxies are handled
- Status changes can be hidden if the user didn't talk for a long time
- A line displays informations about rooms we are in (new messages, hl, etc)
- Highlights are handled (we can specify a list of words)
- Various new commands (topic, kick, set, win)
- Password-protected MUCs are handled
- The dates of room history are handled
402 403
- The way the text is displayed on the screen has been rewritten, this fixes
  the blink and the slowness-over-ssh problems.
404 405 406 407
- User lists are ordered
- Messages can be logged in files
- Status changes displays only what has really changed
- Users can be ignored (/ignore, /unignore)
408 409
- Various Bugfixes

410

411
* Poezio 0.5.1 - 2 Feb 2010
412 413
- Little bugfix release

414

415 416
* Poezio 0.5 - 1 Feb 2010
- Initial release