]> jfr.im git - irc/weechat/weechat.git/blob - ReleaseNotes.adoc
core: add CVE id in ChangeLog
[irc/weechat/weechat.git] / ReleaseNotes.adoc
1 = WeeChat Release Notes
2 :author: Sébastien Helleu
3 :email: flashcode@flashtux.org
4 :lang: en
5 :toc: left
6 :docinfo1:
7
8
9 This document lists important changes for each version, that require manual
10 actions (the latest formatted version of this document can be found
11 https://weechat.org/files/releasenotes/ReleaseNotes-devel.html[here]). +
12 It is recommended to read it when upgrading to a new stable
13 version.
14
15 For a complete list of changes, please look at
16 https://weechat.org/files/changelog/ChangeLog-devel.html[ChangeLog]
17 (file _ChangeLog.adoc_ in sources).
18
19
20 [[v3.0.1]]
21 == Version 3.0.1 (2021-01-31)
22
23 Bug fix and maintenance release.
24
25 [[v3.0]]
26 == Version 3.0 (2020-11-11)
27
28 [[v3.0_script_option_download_enabled]]
29 === New option to enable download of scripts
30
31 A new option has been added to allow the script plugin to download the list of
32 scripts and the scripts themselves (on weechat.org by default).
33
34 This option is `off` by default, so you must opt in if you want to use the
35 `/script` command, even if you upgraded from an old WeeChat version:
36
37 ----
38 /set script.scripts.download_enabled on
39 ----
40
41 [NOTE]
42 When this option is enabled, WeeChat can sometimes download again the list of
43 scripts when you use the `/script` command, even if you don't install a script.
44
45 [[v3.0_irc_commands_allchan_allpv_allserv]]
46 === IRC commands /allchan, /allpv and /allserv
47
48 The command and arguments given to commands `/allchan`, `/allpv` and `/allserv`
49 are now evaluated (see /help on the commands for more information).
50
51 Additionally, a breaking change has been introduced: the leading `/` is now
52 required in these commands, so this allows to send text to buffers without
53 using the command `/msg * xxx`.
54
55 So with previous releases, to say "hello" on all channels:
56
57 ----
58 /allchan msg * hello
59 ----
60
61 Now it can be done like this:
62
63 ----
64 /allchan hello
65 ----
66
67 If you want to use a command, you must add explicitly the leading `/`:
68
69 ----
70 /allchan /msg * hello
71 ----
72
73 [[v3.0_trigger_beep]]
74 === Default "beep" trigger
75
76 The command of "beep" trigger is now executed only if the message does NOT
77 contain the tag "notify_none" (in addition to existing conditions).
78
79 You can restore the default "beep" trigger with the following command:
80
81 ----
82 /trigger restore beep
83 ----
84
85 [[v2.9]]
86 == Version 2.9 (2020-07-18)
87
88 [[v2.9_bar_color_bg_inactive]]
89 === New background color for inactive bars
90
91 A new option has been added in bar: _color_bg_inactive_. It is used for window
92 bars, when the window is not the active window.
93
94 By default this color is set to "default" for default bars, except for status
95 and title: the color is set to "darkgray".
96
97 If you upgrade from a previous release, the color will be "default" for all
98 bars, so if you want to use the new default settings, you can do:
99
100 ----
101 /set weechat.bar.title.color_bg_inactive darkgray
102 /set weechat.bar.status.color_bg_inactive darkgray
103 ----
104
105 If you changed the option _color_bg_ in some bars, you should also adjust
106 the new option _color_bg_inactive_, depending on your needs.
107
108 The function "bar_new" in API is updated, so this is an incompatible change:
109 all plugins and scripts calling this function must be updated.
110
111 The following scripts are updated consequently to be compatible with all
112 WeeChat versions:
113
114 * https://weechat.org/scripts/source/buddylist.pl/[buddylist.pl] 2.0
115 * https://weechat.org/scripts/source/buffers.pl/[buffers.pl] 5.7
116 * https://weechat.org/scripts/source/chanmon.pl/[chanmon.pl] 2.6
117 * https://weechat.org/scripts/source/chanop.py/[chanop.py] 0.3.2
118 * https://weechat.org/scripts/source/highmon.pl/[highmon.pl] 2.7
119 * https://weechat.org/scripts/source/iset.pl/[iset.pl] 4.4
120 * https://weechat.org/scripts/source/menu.pl/[menu.pl] 1.0
121 * https://weechat.org/scripts/source/moc_control.py/[moc_control.py] 1.9
122 * https://weechat.org/scripts/source/newsbar.pl/[newsbar.pl] 0.19
123 * https://weechat.org/scripts/source/pv_info.pl/[pv_info.pl] 0.0.6
124 * https://weechat.org/scripts/source/rssagg.pl/[rssagg.pl] 1.2
125 * https://weechat.org/scripts/source/urlbar.py/[urlbar.py] 14
126 * https://weechat.org/scripts/source/urlselect.lua/[urlselect.lua] 0.5
127 * https://weechat.org/scripts/source/vimode.py/[vimode.py] 0.8
128
129 [[v2.9_modifier_weechat_print]]
130 === New modifier_data for modifier "weechat_print"
131
132 The modifier "weechat_print" has been fixed and the content of "modifier_data"
133 sent to the callback has changed (see issue #42).
134
135 This is an incompatible change, therefore all plugins, scripts and triggers
136 using this modifier and the "modifier_data" argument must be updated.
137
138 The old format contained plugin name + ";" + buffer name + ";" + tags:
139
140 ----
141 irc;freenode.#weechat;tag1,tag2,tag3
142 ----
143
144 The new format contains buffer pointer + ";" + tags:
145
146 ----
147 0x123abc;tag1,tag2,tag3
148 ----
149
150 The following scripts are updated consequently to be compatible with all
151 WeeChat versions:
152
153 * https://weechat.org/scripts/source/colorize_lines.pl.html/[colorize_lines.pl] 3.9
154 * https://weechat.org/scripts/source/colorize_nicks.py/[colorize_nicks.py] 27
155 * https://weechat.org/scripts/source/colorizer.rb/[colorizer.rb] 0.2
156 * https://weechat.org/scripts/source/curiousignore.pl/[curiousignore.pl] 0.4
157 * https://weechat.org/scripts/source/format_lines.pl/[format_lines.pl] 1.6
158 * https://weechat.org/scripts/source/identica.py/[identica.py] 0.4.3
159 * https://weechat.org/scripts/source/mass_hl_blocker.pl/[mass_hl_blocker.pl] 0.2
160 * https://weechat.org/scripts/source/noirccolors.py/[noirccolors.py] 0.4
161 * https://weechat.org/scripts/source/parse_relayed_msg.pl/[parse_relayed_msg.pl] 1.9.3
162 * https://weechat.org/scripts/source/unhighlight.py/[unhighlight.py] 0.1.3
163 * https://weechat.org/scripts/source/weemoticons.py/[weemoticons.py] 0.3
164
165 [[v2.9_api_completion_functions]]
166 === Move of API completion functions
167
168 Completion functions have been added in WeeChat 2.9, to allow relay clients or
169 plugins/scripts to complete a string, without using the buffer input.
170
171 Therefore two functions have been renamed in API and moved to the new
172 "completion" category:
173
174 * function _hook_completion_get_string_ renamed to _completion_get_string_
175 * function _hook_completion_list_add_ renamed to _completion_list_add_
176
177 [NOTE]
178 The old names are still valid for compatibility reasons, but it is recommended
179 to use only the new names as the old ones may be removed in an upcoming release.
180
181 [[v2.9_gnutls_required_dependency]]
182 === GnuTLS is now a required dependency
183
184 The build options `ENABLE_GNUTLS` (in CMake) and `--disable-gnutls` (in autotools)
185 have been removed. That means now GnuTLS is always compiled and used in WeeChat.
186
187 Motivations:
188
189 * communications encryption should be built-in, not optional
190 * GnuTLS library should be available everywhere
191 * reduce complexity of code and tests of builds.
192
193 [[v2.9_trigger_cmd_pass_remove_set_command]]
194 === The trigger "cmd_pass" does not hide any more values of /set command
195
196 The default trigger "cmd_pass" does not hide any more values of options in `/set`
197 command which contain "password" in the name.
198
199 The reason is that it was masking values of options that contains the word
200 "password" but the value is not a password and does not contain sensitive data,
201 for example these options were affected:
202
203 * irc.look.nicks_hide_password
204 * relay.network.allow_empty_password
205 * relay.network.password_hash_algo
206 * relay.network.password_hash_iterations
207
208 Since all real password options are now evaluated, it is recommended to use
209 secure data to store the passwords ciphered in config file. +
210 By using secure data, the passwords are never displayed on screen (even with
211 `/set` command) nor written in log files.
212
213 For example you can do that:
214
215 ----
216 /secure passphrase my_secret_passphrase
217 /secure set freenode my_password
218 /set irc.server.freenode.sasl_password "${sec.data.freenode}"
219 ----
220
221 This will be displayed like that in WeeChat, using the new regex value of
222 _cmd_pass_ trigger:
223
224 ----
225 /secure passphrase ********************
226 /secure set freenode ***********
227 /set irc.server.freenode.sasl_password "${sec.data.freenode}"
228 ----
229
230 If you want to use the new trigger regex after upgrade, you can do:
231
232 ----
233 /trigger restore cmd_pass
234 ----
235
236 If ever you prefer the old trigger regex, you can change it like that:
237
238 ----
239 /set trigger.trigger.cmd_pass.regex "==^((/(msg|m|quote) +(-server +[^ ]+ +)?nickserv +(id|identify|set +password|ghost +[^ ]+|release +[^ ]+|regain +[^ ]+|recover +[^ ]+) +)|/oper +[^ ]+ +|/quote +pass +|/set +[^ ]*password[^ ]* +|/secure +(passphrase|decrypt|set +[^ ]+) +)(.*)==${re:1}${hide:*,${re:+}}"
240 ----
241
242 [[v2.9_trigger_command_eval]]
243 === Evaluation of trigger command arguments
244
245 The arguments for a trigger command (except the command itself) are now evaluated.
246
247 That means you can use for example new lines in the command description, like that:
248
249 ----
250 /trigger add test command "test;test command;arg1 arg2;arg1: description 1${\n}arg2: description 2"
251 ----
252
253 The command `/help test` will display this help in WeeChat:
254
255 ----
256 [trigger] /test arg1 arg2
257
258 test command
259
260 arg1: description 1
261 arg2: description 2
262 ----
263
264 [[v2.9_relay_weechat_protocol_handshake_nonce]]
265 === Add of handshake and nonce in weechat relay protocol
266
267 ==== Handshake
268
269 A _handshake_ command has been added in weechat relay protocol. +
270 The client should send this command before the _init_ to negotiate the way to
271 authenticate with the relay server.
272
273 See the link:weechat_relay_protocol.en.html#command_handshake[handshake command]
274 in Relay protocol doc for more information.
275
276 ==== Server "nonce"
277
278 Furthermore, a "nonce" is now generated for each client connecting and must be
279 used by the client in case of hashed password in the _init_ command. +
280 The goal is to prevent replay attacks in case someone manages to read exchanges
281 between the client and relay.
282
283 When hashing the password, the client must use salt composed by this nonce
284 as binary (it is hexadecimal and must be base16-decoded), concatenated with
285 a client nonce after this one. +
286 So the hash is computed on: (`server nonce` + `client nonce` + `password`).
287
288 This salt is now mandatory even for algorithms `SHA256` and `SHA512`; this is
289 a breaking change in protocol, needed for security reasons.
290
291 See the link:weechat_relay_protocol.en.html#command_init[init command]
292 in Relay protocol doc for more information.
293
294 [[v2.8]]
295 == Version 2.8 (2020-03-29)
296
297 [[v2.8_auto_connection_to_servers]]
298 === Auto connection to servers
299
300 The command line option `-a` (or `--no-connect`), which can also be used in the
301 `/plugin` command, is now used to set a new info called `auto_connect`
302 (see the function "info_get" in the Plugin API reference).
303
304 Therefore, the option is not sent any more to the function `weechat_plugin_init`
305 of plugins. +
306 The plugins using this option must now get the info `auto_connect` and check
307 if the value is "1" (a string with just `1`).
308
309 The purpose of this change is to allow scripts as well to check this info on
310 startup, and connect or not, depending on the value (see issue #1453).
311
312 To be compatible with WeeChat ≤ 2.7, the script can do this, for example
313 in Python:
314
315 [source,python]
316 ----
317 auto_connect = weechat.info_get("auto_connect", "") != "0"
318 ----
319
320 The variable `auto_connect` will be set like that, depending on the WeeChat
321 version:
322
323 * WeeChat ≤ 2.7: always `True` because the info is an empty string (it does not
324 exist), which is different from "0",
325 * WeeChat ≥ 2.8: `True` by default, and `False` if `-a` or `--no-connect` is
326 given by the user (either on command line or when loading the plugin).
327
328 [[v2.7.1]]
329 == Version 2.7.1 (2020-02-20)
330
331 Bug fix and maintenance release.
332
333 [[v2.7]]
334 == Version 2.7 (2019-12-08)
335
336 [[v2.7_cmake_errors]]
337 === CMake errors on missing dependencies
338
339 When compiling WeeChat with CMake (which is the recommended way), errors are
340 now displayed on any missing dependency, if the optional feature was enabled
341 (most features are automatically enabled, except documentation, man page and
342 tests).
343
344 Any error on a missing dependency is fatal, so WeeChat can not be compiled.
345 This is a new behavior compared to old versions, where any missing dependency
346 was silently ignored and the compilation was possible anyway.
347
348 For example if PHP is not installed on your system, CMake will display an error
349 on missing PHP library:
350
351 ----
352 -- checking for one of the modules 'php7'
353 CMake Warning at cmake/FindPHP.cmake:57 (message):
354 Could not find libphp7. Ensure PHP >=7.0.0 development libraries are
355 installed and compiled with `--enable-embed`. Ensure `php-config` is in
356 `PATH`. You may set `-DCMAKE_LIBRARY_PATH=...` to the directory containing
357 libphp7.
358 Call Stack (most recent call first):
359 src/plugins/CMakeLists.txt:157 (find_package)
360
361
362 CMake Error at src/plugins/CMakeLists.txt:161 (message):
363 Php not found
364 ----
365
366 Then you can either install PHP or explicitly disable PHP if you don't need this
367 plugin, using this cmake option:
368
369 ----
370 cmake .. -DENABLE_PHP=OFF
371 ----
372
373 [[v2.7_python3_callbacks_strings]]
374 === Strings received in Python 3 callbacks
375
376 The strings sent to script callbacks in Python 3 are now automatically converted
377 according to the content:
378
379 * if the string is valid UTF-8, it is sent as `str` (legacy behavior)
380 * if the string is not valid UTF-8, it is sent as `bytes` (new).
381
382 In some cases only, the string may not be valid UTF-8, so it is received as
383 `bytes` in the callback, which must take care of that.
384
385 For more information, see the WeeChat scripting guide: chapter about strings
386 received in callbacks (see also issue #1389).
387
388 Note: there are no changes for Python 2 (which is now deprecated and should not
389 be used any more), the strings sent to callbacks are always of type `str`, and
390 may contain invalid UTF-8 data, in the cases mentioned in the WeeChat scripting
391 guide.
392
393 [[v2.7_irc_message_decoding]]
394 === IRC message decoding/encoding
395
396 A new server option called "charset_message" has been added, replacing the
397 option _irc.network.channel_encode_.
398
399 This new server option has three possible values:
400
401 * _message_ (default): the whole IRC message is decoded/encoded, this is the
402 new default behavior; in case of problem with channel names, try to use
403 _text_ instead
404 * _channel_: the message is decoded/encoded starting at the channel name (or
405 the text if no channel is present); this is like setting the old option
406 _irc.network.channel_encode_ to _on_
407 * _text_: the message is decoded/encoded starting from the text (for example
408 the user message); this is like setting the old option
409 _irc.network.channel_encode_ to _off_ (so this was the default behavior
410 in previous versions)
411
412 [[v2.7_xfer_file_receive_suffix]]
413 === Suffix for files received via DCC
414
415 Files received via DCC (xfer plugin) now have a suffix ".part" during the
416 transfer. When the transfer is successful, the suffix is removed.
417
418 This suffix can be customized with the new option
419 _xfer.file.download_temporary_suffix_.
420
421 If you prefer the legacy behavior (no suffix added), you can set an empty value
422 in the new option:
423
424 ----
425 /set xfer.file.download_temporary_suffix ""
426 ----
427
428 [[v2.6]]
429 == Version 2.6 (2019-09-08)
430
431 [[v2.6_python3_default]]
432 === Python 3 by default
433
434 Python 3 is now used by default to compile the "python" plugin (no fallback
435 on Python 2).
436
437 The CMake option `ENABLE_PYTHON3` has been renamed to `ENABLE_PYTHON2`
438 (configure option `--enable-python2`). If this option is enabled, the "python"
439 plugin is built with Python 2 (no fallback on Python 3).
440
441 [[v2.6_nick_colors]]
442 === Nick colors
443
444 The function to compute the colors based on the nick letters has been fixed
445 (now the function uses only a 64-bit integer even if the underlying architecture
446 is 32-bit).
447
448 If you're running WeeChat on a 32-bit architecture and want to keep same colors
449 as the previous releases, you can use one of the two new hash values.
450
451 If you were using "djb2", you can switch to "djb2_32":
452
453 ----
454 /set weechat.look.nick_color_hash djb2_32
455 ----
456
457 If you were using "sum", you can switch to "sum_32":
458
459 ----
460 /set weechat.look.nick_color_hash sum_32
461 ----
462
463 [[v2.5]]
464 == Version 2.5 (2019-06-06)
465
466 [[v2.5_aspell_plugin_renamed]]
467 === Aspell plugin renamed to Spell
468
469 The "aspell" plugin has been renamed to "spell", a more generic term, because
470 it supports aspell and also enchant.
471
472 Consequently, the following things have been renamed as well:
473
474 * file _aspell.conf_ renamed to _spell.conf_; the content of the
475 file has not changed, so you can just rename the file to keep your changes
476 * options _aspell.*_ renamed to _spell.*_
477 * command `/aspell` renamed to `/spell`
478 * default key kbd:[Alt+s] changed to `/mute spell toggle`
479 * bar item _aspell_dict_ renamed to _spell_dict_
480 * bar item _aspell_suggest_ renamed to _spell_suggest_
481 * info _aspell_dict_ renamed to _spell_dict_
482
483 If you are upgrading from a previous release, you can copy the config file
484 before doing `/upgrade`, in WeeChat:
485
486 ----
487 /save aspell
488 /exec -sh cp ~/.weechat/aspell.conf ~/.weechat/spell.conf
489 /upgrade
490 ----
491
492 If you already upgraded WeeChat:
493
494 ----
495 /exec -sh cp ~/.weechat/aspell.conf ~/.weechat/spell.conf
496 /reload spell
497 ----
498
499 Once configuration is OK, you can delete the file _~/.weechat/aspell.conf_.
500
501 Then you can search if you are using "aspell" in values of options:
502
503 ----
504 /fset =aspell
505 ----
506
507 If there are options displayed, replace "aspell" by "spell" in values.
508
509 The default key kbd:[Alt+s] can be changed to the new `/spell` command:
510
511 ----
512 /key bind meta-s /mute spell toggle
513 ----
514
515 [[v2.5_xfer_option_speed_limit]]
516 === Speed limit option for DCC files
517
518 The option _xfer.network.speed_limit_ has been renamed to
519 _xfer.network.speed_limit_send_.
520
521 If you changed the value of this option, you must set it again after upgrade.
522
523 A new option _xfer.network.speed_limit_recv_ has been added to limit the
524 speed of received files.
525
526 [[v2.5_hook_info_allocated_string]]
527 === Allocated string in hook info and function info_get
528
529 The hook info callback now returns an allocated string, which must be freed
530 after use (in previous versions, a pointer to a static string was returned).
531
532 Consequently, the function info_get returns an allocated string, which must
533 be freed after use.
534
535 This affects only C code, no changes are required in scripts.
536
537 [[v2.4]]
538 == Version 2.4 (2019-02-17)
539
540 [[v2.4_nick_completer]]
541 === Nick completer
542
543 A space is not added automatically any more when you complete a nick at the
544 beginning of command line. +
545 Purpose of this change is to be more flexible: you can choose whether the space
546 is added or not (it was always added in previous releases).
547
548 The default value of option `weechat.completion.nick_completer` has been changed
549 to add the space by default, but the value of option is not changed automatically
550 on upgrade.
551
552 So you can run this command if you upgraded from an old version
553 and want the space still added automatically:
554
555 ----
556 /set weechat.completion.nick_completer ": "
557 ----
558
559 [[v2.4_api_base64_functions]]
560 === Base64 API functions
561
562 The functions to encode/decode base64 strings have been renamed and now support
563 base 16, 32, and 64.
564
565 New functions in C API, supporting base 16, 32, and 64:
566
567 * string_base_encode
568 * string_base_decode
569
570 Functions removed from C API:
571
572 * string_encode_base64
573 * string_decode_base64
574
575 [[v2.3]]
576 == Version 2.3 (2018-10-21)
577
578 No release note.
579
580 [[v2.2]]
581 == Version 2.2 (2018-07-14)
582
583 [[v2.2_default_hotlist_conditions]]
584 === Default conditions for hotlist
585
586 The default value for option `weechat.look.hotlist_add_conditions` has been
587 changed to take care about the number of connected clients on the relay
588 with weechat protocol: if at least one client is connected, the buffer is
589 always added to the hotlist.
590
591 The new value contains three conditions, if one of them is true, the buffer
592 is added to the hotlist:
593
594 * `${away}`: true if you are away on the server matching the buffer,
595 * `${buffer.num_displayed} == 0`: true if the buffer is not displayed in any
596 window
597 * `${info:relay_client_count,weechat,connected} > 0`: true if at least
598 one client is connected on a weechat relay (new condition).
599
600 To use the new default value, you can reset the option with this command:
601
602 ----
603 /unset weechat.look.hotlist_add_conditions
604 ----
605
606 Or set explicitly the value:
607
608 ----
609 /set weechat.look.hotlist_add_conditions "${away} || ${buffer.num_displayed} == 0 || ${info:relay_client_count,weechat,connected} > 0"
610 ----
611
612 [[v2.2_default_triggers]]
613 === Default triggers
614
615 The existing triggers "cmd_pass" and "msg_auth" have been updated to hide
616 password in command `/msg nickserv set password` and support the option
617 `-server xxx`.
618
619 You can restore the default triggers with the following command:
620
621 ----
622 /trigger restore cmd_pass msg_auth
623 ----
624
625 [[v2.2_irc_signals_tags]]
626 === Tags in IRC "in" signals
627
628 The IRCv3 tags are now sent in these IRC signals for received messages
629 (_xxx_ is IRC server name, _yyy_ is IRC command name):
630
631 * _xxx,irc_in_yyy_
632 * _xxx,irc_in2_yyy_
633 * _xxx,irc_raw_in_yyy_
634 * _xxx,irc_raw_in2_yyy_
635
636 This could break plugins or scripts that parse IRC messages and don't expect
637 to receive tags (even if tags *are* part of the IRC message, so this was a bug
638 in the IRC signals).
639
640 See issue #787 for more information.
641
642 [NOTE]
643 It is recommended for plugins and scripts to use the WeeChat IRC parser:
644 see the function "info_get_hashtable" in the Plugin API reference.
645
646 Now the whole IRC message is received by the signal callback, for example:
647
648 ----
649 @tag1=abc;tag2=def :nick!user@host PRIVMSG #test :this is a test
650 ----
651
652 In older releases, this message was received:
653
654 ----
655 :nick!user@host PRIVMSG #test :this is a test
656 ----
657
658 [[v2.2_debian_headless_package]]
659 === New Debian package for headless version
660
661 A new Debian package has been added: _weechat-headless_ which contains the
662 binary _weechat-headless_ and its man page.
663
664 In version 2.1, this binary was in the package _weechat-curses_.
665
666 [[v2.1]]
667 == Version 2.1 (2018-03-18)
668
669 [[v2.1_option_name_completion]]
670 === Completion for /set and /help commands
671
672 A new option weechat.completion.partial_completion_templates has been added to
673 force partial completion on some templates. By default, the option name
674 completed in `/set` and `/help` commands are now using partial completion.
675
676 If you prefer old behavior, you can remove the templates from the new option
677 with this command:
678
679 ----
680 /set weechat.completion.partial_completion_templates ""
681 ----
682
683 For more information about this feature, you can read help with:
684
685 ----
686 /help weechat.completion.partial_completion_templates
687 ----
688
689 [[v2.1_script_plugin_check_license]]
690 === Option to check license of scripts loaded
691
692 A configuration file has been added for each script plugin: _python.conf_,
693 _perl.conf_, _ruby.conf_, ...
694
695 Therefore the option to check license of loaded scripts has been moved from
696 _plugins.var.<language>.check_license_ (type: string) to the plugin
697 configuration file (type: boolean, default is _off_).
698
699 List of options moved:
700
701 * _plugins.var.python.check_license_ (string) moved to _python.look.check_license_ (boolean)
702 * _plugins.var.perl.check_license_ (string) moved to _perl.look.check_license_ (boolean)
703 * _plugins.var.ruby.check_license_ (string) moved to _ruby.look.check_license_ (boolean)
704 * _plugins.var.lua.check_license_ (string) moved to _lua.look.check_license_ (boolean)
705 * _plugins.var.tcl.check_license_ (string) moved to _tcl.look.check_license_ (boolean)
706 * _plugins.var.guile.check_license_ (string) moved to _guile.look.check_license_ (boolean)
707 * _plugins.var.javascript.check_license_ (string) moved to _javascript.look.check_license_ (boolean)
708 * _plugins.var.php.check_license_ (string) moved to _php.look.check_license_ (boolean)
709
710 [[v2.0.1]]
711 == Version 2.0.1 (2017-12-20)
712
713 Bug fix and maintenance release.
714
715 [[v2.0]]
716 == Version 2.0 (2017-12-03)
717
718 [[v2.0_fset_plugin]]
719 === Fset plugin
720
721 A new plugin "fset" has been added, it replaces the script iset.pl and has many
722 new features.
723
724 By default the fset plugin changes the behavior of `/set` command when it is
725 used with only an option name: it opens the fset buffer if at least one option
726 is found.
727
728 The old behavior was to display the list of options in the core buffer.
729
730 If you prefer the old behavior, you can restore it with this command:
731
732 ----
733 /set fset.look.condition_catch_set ""
734 ----
735
736 For more information about this feature, you can read help with:
737
738 ----
739 /help fset.look.condition_catch_set
740 ----
741
742 [[v2.0_debian_packaging]]
743 === Split of scripting Debian packages
744
745 The Debian packaging has changed (for now only on weechat.org repositories,
746 not in Debian official repositories). +
747 The package _weechat-plugins_ has been split into 9 packages:
748
749 - weechat-plugins (with only the following plugins: aspell, exec, fifo, relay,
750 script, trigger)
751 - weechat-python
752 - weechat-perl
753 - weechat-ruby
754 - weechat-lua
755 - weechat-tcl
756 - weechat-guile
757 - weechat-javascript
758 - weechat-php.
759
760 If you are using the packages from weechat.org, you will have to install
761 manually the scripting packages (according to the languages you'll use
762 in WeeChat), for example Python/Perl only:
763
764 ----
765 sudo apt-get install weechat-python weechat-perl
766 ----
767
768 For development packages:
769
770 ----
771 sudo apt-get install weechat-devel-python weechat-devel-perl
772 ----
773
774 [[v2.0_buflist_eval]]
775 === Evaluation in buflist
776
777 The evaluation of expressions in buflist options is not recursive any more,
778 to prevent too many evaluations, for example in buffer variables
779 (see issue #1060 for more information). +
780 If you are using custom variables/options containing evaluated expressions,
781 like `${some.config.option}`, and if this option contains evaluated strings (`${...}`),
782 you must evaluate them with: `${eval:${some.config.option}}`.
783
784 [NOTE]
785 The default buflist formats (`${format_buffer}`, `${format_name}`,
786 `${format_hotlist}`, ...) are automatically evaluated in options _buflist.format.buffer_,
787 _buflist.format.buffer_current_ and _buflist.format.hotlist_.
788
789 [[v2.0_hook_connect]]
790 === Function hook_connect
791
792 In scripts, the arguments _status_, _gnutls_rc_ and _sock_ sent to the callback
793 of _hook_connect_ are now integers (they were strings in older releases). +
794 To be compatible with all versions, it is recommended to convert the argument
795 to integer before using it, for example in Python: `int(sock)`.
796
797 [[v2.0_hook_fd]]
798 === Function hook_fd
799
800 In scripts, the argument _fd_ sent to the callback of _hook_fd_ is now
801 an integer (it was a string in older releases). +
802 To be compatible with all versions, it is recommended to convert the argument
803 to integer before using it, for example in Python: `int(fd)`.
804
805 [[v1.9.1]]
806 == Version 1.9.1 (2017-09-23)
807
808 Bug fix and maintenance release.
809
810 [[v1.9]]
811 == Version 1.9 (2017-06-25)
812
813 No release note.
814
815 [[v1.8]]
816 == Version 1.8 (2017-05-13)
817
818 [[v1.8_buflist_plugin]]
819 === Buflist plugin
820
821 A new plugin called "buflist" has been added, it replaces the script "buffers.pl".
822
823 If the script is installed, you will see two sidebars with list of buffers.
824
825 If you fell in love with buflist and that the script buffers.pl is installed,
826 you can uninstall the script and remove its bar with these commands:
827
828 ----
829 /script remove buffers.pl
830 /bar del buffers
831 ----
832
833 If you don't want the list of buffers, you can disable buflist:
834
835 ----
836 /set buflist.look.enabled off
837 ----
838
839 To save extra memory, you can even unload the buflist plugin, remove the bar and
840 prevent the plugin from loading on next startup:
841
842 ----
843 /plugin unload buflist
844 /bar del buflist
845 /set weechat.plugin.autoload "*,!buflist"
846 ----
847
848 [[v1.8_options]]
849 === Options
850
851 The option _script.scripts.url_force_https_ has been removed because now the
852 site weechat.org can only be used with HTTPS. +
853 Both HTTP and HTTPS protocols are allowed in the option _script.scripts.url_.
854 For http://weechat.org/ an automatic redirection to https://weechat.org/ will
855 occur, so you should check that the CA certificates are properly installed
856 on your machine.
857
858 Aspell option with color for suggestion on a misspelled word has been renamed:
859
860 * _aspell.color.suggestions_ has been renamed to _aspell.color.suggestion_
861
862 [[v1.7.1]]
863 == Version 1.7.1 (2017-04-22)
864
865 Bug fix and maintenance release.
866
867 [[v1.7]]
868 == Version 1.7 (2017-01-15)
869
870 [[v1.7_fifo_options]]
871 === FIFO options
872
873 A new configuration file "fifo.conf" has been added and the old option
874 _plugins.var.fifo.fifo_ has been moved to _fifo.file.enabled_.
875
876 A new option _fifo.file.path_ can be used to customize the FIFO pipe
877 path/filename.
878
879 [[v1.7_default_triggers]]
880 === Default triggers
881
882 A new trigger "cmd_pass_register" has been added to hide only password and not
883 email in command `/msg nickserv register password email`. +
884 The existing trigger "cmd_pass" has been updated to hide password in all
885 commands except `/msg nickserv register`.
886
887 You can add the new trigger and restore the other one with the following
888 command:
889
890 ----
891 /trigger restore cmd_pass_register cmd_pass
892 ----
893
894 [[v1.6]]
895 == Version 1.6 (2016-10-02)
896
897 [[v1.6_irc_server_default_msg]]
898 === IRC kick/part/quit default messages
899
900 Server options with default messages for kick/part/quit have been renamed:
901
902 * options by default for all servers:
903 ** _irc.server_default.default_msg_kick_ has been renamed to _irc.server_default.msg_kick_
904 ** _irc.server_default.default_msg_part_ has been renamed to _irc.server_default.msg_part_
905 ** _irc.server_default.default_msg_quit_ has been renamed to _irc.server_default.msg_quit_
906 * options in each server:
907 ** _irc.server.xxx.default_msg_kick_ has been renamed to _irc.server.xxx.msg_kick_
908 ** _irc.server.xxx.default_msg_part_ has been renamed to _irc.server.xxx.msg_part_
909 ** _irc.server.xxx.default_msg_quit_ has been renamed to _irc.server.xxx.msg_quit_
910
911 If you changed the value of these options, you must set them again after upgrade.
912
913 [[v1.6_api_printf]]
914 === Printf API functions
915
916 Some "printf" functions have been removed from C API (there were not in scripting API):
917
918 * printf_date
919 * printf_tags
920
921 The function "printf_date_tags" must now be used instead of these functions
922 (the two functions removed were just C macros on function "printf_date_tags"
923 with tags set to NULL for "printf_date" and date set to 0 for "printf_tags").
924
925 [[v1.5]]
926 == Version 1.5 (2016-05-01)
927
928 [[v1.5_nick_coloring]]
929 === Nick coloring moved to core
930
931 The nick coloring feature has been moved from irc plugin to core.
932
933 Two options have been moved from irc plugin (irc.conf) to core (weechat.conf),
934 and you must set new value if you customized them:
935
936 * _irc.look.nick_color_force_ moved to _weechat.look.nick_color_force_
937 * _irc.look.nick_color_hash_ moved to _weechat.look.nick_color_hash_
938 * _irc.look.nick_color_stop_chars_ moved to _weechat.look.nick_color_stop_chars_
939
940 The default value for option _weechat.look.nick_color_hash_ is now `djb2`
941 instead of `sum`.
942
943 The following info names (used by API function "info_get") are renamed as well:
944
945 * _irc_nick_color_ renamed to _nick_color_
946 * _irc_nick_color_name_ renamed to _nick_color_name_
947
948 [NOTE]
949 The old info _irc_nick_color_ and _irc_nick_color_name_ are kept for
950 compatibility (especially scripts) and will be removed in an upcoming release.
951
952 [[v1.5_callbacks_pointer]]
953 === Pointer in callbacks
954
955 A pointer has been added in all callbacks used by scripts, so the callbacks
956 will receive an extra _const void *pointer_ before the _void *data_
957 (in the C API only, not scripting API).
958
959 This is used to remove linked list of callbacks in scrips (improve speed,
960 reduce memory usage).
961
962 Following functions are changed in the C API:
963
964 * exec_on_files
965 * config_new
966 * config_new_section
967 * config_new_option
968 * hook_command
969 * hook_command_run
970 * hook_timer
971 * hook_fd
972 * hook_process
973 * hook_process_hashtable
974 * hook_connect
975 * hook_print
976 * hook_signal
977 * hook_hsignal
978 * hook_config
979 * hook_completion
980 * hook_modifier
981 * hook_info
982 * hook_info_hashtable
983 * hook_infolist
984 * hook_hdata
985 * hook_focus
986 * unhook_all
987 * buffer_new
988 * bar_item_new
989 * upgrade_new
990 * upgrade_read
991
992 The function `unhook_all` has a new argument `const char *subplugin` to remove
993 only hooks created by this "subplugin" (script).
994
995 [[v1.5_bar_item_away]]
996 === Bar item "away"
997
998 The bar item "away" has been moved from irc plugin to core (so that away status
999 can be displayed for any plugin, using the buffer local variable "away").
1000
1001 Two options have been moved from irc plugin (irc.conf) to core (weechat.conf):
1002
1003 * _irc.look.item_away_message_ moved to _weechat.look.item_away_message_
1004 * _irc.color.item_away_ moved to _weechat.color.item_away_
1005
1006 [[v1.5_default_triggers]]
1007 === Default triggers
1008
1009 The default triggers "cmd_pass" and "msg_auth" have been updated to include
1010 nickserv commands "recover" and "regain".
1011
1012 You can restore them with the following command:
1013
1014 ----
1015 /trigger restore cmd_pass msg_auth
1016 ----
1017
1018 [[v1.4]]
1019 == Version 1.4 (2016-01-10)
1020
1021 [[v1.4_irc_alternate_nicks]]
1022 === IRC alternate nicks
1023
1024 The option _irc.network.alternate_nick_ has been moved into servers
1025 (_irc.server_default.nicks_alternate_ and _irc.server.xxx.nicks_alternate_).
1026
1027 If you disabled this option, you must switch it off again, globally or by
1028 server.
1029
1030 Globally (default value for all servers):
1031
1032 ----
1033 /set irc.server_default.nicks_alternate off
1034 ----
1035
1036 For a specific server:
1037
1038 ----
1039 /set irc.server.freenode.nicks_alternate off
1040 ----
1041
1042 [[v1.3]]
1043 == Version 1.3 (2015-08-16)
1044
1045 [[v1.3_irc_channels_encoding]]
1046 === IRC channels encoding
1047
1048 If you are using exotic charsets in your channel names (anything different from
1049 UTF-8, like ISO charset), you should turn on a new option:
1050
1051 ----
1052 /set irc.network.channel_encode on
1053 ----
1054
1055 This will force WeeChat to decode/encode the channel name
1056 (like WeeChat 1.2 or older did).
1057
1058 See these issues for more information: issue #482, issue #218.
1059
1060 [NOTE]
1061 It is *highly recommended* to use only UTF-8 in WeeChat (wherever you can),
1062 because everything is stored as UTF-8 internally.
1063
1064 [[v1.3_alias_command]]
1065 === Alias command
1066
1067 The command `/alias` has been updated to list, add and remove aliases.
1068 Therefore the command `/unalias` has been removed.
1069
1070 To add an alias, the argument `add` must be used in command `/alias` before the
1071 name, for example:
1072
1073 ----
1074 /alias add split /window splith
1075 ----
1076
1077 And the alias is removed with this command:
1078
1079 ----
1080 /alias del split
1081 ----
1082
1083 [[v1.3_script_path]]
1084 === Script path
1085
1086 The option _script.scripts.dir_ has been renamed to _script.scripts.path_
1087 (and the content is now evaluated, see `/help eval`).
1088
1089 If you changed the value of this option, you must set it again after upgrade.
1090
1091 [[v1.2]]
1092 == Version 1.2 (2015-05-10)
1093
1094 The word chars are now customizable with two options:
1095
1096 * weechat.look.word_chars_highlight
1097 * weechat.look.word_chars_input
1098
1099 The behavior has changed for command line: now any non-word char is used as
1100 delimiter for keys to move to previous/next word or delete previous/next word.
1101
1102 You can restore the old behavior (only use spaces as delimiters) with this
1103 command:
1104
1105 ----
1106 /set weechat.look.word_chars_input "!\u00A0,!\x20,*"
1107 ----
1108
1109 [[v1.1.1]]
1110 == Version 1.1.1 (2015-01-25)
1111
1112 Bug fix and maintenance release.
1113
1114 [[v1.1]]
1115 == Version 1.1 (2015-01-11)
1116
1117 [[v1.1_triggers_regex_format]]
1118 === New format for regex replacement in triggers
1119
1120 A new format is used in regex replacement to use regex groups, this format
1121 is incompatible with version 1.0.
1122
1123 The existing triggers are *NOT automatically updated*.
1124
1125 [width="60%",cols="2,2,3",options="header"]
1126 |===
1127 | Old format | New format | Examples (new format)
1128 | `$0` ... `$99` | `${re:0}` ... `${re:99}` | `${re:1}`
1129 | `$+` | `${re:+}` | `${re:+}`
1130 | `$.*N` | `${hide:*,${re:N}}` | `${hide:*,${re:2}}` +
1131 `${hide:-,${re:+}}`
1132 |===
1133
1134 Moreover, default triggers used to hide passwords have been fixed for *BSD
1135 operating systems.
1136
1137 You can restore them with the following command:
1138
1139 ----
1140 /trigger restore cmd_pass msg_auth server_pass
1141 ----
1142
1143 If you added triggers with the old regex replacement format, you must update
1144 them manually.
1145
1146 [[v1.1_trigger_beep]]
1147 === Default "beep" trigger
1148
1149 The command of "beep" trigger is now executed only if the message is displayed
1150 (not filtered with /filter).
1151
1152 You can restore the default "beep" trigger with the following command:
1153
1154 ----
1155 /trigger restore beep
1156 ----
1157
1158 [[v1.1_commands_return_code]]
1159 === Return code of commands
1160
1161 The API function _weechat_command_ now sends the value returned return by
1162 command callback.
1163
1164 WeeChat does not display any more an error when a command returns
1165 _WEECHAT_RC_ERROR_. Consequently, all plugins/scripts should display an
1166 explicit error message before returning _WEECHAT_RC_ERROR_.
1167
1168 For C plugins, two macros have been added in weechat-plugin.h:
1169 _WEECHAT_COMMAND_MIN_ARGS_ and _WEECHAT_COMMAND_ERROR_.
1170
1171 [[v1.1_inline_commands_completion]]
1172 === Completion of inline commands
1173
1174 WeeChat now completes by default inline commands (not only at beginning of
1175 line).
1176
1177 When this feature is enabled, there is no more automatic completion of
1178 absolute paths (except if you are completing a path inside a command argument,
1179 like `/dcc send <nick> <path>`).
1180
1181 To restore the old behavior (no completion of inline commands):
1182
1183 ----
1184 /set weechat.completion.command_inline off
1185 ----
1186
1187 [[v1.1_relay_irc_backlog_tags]]
1188 === Relay option relay.irc.backlog_tags
1189
1190 The option _relay.irc.backlog_tags_ is now a list separated by commas
1191 (it was separated by semicolons in older versions).
1192
1193 If you are using a list of tags in this option, you must adjust the value
1194 manually.
1195
1196 [[v1.1_relay_ipv6_ipv4]]
1197 === IPv4-mapped IPv6 client address in relay
1198
1199 The string "::ffff:" has been removed from IPv4-mapped IPv6 client address
1200 in relay plugin.
1201
1202 If you are using "::ffff:" in option _relay.network.allowed_ips_, you can
1203 remove it.
1204
1205 [[v1.1_irc_temporary_servers]]
1206 === Temporary servers disabled by default with /connect
1207
1208 Creating a temporary server with command `+/connect <address>+` or
1209 `+/connect irc://...+` is now forbidden by default.
1210
1211 A new option has been added to unlock the feature, you can do that for
1212 the old behavior in command `/connect`:
1213
1214 ----
1215 /set irc.look.temporary_servers on
1216 ----
1217
1218 [[v1.1_timeval_microseconds]]
1219 === Microseconds in API timeval functions
1220
1221 The API functions using timeval are now using or returning microseconds,
1222 instead of milliseconds:
1223
1224 * function _util_timeval_diff_: returns microseconds
1225 * function _util_timeval_add_: the argument _interval_ is now expressed in
1226 microseconds.
1227
1228 [[v1.0.1]]
1229 == Version 1.0.1 (2014-09-28)
1230
1231 Bug fix and maintenance release.
1232
1233 [[v1.0]]
1234 == Version 1.0 (2014-08-15)
1235
1236 [[v1.0_irc_channel_type]]
1237 === Channel type not added by default on /join
1238
1239 The channel type is not any more automatically added to a channel name on join
1240 (for example `/join weechat` will not send `/join #weechat`).
1241
1242 If you are lazy and want to automatically add the channel type, you can turn on
1243 the new option:
1244
1245 ----
1246 /set irc.look.join_auto_add_chantype on
1247 ----
1248
1249 [[v1.0_irc_channel_modes_arguments]]
1250 === Hide IRC channel modes arguments
1251
1252 The option _irc.look.item_channel_modes_hide_key_ has been renamed to
1253 _irc.look.item_channel_modes_hide_args_ and is now a string. +
1254 It can now hide arguments for multiple channel modes.
1255
1256 By default, a channel key (mode "k") will hide channel arguments. For old
1257 behavior (never hide arguments, even with a channel key), you can do:
1258
1259 ----
1260 /set irc.look.item_channel_modes_hide_args ""
1261 ----
1262
1263 [[v1.0_jump_first_last_buffer]]
1264 === Jump to first/last buffer
1265
1266 The command `/input jump_last_buffer` has been replaced by `/buffer +`.
1267 You can rebind the key kbd:[Alt+j], kbd:[Alt+l] (`L`):
1268
1269 ----
1270 /key bind meta-jmeta-l /buffer +
1271 ----
1272
1273 [NOTE]
1274 The command `/input jump_last_buffer` still works for compatibility reasons,
1275 but it should not be used any more.
1276
1277 Similarly, a new key has been added to jump to first buffer: kbd:[Alt+j], kbd:[Alt+f].
1278 You can add it with following command:
1279
1280 ----
1281 /key missing
1282 ----
1283
1284 [[v1.0_hotlist_conditions]]
1285 === Hotlist conditions
1286
1287 A new option _weechat.look.hotlist_add_conditions_ has been added. This option
1288 replaces the option _weechat.look.hotlist_add_buffer_if_away_, which has been
1289 removed.
1290
1291 Default conditions are `${away} || ${buffer.num_displayed} == 0`, which means
1292 that a buffer is added in hotlist if you are away ("away" local variable is
1293 set), or if the buffer is not visible on screen (not displayed in any window).
1294
1295 If you have set _weechat.look.hotlist_add_buffer_if_away_ to `off` (to not add
1296 current buffer in hotlist when you are away), then you must manually change the
1297 default conditions with the following command:
1298
1299 ----
1300 /set weechat.look.hotlist_add_conditions "${buffer.num_displayed} == 0"
1301 ----
1302
1303 [[v1.0_trigger_plugin]]
1304 === Rmodifier replaced by Trigger plugin
1305
1306 The trigger plugin replaces the rmodifier plugin, which has been removed
1307 (and trigger has much more features than rmodifier).
1308
1309 Default triggers have same features as default rmodifiers (to hide passwords
1310 in commands and output).
1311
1312 If you added some custom rmodifiers, you must create similar triggers, see
1313 `/help trigger` and the complete trigger doc in the _WeeChat User's guide_.
1314
1315 [NOTE]
1316 If on startup you have an error about API mismatch in plugin _rmodifier.so_,
1317 you can manually remove the file (the command `make install` does not remove
1318 obsolete plugins).
1319
1320 [[v1.0_bare_display]]
1321 === Bare display
1322
1323 A bare display mode has been added (for easy text selection and click on URLs),
1324 the new default key is kbd:[Alt+l] (`L`).
1325
1326 Use command `/key missing` to add the key or `/key listdiff` to see differences
1327 between your current keys and WeeChat default keys.
1328
1329 [[v1.0_hook_print]]
1330 === Function hook_print
1331
1332 In scripts, the arguments _displayed_ and _highlight_ sent to the callback of
1333 _hook_print_ are now integers (they were strings in older releases). +
1334 To be compatible with all versions, it is recommended to convert the argument
1335 to integer before testing it, for example in Python: `if int(highlight):`.
1336
1337 [[v0.4.3]]
1338 == Version 0.4.3 (2014-02-09)
1339
1340 [[v0.4.3_colors_messages]]
1341 === Colors in messages
1342
1343 The color code for "reverse video" in IRC message has been fixed: now WeeChat
1344 uses 0x16 like other clients (and not 0x12 any more). +
1345 The code 0x12 is not decoded any more, so if it is received (for example from
1346 an old WeeChat version), it is not displayed as reverse video.
1347
1348 The color code for "underlined text" in input line has been fixed: now WeeChat
1349 uses 0x1F, the same code sent to IRC server.
1350
1351 The default keys for "reverse video" and "underlined text" have changed:
1352
1353 * reverse video: key kbd:[Ctrl+c], kbd:[r] is replaced by kbd:[Ctrl+c], kbd:[v]
1354 * underlined text: key kbd:[Ctrl+c], kbd:[u] is replaced by kbd:[Ctrl+c], kbd:[_]
1355
1356 You can remove the old keys and add the new ones with these commands:
1357
1358 ----
1359 /key unbind ctrl-Cr
1360 /key unbind ctrl-Cu
1361 /key missing
1362 ----
1363
1364 [[v0.4.3_terminal_title]]
1365 === Terminal title
1366
1367 The boolean option _weechat.look.set_title_ has been renamed to
1368 _weechat.look.window_title_ and is now a string.
1369
1370 The content is evaluated and the default value is `WeeChat ${info:version}`.
1371
1372 [NOTE]
1373 Only static content should be used in this option, because the title is
1374 refreshed only when the option is changed.
1375
1376 [[v0.4.3_bar_item_buffer_last_number]]
1377 === New bar item buffer_last_number
1378
1379 The bar item _buffer_count_ now displays the number of opened buffers (each
1380 merged buffer counts 1).
1381
1382 The new bar item _buffer_last_number_ displays the highest buffer number
1383 currently used.
1384
1385 If you want to display last number in the status bar, replace _buffer_count_
1386 by _buffer_last_number_ in your option _weechat.bar.status.items_.
1387
1388 [[v0.4.3_bar_item_buffer_zoom]]
1389 === New bar item buffer_zoom
1390
1391 A new bar item has been added: _buffer_zoom_.
1392 The default value for status bar items becomes:
1393
1394 ----
1395 /set weechat.bar.status.items "[time],[buffer_count],[buffer_plugin],buffer_number+:+buffer_name+(buffer_modes)+{buffer_nicklist_count}+buffer_zoom+buffer_filter,[lag],[hotlist],completion,scroll"
1396 ----
1397
1398 [[v0.4.3_irc_messages_channel_join]]
1399 === IRC messages on channel join
1400
1401 The names are not displayed any more by default on channel join (they are in
1402 nicklist anyway).
1403
1404 Names can be displayed with the value "353" in option
1405 _irc.look.display_join_message_ (which is not in default value). +
1406 The value "366" shows only names count on channel.
1407
1408 If you want to display all messages on join (including names), you can do:
1409
1410 ----
1411 /set irc.look.display_join_message "329,332,333,353,366"
1412 ----
1413
1414 [[v0.4.3_irc_maximum_lag]]
1415 === Maximum lag in IRC
1416
1417 Option _irc.network.lag_max_ has been added.
1418
1419 The value of option _irc.network.lag_reconnect_ (if set to non-zero value) must
1420 be less than or equal to _irc.network.lag_max_, otherwise the reconnection will
1421 never occur.
1422
1423 You should check the value of both options and fix them if needed.
1424
1425 [[v0.4.2]]
1426 == Version 0.4.2 (2013-10-06)
1427
1428 [[v0.4.2_day_change_message]]
1429 === Day change message
1430
1431 The day change message is now dynamically displayed, and therefore is not stored
1432 as a line in buffer any more.
1433
1434 Option _weechat.look.day_change_time_format_ has been split into two options
1435 _weechat.look.day_change_message_{1date|2dates}_ (color codes are allowed in
1436 these options, see `/help eval`).
1437
1438 New color option _weechat.color.chat_day_change_ has been added.
1439
1440 After `/upgrade` from an old version, you will see two messages for each day
1441 change. This is a normal behavior and will not happen again with the next day
1442 changes.
1443
1444 [[v0.4.2_buffer_regex_search]]
1445 === Regex search in buffer
1446
1447 Search with regular expression has been added, and therefore some keys in search
1448 context have been changed.
1449
1450 The key kbd:[Ctrl+r] in search context is now used to switch string/regex search
1451 (instead of searching exact text).
1452
1453 If you never changed keys in search context, you can reset them all with one
1454 command:
1455
1456 ----
1457 /key resetall -yes search
1458 ----
1459
1460 Or the manual method:
1461
1462 ----
1463 /key missing search
1464 /key bindctxt search ctrl-R /input search_switch_regex
1465 ----
1466
1467 To view keys in search context:
1468
1469 ----
1470 /key list search
1471 ----
1472
1473 For more information, see the chapter about keys in the _WeeChat User's guide_.
1474
1475 [[v0.4.2_rmodifier]]
1476 === New rmodifier
1477
1478 A new rmodifier "secure" has been added to hide passphrase and passwords
1479 displayed by command `/secure`. Use command `/rmodifier missing` to add it.
1480
1481 [[v0.4.2_color_codes_options]]
1482 === Color codes in options
1483
1484 The format for color codes in some options has changed. The options are
1485 evaluated with the function "string_eval_expression", which uses the format
1486 `${color:xxx}`.
1487
1488 Following options are affected:
1489
1490 * _weechat.look.buffer_time_format_
1491 * _weechat.look.prefix_action_
1492 * _weechat.look.prefix_error_
1493 * _weechat.look.prefix_join_
1494 * _weechat.look.prefix_network_
1495 * _weechat.look.prefix_quit_
1496
1497 The options using old format `${xxx}` must be changed with new format
1498 `${color:xxx}` (where xxx is a color name or number, with optional color
1499 attributes).
1500
1501 Example:
1502
1503 ----
1504 /set weechat.look.buffer_time_format "${color:251}%H${color:243}%M${color:238}%S"
1505 ----
1506
1507 [[v0.4.2_binary_man_page]]
1508 === Binary and man page
1509
1510 WeeChat binary and man page have been renamed from `weechat-curses` to
1511 `weechat`.
1512
1513 A symbolic link has been added for binary: `weechat-curses` -> `weechat`
1514 (so that the /upgrade from a old version will still work).
1515
1516 If you upgrade from an old version, it is recommended to force the use of the
1517 new binary name with the command: `/upgrade /path/to/weechat` (replace the path
1518 accordingly).
1519
1520 [NOTE]
1521 For packagers: you should create the link `weechat-curses` -> `weechat` if it's
1522 not automatically created in the package (both CMake and configure are creating
1523 this link on make install).
1524
1525 [[v0.4.2_man_page_documentation]]
1526 === Man page / documentation
1527
1528 Documentation is not built by default any more, you have to use option
1529 `-DENABLE_DOC=ON` in cmake command to enable it.
1530
1531 The man page is now built with asciidoc and translated in several
1532 languages. A new CMake option `ENABLE_MAN` has been added to compile man page
1533 (`OFF` by default).
1534
1535 [[v0.4.2_aspell_colors]]
1536 === Aspell colors
1537
1538 Option _aspell.look.color_ has been renamed to _aspell.color.misspelled_.
1539
1540 If you changed the value of this option, you must set it again after upgrade.
1541
1542 [[v0.4.1]]
1543 == Version 0.4.1 (2013-05-20)
1544
1545 [[v0.4.1_relay_nicklist_diff]]
1546 === Nicklist diff in relay
1547
1548 A new message with identifier "_nicklist_diff" has been added in relay (WeeChat
1549 protocol). WeeChat may decide to send full nicklist or this nicklist diff at
1550 any time (depending on size of message, the smaller is sent).
1551
1552 Clients using nicklist must implement it.
1553
1554 For more info about content of message, see document _WeeChat Relay Protocol_.
1555
1556 [[v0.4.1_dynamic_nick_prefix_suffix]]
1557 === Dynamic nick prefix/suffix
1558
1559 The nick prefix/suffix (for example: "<" and ">") are now dynamic and used on
1560 display (not stored any more in the line).
1561
1562 Options moved from irc plugin (irc.conf) to core (weechat.conf):
1563
1564 * _irc.look.nick_prefix_ moved to _weechat.look.nick_prefix_
1565 * _irc.look.nick_suffix_ moved to _weechat.look.nick_suffix_
1566 * _irc.color.nick_prefix_ moved to _weechat.color.chat_nick_prefix_
1567 * _irc.color.nick_suffix_ moved to _weechat.color.chat_nick_suffix_
1568
1569 Types and default values for these four options remain unchanged.
1570
1571 Two new options to customize the truncature char (by default "`+`"):
1572
1573 * _weechat.look.prefix_align_more_after_ (boolean, _on_ by default)
1574 * _weechat.look.prefix_buffer_align_more_after_ (boolean, _on_ by default)
1575
1576 When these options are enabled (default), the "`+`" is displayed after the
1577 text, replacing the space that should be displayed there. +
1578 When turned off, the "`+`" will replace last char of text.
1579
1580 Example for a nicks "FlashCode" and "fc" with different values for options
1581 _weechat.look.prefix_align_max_, _weechat.look.prefix_align_more_after_,
1582 _weechat.look.nick_prefix_ and _weechat.look.nick_suffix_:
1583
1584 ----
1585 # align_max, more_after, prefix/suffix
1586
1587 FlashCode │ test # 0, on
1588 fc │ test
1589
1590 FlashCod+│ test # 8, on
1591 fc │ test
1592
1593 FlashCo+ │ test # 8, off
1594 fc │ test
1595
1596 <FlashCode> │ test # 0, on, < >
1597 <fc> │ test
1598
1599 <FlashC>+│ test # 8, on, < >
1600 <fc> │ test
1601
1602 <Flash+> │ test # 8, off, < >
1603 <fc> │ test
1604 ----
1605
1606 After `/upgrade`, if you set new options to non-empty strings, and if old
1607 options were set to non-empty strings too, you will see double prefix/suffix
1608 on old messages, this is normal behavior (lines displayed before `/upgrade`
1609 have prefix/suffix saved in prefix, but new lines don't have them any more).
1610
1611 New options in logger plugin (logger.conf):
1612
1613 * _logger.file.nick_prefix_: prefix for nicks in log files (default: empty
1614 string)
1615 * _logger.file.nick_suffix_: suffix for nicks in log files (default: empty
1616 string)
1617
1618 [[v0.4.1_irc_reconnection_lag]]
1619 === IRC reconnection on important lag
1620
1621 Option _irc.network.lag_disconnect_ has been renamed to
1622 _irc.network.lag_reconnect_ and value is now a number of seconds (instead of
1623 minutes).
1624
1625 If you changed the value of this option, you must set it again after upgrade.
1626
1627 [[v0.4.1_irc_passwords_hidden]]
1628 === IRC passwords hidden
1629
1630 IRC plugin is now using modifiers "irc_command_auth" and "irc_message_auth" to
1631 hide passwords.
1632
1633 The option _irc.look.hide_nickserv_pwd_ has been removed, and a new option
1634 _irc.look.nicks_hide_password_ has been added (by default passwords are hidden
1635 only for "nickserv").
1636
1637 A new rmodifier "message_auth" has been added to hide passwords displayed by
1638 command `/msg nickserv identify|register|ghost|release` and the rmodifier
1639 "nickserv" has been renamed to "command_auth".
1640
1641 If you never added/changed rmodifiers, you can just reset all rmodifiers:
1642
1643 ----
1644 /rmodifier default -yes
1645 ----
1646
1647 If you added/changed some rmodifiers, do it manually with these commands:
1648
1649 ----
1650 /rmodifier del nickserv
1651 /rmodifier add command_auth history_add,input_text_display,irc_command_auth 1,4* ^(/(msg|quote) +nickserv +(id|identify|register|ghost \S+|release \S+) +)(.*)
1652 /rmodifier add message_auth irc_message_auth 1,3* ^(.*(id|identify|register|ghost \S+|release \S+) +)(.*)
1653 ----
1654
1655 [[v0.4.1_lua_constants]]
1656 === Lua constants
1657
1658 For consistency with other supported languages, the API constants in Lua have
1659 been redefined as constants instead of functions.
1660
1661 Therefore, the use of a constant must be changed: the parentheses must be
1662 removed.
1663
1664 The old syntax was:
1665
1666 [source,lua]
1667 ----
1668 return weechat.WEECHAT_RC_OK()
1669 ----
1670
1671 The new syntax is:
1672
1673 [source,lua]
1674 ----
1675 return weechat.WEECHAT_RC_OK
1676 ----
1677
1678 [[v0.4.1_guile_callbacks]]
1679 === Guile callbacks
1680
1681 The way to give arguments for guile callbacks has been fixed: now arguments are
1682 sent individually (instead of a list with all arguments inside).
1683
1684 Therefore, existing guile scripts must be modified accordingly. Moreover,
1685 WeeChat now requires Guile ≥ 2.0 to compile.
1686
1687 [[v0.4.0]]
1688 == Version 0.4.0 (2013-01-20)
1689
1690 [[v0.4.0_bars_conditions]]
1691 === Conditions in bars
1692
1693 Conditions in bars have changed, and now an expression is evaluated.
1694
1695 If you have a value with many conditions in a bar, like: `nicklist,active`, you
1696 must now use an expression like: `${nicklist} && ${active}` (see the chapter
1697 about bars in the _WeeChat User's guide_).
1698
1699 [[v0.4.0_ipv6_default]]
1700 === IPv6 by default
1701
1702 ==== IRC
1703
1704 IPv6 is now used by default to connect to IRC servers, with fallback to
1705 IPv4. The option _irc.server_default.ipv6_ is now "on" by default. If IPv6 is
1706 not enabled or fails, IPv4 will be used. The "ipv6" option in server is now
1707 used to disable IPv6 and force IPv4 (if option is turned "off").
1708
1709 ==== Relay
1710
1711 Relay plugin is now listening by default on an IPv6 socket (new option
1712 _relay.network.ipv6_, on by default), so connections with IPv4 will have
1713 IPv4-mapped IPv6 addresses, like: "::ffff:127.0.0.1" (for "127.0.0.1"); check
1714 that value of option _relay.network.allowed_ips_ supports this mapping, or
1715 disable IPv6 in relay if you don't plan to use it at all:
1716
1717 ----
1718 /set relay.network.ipv6 off
1719 ----
1720
1721 [[v0.3.9.2]]
1722 == Version 0.3.9.2 (2012-11-18)
1723
1724 This version fixes a security vulnerability when a plugin/script gives
1725 untrusted command to API function "hook_process".
1726
1727 [[v0.3.9.1]]
1728 == Version 0.3.9.1 (2012-11-09)
1729
1730 This version fixes crash when decoding IRC colors in strings.
1731
1732 [[v0.3.9]]
1733 == Version 0.3.9 (2012-09-29)
1734
1735 [[v0.3.9_options_moved]]
1736 === Options moved
1737
1738 Options moved from core (weechat.conf) to irc plugin (irc.conf):
1739
1740 * _weechat.look.nickmode_ moved to _irc.look.nick_mode_ (new type: integer
1741 with values: none/prefix/action/both)
1742 * _weechat.look.nickmode_empty_ moved to _irc.look.nick_mode_empty_
1743
1744 [[v0.3.9_bar_item_buffer_modes]]
1745 === New bar item buffer_modes
1746
1747 A new bar item has been added: _buffer_modes_ and irc option
1748 _irc.look.item_channel_modes_ has been removed; to display irc channel modes in
1749 status bar (after channel name), you have to manually add the new item
1750 _buffer_modes_ (this is now used by default in status bar items), default value
1751 for status bar items becomes:
1752
1753 ----
1754 /set weechat.bar.status.items "[time],[buffer_count],[buffer_plugin],buffer_number+:+buffer_name+(buffer_modes)+{buffer_nicklist_count}+buffer_filter,[lag],[hotlist],completion,scroll"
1755 ----
1756
1757 [[v0.3.9_command_aspell]]
1758 === Command /aspell
1759
1760 New options in command `/aspell`:
1761
1762 * `enable`: enable aspell
1763 * `disable`: disable aspell
1764 * `toggle`: toggle aspell (new default key: kbd:[Alt+s])
1765
1766 Options renamed in command `/aspell`:
1767
1768 * `enable` renamed to `setdict` (set dictionary for current buffer)
1769 * `disable` renamed to `deldict` (delete dictionary used on current buffer)
1770 * `dictlist` renamed to `listdict` (show installed dictionaries)
1771
1772 [[v0.3.9_horizontal_separator]]
1773 === Horizontal separator
1774
1775 An horizontal separator has been added between split windows, and two options
1776 have been added to toggle separators (both are enabled by default):
1777
1778 * _weechat.look.window_separator_horizontal_
1779 * _weechat.look.window_separator_vertical_
1780
1781 [[v0.3.9_new_keys]]
1782 === New keys
1783
1784 New keys were added, use command `/key missing` to add them or `/key listdiff`
1785 to see differences between your current keys and WeeChat default keys.
1786
1787 [[v0.3.8]]
1788 == Version 0.3.8 (2012-06-03)
1789
1790 [[v0.3.8_options]]
1791 === Options
1792
1793 Options _weechat.look.prefix_align_more_ and
1794 _weechat.look.prefix_buffer_align_more_ have been converted from type boolean
1795 to string:
1796
1797 * If the value was on (default), new value is "+" and you can now customize
1798 this char.
1799 * If the value was off, you have to set " " (string with one space).
1800
1801 [[v0.3.8_paste_detection]]
1802 === Paste detection
1803
1804 Option _weechat.look.paste_max_lines_ can now be used with value 0 to detect
1805 paste with one line (only if terminal "bracketed paste mode" is enabled when
1806 option _weechat.look.paste_bracketed_ is on); so now the value -1 is used to
1807 disable paste detection: if your value was 0, you should set it to -1:
1808
1809 ----
1810 /set weechat.look.paste_max_lines -1
1811 ----
1812
1813 [[v0.3.8_rmodifier]]
1814 === Rmodifier
1815
1816 Rmodifier "nickserv" has a new default regex which includes option "release"
1817 for command `/msg nickserv`.
1818
1819 If you never added/changed rmodifiers, you can just reset all rmodifiers:
1820
1821 ----
1822 /rmodifier default -yes
1823 ----
1824
1825 If you added/changed some rmodifiers, do it manually with these commands:
1826
1827 ----
1828 /rmodifier del nickserv
1829 /rmodifier add nickserv history_add,input_text_display 1,4* ^(/(msg|quote) +nickserv +(id|identify|ghost \S+|release \S+) +)(.*)
1830 ----
1831
1832 [[v0.3.7]]
1833 == Version 0.3.7 (2012-02-26)
1834
1835 [[v0.3.7_options]]
1836 === Options
1837
1838 Option `scroll_unread` has been moved from command `/input` to `/window`,
1839 therefore default command of key kbd:[Alt+u] has been updated. To bind key with
1840 new default value:
1841
1842 ----
1843 /key bind meta-u /window scroll_unread
1844 ----
1845
1846 Option _weechat.history.max_lines_ has been renamed to
1847 _weechat.history.max_buffer_lines_number_.
1848
1849 If you changed the value of this option, you must set it again after upgrade.
1850
1851 Option _weechat.plugin.extension_ now supports list of extensions, and new
1852 default value is ".so,.dll" (with this value, weechat.conf is compatible with
1853 Cygwin).
1854
1855 [[v0.3.7_extended_regex]]
1856 === Extended regex
1857
1858 Extended regex is used in filters and irc ignore, so some chars that needed
1859 escape in past do not need any more (for example `[0-9]\+` becomes `[0-9]+`),
1860 filters and ignore have to be manually fixed.
1861
1862 Option _weechat.look.highlight_regex_ becomes case insensitive by default, to
1863 make it case sensitive, use "(?-i)" at beginning of string, for example:
1864 "(?-i)FlashCode|flashy".
1865
1866 [[v0.3.6]]
1867 == Version 0.3.6 (2011-10-22)
1868
1869 [[v0.3.6_options]]
1870 === Options
1871
1872 Option _weechat.look.hline_char_ has been renamed to
1873 _weechat.look.separator_horizontal_.
1874
1875 If you changed the value of this option, you must set it again after upgrade.
1876
1877 [[v0.3.6_colors_bold]]
1878 === Bold in colors
1879
1880 Bold is not used any more for basic colors (used only if terminal has less than
1881 16 colors), a new option has been added to force bold if needed:
1882 _weechat.look.color_basic_force_bold_.
1883
1884 [[v0.3.5]]
1885 == Version 0.3.5 (2011-05-15)
1886
1887 [[v0.3.5_colors]]
1888 === Colors
1889
1890 If you have some colors defined in section "palette" with version 0.3.4, you
1891 should remove all colors defined, and add new aliases (it's not needed any more
1892 to add colors before using them).
1893
1894 Colors for nick prefixes (char for op, voice, ..) are defined in a single
1895 option _irc.color.nick_prefixes_, therefore following options will be lost:
1896 _irc.color.nick_prefix_op_, _irc.color.nick_prefix_halfop_,
1897 _irc.color.nick_prefix_voice_, _irc.color.nick_prefix_user_.
1898
1899 [[v0.3.5_hotlist]]
1900 === Hotlist
1901
1902 [[v0.3.5_hotlist_counters]]
1903 ==== Counters
1904
1905 Count of messages have been added to hotlist by default, if you want to come
1906 back to old behavior, do that:
1907
1908 ----
1909 /set weechat.look.hotlist_count_max 0
1910 /set weechat.look.hotlist_buffer_separator ","
1911 ----
1912
1913 [[v0.3.5_hotlist_away_current_buffer]]
1914 ==== Away and current buffer
1915
1916 When you are away, all buffers are now added to hotlist by default (even if
1917 they are displayed in a window), if you want to come back to old behavior, do
1918 that:
1919
1920 ----
1921 /set weechat.look.hotlist_add_buffer_if_away off
1922 ----
1923
1924 [[v0.3.5_new_keys]]
1925 === New keys
1926
1927 New keys were added, use command `/key missing` to add them or `/key listdiff`
1928 to see differences between your current keys and WeeChat default keys.
1929
1930 [[v0.3.4]]
1931 == Version 0.3.4 (2011-01-16)
1932
1933 [[v0.3.4_after_upgrade]]
1934 === After /upgrade
1935
1936 If you are using `/upgrade` from a previous release:
1937
1938 * Some nick prefixes can be wrong, so it is recommended to do `/allchan names`.
1939 * Nick colors are defined with a new option _weechat.color.chat_nick_colors_,
1940 therefore old options _weechat.color.chat_nick_color1..10_ will be lost when
1941 upgrading.
1942 * Nick colors in messages displayed will be wrong if you changed some nick
1943 colors (old default colors will be used).
1944
1945 [[v0.3.4_options]]
1946 === Options
1947
1948 Some IRC options have been renamed, before upgrading to this version, note
1949 value for old options, and set them again with new name:
1950
1951 * options moved from _network_ section to servers (with global value, and
1952 server value, like other server options):
1953 ** _irc.network.connection_timeout_ moved to
1954 _irc.server_default.connection_timeout_
1955 ** _irc.network.anti_flood_prio_high_ moved to
1956 _irc.server_default.anti_flood_prio_high_
1957 ** _irc.network.anti_flood_prio_low_ moved to
1958 _irc.server_default.anti_flood_prio_low_
1959 ** _irc.network.away_check_ moved to _irc.server_default.away_check_
1960 ** _irc.network.away_check_max_nicks_ moved to
1961 _irc.server_default.away_check_max_nicks_
1962 ** _irc.network.default_msg_part_ moved to
1963 _irc.server_default.default_msg_part_
1964 ** _irc.network.default_msg_quit_ moved to
1965 _irc.server_default.default_msg_quit_
1966 * other IRC options renamed:
1967 ** _irc.look.open_channel_near_server_ moved to _irc.look.new_channel_position_
1968 (old option was boolean, new is integer with value as string)
1969 ** _irc.look.open_pv_near_server_ moved to _irc.look.new_pv_position_
1970 (old option was boolean, new is integer with value as string)
1971
1972 [[v0.3.3]]
1973 == Version 0.3.3 (2010-08-07)
1974
1975 [[v0.3.3_after_upgrade]]
1976 === After /upgrade
1977
1978 If you are using `/upgrade` from a previous release, then you must reconnect to
1979 IRC servers in order to use new command /wallchops.
1980
1981 [[v0.3.3_options]]
1982 === Options
1983
1984 Option _irc.look.show_away_once_ has been renamed to
1985 _irc.look.display_pv_away_once_.
1986
1987 Option _irc.network.lag_min_show_ is now in milliseconds, you should set new
1988 value: your current value multiplied by 1000 (new default value is 500).
1989
1990 [[v0.3.2]]
1991 == Version 0.3.2 (2010-04-18)
1992
1993 [[v0.3.2_after_upgrade]]
1994 === After /upgrade
1995
1996 If you are using `/upgrade` from a previous release, then you must execute this
1997 command on all IRC servers/channels/private buffers and xfer DCC chats (not
1998 needed on WeeChat core buffer or buffers from other plugins/scripts):
1999
2000 ----
2001 /buffer set highlight_words $nick
2002 ----
2003
2004 [[v0.3.1.1]]
2005 == Version 0.3.1.1 (2010-01-31)
2006
2007 This version fixes crashes with SSL connection and purge of old DCC chats.
2008
2009 All users of version 0.3.1 should upgrade to this version.
2010
2011 [[v0.3.1]]
2012 == Version 0.3.1 (2010-01-23)
2013
2014 [[v0.3.1_aliases]]
2015 === Aliases
2016
2017 IRC commands /ame and /amsg are now aliases, if you are upgrading from version
2018 0.3.0, you must create aliases with following commands:
2019
2020 ----
2021 /alias aaway allserv /away
2022 /alias ame allchan /me
2023 /alias amsg allchan /amsg *
2024 /alias anick allserv /nick
2025 ----
2026
2027 [[v0.3.0]]
2028 == Version 0.3.0 (2009-09-06)
2029
2030 This version brings *MAJOR* changes, especially for configuration files and
2031 plugin API and is not compatible with previous versions.
2032
2033 Major differences:
2034
2035 * It is *NOT POSSIBLE* to use command `/upgrade` from a version 0.2.x to 0.3.x;
2036 you have to quit your old WeeChat, then run new version.
2037 * New configuration files (`*.conf`) are not compatible with old files
2038 (`*.rc`).
2039 * Name of options is similar to old versions, but there is now one
2040 configuration file by plugin, and one file for WeeChat core; there is
2041 *no automatic conversion* for your old options to new configuration files,
2042 so you'll have to setup again your IRC servers and all other options.
2043 * Plugin API has been rewritten and is not compatible with previous versions;
2044 accordingly, scripts and plugins must have been designed for version 0.3.x to
2045 be loaded into WeeChat.
2046
2047 [[v0.2.6.3]]
2048 == Version 0.2.6.3 (2009-06-13)
2049
2050 This version fixes gnutls detection.
2051
2052 [[v0.2.6.2]]
2053 == Version 0.2.6.2 (2009-04-18)
2054
2055 This version fixes a bug with charset decoding (like _iso2022jp_).
2056
2057 [[v0.2.6.1]]
2058 == Version 0.2.6.1 (2009-03-14)
2059
2060 This version fixes a major bug: crash with some special chars in IRC messages.
2061
2062 [[v0.2.6]]
2063 == Version 0.2.6 (2007-09-06)
2064
2065 No release note.
2066
2067 [[v0.2.5]]
2068 == Version 0.2.5 (2007-06-07)
2069
2070 No release note.
2071
2072 [[v0.2.4]]
2073 == Version 0.2.4 (2007-03-29)
2074
2075 No release note.
2076
2077 [[v0.2.3]]
2078 == Version 0.2.3 (2007-01-10)
2079
2080 This version fixes several major bugs of version 0.2.2.
2081
2082 All users of version 0.2.2 should upgrade to this version.
2083
2084 [[v0.2.2]]
2085 == Version 0.2.2 (2007-01-06)
2086
2087 [[v0.2.2_charset_plugin]]
2088 === Charset plugin
2089
2090 For users of any previous version, all your charset settings in weechat.rc will
2091 be LOST! You should save your weechat.rc to keep your values and set them again
2092 with new _charset_ plugin.
2093
2094 For ISO users: history of channels may be without accents (after `/upgrade`),
2095 this is not recoverable, but this is not a bug. All new messages should be OK.
2096
2097 Be careful, now default encode is UTF-8 for all channels (before it was
2098 terminal charset). If you still want to send messages as _ISO-8859-1_, you
2099 should set either global encode or server specific encode to _ISO-8859-1_.
2100
2101 For global encode:
2102
2103 ----
2104 /setp charset.global.encode = "ISO-8859-1"
2105 ----
2106
2107 For server encode (on server buffer):
2108
2109 ----
2110 /charset encode ISO-8859-1
2111 ----
2112
2113 [[v0.2.2_new_keys]]
2114 === New keys
2115
2116 New keys for topic scroll: kbd:[F9]/kbd:[F10].
2117
2118 Key kbd:[F10] was used for `infobar_clear` in previous WeeChat versions, you
2119 have to manually rebind this key (except for new WeeChat users):
2120
2121 ----
2122 /key <press alt+"k" then F10> scroll_topic_right
2123 ----
2124
2125 Which gives something like:
2126
2127 ----
2128 /key meta2-21~ scroll_topic_right
2129 ----
2130
2131 [[v0.2.1]]
2132 == Version 0.2.1 (2006-10-01)
2133
2134 No release note.
2135
2136 [[v0.2.0]]
2137 == Version 0.2.0 (2006-08-19)
2138
2139 [[v0.2.0_after_upgrade]]
2140 === After /upgrade
2141
2142 If you upgraded with `/upgrade` in WeeChat, you should `/disconnect` and then
2143 `/reconnect` on each server, to display properly channel/user modes.
2144
2145 [[v0.2.0_plugins]]
2146 === Plugins
2147
2148 If you're using plugins, you should remove some old plugins libraries in
2149 WeeChat system library directory (commonly _/usr/local/lib/weechat/plugins_):
2150 remove `lib*` files (like `libperl.*`, `libpython.*`, ..) and keep only new
2151 libraries (`perl.*`, `python.*`, ..).
2152
2153 [[v0.1.9]]
2154 == Version 0.1.9 (2006-05-25)
2155
2156 [[v0.1.9_dcc_chat]]
2157 === DCC chat
2158
2159 Please close all DCC chat buffers before using /upgrade command, otherwise you
2160 may experience problems with DCC chats.
2161
2162 [[v0.1.9_script_api]]
2163 === Script API
2164
2165 Some changes in script API: now timer handlers functions takes exactly 0 (zero)
2166 argument (in version 0.1.8, two arguments were mandatory but not used: server
2167 and arguments).
2168
2169 [[v0.1.8]]
2170 == Version 0.1.8 (2006-03-18)
2171
2172 [[v0.1.8_after_upgrade]]
2173 === After /upgrade
2174
2175 After installing 0.1.8 (or with `/upgrade`), issue both commands (if you didn't
2176 redefine these keys (kbd:[Alt+Home] / kbd:[Alt+End]):
2177
2178 ----
2179 /key unbind meta-meta2-1~
2180 /key unbind meta-meta2-4~
2181 ----
2182
2183 Then launch again WeeChat (or issue `/upgrade`).
2184
2185 [[v0.1.8_configuration_files]]
2186 === Configuration files
2187
2188 It is recommended for users of version 0.1.7 (or any older), to replace values
2189 in setup file (_~/.weechat/weechat.rc_):
2190
2191 * option: log_path: replace _~/.weechat/logs_ by _%h/logs_
2192 * option: plugins_path: replace _~/.weechat/plugins_ by _%h/plugins_
2193
2194 The string _%h_ is replaced by WeeChat home (default: _~/.weechat_, may be
2195 overridden by new command line argument `--dir`).
2196
2197 [[v0.1.8_keys]]
2198 === Keys
2199
2200 Keys kbd:[Alt+Home] / kbd:[Alt+End] were used for nicklist scroll, they're now
2201 replaced by kbd:[Alt+F11] / kbd:[Alt+F12].
2202
2203 [[v0.1.7]]
2204 == Version 0.1.7 (2006-01-14)
2205
2206 [[v0.1.7_ruby]]
2207 === Ruby
2208
2209 Ruby script plugin has been added but is experimental in this release. You're
2210 warned!
2211
2212 [[v0.1.7_command_away]]
2213 === Command /away
2214
2215 Command `/away` was changed to be RFC 2812 compliant. Now argument is required
2216 to set away, and no argument means remove away ("back").
2217
2218 Option _irc_default_msg_away_ has been removed.
2219
2220 [[v0.1.6]]
2221 == Version 0.1.6 (2005-11-11)
2222
2223 [[v0.1.6_script_api]]
2224 === Script API
2225
2226 Incompatibility with some old scripts: now all handlers have to return a code
2227 for completion, and to do some actions about message to ignore (please look at
2228 documentation for detail).
2229
2230 [[v0.1.6_openbsd]]
2231 === OpenBSD
2232
2233 On OpenBSD, the new option _plugins_extension_ should be set to _.so.0.0_ since
2234 the plugins names are ending by _.so.0.0_ and not _.so_.
2235
2236 [[v0.1.6_utf8]]
2237 === UTF-8
2238
2239 With new and full UTF-8 support, the option _look_charset_internal_ should be
2240 set to blank for most cases. Forces it only if your locale is not properly
2241 detected by WeeChat (you can set _UTF-8_ or _ISO-8859-15_ for example,
2242 depending on your locale). WeeChat is looking for _UTF-8_ in your locale name
2243 at startup.
2244
2245 [[v0.1.5]]
2246 == Version 0.1.5 (2005-09-24)
2247
2248 No release note.
2249
2250 [[v0.1.4]]
2251 == Version 0.1.4 (2005-07-30)
2252
2253 No release note.
2254
2255 [[v0.1.3]]
2256 == Version 0.1.3 (2005-07-02)
2257
2258 No release note.
2259
2260 [[v0.1.2]]
2261 == Version 0.1.2 (2005-05-21)
2262
2263 No release note.
2264
2265 [[v0.1.1]]
2266 == Version 0.1.1 (2005-03-20)
2267
2268 No release note.
2269
2270 [[v0.1.0]]
2271 == Version 0.1.0 (2005-02-12)
2272
2273 No release note.
2274
2275 [[v0.0.9]]
2276 == Version 0.0.9 (2005-01-01)
2277
2278 No release note.
2279
2280 [[v0.0.8]]
2281 == Version 0.0.8 (2004-10-30)
2282
2283 No release note.
2284
2285 [[v0.0.7]]
2286 == Version 0.0.7 (2004-08-08)
2287
2288 No release note.
2289
2290 [[v0.0.6]]
2291 == Version 0.0.6 (2004-06-05)
2292
2293 No release note.
2294
2295 [[v0.0.5]]
2296 == Version 0.0.5 (2004-02-07)
2297
2298 No release note.
2299
2300 [[v0.0.4]]
2301 == Version 0.0.4 (2004-01-01)
2302
2303 No release note.
2304
2305 [[v0.0.3]]
2306 == Version 0.0.3 (2003-11-03)
2307
2308 No release note.
2309
2310 [[v0.0.2]]
2311 == Version 0.0.2 (2003-10-05)
2312
2313 No release note.
2314
2315 [[v0.0.1]]
2316 == Version 0.0.1 (2003-09-27)
2317
2318 No release note.