Tue, 31 Dec 2024 19:52:04 -0600
Prepare for the 2.90.0 release
Testing Done:
Ran `meson dist`
Bugs closed: PIDGIN-18007
Reviewed at https://reviews.imfreedom.org/r/3705/
| ChangeLog | file | annotate | diff | comparison | revisions | |
| meson.build | file | annotate | diff | comparison | revisions |
--- a/ChangeLog Tue Dec 31 19:47:01 2024 -0600 +++ b/ChangeLog Tue Dec 31 19:52:04 2024 -0600 @@ -1,89 +1,329 @@ Pidgin: The Universal Chat Client -version 3.0.0 (??/??/????): +version 2.90.0 (12/31/2024): General: - * Various core components of libpurple are now GObjects (Ankit Vani). - * Ciphers are now built from the libpurple directory. - * Doxygen has been replaced by gtk-doc for generating documentation (Ankit - Vani). - * Added dependency GPlugin, which is now required to build libpurple with - plugins support. - * Added dependency gobject-introspection, which is now required to enable - non-native plugin support. - * Removed flags for manually configuring GnuTLS and NSS. They are now only - recognized through pkg-config. (Michael McConville) - * Fixed an issue where transient startup statuses could be deleted - (Jakub Adam) (#16762) - * Moved config files to XDG Directories. (Arkadiy Illarionov) (#10029) + * Internationalization is just now getting started. Everything is marked + for translation, but we haven't gottten anything translated yet. + * The entire code base has been modernized with the hope of being more + friendly to everyone but especially new contributors. + * Build system has been migrated to meson. + * Many things that were implemented internally have now been offloaded to + new and existing external libraries. + * We have a new guide for contributors at + https://docs.imfreedom.org/contributors-guide/. + * We're not ever rewriting any of this in Rust. libpurple: - * Specify a different set of encryption ciphers for TLS connections when - using GnuTLS. (elrond, belmyst, and Mark Doliner) (#8061) - * Don't allow SSL 3.0 (only TLS 1.0 and newer) for TLS connections when - using either GnuTLS or NSS. - * Install a purple-url-handler file to handle protocol schemes on Linux. + * Removed AIM themed nomenclature from the API. Buddy is now Contact, + Contact is now Person, Instant Message is now Direct Message, and Chat + is now Channel. + * GPlugin has been adopted to handle plugins. This means plugins will have + to be ported or rewritten. + * Every API has been completely overhauled and is now almost entirely + GObject based, which means the API is now introspectable. + * Most Windows-specific code has been removed as it is now redundant. + * Finally adopted the XDG base directory specification so the .purple + directory is now XDG_CONFIG_HOME/<name of user interface>. + * Added support for storing passwords with libsecret, KWallet, wincred + (Windows), and keychain access (macOS). + * Removed internal support for storing passwords (plain text). + * Started using SQLite for storing complex data like conversation history. + * Preferences have been moved to GSettings. + * Documentation is now created via gi-docgen and available at + https://docs.imfreedom.org/purple3/. + + Pidgin: + * Migrated to GTK 4 and Adwaita. + * There has not yet to be any serious attempt to polish the user interface. + * Accessibility has been held off as we work through exactly how the user + interface is going to end up. + * Most of the user interface is now defined in GTK Builder XML. + * Combined the contact list and conversation windows into a single window. + * Many features are not yet implemented. + * Most Windows-specific code has been removed as it is now redundant. + * Documentation is now created via gi-docgen and available at + https://docs.imfreedom.org/pidgin3/. + + Finch: + * Finch has been removed, for now. + * It may make a comeback when Pidgin gets more stable and we have more + time. + + Protocols: + * Protocols have been moved from the libpurple directory to a new toplevel + protocols directory. + * All existing protocols have been removed and new implementations are in + the works. + + Bonjour: + * A from scratch implementation based on Xeme, our new XMPP library. + * This is just a stub for now, and is not yet functional. + + Demo: + * A new protocol plugin for helping demonstrate Pidgin 3 features. + * Also used for testing and creating screenshots. + + IRCv3: + * A new IRC protocol has been implemented using Ibis, our new IRCv3 + library. + * It's quite functional but missing a few things yet. + * SASL is implemented via HASL, our new SASL library. + * Added support for the following specifications: + * account-tag + * capability negotiation + * message ids + * message tags + * sasl-3.1 + * server-time + * standard replies + * typing client-only tag + + XMPP: + * A from scratch implementation based on Xeme, our new XMPP library. + * This is just a stub for now, is not yet functional. + * SASL is implemented via HASL, our new SASL library. + +version 2.14.13 (02/23/2024): + * Fix compile warning (Wcast-function-type). (RR 2225) (Markus Fischer) + * Fix memory leak originating in purple_prefs_connect_callback. (RR 2226) + (Markus Fisher) + * Don't use the Real name as a candidate for the SASL username in IRC. + (RR 2535) (Gary Kramlich) + * Don't link with libgadu unnecessarily. (RR 2684) (Elliott Sales de + Andrade) + * Make collapsed groups searchable in the buddy list. (PIDGIN-7877) + (RR 1494) (Belgin Știrbu) + * Fix incompatible type conversion errors. (PIDGIN-17850) (RR 2944) + (Jaroslav Škarvada, Elliott Sales de Andrade) + * Stop removing -Wall from CFLAGS. (PIDGIN-16593) (RR 2946) (Elliott Sales + de Andrade) + * Updated the spell checking dictionaries on Windows. (Gary Kramlich) + * Resolved the crash on exit under Windows by reverting to the old + toolchain. (PIDGIN-17710) (Gary Kramlich) + +version 2.14.12 (12/31/2022): + * Remove a string from the Romanian translation that's breaks the creation + of the Windows installer. (RR 2157) (Gary Kramlich) + +version 2.14.11 (12/31/2022): + * Add Markus "ivanhoe" Fischer to the Crazy Patch Writers! Congrats Markus! + (RR 1952) (Gary Kramlich) + * Fix a crash when closing a group chat with spellchk plugin enabled. (RR + 1951) (Markus Fischer) + * Fix network interface detection on Windows to fix broken file transfers. + (PIDGIN-17123, PIDGIN-17293, PIDGIN-17516, PIDGIN-17704) (RR 2018) (Gary + Kramlich) + * Update the about box to point people to Discourse instead of the mailing + lists. (RR 2154) (Gary Kramlich) + +version 2.14.10 (06/02/2022): + General: + * Audit and correct the COPYRIGHT file. (RR 1425) (Richard Laager) + * Fix a spelling error in a debug message for proxies. (RR 1426) (Richard + Laager) + * Install some emojis already in the theme but not being installed. + (RR 1428) (Richard Laager) + * Drop the QQ smileys as we don't ship QQ anymore. (PIDGIN-14385) (RR 1429) + (Richard Laager) + * Modernize the desktop file. (RR 1433) (Richard Laager) + * Modernize the appdata file. (RR 1431) (Richard Laager) + * Make privacy settings persist. (PIDGIN-17137) (RR 1463) (Belgin Știrbu) + + Pidgin: + * Fix a use after free that was introduced in 2.14.9. (RR 1488) (ivanhoe) + + IRC: + * Fix a crash if the server sends a short form JOIN message. (PIDGIN-17375) + (RR 1484) (Belgin Știrbu) + + XMPP: + * Fix a regression from 2.14.9 where XMPP accounts state would get lost + after failing to connect. (PIDGIN-17621) (RR 1455) (Belgin Știrbu) + * Fix a crash when requesting your own info in an XMPP conference. (RR 1465) + (Belgin Știrbu) + * Fix hang when completing a file transfer over XMPP. (RR 1466) (Belgin + Știrbu) + * Fix updating custom smileys. (PIDGIN-17153) (RR 1477) (Belgin Știrbu) + * Fix unblocking users. (PIDGIN-16414) (RR 1479) (Belgin Știrbu) + * Fix a crash when cancelling a file transfer. (PIDGIN-17189) (RR 1485) + (Belgin Știrbu) + +version 2.14.9 (04/28/2022): + Security: + * Remove _xmppconnect support. (RR 1357) (CVE-2022-26491) (Gary Kramlich) + + libpurple: + * Fix a GLib CRITICAL message with typing time outs. (RR 1123) (Mohammed + Sadiq) + * Fix an issue where the unit tests for purple_str_to_time would fail. + (GENTOO-819774) (RR 1238) (Gary Kramlich) Pidgin: - * Support building with the GTK+ 3.x toolkit. When configuring the - build, use --with-gtk=<2|3> to determine which toolkit to use. Using - either 2 or 3 will attempt to build with specifically 2.x or 3.x - support. The default is 'auto', which will first look for 3.x - development headers and then 2.x development headers. - * Add email notification in the docklet area. (Alexei) (#3571) - * Add a pref to select the type messages in conversation that triggers - the docklet notification. (Momchil) (#12598) - * Complete support for receiving a limited amount of history when - joining a room. (Kha) (#15458) - * Fix gevolution plugin to compile with e-d-s >= 3.6, older versions are - not supported anymore. (Ed Catmur) (#15353) - * Removed command line argument --multiple in *nix in favor of using - GApplication's uniqueness checking directly. The new way to allow - multiple Pidgin instances is to pass --gapplication-app-id with an - alternate, valid app id. Be careful not to use the same configuration - directory as the primary instance. - * Replaced purple-url-handler script with the ability to call Pidgin - itself for URI handling. + * Fix a memory leak in pidgin_conversations_set_tab_colors. (RR 1244) + (ivanhoe) + * Fixed the majority of the infinite resizing issues in the input box. + (PIDGIN-16753, PIDGIN-16999, PIDGIN-17287, PIDGIN-17413, PIDGIN-17430, + PIDGIN-17568, PIDGIN-17602) (RR 1342) (Belgin Știrbu) + * Add transient-buddy back which is used to show some context menus and + other things. (PIDGIN-17523) (RR 1381) (Belgin Știrbu) + + Windows: + * Fix the download of dictionaries in the Windows installer. (PIDGIN-14618, + PIDGIN-15648, PIDGIN-15540, PIDGIN-14612, PIDGIN-14893) (RR 1303) (Gary + Kramlich) + + Translations: + * Fix a typo in the German translations. (PIDGIN-17575) (RR 1242) (ivanhoe) + * Synced all of the translations with Transifex. + + IRC: + * Fix IRC file transfers on Windows. (PIDGIN-17175) (RR 1382) (Belgin + Știrbu) + * Fix file transfers failing at 99% on IRC. (PIDGIN-15893) (RR 1385) (Belgin + Știrbu) + * Default realname and ident name in IRC to the username (nickname) of the + account. (PIDGIN-17610) (RR 1386) (Belgin Știrbu) + * Add an advanced account option to IRC accounts for explicitly setting the + SASL login name. (PIDGIN-15451) (RR 1388) (Belgin Știrbu) + * Added a rate limiter that should make it impossible to excess flood. + (RR 1391) (Gary Kramlich) + + SIMPLE: + * Fix an issue with the CSeq numbers in SIMPLE. (PIDGIN-9675) (RR 1379) + (dohmniq) + + XMPP: + * Fix XMPP attention messages being sent to incorrect JIDs. (PIDGIN-14714) + (RR 1387) (itsnotabigtruck, Belgin Știrbu) + +version 2.14.8 (10/14/2021): + libpurple: + * Fix a regression in purple_str_to_time. (PIDGIN-17552) (RR 931) (Gary + Kramlich) + + XMPP: + * Fix a double free in jabber/message.c. (PIDGIN-17547) (RR 932) (Gary + Kramlich, pv32768) + + Pidgin: + * Fix the link to the support mailing list archive in the About Dialog. + (RR 929) (Gary Kramlich) + +version 2.14.7 (09/16/2021): + libpurple: + * Fix leak in purple_markup_find_tag on error. (OSS-FUZZ 35816) (RR 924) + (Elliott Sales de Andrade) + * Fix an issue where the XMPP utility tests would fail if libidn was + disabled. (RR 922) (Gary Kramlich) + * Fix an assert in purple_markup_html_to_xhtml (OSS-FUZZ 35029) (RR 921) + (Elliott Sales de Andrade) + * Fix building on Haiku (RR 916) (Haiku Ports Team) + * Correctly free parse tags at end of purple_html_to_xhtml (OSS-FUZZ 34996) + (RR 913) (Elliott Sales de Andrade) + * Fix leak that may occur when xmlnode_from_str fails (OSS-FUZZ 34988) + (RR 911) (Elliott Sales de Andrade) + * Cleanup, standardize and create starting corpora for all of the fuzzers. + (RR 920) (Gary Kramlich) + * Port purple_str_to_time to use a regular expression and add additional + unit tests for it. (RR 923) (Gary Kramlich) + +version 2.14.6 (07/08/2021): + General: + * Update references to point to our current websites. (RR 766) (Gary + Kramlich) + * Add a donate link to the help menu. (RR 749) (Gary Kramlich) Finch: - * Support the conversation-extended signal for extending the - conversation menu. (Howard Chu) (#14818) - - Bonjour: - * Support file transfers up to ~9 EiB. - - Gadu-Gadu: - * Possibility to require encryption. Also, using encryption when - available is default option now. (Tomasz Wasilczyk) - * Show local time for incoming messages. (Tomasz Wasilczyk) (#4579) - * Fixed password change dialog and problems with connecting to accounts - with non-ASCII passwords. (Tomasz Wasilczyk) (#14652) - * Option to show links from strangers. (Tomasz Wasilczyk) (#10591) - * Better handling of "invisible" and "chatty" statuses. (Tomasz - Wasilczyk) (#13836) - - Facebook: - * Added a new prpl for the Facebook Messenger protocol - * Removed the defunct Facebook XMPP support + * Check pkg-config for ncurses before looking for it manually. (RR 729) + (Justin Lecher) + + Pidgin: + * Replace newlines in topics with spaces. (PIDGIN-16704) (RR 730) (Gary + Kramlich) + + libpurple: + * Added support for the no_proxy environment variable. (PIDGIN-17518) + (RR #667) (Alynx Zhou and Gary Kramlich) + * Added infrastructure for fuzzing as well as some initial fuzzers. + (RR #760) (Jordy Zomer) + * Fix an out of bounds write in purple_markup_linkify. (RR 781) (Thomas + Roth, Dominik Maier, and Fabian Freyer) XMPP: - * Strip element prefixes from XHTML-IM messages as they're presented - to the core (and UIs) as incoming messages (Thijs Alkemade). - (#14529) - * Support file transfers up to ~9 EiB. - * Invalid user moods can no longer be sent to the server. - * Added WEBEX-TOKEN SASL auth (Bryon Roche). - - Plugins: - * A new plugin API has been introduced. Plugins are no longer required - to be of a predefined type (such as protocol, standard, loader etc), - and can perform multiple roles. - * The Offline Message Emulation plugin now adds a note that the message - was an offline message. (Flavius Anton) (#2497) - * IPC test plugins have been removed, since the new plugin API does not - provide a separate IPC API. - - Protocols: - * A single jabber plugin provides XMPP, GTalk and Facebook protocols. + * Enable session management after binding a resource. (PIDGIN-17520) (RR + 759) (defanor) + + Zephyr: + * Fix a clang logical-not-parentheses warning. (PIDGIN-17528) (RR 731) + (Gary Kramlich) + +version 2.14.5 (06/03/2021): + General: + * Updated our bundled certificates to the latest version from Mozilla. + (RR #722) (PIDGIN-17535) (Gary Kramlich) + * Made the project scan-build clean. (RR #692-705, #707-714, #716-#719) + (Gary Kramlich) + * Fixed some of Gary's scan-build fixes that were a bit verbose. (RR #715) + (Elliott Sales de Andrade) + * Disabled UPnP and NAT-PMP by default for new user. (RR #706) (Gary + Kramlich) + + IRC: + * Changed the default server to irc.libera.chat. (RR #675) (Gary Kramlich) + + Windows Specific Changes: + * Fixed the installer not running when Mandatory ASLR was turned on. + (RR #721) (PIDGIN-17524) (Gary Kramlich) + +version 2.14.4 (04/29/2021): + General: + * Use LT_LIB_M to find the math library. This should simplify things for + various distros including the BSD's. (RR #608) (and, Justin Lechner) + + libpurple: + * Removed a dangling reference to oscar that was causing the unit tests + to fail. (RR #605) (Gary Kramlich) + * Update purple-remote and purple-url-handler to have a Python 3 shebang. + (RR #609) (Richard Laager) + + Pidgin: + * Install our AppData file into the $prefix/share/metainfo. (RR 607) + (Lars Wendler) + * Re-enable the Gevolution plugin and set the evolution-data-server + requirement to >= 3.6. (RR #610) (Ed Catmur, Lars Wendler) + + Windows-Specific Changes: + * Output pkg-config files so that our Windows builds can be seen by meson. + Grim owes a blog post on how this works. (RR #615) (Gary Kramlich) + * Update the debug symbols download in the installer to the inetc plugin. + (RR #627) (Gary Kramlich) + * Make sure the uninstaller removes all files that we install. (RR #612) + (Gary Kramlich) + +version 2.14.3 (04/08/2021): + libpurple: + * Removed the AIM protocol plugin. AIM has been shut down since December + 15th of 2017. We left it around because of a third party server, but our + plugin no longer works with it. (RR #598) (Gary Kramlich) + + Windows-Specific Changes: + * Standardize on wprintf in pidgin/win32/winpidgin.c (RR #593) (Gary + Kramlich) + * Use the inetc nsis plugin that supports https (RR #593, #594) + (PIDGIN-17511) (Gary Kramlich) + * If building under msys2 copy libgcc_s_dw2-1.dll and libwinpthread to the + install directory. (RR #593) (PIDGIN-17511) (Gary Kramlich) + +version 2.14.2 (04/01/2021): + * Fix a build issue when compiling with gstreamer but without voice and + video. (RR #25) + * Enable cyrus-sasl by default. (RR #26) + * Fix an issue with opening link in Firefox. (RR #503) (PIDGIN-16589) + * Fix a regression from 2.14.0 where extra whitespace would be displayed + when pasting <p> elements from HTML. (RR #504) (PIDGIN-17437) + * Require Python 3 for generating the D-Bus bindings. (RR #550) + * Fix an issue where pasting <hr>'s and other HTML elements would + eventually lead to a crash. (RR #514) (PIDGIN-17446) version 2.14.1 (11/06/2020): * Fixed issues with Windows installer that always thought Pidgin was
--- a/meson.build Tue Dec 31 19:47:01 2024 -0600 +++ b/meson.build Tue Dec 31 19:52:04 2024 -0600 @@ -21,7 +21,7 @@ # For production releases: '' # project('pidgin', 'c', - version : '2.90.0-devel', + version : '2.90.0', meson_version : '>=1.0.0', default_options : ['c_std=c17', 'warning_level=2']) purple_soversion = 0