1
0
mirror of https://github.com/weechat/weechat.git synced 2026-06-29 06:16:40 +02:00
Files
weechat/ChangeLog.asciidoc
T
Sébastien Helleu cf6aca1619 core: add pointer in some callbacks (closes #406)
This pointer is the first argument received by callbacks, and the
existing argument "data" is now automatically freed by WeeChat when the
object containing the callback is removed.

With this new pointer, the linked list of callbacks in scripts has been
removed. This will improve speed of scripts (using a lot of hooks),
reduce memory used by scripts and reduce time to unload scripts.

Following functions are affected in the C API:

* exec_on_files
* config_new
* config_new_section
* config_new_option
* hook_command
* hook_command_run
* hook_timer
* hook_fd
* hook_process
* hook_process_hashtable
* hook_connect
* hook_print
* hook_signal
* hook_hsignal
* hook_config
* hook_completion
* hook_modifier
* hook_info
* hook_info_hashtable
* hook_infolist
* hook_hdata
* hook_focus
* unhook_all_plugin
* buffer_new
* bar_item_new
* upgrade_new
* upgrade_read
2016-03-21 18:11:21 +01:00

3120 lines
146 KiB
Plaintext

= WeeChat ChangeLog
:author: Sébastien Helleu
:email: flashcode@flashtux.org
:lang: en
:toc2:
:max-width: 100%
This document lists all changes for each version
(the latest formatted version of this document can be found
https://weechat.org/files/changelog/ChangeLog-devel.html[here]).
For a list of important changes that require manual action, please look at
https://weechat.org/files/releasenotes/ReleaseNotes-devel.html[release notes]
(file 'ReleaseNotes.asciidoc' in sources).
[[1.5]]
== Version 1.5 (under dev)
[[1.5_features]]
=== New features
* core: move irc bar item "away" to core, move options
"irc.look.item_away_message" and "irc.color.item_away" to core (issue #692)
* api: add pointer in callbacks used in scripting API (issue #406)
* irc: add option irc.network.sasl_fail_unavailable (issue #600, issue #697)
* irc: add multiple targets and support of "-server" in command /ctcp
(issue #204, issue #493)
* ruby: add detection of Ruby 2.3 (issue #698)
* trigger: add "recover" in default triggers cmd_pass/msg_auth, and "regain"
in default trigger "msg_auth" (issue #511)
[[1.5_bugs]]
=== Bugs fixed
* core: check that pointers received in arguments are not NULL in buffers and
windows functions
* core: fix truncation of buffer names in hotlist (issue #668)
* core: fix update of window title under tmux (issue #685)
* core: fix detection of Python shared libraries (issue #676)
* api: fix number of arguments returned by function string_split() when
keep_eol is 2 and the string ends with separators
* irc: add missing completion "*" for target in command /msg
* irc: fix /msg command with multiple targets including "*"
* relay: do not execute any command received in a PRIVMSG message from an irc
relay client (issue #699)
* relay: fix the max number of clients connected on a port, allow value 0 for
"no limit" (issue #669)
* relay: fix decoding of multiple frames in a single websocket message,
send PONG on PING received in a websocket frame (issue #675)
* relay: fix command "input" received from clients with only spaces in
content of message (weechat protocol) (issue #663)
* script: force refresh of scripts buffer after download of scripts list
(issue #693)
* xfer: fix DCC file received when the terminal is resized
(issue #677, issue #680)
[[1.4]]
== Version 1.4 (2016-01-10)
[[1.4_features]]
=== New features
* core: add a parent name in options, display inherited values if null in
/set output, add option weechat.color.chat_value_null (issue #629)
* core: add tag "term_warning" in warnings about wrong $TERM on startup
* core: add option weechat.look.paste_auto_add_newline (issue #543)
* core: display a more explicit error when a filter fails to be added
(issue #522)
* api: add function string_hex_dump()
* api: add argument "length" in function utf8_is_valid()
* alias: display completion in /alias list (issue #518)
* fifo: add /fifo command
* irc: evaluate content of server option "addresses"
* irc: move option irc.network.alternate_nick into servers
(irc.server.xxx.nicks_alternate) (issue #633)
* irc: track real names using extended-join and WHO (issue #351)
* irc: add support of SNI (Server Name Indication) in SSL connection to
IRC server (issue #620)
* irc: use current channel and current server channels first in completions
"irc_server_channels" and "irc_channels" (task #12923, issue #260,
issue #392)
* irc: add support of "cap-notify" capability (issue #182, issue #477)
* irc: add command /cap (issue #8)
* irc: add hex dump of messages in raw buffer when debug is enabled for irc
plugin (level 2 or more)
* logger: display system error when the log file can not be written
(issue #541)
* relay: add option relay.irc.backlog_since_last_message (issue #347)
* script: add completion with languages and extensions, support search by
language/extension in /script search
* script: add option script.scripts.download_timeout
* doc: add Czech man page and quickstart guide (issue #490)
* build: add scripts version.sh and build-debian.sh, separate stable from devel
Debian packaging
* tests: check if all plugins are loaded
[[1.4_bugs]]
=== Bugs fixed
* core: fix execution of empty command name ("/" and "/ " are not valid
commands)
* core: fix memory leak when using multiple "-d" or "-r" in command line
arguments
* core: don't complain any more about "tmux" and "tmux-256color" $TERM values
when WeeChat is running under tmux (issue #519)
* core: fix truncated messages after a word with a length of zero on screen
(for example a zero width space: U+200B) (bug #40985, issue #502)
* api: fix handle of invalid escape in function string_convert_escaped_chars()
* alias: do not allow slashes and spaces in alias name (issue #646)
* irc: fix channel forwarding when option
irc.look.buffer_open_before_{autojoin|join} is on (issue #643)
* irc: add a missing colon before the password in PASS message, if the password
has spaces or begins with a colon (issue #602)
* irc: fix charset decoding in incoming private messages (issue #520)
* irc: display the arrow before server name in raw buffer
* irc: fix display of messages sent to server in raw buffer
* irc: fix display of invalid UTF-8 chars in raw buffer
* relay: display the arrow before client id and protocol in raw buffer
* ruby: fix load of scripts requiring "uri" (issue #433)
* ruby: fix Ruby detection when pkg-config is not installed
* tests: fix locale used to execute tests (issue #631)
[[1.3]]
== Version 1.3 (2015-08-16)
[[1.3_features]]
=== New features
* core: add completion "colors" (issue #481)
* core: start/stop search in buffer at current scroll position by default,
add key key[ctrl-q] to stop search and reset scroll (issue #76, issue #393)
* core: add option weechat.look.key_grab_delay to set the default delay when
grabbing a key with key[alt-k]
* core: add option weechat.look.confirm_upgrade (issue #463)
* core: allow key[ctrl-c] to exit WeeChat when the passphrase is asked on
startup (issue #452)
* core: allow pointer as list name in evaluation of hdata (issue #450)
* core: add signal "signal_sighup"
* api: add support of evaluated sub-strings and current date/time in function
string_eval_expression() and command /eval
* api: add function string_eval_path_home()
* alias: add options "add", "addcompletion" and "del" in command /alias, remove
command /unalias (issue #458)
* irc: add option irc.network.channel_encode (issue #218, issue #482)
* irc: add option irc.color.topic_current (issue #475)
* irc: evaluate content of server option "nicks"
* logger: evaluate content of option logger.file.path (issue #388)
* lua: add detection of Lua 5.3
* relay: display value of HTTP header "X-Real-IP" for websocket connections
(issue #440)
* ruby: add detection of Ruby 2.2
* script: rename option script.scripts.dir to script.scripts.path, evaluate
content of option (issue #388)
* xfer: evaluate content of options xfer.file.download_path and
xfer.file.upload_path (issue #388)
[[1.3_bugs]]
=== Bugs fixed
* core: flush stdout/stderr after sending text directly on them
(fix corrupted data sent to hook_process() callback) (issue #442)
* core: allow execution of command "/input return" on a buffer which is not
displayed in a window
* core: allow jump from current to previous buffer with default keys
key[alt-j,NN] (issue #466)
* core: fix crash if a file descriptor used in hook_fd() is too high
(> 1024 on Linux/BSD) (issue #465)
* core: fix display of invalid UTF-8 chars in bars
* core: fix bar item "scroll" after /buffer clear (issue #448)
* core: fix display of time in bare display when option
weechat.look.buffer_time_format is set to empty string (issue #441)
* api: add missing function infolist_search_var() in script API (issue #484)
* api: add missing function hook_completion_get_string() in script API
(issue #484)
* api: fix type of value returned by functions strcasestr, utf8_prev_char,
utf8_next_char, utf8_add_offset and util_get_time_string
* api: fix type of value returned by function strcasestr
* fifo: fix send error on Cygwin when something is received in the pipe
(issue #436)
* irc: fix update of lag item when the server lag changes
* irc: do not allow command /query with a channel name (issue #459)
* irc: decode/encode only text in IRC messages and not the headers
(bug #29886, issue #218, issue #451)
* irc: fix crash with commands /allchan, /allpv and /allserv if the executed
command closes buffers (issue #445)
* irc: do not open auto-joined channels buffers when option "-nojoin" is used
in command /connect (even if the option irc.look.buffer_open_before_autojoin
is on)
* irc: fix errors displayed on WHOX messages received (issue #376)
* xfer: fix crash if the DCC file socket number is too high
(> 1024 on Linux/BSD) (issue #465)
* xfer: fix parsing of DCC chat messages (handle "\r\n" at the end of messages)
(issue #425, issue #426)
* doc: replace PREFIX with CMAKE_INSTALL_PREFIX in cmake instructions
(issue #354)
[[1.2]]
== Version 1.2 (2015-05-10)
[[1.2_features]]
=== New features
* core: add signals "signal_sigterm" and "signal_sigquit" (issue #114)
* core: use environment variable WEECHAT_HOME on startup (issue #391)
* core: remove WeeChat version from config files (issue #407)
* core: add options weechat.look.quote_{nick_prefix|nick_suffix|time_format} to
customize quoted messages in cursor mode (issue #403)
* core: add a welcome message on first WeeChat run (issue #318)
* core: add options weechat.look.word_chars_{highlight|input}
(issue #55, task #9459)
* core: display a warning on startup if the locale can not be set (issue #373)
* core: allow "*" as plugin name in command /plugin reload to reload all
plugins with options
* core: add option "-s" in command /eval to split expression before evaluating
it (no more split by default) (issue #324)
* core: add priority in plugins to initialize them in order
* api: add support of environment variables in function
string_eval_expression() and command /eval
* api: add support of full color option name in functions color() and
string_eval_expression() and in command /eval
* api: add "_chat_line" (line pointer) in hashtable of hook_focus
* irc: display a warning when the option irc.look.display_away is set to
"channel"
* irc: optimize search of a nick in nicklist (up to 3x faster)
* irc: add support of SHA-256 and SHA-512 algorithms in server option
"ssl_fingerprint" (issue #281)
* irc: add option "-noswitch" in command /query (issue #394)
* irc: format message 008 (RPL_SNOMASK) (issue #144)
* irc: add support of "account-notify" capability (issue #11, issue #246)
* irc: remove server "freenode" from default config file (issue #309)
* irc: add support of "ecdsa-nist256p-challenge" SASL mechanism (issue #251)
* doc: add Russian man page
* javascript: new script plugin for javascript
[[1.2_bugs]]
=== Bugs fixed
* core: add missing completions in command /input
* guile: fix value returned in case of error in functions:
config_option_reset, config_color, config_color_default, config_write,
config_read, config_reload, hook_command, buffer_string_replace_local_var,
command
* irc: fix color of new nick in nick changes messages when option
irc.look.color_nicks_in_server_messages is off
* irc: fix crash when setting an invalid regex with "/list -re" during a /list
server response (issue #412)
* irc: fix display of PART messages on channels with +a (anonymous flag)
(issue #396)
* irc: remove useless rename of channel buffer on JOIN received with different
case (issue #336)
* irc: fix completion of commands /allchan and /allpv
* lua: fix wrong argument usage in functions nicklist_remove_group,
nicklist_remove_nick and nicklist_remove_all (issue #346)
* lua: fix value returned in case of error in functions:
config_option_reset, config_string, config_string_default, config_color,
config_color_default, config_write, config_read, config_reload,
hook_modifier_exec, buffer_string_replace_local_var, nicklist_group_set,
nicklist_nick_set, command, upgrade_read, upgrade_close
* relay: fix up/down keys on relay buffer (issue #335)
* relay: remove v4-mapped addresses in /help relay.network.allowed_ips
(issue #325)
* perl: fix value returned in case of error in functions:
config_option_reset, config_color, config_color_default, config_write,
config_read, config_reload, buffer_string_replace_local_var, command
* python: fix value returned in case of error in functions:
config_option_reset, config_color, config_color_default, config_write,
config_read, config_reload, config_is_set_plugin, buffer_get_string,
buffer_string_replace_local_var, nicklist_group_get_string,
nicklist_nick_get_string, command, hdata_time
* python: fix name of function "bar_update" in case of error
* python: fix restore of old interpreter when a function is not found in the
script
* ruby: fix crash on /plugin reload (issue #364)
* ruby: fix value returned in case of error in functions:
config_option_reset, config_color, config_color_default, config_write,
config_read, config_reload, buffer_string_replace_local_var, command
* script: fix state of script plugins when list of scripts has not been
downloaded
* scripts: reset current script pointer when load of script fails in
python/perl/ruby/lua/tcl plugins
* scripts: fix return code of function bar_set in
python/perl/ruby/lua/tcl/guile plugins
* scripts: fix type of value returned by function hdata_time (from string to
long integer) in perl/ruby/lua/tcl/guile plugins
* tcl: fix value returned in case of error in functions:
mkdir_home, mkdir, mkdir_parents, config_option_reset, config_color,
config_color_default, config_write, config_read, config_reload,
print_date_tags, buffer_string_replace_local_var, command, infolist_new_item,
infolist_new_var_integer, infolist_new_var_string, infolist_new_var_pointer,
infolist_new_var_time, upgrade_write_object, upgrade_read, upgrade_close
* trigger: do not hook anything if the trigger is disabled (issue #405)
[[1.1.1]]
== Version 1.1.1 (2015-01-25)
[[1.1.1_bugs]]
=== Bugs fixed
* core: fix random error when creating symbolic link weechat-curses on
make install with cmake (bug #40313)
* core: fix crash when a root bar has conditions different from
active/inactive/nicklist (issue #317)
* irc: don't close channel buffer on second /part when option
irc.look.part_closes_buffer is off (issue #313)
* irc: fix /join on a channel buffer opened with autojoin but which failed to
join
* irc: send QUIT to server and no PART for channels when the server buffer
is closed (issue #294)
* irc: fix order of channel buffers opened when option irc.look.server_buffer
is set to "independent", irc.look.buffer_open_before_autojoin to "on" and
irc.look.new_channel_position to "near_server" (issue #303)
* irc: fix crash in buffer close when server name is the same as a channel name
(issue #305)
[[1.1]]
== Version 1.1 (2015-01-11)
[[1.1_features]]
=== New features
* core: check bar conditions in root bars and on each update of a bar item
* core: fully evaluate commands bound to keys in cursor and mouse contexts
* core: add option weechat.completion.command_inline (task #12491)
* core: add bar item "mouse_status", new options weechat.look.item_mouse_status
and weechat.color.status_mouse (issue #247)
* core: add signals "mouse_enabled" and "mouse_disabled" (issue #244)
* core: add hide of chars in string in evaluation of expressions
* core: add arraylists, improve speed of completions (about 50x faster)
* core: move bar item "scroll" between buffer name and lag in default bar items
of status bar
* core: allow incomplete commands if unambiguous, new option
weechat.look.command_incomplete (task #5419)
* api: send value returned by command callback in function command(), remove
WeeChat error after command callback if return code is WEECHAT_RC_ERROR
* api: add regex replace feature in function string_eval_expression()
* api: use microseconds instead of milliseconds in functions
util_timeval_diff() and util_timeval_add()
* irc: add option "reorder" in command /server (issue #229)
* irc: open channel buffers before the JOIN is received from server (autojoin
and manual joins), new options irc.look.buffer_open_before_{autojoin|join}
(issue #216)
* irc: add server option "sasl_fail" (continue/reconnect/disconnect if SASL
fails) (issue #265, task #12204)
* irc: add support for color codes 16-99 in IRC messages (issue #228), add
infolist "irc_color_weechat"
* irc: disable SSLv3 by default in server option "ssl_priorities" (issue #248)
* irc: add support of "extended-join" capability (issue #143, issue #212)
* irc: automatically add current channel in command /samode (issue #241)
* irc: display own nick changes in server buffer (issue #188)
* irc: disable creation of temporary servers by default with command /connect,
new option irc.look.temporary_servers
* lua: add detection of Lua 5.2
* relay: add options "stop" and "restart" in command /relay
* relay: add option relay.network.ssl_priorities (issue #234)
* relay: add host in sender for IRC backlog PRIVMSG messages sent to clients
* script: add option script.scripts.url_force_https (issue #253)
* trigger: evaluate and replace regex groups at same time, new format for regex
option in triggers (incompatible with version 1.0) (issue #224)
* trigger: add `${tg_displayed}` in conditions of default trigger "beep"
* trigger: add option "restore" in command /trigger
[[1.1_bugs]]
=== Bugs fixed
* core: fix compilation of plugins with cmake >= 3.1 (issue #287)
* core: fix display bug when scrolling in buffer on a filtered line
(issue #240)
* core: send mouse code only one time to terminal with command
/mouse enable|disable|toggle
* core: fix buffer property "lines_hidden" when merging buffers or when a line
is removed from a buffer (issue #226)
* core: display time in bare display only if option
weechat.look.buffer_time_format is not an empty string
* core: fix translation of message displayed after /upgrade
* doc: fix compilation of man pages with autotools in source directory
* api: fix truncated process output in hook_process() (issue #266)
* api: fix crash when reading config options with NULL value (issue #238)
* irc: defer the auto-connection to servers with a timer
(issue #279, task #13038)
* irc: add missing server options "sasl_timeout" and "notify" in output of
/server listfull
* irc: use option irc.look.nick_mode_empty to display nick prefix in bar item
"input_prompt"
* irc: remove IRC color codes from buffer title in channels (issue #237)
* irc: add tag "nick_xxx" in invite messages
* irc: fix completion of commands /msg, /notice and /query
* irc: fix translation of CTCP PING reply (issue #137)
* python: fix Python detection with Homebrew (issue #217)
* relay: wait for message CAP END before sending join of channels and backlog
to the client (issue #223)
* relay: send messages "_buffer_localvar_*" and "_buffer_type_changed" with
sync "buffers" (issue #191)
* relay: don't remove relay from config when the binding fails (issue #225)
* relay: use comma separator in option relay.irc.backlog_tags, check the value
of option when it is changed with /set
* relay: remove "::ffff:" from IPv4-mapped IPv6 client address (issue #111)
* trigger: fix memory leak when allocating a new trigger with several regex
* xfer: fix freeze when accepting DCC (issue #160, issue #174)
* xfer: bind to wildcard address when sending (issue #173)
* tests: fix compilation of tests with clang (issue #275)
[[1.0.1]]
== Version 1.0.1 (2014-09-28)
[[1.0.1_bugs]]
=== Bugs fixed
* core: fix crash on buffer close when option weechat.look.hotlist_remove is
set to "merged" (issue #199)
* core: fix highlight of IRC action messages when option irc.look.nick_mode is
set to "action" or "both" (issue #206)
* core: fix compilation of plugin API functions (macros) when compiler
optimizations are enabled (issue #200)
* core: fix window/buffer pointers used in command /eval
* core: fix modifier "weechat_print": discard only one line when several lines
are displayed in same message (issue #171)
* api: fix bug in function hdata_move() when absolute value of count is greater
than 1
* aspell: fix compilation with Enchant < 1.6.0 (issue #192)
* aspell: fix crash with command "/aspell addword" if no word is given
(issue #164, issue #165)
* irc: fix display of channel exception list (348) with 6 arguments (date
missing)
* irc: fix type of value stored in hashtable when joining a channel
(issue #211)
* guile: fix compilation with Guile < 2.0.4 (issue #198)
* perl: fix detection of Perl >= 5.20 with autotools
* relay: fix send of signals "relay_client_xxx" (issue #214)
* script: fix crash on "/script update" if a script detail is displayed in
buffer (issue #177)
* trigger: do not allow any changes on a trigger when it is currently running
(issue #189)
* trigger: fix regex used in default triggers to hide passwords ("\S" is not
supported on *BSD) (issue #172)
* tests: fix build of tests when the build directory is outside source tree
(issue #178)
* tests: fix memory leak in tests launcher
[[1.0]]
== Version 1.0 (2014-08-15)
[[1.0_features]]
=== New features
* core: add terabyte unit for size displayed
* core: display a warning on startup if $TERM does not start with "screen"
under screen/tmux
* core: add option weechat.color.status_nicklist_count (issue #109,
issue #110)
* core: add option "env" in command /set (manage environment variables)
* core: add bar item "buffer_short_name" (task #10882)
* core: add option "send" in command /input (send text to a buffer)
* core: add support of negated tags in filters (with "!")
(issue #72, issue #74)
* core: add hidden buffers, add options hide/unhide in command /buffer
* core: add default key key[alt--] (toggle filters in current buffer)
(issue #17)
* core: add non-active merged buffers with activity in hotlist (if another
merged buffer is zoomed) (task #12845)
* core: add text search in buffers with free content (task #13051)
* core: add buffer property "clear"
* core: add option weechat.look.hotlist_add_conditions, remove option
weechat.look.hotlist_add_buffer_if_away
* core: add option weechat.look.hotlist_remove (issue #99)
* core: add options "-beep" and "-current" in command /print
* core: add bare display mode (for easy text selection and click on URLs), new
key: key[alt-l], new option "bare" in command /window, new options:
weechat.look.bare_display_exit_on_input and
weechat.look.bare_display_time_format
* core: add signals "key_combo_{default|search|cursor}"
* core: display a warning in case of inconsistency between the options
weechat.look.save_{config|layout}_on_exit
* api: add argument "flags" in function hdata_new_list()
* api: allow wildcard "*" inside the mask in function string_match()
* api: allow value "-1" for property "hotlist" in function buffer_set()
(to remove a buffer from hotlist)
* api: add option "buffer_flush" in function hook_process_hashtable()
* api: allow negative value for y in function printf_y()
* api: add support of case insensitive search and search by buffer full name
in function buffer_search() (bug #34318)
* api: add option "detached" in function hook_process_hashtable()
* api: add option "signal" in function hook_set() to send a signal to the child
process
* api: add support of nested variables in function string_eval_expression() and
command /eval (issue #35)
* api: add support of escaped strings with format `${esc:xxx}` or `${\xxx}` in
function string_eval_expression() and command /eval
* api: add functions hashtable_dup(), string_replace_regex(),
string_split_shell(), string_convert_escaped_chars()
* api: add integer return code for functions hook_{signal|hsignal}_send()
* alias: add default alias "msgbuf" (send text to a buffer)
* exec: add exec plugin: new command /exec and file exec.conf
* irc: display locally away status changes in private buffers (in addition to
channels) (issue #117)
* irc: add value "+" for option irc.look.smart_filter_mode to use modes from
server prefixes (this is now the default value) (issue #90)
* irc: add bar item "irc_nick_modes" (issue #71)
* irc: add support of message 324 (channel modes) in option
irc.look.display_join_message (issue #75)
* irc: add option irc.look.join_auto_add_chantype (issue #65)
* irc: add tag with host ("host_xxx") in IRC messages displayed (task #12018)
* irc: allow many fingerprints in server option ssl_fingerprint (issue #49)
* irc: rename option irc.look.item_channel_modes_hide_key to
irc.look.item_channel_modes_hide_args, value is now a string
(task #12070, task #12163, issue #48)
* irc: add option irc.color.item_nick_modes (issue #47)
* irc: allow "$ident" in option irc.network.ban_mask_default (issue #18)
* irc: add support of "away-notify" capability (issue #12)
* irc: add command /remove (issue #91)
* irc: add command /unquiet (issue #36)
* irc: add command /allpv (task #13111)
* irc: evaluate content of server options "username" and "realname"
* relay: add messages "_buffer_cleared", "_buffer_hidden" and
"_buffer_unhidden"
* relay: add info "relay_client_count" with optional status name as argument
* relay: add signals "relay_client_xxx" for client status changes (issue #2)
* relay: add option relay.network.clients_purge_delay
* rmodifier: remove plugin (replaced by trigger)
* ruby: add detection of Ruby 2.1
* trigger: add trigger plugin: new command /trigger and file trigger.conf
* tests: add unit tests using CppUTest
[[1.0_bugs]]
=== Bugs fixed
* core: fix zero-length malloc of an hashtable item with type "buffer"
* core: fix memory leak on /upgrade when file signature in upgrade file is
invalid
* core: fix memory leak in completion of config options values
* core: fix memory leak when removing script files
* core: fix result of hash function (in hashtables) on 32-bit systems
* core: fix insert of mouse code in input line after a partial key combo
(issue #130)
* core: check code point value in UTF-8 check function (issue #108)
* core: add option "-mask" in command /unset (issue #112)
* core: fix socks5 proxy for curl downloads (issue #119)
* core: display curl error after a failed download
* core: do not display content of passphrase on /secure buffer
* core: fix potential memory leak with infolists not freed in plugins
(debian #751108)
* core: fix color display of last terminal color number + 1 (issue #101)
* core: add option "-buffer" in command /command (issue #67)
* core: fix restoration of core buffer properties after /upgrade
* core: fix "/buffer clear" with a name (don't clear all merged buffers with
same number)
* core: fix evaluation of expression with regex: when a comparison char is in
the regex and don't evaluate the regex itself (issue #63)
* core: close .upgrade files before deleting them after /upgrade
* core: fix refresh of bar item "buffer_zoom" on buffer switch
* core: fix reset of attributes in bars when "resetcolor" is used (issue #41)
* core: fix alignment of lines in merged buffers when options
weechat.look.prefix_align and weechat.look.prefix_buffer_align are set to
"none" (issue #43)
* core: quit WeeChat on signal SIGHUP, remove signal "signal_sighup"
* core: fix add of filter on OS X when regex for message is empty (filter regex
ending with "\t")
* core: check validity of buffer pointer when data is sent to a buffer
(command/text from user and API function command())
* core: fix crash when buffer is closed during execution of multiple commands
(issue #27)
* core: fix compilation on SmartOS (bug #40981, issue #23)
* core: add missing \0 at the end of stderr buffer in function hook_process()
* core: fix highlight problem with "(?-i)" and upper case letters in option
weechat.look.highlight (issue #24)
* core: use glibtoolize on Mac OS X (autotools) (issue #22)
* core: fix detection of terminated process in function hook_process()
* core: set option weechat.look.buffer_search_where to prefix_message by
default
* core: fix "/window scroll -N" on a buffer with free content
* core: fix recursive calls to function eval_expression()
* core: mute all buffers by default in command /mute (replace option -all by
-core)
* core: save and restore mute state in command /mute (bug #41748)
* core: fix memory leak when removing a hdata
* core: fix memory leak in evaluation of sub-conditions
* core: fix memory leak in function gui_key_add_to_infolist() (in case of
insufficient memory)
* core: fix use of invalid pointer in function gui_bar_window_content_alloc()
(in case of insufficient memory)
* core: fix uninitialized value in function string_decode_base64()
* core: fix memory leak and use of invalid pointer in split of string (in case
of insufficient memory)
* core: fix potential NULL pointer in function gui_color_emphasize()
* core: use same return code and message in all commands when arguments are
wrong/missing
* core: allow empty arguments for command /print
* core: fix freeze/crash in GnuTLS (bug #41576)
* core: fix cmake warning CMP0007 on "make uninstall" (bug #41528)
* api: fix function string_decode_base64()
* api: fix function string_format_size() on 32-bit systems
* api: change type of arguments displayed/highlight in hook_print() callback
from string to integer (in scripts)
* alias: change default command for alias /beep to "/print -beep"
* guile: fix module used after unload of a script
* irc: fix memory leak in CTCP answer
* irc: fix duplicate sender name in display of wallops (issue #142,
issue #145)
* irc: fix extract of channel in parser for JOIN/PART messages when there is a
colon before the channel name (issue #83)
* irc: fix duplicate sender name in display of notice (issue #87)
* irc: fix refresh of buffer name in bar items after join/part/kick/kill
(issue #86)
* irc: display message 936 (censored word) on channel instead of server buffer
* irc: make reason optional in command /kill
* irc: add alias "whois" for target buffer of messages 401/402 (issue #54)
* irc: fix truncated read on socket with SSL (bug #41558)
* irc: display output of CAP LIST in server buffer
* irc: fix colors in message with CTCP reply sent to another user
* irc: set option irc.network.autoreconnect_delay_max to 600 by default,
increase max value to 604800 seconds (7 days)
* irc: fix read of MODES server value when in commands /op, /deop, /voice,
/devoice, /halfop, /dehalfop
* irc: set option irc.network.whois_double_nick to "off" by default
* irc: fix parsing of nick in host when '!' is not found (bug #41640)
* lua: fix interpreter used after unload of a script
* perl: fix context used after unload of a script
* python: fix read of return value for callbacks returning an integer
in Python 2.x (issue #125)
* python: fix interpreter used after unload of a script
* relay: fix memory leak during handshake on websocket
* relay: fix memory leak when receiving commands from client (weechat protocol)
* relay: fix crash when an IRC "MODE" command is received from client without
arguments
* relay: fix number of bytes sent/received on 32-bit systems
* relay: fix crash when closing relay buffers (issue #57, issue #78)
* relay: check pointers received in hdata command to prevent crashes with bad
pointers (WeeChat protocol)
* relay: remove warning on /reload of relay.conf when ports are defined
* relay: fix client disconnection on empty websocket frames received (PONG)
* relay: add support of Internet Explorer websocket (issue #73)
* relay: fix crash on /upgrade received from a client (weechat protocol)
* relay: fix freeze after /upgrade when many disconnected clients still exist
* relay: fix NULL pointer when reading buffer lines for irc backlog
* ruby: fix crash when trying to load a directory with /ruby load
* script: fix display of curl errors
* script: set option script.scripts.cache_expire to 1440 by default
* script: fix scroll on script buffer in the detailed view of script
(issue #6)
* scripts: fix crash when a signal is received with type "int" and NULL pointer
in signal_data
* xfer: fix problem with option xfer.file.auto_accept_nicks when the server
name contains dots
* xfer: fix freeze/problems when sending empty files with DCC (issue #53)
* xfer: fix connection to remote host in DCC receive on Mac OS X (issue #25)
* xfer: remove bind on xfer.network.own_ip (issue #5)
[[0.4.3]]
== Version 0.4.3 (2014-02-09)
[[0.4.3_features]]
=== New features
* core: add signals "signal_sighup" and "signal_sigwinch" (terminal resized)
* core: add command /print, add support of more escaped chars in command
"/input insert"
* core: add option weechat.look.tab_width
* core: add completion "plugins_installed"
* core: add support of UTF-8 chars in horizontal/vertical separators (options
weechat.look.separator_{horizontal|vertical})
* core: add option weechat.look.window_auto_zoom, disable automatic zoom by
default when terminal becomes too small for windows
* core: add support of logical and/or for argument "tags" in function
hook_print()
* core: rename buffer property "highlight_tags" to "highlight_tags_restrict",
new behavior for buffer property "highlight_tags" (force highlight on tags),
rename option irc.look.highlight_tags to irc.look.highlight_tags_restrict
* core: use "+" separator to make a logical "and" between tags in command
/filter, option weechat.look.highlight_tags and buffer property
"highlight_tags"
* core: rename options save/reset to store/del in command /layout
* core: add options weechat.look.buffer_auto_renumber and
weechat.look.buffer_position, add option "renumber" in command /buffer, add
bar item "buffer_last_number" (task #12766)
* core: add signal "buffer_cleared"
* core: add buffer property "day_change" to hide messages for the day change in
specific buffers
* core: replace default key key[ctrl-c,r] by key[ctrl-c,v] for reverse video in
messages
* core: replace default key key[ctrl-c,u] by key[ctrl-c,_] for underlined text
in messages
* core: add option "libs" in command /debug
* core: rename option weechat.look.set_title to weechat.look.window_title,
value is now a string (evaluated)
* core: add infos "term_width" and "term_height"
* core: add bar item "buffer_zoom", add signals "buffer_{zoomed|unzoomed}"
(patch #8204)
* core: add default keys key[alt-]key[Home]/key[End] (`meta2-1;3H` /
`meta2-1;3F`) and key[alt-]key[F11]/key[F12] (`meta2-23;3~` / `meta2-24;3~`)
for xterm
* core: add support of italic text (requires ncurses >= 5.9 patch 20130831)
* core: add options to customize default text search in buffers:
weechat.look.buffer_search_{case_sensitive|force_default|regex|where}
* doc: add French developer's guide and relay protocol
* doc: add Japanese plugin API reference and developer's guide
* doc: add Polish man page and user's guide
* api: add function infolist_search_var()
* api: add stdin options in functions hook_process_hashtable() and hook_set()
to send data on stdin of child process, add function hook_set() in script API
(task #10847, task #13031)
* api: add hdata "buffer_visited"
* api: add support of infos with format `${info:name,arguments}` in function
string_eval_expression() and command /eval
* api: add support for C++ plugins
* alias: add default alias /beep => /print -stderr \a
* irc: use MONITOR instead of ISON for /notify when it is available on server
(task #11477)
* irc: add server option "ssl_fingerprint" (task #12724)
* irc: add option irc.look.smart_filter_mode (task #12499)
* irc: add option irc.network.ban_mask_default (bug #26571)
* irc: add option irc.network.lag_max
* irc: add option irc.look.notice_welcome_tags
* irc: add server option "default_msg_kick" to customize default kick/kickban
message (task #12777)
* relay: send backlog for irc private buffers
* xfer: add support of IPv6 for DCC chat/file (patch #7992)
* xfer: add option xfer.file.auto_check_crc32 (patch #7963)
[[0.4.3_bugs]]
=== Bugs fixed
* core: fix hotlist problems after apply of a layout (bug #41481)
* core: fix installation of weechat-plugin.h with autotools (patch #8305)
* core: fix compilation on Android (bug #41420, patch #8301, bug #41434)
* core: fix crash when creating two bars with same name but different case
(bug #41418)
* core: fix display of read marker when all buffer lines are unread and that
option weechat.look.read_marker_always_show is on
* core: fix memory leak in regex matching when evaluating expression
* core: fix crash in /eval when config option has a NULL value
* core: fix crash with hdata_update() on shared strings, add hdata type
"shared_string" (bug #41104)
* core: fix text emphasis with wide chars on screen like Japanese (patch #8253)
* core: remove option on /unset of plugin description option (plugins.desc.xxx)
(bug #40768)
* core: fix random crash when closing a buffer
* core: fix crash on /buffer close core.weechat
* core: apply color attributes when clearing a window (patch #8236)
* core: set option weechat.look.paste_bracketed to "on" by default
* core: fix truncated text when pasting several long lines (bug #40210)
* core: create .conf file with default options only if the file does not exist
(and not on read error with existing file)
* core: fix highlight on action messages: skip the nick at beginning to prevent
highlight on it (bug #40516)
* core: fix bind of keys in cursor/mouse context when key starts with "@"
(remove the warning about unsafe key)
* core: fix truncated prefix when filters are toggled (bug #40204)
* core: use one date format when day changes from day to day+1
* api: fix read of arrays in hdata functions hdata_<type>() (bug #40354)
* aspell: fix detection of nicks with non-alphanumeric chars
* guile: disable guile gmp allocator (fix crash on unload of relay plugin)
(bug #40628)
* irc: clear the GnuTLS session in all cases after SSL connection error
* irc: do not display names by default when joining a channel (task #13045)
* irc: display PONG answer when resulting from manual /ping command
* irc: fix time parsed in tag of messages on Cygwin
* irc: use statusmsg from message 005 to check prefix char in status
notices/messages
* irc: remove display of channel in channel notices, display "PvNotice" for
channel welcome notices
* irc: fix ignore on a host without nick
* irc: use color code 0x1F (`ctrl-_`) for underlined text in input line (same
code as messages) (bug #40756)
* irc: use color code 0x16 (`ctrl-v`) for reverse video in messages
* irc: use option irc.network.colors_send instead of irc.network.colors_receive
when displaying messages sent by commands /away, /me, /msg, /notice, /query
* irc: fix memory leak when checking the value of ssl_priorities option in
servers
* irc: fix memory leak when a channel is deleted
* irc: fix groups in channel nicklist when reconnecting to a server that
supports more nick prefixes than the previously connected server
* irc: fix auto-switch to channel buffer when doing /join channel (without "#")
* logger: fix memory leaks in backlog
* logger: replace backslashs in name by logger replacement char under Cygwin
(bug #41207)
* lua: fix detection of Lua 5.2 in autotools (patch #8270)
* lua: fix crash on calls to callbacks during load of script
* python: fix load of scripts with Python >= 3.3
* relay: fix memory leak on unload of relay plugin
* ruby: add detection and fix compilation with Ruby 2.0 (patch #8209)
* ruby: fix ruby init with Ruby >= 2.0 (bug #41115)
* scripts: fix script interpreter used after register during load of script
in python/perl/ruby/lua/guile plugins (bug #41345)
* xfer: use same infolist for hook and signals (patch #7974)
[[0.4.2]]
== Version 0.4.2 (2013-10-06)
[[0.4.2_features]]
=== New features
* core: reduce memory used by using shared strings for nicklist and lines in
buffers
* core: display day change message dynamically (do not store it as a line in
buffer), split option weechat.look.day_change_time_format into two options
weechat.look.day_change_message_{1date|2dates}, new option
weechat.color.chat_day_change (task #12775)
* core: add syntax "@buffer:item" in bar items to force the buffer used when
displaying the bar item (task #12717)
* core: add search of regular expression in buffer, don't reset search type on
a new search, select where to search (messages/prefixes), add keys in search
context: key[alt-c] (case (in)sensitive search), key[Tab] (search in
messages/prefixes)
* core: add text emphasis in messages when searching text in buffer, new
options: weechat.look.emphasized_attributes, weechat.color.emphasized,
weechat.color.emphasized_bg
* core: change color format for options weechat.look.buffer_time_format and
weechat.look.prefix_{action|error|join|network|quit} from `${xxx}` to
`${color:xxx}`
* core: add secured data (encryption of passwords or private data): add new
command /secure and new file sec.conf (task #7395)
* core: rename binary and man page from "weechat-curses" to "weechat"
(task #11027)
* core: disable build of doc by default, add cmake option ENABLE_MAN to compile
man page (off by default)
* core: add option "-o" in command /color
* core: add CA_FILE option in cmake and configure to setup default
value of option weechat.network.gnutls_ca_file (default is
"/etc/ssl/certs/ca-certificates.crt") (task #12725)
* core: add option "scroll_beyond_end" for command /window (task #6745)
* core: add options weechat.look.hotlist_prefix and weechat.look.hotlist_suffix
(task #12730)
* core: add option weechat.look.key_bind_safe
* core: update man page and add translations (in French, German, Italian, and
Japanese)
* core: add option weechat.network.proxy_curl (task #12651)
* core: add "proxy" infolist and hdata
* core: add infolist "layout" and hdata "layout", "layout_buffer" and
"layout_window"
* api: return hashtable item pointer in functions hashtable_set() and
hashtable_set_with_size()
* api: add "callback_free_key" in hashtable
* api: add support of colors with format `${color:xxx}` in function
string_eval_expression() and command /eval
* api: add argument "options" in function string_eval_expression(), add option
"-c" in command /eval (to evaluate a condition)
* api: add new function strlen_screen()
* aspell: rename option aspell.look.color to aspell.color.misspelled, add
option aspell.color.suggestions
* aspell: add support of enchant library (patch #6858)
* irc: add option irc.look.notice_welcome_redirect to automatically redirect
channel welcome notices to the channel buffer
* irc: add support of wildcards in commands (de)op/halfop/voice, split IRC
message sent if number of nicks is greater than server MODES (from message
005) (task #9221)
* irc: add option irc.look.pv_tags
* irc: add support of special variables $nick/$channel/$server in commands
/allchan and /allserv
* irc: add option irc.look.nick_color_hash: hash algorithm to find nick color
(patch #8062)
* logger: add option "flush" in command /logger
* plugins: remove the demo plugin
* relay: add command "ping" in weechat protocol (task #12689)
* rmodifier: add option "missing" in command /rmodifier
* script: add info about things defined by script (like commands, options, ...)
in the detailed view of script (/script show)
* scripts: add hdata with script callback
* xfer: add option xfer.look.pv_tags
[[0.4.2_bugs]]
=== Bugs fixed
* core: clear whole line before displaying content instead of clearing after
the end of content (bug #40115)
* core: fix time displayed in status bar (it was one second late) (bug #40097)
* core: fix memory leak on unhook of a print hook (if using tags)
* core: fix computation of columns in output of /help (take care about size of
time/buffer/prefix)
* core: fix random crash on "/buffer close" with a buffer number (or a range of
buffers)
* core: optimize the removal of lines in buffers (a lot faster to clear/close
buffers with lot of lines)
* core: fix priority of logical operators in evaluation of expression
(AND takes precedence over the OR) and first evaluate sub-expressions between
parentheses
* core: remove gap after read marker line when there is no bar on the right
(bug #39548)
* core: use "/dev/null" for stdin in hook_process() instead of closing stdin
(bug #39538)
* core: fix char displayed at the intersection of three windows (bug #39331)
* core: fix crash in evaluation of expression when reading a string in hdata
with a NULL value (bug #39419)
* core: fix display bugs with some UTF-8 chars that truncates messages displayed
(for example U+26C4) (bug #39201)
* core: remove extra space after empty prefix (when prefix for action, error,
join, network or quit is set to empty string) (bug #39218)
* core: fix random crash on mouse actions (bug #39094)
* core: set options weechat.look.color_inactive_{buffer|window} to "on" by
default
* core: fix line alignment when option weechat.look.buffer_time_format is set
to empty string
* api: change type of hashtable key hash to unsigned long
* api: use pointer for infolist "hook" to return only one hook
* aspell: fix detection of word start/end when there are apostrophes or minus
chars before/after word
* irc: fix reconnection to server using IPv6 (bug #38819, bug #40166)
* irc: replace default prefix modes "qaohvu" by the standard ones "ov" when
PREFIX is not sent by server (bug #39802)
* irc: use 6697 as default port for SSL servers created with URL "ircs://"
(bug #39621)
* irc: display number of ops/halfops/voices on channel join only for supported
modes on server (bug #39582)
* irc: fix self nick color in server messages after nick is changed with /nick
(bug #39415)
* irc: fix error message on /invite without arguments (bug #39272)
* irc: fix multiple nicks in command /query (separated by commas): open one
buffer per nick
* lua: fix interpreter used in API functions (bug #39470)
* relay: fix decoding of websocket frames when there are multiple frames in a
single message received (only the first one was decoded)
* relay: fix binding to an IP address (bug #39119)
* xfer: fix compilation on OpenBSD (bug #39071)
[[0.4.1]]
== Version 0.4.1 (2013-05-20)
[[0.4.1_features]]
=== New features
* core: make nick prefix/suffix dynamic (not stored in the line): move options
irc.look.nick_{prefix|suffix} to weechat.look.nick_{prefix|suffix} and
options irc.color.nick_{prefix|suffix} to
weechat.color.chat_nick_{prefix|suffix}, add new options
weechat.look.prefix_align_more_after,
weechat.look.prefix_buffer_align_more_after, logger.file.nick_{prefix|suffix}
(bug #37531)
* core: add support of multiple layouts (task #11274)
* core: add signals nicklist_{group|nick}_removing and hsignals
nicklist_{group|nick}_{added|removing|changed}
* core: add count for groups, nicks, and total in nicklist
* core: allow read of array in hdata without using index
* core: add option "dirs" in command /debug
* core: add signal "window_opened" (task #12464)
* api: add new function hdata_search()
* api: add property "completion_freeze" for function buffer_set(): do not stop
completion when command line is updated
* aspell: add completion "aspell_dicts" (list of aspell installed dictionaries)
* aspell: add info "aspell_dict" (dictionaries used on a buffer)
* aspell: optimization on spellers to improve speed (save state by buffer)
* irc: add support of "dh-aes" SASL mechanism (patch #8020)
* irc: add support of UHNAMES (capability "userhost-in-names") (task #9353)
* irc: add tag "irc_nick_back" for messages displayed in private buffer when a
nick is back on server (task #12576)
* irc: add option irc.look.display_join_message (task #10895)
* irc: add option irc.look.pv_buffer: automatically merge private buffers
(optionally by server) (task #11924)
* irc: rename option irc.network.lag_disconnect to irc.network.lag_reconnect,
value is now a number of seconds
* irc: hide passwords in commands or messages sent to nickserv (/msg nickserv)
with new modifiers "irc_command_auth" and "irc_message_auth", remove option
irc.look.hide_nickserv_pwd, add option irc.look.nicks_hide_password
(bug #38346)
* irc: unmask smart filtered join if nick speaks in channel some minutes after
the join, new option irc.look.smart_filter_join_unmask (task #12405)
* relay: add message "_nicklist_diff" (differences between old and current
nicklist)
* relay: add support of multiple servers on same port for irc protocol (the
client must send the server in the "PASS" command)
* relay: add WebSocket server support (RFC 6455) for irc and weechat protocols,
new option relay.network.websocket_allowed_origins
* relay: add options "buffers" and "upgrade" in commands sync/desync (weechat
protocol)
* rmodifier: rename default rmodifier "nickserv" to "command_auth" (with new
modifier "irc_command_auth"), add default rmodifier "message_auth" (modifier
"irc_message_auth")
* script: add option script.scripts.autoload, add options "autoload",
"noautoload" and "toggleautoload" for command /script, add action "A"
(key[alt-a]) on script buffer (toggle autoload) (task #12393)
* xfer: add option xfer.file.auto_accept_nicks (patch #7962)
[[0.4.1_bugs]]
=== Bugs fixed
* core: fix display of long lines without time (message beginning with two
tabs)
* core: reset scroll in window before zooming on a merged buffer (bug #38207)
* core: install icon file (patch #7972)
* core: fix refresh of item "completion": clear it after any action that is
changing content of command line and after switch of buffer (bug #38214)
* core: fix detection of iconv with cmake on OS X (bug #38321)
* core: fix structures before buffer data when a buffer is closed
* core: fix refresh of line after changes with hdata_update() (update flag
"displayed" according to filters)
* core: fix detection of Python on Ubuntu Raring
* core: fix hidden lines for messages without date when option
weechat.history.max_buffer_lines_minutes is set (bug #38197)
* core: use default hash/comparison callback for keys of type
integer/pointer/time in hashtable
* api: do not display a warning by default when loading a script with a license
different from GPL
* api: fix connection to servers with hook_connect() on OS X (bug #38496)
* api: fix bug in function string_match() when mask begins and ends with "*"
* api: allow hashtable with keys that are not strings in function
hashtable_add_to_infolist()
* api: fix function string_mask_to_regex(): escape all special chars used in
regex (bug #38398)
* guile: fix crash in function hdata_move()
* guile: fix arguments given to callbacks (separate arguments instead of one
list with arguments inside), Guile >= 2.0 is now required (bug #38350)
* guile: fix crash on calls to callbacks during load of script (bug #38343)
* guile: fix compilation with Guile 2.0
* irc: fix name of server buffer after /server rename (set name "server.name"
instead of "name")
* irc: fix uncontrolled format string when sending unknown irc commands
(if option irc.network.send_unknown_commands is on)
* irc: fix uncontrolled format string when sending ison command (for nicks
monitored by /notify)
* irc: fix refresh of nick in input bar when joining a new channel with op
status (bug #38969)
* irc: fix display of CTCP messages that contain bold attribute (bug #38895)
* irc: fix duplicate nick completion when someone rejoins the channel with same
nick but a different case (bug #38841)
* irc: fix crash on command "/allchan /close"
* irc: fix default completion (like nicks) in commands /msg, /notice, /query
and /topic
* irc: fix prefix color for nick when the prefix is not in
irc.color.nick_prefixes: use default color (key "*")
* irc: fix display of malformed CTCP (without closing char) (bug #38347)
* irc: fix memory leak in purge of hashtables with joins (it was done only for
the first server in the list)
* irc: add color in output of /names when result is on server buffer (channel
not joined) (bug #38070)
* lua: remove use of functions for API constants
* lua: fix crash on stack overflow: call lua_pop() for values returned by lua
functions (bug #38510)
* perl: simplify code to load scripts
* python: fix crash when loading scripts with Python 3.x (patch #8044)
* relay: fix uncontrolled format string in redirection of irc commands
* relay: rename compression "gzip" to "zlib" (compression is zlib, not gzip)
* relay: fix commands sync/desync in weechat protocol (bug #38215)
* ruby: fix crash in function hdata_move()
* ruby: fix crash with Ruby 2.0: use one array for the last 6 arguments of
function config_new_option() (bug #31050)
* script: fix compilation on GNU/Hurd (patch #7977)
* script: create "script" directory on each action, just in case it has been
removed (bug #38472)
* scripts: create directories (language and language/autoload) on each action
(install/remove/autoload), just in case they have been removed (bug #38473)
* scripts: do not allow empty script name in function register()
* xfer: fix freeze of DCC file received: use non-blocking socket after
connection to sender and ensure the ACK is properly sent (bug #38340)
[[0.4.0]]
== Version 0.4.0 (2013-01-20)
[[0.4.0_features]]
=== New features
* core: add buffer pointer in arguments for signals "input_search",
"input_text_changed" and "input_text_cursor_moved"
* core: add option "diff" in command /set (list options with changed value)
* core: add git version in build, display it in "weechat-curses --help" and
/version
* core: add color support in options
weechat.look.prefix_{action|error|join|network|quit} (task #9555)
* core: display default values for changed config options in output of /set
* core: add command /eval, use expression in conditions for bars
* core: add option "-quit" in command /upgrade (save session and quit without
restarting WeeChat, for delayed restoration)
* api: allow return code WEECHAT_RC_OK_EAT in callbacks of hook_signal() and
hook_hsignal() (stop sending the signal immediately)
* api: allow creation of structure with hdata_update() (allowed for hdata
"history")
* api: use hashtable "options" for command arguments in function
hook_process_hashtable() (optional, default is a split of string with
command)
* api: add new function string_eval_expression()
* api: connect with IPv6 by default in hook_connect() (with fallback to IPv4),
shuffle list of hosts for a same address, add argument "retry" for
hook_connect(), move "sock" from hook_connect() arguments to callback of
hook_connect() (task #11205)
* aspell: add signal "aspell_suggest" (sent when new suggestions are displayed)
* aspell: add bar items "aspell_dict" (dictionary used on current buffer) and
"aspell_suggest" (suggestions for misspelled word at cursor), add option
aspell.check.suggestions (task #12061)
* irc: add tags "irc_nick1_xxx" and "irc_nick2_yyy" in message displayed for
command "NICK"
* irc: return git version in CTCP VERSION and FINGER by default, add "$git"
and "$versiongit" in format of CTCP replies
* irc: read local variable "autorejoin" in buffer to override server option
"autorejoin" (task #12256)
* irc: add option "-auto" in command /connect (task #9340)
* irc: add support of "server-time" capability (task #12255)
* irc: add support of tags in messages
* irc: add command /quiet, fix display of messages 728/729 (quiet list, end of
quiet list) (task #12278)
* irc: add option irc.network.alternate_nick to disable dynamic nick generation
when all nicks are already in use on server (task #12281)
* irc: add option irc.network.whois_double_nick to double nick in command
/whois
* irc: add option "-noswitch" in command /join (task #12275)
* perl: display script filename in error messages
* relay: add backlog and server capability "server-time" for irc protocol, add
new options relay.irc.backlog_max_minutes, relay.irc.backlog_max_number,
relay.irc.backlog_since_last_disconnect, relay.irc.backlog_tags,
relay.irc.backlog_time_format (task #12076)
* relay: add support of IPv6, new option relay.network.ipv6, add support of
"ipv4." and/or "ipv6." before protocol name, to force IPv4/IPv6 (task #12270)
* xfer: display remote IP address for DCC chat/file (task #12289)
[[0.4.0_bugs]]
=== Bugs fixed
* core: fix infinite loop when a regex gives an empty match (bug #38112)
* core: fix detection of Guile in configure
* core: fix click in item "buffer_nicklist" when nicklist is a root bar
(bug #38080)
* core: fix line returned when clicking on a bar (according to position and
filling) (bug #38069)
* core: fix refresh of bars when applying layout (bug #37944, bug #37952)
* core: fix scroll to bottom of window (default key: key[alt-End]) when line
displayed is bigger than chat area
* core: fix scroll in buffer after enabling/disabling some filters (if scroll
is on a hidden line) (bug #37885)
* core: fix memory leak in case of error when building content of bar item for
display
* core: fix detection of command in input: a single command char is considered
as a command (API function string_input_for_buffer())
* core: search for a fallback template when a no template is matching command
arguments
* core: fix refresh of windows after split (fix bug with horizontal separator
between windows) (bug #37874)
* core: fix stuck mouse (bug #36533)
* core: fix default mouse buttons actions for script buffer (focus the window
before executing action)
* core: fix scroll of one page down when weechat.look.scroll_page_percent is
less than 100 (bug #37875)
* core: disable paste detection and confirmation if bar item "input_paste" is
not used in a visible bar (task #12327)
* core: use high priority (50000) for commands /command and /input so that an
alias will not take precedence over these commands (bug #36353)
* core: execute command with higher priority when many commands with same name
are found with different priorities
* core: fix display of combining chars (bug #37775)
* core: stop cmake if gcrypt lib is not found (bug #37671)
* core: add incomplete mouse events "event-down" and "event-drag" (task #11840)
* core: fix display of zoomed/merged buffer (with number >= 2) after switching
to it (bug #37593)
* core: fix display problem when option weechat.look.prefix_same_nick is set
(problem with nick displayed in first line of screen) (bug #37556)
* core: fix wrapping of words with wide chars (the break was made before the
correct position)
* api: do not call shell to execute command in hook_process() (fix security
problem when a plugin/script gives untrusted command) (bug #37764)
* alias: give higher priority to aliases (2000) so that they take precedence
over an existing command
* aspell: ignore self and remote nicks in private buffers
* aspell: fix creation of spellers when number of dictionaries is different
between two buffers
* guile: fix bad conversion of shared strings (replace calls to
scm_i_string_chars() by scm_to_locale_string()) (bug #38067)
* irc: fix display of actions (/me) when they are received from a relay client
(in channel and private buffers) (bug #38027)
* irc: fix memory leak when updating modes of channel
* irc: fix crash on /upgrade (free channels before server data when a server
is destroyed) (bug #37736)
* irc: fix crash when decoding IRC colors in strings (bug #37704)
* irc: fix refresh of bar item "away" after command /away or /disconnect
* irc: send whois on self nick when /whois is done without argument on a
channel (task #12273)
* irc: remove local variable "away" in server/channels buffers after server
disconnection (bug #37582)
* irc: fix crash when message 352 has too few arguments (bug #37513)
* irc: remove unneeded server disconnect when server buffer is closed and
server is already disconnected
* perl: fix calls to callbacks during load of script when multiplicity is
disabled (bug #38044)
* relay: fix duplicated messages sent to irc clients (when messages are
redirected) (bug #37870)
* relay: fix memory leak when adding hdata to a message (weechat protocol)
* relay: fix crash after /upgrade when a client is connected
* relay: add missing "ssl." in output of /relay listrelay
* script: fix scroll with mouse when window with script buffer is not the
current window (do not force a switch to script buffer in current window)
* script: fix compilation on OS X
* xfer: fix memory leak when refreshing xfer buffer
* xfer: add missing tags in DCC chat messages: nick_xxx, prefix_nick_ccc, logN
* xfer: limit bytes received to file size (for DCC file received), fix crash
when displaying a xfer file with pos greater than size
[[0.3.9.2]]
== Version 0.3.9.2 (2012-11-18)
[[0.3.9.2_bugs]]
=== Bugs fixed
* core: do not call shell to execute command in hook_process() (fix security
problem when a plugin/script gives untrusted command) (bug #37764)
[[0.3.9.1]]
== Version 0.3.9.1 (2012-11-09)
[[0.3.9.1_bugs]]
=== Bugs fixed
* irc: fix crash when decoding IRC colors in strings (bug #37704)
[[0.3.9]]
== Version 0.3.9 (2012-09-29)
[[0.3.9_features]]
=== New features
* core: add signals for plugins loaded/unloaded
* core: add default key key[alt-x] (zoom on merged buffer) (task #11029)
* core: add mouse bindings key[ctrl-] wheel up/down to scroll horizontally
buffers with free content
* core: add option weechat.startup.sys_rlimit to set system resource limits for
WeeChat process
* core: add option "swap" in command /buffer (task #11373)
* core: add hdata "hotlist"
* core: add support of arrays in hdata variables
* core: add command line option "-r" (or "--run-command") to run command(s)
after startup of WeeChat
* core: add function hook_set() in plugin API, add "subplugin" in hooks (set by
script plugins), display subplugin in /help on commands (task #12049)
* core: add option weechat.look.jump_smart_back_to_buffer (jump back to initial
buffer after reaching end of hotlist, on by default, which is old behavior)
* core: add default key key[alt-s] (toggle aspell)
* core: add cmake option "MANDIR" (bug #36776)
* core: add callback "nickcmp" in buffers
* core: add horizontal separator between windows, new options
weechat.look.window_separator_{horizontal|vertical}
* core: add options weechat.look.color_nick_offline and
weechat.color.chat_nick_offline{_highlight|_highlight_bg} to use different
color for offline nicks in prefix (task #11109)
* doc: add Japanese user's guide (patch #7827), scripting guide and tester's
guide
* api: allow update for some variables of hdata, add new functions
hdata_update() and hdata_set()
* api: add info "locale" for info_get() (locale used to translate messages)
* api: add new function util_version_number()
* aspell: add option aspell.check.enabled, add options enable/disable/toggle
for command /aspell (rename options enable/disable/dictlist to
setdict/deldict/listdict), display aspell status with /aspell (task #11988)
* irc: generate alternate nicks dynamically when all nicks are already in use
(task #12209)
* irc: move options from core to irc plugin: weechat.look.nickmode to
irc.look.nick_mode (new type: integer with values: none/prefix/action/both)
and weechat.look.nickmode_empty to irc.look.nick_mode_empty
* irc: add bar item "buffer_modes", remove option irc.look.item_channel_modes
(task #12022)
* irc: add option irc.look.ctcp_time_format to customize reply to CTCP TIME
(task #12150)
* logger: add tags in backlog lines displayed when opening buffer
* logger: add messages "Day changed to" in backlog (task #12187)
* lua: add support of Lua 5.2
* relay: add support of SSL (for irc and weechat protocols), new option
relay.network.ssl_cert_key (task #12044)
* relay: add option relay.color.client
* relay: add object type "arr" (array) in WeeChat protocol
* ruby: add detection of Ruby 1.9.3
* script: new plugin "script" (scripts manager, replacing scripts weeget.py and
script.pl)
* scripts: add signals for scripts loaded/unloaded/installed/removed
* scripts: add hdata with list of scripts for each language
[[0.3.9_bugs]]
=== Bugs fixed
* core: move the set of cmake policy CMP0003 in directory src (so it applies to
all plugins) (bug #37311)
* core: fix display bug when end of a line is displayed on top of chat (last
line truncated and MORE(0) in status bar) (bug #37203)
* core: fix IP address returned by hook_connect() (return IP really used, not
first IP for hostname)
* core: display spaces at the end of messages in chat area (bug #37024)
* core: fix infinite loop in display when chat area has width of 1 with
a bar displayed on the right (nicklist by default) (bug #37089)
* core: fix display of "bar more down" char when text is truncated by size_max
in bars with vertical filling (bug #37054)
* core: fix color of long lines (displayed on more than one line on screen)
under FreeBSD (bug #36999)
* core: return error string to callback of hook_connect() if getaddrinfo fails
in child process
* core: fix names of cache variables in configure.in (bug #36971)
* core: scroll to bottom of window after reaching first or last highlight with
keys key[alt-p] / key[alt-n]
* core: fix refresh of bar items when switching window
* core: fix refresh of bar items "buffer_filter" and "scroll" in root bars
(bug #36816)
* core: allow again names beginning with "#" for bars, proxies and filters
* core: escape special chars (`#[\`) in configuration files for name of options
(bug #36584)
* aspell: add missing dictionaries (ast/grc/hus/kn/ky)
* charset: do not allow "UTF-8" in charset decoding options (useless because
UTF-8 is the internal WeeChat charset)
* fifo: ignore read failing with error EAGAIN (bug #37019)
* guile: fix crash when unloading a script without pointer to interpreter
* guile: fix path of Guile include dirs in cmake build (patch #7790)
* irc: fix rejoin of channels with a key, ignore value "*" sent by server for
key (bug #24131)
* irc: fix SASL mechanism "external" (bug #37274)
* irc: fix parsing of message 346 when no nick/time are given (bug #37266)
* irc: switch to next address after a timeout when connecting to server
(bug #37216)
* irc: fix bug when changing server option "addresses" with less addresses
(bug #37215)
* irc: add network prefix in irc (dis)connection messages
* irc: fix split of received IRC message: keep spaces at the end of message
* irc: fix bug with prefix chars which are in chanmodes with a type different
from "B" (bug #36996)
* irc: fix format of message "USER" (according to RFC 2812) (bug #36825)
* irc: fix parsing of user modes (ignore everything after first space)
(bug #36756, bug #31572)
* irc: fix freeze when reading on socket with SSL enabled (use non-blocking
sockets) (bug #35097)
* irc: allow again names beginning with "#" for servers
* lua: fix crash when unloading a script without pointer to interpreter
* python: fix detection of Python (first try "python2.x" and then "python")
(bug #36835)
* python: fix crash when unloading a script without pointer to interpreter
* relay: fix freeze when writing on relay socket (use non-blocking sockets in
relay for irc and weechat protocols) (bug #36655)
* scripts: fix deletion of configuration files when script is unloaded
(bug #36977)
* scripts: fix function unhook_all(): delete only callbacks of hooks and add
missing call to unhook()
* scripts: ignore call to register() (with a warning) if script is already
registered
* xfer: fix DCC transfer error (bug #37432)
[[0.3.8]]
== Version 0.3.8 (2012-06-03)
[[0.3.8_features]]
=== New features
* core: support lines of 16 Kb long in configuration files (instead of 1 Kb)
* core: convert options weechat.look.prefix_align_more and
weechat.look.prefix_buffer_align_more from boolean to string (task #11197)
* core: add option weechat.look.prefix_same_nick (hide or change prefix on
messages whose nick is the same as previous message) (task #11965)
* core: convert tabs to spaces in text pasted (bug #25028)
* core: add a connection timeout for child process in hook_connect()
(bug #35966)
* core: follow symbolic links when writing configuration files (.conf)
(task #11779)
* core: add support of terminal "bracketed paste mode", new options
weechat.look.paste_bracketed and weechat.look.paste_bracketed_timer_delay
(task #11316)
* doc: add Japanese FAQ (patch #7781)
* api: add list "gui_buffer_last_displayed" in hdata "buffer"
* irc: add option "fakerecv" in command /server to simulate a received IRC
message (not documented, for debug only)
* irc: add option "-pending" in command /disconnect (cancel auto-reconnection
on servers currently reconnecting) (task #11985)
* irc: allow more than one nick in command /invite
* irc: add signals and tags in messages for irc notify (task #11887)
* irc: add support of "external" SASL mechanism (task #11864)
* logger: add colors for backlog lines and end of backlog, new options:
logger.color.backlog_line and logger.color.backlog_end (task #11966)
* relay: add signals "upgrade" and "upgrade_ended" in WeeChat protocol
* relay: add "date_printed" and "highlight" in signal "_buffer_line_added"
(WeeChat protocol)
* rmodifier: add default rmodifier "quote_pass" to hide password in command
"/quote pass" (bug #36250)
* rmodifier: add default rmodifier "server" to hide passwords in commands
/server and /connect (task #11993)
* rmodifier: add option "release" in default rmodifier "nickserv" (used to hide
passwords in command "/msg nickserv") (bug #35705)
[[0.3.8_bugs]]
=== Bugs fixed
* core: fix crash in focus hook for nicklist (bug #36271)
* core: fix truncated configuration files (zero-length) after system crash
(bug #36383)
* core: fix display bugs and crashes with small windows (bug #36107)
* core: fix display bug with prefix when length is greater than max and prefix
is ending with a wide char (bug #36032)
* core: fix lost scroll when switching to a buffer with a pending search
* core: fix display of wide chars on last column of chat area (patch #7733)
* api: display warning in scripts when invalid pointers (malformed strings) are
given to plugin API functions (warning displayed if debug for plugin is >= 1)
* scripts: fix type of argument "rc" in callback of hook_process() (from string
to integer)
* guile: fix crash on ARM when loading guile plugin (bug #36479)
* guile: add missing function hook_process_hashtable() in API
* irc: update channel modes by using chanmodes from message 005 (do not send
extra command "MODE" to server), fix parsing of modes (bug #36215)
* irc: hide everything after "identify" or "register" in messages to nickserv
when option irc.look.hide_nickserv_pwd is on (bug #36362)
* irc: set user modes only if target nick is self nick in message 221
(patch #7754)
* irc: force the clear of nicklist when joining a channel (nicklist was not
sync after znc reconnection) (bug #36008)
* irc: do not send command "MODE #channel" on manual /names (do it only when
names are received on join of channel) (bug #35930)
* irc: do not allow the creation of two servers with same name but different
case (fix error when writing file irc.conf) (bug #35840)
* irc: update away flag for nicks on manual /who
* irc: display privmsg messages to "@#channel" and "+#channel" in channel
buffer (bug #35331)
* irc: fix redirection of message when message is queued for sending on server
* irc: check notify immediately when adding a nick to notify list, improve
first notify message for a nick (bug #35731)
* irc: fix display of color in hostname (join/part/quit messages)
* irc: compute hash to find nick color for nick in server message when nick
is not in nicklist
* irc: close server buffer when server is deleted
* irc: add search for lower case nicks in option irc.look.nick_color_force
* logger: fix charset of lines displayed in backlog when terminal charset is
different from UTF-8 (bug #36379)
* perl: fix compilation on OS X (bug #30701)
* perl: fix crash on quit on OS X
* relay: keep spaces in beginning of "input" received from client (WeeChat
protocol)
* relay: fix crash on /upgrade when client is connected using WeeChat protocol
* relay: redirect some irc messages from clients to hide output (messages:
mode, ison, list, names, topic, who, whois, whowas, time, userhost)
(bug #33516)
* tcl: add missing function hdata_char() in API
* tcl: fix pointer sent to function hook_signal_send() when type of data is
a pointer
[[0.3.7]]
== Version 0.3.7 (2012-02-26)
[[0.3.7_features]]
=== New features
* core: add Japanese translations
* core: add support of flags in regular expressions and highlight options
* core: use extended regex in filters (task #9497, patch #7616)
* core: add type "hashtable" for hdata
* core: add signals "buffer_line_added" and "window_switch"
* core: add default keys key[ctrl-]key[Left]/key[Right] (`meta2-1;5D` /
`meta2-1;5C`) for gnome-terminal
* core: add option "hooks" in command /debug
* core: add option "weechat.look.scroll_bottom_after_switch" (if enabled,
restore old behavior before fix of bug #25555 in version 0.3.5)
* core: add new option weechat.completion.base_word_until_cursor: allow
completion in middle of words (enabled by default) (task #9771)
* core: add option "jump_last_buffer_displayed" in command /input
(key: key[alt-/]) (task #11553)
* core: add developer's guide (task #5416)
* core: add option weechat.history.max_buffer_lines_minutes: maximum number of
minutes in history per buffer (task #10900), rename option
weechat.history.max_lines to weechat.history.max_buffer_lines_number
* core: add WEECHAT_HOME option in cmake and configure to setup default
WeeChat home (default is "~/.weechat") (task #11266)
* core: add optional arguments for command /plugin load/reload/autoload
* api: add modifier "input_text_for_buffer" (bug #35317)
* api: add support of URL in hook_process() / hook_process_hashtable()
(task #10247)
* api: add new functions strcasecmp_range(), strncasecmp_range(),
string_regex_flags(), string_regcomp(), hashtable_map_string(),
hook_process_hashtable(), hdata_check_pointer(), hdata_char(),
hdata_hashtable() and nicklist_get_next_item()
* alias: add default alias /umode => /mode $nick
* irc: add option "capabilities" in servers to enable client capabilities on
connection
* irc: add signal "irc_server_opened"
* irc: add signal "xxx,irc_out1_yyy" and modifier "irc_out1_xxx" (outgoing
message before automatic split to fit in 512 bytes)
* irc: add alias "ctcp" for target buffer of CTCP messages
* irc: add options irc.look.highlight_{server|channel|pv} to customize or
disable default nick highlight (task #11128)
* irc: use extended regex in commands /ignore and /list
* irc: use redirection to get channel modes after update of modes on channel,
display output of /mode #channel, allow /mode without argument (display modes
of current channel or user modes on server buffer)
* irc: add optional server in info "irc_is_channel" (before channel name)
(bug #35124), add optional server in info_hashtable "irc_message_parse"
* irc: add case insensitive string comparison based on casemapping of server
(rfc1459, strict-rfc1459, ascii) (bug #34239)
* irc: add option irc.color.mirc_remap to remap mirc colors in messages to
WeeChat colors
* irc: allow URL "irc://" in command /connect
* guile: new script plugin for scheme (task #7289)
* python: add support of Python 3.x (task #11704)
* relay: add WeeChat protocol for remote GUI
* xfer: display origin of xfer in core and xfer buffers (task #10956)
[[0.3.7_bugs]]
=== Bugs fixed
* core: fix expand of path `~` to home of user in function string_expand_home()
(`~/xxx` was OK, but not `~`)
* core: fix memory leak when closing buffer
* core: fix memory leak in function util_search_full_lib_name()
* core: automatically add newline char after last pasted line (when pasting
many lines with confirmation) (task #10703)
* core: fix bug with layout: assign layout number in buffers when doing
/layout save
* core: do not auto add space after nick completer if option
weechat.completion.nick_add_space is off
* core: fix signal "buffer_switch": send it only once when switching buffer
(bug #31158)
* core: move option "scroll_unread" from command /input to /window
* core: add library "pthread" in cmake file for link on OpenBSD
* core: save current mouse state in option weechat.look.mouse (set option when
mouse state is changed with command /mouse)
* core: apply filters after full reload of configuration files (with /reload)
(bug #31182)
* core: allow list for option weechat.plugin.extension (makes weechat.conf
portable across Un*x and Windows) (task #11479)
* core: fix compilation under OpenBSD 5.0 (lib utf8 not needed any more)
(bug #34727)
* core: display error in command /buffer if arguments are wrong (bug #34180)
* core: fix help on plugin option when config_set_desc_plugin() is called to
set help on newly created option
* core: fix compilation error with "pid_t" on Mac OS X (bug #34639)
* core: enable background process under Cygwin to connect to servers, fix
reconnection problem (bug #34626)
* aspell: fix URL detection (do not check spelling of URLs) (bug #34040)
* irc: fix memory leak in SASL/blowfish authentication
* irc: fix memory leak when a server is deleted
* irc: fix self-highlight when using /me with an IRC bouncer like znc
(bug #35123)
* irc: use low priority for MODE sent automatically by WeeChat (when joining
channel)
* irc: do not use option irc.look.nick_color_stop_chars for forced nick colors
(bug #33480)
* irc: reset read marker of current buffer on manual /join
* irc: fix crash when signon time in message 317 (whois, idle) is invalid
(too large) (bug #34905)
* irc: do not delete servers added in irc.conf on /reload (bug #34872)
* irc: remove autorejoin on channels when disconnected from server (bug #32207)
* irc: display messages kick/kill/mode/topic even if nick is ignored
(bug #34853)
* irc: display channel voice notices received in channel buffer (bug #34762),
display channel/op notices sent in channel buffer
* irc: auto-connect to servers created with "irc://" on command line but not
other servers if "-a" ("--no-connect") is given
* perl: increment count of hash returned by API (fix crash when script tries to
read hash without making a copy)
* relay: do not create relay if there is a problem with socket creation
(bug #35345)
* ruby: fix crash when reloading ruby plugin (bug #34474)
[[0.3.6]]
== Version 0.3.6 (2011-10-22)
[[0.3.6_features]]
=== New features
* core: add color attribute "|" (keep attributes) and value "resetcolor" for
function color() in plugin API (used by irc plugin to keep
bold/reverse/underlined in message when changing color) (bug #34550)
* core: add new option weechat.look.color_basic_force_bold, off by default:
bold is used only if terminal has less than 16 colors (patch #7621)
* core: add default key key[F5] (`meta2-[E`) for Linux console
* core: add "inactive" colors for inactive windows and lines in merged buffers,
new options: weechat.look.color_inactive_window,
weechat.look.color_inactive_buffer, weechat.look.color_inactive_message,
weechat.look.color_inactive_prefix,
weechat.look.color_inactive_prefix_buffer,
weechat.look.color_inactive_time, weechat.color.chat_inactive_line,
weechat.color.chat_inactive_window,
weechat.color.chat_prefix_buffer_inactive_line
* core: do automatic zoom on current window when terminal becomes too small
for windows
* core: add new options weechat.look.bar_more_left/right/up/down
* core: add new option weechat.look.item_buffer_filter
* core: allow name of buffer for command /buffer clear (task #11269)
* core: add new command /repeat (execute a command several times)
* core: save and restore layout for buffers and windows on /upgrade
* core: add option "-all" in command /buffer unmerge
* core: add number in windows (add optional argument "-window" so some actions
for command /window)
* core: allow buffer name in /buffer close
* core: add support of mouse: new command /mouse, new key context "mouse",
new options weechat.look.mouse and weechat.look.mouse_timer_delay
(task #5435)
* core: add command /cursor (free movement of cursor on screen), with key
context "cursor"
* core: automatic scroll direction in /bar scroll (x/y is now optional)
* core: add optional delay for key grab (commands /input grab_key and
/input grab_key_command, default is 500 milliseconds)
* core: allow plugin name in command /buffer name
* core: add context "search" for keys (to define keys used during search in
buffer with key[ctrl-r])
* core: add new option weechat.look.separator_vertical, rename option
weechat.look.hline_char to weechat.look.separator_horizontal
* core: add local variable "highlight_regex" in buffers
* core: add "hdata" (direct access to WeeChat/plugin data)
* core: add option weechat.look.eat_newline_glitch (do not add new line at end
of each line displayed)
* core: add options "infolists", "hdata" and "tags" for command /debug
* core: add horizontal scrolling for buffers with free content (command
/window scroll_horiz) (task #11112)
* api: add info "cursor_mode"
* api: add new functions key_bind(), key_unbind(), hook_focus(), hdata_new(),
hdata_new_var(), hdata_new_list(), hdata_get(), hdata_get_var_offset(),
hdata_get_var_type(), hdata_get_var_type_string(), hdata_get_var_hdata(),
hdata_get_var(), hdata_get_var_at_offset(), hdata_get_list(), hdata_move(),
hdata_integer(), hdata_string(), hdata_pointer(), hdata_time(),
hdata_get_string()
* irc: allow reason for command /disconnect
* irc: allow server name for commands /die and /restart
* irc: add new info_hashtable "irc_message_split"
* irc: improve split of privmsg message (keep ctcp), add split of ison, join,
notice, wallops, 005, 353 (bug #29879, bug #33448, bug #33592)
* irc: add prefix "#" for all channels on join (if no prefix given)
* logger: add option logger.file.flush_delay (task #11118)
[[0.3.6_bugs]]
=== Bugs fixed
* core: fix freeze when calling function util_file_get_content() with a
directory instead of a filename
* core: fix compilation error (INSTALLPREFIX undeclared) on OS X and when
compiling with included gettext (bug #26690)
* core: display timeout for hook_process() command only if debug for core is
enabled (task #11401)
* core: bufferize lines displayed before core buffer is created, to display
them in buffer when it is created
* core: fix display of background color in chat area after line feed
* core: fix paste detection (problem with end of lines)
* core: fix display of paste multi-line prompt with a root input bar
(bug #34305)
* core: change default value of option weechat.network.gnutls_ca_file to
"/etc/ssl/certs/ca-certificates.crt"
* core: replace deprecated GnuTLS function
gnutls_certificate_client_set_retrieve_function() by new function
gnutls_certificate_set_retrieve_function() (GnuTLS >= 2.11.0)
* core: use dynamic buffer size for calls to vsnprintf()
* core: fix memory leak in unhook of hook_connect()
* core: fix memory leak in display of empty bar items
* core: fix input of wide UTF-8 chars under Cygwin (bug #34061)
* core: fix bugs with automatic layout (bug #26110), add support of merged
buffers in layout (task #10893)
* core: fix crash when invalid UTF-8 chars are inserted in command line
(bug #33471)
* core: stop horizontal bar scroll at the end of content (for bars with
horizontal filling) (bug #27908)
* core: fix crash when building hashtable string with keys and values
* core: replace buffer name by window number in /bar scroll
* core: fix bugs with key "^" (bug #32072, bug #21381)
* core: fix bugs with bar windows: do not create bar windows for hidden bars
* core: fix completion bug when two words for completion are equal but with
different case
* core: fix completion for command arguments when same command exists in many
plugins (bug #33753)
* core: fix freeze when hook_fd() is called with a bad file/socket (bug #33619)
* core: fix bug with option weechat.look.hotlist_count_max (value+1 was used)
* api: use arguments for infolist "window" to return only one window by number
* api: fix bug with function config_set_desc_plugin() (use immediately
description for option when function is called)
* scripts: fix crash with scripts not auto-loaded having a buffer opened after
/upgrade (input/close callbacks for buffer not set properly)
* irc: fix display of items "away" and "lag" in root bars, refresh all irc bar
items on signal "buffer_switch" (bug #34466)
* irc: fix crash on malformed irc notice received (without message after
target)
* irc: add missing messages for whois: 223, 264, 343
* irc: use high priority queue for sending modes and wallchops messages
* irc: rename info_hashtable "irc_parse_message" to "irc_message_parse"
* irc: use color "default" for any invalid color in option
weechat.color.chat_nick_colors
* irc: send WHO command to check away nicks only if channel was not parted
* irc: fix crash when malformed IRC message 352 (WHO) is received (bug #33790)
* irc: fix crash when command "/buffer close" is used in a server command to
close server buffer during connection (bug #33763)
* irc: fix crash when /join command is executed on a non-irc buffer
(bug #33742)
* irc: fix bug with comma in irc color code: do not strip comma if it is not
followed by a digit (bug #33662)
* irc: switch to buffer on /join #channel if channel buffer already exists
* irc: set host for nick on each channel message and nick change (if not
already set)
* irc: update host of nicks on manual /who
* irc: fix memory leak on plugin unload (free ignores)
* irc: fix memory leak in message parser (when called from other plugins like
relay) (bug #33387)
* relay: fix bug with self nick when someone changes its nick on channel
(bug #33739)
* relay: fix memory leak (free some parsed messages) (bug #33387)
* relay: fix memory leak on plugin load (free raw messages)
* perl: replace calls to SvPV() by SvPV_nolen() (patch #7436)
[[0.3.5]]
== Version 0.3.5 (2011-05-15)
[[0.3.5_features]]
=== New features
* core: add buffer to hotlist if away is set on buffer (even if buffer is
displayed), new option weechat.look.hotlist_add_buffer_if_away (task #10948)
* core: add option "balance" in command /window (key: key[alt-w,alt-b])
* core: add option "swap" in command /window (key: key[alt-w,alt-s])
(task #11001)
* core: add option weechat.look.hotlist_buffer_separator
* core: add messages counts in hotlist for each buffer, new options:
weechat.look.hotlist_count_max, weechat.look.hotlist_count_min_msg and
weechat.color.status_count_{msg|private|highlight|other}
* core: add tag "notify_none" (line with this tag will not update hotlist)
* core: add optional bar name in command /bar default
* core: add new option weechat.look.highlight_tags (force highlight on tags)
* core: allow list of buffers in command /filter (exclusion with prefix "!")
(task #10880)
* core: remember scroll position for all buffers in windows (bug #25555)
* core: allow relative size for command /window resize
* core: add some default keys for gnome-terminal (key[Home]/key[End],
key[ctrl-]key[Up]/key[Down], key[alt-]key[PgUp]/key[PgDn])
* core: add option "memory" in command /debug
* core: add option weechat.look.read_marker_string
* core: improve display of commands lists in /help (add arguments -list
and -listfull) (task #10299)
* core: improve arguments displayed in /help of commands
* core: add some chars after cursor when scrolling input line: new option
weechat.look.input_cursor_scroll (bug #21391)
* core: add color "gray"
* core: add attributes for colors ("*": bold, "!": reverse, "_": underline)
* core: dynamically allocate color pairs (extended colors can be used without
being added with command "/color"), auto reset of color pairs with option
weechat.look.color_pairs_auto_reset
* core: allow background for nick colors (using ":")
* api: add new function config_set_desc_plugin() (task #10925)
* api: add new functions buffer_match_list() and window_search_with_buffer()
* aspell: add section "option" in aspell.conf for speller options (task #11083)
* irc: add new options irc.color.topic_old and irc.color.topic_new
* irc: add option "ssl_priorities" in servers (task #10106, debian #624055)
* irc: add modifier "irc_in2_xxx" (called after charset decoding)
* irc: replace options irc.color.nick_prefix_{op|halfop|voice|user} by a single
option irc.color.nick_prefixes (task #10888)
* irc: add new options irc.look.buffer_switch_autojoin and
irc.look.buffer_switch_join (task #8542, task #10506)
* irc: add new option irc.look.smart_filter_nick
* irc: add new options irc.look.color_nicks_in_nicklist and
irc.look.color_nicks_in_names
[[0.3.5_bugs]]
=== Bugs fixed
* core: fix scroll in windows with /window scroll (skip lines "Day changed to")
* core: recalculate buffer_max_length when buffer short name is changed
(patch #7441)
* core: do not update hotlist during upgrade
* core: apply new value of option weechat.look.buffer_notify_default to all
opened buffers
* core: prohibit names beginning with "#" for bars, proxies, filters and IRC
servers (bug #33020)
* core: create default bars only if no bar is defined in configuration file
* core: fix bug with repeat of last completion ("%*"), which failed when many
templates are used in completion
* core: reload file with certificate authorities when option
weechat.network.gnutls_ca_file is changed
* core: rebuild bar content when items are changed in an hidden bar
* core: fix verification of SSL certificates by calling GnuTLS verify callback
(patch #7459)
* core: fix crash when using column filling in bars with some empty items
(bug #32565)
* core: fix terminal title when $TERM starts with "screen"
* plugins: fix memory leaks when setting buffer callbacks after /upgrade
(plugins: irc, relay, xfer, scripts)
* aspell: fix spellers used after switch of window (bug #32811)
* irc: fix parsing of message 332 when no topic neither colon are found
(bug with bip proxy)
* irc: fix nick color in private when option irc.look.nick_color_force is
changed
* irc: fix tags for messages sent with /msg command (bug #33169)
* irc: fix memory leak when copying or renaming server
* irc: do not rejoin channels where /part has been issued before reconnection
to server (bug #33029)
* irc: use nick color for users outside the channel
* irc: update short name of server buffer when server is renamed
* irc: fix local variable "away" on server buffer (set/delete it each time away
is set or removed on server)
* irc: ignore join if nick is not self nick and if channel buffer does not
exist (bug #32667)
* irc: fix crash when setting wrong value in option
irc.server.xxx.sasl_mechanism (bug #32670)
* irc: fix crash when completing /part command on a non-irc buffer (bug #32402)
* irc: add many missing commands for target buffer (options irc.msgbuffer.xxx)
(bug #32216)
* lua: fix crash when many scripts are executing callbacks at same time
* perl: fix memory leak when calling Perl functions (bug #32895)
* relay: fix crash on /upgrade when nick in irc client is not yet set
* relay: allow colon in server password received from client
* relay: do not send join for private buffers to client
* rmodifier: fix reload of file rmodifier.conf
* rmodifier: fix crash when adding rmodifier with invalid regex
* tcl: fix Tcl detection on some 64-bits systems (bug #32915)
* xfer: do not close chat buffers when removing xfer from list (bug #32271)
[[0.3.4]]
== Version 0.3.4 (2011-01-16)
[[0.3.4_features]]
=== New features
* core: add 256 colors support, new command /color, new section "palette" in
weechat.conf (task #6834)
* core: add info "weechat_upgrading", signal "upgrade_ended", display duration
of upgrade
* core: replace the 10 nick color options and number of nick colors by a single
option "weechat.color.chat_nick_colors" (comma separated list of colors)
* core: add color support in option weechat.look.buffer_time_format
* core: add new option weechat.look.highlight_regex and function
string_has_highlight_regex() in plugin API (task #10321)
* core: add new option weechat.look.hotlist_unique_numbers (task #10691)
* core: add property "hotlist_max_level_nicks" in buffers to set max hotlist
level for some nicks in buffer
* core: add new options weechat.look.input_share and
weechat.look.input_share_overwrite (task #9228)
* core: add new option weechat.look.prefix_align_min (task #10650)
* api: add priority for hooks (task #10550)
* api: add new functions: list_search_pos(), list_casesearch_pos(),
hashtable_get_string(), hashtable_set_pointer(), hook_info_hashtable(),
info_get_hashtable(), hook_hsignal(), hook_hsignal_send(),
hook_completion_get_string(), nicklist_group_get_integer(),
nicklist_group_get_string(), nicklist_group_get_pointer(),
nicklist_group_set(), nicklist_nick_get_integer(),
nicklist_nick_get_string(), nicklist_nick_get_pointer(), nicklist_nick_set()
* irc: add option "-server" in command /join (task #10837)
* irc: add option "-switch" in commands /connect and /reconnect
* irc: add command /notify, new options irc.look.notify_tags_ison,
irc.look.notify_tags_whois, irc.network.notify_check_ison,
irc.network.notify_check_whois, new option "notify" in servers, new infolist
"irc_notify" (task #5441)
* irc: add new option irc.look.nick_color_force (task #7374)
* irc: add command redirection with hsignals irc_redirect_pattern and
irc_redirect_command (task #6703)
* irc: add new options irc.color.nick_prefix and irc.color.nick_suffix
* irc: add new option irc.look.item_away_message
* irc: add tag "nick_xxx" in user messages
* irc: move options from network section to server section: connection_timeout,
anti_flood_prio_high, anti_flood_prio_low, away_check, away_check_max_nicks,
default_msg_part, default_msg_quit (task #10664, task #10668)
* irc: rename options irc.look.open_channel_near_server and
irc.look.open_pv_near_server to irc.look.new_channel_position and
irc.look.new_pv_position with new values (none, next or near_server)
* irc: display old channel topic when topic is unset (task #9780)
* irc: add new info_hashtable "irc_parse_message"
* irc: add signal "irc_input_send"
* rmodifier: new plugin "rmodifier": alter modifier strings with regular
expressions (bug #26964)
* relay: beta version of IRC proxy, now relay plugin is compiled by default
* python: add info "python2_bin" (path to Python 2.x interpreter)
[[0.3.4_bugs]]
=== Bugs fixed
* core: fix scroll problem on buffers with free content and non-allocated lines
(bug #32039)
* core: add support of Python 2.7 in cmake and configure (debian #606989)
* core: call to function hook_config() when config option is created
* core: fix infinite loop on GnuTLS handshake when connecting with SSL to
server on wrong port or server with SSL problems (bug #27487)
* core: fix data sent to callback of hook_process() (some data was sometimes
missing), use a 64KB buffer for child output and send data to callback only
when buffer is full
* core: fix crash when displaying groups in buffer nicklist
* core: fix bug with message "day changed to", sometimes displayed several
times wrongly
* core: fix default value of bar items options (bug #31422)
* core: fix bug with buffer name in "/bar scroll" command
* core: optimize incremental search in buffer: do not search any more
when chars are added to a text not found (bug #31167)
* core: fix memory leaks when removing item in hashtable and when setting
highlight words in buffer
* core: use similar behavior for keys bound to local or global history
(bug #30759)
* alias: complete with alias value for second argument of command /alias
* irc: differentiate notices from messages in private buffer (bug #31980)
* irc: update nick modes with message 221 (bug #32038)
* irc: fix bug with charset decoding on private buffers (decoding was made for
local nick instead of remote nick) (bug #31890)
* irc: allow command /reconnect on servers that are not currently connected
(bug #30726)
* irc: fix topic completion in command /topic when channel topic starts with
channel name
* irc: improve nick prefixes, all modes (even unknown) are used with PREFIX
value from message 005
* irc: fix crash/bug when option "addresses" for a server is unset or changed
when WeeChat is connected to this server (bug #31268)
* irc: switch to next server address when IRC error is received after TCP
connection but before message 001 (bug #30884)
* irc: fix bug with hostmasks in command /ignore (bug #30716)
* relay: split of messages sent to clients of irc proxy
* scripts: add missing function infolist_reset_item_cursor() in API
(bug #31057)
* lua: fix crash when unloading script
* ruby: fix compilation with Ruby 1.9.2 (patch #7316)
* xfer: fix dcc chat buffer name (use irc server in name) (bug #29925)
* xfer: fix dcc file transfer for large files (more than 4 GB) on 32-bit
systems (bug #31531)
* xfer: fix bug at end of file sent, sometimes transfer is still active
although file was successfully sent
[[0.3.3]]
== Version 0.3.3 (2010-08-07)
[[0.3.3_features]]
=== New features
* core: use "!" to reverse a regex in a filter (to keep lines matching regex
and hide other lines) (task #10032)
* core: add keys for undo/redo changes on command line
(default: key[ctrl-`_`] and key[alt-`_`]) (task #9483)
* core: add new option weechat.look.align_end_of_lines
* core: add new option weechat.look.confirm_quit
* core: add new option weechat.color.status_name_ssl (task #10339)
* core: add hashtables with new functions in plugin API
* api: add function string_expand_home(), fix bug with replacement of home in
paths
* irc: add new option irc.look.nick_color_stop_chars
* irc: improve lag indicator: two colors (counting and finished), update item
even when pong has not been received, lag_min_show is now in milliseconds
* irc: add new options irc.look.display_host_join/join_local/quit and
irc.color.reason_quit
* irc: move options weechat.color.nicklist_prefix to irc plugin
* irc: add command /wallchops, fix bug with display of notice for ops
(task #10021, bug #29932)
* irc: add isupport value in servers (content of IRC message 005), with new
infos: irc_server_isupport and irc_server_isupport_value
* irc: add message in private buffer when nick is back on server after a /quit
* irc: add new options irc.network.autoreconnect_delay_growing and
irc.network.autoreconnect_delay_max (task #10338)
* irc: add missing commands 346, 347 (channel invite list)
* logger: use tag "no_log" to prevent a line from being written in log file
[[0.3.3_bugs]]
=== Bugs fixed
* core: fix bug with scroll_unread: do not scroll to a filtered line
(bug #29991)
* core: fix crash with hook_process() (when timer is called on a deleted hook
process)
* core: fix display bug with special chars (ascii value below 32) (bug #30602)
* core: fix display bug with attributes like underlined in bars (bug #29889)
* api: fix bug with replacement char in function string_remove_color()
(bug #30296)
* irc: fix bug in parser when no argument is received after command, no
callback was called, and message was silently ignored (bug #30640)
* irc: fix import of certificates created by OpenSSL >= 1.0.0 (bug #30316)
* irc: fix display of local SSL certificate when it is sent to server
(patch #7218)
* irc: use empty real name by default in config, instead of reading real name
in /etc/passwd (bug #30111)
* irc: fix bug with command-line option "irc://" (bug #29990), new format for
port and channels
* irc: fix display of messages 330 and 333 on some servers
* irc: fix bug with nick prefix "*" (chan founder) on some IRC servers
(bug #29890)
* irc: fix bug with option irc.network.lag_check when value is 0 (zero)
* irc: try other nick when connecting to server and receiving message 437
(nick unavailable)
* irc: set buffer local variable "away" when opening new channel (bug #29618)
* fifo: fix bug with fifo pipe when setting fifo option to "on"
* xfer: fix bug with double quotes in DCC filenames (bug #30471)
[[0.3.2]]
== Version 0.3.2 (2010-04-18)
[[0.3.2_features]]
=== New features
* core: add new options for command /key: listdefault, listdiff and reset
* core: add new command /mute
* core: add command line option "-s" (or "--no-script") to start WeeChat
without loading any script
* core: improve plugins autoload (option weechat.plugin.autoload): allow to
use "*" as wildcard and "!" to prevent a plugin from being autoloaded
(task #6361)
* core: add option "switch_active_buffer_previous" in command /input
(task #10141)
* core: add new option weechat.look.time_format to customize default format
for date/time displayed (localized date by default), add function
util_get_time_string() in plugin API (patch #6914)
* core: add new option weechat.look.command_chars, add functions
string_is_command_char() and string_input_for_buffer() in plugin and script
API
* core: add new option weechat.look.read_marker_always_show
* api: add "version_number" for function info_get() to get WeeChat version as
number
* api: add "irc_is_nick" for function info_get() to check if a string is a
valid IRC nick name (patch #7133)
* api: add functions string_encode_base64() and string_decode_base64(), fix
bug with base64 encoding
* api: add functions string_match(), string_has_highlight() and
string_mask_to_regex() in script plugin API
* api: add description of arguments for functions hook_info() and
hook_infolist()
* api: add signals "day_changed", "nicklist_group_added/removed",
"nicklist_nick_added/removed"
* alias: add custom completion for aliases (task #9479)
* scripts: allow script commands to reload only one script
* irc: add new option irc.look.part_closes_buffer to close buffer when /part
is issued on channel (task #10295)
* irc: add option "-open" in command /connect
* irc: add option irc.network.connection_timeout (timeout between TCP
connection to server and reception of message 001)
* irc: add options irc.look.smart_filter_join and irc.look.smart_filter_quit
* irc: add option irc.look.item_channel_modes_hide_key to hide channel key
in channel modes (bug #23961)
* irc: add option irc.look.item_nick_prefix
* irc: add command /map
* irc: add missing commands 276, 343
* logger: allow date format in logger options path and mask (task #9430)
* xfer: add signal "xfer_ended" (patch #7081)
[[0.3.2_bugs]]
=== Bugs fixed
* core: remove unneeded space after time on each line if option
weechat.look.buffer_time_format is set to empty value (bug #28751)
* core: use arguments for infolist "nicklist" to return only one nick or group
* core: fix bug with writing of configuration files when disk is full
(bug #29331)
* core: fix infinite loop with /layout apply and bug when applying layout,
sometimes many /layout apply were needed (bug #26110)
* gui: refresh screen when exiting WeeChat (to display messages printed after
/quit)
* gui: fix bug with global history, reset pointer to last entry after each user
input (bug #28754)
* gui: fix bug with bar background after text with background color
(bug #28157)
* gui: fix bug with cursor when position is last char of terminal
* api: add missing infos in functions buffer_get_{integer|string}() and in
buffer infolist
* api: fix function color() in Lua script API
* api: fix "inactivity" value when no key has been pressed since WeeChat
started (bug #28930)
* api: return absolute path for info_get() of "weechat_dir" (bug #27936)
* scripts: fix bug with callbacks when loading a script already loaded
* perl: fix crash when multiplicity is disabled
* perl: fix crash when callbacks are called during script initialization
(bug #29018)
* perl: fix crash on /quit or unload of plugin under FreeBSD and Cygwin
(bug #29467)
* perl: fix bug with script filename when multiplicity is disabled (bug #29530)
* irc: add SASL authentication, with PLAIN and DH-BLOWFISH mechanisms
(task #8829)
* irc: fix crash with SSL connection if option ssl_cert is set (bug #28752)
* irc: fix bug with SSL connection (fails sometimes when ssl_verify is on)
(bug #28741)
* irc: fix bug with nicks on reconnection: try all nicks in list, even if nick
used was not the first in list of nicks
* irc: fix command /list: send channel and server name given as argument, and
use separate option "-re" to allow a regex
* irc: fix PART message received on Undernet server (bug #28825)
* irc: fix bug with /away -all: set or unset future away for disconnected
servers (bug #29022)
* irc: fix bug with prefix "!" for mode "a" (channel admin) (bug #29109)
* irc: do not send signals "irc_in" and "irc_in2" when messages are ignored,
add new signals "irc_raw_in" and "irc_raw_in2"
* irc: apply smart filter only on channels, not private buffers (bug #28841)
* irc: fix compilation with old GnuTLS versions (bug #28723)
* xfer: fix crash when purging old xfer chats (bug #28764)
[[0.3.1.1]]
== Version 0.3.1.1 (2010-01-31)
[[0.3.1.1_bugs]]
=== Bugs fixed
* irc: fix crash with SSL connection if option ssl_cert is set (bug #28752)
* irc: fix bug with SSL connection (fails sometimes when ssl_verify is on)
(bug #28741)
* irc: fix compilation with old GnuTLS versions (bug #28723)
* xfer: fix crash when purging old xfer chats (bug #28764)
[[0.3.1]]
== Version 0.3.1 (2010-01-23)
[[0.3.1_features]]
=== New features
* core: add option "grab_key_command" in command /input (bound by default to
key[alt-k])
* alias: new expansions for alias arguments ($n, $-m, $n-, $n-m, $*, $~)
(patch #6917)
* alias: allow use of wildcards for /alias list (patch #6925)
* alias: allow /unalias to remove multiple aliases (patch #6926)
* irc: add new commands /allchan and /allserv with excluding option, commands
/ame and /amsg are now aliases, new aliases /aaway and /anick
* irc: add options to customize target buffer for messages (task #7381)
* irc: add new output queue for messages with low priority (like automatic CTCP
replies), high priority is given to user messages or commands
* irc: use self-signed certificate to auto identify on IRC server (CertFP)
(task #7492, debian #453348)
* irc: check SSL certificates (task #7492)
* irc: add option "autorejoin_delay" for servers (task #8771)
* irc: add option to use same nick color in channel and private (task #9870)
* irc: add missing command 275 (patch #6952)
* irc: add commands /sajoin, /samode, /sanick, /sapart, /saquit (task #9770)
* irc: add options for CTCP, to block/customize CTCP reply (task #9693)
* irc: add missing CTCP: clientinfo, finger, source, time, userinfo
(task #7270)
* irc: add all server options for commands /server and /connect
* irc: add arguments for command /rehash
* ruby: support of Ruby >= 1.9.1 (patch #6989)
* xfer: add color for nicks in chat
* xfer: add missing command /me (bug #28658)
* gui: add color "darkgray", add support for background with light color
[[0.3.1_bugs]]
=== Bugs fixed
* core: fix bug with script installation on BSD/OSX (patch #6980)
* core: fix compilation under Cygwin (patch #6916)
* core: fix cmake directories: let user customize lib, share, locale and
include directories (patch #6922)
* core: fix plural form in translation files (bug #27430)
* core: fix terminal title bug: do not reset it when option
weechat.look.set_title is off (bug #27399)
* core: fix buffer used by some input functions called via plugin API with
buffer pointer (bug #28152)
* alias: fix bug with buffer for execution of alias, when called from plugin
API with function command() (bug #27697)
* alias: fix bug with arguments (bug #27440)
* irc: improve error management on socket error (recv/send)
* irc: improve mask used by command /kickban
* irc: fix nick color for nicks with wide chars (bug #28547)
* irc: fix autorejoin on channels with key
* irc: fix command /connect (options -ssl, -ipv6 and -port) (bug #27486)
* xfer: add missing charset decoding/encoding for IRC DCC chat (bug #27482)
* fifo: remove old pipes before creating new pipe
* gui: fix color "black" (bug #23882, debian #512957)
* gui: fix message "Day changed to", sometimes displayed at wrong time
(bug #26959)
* gui: fix bug with URL selection in some terminals (caused by horizontal
lines) (bug #27700)
* gui: use default auto completion for arguments of unknown commands
* gui: fix alignment problem for buffer name when a merged buffer is closed
(bug #27617)
* gui: update hotlist when a buffer is closed (bug #27470), remove buffer from
hotlist when buffer is cleared (bug #27530)
* gui: fix /input history_global_next: reset input content when last command in
history is reached
* api: fix function bar_set() for python/lua/ruby (patch #6912)
[[0.3.0]]
== Version 0.3.0 (2009-09-06)
[[0.3.0_features]]
=== New features
* core: add group support in nicklist
* core: improve main loop: higher timeout in select(), less CPU usage
* core: add /reload command to reload WeeChat and plugins config files (signal
SIGHUP is caught to reload config files)
* core: add new /layout command and save_layout_on_exit config option, to
save/restore windows and buffers order (task #5453)
* core: add new options for completion, optional stop instead of cycling with
words found (task #5909)
* core: new name for configuration files (*.conf instead of *.rc)
* core: improve /set command, new command /unset (task #6085)
* core: add new input action "set_unread_current_buffer" to set unread marker
for current buffer only (task #7286)
* core: add Polish translation (thanks to Soltys)
* core: remove key functions, replaced by /input command
* core: add argument with buffer number/range for command "/buffer close"
(task #9390, task #7239)
* core: add new command /wait (schedule a command execution in future)
* gui: new display engine, with prefix and message for each line
* gui: add new type of buffer, with free content
* gui: add tags for lines and custom filtering by tags or regex (task #7674)
* gui: add buffer merging (task #7404)
* gui: add custom bars, with custom items
* gui: add key to zoom a window (task #7470)
* gui: add keys to move into last visited buffers: key[alt-]key[<] and
key[alt-]key[>]
* gui: come back to last visited buffer when closing a buffer
* gui: add new option scroll_page_percent to choose percent of height to scroll
with key[PgUp] and key[PgDn] keys (task #8702)
* gui: add number of lines remaining after last line displayed in "-MORE-"
indicator (task #6702)
* network: add support for more than one proxy, with proxy selection for each
IRC server (task #6859)
* aspell: improve plugin: use of many dictionaries, global dictionary, real
time checking (optional), fix bugs with utf-8
* irc: add irc plugin (replaces old IRC code in core) (task #6217)
* irc: add smart join/part/quit message filter (task #8503)
* irc: use of many addresses for servers (auto-switch when a connection fails),
nicks are now set with one option "nicks" (task #6088)
* irc: add some colors in messages from server (for text and nicks)
(task #8926)
* irc: add color decoding in title for IRC channels (task #6030)
* irc: add missing commands (328, 369)
* logger: add logger plugin with new features: backlog, level for messages to
log (task #8592), level by buffer (task #6687), filename mask by buffer,
option "name_lower_case" (bug #19522)
* relay: add relay plugin (network communication between WeeChat and remote
application)
* xfer: add speed limit for DCC files sending (task #6178)
* xfer: add new option "xfer.file.use_nick_in_filename" for Xfer files
(task #7140)
* plugins: add some other plugins: alias, demo, fifo, tcl, xfer
* scripts: new scripts: weeget.py (scripts manager), jabber.py (jabber/XMPP
protocol), go.py (quick jump to buffers), buffers.pl (sidebar with list of
buffers), iset.pl (set options interactively), weetris.pl (tetris-like game),
mastermind.pl, ...
* api: add hooks: command, timer, file descriptor, process, connection, print,
signal, config, completion, modifier, info, infolist
* api: new plugin API with many new functions: hooks, buffer management and
nicklist, bars, configuration files, network, infos/infolists, lists,
upgrade
[[0.3.0_bugs]]
=== Bugs fixed
* core: fix nick completion bug (missing space after nick)
* gui: fix completion with non-latin nicks (bug #18993)
* gui: fix display bug with some weird UTF-8 chars (bug #19687)
* gui: fix bug with wide chars in input (bug #16356)
* gui: fix bug when switching window, scrollback is now preserved
(task #7680)
* network: fix network connection for hostnames resolving to several IPs: try
all IPs in list until one succeeds (bug #21473, debian #498610)
* alias: fix bug with alias, use current buffer to run commands (bug #22876)
* irc: fix lock with SSL servers when connection fails, and when
disconnecting during connection problem (bug #17584)
* irc: command /whois is now authorized in private without argument
(task #7482)
* irc: fix private buffer name with Irssi proxy (bug #26589)
* irc: remove kernel info in CTCP VERSION reply (task #7494)
* irc: fix mode parsing when receiving modes with arguments (bug #26793)
* scripts: do not auto-load hidden files (bug #21390)
[[0.2.6.3]]
== Version 0.2.6.3 (2009-06-13)
[[0.2.6.3_bugs]]
=== Bugs fixed
* fix GnuTLS detection (use pkg-config instead of libgnutls-config)
(bug #26790)
[[0.2.6.2]]
== Version 0.2.6.2 (2009-04-18)
[[0.2.6.2_bugs]]
=== Bugs fixed
* fix bug with charset decoding (for example with iso2022jp) (bug #26228)
[[0.2.6.1]]
== Version 0.2.6.1 (2009-03-14)
[[0.2.6.1_bugs]]
=== Bugs fixed
* fix crash with some special chars in IRC messages (bug #25862)
[[0.2.6]]
== Version 0.2.6 (2007-09-06)
[[0.2.6_features]]
=== New features
* add new option "deloutq" to /server command to delete all servers messages
out queues (task #7221)
* add string length limit for setup file options
* add option to align text of messages (except first lines) (task #7246)
* add paste detection, new options look_paste_max_lines and col_input_actions
(task #5442)
* add Swedish quickstart guide
* add support of channel mode +u (channel user) (bug #20717)
* improve /connect command to connect to a host by creating a temporary server,
add option to /server to create temporary server (task #7095)
* add "copy", "rename" and "keep" options to /server command
* allow clear of multiple selected buffers with /clear (patch #6112)
* add key for setting unread marker on all buffers
(default: key[ctrl-s,ctrl-u]) (task #7180)
* improve command /server ant its output
* add 3 default new keys: key[ctrl-b] (left), key[ctrl-f] (right), key[ctrl-d]
(delete)
* add "buffer_move" event handler to plugins API (task #6708)
* add key function "jump_previous_buffer" to jump to buffer previously
displayed (new key: key[alt-j,alt-p]) (task #7085)
* add "%*" to completion template, to repeat last completion
* add "-nojoin" option for /connect and /reconnect commands (task #7074)
* add "scroll" option to /buffer command
* down key now saves input to history and clears input line (task #7049)
* command /away allowed when not connected to server (internally stored and
AWAY command is sent when connecting to server) (task #7003)
* add argument for /upgrade command (path to binary)
* add hotlist sort with new option "look_hotlist_sort" (task #5870)
[[0.2.6_bugs]]
=== Bugs fixed
* fix bug with log of plugin messages (option log_plugin_msg)
* fix display bug with some special chars in messages (some words were
truncated on screen) (bug #20944)
* fix UTF-8 bug with color encoding/decoding
* fix crash when searching text in buffer with key[ctrl-r] (bug #20938)
* fix bug with flock() when home is on NFS filesystem (bug #20913)
* fix user modes in nicklist when ban and nick mode are received in the same
MODE message (bug #20870)
* fix IRC message 333: silently ignore message if error when parsing it
* fix server option "command_delay": does not freeze WeeChat any more
* fix bug with highlight and UTF-8 chars around word (bug #20753)
* fix nick prefix display on servers that doesn't support all prefixes
(bug #20025)
* fix terminal encoding detection when NLS is disabled (bug #20646)
* fix crash when sending data to channel or pv on disconnected server
(bug #20524)
* fix bugs with IRC color in messages, now color codes are inserted in command
line with key[ctrl-c], key[ctrl-b].. instead of %C,%B,..
(bug #20222, task #7060)
* fix bug with smart nick completion (last speakers first) when a nick is
changed
* fix charset bug with channel names in status bar (bug #20400)
* fix log file when channel name contains "/" (bug #20072)
* fix bug with /topic when channel not open and topic not defined (bug #20141)
[[0.2.5]]
== Version 0.2.5 (2007-06-07)
[[0.2.5_features]]
=== New features
* add missing IRC commands (327, 378, 379) (bug #20091)
* add "%M" for completion with nicks of current server (nicks on open channels)
(task #6931)
* improve key bindings: now possible to bind a key on many commands, separated
by semicolon (task #5444)
* improve IRC long message split: use word boundary (task #6685)
* add cmake for weechat compile (patch #5943)
* add protocol priority for GnuTLS (patch #5915)
* add channel admin mode "!" for some IRC servers
* add /reconnect command (task #5448)
* add "-all" option for /connect and /disconnect commands (task #6232)
* improve nick completion: completion with last speakers first and self nick at
the end; add option look_nick_completion_smart, enabled by default
(task #5896)
* add color for input text not found in buffer history
[[0.2.5_bugs]]
=== Bugs fixed
* fix QUOTE command: now allowed when socket is OK (even if IRC connection to
server is not OK) (bug #20113)
* fix hotlist when exiting search mode: current buffer is removed from hotlist
* remove ":" for unknown IRC commands before arguments (bug #19929)
* fix "%C" completion: now completes with all channels of all servers
* fix bug with "/buffer query_name", add server and channel completion for
/buffer command (bug #19928)
* fix IRC mode parsing when receiving modes with arguments (bug #19902)
* fix crash with IRC JOIN malformed message (bug #19891)
* fix bug with nick prefixes on some IRC servers (bug #19854)
* improve setup file save: now writes temporary file, then rename it
(task #6847)
* fix bug with $nick/$channel/$server variables in commands
* forget current nick when user manually disconnects from server
* fix nick display in input window
* fix bug with erroneous nickname when connecting to server (bug #19812)
* fix display bugs in IRC error messages
* fix bug with iso2022jp locale (bug #18719)
* fix string format bug when displaying string through plugin script API
* fix nick completion in command arguments (bug #19590)
* fix possible crash with nick completion when a nick leaves channel
(bug #19589)
* fix USER message when connecting to IRC server (patch #5835)
[[0.2.4]]
== Version 0.2.4 (2007-03-29)
[[0.2.4_features]]
=== New features
* rename log file for DCC chat (now <server>.dcc.<nick>.weechatlog)
* add current buffer in hotlist when scrolling up in buffer (task #6664)
* improve password hiding, code cleanup (bug #19229)
* add new return code in plugin API to force highlight (for message handlers
only)
* add "call" option to /key command, add new key function "insert" to insert
text on command line (task #6468)
* add event handler to plugin API
* add Scots quickstart guide
* add numeric argument for /clear command (buffer number) (patch #5372)
[[0.2.4_bugs]]
=== Bugs fixed
* fix color bug with IRC messages displayed by plugins (bug #19442)
* fix topic charset, now using channel charset if defined (bug #19386)
* fix crash when closing a pv if a DCC chat is open on same nick (bug #19147)
* fix bug with channel topic after reconnection (not erased) (bug #19384)
* fix bug with explode_string / free_exploded_string when max_items > 0
* add new key (key[ctrl-r]) for interactive and incremental search in buffer
history (task #6628)
* fix /topic completion when no topic set on current channel (bug #19322)
* fix bug with server buffer when "look_one_server_buffer" is ON and server
buffer is moved to any number > 1 (bug #19219)
* fix /help command: displays plugin help for redefined commands (bug #19166)
* prefix "/" disabled in commands (patch #5769)
* fix completion of redefined commands removed by plugins (bug #19176)
* fix memory leaks in perl and python plugins (bug #19163)
* fix permissions on "dcc" and "logs" directories (bug #18978)
* fix crash when /away command is issued with no server connection (bug #18839)
* fix crash when closing a buffer opened on many windows
* fix freeze with SSL server when disconnecting after connection loss
(bug #18735)
[[0.2.3]]
== Version 0.2.3 (2007-01-10)
[[0.2.3_bugs]]
=== Bugs fixed
* fix display bugs with nicklist at top/bottom when look_nicklist_separator is
OFF (bug #18737)
* fix iconv problem, causing truncated words when using iso locale
* fix topic scroll when topic has multi-bytes chars
* fix compilation problem with iconv under FreeBSD
* fix bugs with charset: now decodes/encodes nicks and channels in IRC messages
(bug #18716)
[[0.2.2]]
== Version 0.2.2 (2007-01-06)
[[0.2.2_features]]
=== New features
* add anti-flood option (irc_anti_flood) (task #5442)
* plugins: "add_message_handler" now accepts "*" for all IRC messages
* add keys (key[F9]/key[F10]) to scroll topic (task #6030)
* add auto completion with channels and filenames (task #5423)
* add option "look_nicklist_separator" (task #5437)
* add "irc_send_unknown_commands" option to send unknown commands to IRC server
(OFF by default) (task #5947)
* /charset command and charset conversions now made by "charset" plugin
* add filename completion (task #5425)
* add "modifier" in plugins API
* improve /plugin command
* add date in plugin function get_buffer_data()
* add more values for config boolean values: y/true/t/1 and n/false/f/0
[[0.2.2_bugs]]
=== Bugs fixed
* fix bug with status bar (missing refresh) when closing a buffer
* fix bug with use of first buffer for a channel if not connected to server
(now allowed only for a server buffer)
* fix refresh bug with private buffer title
* fix bug with nick completion in command arguments (now uses option
look_nick_completion_ignore)
* fix display bug with color for first line on screen (bug #17719)
* fix bug with set_config() function in plugins API (bug #18448)
* fix memory leak in keyboard input
* fix refresh bug when changing config options if window is split
* add space between chat and nicklist when position is "right" (bug #17852)
* fix bug with DCC SEND when filename begins with "~"
* fix display bug in status bar, wrong length when using UTF-8
* fix bug with ignore: now any IRC command is allowed
* fix crash with key[ctrl-t] (transpose) and one char on line (bug #18153)
* fix bug on ignore with "mode" IRC command (bug #18058)
* fix crash when loading ruby script if file does not exist, with Ruby >= 1.9
only (bug #18064)
* fix some portability bugs (patch #5271)
* fix iconv detection for BSD (patch #5456)
* fix typo in configure.in (bash specific test) (patch #5450)
* mode changes with /op, /deop, /voice, /devoice, /halfop, /dehalfop are now
sent in one mode command to server (task #5968)
* fix bug with /alias and arguments (like $1), now text after argument(s) is
used (bug #17944)
* fix minor display bug with special chars on some arch like PPC
[[0.2.1]]
== Version 0.2.1 (2006-10-01)
[[0.2.1_features]]
=== New features
* command "/away -all" now allowed when not connected to current server
* new signals handled: SIGTERM and SIGHUP (received when terminal is closed):
clean WeeChat quit (send quit to irc servers then quit WeeChat)
* add some new default key bindings for existing keys (for some OS)
* command /key now OK with one argument (key name): display key if found
* add current channel completion for /ctcp command
* values yes/no accepted (as on/off) for config boolean values (task #5454)
* add server default notify level (set by /buffer notify on server buffer)
(task #5634)
* add special vars $nick/$channel/$server for server_command, alias and plugin
command handlers
* add arguments $1,$2,..,$9 and $* for alias (task #5831)
* add hotlist in session file when using /upgrade command (task #5449)
[[0.2.1_bugs]]
=== Bugs fixed
* fix crash for DCC receiver when resuming a file (bug #17885)
* fix DCC error for sender when receiver cancels DCC (bug #17838)
* fix random crash with /upgrade command (error when loading buffers)
* fix buffer search by server/channel: now if only channel is specified, a
channel of another server can be found
* fix highlight for DCC, invite and notice: when a window is displaying buffer,
there's no highlight
* fix bug with CTCP VERSION sent on channels (bug #17547)
* fix bugs in get_buffer_data() which breaks the retrieval of buffer content
(perl, lua)
* fix nicklist display bug when top/bottom (not enough lines) (bug #17537)
* fix bug with auto-rejoin of keyed channels (bug #17534)
* add default nick completion when line starts with "//" (bug #17535)
* fix crashes with /buffer and /charset commands when not connected to any
server (bug #17525)
* fix nick refresh problem with unrealircd specific modes: chan owner (~) and
chan admin (&) (bug #17340)
[[0.2.0]]
== Version 0.2.0 (2006-08-19)
[[0.2.0_features]]
=== New features
* add "C"lear option on IRC raw buffer
* IRC raw buffer now uses join/part prefix with color to display messages
* add send of "quit" message to server when using /disconnect
* add "%m" for completion with self nick (on current server)
* add missing IRC commands (310, 326, 329, 338)
* improve DCC speed (up to x5 on LAN) by forking for DCC files and a new option
"dcc_fast_send" (does not wait for ACK) (task #5758)
* add "look_save_on_exit" option (patch from Emanuele Giaquinta)
* add configure option for doc XSL prefix (bug #16991)
* add new functions in plugin/script API: get window info, get buffer info, get
buffer content
* add Polish, Russian and Czech quickstart guide
* add color encoding for some commands like /me
* add aspell plugin
[[0.2.0_bugs]]
=== Bugs fixed
* fix "wallops" command when received, now displayed by WeeChat (bug #17441)
* fix /wallops command (now many words are correctly sent)
* fix command 348 (channel exception list, received by /mode #chan e)
* add missing modes (channel & user), now all modes are allowed (bug #16606)
* fix DCC restore after /upgrade (order is now correctly saved)
* fix away after server disconnection (now away is set again when reconnecting)
(bug #16359)
* fix DCC file connection problem (connection from receiver to sender)
* fix crash when purging DCC with high number of DCC (> window size)
* fix completion for command handlers (now empty completion_template means nick
completion, "-" string means no completion at all)
* fix nick alignment problem when look_nickmode is off
* add generic function for incoming numeric IRC commands (bug #16611)
* fix crash when doing "/part something" on a server buffer (bug #17201)
* charsets are now checked when set by /charset command
* fix crash on DCC buffer under Darwin 8 (bug #17115)
* fix bug with spaces in script names (bug #16957)
* fix random crash when "MODE #chan -l" is received
* fix bug in IRC parser (random crash with malformed IRC messages)
* fix refresh bugs when terminal is resized: too many refreshs, display bug
with split windows
* case ignored for channel names in charset options (bug #16858)
* fix crash when setting look_one_server_buffer to ON (bug #16932)
* fix display bug with special char (bug #16732)
* rename plugins names (remove "lib" prefix in name)
* fix crash when closing DCC/raw buffer if 2 are open (bug #16808)
* fix crashes with DCC chat remove/purge on DCC view (bug #16775)
* fix bug with connection to bnc (bug #16760)
* command /save now writes plugins options (~/.weechat/plugins.rc)
* fix crash with register() function in plugin scripts (bug #16701)
* fix random crash at exit (/quit or /upgrade) with split windows
[[0.1.9]]
== Version 0.1.9 (2006-05-25)
[[0.1.9_features]]
=== New features
* add backtrace when WeeChat crashes, log file automatically renamed
* add new key to find previous completion (key[shift-Tab] by default)
* add Russian translations (thanks to Pavel Shevchuk)
* add German doc (thanks to Frank Zacharias)
* add missing IRC commands (006, 007, 290, 292, 310, 379, 437, 974)
* add new option to customize input prompt
* add nick modes
* add hostnames associated to nicks (available for /ban completion)
* add "+p" mode for channels, fix mode display in status bar
* add nick alignment options
* add keyboard handler to plugin API
* improve script plugin loader
* add hostname/IP option for connection to server
* add /setp command (set plugin options)
* aliases are executed before WeeChat/IRC commands, add /builtin command
* add /cycle command, /part command does close buffer any more (use
/buffer close (or alias /close) to part and close buffer
[[0.1.9_bugs]]
=== Bugs fixed
* fix /squery command (message sent to server, now OK with more than two
arguments)
* fix /alias command (with an alias name, display content)
* improve Lua detection (bug #16574)
* add lock for log file (~/.weechat/weechat.log), only one WeeChat process can
use this file (bug #16382)
* fix crash with malformed UTF-8 strings
* fix crash with ncurses color when too many colors defined in ncurses
(bug #16556)
* fix bug with long outgoing IRC messages (> 512 bytes) (bug #16358)
* fix Ruby crash when handler does not return OK or KO (bug #16552)
* fix UTF-8 display bug with chars using more than one cell on screen
(bug #16356)
* fix display bug with DCC file size when > 1 GB
* fix refresh bug (deadlock in curses) when terminal is resized (bug #16542)
* fix nicklist sort bug
* fix crash when multiple pv have same name: now it's forbidden and pv buffer
is not renamed (when a nick changes) if another exists with same name
(bug #16369)
* command /clear [-all] now clears hotlist
* fix crash after /upgrade if a line in history is empty (bug #16379)
* fix many crashes with DCC chat (bug #16416)
* fix commands 332, 333 (/topic now OK when channel is not opened)
* remove color encoding and charset conversion for commands (only allowed in
text sent to channel/private)
* fix /names command: now displays result when not on a channel
* fix refresh bug (too many refresh) when terminal is resized
* fix nicklist display bugs when on top or bottom of chat window
* fix --disable-plugins option in configure script
* fix high CPU usage when running under a screen that has been killed
[[0.1.8]]
== Version 0.1.8 (2006-03-18)
[[0.1.8_features]]
=== New features
* improve alias completion (now uses target command for completion)
* add missing IRC command (487)
* add inactivity time, available for plugins via get_info("inactivity")
* add keys key[alt-]key[Home]/key[End] to scroll top/bottom,
key[alt-]key[F11]/key[F12] to scroll nicklist top/bottom
* add special names for plugin message handlers: weechat_pv, weechat_highlight,
weechat_ctcp, weechat_dcc
* add IRC raw data buffer (new key: key[alt-j,alt-r])
* add new plugins functions: add_timer_handler(), remove_timer_handler(),
remove_infobar()
* plugin messages handlers now called when message is ignored (by /ignore)
* new behavior for messages ignored by a message handler: now WeeChat
executes standard handler, treating message as "ignored"
* many commands allowed for aliases
* many commands allowed when connecting to server
* add Lua script plugin
* add functions in plugins API: get_server_info(), free_server_info(),
get_channel_info(), free_channel_info(), get_nick_info(), free_nick_info()
* add option "look_nick_complete_first" (patch from Gwenn)
* add option "look_open_near_server" (patch from Gwenn)
* add new scroll keys for a few lines up/down
(default: key[alt-]key[PgUp]/key[PgDn]) (patch from Pistos)
* add new option "irc_away_check_max_nicks" to disable away check on channels
with high number of nicks (patch from Gwenn)
* add new command line argument for setting WeeChat home dir (-d or --dir)
(patch from Gwenn)
* add option "irc_show_away_once", to show away message only once in pv
* add partial Hungarian translation
[[0.1.8_bugs]]
=== Bugs fixed
* improve Ruby plugin
* fix /set command when internal server name contains one or many dots
* fix get_info plugin API function when no server at all is opened
* fix display bug when top of buffer is displayed and first line is removed
(according to "history_max_lines" setting)
* fix /mode command output
* fix completion problem in private with nicks
* script plugins now load scripts in WeeChat system share directory
* /msg command does not open any buffer any more
* fix crash when using global history (when older entry is removed)
* fix display bug with /kill command
* fix bug with /upgrade and servers buffer
* fix bug with get_dcc_info() plugin interface function
* fix bug with charset in infobar highlights
* fix bug with buffer detection in plugins/scripts commands
* fix bug with /history command
[[0.1.7]]
== Version 0.1.7 (2006-01-14)
[[0.1.7_features]]
=== New features
* remove "irc_default_msg_away" setting, for RFC 2812 conformity (/away command
without argument only removes away status), new values for "irc_display_away"
(off, local, channel)
* replace Texinfo doc by XML Docbook
* add color for window separators (when split)
* add completion system for plugins/scripts commands
* add charset by server and channel, new command: /charset
* add Ruby script plugin
* add /upgrade command
* add ETA (Estimated Time of Arrival) for DCC files
* /nick command is now allowed when not connected to server
* add server/channel argument to /buffer command for jumping to buffer
* add new keys for switching to other windows: key[alt-w,alt-Arrow]
* add new keys for scrolling to previous/next highlight:
key[alt-p] / key[alt-n]
* add "read marker": an indicator for first unread line in a server or channel
buffer (new key key[alt-u] to scroll to marker)
* new window management: custom size for windows, auto resize when terminal is
resized
* add /history command
[[0.1.7_bugs]]
=== Bugs fixed
* fix msg command (now allowed in private buffer with "*" as target)
* fix refresh bug with Solaris when term size is changed
* fix plugins autoload
* fix display bug in chat window when a message length equals to window width
* fix infinite loop when resizing term to small size
[[0.1.6]]
== Version 0.1.6 (2005-11-11)
[[0.1.6_features]]
=== New features
* new color management system, IRC colors are now correctly displayed and can
be removed by new options irc_colors_receive and irc_colors_send
* add setting for having one server buffer for all servers
(look_one_server_buffer)
* add setting for ignoring some chars when completing nicks
* signal SIGPIPE is now ignored
* add partial match for highlights
* add dcc_own_ip and dcc_port_range settings
* full UTF-8 support, auto-detection of UTF-8 usage (locale)
* add "Day changed to [date]" message when day changes
* new plugin interface, rewritten from scratch: now loads dynamic C library,
and perl/python are script plugins
* log options (for server/channel/private) can now be set while WeeChat is
running
* add channel modes +e and +f
* add some missing IRC commands, fix command 367
* add colors for input buffer and current channel of status bar
* add online help for config options (with /set full_option_name)
* enhanced "smart" hotlist, with names (new options:
look_hotlist_names_{count|level|length})
[[0.1.6_bugs]]
=== Bugs fixed
* fix scroll problem when one line is bigger than screen size
* fix IRC message parser bug
[[0.1.5]]
== Version 0.1.5 (2005-09-24)
[[0.1.5_features]]
=== New features
* add /ame command (send CTCP action to all channels of all connected servers)
* add setting "irc_notice_as_pv" to see notices as pv
* add nicks colors in setup file
* add some missing IRC commands
* add /ignore and /unignore commands
* signal SIGQUIT is now ignored
* jump to next server now saves current channel buffer for each server
* add keys key[ctrl-]key[Up]/key[Down] to call previous/next command in global
history (common to all buffers)
[[0.1.5_bugs]]
=== Bugs fixed
* fix DCC bug: delete failed file only if really empty (on disk)
* fix IRC message parser bug
* fix scroll problem (screen moving when scrolling and new line displayed)
* fix infinite loop when scrolling back and displaying long lines
* fix crash when closing a buffer used by more than one window
* fix DCC display bug (now decodes string according to charset)
* fix bug with strings comparison (str[n]casecmp) and some locales (like
Turkish), now using ASCII comparison (thanks to roktas)
* fix refresh bug when one line is bigger than screen size
* fix look_nicklist_min_size and look_nicklist_max_size options
* fix refresh bug when changing channel modes
[[0.1.4]]
== Version 0.1.4 (2005-07-30)
[[0.1.4_features]]
=== New features
* join and part/quit prefixes (arrows) now displayed with different colors
* add "irc_highlight" setting, to get highlight with any word
* add /amsg command (send text to all channels of all connected servers)
* add color for private in hotlist (different than color for highlight)
* add DCC resume and timeout
* add function for Perl/Python to get DCC list
* new keyboard management: keys are setup in config file, add new command /key,
add some new default keys, key[alt-k] is used to grab key (useful for /key
command)
* add seconds in infobar time (optional thanks to new setting)
* add auto-prefix with "#" for channels (if no prefix found), with /join
command
[[0.1.4_bugs]]
=== Bugs fixed
* fix auto-rejoin for channels with key
* fix /ctcp command (now any command/data allowed)
* fix SIGSEGV handler (now write a core file by aborting program)
* fix statusbar & infobar background refresh problem with some systems
* fix FIFO pipe (command now authorized on a buffer not connected to an IRC
server)
* topic completion now decodes UTF-8 string
* fix bug with IRC URL on command line (irc://)
* fix some curses refreshs
[[0.1.3]]
== Version 0.1.3 (2005-07-02)
[[0.1.3_features]]
=== New features
* proxy support (http, socks4, socks5) with authentication (http, socks5)
and ipv6 support (client to proxy)
* add completion for config option (with /set command)
* commands from users outside channel now authorized (if special user or
channel without "n" flag)
* add IPv6 support
* kill command now received and displayed
* add SSL support
* channel notify levels are saved in config file (new option
"server_notify_levels" for server sections)
* part message now accepts %v (replaced by WeeChat version), like quit message
[[0.1.3_bugs]]
=== Bugs fixed
* errors while loading perl scripts are now displayed in server buffer
(instead of current buffer)
* in python scripts, all messages written in stdin and stderr are redirected in
server buffer
* fix a filename error while loading a python script manually
* fix plugins print() and prnt() functions: now OK for writing on server
buffers
* fix color problem with new libcurses version
* fix crash when using key[alt-s] or key[alt-x] on DCC buffer (key[alt-d])
* fix startup crash when config file (~/.weechat/weechat.rc) is not found
* improve Perl/Python libs detection for ./configure script
[[0.1.2]]
== Version 0.1.2 (2005-05-21)
[[0.1.2_features]]
=== New features
* add Python plugin support, improve Perl interface (and now Perl/Python
libraries are checked by configure script)
* add nicklist scroll keys (key[alt-]key[Home]/key[End]/key[PgUp]/key[PgDn] or
key[F11]/key[F12])
* add transfer rate for DCC files
* add "-all" option for /nick command
* buffers timestamp can now be changed (new option in config file)
* WeeChat now OK under *BSD and Mac OS X
* add missing IRC commands (307, 341, 485, 671)
[[0.1.2_bugs]]
=== Bugs fixed
* fix nicklist sort
* fix crash when purging old DCC
* fix crash with 64-bits arch (like AMD64) when converting UTF-8
[[0.1.1]]
== Version 0.1.1 (2005-03-20)
[[0.1.1_features]]
=== New features
* add nicks count for channel buffers
* add FIFO pipe for remote control
* add crash dump when WeeChat receives SIGSEGV (Segmentation fault)
* add new display engine: doesn't cut words at end of lines
* add DCC send and DCC chat
* add /halfop & /dehalfop commands, fix halfop display bug in nicklist
* add /ban, /unban and /kickban commands
* add Spanish translation
* add --irc-commands and --weechat-commands command line options
* connection to IRC server is now made by child process (non blocking)
* add support for UnrealIrcd ("~" for chan owner, "&" for chan admin)
* new key for window switch (now: key[F5]/key[F6] = switch buffer,
key[F7]/key[F8] = switch window)
* on server buffer, only server messages are logged
* improve /help command output
* plugins messages are logged with new config option (log_plugin_msg)
[[0.1.1_bugs]]
=== Bugs fixed
* fix /kick command
* fix /invite command (and now invite requests are displayed)
* fix /buffer close command (now OK when disconnected from server)
* fix display bugs when many windows are opened
[[0.1.0]]
== Version 0.1.0 (2005-02-12)
[[0.1.0_features]]
=== New features
* improve /window command: now split and merge are OK
* away nicks are now displayed with another color (new option:
"irc_away_check")
* add away indicator in status bar
* add lag indicator (and auto-disconnect after a delay if important lag)
* improve completion: now completes commands arguments (IRC and internal),
when only one completion matches, completion mechanism is stopped
(to complete command argument for example)
* improve /set command: empty strings are allowed, new colors, server options
can be changed while WeeChat is running
* add default away/part/quit messages in config file
* new [irc] section in config file, move option "look_display_away" to
"irc_display_away"
* server messages & errors are all prefixed (by 3 chars, like "-@-")
* add new options for charset (UTF-8 support): look_charset_decode,
look_charset_encode and look_charset_internal
[[0.1.0_bugs]]
=== Bugs fixed
* fix many memory leaks
* fix colors bug: remove "gray" color (replaced by "default"), colors are OK
when terminal has white (or light) background
* fix crash when resizing terminal to small size
* fix crash when multiple servers and big messages received from server
* fix crash when closing some private buffers
* fix crash when unknown section with option(s) in config file
* fix /op, /deop, /voice, /devoice (now OK with many nicks)
* fix /me command (now OK without parameter)
* fix /away command (now OK if not away)
* logs are now disabled by default (server/channel/private)
[[0.0.9]]
== Version 0.0.9 (2005-01-01)
[[0.0.9_features]]
=== New features
* auto-reconnection to server (new options: server_autoreconnect (on/off),
server_autoreconnect_delay (in seconds))
* new command "/buffer close" (close any server/channel/private buffer)
* new keys: key[ctrl-a] (home), key[ctrl-e] (end), key[ctrl-w] (same as
key[ctrl-Backspace]), key[alt-s] (switch to server buffer), key[alt-x]
(switch to first channel of next server)
* add new config option: "server_command_delay" (delay in seconds after startup
command for each server)
[[0.0.9_bugs]]
=== Bugs fixed
* fix major bug when socket is closed by server (100% CPU usage), and
disconnections are now OK (all channels are "closed", history is still
visible, and buffer will be used again if reconnection to server)
* option "look_remove_colors_from_msgs" is now working
* fix display of nick mode changes
* fix /notice command (and display when received from server)
[[0.0.8]]
== Version 0.0.8 (2004-10-30)
[[0.0.8_features]]
=== New features
* nickserv passwords hidden (new config option: log_hide_nickserv_pwd on/off)
* auto-rejoin channels when kicked (new config option: server_autorejoin
on/off)
* add IRC::command function for Perl scripts
* /buffer command developed (buffers list, move and notify)
* logging buffers to disk (server/channel/private according to user
preferences)
* add config option "look_display_away" to announce away in channels
* DCC file receive OK (key[alt-d] for DCC view)
* add key for redrawing terminal (key[ctrl-l])
* add key for clearing hotlist (key[alt-r])
[[0.0.8_bugs]]
=== Bugs fixed
* fix /kick command: now OK with many words as reason
* fix bug when adding alias with same name as other
* fix crash when resizing terminal to very small size
* "-MORE-" message is now erased when switching to another buffer
* /query command now reopens private buffer if already opened
[[0.0.7]]
== Version 0.0.7 (2004-08-08)
[[0.0.7_features]]
=== New features
* new "col_status_delimiters" config option
* add command /buffer , buffers ordered by number, auto-jump to active buffers
(key[alt-a]), jump to buffers by number (key[alt-0...9])
* add command /window, split terminal horizontally/vertically
* unique color for each nick (based on nickname)
* add history limit (text buffer and commands)
[[0.0.7_bugs]]
=== Bugs fixed
* action messages are now considered as messages, not crappy joins/parts
* fix display bug when nicklist is displayed at bottom of screen
* replace --enable-debug with --with-debug option for ./configure, which is now
integer: 1 = compiler debug flag, 2 = same 1 with verbose debug messages in
WeeChat (default: 0 = no debug)
[[0.0.6]]
== Version 0.0.6 (2004-06-05)
[[0.0.6_features]]
=== New features
* improve channel highlight (priority to message vs join/part)
* add command /query (starts private conversation)
* add IRC messages 476, 477
[[0.0.6_bugs]]
=== Bugs fixed
* fix bug when opened private win and remote user changes his nick
* /mode command is now OK and channel flags are displayed in status bar
* fix display bug (text was blinking when scrolling)
* CTCP Version reply is now in English only and doesn't show host (security
reason)
[[0.0.5]]
== Version 0.0.5 (2004-02-07)
[[0.0.5_features]]
=== New features
* /set command to modify config options when WeeChat is running
* URL command line parameter to connect to server(s)
* new Perl script function to display message in info bar
("IRC::print_infobar")
* info bar highlight notifications
* add info bar timestamp in config ("look_infobar_timestamp")
* add info bar (optional, "look_infobar" to enable it, "on" by default)
* add -c (or --config) command line parameter to see config file options
[[0.0.5_bugs]]
=== Bugs fixed
* fix look_nicklist config option, now enables/disables nicklist
* secure code to prevent buffer overflows and memory leaks
* fix QUIT IRC command: now sent to all connected servers (not only current)
* fix crash with /oper command
* for default config file, nick is now based on un*x username (thanks to
Witukind)
* fix crash when config file cannot be written
* highlight action messages
[[0.0.4]]
== Version 0.0.4 (2004-01-01)
[[0.0.4_features]]
=== New features
* Perl plugin, with auto-load
* debug messages can be enabled via ./configure --enable-debug option
[[0.0.4_bugs]]
=== Bugs fixed
* when private window is created (another user is talking), WeeChat does not
switch to this window
* highlight when our nick is written in a channel/private window
* catch key[ctrl-c] (ignored)
[[0.0.3]]
== Version 0.0.3 (2003-11-03)
[[0.0.3_features]]
=== New features
* ./configure script to build WeeChat
* French translation
* new IRC command: /stats, /service, /squit, /motd, /lusers, /links, /time,
/trace, /admin, /info, /servlist, /squery, /who, /whowas, /die, /summon,
/users, /wallops, /userhost, /ison, /ctcp ping
[[0.0.3_bugs]]
=== Bugs fixed
* nicks are now correctly sorted (op, halfop, voice, other)
* fix problem with "353" IRC message (nicklist)
* fix problem when nick is truncated by server
* fix crash when entering text without any server connection
* fix crash when /set command is executed
* fix display bug (text was blinking when scrolling)
* code cleanup
[[0.0.2]]
== Version 0.0.2 (2003-10-05)
[[0.0.2_features]]
=== New features
* add commands /rehash and /restart
* and command and auto-join channels when connected to server
* new commands for alias: /alias, /unalias (new section in config file)
* config is now saved automatically when quitting WeeChat, add /save command
* new commands for servers: /server, /connect, /disconnect
* add autoconnect flag for each server in config file
* add "look_set_title" option in config file
* term window title is modified with WeeChat name and version
* CTCP version returns more info (about OS)
[[0.0.2_bugs]]
=== Bugs fixed
* fix nicklist display bug
* fix crash when sending command which can only be received
[[0.0.1]]
== Version 0.0.1 (2003-09-27)
* ncurses GUI with color output
* multi-servers
* channel windows, with nicklist (position: top, bottom, left or right)
* private windows
* IRC commands: away, ctcp, deop, devoice, invite, join, kick, kill, list, me,
mode, msg, names, nick, notice, op, oper, part, ping, pong, quit, quote,
topic, version, voice, whois
* WeeChat commands: clear, help, set (partial)
* many config options
* log file (~/.weechat/weechat.log)
* nicklist can be moved on top, bottom, left or right of window