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

Link Mauve's avatar
Link Mauve committed
15 16 17 18
# Forgotten additions

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

mathieui's avatar
mathieui committed
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 99 100 101 102
* 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
103

mathieui's avatar
mathieui committed
104
* Poezio 0.12
mathieui's avatar
mathieui committed
105

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

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

* Poezio 0.9
mathieui's avatar
mathieui committed
159 160

- Use slixmpp instead of sleekxmpp, remove threads and locks
161 162
- Require python 3.4 for the input handling, event loop, xml parser,
  and ssl API
mathieui's avatar
mathieui committed
163 164

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

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

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

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

* Poezio 0.7.5 - 25 May 2012
293
- Plugin system
mathieui's avatar
mathieui committed
294 295 296 297 298 299 300 301 302 303 304
- 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
305

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

louiz’'s avatar
louiz’ committed
325

louiz’'s avatar
louiz’ committed
326
* Poezio 0.7.1 - 2 Feb 2011
louiz’'s avatar
louiz’ committed
327 328 329 330
- /status command to globally change the status
- /win command now accepts part of tab name as argument
- bugfixes

louiz’'s avatar
louiz’ committed
331

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

356

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

372

373 374 375
* Poezio 0.6.1 - 13 Jun 2010
- Enable tracebacks

376

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

400

401
* Poezio 0.5.1 - 2 Feb 2010
402 403
- Little bugfix release

404

405 406
* Poezio 0.5 - 1 Feb 2010
- Initial release