Releases: irssi/irssi
1.4.5
Note. Apply perl-again.patch when building Irssi with Perl 5.37 or later. Otherwise Irssi's locale/unicode handling may break due to a bug in Perl. See Perl/perl5#21366. The fix given in #1498 was unfortunately not sufficient.
Fixes
- Fix Perl scripts broken by Perl 5.38 (scripts.irssi.org#851, #1474). With input from Leon Timmermans
- Document workaround to fix linker errors when building with meson on Apple (#1435, #1492)
- Fix meson using wrong filenames on Apple, leading to broken Perl support (#1483, #1493)
- Fix /upgrade not accepting
~
(#1460, #1462). By Lukas Mai - Improve compatibility with Perl5-IDEA (#1465, #1467). By Charlie Daffern
- Fix logic in how own actions are printed for other protocols (codeberg!5, #1471). By Andrej Kacian
- Fix crash on old PowerPC Mac (#1482, #1484)
- Fix wrong prototype of library function used in terminal handling (#1495). By Emil Engler
- Minor cleanups (#1488, #1497). Includes work by Emil Engler
- Minor help and documentation fixes (#1458, #1494, #1477, #1478). Includes work by KindOne
1.4.4
Note. Apply perl-ntype.patch when building Irssi with Perl 5.37 or later. Otherwise some script functions will be broken due to a change in Perl's ExtUtils::ParseXS. See #1474
Changes
- Expose location of signals.txt via pkg-config (codeberg!1, #1439, #1446, #1447). By Andrej Kacian
Additions
- Levels can now be inverted using
^
prefix in the /WINDOW (HIDE)LEVEL commands (#1428) - Support receiving monospace (#1370, #1442). By Linus Heckemann
Fixes
- Fix config broken by /WINDOW LOGFILE without parameter (#1392, #1432)
- Fix broken /LASTLOG -window switch (#1418, #1424, regression introduced in #1398)
- Fix logic in how actions are printed for other protocols (codeberg!3, #1454). By Andrej Kacian
- Fix stale special collector use after free (#1456). Reported by ednash
- Help and message fixes (#1421, #1429, #1431, #1434, #1438, #1452, #1453, #1455). Includes work by Jimmie Tyrrell and Sven Grewe
1.4.3
1.4.2
Changes
Fixes
- Use -isystem includes, limiting warnings to Irssi code. Fixes compilation with Perl 5.36 (#1381, gentoo#851522, #1384)
- Fix missing lines when changing dynamic textbuffer contents (#1382, #1387). Reported by externalserver15
- Fix Perl cross compilation with Meson 0.60.0 (#1377)
- Fix default channel prefix used for /JOIN to default to
#
(#1385, #1388) - Fix crash in /LASTLOG by getting line texts before printing (#1367, #1398)
1.4.1
Note: botti no longer compiles; get in touch if you use it
Changes
-
Format the output of /QUOTE HELP (#1371, an#82). By Val Lorentz. Add /SHELP as default alias (an#83)
-
/SET resolve_reverse_lookup setting was removed (#1034, #1135)
-
Irssi will try to connect on IPv4 if IPv6 connection failed (#1146). By Shivaram Lingamneni
-
The display system now renders formats on the fly (#1079, #1188, #1191, #1192, #1204, #1205, #1209, #1349, #1355, an#13, an#14, an#28, an#29, an#36, an#37, an#49)
This major change will break scripts that try to modify printed text during "print text" signal (#1189). They need to be ported to modify the text during "print format" instead. It also breaks the usage of using /FORMAT to add different colours to a line. Such usage needs to be ported to using $expando variables instead. Affected scripts include format_identify.pl, friends_peder.pl, nickcolor.pl, nm.pl, people.pl
The "gui print text finished" and "gui print text after finished" signals gained a TEXT_DEST_REC *parameter in the process.
A new "gui render line text" signal is available to change the rendering of a line
-
made the $Z expando (time) dynamic (#1087, #1207, #1208)
This change breaks the usage of /SET timestamp_format to supply a custom displayed time stamp. Affected scripts include binary_time.pl
-
/HILIGHT -priority now affects which hilight rule gets applied (#1228, #1232)
-
The NAMES list is now hidden by default if there are more than 18 users on the channel (an#7)
To revert to the previous behaviour
/SET show_names_on_join_limit -1
-
-tls_verify is now enabled by default (#1170, an#18, #1309,
an#23, #1343, #1351)This may cause an ugly display of notls_verify in the output of /SERVER LIST, even on plain-text connection, on old configs. Kindly remove the "tls_verify = "no";" entries from your config file manually.
-
Irssi will now attempt STARTTLS if advertised (#1170, #1312, an#19)
Use -disallow_starttls if you absolutely do not want this
In order to check for a STARTTLS advertisement, Irssi will now wait for a response (even an error) to CAP LS 302. If your bouncer/server does not want to communicate before receiving USER/PASS at all, use -nocap to disable the CAP check.
-
Channel sync requests (WHO, MODE) are now sent "later" than user commands. This should improve responsiveness to user commands in the autojoin phase (an#26, an#32, an#33)
-
Irssi is now using full paths in #include directives and consequently does not add all directories to the include path anymore (#1040)
-
The Build System was ported to Meson (#1064, #1065, #1068, #1071, #1072, #1073, #1074, #1075, #1084, #1085, #1118, #1166, #1223, #1224, #1245, #1313, #1314, an#31)
-
Scriptassist was changed to use a YAML database (#1163)
It will tell you when you need to update your setting
-
/BIND shows all partial matches (#1155)
-
Cleanup of unused functions (#1017, #1132, #1145, #1182, #1246, #1264)
Functions removed:
NET_CALLBACK NET_HOST_CALLBACK RESOLVED_NAME_REC net_gethostbyaddr_nonblock net_connect_nonblock [ SIMPLE_THREAD_REC, simple_init, simple_readpipe ] hash_save_key
Functions deprecated:
dec2octal g_timeval_cmp get_timeval_diff
Function names corrected:
g_input -> i_input g_istr -> i_istr g_io_channel -> i_io_channel g_hash_free_value -> i_hash_free_value remove g_free_true gslist -> i_slist glog_func -> i_log_func glist -> i_list
If multi-version compatibility is desired, module authors can find an example of backwards compatible code in cdidier/irssi-xmpp#55
Additions
-
GLib log message filter: /SET glib_log_domains (an#50, an#59). By Andrej Kacian
-
An option to clear the cutbuffer: /SET empty_kill_clears_cutbuffer (an#58). By Mikael Magnusson
-
Configurable actlist separator: /SET actlist_separator (#1364, an#61)
-
Add MSGLEVEL_HIDDEN to Perl (#1044)
-
Add $view->set_hidden_level and $view->remove_lines_by_level to Perl (#1026)
-
Add a /SET scrollback_max_age setting (#1022). By Heikki Orsila
-
Add /SET actlist_prefer_window_name (#1025)
-
Add an option to list specific sections with
/SET -section lookandfeel
(#1048)
-
Add support for IRCv3 CAP LS 302 (#1091)
-
Add a new "print noformat" signal that goes together with "print format" (#1088, #1192)
-
Add support for IRCv3 extended-join. /SET show_extended_join to enable (#1097, #1107, #1124)
There are two new /FORMATs, join_extended and join_extended_account, that theme writers need to take into account if desired.
-
Add support for IRCv3 account-notify (#1100, #1098, GL#33, #1105, #1131). Credit to oss-fuzz /SET show_account_notify to enable
-
Add support for IRCv3 invite-notify (#1094)
-
Enable the znc.in/self-message CAP by default (#1123)
-
Add support for IRCv3 away-notify. /SET away_notify_public to enable (#1099, GL#33, #1105)
-
Add support for IRCv3 chghost (#1096, GL#33, #1105)
For servers with broken chghost implementation that fill the status window with host changed messages, one may add "quote cap req -chghost" to the -autosendcmd or, if the host change messages are entirely undesired, "/format -delete host_changed"
-
Add support for IRCv3 server-time. /SET show_server_time to enable (#1108)
-
Add support for logging IRCv3 server-time. /SET log_server_time to disable (#1318, an#16)
-
Add IRCv3 features to signals.txt (#1111)
In particular, "message join" now takes 2 additional arguments, script and module authors must beware of this change.
-
Add /SET quit_on_hup to make the behaviour of SIGHUP configurable (#828, #1169). By Pinguin1234
-
Support numeric 489 as ERR_SECUREONLYCHAN (#1193, #1196). By Michael Hansen
-
Improve support for building Irssi in Termux-Android with Meson (#1199)
-
Add usermode key to Irssi::Irc::Chatnet in Perl (#1288). By Jessica Sophie Porter
-
Add format_string_expand and format_string_unexpand functions to Perl (#1286)
-
Add ...->format_create_dest(...)->printformat("format", args...) and ...->printformat_module("module", "format", args...) methods to Perl (#1284)
You can avoid any CORE::GLOBAL::caller hacks using the printformat_module method, especially sind that hack was not safe during signal emissions
-
Add tracking of user accounts in the channel nicklist using WHOX on join (#1250)
-
Add auto-loading of the Perl and otr module from /SET autoload_modules (#1295)
-
Add /IGNORE ... NOHILIGHT to ignore some hilights (#1260)
-
Do not beep on hidden lines with /SET beep_msg_level ... -HIDDEN (#1259)
-
Added /CS, /MS, /NS, and /OS aliases t...
1.2.3
Note. Apply no-term.h.patch on NetBSD and other systems using libcurses. This regression is introduced by trying to fix rendering on Apple ARM. See #1305
Fixes
- Fix the compilation of utf8proc (#1021)
- Fix wrong call to free. By Zero King (#1076)
- Fix a colour reset in true colour themes when encountering mIRC colours (#1059)
- Fix memory leak on malformed CAP requests (#1120)
- Fix an erroneous free of SASL data. Credit to Oss-Fuzz (#1128, #1130)
- Re-set the TLS flag when reconnecting (#1027, #1134)
- Fix the scrollback getting stuck after /clear (#1115, #1136)
- Fix the input of Ctrl+C as the first character (#1153, #1154)
- Fix crash on quit during unloading of modules on certain platforms (#1167)
- Fix Irssi freezing input after Ctrl+Space on GLib >2.62 (#1180, #1183)
- Fix layout of IDCHANs. By Lauri Tirkkonen (#1197)
- Fix crash when server got reconnected before it was properly connected (#1210, #1211)
- Fix multiple identical active caps (#1249)
- Minor help corrections (#1156, #1213, #1214, #1255)
- Remove erroneous colour in the colorless theme. Reported and fixed by Nutchanon Wetchasit (#1220, #1221)
- Fix invalid bounds calculation when editing the text entry. Found and fixed by Sergey Valentey (#1269)
- Fix passing of negative size in buffer writes. Found and fixed by Sergey Valentey (#1270)
- Fix Irssi freezing on slow hardware and fast DCC transfers (#159, #1271)
- Fix compilation on Solaris (#1291)
- Fix null pointer dereference when receiving broken JOIN record. Credit to Oss-Fuzz (#1292)
- Fix crash on /connect to some sockets (#1239, #1298)
- Fix Irssi rendering on Apple ARM. By Misty De Méo (#1267, #1268, #1290)
- Fix crash on /lastlog with broken lines (#1281, #1299)
- Fix memory leak when receiving bogus SASL authentication data. Found and fixed by Sergey Valentey (#1293)
1.2.2
Note. Apply glib-2-63.patch if you intend to use Irssi on GLib >2.62 in order to fix #1180
Fixes
- Fix a use after free issue when receiving IRCv3 CAP information from the server (GL#34)
- Fix a crash during startup when windows weren't fully initialised yet (#1114, bdo#935813)
1.2.1
Contains all changes from 1.1.3
Fixes
- Fix a test on big endian machines (#1014)
- Fix the compile time conditionality of wcwidth implementation (#1019, gentoo#677804, #720)
- Fix /save no longer working on old Solaris (pre POSIX.1-2008) (#1042, #1043)
- Fix regression of #764 where display of 8-bit (legacy encoding) in the input prompt was broken (#1018, #1057). Initial patch by Артём Курашов