-
Notifications
You must be signed in to change notification settings - Fork 6
Irssi 1.3.0 pre release notes
Download: https://anti.teamidiot.de/static/nei/irssi-1.3.0-pre8.tar.xz
Signature: https://anti.teamidiot.de/static/nei/irssi-1.3.0-pre8.tar.xz.asc
Binary test package for openSUSE/Debian 10/11/Fedora 34: https://software.opensuse.org/download.html?project=home:ailin_nemui:irssi-an&package=irssi-an
There have been 570 commits since Irssi 1.2.0.
All fixes of Irssi 1.2.3 are also included in Irssi 1.3.0.
Yet, there are still many bugs in Irssi which will not be fixed in Irssi 1.3.0. And there are many desirable features which will not be implemented in Irssi 1.3.0.
For the development process, I (Nei) tried to follow our unofficial Roadmap as good as possible.
This release proposal wouldn't be possible without all the people: Alex Shafer, Berker Peksag, Claes Nästén, Dan Collins, David Gall, Dennis Pentmeier, DFrostByte, Doug Freed, dx, ffrogman, Francis Mteo, Guntbert Reiter, Heikki Orsila, Jacob V. Rasmussen, Jari Matilainen, Jessica Sophie Porter, Joseph Bisch, Lauri Tirkkonen, Marcus "Teschi" Prinz, Marius Gedminas, Mathis Beer, Michael Hansen, Mike Quin, Misty De Meo, Nia Alarie, Nutchanon Wetchasit, Pinguin1234, Rene Kita, Sergey Valentey, Shivaram Lingamneni, Thomas Stagner, Will Storey, Zero King
In other news, Ticho is working on a Matrix plug-in for Irssi at https://codeberg.org/ticho/irssi-matrix/ -- maybe some more people can help out? It is likely that this effort might require additional fixes inside Irssi, too.
On a personal note, I (Nei) have been--and will foreseeably continue to-- scratch my own itches and sometimes also those of others, as good as I can, in my spare time. However, that time is scarce and scarcer. Irssi could benefit from more contributions :-)
Special thanks to Jari Matilainen for helping me test the pre releases.
You can find the full change log below.
-
Several IRCv3 features were added: extended-join (tracks account names on join), setname, account-notify, invite-notify, away-notify, chghost, (message-tags are received and ignored), server-time
These features are hidden behind /SETs: show_extended_join, away_notify_public, show_account_notify, show_server_time
-
Accounts are tracked with WHOX on join
-
There is a script for using IRCv3 account-tag at https://anti.teamidiot.de/static/nei/*/Code/Irssi/account_expando.pl -- it should be able to completely replace old' Freenode's identify-msg (using account-tag, WHOX, and extended-join)
-
TLS connections now default to certificate verification
-
The display system now renders formats on the fly. That means something will happen if you change the theme and do /SCROLLBACK REDRAW
It also means that some scripts such as nickcolor.pl are now broken. Apart from using nickcolor_expando.pl, trilkk also published a replacement script at https://github.com/trilkk/irssi-colored-nicks
-
/IGNORE ... NOHILIGHT can be used to ignore some hilights
-
Unignore time is shown in /IGNORE output
-
irc_op_public messages should now trigger hilights
However, you can also try the script https://anti.teamidiot.de/static/nei/*/Code/Irssi/no_opmsg.pl to get rid of this message type when you are frequently using +mz channels on Libera.Chat
-
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.
-
Scripts can use module formats using ...->format_create_dest(...)->printformat_module("module", "format", args...) -- no more CORE::GLOBAL::caller hacks
-
The Build System was ported to Meson
-
Some function names were corrected, module authors please take note.
-
/SET resolve_reverse_lookup setting was removed (#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_keyFunctions deprecated:
dec2octal g_timeval_cmp get_timeval_diffFunction 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_listIf multi-version compatibility is desired, module authors can find an example of backwards compatible code in cdidier/irssi-xmpp#55
(v1-3-0-an-additions)=
-
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 to the default config (#1316). By Mathis Beer
-
Allow -tls_ca{file,path} '' to unset an argument (#730, #1060, an#30)
-
Add a "server outgoing modify" signal to intercept outgoing messages (#1148, #1151, an#15, an#43). Original by JustAnotherArchivist
(v1-3-0-an-fixes)=
-
remove some hard-coded 510 byte assumptions (#1086)
-
Several fixes for error checks in SSL (#944, #1037, #943, #1036). Reported by Chi Li
-
Fix bug where irssi-proxy with
?-port would not reconnect (#1041) -
Allow shrinking of /SET rawlog_lines (#957, #1020). By Marcus "Teschi" Prinz
-
Fix /WINDOW BALANCE warning (#1054)
-
fix overflow when first command history entry expires (#1070)
-
fix some memory leaks in /DCC RESUME and settings_add (#1077). By Zero King
-
fix cut-off text with theme_indent module and /SET indent_always OFF (#1078)
-
fix the cap_queue order (#1095)
-
add reference counted strings (#1089)
-
Fix irc_op_public messages not triggering hilights (#354, #891, #1129). By Dan Collins
-
Fix /IGNORE not setting the right level in irc_op_public messages (#1280). Credit to oss-fuzz
-
Fix GTimeVal deprecation (#1141, #1144, #1145, #1350, an#44)
If multi-version compatibility is desired, module authors can find an example of backwards compatible code in cdidier/irssi-xmpp#53
-
Fix /IGNORE ... MODES NO_ACT not working (#1164)
-
Deprecated -ssl* options are hidden from tab completion (#1171)
-
Make /SET actlist_sort a choice type (#1198)
-
Fix crash from self-unloading script (#1206). By Thomas Stagner
-
Fix a case where empty lines or comments inside channels or servers in the config would confuse Irssi (#1062, #1242, #1243)
-
Fix reported freezing in DCC GET on slow disks (#159, #1271)
-
Fail redirects when receiving numeric 263 (RPL_TRYAGAIN) in response to /WHO (#1283)
-
Some updates to .gitignore (#1302). By Rene Kita
-
Fix build on operating systems with X/Open Curses, version 2 (#1305, #1308). By Nia Alarie (Regression introduced with #1290, alternative fix for Irssi 1.2.3 no-term.h.patch)
-
Fix otr module not using g_strndup, e.g. on Solaris 10 (#1315). By Claes Nästén
-
Fix cursor getting stuck for auto completions that changes case (#1176, #1322, an#8). By ffrogman
-
Restore operation of tag/* in /SET activity_hide_targets (#1337, an#11) nb. the ::all syntax was working in Irssi 1.1 and 1.2 (and continues to work)
-
Fix /SERVER ADD -matrix -network my_matrix_network (an#12). By Andrej Kacian
-
Fix /SERVER ADD creating duplicated entries in the config file (#1317, an#22, an#41)
-
Fix critical when SASL user is set and SASL password is empty (#1325, an#21)
-
Build system fixes (#1101, #1102, #1069, #1140, #1181, #1253)
-
Sync docs and scripts (an#39)
-
Text and Help updates
- add -tls_* options to manual (#1029, #1030). By Jacob V. Rasmussen
- missing targets in /MSG (#1032)
- wrong parameter in /ECHO (#1024)
- Spelling in OTR (#1047). By David Gall
- Clarify statusbar priority (#1049). By Marius Gedminas
- Document get_irssi_dir in Perl (#1051, #1052). By Alex Shafer
- typo in /HILIGHT help (#1081). By DFrostByte
- improved clarity of your_nick_owned (#1138). By Mike Quin
- Update some URLs to https (#1163)
- Add documentation for escaping some characters (#1329, #1330, an#9). By Guntbert Reiter
- Fix some typos (#1336, an#10). By Francis Mteo
- Document $abiversion and parse_special (an#38). By bw1
-
Infrastructure updates:
Much of the content on these pages is taken from original Irssi documentation and is Copyright © 2000-2010 The Irssi project. Formatting and additional documentation, examples, etc by Tom Feist and the other editors of this wiki. This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License. Please see http://creativecommons.org/licenses/by-sa/2.5/ for details.