CHANGELOG 15.8 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.
mathieui's avatar
mathieui committed
14

mathieui's avatar
mathieui committed
15 16 17 18 19 20 21 22 23 24 25 26 27 28 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
* 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
99

mathieui's avatar
mathieui committed
100
* Poezio 0.12
mathieui's avatar
mathieui committed
101

102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124
- 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
125 126 127 128 129 130 131 132 133
* 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
134
* Poezio 0.10
mathieui's avatar
mathieui committed
135

mathieui's avatar
mathieui committed
136 137
- A lot of cleanup and refactor in order to use cython on the codebase
  more easily.
mathieui's avatar
mathieui committed
138
- A new poezio_logs script to make logfiles more human-readable
mathieui's avatar
mathieui committed
139
- Substantial performance improvements
mathieui's avatar
mathieui committed
140 141
- 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
142 143 144 145 146 147 148 149 150 151 152
- 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
153 154

* Poezio 0.9
mathieui's avatar
mathieui committed
155 156

- Use slixmpp instead of sleekxmpp, remove threads and locks
157 158
- Require python 3.4 for the input handling, event loop, xml parser,
  and ssl API
mathieui's avatar
mathieui committed
159 160

- Due to the slixmpp move, /reconnect now works (ecf22cb)
mathieui's avatar
mathieui committed
161 162 163
- 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
164
- Add a /closeall command with a plugin, to cleanup the open tabs (ed7fe69)
165 166 167 168
- 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
169
- Use a deterministic algorithm to set the nickname colors by default (2452706)
mathieui's avatar
mathieui committed
170
- The user’s JID is now shown in the roster (a0a00d5)
mathieui's avatar
mathieui committed
171 172
- The screen_detach plugin now also detects tmux (21d8a3e)
- The autocorrect plugin now supports regular expressions (067ad58)
173 174
- Improve the XML tab with coloration, better filters, and filter chaining
  (1cd0b4d)
mathieui's avatar
mathieui committed
175 176
- Allow the use of client X.509 certificates for authentication, and add
  /certs, /cert_{add,disable,revoke,fetch} commands (00396c1)
177 178 179 180
- 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
181
- XHTML-IM base64 embedded images are now extracted by default (a9f642f)
182 183
- New open_all_bookmarks option to let the user choose what to do with
  bookmarks without autojoin (5a5d581)
mathieui's avatar
mathieui committed
184
- Store the server certificate fingerprint with SHA-512 (8d2408c)
185 186
- pipe_cmd plugin that allows simple remote control of poezio (4b0d9a2,
  dc46286)
mathieui's avatar
mathieui committed
187
- /link now uses xdg-open (ba32d74)
188 189
- Display information about the XMPP features the contact supports (a1f86720,
  2dafd6d5)
mathieui's avatar
mathieui committed
190 191
- make the data forms tab better (3858273, 7378ea9)
- Implement ad-hoc commands (bbc55fa)
192 193 194
- 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
195
- The OTR plugin now implements SMP (96442e9)
mathieui's avatar
mathieui committed
196
- The OTR plugin now tries to interpret html by default (4e4ab56)
197 198
- The OTR plugin also has nicer and more informative messages (71ae29df,
  f782516e, d7bbf339c, a0c5f95, 25e91b0)
mathieui's avatar
mathieui committed
199 200 201 202 203
- 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)
204 205
- improvements to dynamic tabs, information about jid lock/unlock (f7294b2,
  5c9dd44, fba511e)
mathieui's avatar
mathieui committed
206 207 208
- irc plugin to use with biboumi (cf752c2)
- implementation of XEP-0012 - last activity (65c2473)
- errors.log contains a lot less stuff (695877b)
209 210
- tabs where the input is not empty will not be considered as "normal"
  (52e6334, fe072a8)
mathieui's avatar
mathieui committed
211 212 213 214
- /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)
215 216 217 218
- /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
219
- Implementation of room destruction (1f0ff4f)
220 221
- running theming.py and keyboard.py will be nicer and not pollute the output
  afterwards (5012611, 1bd9f78)
mathieui's avatar
mathieui committed
222
- Bugfixes
mathieui's avatar
mathieui committed
223 224 225

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

mathieui's avatar
mathieui committed
227
* Poezio 0.8
mathieui's avatar
mathieui committed
228 229 230 231
- 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
232 233 234 235 236
- /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
237 238
- The completion can now complete the current argument in the input,
  instead of only the last one.
