Skip to content

vim: update to 9.2.1202 - #63046

Open
tema5002 wants to merge 1 commit into
void-linux:masterfrom
tema5002:vim
Open

tema5002 wants to merge 1 commit into
void-linux:masterfrom
tema5002:vim

Conversation

@tema5002

Copy link
Copy Markdown
Contributor

Testing the changes

  • I tested the changes in this PR: briefly

Local build testing

  • I built this PR locally for my native architecture, x86-64-glibc
  • I built this PR locally for these architectures:
    • aarch64-musl

This is a security upgrade of a CVE in Rust/cargo integration
https://github.com/vim/vim/releases/tag/v9.2.1202
GHSA-4vf6-278g-hq7j

@tema5002

Copy link
Copy Markdown
Contributor Author

Is there any logical reason on why x86_64-musl CI failed?

@Duncaen

Duncaen commented Oct 16, 2026 •

Copy link
Copy Markdown
Member

Hard to tell from the logs, don't even sure which test case failed. Maybe there are better test logs in the filesystem. ./xbps-src -A x86_64-musl -Q pkg vim and then look for log files in masterdir-x86_64-musl/builddir/vim-*.

@tema5002

Copy link
Copy Markdown
Contributor Author

@Duncaen
I tried the cross-compilation using ./xbps-src -A x86_64-musl -Q pkg vim and it's, oddly enough, stuck at this text for at least 20 minutes by now:

../vim -u NONE --noplugins -e -s -X --cmd "set enc=utf-8" \
        -S check.vim -c "if error == 0 | q | else | num 2 | cq | endif" \
        ja.euc-jp.po

No error, no output, no nothing, it just hangs
And that failed altogether in CI:

../vim -u NONE --noplugins -e -s -X --cmd "set enc=utf-8" \
	-S check.vim -c "if error == 0 | q | else | num 2 | cq | endif" \
	ja.euc-jp.po
make[2]: *** [Makefile:43: ja.euc-jp.ck] Error 1
make[2]: Leaving directory '/builddir/vim-9.2.1202/vim-normal/src/po'
make[1]: *** [Makefile:2251: scripttests] Error 2
make[1]: Leaving directory '/builddir/vim-9.2.1202/vim-normal/src'
make: *** [Makefile:42: test] Error 2
=> ERROR: vim-9.2.1202_1: do_check: 'TERM=xterm make test' exited with 2
=> ERROR:   in do_check() at srcpkgs/vim/template:116

Attached strace output:

# strace -f -p 9365 -s 200
strace: Process 9365 attached
select(1, [0], [], [0], NULL

To my knowledge this syscall means it's waiting until stdin is readable

chroot using ./xbps-src -A x86_64-musl -Q chroot vim (reproducible and cannot be killed using a SIGINT):

[tema5002@/home/tema5002/void-packages/masterdir-x86_64-musl po]$ pwd
/builddir/vim-9.2.1202/vim-normal/src/po
[tema5002@/home/tema5002/void-packages/masterdir-x86_64-musl po]$ ../vim -u NONE --noplugins -e -s -X --cmd "set enc=utf-8" -S check.vim -c "if error == 0 | q | else | num 2 | cq | endif" ja.euc-jp.po
^C

Both of my CPU and RAM usage are low so that also confirms there is some sort of deadlock there

@tema5002

Copy link
Copy Markdown
Contributor Author

I think musl doesn't have the needed glibc locales, shouldn't be this way since other musl architectures build fine

@tema5002
tema5002 marked this pull request as draft October 16, 2026 18:31
@tema5002
tema5002 marked this pull request as ready for review October 16, 2026 18:47
@tema5002

Copy link
Copy Markdown
Contributor Author

Added

	if [ "$XBPS_TARGET_LIBC" = musl ]; then
		vsed -i src/po/Makefile -e 's/-t EUC-JP-MS/-t EUC-JP/'
	fi

to post_patch() and it compiled locally

@tema5002
tema5002 marked this pull request as draft October 16, 2026 18:51
@tema5002

Copy link
Copy Markdown
Contributor Author

The same tests as in CI fail need to be skipped somehow, only for x86_64 for some reason...

@tema5002
tema5002 marked this pull request as ready for review October 16, 2026 20:15
@tema5002

Copy link
Copy Markdown
Contributor Author

I tested and compiled (without any changes other than the version bumb) it natively on aarch64-musl
All the additional changes just remove a single non-standard glibc-only locale and 10 tests just to get it working on x86_64-glibc in particular, for some very weird reason
So I believe it's ok

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants