Changed
- breaking: relay/api: flatten JSON event object sent to clients, always set "body_type" and "body" (null if there is no body) in websocket frame, add body types
buffers and lines (array), add field "request_id" in websocket frame (request and response)
- breaking: core, plugins: force "short_name" in buffers to non-empty value (name by default), remove buffer property "short_name_is_set"
- breaking: alias: display an error with
/alias add or /alias addcompletion when the alias already exists, add options addreplace and addreplacecompletion in command /alias (#2095)
- breaking: irc: rename parameter
-re to -raw in command /list (#2124)
- breaking: api: add constants for IPv6 and allow force of IPv6 in function hook_connect (#2164)
- breaking: irc: convert server option
ipv6 from boolean to enum (disable, auto, force) (#2164)
- breaking: core: convert proxy option
ipv6 from boolean to enum (disable, auto, force), set option to auto by default when creating a new proxy (#2164)
- core: add option
addreplace in commands /bar and /proxy (#2095)
- irc: add option
addreplace in commands /ignore, /notify and /server (#2095)
- relay: add option
addreplace in commands /relay and /remote (#2095)
- core: allow buffer id in commands
/buffer and /print, in addition to number and name
- core: allow mask in command
/item refresh
- relay: enable websocket extension "permessage-deflate" with "api" relay only (#1549)
- relay/api: add automatic reconnection to remote, add remote option "autoreconnect_delay" in remote, add options relay.api.remote_autoreconnect_delay_growing and relay.api.remote_autoreconnect_delay_max (#2166)
- relay/api: automatically reconnect to remotes with "autoconnect" enabled after
/upgrade
- relay/api: add field "hidden" in GET /api/buffers, add support of hidden buffers in remote client (#2159)
- relay/api: add field "time_displayed" in GET /api/buffers, add support of time displayed in remote client buffers
- relay/weechat: add line id in buffer lines sent to clients
- relay: display connection status in output of commands
/remote list and /remote listfull
- relay: add option
reconnect in command /remote (#2160)
- irc: add support of message 569 (whois, connecting from) (#2162)
- api: allow NULL value for key in hashtable
- doc: rename doc "weechat_relay_protocol" to "weechat_relay_weechat"
Added
- core: add command line option
--build-info / -i to display information about build options (#449)
- irc: add option
-export in command /list, add option irc.look.list_buffer_format_export
- relay: add option relay.network.websocket_permessage_deflate (#1549)
- relay: add option relay.look.raw_messages_max_length (#2122)
- relay: add infos "relay_api_version" and "relay_api_version_number"
- relay/api: add event "quit", sent to clients when WeeChat is quitting (#2168)
- script: add info "script_info"
- core: add hdata count in evaluation of expressions with
hdata_count:name[list] or hdata_count:name[pointer]
- core: add info "window" (#2141)
- core: add completion "bars_items"
- core: add signals "layout_buffers_applied" and "layout_windows_applied" (#2167)
- core: add signal "buffer_time_for_each_line_changed"
- api, relay: send new signal "buffer_line_data_changed" when a line is updated in a buffer via hdata, send event "buffer_line_data_changed" to clients of "api" and "weechat" protocols
- api: add hashtable type "longlong"
- api: add function line_search_by_id
- doc: add doc on "api" relay
Fixed
- python: fix crash on quit with Python 3.12 (#2046, #2126)
- core: fix crash when deleting a bar that has no items (#2138)
- relay/api: fix crash when sending data to a remote buffer when the remote has been deleted (#2157)
- irc, xfer: fix display of input prompt in IRC private buffers and DCC chat buffers (#2128)
- irc: fix send of split messages when server option "anti_flood" set to 0 (#2172)
- core: fix generation of TOTP on FreeBSD (#2171)
- core: apply buffer properties (options weechat.buffer.*) when a buffer name is changed
- irc: fix property "short_name" of channel buffer when the joined channel has a different case than the
/join command
- irc: close /list buffer when the server buffer is closed (#2121)
- irc: clear /list buffer when disconnecting from server (#2133)
- irc: display an explicit message on /list buffer when the list of channels is empty (#2133)
- xfer: fix send of data on the DCC chat buffer after
/upgrade if the buffer was opened before the upgrade (#2092)
- core: fix refresh of bar item "scroll" in root bar after
/buffer clear (#590)
- core, plugins: return "0x0" instead of "(nil)" for pointers formatted in strings
- core: send signal "buffer_moved" for all buffers affected by merge/unmerge
- ruby: fix builtin functions not available (#2109)
- php: fix return value of function hdata_longlong
- tcl: fix return value of function hdata_longlong (#2119)
- relay/api: fix connection to remote using an IPv6 address with square brackets (#2156)
- relay/api: allow clients without authentication when no relay password is defined and option relay.network.allow_empty_password is on (#2158)
- relay/api: fix connection to remote without password (#2158)
- relay/api: fix timezone of dates sent to clients (#2151)
- relay/api: clear lines and nicklist on all remote buffers upon successful connection to the remote (#2161)
- relay/api: fix buffers synchronization with existing buffers that have been renamed on remote in the meanwhile (#2169)
- relay/api: do not reset input text on existing buffers when reconnecting to the remote
- relay/api: close obsolete buffers when reconnecting to the remote
- relay/api: fix "body_type" returned when lines or nicks of a buffer are requested
- relay/api: fix read of one buffer line
- relay/api: automatically disconnect when the command
/upgrade is executed on the remote
- relay/api: fix send of data to remote after command
/upgrade executed in the remote client
- relay/api: disconnect from remote in case of error when sending data
- relay/api: disconnect cleanly when the remote is quitting (#2168)
- relay: fix websocket permessage-deflate extension when the client doesn't send the max window bits parameters (#1549)
- relay: fix allocation and reinit of field "client_context_takeover" in websocket deflate structure (#1549)
- spell: improve error displayed when a word can not be added to the dictionary (#2144)
- core: fix completion of command
/item refresh
- lua: remote string "Lua" from Lua version in output of
/debug libs
- core: fix detection of libgcrypt ≥ 1.11 (debian #1071960)
- core, relay: fix include directory of libcjson and libzstd
- tests: fix relay tests on s390x (#2118)
- tests: fix check of php plugin (#2117)
- tests: fix compilation of tests on Fedora 40 (#2116)
- tests: fix compilation of tests on Rocky 9.4
Download
https://weechat.org/download/weechat/4.4.0/