louiz’'s avatar
louiz’ committed
239 240
- 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
241 242 243 244 245 246 247
  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
248
- The documentation now uses Sphinx/reST instead of AsciiDoc
mathieui's avatar
mathieui committed
249
- Add User Tune/Nickname/Mood/Activity/Gaming support
250 251 252 253
- 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
254
- Move the “config reload” signal to SIGUSR1 instead of SIGHUP
255 256 257
- Add a /disconnect command
- New style and API for /help
- Add a visual indicator of s2s errors in the roster
258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278
- 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.
279 280
- Add support for /set <option> toggle, which toggles the current value, if
  it’s a bool.
mathieui's avatar
mathieui committed
281 282 283
- Add a couple of (useless) funny plugins.
- New display of message errors/headlines
- bugfixes
mathieui's avatar
mathieui committed
284 285 286 287 288

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

* Poezio 0.7.5 - 25 May 2012
289
- Plugin system
mathieui's avatar
mathieui committed
290 291 292 293 294 295 296 297 298 299 300
- 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
301

louiz’'s avatar
louiz’ committed
302
* Poezio 0.7.2 - 08 Nov 2011
louiz’'s avatar
louiz’ committed
303 304
- Huge speed improvements in both memory usage, text
  refresh speed and interface resize.
louiz’'s avatar
louiz’ committed
305 306
- Chatstate notifications (in private AND in MUCs)
- /message command to talk to any JID
louiz’'s avatar
louiz’ committed
307
- /version command to get the software version of an entity
louiz’'s avatar
louiz’ committed
308
- /bind command, and keys can be bound in the config file
louiz’'s avatar
louiz’ committed
309
- Multiline edition
louiz’'s avatar
louiz’ committed
310 311 312 313 314 315 316 317
- 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
318
- documentation is now written in asciidoc format
louiz’'s avatar
louiz’ committed
319
- a *lot* of bugfixes
louiz’'s avatar
louiz’ committed
320

louiz’'s avatar
louiz’ committed
321

louiz’'s avatar
louiz’ committed
322
* Poezio 0.7.1 - 2 Feb 2011
louiz’'s avatar
louiz’ committed
323 324 325 326
- /status command to globally change the status
- /win command now accepts part of tab name as argument
- bugfixes

louiz’'s avatar
louiz’ committed
327

louiz’'s avatar
louiz’ committed
328
* Poezio 0.7 - 14 jan 2011
329
Codename ”Koshie & Mathieui”
louiz’'s avatar
Fix //  
louiz’ committed
330
- Library changed from xmpppy to SleekXMPP
331
- Python 3 only
332 333 334
- Introduce the roster
- One to one conversations
- Roster search
louiz’'s avatar
Fix //  
louiz’ committed
335
- Add/remove/accept/deny contact in the roster
336 337
- Resizable mini-buffer displaying various informations
- All colors can be changed with a theme file
338
- Command auto-completion
339
- /say and // commands
340 341
- /recolor command, changing the nick's colors in a MUC
- /list command lets the user browse the MUCs on a server
342 343 344 345 346
- 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
347
- A line separates the alread-read messages from the new messages
348
- Information messages are more colored
349
- Man page added
350 351
- bugfixes

352

353
* Poezio 0.6.2 - 21 Jul 2010
354 355 356 357
- 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
358
- /query command can now take a message in parameters
359
- logs are now save in $XDG_DATA_HOME and this can be configured
360
- Available users now have a greater priority on nickname completion
361 362 363 364 365 366 367
- 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

368

369 370 371
* Poezio 0.6.1 - 13 Jun 2010
- Enable tracebacks

372

373
* Poezio 0.6 - 13 Jun 2010
374
- Private messages are handled
375 376 377 378 379 380 381 382 383 384 385 386 387
- 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
388 389
- The way the text is displayed on the screen has been rewritten, this fixes
  the blink and the slowness-over-ssh problems.
390 391 392 393
- User lists are ordered
- Messages can be logged in files
- Status changes displays only what has really changed
- Users can be ignored (/ignore, /unignore)
394 395
- Various Bugfixes

396

397
* Poezio 0.5.1 - 2 Feb 2010
398 399
- Little bugfix release

400

401 402
* Poezio 0.5 - 1 Feb 2010
- Initial release