0.10.0 (2021-01-09) ===== Six months and 270 commits after 0.9.5 we are happy to release 0.10.0. 10 people contributed code to it: @wstrm, @DebXWoody, @pasis, @niacat, @kaffeekanne, @timgates42, @spth, @licaon-kter, @misaflo and @jubalh. Thanks a lot to our sponsors: @mdosch, @wstrm, @huhndev and one person who wants to stay anonymous. If you want to support us too: https://profanity-im.github.io/donate.html This release depends on: - libstrophe/libmesode >= 0.10.0. - glib >= 2.62.0 - sqlite >= 3.22.0 - gtk3 >= 3.24 or gtk2 >= 2.24.10 The goal for this release was mostly internal cleanup, like announced in the 0.10.0 roadmap: https://lists.notraces.net/pipermail/profanity/2020/000018.html There was also some undercover work done for MAM (XEP-0313). Changes: - Code cleanup - Several memory leaks fixed (b45384, #805, #1416, #1427) - Handle headline stanza (#1366) - By default log only WARN not INFO (#1353) - Fix OMEMO: check for current item (#1384) - Fix request OMEMO device id (#1332) - Add experimental OX (XEP-0373, XEP-0374) support (#1331) - Add clang format file for uniform coding style (#1396) - Add contributing guidelines (#1397) - Dont highlight console once all messages have been read (#1399) - New setting: Only highlight in console upon MUC mention (#1371) `/console muc mention` - Remove `/tiny` command (#1370) - Fix `/lastactivity` behaviour (#1411) - Fix `/correct` quotation marks usage (#1404) - Parse Stable Stanza IDs (XEP-0359) (#1207) (#660) - Only insert new messages in database (c9b154) (#660) - Support both gtk2 and gtk3 (05d19c) - Update gruvbox theme (#1421) - Add NetBSD support (#1424) - Fix uninitialized field in bookmarks (#1432) - Don't link functional tests against tcl (da513a) - Fix date format for MAM requests (15f45f) - Print error stanzas (#1435) - Add man pages for each profanity command (#1444) - Fix chatlogs for outgoing carbons (#1439) - Add OMEMO media sharing support (#1375) See `/help sendfile` `/help executable` - Expand trackbar to whole line (#1448) - Set default color for trackbar (#1453) - Log incoming carbons (#1446) - Use whole path as logfile when defined via -f (#1442) `profanity -f ~/mylog` - Fix color for outgoing messages when no receipts are enabled (#1441) - Set input window size to max window size (#1458) - For details see: https://github.com/profanity-im/profanity/milestone/20 0.9.5 (2020-07-01) ===== Changes: - Fix segfault in `/theme properties` due to uninitialized `titlebar.scrollable` (#1380) 0.9.4 (2020-06-24) ===== Changes: - Fix NULL terminated list (#1367) - Add missing string.h (#1372) (@pasis) - Fix gcc warnings for cygwin (#1373) (@pasis) 0.9.3 (2020-06-19) ===== Changes: - Fix expansion in eval_password (#1364) 0.9.2 (2020-06-13) ===== Changes: - Dont manipulate pointer from getenv (#1357) - Fix reading/writing linked files (#1362) - Use gnu99 C standard (#1357) 0.9.1 (2020-06-11) ===== This release depends on libstrophe 0.9.3 only if you want to have legacy authentication. Otherwise you can still use libstrophe 0.9.2. Changes: - Make legacy auth optional (#1360) (@pasis) 0.9.0 (2020-06-09) ===== Four months and 350 commits after 0.8.1 we are happy to release 0.9.0. 7 people contributed code to it: @pasis, @wstrm, @DebXWoody, @toogley, @pmaziere, @moppman and @jubalh. Thanks a lot to our sponsors: @mdosch and @wstrm! If you want to support us too: https://profanity-im.github.io/donate.html This release depends on libstrophe >= 0.9.3, sqlite >= 3.22.0 and glib >= 2.56.0. Changes: - Support for XEP-0308: Last Message Correction (#805) See `/correction` and `/correct`. - Code cleanup of UI and Message functions - Always send delivery receipts if they are enabled (#1268) - By default don't allow sending unencrypted files in an encrypted chat session (#1270) (@moppman and @jubalh) See `/omemo|otr|pgp sendfile`. - Add CI for OpenBSD via sr.ht (@wstrm) - OMEMO: switch to 12 byte IV for sending (#1272) - Allow UTF-8 symbols as OMEMO/OTR/PGP indicator char (#1264) - Make color of the trackbar configurable Use `main.trackbar` in themes. - Allow setting custom log file `profanity -f TEST` will log to `~/.local/share/profanity/logs/TEST.log`. - Send proper OS names for OpenBSD and NetBSD if `/os` is enabled - Fix plenty memory leaks (@pasis and @jubalh) - XEP-0084: Add option to open avatars directly (#1281) `/avatar odin@valhalla.org` became `/avatar get odin@valhalla.org` New is: `/executable avatar feh` `/avatar open odin@valhalla.org` xdg-open is used by default. So it will take your default application. - Enable popular features by default. For a nicer out of the box experience we enable: * allow message correction * sending receipts * enabling carbons * type/chat states - Add slashguard feature to prevent sending commands with typos Should protect against `q/uit` or ` /quit`. See `/slashguard`. - Optionally display both MUC name and MUC JID in titlebar (#1284) `/titlebar use name|jid` -> `/titlebar show|hide name|jid`. - Add option to define a theme at startup (#1286) `/profanity -t bios` - Add setting to not colorize own nick if XEP-0392 is enabled (#1288) `/color own on|off`. - Add new theme: jubalian - Fix docker related CI tests (#1294) - Fix OMEMO autocompletion (75a43f, df23c3) - Modify our README - Store logs in SQLite backend (#1282) - Request OMEMO device list only for non anon MUCs (#1315) (@DebXWoody) - Don't display MUC history in one uniform colour, instead colour messages like regular ones (#1261) - Fix autocompletion for `/software` in regular chat windows (#1337) - XEP-0092: Make it possible to ask servers for their version (#1338) - Add possibility to easily open URLs (#1340, #1348) `/executable urlopen firefox` `/urlopen ` - Display hint when window is scrolled (#1289) Theme via `titlebar.scrolled` - Add option to hide windows with no new messages in statusbar (#1285) `/statusbar show|hide read` - Support bookmark names (#697) - Preserve Gajims minimize flag in bookmarks (#1326) - Don't show resource in titlebar in narrow windows if it is too long (#715) - Improve autoping (#1333, #1315) (@DebXWoody) - Fix titlebar status display when using PGP (#1327) (@DebXWoody) - OMEMO: Only request "current" item (#1329) (@DebXWoody) - Add feature to ignore the autojoin flag for bookmarks (#1115) Helps users who want to autojoin MUCs with most clients but not with all. `/bookmark ignore` - Fix edge case where contacts get displayed as offline when they are online (3d7a31) - Add option for legacy authentication (#1236) (@pasis) `/connect [auth default|legacy]` `/account set auth default|legacy` - All issues: https://github.com/profanity-im/profanity/milestone/19 0.8.1 (2020-02-07) ===== This is a bugfix release. If you like Profanity, please consider donating: https://profanity-im.github.io/donate.html Changes: - Fix ending ncurses colors in rosterwin - Fix segfault when consistent nick colors where never in config (#1236) - Improve `/clear` behaviour to also clear the buffer. So a redraw doesn't bring the content back. - Use unique IDs in stanzas when requesting avatars 0.8.0 (2020-02-03) ===== On 2012-02-02 the first commit to Profanity was done by @boothj5. 8 years later, and 5 months after 0.7.0, we are happy to announce Profanity 0.8.0. This release has 315 commits since the last release. 11 people contributed code to it: @paulfariello, @svensp, @aaptel, @aszlig, @mdosch, @pasis, @mzagozen, @quite, @weiss, @Misaflo and @jubalh. Changes: - OMEMO fingerprint autocompletion now considers only the contact in question (@paulfariello) (#1068) - Save and display oldest timestamp from delay tags (#1254) - Change theme handling (#1077) `/theme load themename` not loads only the colours of a theme. So the users preferences don't get overwritten `/theme full-load themename` loads the whole theme including preferences (like `omemo.char`) - Add gruvbox theme (@Misaflo) (#1259) - XEP-0092: Include OS name in `/software` answer. See `/os on|off` - Add option to notify about version request via XEP-0092 and XEP-0232 via `adv.notify.discoversion` setting in configuration file. - Add option to display MUC name or JID in titlebar * `/titlebar use [name|jid]`. - Add `/roster room use` command to decide whether to display the MUC name or JID in the roster * `/roster room use name` to use the name of the MUC in the roster list. * `/roster room use jid` to use the jid of the MUC in the roster list. - Fix decryption failure for messages sent from Converse.js (@paulfariello) (#1253) - Fix crash when OMEMO key is misconfigured (@paulfariello) (#1239) - Use OMEMO for offline MUC members (@paulfariello) (#1242) - Fix OMEMO 1on1 chats with psi+ (@svensp) (#1247) - Save occupants and roster chars (#1244) - Add support for downloading user avatars via XEP-0084 (#1240) See `/avatar` - Add last read position marker trackbar (#1238) - Dont print error message if a valid setting function is called (#1237) When printing configuration we often use the same command as setting but without any argument. So far ths displayed "Invalid usage". - Add support for XEP-0392 consistent color generation for nicks (@aaptel and @jubalh) (#1191) See `/color`, `/occupants color`, `/roster color` - Call ncurses resize function before move function (#1235) - Fix error when joining IRC via biboumi (#1230) - Fix stanza_get_child_by_name_and_from() strcmp (#1227) - Fix showing own messages twice in ejabberd mucs (#1223) - Allow setting of status message (which actually never worked before) (b846c49) `/status set online "This is my text"` `/status set away bye` `/status set away` - Add option to store current line in history (irssi down arrow) (#200) - Standardize commands (#1116): * `/tls show on|of -> `/titlebar show|hide tls` * `/encwarn on|off` -> `/titlebar show|hide encwarn` * `/titlebar show|hide resource` additionally to `/resource titlebar on` * `/titlebar show|hide presence` additionally to `/presence titlebar on` * `/invite ` -> `/invite send * `/invites` -> `/invite list` * `/decline` -> `/invite decline` * `/online`, `/away`, `/dnd`, `/chat`, `/xa` -> `/status set online` etc. * `/status` -> `/status get` * `/chlog on` -> `/logging chat on` (#1224) * `/grlog on` -> `/logging group on` (#1224) * `/group` -> `/roster group` (#1229) - Check omemo stanza names when iterating nodes (@aszlig) (#1217) - Add clipboard feature. See `/paste` (#1216) - Log MUC PM messages (#1214) - Improve forest theme - Change default text colors to default instead of white (@mdosch) (#1213) (#535) - Fix date display in chat history (#922) - Log incoming MUC messages if origin-id sais they dont come from us (#1201) - Support XEP-0359: Unique and Stable Stanza IDs (#1207) To help us identify which MUC messages were sent by us. - Fix double _XOPEN_SOURCE definition (@pasis) (#1206) - Highlight unread messages with a different color in /wins (#895) New theming option `cmd.wins.unread` - Improve MUC 1:1 logging (#1184) - Fix user messages double logged in MUC logs (#1201) - Fix 26 causes for memory leaks - Add `/clear` autocompletion and improve help (#855) - Allow multiple instances to write to account config via `/reload` command that reloads the config file (#627) - Log message carbons to log file (#1181) - Include PYTHON_EXTRA_LIBS in libtool config (@mzagozen) (#1200) - Document how to block users in MUCS (#618) - Keyboard switch to select the next window with unread messages (#1114) (alt + a) - Keyboard switches (for moving to 20 windows instead of 10 (#1114) (alt + 1234567890qwertyuio) - Fix MUC history detection with older Prosody versions (#1190) See https://issues.prosody.im/1416 - `statusbar.current` is a new theming option for currently selected tab (@quite) (#1195) - Code cleanup - Make /info more user friendly (#1194) - Add solarized theme (#1175, #1198, #1199) (@mdosch) - Set nonblocking mode for stderr (@pasis) (#1192) - Log alleged roster push (6cf06dc) - Allow colorization of history messages (#1170) See `main.text.history` theming option - Fix crash if source jid doesn't contain the node part (@pasis) (#1153) - Add support for 256 colors (@aaptel and @jubalh) (#1177 and many commits) We use the Xterm color names. See https://jonasjacek.github.io/colors - Don't render (all) delayed messages as MUC history (@weiss) (#1173) - Add possibility to specify alternative config file (10ca3e) Use `profanity -c ~/path/to/other/config` - Don't print subscribed message if contact is already in roster (#1166) - Only save preferences when new `/save` command is issued (#1146) 0.7.1 (2019-09-24) ===== - Fix copyright/info displayed email - Fix typos in OMEMO logs - Fix crash when jid has no node part (#1153, #1193) 0.7.0 (2019-07-31) ===== - Fix plugin unload return code if just one plugin fails (#995) - Fix several typos - Fix some display indentation issues (#1073) - Fail plugin unload if the plugin doesnt exist - Improve encrypted message stub header by mentioning the encryption method - Fix GPG encryption (#997) - Redraw sceen after entry of PGP key (#906) - Fix support for case-sensitive account names (#725) - Fix /me display when highlighting user in MUCs (#950) - Fix `make dist` (0f0659a) - Fix use after free bug (#1044) - Fix segfault on connect with default account (#1046) - Implement OMEMO support (#1039, #658, #1070) - Add random string at the end of the default resource (#1053) - Fix handling of messages without ID in MUC (#1061) - Add library versioning to libprofanity (#973) - Add more customization: occupants indent (/occupants) (#690, #1072) - Add more customization: occupants header char (/occupants) (#690, #1074) - Add more customization: occupants wrap (/occupants) (#690, 125ca2f) - Add more customization: occupants char (/occupants) (#690, #1084) - Fix formatting for privileges on (a666f0d) - Fix usage of statusbar number in theme (#1078) - Fix Debian 32bit tests (#1091) - Fix unit tests (#1092) - Fix infinite loop on connection loss (#1103) - Don't clear saved account data in session_disconnect (#1106) - Cancel autoping timer on disconnect or connection loss (#1105) - Fix SIGABRT on connection loss (#1083) - Only print room history for new messages upon reconnect (#704, #1110) - Check if valid account before setting autoconnect (#1112) - Improve plugin load error message, in case built without support (cc697de) - Iterate up to 100 logfiles (#519) - Fix rejoining of MUCs upon reconnect (#1120) - Add option to set all window related time formats (#632, #1120) - Always check for directory changes with sendfile auto completion (#1154) - Fix several memory leaks (#1130, + plenty commits) - For details see https://github.com/profanity-im/profanity/milestone/17 0.6.0 (2019-02-18) ===== - Allow moving vertical window positions (/titlebar, /mainwin, /statusbar, /inputwin) - Allow loading/unloading all plugins (/plugins) - Allow installing plugins from directory (/plugins) - Allow uninstallation of plugins (/plugins uninstall) - Allow update of plugins (/plugins update) - Theme option for status bar time (statusbar.time) - Case/accent insensitive autocompletion - Shift tab to select previous autocomplete suggestion - Allow searching help (/help search_all|search_any) - Support for Legacy SSL - Allow caching of rooms (/rooms cache) - Add autocompletion for servername when listing rooms (/rooms service) - Allow showing/disabling tab number in statusbar (/statusbar show) - Adjust configure for OpenBSD - Use UUIDs instead of counter for messages - Support basic ad-hoc c