forked from irssi/irssi
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathNEWS
3661 lines (3330 loc) · 175 KB
/
NEWS
1
2
3
4
5
6
7
8
9
10
11
12
13
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
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
v1.5-head 202x-xx-xx The Irssi team <[email protected]>
v1.4.5 2023-10-03 The Irssi team <[email protected]>
+ Add workaround for Perl 5.38.0 bug that breaks the Irssi
locale and glyph rendering (scripts.irssi.org#857, #1498)
- 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
v1.4.4 2023-03-31 The Irssi team <[email protected]>
* Expose location of signals.txt via pkg-config (codeberg!1,
#1439, #1446, #1447). By Andrej Kacian
+ Levels can now be inverted using `^' prefix in the /WINDOW
(HIDE)LEVEL commands (#1428)
+ Support receiving monospace (#1370, #1442). By Linus
Heckemann
- 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
v1.4.3 2022-10-31 The Irssi team <[email protected]>
- Fix freeze on Alt+arrows (#1416, #1417)
- Fix crash on /upgrade (#1399, #1419)
- Fix saving of -disallow_starttls (#1401, #1420)
- Fix libnv detection on FreeBSD (freebsd#265397, #1407). By
Guido Falsi and Kristof Provost
- Minor help and script fixes (#1380, #1393, #1411, #1413,
#1414, #1415)
v1.4.2 2022-07-17 The Irssi team <[email protected]>
* Add irssimoduledir to irssi-1.pc in the Meson build (#1383,
#1378)
- 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)
v1.4.1 2022-06-12 The Irssi team <[email protected]>
! Note: botti no longer compiles; get in touch if you use it
* Format the output of /QUOTE HELP (#1371, an#82). By Val
Lorentz. Add /SHELP as default alias (an#83)
+ 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
+ Scriptable pastebin (an#60, an#88)
+ Configurable actlist separator: /SET actlist_separator
(#1364, an#61)
- Fix window left/right not skipping visible windows
(an#57). By Mikael Magnusson
- Fix wrong printf-format on OpenBSD (an#66, an#68). Reported
by Aaron Bieber
- Fix erroneous output produced by autoload_modules (an#72)
- Fix scroll_page_count setting with `.' (#1365, an#76)
- Fix memory leak in /IGNORE (#1373, an#84). Found by Jookia
- Misc fixes (an#45, an#67, an#70, #1368, an#77)
- CHANTYPES take precedence over (missing) STATUSMSG in /join
(#1358, an#54)
- Fix crash in Perl's $view->set_bookmark (freebsd#254237,
an#56)
- Minor help fixes (an#51, an#52)
- Fix regression where own channel status was forgotten after
/UPGRADE (#1357, an#53)
* /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 (#1300, 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
+ 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 -window option to /CAT (#1023, #1159)
+ 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 setname (#1093, #1104, #1254, GL#33)
+ 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)
+ Add support for receiving IRCv3 message-tags (#576, #1090)
+ Add support for sending IRCv3 message-tags (#1092, an#34)
+ 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.
+ Show the unignore time in /IGNORE output (#1158, #1161)
+ 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
- remove some hard-coded 510 byte assumptions (#1086)
- Several fixes for error checks in SSL (#944, #1037, #943,
#1036). Reported by Chi Li
- Wrong variable tested in mask_match (#902, #1035)
- 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)
- begin modularising IRC module (#1067, #1112, #1113)
- 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 crash during Perl signal emission (#1233, #1234)
- 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)
- Fix message-tags parsing (#1274, #1275). Credit to oss-fuzz
- 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)
- Misc fixes (#1106, #1141, #1272, #1297, an#35)
- Fuzz fixes (#1116, #1117, #1119, #1125, #1126, an#20)
- 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:
- Support for Github Actions (#1039, #1103, #1160, #1212,
#1231, #1252, #1261, an#40)
- Run clang-format on pull requests (#1172, #1173, #1184,
#1230, #1247, #1287)
- Run abidiff on pull requests (#1179, #1195)
- Test CI-Fuzz (#1279, #1304, an#17)
v1.2.3 2021-04-11 The Irssi team <[email protected]>
- 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)
v1.2.2 2019-08-29 The Irssi team <[email protected]>
- Fix a use after free issue when receiving IRCv3 CAP
information from the server (GL#34, GL!35)
- Fix a crash during startup when windows weren't fully
initialised yet (#1114, bdo#935813)
v1.2.1 2019-06-29 The Irssi team <[email protected]>
! Contains all changes from 1.1.3
- 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 Артём Курашов
v1.1.3 2019-06-29 The Irssi team <[email protected]>
! Contains all changes from 1.0.8
- Fix regression of #779 where autolog_ignore_targets would
not matching itemless windows anymore (#1012, #1013)
v1.0.8 2019-06-29 The Irssi team <[email protected]>
- Fix a use after free issue when sending the SASL login on
(automatic and manual) reconnects (#1055, #1058). Reported
by ilbelkyr
v1.2.0 2019-02-11 The Irssi team <[email protected]>
! Contains all changes from 1.1.2
* Improved the /STATUSBAR commands (#858)
* /SET no longer shows `=' between setting and value (#886)
* /CUBES removed from default config (available as script)
(#956)
* /1 /2 /3 ... removed from default config (available as new
setting window_number_commands) (#958)
* Always redraw the screen on resize. By David Phillips (#896)
* Private notices intended for channels are now displayed on
the channel (new setting notice_channel_context) (#959)
+ Imported the "Off-the-record" module into Irssi tree (#854,
#589, #196, #881)
+ Initial support for sideways split windows (#697, #431,
#224, #807, FS#310, #947, #955, #989)
+ Change the implementation of `wcwidth'. This is used to
calculate the width of emojis on your terminal screen (#917,
#720)
+ Make the wcwidth functions available from Perl (#973):
string_width(str)
string_chars_for_width(str, width)
wcwidth(char)
+ Added completion_keep_word setting (#979)
+ Allow activity_hide_targets to hide activity in itemless
windows (#967, #997, #1001, #1003)
+ Added activity_hide_visible setting (#990)
+ Allow hiding of lines through the /IGNORE system (#901,
#900, #892, #890, #884, #937)
+ Add window_default_hidelevel setting. By Doug Freed (#941)
+ Add activity_hide_window_hidelevel setting, defaulting to ON
(#938)
+ Add autolog_only_saved_channels setting, to autolog only
channels that are in the config (#968)
+ Add format support for the input line. By Ben Paxton,
originally by Jonas Hurrelmann (#764, FS#621, #1004)
use Irssi::TextUI;
gui_input_set_extent(pos, text)
gui_input_set_extents(pos, len, left, right)
gui_input_clear_extents(pos, len)
gui_input_get_extent(pos)
gui_input_get_text_and_extents()
gui_input_set_text_and_extents(...)
+ Parsing of IRCv3 CAP 3.2 (#775, #869)
+ Show CAP-related events in the user interface (#918, #916,
#870, #704)
+ Continue using separators when addressing multiple nicks
with tab completion. By Manish Goregaokar (#822)
+ Bind Shift-tab by default. By Niklas Luokkala (#830, #829)
+ Fuzzing more things (#913, #780, #813)
- Disconnect SASL properly in case the SASL module got
unloaded from server (#931, #629, #618, #616)
- Fix backward completion jumping to the first instead of last
word (#979)
- Improve empty topic handling (#961, #905, #911, #897, #888)
- Prevent config truncation when no space left. By dequis and
Lukas Waymann (#922, #925, #910, #909, #906, #871, #817)
- Also time-out servers in lookup phase (#866, #130)
- Fix build with LibreSSL 2.7. By Dorian Harmans (#865)
- Fix a crash when appending to a textbuffer without
line. Reported by Jari Matilainen (#862)
- Fix segfault on sending large messages (#803, #796, #802)
- Fix segfault on invalid statusbar config (#993, #994)
- Fix random memory writes on restoring queries of foreign
protocols (#999, #1000)
- Make default keybinds deletable (#859, #507)
- Fix freeze when resizing Irssi very small (#946)
- Compare channels case-insensitively, avoiding confusions
with the config file (#857, #856)
- Fix DCC GET on Android. By Martin Staron (#844)
- Improve rawlog performance (#957)
- Fix nick escaping erroneously escaping quotes (#978, #974,
#709)
- Protect against theme recursion, improve padding
performance, limit alignment padding. Credit to Oss-Fuzz
(#835, #851, #850, #846, #848)
- Fix recursive loop in replaces (#833, GL#23)
- Fix headers for compilation of C modules (#939)
- Documentation. By Zero King (#814). (#852)
- Sync NEWS, docs, scripts (#849, #855)
- Build system (#868, #867, #985, #988)
- Fix build on IBM i and AIX. By Calvin Buckley (#975)
- Misc fixes (#840, #839, #843, #953, #962). Tests (#806,
#875, #905, #964, #1011). Fuzzing (#929).
v1.1.2 2019-01-09 The Irssi team <[email protected]>
- Fix the resetting of window hiddenlevel (#861)
- Fix clearing of hidelevel in layout (#951)
- Fix accessing unallocated text when checking entry position
(#928, #930)
- Fix uninitialised memory on empty lines (#873, GL#31, #878,
#877, #907, #914)
- Fix use-after-free on expiration of hidden lines (#948)
- Fix use-after-frees. By Maya Rashish (#919)
- Fix out of bounds access in help display when window width
is small (#949)
- Fix paste_join_multiline (#970, #971)
- Correctly check for errno when displaying SSL errors. By
Janik Rabe (#895)
- Fix wrong signal emission argument count (#965)
- Documentation (#920). Sync NEWS, scripts (#849)
- Fix Perl detection on MacOS. By Dominyk Tiller (#927)
- Misc fixes. By Jaroslav Škarvada (#981, #982)
v1.1.1 2018-02-15 The Irssi team <[email protected]>
! Contains all changes from 1.0.7
- Restore compatibility with OpenSSL < 1.0.2 (#820, #831)
- Fix test compilation on some platforms (#815, #816)
- Fix portability and backwards compatibility of test runner
(#818, #845)
v1.0.7 2018-02-15 The Irssi team <[email protected]>
- Prevent use after free error during the execution of some
commands. Found by Joseph Bisch (GL#17, GL!24).
- Revert netsplit print optimisation due to crashes (#465, #809,
#812, #819, #824, #832).
- Fix use after free when SASL messages are received in
unexpected order (GL#26, GL!33).
- Fix null pointer dereference in the tab completion when an
empty nick is joined (GL#24, GL!31).
- Fix use after free when entering oper password (GL#22,
GL!32).
- Fix null pointer dereference when too many windows are
opened (GL#27, #837).
- Fix out of bounds access in theme strings when the last
escape is incomplete. Credit to Oss-Fuzz (#842).
- Fix out of bounds write when using negative counts on window
resize (GL#25, GL#29, #836).
- Minor help correction. By William Jackson (#834).
v1.1.0 2018-01-15 The Irssi team <[email protected]>
! Warning. Irssi is broken and will crash with OpenSSL < 1.0.2
due to openssl/openssl commit
5b4b9ce976fce09a7a92e2f25b91a1635cb840fe
* Colour is now re-set when reaching a comma, matching mIRC
behaviour (#742, #740, #790)
* Irssi now shows the initial nick and name on first start
(#785, #786)
* lynx is no longer required to run autogen.sh (#81, #781)
* The command history no longer permits wrapping around (#686)
* /foreach now correctly sends arguments as commands, stopping
you from embarassing AMSGs (#659)
* /server does not connect to servers anymore, use /server
connect to change servers (#559, #649).
* The net_ip_compare API function is now deprecated, and the
previously deprecated net_connect has been removed. By Will
Storey (#770).
+ Add an option to ignore all channels or ignore all queries
using /set activity_hide_targets. By Jari Matilainen (#612,
#779)
+ Add a startup warning if the TERM var is wrong inside
tmux/screen (#726)
+ Add option to hide certain levels from the textbuffer using
/window hidelevel (#746, #808)
+ Irssi now has its first unit test (for mode parsing). By
Will Storey (#793)
+ Added access to global command history when using window
history, and a binding to erase entries from the command
history (erase_history_entry) (#762)
+ -alternate_nick is now available as a network specific
property. By Paul Townsend (#120, #771)
+ On FreeBSD, Irssi now supports Capsicum sandbox (/capsicum
enter). By Edward Tomasz Napierala (#735, #755, #772)
+ Filenames (directories) ending with a / now tab-complete
(#741)
+ UTF-8 should now work in regular expressions when using
GRegex (the default) (#636, #653)
+ Nicks are now properly escaped on completion. By Oscar
Linderholm (#693, #709)
+ /server add -port <num> now works. By Jari Matilainen (#703)
+ Add a setting key_timeout to make key sequences
automatically re-set when not finished (#644, #645)
+ Warn users about expired client certificates, as servers may
refuse them (#211, #627)
+ Add a new net_start_ssl function for StartTLS. This is
available from ABI 8 and can be used by protocol modules
(#615, #622).
+ The %# code is now stored in the textbuffer, so for example
web scripts can make use of it (#626)
+ Add new setting break_wide which can be used to enable
breaking of wide characters (for east-asian
users). Originally from FreeBSD ports. (#625)
+ Add fuzzing code (#610, #620, #701, #713)
- Netsplits show properly again (#812)
- Do not error on blank lines when using /exec -o. By Fabian
Kurz (FS#902, #805)
- Detect used nickname as reported by server. By Alexandre
Morignot (#219, #804)
- Prevent use after free error during the execution of some
commands. Found by Joseph Bisch. (GL#17, GL!24)
- Fix MODE parameter parsing when colon was used at a place
Irssi didn't expect (#601, #766)
- Fixed code to compile with
-Werror=declaration-after-statement (#795)
- Clang-format is now supported for git-clang-format (#784)
- Fix use after free when changing the network of
hilights. Reported by Rui Mathias. (#787, #788)
- Fix positioning error when tab-completing non-ascii
strings. (#752, #754)
- In-development issues (#750, #751)
- Clarify Alis in /help list (#699, #712)
- Improve /lastlog performance from O(N^2) to O(N) (#715)
- Fix a segfault on "script destroyed" signal. By Stephen
Oberholtzer (#660, #661).
- Fix early ISON error (#596, #647)
- Documentation improvements. By Paolo Martini (#639).
By Tristan Pepin (#731). By Paul Townsend (#684, #736).
By Will Storey (#777)
- Minor cleanups (#590). By Edward Tomasz Napierala (#734,
#738)
- Fix space issue in glib-2.0.m4 (#621)
v1.0.6 2018-01-07 The Irssi team <[email protected]>
! Note: Code and aliases using `$($'-like constructs are no
longer supported due to issue GL#18. Sorry about the
inconvenience.
- Fix invalid memory access when reading hilight configuration
(#787, #788).
- Fix null pointer dereference when the channel topic is set
without specifying a sender (GL#20, GL!25).
- Fix return of random memory when using incomplete escape
codes (GL#21, GL!26).
- Fix heap buffer overflow when completing certain strings
(GL#19, GL!27).
- Fix return of random memory when using an incomplete
variable argument (GL#18, GL!28).
v1.0.5 2017-10-23 The Irssi team <[email protected]>
- Fix missing -sasl_method '' in /NETWORK (#718, #719).
- Fix incorrect restoration of term state when hitting SUSP
inside screen (#737, #733).
- Fix out of bounds read when compressing colour
sequences. Found by Hanno Böck (GL#12, GL!18).
- Fix use after free condition during a race condition when
waiting on channel sync during a rejoin (GL#13, GL!19).
- Fix null pointer dereference when parsing certain malformed
CTCP DCC messages (GL#14, GL!20).
- Fix crash due to null pointer dereference when failing to
split messages due to overlong nick or target (GL#15, GL!21).
- Fix out of bounds read when trying to skip a safe channel ID
without verifying that the ID is long enough (GL#16, GL!22).
- Fix return of random memory when inet_ntop failed (#769).
- Minor statusbar help update. By Robert Bisewski (#758,
#763).
v1.0.4 2017-07-07 The Irssi team <[email protected]>
- Fix null pointer dereference when parsing invalid timestamp (GL#10,
GL!15). Reported by Brian 'geeknik' Carpenter.
- Fix use-after-free condition when removing nicks from the internal
nicklist (GL#11, GL!16). Reported by Brian 'geeknik' Carpenter.
- Fix incorrect string comparison in DCC file names (#714).
- Fix regression in Irssi 1.0.3 where it would claim "Invalid time '-1'"
(#716, #722).
- Fix a bug when using \n to separate lines with expand_escapes (#723).
- Retain screen output on improper exit, to better see any error
messages (#287, #721).
- Minor help update (#729).
v1.0.3 2017-06-06 The Irssi team <[email protected]>
! Regression info in 1.0.3: #716 Warnings on start up: invalid time '-1'
- Fix out of bounds read when scanning expandos (GL!11).
- Fix invalid memory access with quoted filenames in DCC
(GL#8, GL!12).
- Fix null-pointer dereference on DCC without address (GL#9, GL!13).
- Improve integer overflow handling. Originally reported by
oss-fuzz#525 (#706).
- Improve nicklist performance from O(N^2) to O(N) (#705).
- Fix initial screen redraw delay. By Stephen Oberholtzer
(#680, bdo#856201).
- Fix incorrect reset of true colours when resetting background. (#711).
- Fix missing -notls option in /SERVER. By Jari Matilainen (#117, #702).
- Fix minor history glitch on overcounter (#462, #685).
- Improved OpenSSL detection at compile time. By Rodrigo Rebello (#677).
- Improved NetBSD Terminfo detection. By Maya Rashish (#694, #698).
- Add missing syntax info for COMPLETION (#687, #688).
- Minor typo correction in help. By Michael Hansen (#707).
v1.0.2 2017-03-10 The Irssi team <[email protected]>
! Warning. Irssi is broken on GLib 2.46 (bgo#755496)
- Prevent some null-pointer crashes (GL!9).
- Fix compilation with OpenSSL 1.1.0 (#628, #597).
- Correct dereferencing of already freed server objects during
output of netjoins. Found by APic (GL!10, GL#7).
- Fix in command arg parser to detect missing arguments in tail place
(#652, #651).
- Fix regression that broke incoming DCC file transfers (#667, #656).
- Fix issue with escaping \ in evaluated strings (#669, #520).
v1.0.1 2017-02-03 The Irssi team <[email protected]>
- Fix Perl compilation in object dir. By Martijn Dekker (#602, #623).
- Disable EC cryptography on Solaris to fix build (#604, #598).
- Fix incorrect HELP SERVER example (#606, #519).
- Correct memory leak in /OP and /VOICE. By Tim Konick (#608).
- Fix regression that broke second level completion (#613, #609).
- Correct missing NULL termination in perl_parse. By Hanno Böck (#619).
- Sync broken mail.pl script (#624, #607).
- Prevent a memory leak during the processing of the SASL
response (GL!8, GL#5)
v1.0.0 2017-01-03 The Irssi team <[email protected]>
* Removed --disable-ipv6 (#408).
* /connect Network now aborts with an error if no servers have been
added to that network (#443).
* /dcc commands now use quotes around spaces consistently.
* bell_beeps was removed (#524, #565).
* Switch to GRegex instead of regex.h (#412).
+ irssiproxy can now forward all tags through a single
port. By Lukas Mai (mauke, #425).
+ irssiproxy can also listen on unix sockets. By Lukas Mai (#427).
+ send channel -botcmds immediately when no mask is specified (#175, #399).
+ the kill buffer now remembers consecutive kills.
New bindings were added: yank_next_cutbuffer and append_next_kill
By Todd A. Pratt (#353, #414, #455)
+ connections will avoid looking up IPv6 addresses if the machine does
not have an IPv6 address assigned (exact behaviour is implementation
defined, #410).
+ Fix potential crash if scripts insert undef values into the completion
list (#413).
+ Paste warning is now also shown on pasting overlong
lines. By Manish Goregaokar (#426).
+ autolog_ignore_targets and activity_hide_targets learn a new syntax
tag/* and * to ignore whole networks or everything.
By Jari Matilainen (vague666, #437)
+ /hilight got a -matchcase flag to hilight case
sensitively. By Thibault B (isundil, #421, #476).
+ Always build irssi with TLS support.
+ Rename SSL to TLS in the code and add -tls_* versions of the -ssl_*
options to /CONNECT and /SERVER, but make sure the -ssl_* options continue
to work.
+ Use TLS for Freenode, EFnet, EsperNet, OFTC, Rizon, and IRC6 in the default
configuration.
+ Display TLS connection information upon connect. You can disable this by
setting tls_verbose_connect to FALSE.
+ Add -tls_pinned_cert and -tls_pinned_pubkey for x509 and public key pinning.
The values needed for -tls_pinned_cert and -tls_pinned_pubkey is shown
when connecting to a TLS enabled IRC server, but you can also find the
values like this: Start by downloading the certificate from a given IRC
server:
$ openssl s_client -connect irc.example.net:6697 < /dev/null 2>/dev/null | \
openssl x509 > example.cert
Find the value for -tls_pinned_cert:
$ openssl x509 -in example.cert -fingerprint -sha256 -noout
Find the value for -tls_pinned_pubkey:
$ openssl x509 -in example.cert -pubkey -noout | \
openssl pkey -pubin -outform der | \
openssl dgst -sha256 -c | \
tr a-z A-Z
+ Remove support for DANE validation of TLS certificates.
There wasn't enough support in the IRC community to push for this on the
majority of bigger IRC networks. If you believe this should be
reintroduced into irssi, then please come up with an implementation that
does not rely on the libval library. It is causing a lot of troubles for
our downstream maintainers.
+ /names and $[...] now uses utf8 string operations. By Xavier
G. (#40, #411, #471, #480).
+ New setting completion_nicks_match_case (#488).
+ /channel /server /network now support modify subcommand. By
Jari Matilainen (#338, #498).
+ Irssi::signal_remove now works with coderefs. By Tom Feist (shabble, #512).
+ /script reset got an -autorun switch (#540, #538).
+ cap_toggle can now be called from Perl, and fields
cap_active and cap_supported can be inspected (#542).
+ Make it possible to disable empty line completion. By Lauri
Tirkkonen (lotheac, #574).
+ New option sasl_disconnect_on_failure to disconnect when
SASL log-in failed (#514).
- IP addresses are no longer stored when resolve_reverse_lookup is
used.
- Removed broken support for curses (#521).
- Removed broken dummy mode (#526).
- Fix terminal state after suspend (#450, #452).
- Improve Perl library path detection (#479, #132).
- Reconnect now works on unix connections (#493).
- Fix completion warnings (#125, #496, FS#124).
- Fix a crash in the --more-- item (#501).
- Fix a display issue in /unignore (#517, bdo#577202).
- Fix a crash in some netsplits (#529, #500).
- Fix crashes with some invalid config (#550, #551, #563, #564, #587, #581, #570).
- Add support for SASL Fragmentation. By Kenny Root (kruton, #506).
- Improve netsplit dumping (#420, #465).
- Improve responsibility under DCC I/O strain (#578, #159).
- Fix query nick change on open (#580, #586).
- Correct a few help texts.
v0.8.21 2017-01-03 The Irssi team <[email protected]>
- Correct a NULL pointer dereference in the nickcmp function found by
Joseph Bisch (GL#1)
- Correct an out of bounds read in certain incomplete control codes
found by Joseph Bisch (GL#2)
- Correct an out of bounds read in certain incomplete character
sequences found by Hanno Böck and independently by J. Bisch (GL#3)
- Correct an error when receiving invalid nick message (GL#4, #466)
v0.8.20 2016-09-16 The Irssi team <[email protected]>
- Correct the name of an emitted sasl signal (#484)
- Correct the prototype for the 'message private' signal (#515)
- Corrections in away and hilight help text (#477, #518)
- /squery and /servlist commands have been restored (#461).
- Where Irssi would previously only report "System error" on connect,
it will now try harder to retrieve the system error message (#467).
- Fixed issue with +channels not working properly (#533)
- Fixed crash in optchan when item has no server (#485, bdo#826525)
- Fixed random remote crash in the nicklist handling (#529)
- Fixed remote crash due to incorrect bounds checking on
formats, reported by Gabriel Campana and Adrien Guinet from
Quarkslab.
v0.8.19 2016-03-23 The Irssi team <[email protected]>
! If your cursor keys stopped working, try this first: `/bind
meta-O key meta2'
- Fixed regression when joining and parting channels on IRCnet (#435)
- Fixed SASL EXTERNAL. By Mantas Mikulėnas (grawity, #432)
- Fixed regression when not using SASL (#438)
- Fixed incorrect SSL disconnects when using SSL from modules/scripts.
By Will Storey (horgh, #439)
- Fixed regression where proxy_string could not be configured or
certain file transfers could not be accepted (#445, #446)
- Fixed storing layout of !channels (#183, #405)
- Fixed restoration of bracketed paste mode on quit (#449, #457)
- Make the usage of meta-O for cursor keys configurable with
/set term_appkey_mode off
(#430, #459)
v0.8.18 2016-02-13 The Irssi team <[email protected]>
* Modules will now require to define a
void MODULENAME ## _abicheck(int *version)
method to ensure that they are compiled against the correct Irssi
version.
* The signature of "message private" has been changed to
5: server, message, nick, address, target
in order to support "self messages". Module authors should
implement this change if they are using this signal.
* Removing networks will now remove all attached servers and channels
(#45).
* The proxy module now has an /irssiproxy command.
* sb_search has been moved to scripts.irssi.org
* WIN32 has been completely removed (it had not been working and is
lacking a maintainer.)
* Garbage Collection support has been removed. This will hardly have any
effect for anyone given that it has been unsupported for several years.
+ CAP SASL PLAIN login is now supported natively.
+ Paste bracket markers can be requested from terminal with
/set paste_use_bracketed_mode on
+ "Self messages" generated by some bouncers can now be received in the
proper window.
+ Try to split long lines on spaces to avoid words being splitted. Adds
a new option: `split_line_on_space' which defaults to on.
+ Add setting `hilight_nick_matches_everywhere' (#56).
+ The config parser is more robust and prints out better diagnostics on
incorrect config files.
+ Ctrl+^ (FS#721) and Ctrl+J can now be bound.
+ Command history can be cleared with /window history -clear
+ /hilight -mask -line is now supported (FS#275).
+ CHANTYPES are now supported.
+ Improved reload speed of ignores.
+ Add -date feature to /lastlog
+ irssiproxy can be more easily enabled and disabled.
+ Expando for hostname (FS#829).
+ UNIX sockets can now also be specified in the config file.
+ Disable SSLv3 due to the POODLE vulnerability.
+ SSL ciphers can now be specified per server.
+ Added SNI support for SSL.
- /ignore now respects -pattern on merge (#78).
- irssiproxy (BNC) module now uses correct line endings.
- Fix missing lines on large pastes (FS#905).
- Correctly preserve STATUSMSG prefixes (#291).
- Fix infinite recursion in key bindings (FS#817).
- Fix incomplete awaylog caused by buffering.
- Fix calculation of UTF-8 string length display in some cases.
- Fix some Perl warnings related to @ISA.
- EXEC windowitems now get proper references on the Perl side.
- Incremental help file improvements.
- ANSI attributes are now properly reset.
- Fixed regression where text would blink when terminal lacks color
support.
- Permit the usage of Freenode extban syntax in /ban (#150)
- Fixed regression in scriptassist on unload of scripts.
- Fixed regression in -actcolor %n
v0.8.17 2014-10-11 The Irssi team <[email protected]>
+ Document that SSL connections aren't properly handled during /UPGRADE. See Github PR #39.
+ Synchronize scripts with scripts.irssi.org.
+ Performance enhancement of the nicklist as well as the window_item_find function. See Github PR #24.
+ Disallow unloading of static modules.
+ Allow UTF-8 characters in /bind. See Github PR #18.
+ Split overlong outgoing messages instead of silently truncating them.
Adds two new options: 'split_line_end' and 'split_line_start'.
'split_line_end' contains a string added to the end of line fragments.
'split_line_start' contains a string added to the beginning of line
fragments. See Github PR #29.
+ Added special /ignore NO_ACT level to ignore only activity (see /help ignore).
+ Support for 256 and true color terminals (see Github PR #48).
+ Support for italics (see Github PR #58).
+ Rewrote many help files.
- Fixed various compiler warnings and use of deprecated functions.
- Fixed Perl API usage and added PERL_NO_GET_CONTEXT to reduce code size.
- Fixed format_get_text Perl API. See Github PR #23.
- Fixed gui_printtext_after and term_refresh_*() visibility. See Github PR #22.
- Fixed issue where UTF-8 characters was corrupted once for every 32k text. See Github PR #12.
- Fixed redrawing issue with right-aligned statusbar.
- Fixed use-after-free bug with cached settings values. See Github PR #147.
v0.8.16 2014-05-28 The Irssi team <[email protected]>
+ Add -noautosendcmd to /SERVER and /CONNECT. Passing this option will
force Irssi to not execute the content of the autosendcmd chatnet-setting
upon connect.
+ Accept names replies with nick!user@host instead of just nick, if they
are enabled (see bug #805).
+ Set window binds for channel items as sticky when re-creating window
binds as part of /layout save. This fixes the bug where previously saved
channel windows forgets their window number upon reconnect.
+ Add experimental support for DNSSEC DANE validation of certificates.
+ Strip the argument for boolean options (see bug #769).
+ Freenode have been readded to the list of networks in the default
configuration file.
+ Disabled support for the insecure SSLv2 protocol.
+ Various documentation enhancements.
+ Add -ssl_pass to /connect and /server (see bug #305).
- Fix crashing bug that can happen if the terminal height decreases before
the first window is created.
- Fixed minor compiler warnings.
- Fixed possible crashing bug when processing an octal escape sequence.
- Fixed the /ignore -network option (see bug #748).
- Fixed signal handling for /exec'd commands. Irssi now sends the signal to
the process group id instead of the process id.
- Fixed segfault generated by SSL disconnections (see bug #752).
- Fix compilation when build with -Werror=format-security. Patch by
Jaroslav Skarvada.
v0.8.15 2010-04-03 The Irssi team <[email protected]>
+ Add active_window_ignore_refnum option
With active_window_ignore_refnum ON, the current behavior for the
active_window key (meta-a by default) is preserved: it switches to the
window with the highest activity level that was last activated.
With active_window_ignore_refnum OFF, the old behavior is used:
it switches to the window with the highest activity level with the
lowest refnum. (by Matt Sparks, bug #667)
+ Show new Charybdis +q list in channel windows (numerics 728 and 729).
+ Allow servers to belong to multiple networks.
+ Improve paste detection. Irssi now detects a paste if it reads at
least three bytes in a single read; subsequent reads are associated to
the same paste if they happen before 'paste_detect_time' time since
the last read. If no read occurs after 'paste_detect_time' time the
paste buffer is flushed; if there is at least one complete line its