CHANGELOG 15.7 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.
mathieui's avatar
mathieui committed
13

mathieui's avatar
mathieui committed
14 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
* 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
98

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

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

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

* Poezio 0.9
mathieui's avatar
mathieui committed
154 155

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

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

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

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

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

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

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

louiz’'s avatar
louiz’ committed
320

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

louiz’'s avatar
louiz’ committed
326

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

351

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

367

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

371

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

395

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

399

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