server.py tries to launch a matrix_sso_helper binary when connecting to
a homeserver that uses some SSO mechanism instead of plain login and
password, but doesn't have $out/bin in $PATH.
Using substituteInPlace to patch server.py so that the helper process is
started by using its actual filesystem location instead of relying on
$PATH.
Fixes: https://github.com/NixOS/nixpkgs/issues/124186
matrix.py tries to import its dependencies, and its own code from
$out/${python.sitePackages}, and neither of these worked because
nothing was telling Python where to load that stuff from.
Using patchPythonScript made it so matrix.py could find its
dependencies, but it still wasn't able to find its own code, so that
had to be added to program_PYTHONPATH beforehand so patchPythonScript
would include it as well.
Fixes: https://github.com/NixOS/nixpkgs/issues/89499
@the-kenny did a good job in the past and is set as maintainer in many package,
however since 2017-2018 he stopped contributing. To create less confusion
in pull requests when people try to request his feedback, I removed him as
maintainer from all packages.
New features
core: add variable "old_full_name" in buffer, set during buffer renaming (issue weechat/weechat#1428)
core: add debug option "-d" in command /eval (issue weechat/weechat#1434)
api: add functions crypto_hash and crypto_hash_pbkdf2
api: add info "auto_connect" (issue weechat/weechat#1453)
api: add info "weechat_headless" (issue weechat/weechat#1433)
buflist: add pointer "window" in bar item evaluation
irc: add support of fake servers (no I/O, for testing purposes)
relay: accept hash of password in init command of weechat protocol with option "password_hash" (PBKDF2, SHA256, SHA512)
relay: reject client with weechat protocol if password or totp is received in init command but not set in WeeChat (issue weechat/weechat#1435)
Bug fixes
core: fix memory leak in completion
core: flush stdout/stderr before forking in hook_process function (issue weechat/weechat#1441)
core: fix evaluation of condition with nested "if" (issue weechat/weechat#1434)
irc: split AUTHENTICATE message in 400-byte chunks (issue weechat/weechat#1459)
irc: copy temporary server flag in command /server copy
irc: add nick changes in the hotlist (except self nick change)
irc: case-insensitive comparison on incoming CTCP command, force upper case on CTCP replies (issue weechat/weechat#1439)
irc: fix memory leak when the channel topic is changed
logger: fix crash when logging is disabled on a buffer and the log file was deleted in the meanwhile, when option logger.file.info_lines is on (issue weechat/weechat#1444)
php: fix crash when loading script with PHP 7.4 (issue weechat/weechat#1452)
relay: update buffers synchronization when buffers are renamed (issue weechat/weechat#1428)
script: fix memory leak in read of script repository file if it has invalid content
script: fix unexpected display of scripts list in buffer with command /script list -i
xfer: send signal "xfer_ended" after the received file has been renamed (issue weechat/weechat#1438)
Tests
scripts: fix generation of test scripts with Python 3.8
unit: add tests on IRC protocol functions and callbacks
unit: add tests on function secure_derive_key
unit: add tests on functions util_get_time_diff and util_file_get_content
Build
core: fix Cygwin build
guile: add detection of Guile 3.0.0 (issue weechat/weechat#1442)
irc: fix build with GnuTLS < 3.1.0 (issue weechat/weechat#1431)
php: add detection of PHP 7.4
ruby: add detection of Ruby 2.7 (issue weechat/weechat#1455)
wee-slack now (optionally) depends on a data file called weemoji.json
that allows it to translate between Slack emoji names (like
"slight_smile") and Unicode codepoints. For convenience, the derivation
now installs this file and patches the script so that the user doesn't
need to do any extra configuration to use it.
Release notes:
irc: fix crash when receiving a malformed message 352 (who)
irc: fix crash when a new message 005 is received with longer nick prefixes
irc: fix crash when receiving a malformed message 324 (channel mode) (CVE-2020-8955)