Bug 2158548 - hunspell does not work anymore for Korean in recent rawhide
Summary: hunspell does not work anymore for Korean in recent rawhide
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: hunspell
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Caolan McNamara
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2023-01-05 17:28 UTC by Mike FABIAN
Modified: 2023-01-06 16:59 UTC (History)
8 users (show)

Fixed In Version: hunspell-1.7.2-2.fc38
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2023-01-06 16:59:55 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
korean.txt (16 bytes, text/plain)
2023-01-05 17:53 UTC, Mike FABIAN
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Github hunspell hunspell issues 903 0 None open Latest release breaks spell checking for Korean 2023-01-06 15:50:08 UTC

Description Mike FABIAN 2023-01-05 17:28:14 UTC
On Fedora 37:

mfabian@hathi:~
$ cat /etc/fedora-release 
Fedora release 37 (Thirty Seven)
mfabian@hathi:~
$ rpm -qa | grep enchant
enchant2-2.3.3-2.fc37.x86_64
enchant-1.6.0-31.fc37.x86_64
python3-enchant-3.2.2-5.fc37.noarch
enchant2-aspell-2.3.3-2.fc37.x86_64
mfabian@hathi:~
$ echo 안녕하세이  | enchant-2 -a -d ko_KR
@(#) International Ispell Version 3.1.20 (but really Enchant 2.3.3)
& 안녕하세이 2 0: 안녕하세요, 안녕하여있다


mfabian@hathi:~

That is OK.

On Fedora rawhide (installed from Fedora-Workstation-Live-x86_64-Rawhide-20230104.n.0.iso and updated with `sudo dnf update`):

[mfabian@fedora ~]$ cat /etc/fedora-release
Fedora release 38 (Rawhide)
[mfabian@fedora ~]$ rpm -qa | grep enchant
python3-enchant-3.2.2-5.fc38.noarch
enchant-1.6.0-31.fc37.x86_64
enchant2-2.3.3-4.fc38.x86_64
enchant2-aspell-2.3.3-4.fc38.x86_64
[mfabian@fedora ~]$ echo 안녕하세이  | enchant-2 -a -d ko_KR
@(#) International Ispell Version 3.1.20 (but really Enchant 2.3.3)
# 안녕하세이 0


[mfabian@fedora ~]$ 

It does not work anymore ☹

Comment 1 Mike FABIAN 2023-01-05 17:29:35 UTC
I think this still worked in rawhide about a week ago.

Comment 2 Mike FABIAN 2023-01-05 17:37:57 UTC
The Korean hunspell dictionaries on Fedora 37 and rawhide are identical:

mfabian@hathi:~
$ rpm -qf /usr/share/hunspell/ko_KR*
hunspell-ko-0.7.0-14.fc37.noarch
hunspell-ko-0.7.0-14.fc37.noarch
mfabian@hathi:~

[mfabian@fedora ~]$ rpm -qf /usr/share/hunspell/ko_KR*
hunspell-ko-0.7.0-14.fc37.noarch
hunspell-ko-0.7.0-14.fc37.noarch
[mfabian@fedora ~]$ 

I also diffed the files /usr/share/hunspell/ko_KR.dic and /usr/share/hunspell/ko_KR.aff, they are really identical, i.e. not only the version number of the rpm is the same, the dictionary files contained are really identical.

Comment 3 Sandro Mani 2023-01-05 17:42:27 UTC
Not aware of any changes - maybe try comparing the strace outputs?

Comment 4 Mike FABIAN 2023-01-05 17:53:59 UTC
Created attachment 1935990 [details]
korean.txt

Test file korean.txt

mfabian@hathi:~
$ cat /etc/fedora-release 
Fedora release 37 (Thirty Seven)
mfabian@hathi:~
$ cat korean.txt 
안녕하세이
mfabian@hathi:~
$ enchant-2 -a -d ko_KR korean.txt
@(#) International Ispell Version 3.1.20 (but really Enchant 2.3.3)
& 안녕하세이 2 0: 안녕하세요, 안녕하여있다


mfabian@hathi:~
$ 

[mfabian@fedora ~]$ cat /etc/fedora-release 
Fedora release 38 (Rawhide)
[mfabian@fedora ~]$ cat korean.txt 
안녕하세이
[mfabian@fedora ~]$ enchant-2 -a -d ko_KR korean.txt 
@(#) International Ispell Version 3.1.20 (but really Enchant 2.3.3)
# 안녕하세이 0


[mfabian@fedora ~]$

Comment 5 Mike FABIAN 2023-01-06 00:48:54 UTC
On F37, where it works:

$ cat /etc/fedora-release 
Fedora release 37 (Thirty Seven)
mfabian@hathi:~
$ strace -e trace=%file -f enchant-2 -a -d ko_KR korean.txt
execve("/usr/bin/enchant-2", ["enchant-2", "-a", "-d", "ko_KR", "korean.txt"], 0x7fff10490678 /* 82 vars */) = 0
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=108455, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libenchant-2.so.2", O_RDONLY|O_CLOEXEC) = 3
newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=53376, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libglib-2.0.so.0", O_RDONLY|O_CLOEXEC) = 3
newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=1325824, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=2224248, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libgmodule-2.0.so.0", O_RDONLY|O_CLOEXEC) = 3
newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=24320, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libpcre2-8.so.0", O_RDONLY|O_CLOEXEC) = 3
newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=642072, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3
newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=224104272, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/usr/lib64/charset.alias", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "korean.txt", O_RDONLY) = 3
newfstatat(1, "", {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0xb), ...}, AT_EMPTY_PATH) = 0
@(#) International Ispell Version 3.1.20 (but really Enchant 2.3.3)
openat(AT_FDCWD, "/usr/lib64/enchant-2", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 4
newfstatat(4, "", {st_mode=S_IFDIR|0755, st_size=4096, ...}, AT_EMPTY_PATH) = 0
newfstatat(AT_FDCWD, "/usr/lib64/enchant-2/enchant_aspell.so", {st_mode=S_IFREG|0755, st_size=16040, ...}, 0) = 0
openat(AT_FDCWD, "/usr/lib64/enchant-2/enchant_aspell.so", O_RDONLY|O_CLOEXEC) = 5
newfstatat(5, "", {st_mode=S_IFREG|0755, st_size=16040, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 5
newfstatat(5, "", {st_mode=S_IFREG|0644, st_size=108455, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libaspell.so.15", O_RDONLY|O_CLOEXEC) = 5
newfstatat(5, "", {st_mode=S_IFREG|0755, st_size=658848, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libstdc++.so.6", O_RDONLY|O_CLOEXEC) = 5
newfstatat(5, "", {st_mode=S_IFREG|0755, st_size=2360128, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libm.so.6", O_RDONLY|O_CLOEXEC) = 5
newfstatat(5, "", {st_mode=S_IFREG|0755, st_size=928112, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = 5
newfstatat(5, "", {st_mode=S_IFREG|0755, st_size=128536, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/usr/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) = 5
newfstatat(5, "", {st_mode=S_IFREG|0644, st_size=2998, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/usr/share/locale/en_US.UTF-8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/share/locale/en_US.utf8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/share/locale/en_US/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/share/locale/en.UTF-8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/share/locale/en.utf8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/share/locale/en/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
newfstatat(AT_FDCWD, "/usr/lib64/enchant-2/enchant_hunspell.so", {st_mode=S_IFREG|0755, st_size=33096, ...}, 0) = 0
openat(AT_FDCWD, "/usr/lib64/enchant-2/enchant_hunspell.so", O_RDONLY|O_CLOEXEC) = 5
newfstatat(5, "", {st_mode=S_IFREG|0755, st_size=33096, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 5
newfstatat(5, "", {st_mode=S_IFREG|0644, st_size=108455, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libhunspell-1.7.so.0", O_RDONLY|O_CLOEXEC) = 5
newfstatat(5, "", {st_mode=S_IFREG|0755, st_size=473968, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libtinfo.so.6", O_RDONLY|O_CLOEXEC) = 5
newfstatat(5, "", {st_mode=S_IFREG|0755, st_size=208456, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/usr/share/enchant-2/enchant.ordering", O_RDONLY) = 4
newfstatat(4, "", {st_mode=S_IFREG|0644, st_size=317, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/etc/enchant/enchant.ordering", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/home/mfabian/.config/enchant/enchant.ordering", O_RDONLY) = -1 ENOENT (No such file or directory)
access("/home/mfabian/.config/enchant/hunspell/ko_KR.dic", F_OK) = -1 ENOENT (No such file or directory)
access("/home/mfabian/.local/share/flatpak/exports/share/hunspell/ko_KR.dic", F_OK) = -1 ENOENT (No such file or directory)
access("/var/lib/flatpak/exports/share/hunspell/ko_KR.dic", F_OK) = -1 ENOENT (No such file or directory)
access("/usr/local/share/hunspell/ko_KR.dic", F_OK) = -1 ENOENT (No such file or directory)
access("/usr/share/hunspell/ko_KR.dic", F_OK) = 0
access("/usr/share/hunspell/ko_KR.aff", F_OK) = 0
access("/usr/share/hunspell/ko_KR.aff", F_OK) = 0
openat(AT_FDCWD, "/usr/share/hunspell/ko_KR.aff", O_RDONLY) = 4
openat(AT_FDCWD, "/usr/share/hunspell/ko_KR.dic", O_RDONLY) = 4
openat(AT_FDCWD, "/usr/share/hunspell/ko_KR.aff", O_RDONLY) = 4
openat(AT_FDCWD, "/usr/lib64/gconv/gconv-modules.cache", O_RDONLY) = 4
newfstatat(4, "", {st_mode=S_IFREG|0644, st_size=27012, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/home/mfabian/.config/enchant/ko_KR.dic", O_RDWR|O_CREAT|O_APPEND, 0666) = 4
newfstatat(AT_FDCWD, "/home/mfabian/.config/enchant/ko_KR.dic", {st_mode=S_IFREG|0644, st_size=0, ...}, 0) = 0
openat(AT_FDCWD, "/home/mfabian/.config/enchant/ko_KR.dic", O_RDONLY) = 4
newfstatat(4, "", {st_mode=S_IFREG|0644, st_size=0, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/home/mfabian/.config/enchant/ko_KR.exc", O_RDWR|O_CREAT|O_APPEND, 0666) = 4
newfstatat(AT_FDCWD, "/home/mfabian/.config/enchant/ko_KR.exc", {st_mode=S_IFREG|0644, st_size=0, ...}, 0) = 0
openat(AT_FDCWD, "/home/mfabian/.config/enchant/ko_KR.exc", O_RDONLY) = 4
newfstatat(4, "", {st_mode=S_IFREG|0644, st_size=0, ...}, AT_EMPTY_PATH) = 0
newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=16, ...}, AT_EMPTY_PATH) = 0
newfstatat(AT_FDCWD, "/home/mfabian/.config/enchant/ko_KR.exc", {st_mode=S_IFREG|0644, st_size=0, ...}, 0) = 0
newfstatat(AT_FDCWD, "/home/mfabian/.config/enchant/ko_KR.dic", {st_mode=S_IFREG|0644, st_size=0, ...}, 0) = 0
newfstatat(AT_FDCWD, "/home/mfabian/.config/enchant/ko_KR.exc", {st_mode=S_IFREG|0644, st_size=0, ...}, 0) = 0
newfstatat(AT_FDCWD, "/home/mfabian/.config/enchant/ko_KR.exc", {st_mode=S_IFREG|0644, st_size=0, ...}, 0) = 0
newfstatat(AT_FDCWD, "/home/mfabian/.config/enchant/ko_KR.dic", {st_mode=S_IFREG|0644, st_size=0, ...}, 0) = 0
& 안녕하세이 2 0: 안녕하세요, 안녕하여있다


+++ exited with 0 +++
mfabian@hathi:~
$

Comment 6 Mike FABIAN 2023-01-06 00:49:34 UTC
On rawhide, where it does not work:

[mfabian@fedora ~]$ cat /etc/fedora-release 
Fedora release 38 (Rawhide)
[mfabian@fedora ~]$ strace -e trace=%file -f enchant-2 -a -d ko_KR korean.txt 
execve("/usr/bin/enchant-2", ["enchant-2", "-a", "-d", "ko_KR", "korean.txt"], 0x7ffe8ed70b38 /* 34 vars */) = 0
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=93069, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libenchant-2.so.2", O_RDONLY|O_CLOEXEC) = 3
newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=53376, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libglib-2.0.so.0", O_RDONLY|O_CLOEXEC) = 3
newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=1325824, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=2232840, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libgmodule-2.0.so.0", O_RDONLY|O_CLOEXEC) = 3
newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=24320, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libpcre2-8.so.0", O_RDONLY|O_CLOEXEC) = 3
newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=642072, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3
newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=224366320, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/usr/lib64/charset.alias", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "korean.txt", O_RDONLY) = 3
newfstatat(1, "", {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0x1), ...}, AT_EMPTY_PATH) = 0
@(#) International Ispell Version 3.1.20 (but really Enchant 2.3.3)
openat(AT_FDCWD, "/usr/lib64/enchant-2", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 4
newfstatat(4, "", {st_mode=S_IFDIR|0755, st_size=72, ...}, AT_EMPTY_PATH) = 0
newfstatat(AT_FDCWD, "/usr/lib64/enchant-2/enchant_hunspell.so", {st_mode=S_IFREG|0755, st_size=33096, ...}, 0) = 0
openat(AT_FDCWD, "/usr/lib64/enchant-2/enchant_hunspell.so", O_RDONLY|O_CLOEXEC) = 5
newfstatat(5, "", {st_mode=S_IFREG|0755, st_size=33096, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 5
newfstatat(5, "", {st_mode=S_IFREG|0644, st_size=93069, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libhunspell-1.7.so.0", O_RDONLY|O_CLOEXEC) = 5
newfstatat(5, "", {st_mode=S_IFREG|0755, st_size=868296, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libstdc++.so.6", O_RDONLY|O_CLOEXEC) = 5
newfstatat(5, "", {st_mode=S_IFREG|0755, st_size=2360392, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libm.so.6", O_RDONLY|O_CLOEXEC) = 5
newfstatat(5, "", {st_mode=S_IFREG|0755, st_size=928280, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = 5
newfstatat(5, "", {st_mode=S_IFREG|0755, st_size=128536, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libtinfo.so.6", O_RDONLY|O_CLOEXEC) = 5
newfstatat(5, "", {st_mode=S_IFREG|0755, st_size=208472, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/usr/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) = 5
newfstatat(5, "", {st_mode=S_IFREG|0644, st_size=2998, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/usr/share/locale/en_US.UTF-8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/share/locale/en_US.utf8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/share/locale/en_US/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/share/locale/en.UTF-8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/share/locale/en.utf8/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/usr/share/locale/en/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT (No such file or directory)
newfstatat(AT_FDCWD, "/usr/lib64/enchant-2/enchant_aspell.so", {st_mode=S_IFREG|0755, st_size=16040, ...}, 0) = 0
openat(AT_FDCWD, "/usr/lib64/enchant-2/enchant_aspell.so", O_RDONLY|O_CLOEXEC) = 5
newfstatat(5, "", {st_mode=S_IFREG|0755, st_size=16040, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 5
newfstatat(5, "", {st_mode=S_IFREG|0644, st_size=93069, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libaspell.so.15", O_RDONLY|O_CLOEXEC) = 5
newfstatat(5, "", {st_mode=S_IFREG|0755, st_size=658848, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/usr/share/enchant-2/enchant.ordering", O_RDONLY) = 4
newfstatat(4, "", {st_mode=S_IFREG|0644, st_size=317, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/etc/enchant/enchant.ordering", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/home/mfabian/.config/enchant/enchant.ordering", O_RDONLY) = -1 ENOENT (No such file or directory)
access("/home/mfabian/.config/enchant/hunspell/ko_KR.dic", F_OK) = -1 ENOENT (No such file or directory)
access("/home/mfabian/.local/share/flatpak/exports/share/hunspell/ko_KR.dic", F_OK) = -1 ENOENT (No such file or directory)
access("/var/lib/flatpak/exports/share/hunspell/ko_KR.dic", F_OK) = -1 ENOENT (No such file or directory)
access("/usr/local/share/hunspell/ko_KR.dic", F_OK) = -1 ENOENT (No such file or directory)
access("/usr/share/hunspell/ko_KR.dic", F_OK) = 0
access("/usr/share/hunspell/ko_KR.aff", F_OK) = 0
access("/usr/share/hunspell/ko_KR.aff", F_OK) = 0
openat(AT_FDCWD, "/usr/share/hunspell/ko_KR.aff", O_RDONLY) = 4
openat(AT_FDCWD, "/usr/share/hunspell/ko_KR.dic", O_RDONLY) = 4
openat(AT_FDCWD, "/usr/share/hunspell/ko_KR.aff", O_RDONLY) = 4
openat(AT_FDCWD, "/usr/lib64/gconv/gconv-modules.cache", O_RDONLY) = 4
newfstatat(4, "", {st_mode=S_IFREG|0644, st_size=27012, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/home/mfabian/.config/enchant/ko_KR.dic", O_RDWR|O_CREAT|O_APPEND, 0666) = 4
newfstatat(AT_FDCWD, "/home/mfabian/.config/enchant/ko_KR.dic", {st_mode=S_IFREG|0644, st_size=0, ...}, 0) = 0
openat(AT_FDCWD, "/home/mfabian/.config/enchant/ko_KR.dic", O_RDONLY) = 4
newfstatat(4, "", {st_mode=S_IFREG|0644, st_size=0, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/home/mfabian/.config/enchant/ko_KR.exc", O_RDWR|O_CREAT|O_APPEND, 0666) = 4
newfstatat(AT_FDCWD, "/home/mfabian/.config/enchant/ko_KR.exc", {st_mode=S_IFREG|0644, st_size=0, ...}, 0) = 0
openat(AT_FDCWD, "/home/mfabian/.config/enchant/ko_KR.exc", O_RDONLY) = 4
newfstatat(4, "", {st_mode=S_IFREG|0644, st_size=0, ...}, AT_EMPTY_PATH) = 0
newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=16, ...}, AT_EMPTY_PATH) = 0
newfstatat(AT_FDCWD, "/home/mfabian/.config/enchant/ko_KR.exc", {st_mode=S_IFREG|0644, st_size=0, ...}, 0) = 0
newfstatat(AT_FDCWD, "/home/mfabian/.config/enchant/ko_KR.dic", {st_mode=S_IFREG|0644, st_size=0, ...}, 0) = 0
newfstatat(AT_FDCWD, "/home/mfabian/.config/enchant/ko_KR.dic", {st_mode=S_IFREG|0644, st_size=0, ...}, 0) = 0
# 안녕하세이 0


+++ exited with 0 +++
[mfabian@fedora ~]$

Comment 7 Mike FABIAN 2023-01-06 00:51:21 UTC
On Fedora 37 there is first:

openat(AT_FDCWD, "/usr/lib64/enchant-2/enchant_aspell.so", O_RDONLY|O_CLOEXEC) = 5

and later:

openat(AT_FDCWD, "/usr/lib64/enchant-2/enchant_hunspell.so", O_RDONLY|O_CLOEXEC) = 5

On rawhide it is the other way round, first:

openat(AT_FDCWD, "/usr/lib64/enchant-2/enchant_hunspell.so", O_RDONLY|O_CLOEXEC) = 5

and later:

openat(AT_FDCWD, "/usr/lib64/enchant-2/enchant_aspell.so", O_RDONLY|O_CLOEXEC) = 5

Comment 8 Mike FABIAN 2023-01-06 14:53:19 UTC
It seems to be a hunspell problem because enchant2 seems to use hunspell and hunspell already has the problem:

mfabian@hathi:~
$ cat /etc/fedora-release 
Fedora release 37 (Thirty Seven)
mfabian@hathi:~
$ rpm  -q hunspell
hunspell-1.7.0-21.fc37.x86_64
mfabian@hathi:~
$ hunspell -a -d ko_KR korean.txt 
@(#) International Ispell Version 3.2.06 (but really Hunspell 1.7.0)
& 안녕하세이 2 0: 안녕하세요, 안녕하여있다

mfabian@hathi:~
$ 


[mfabian@fedora ~]$ cat /etc/fedora-release 
Fedora release 38 (Rawhide)
[mfabian@fedora ~]$ rpm -q hunspell
hunspell-1.7.2-1.fc38.x86_64
[mfabian@fedora ~]$ hunspell -a -d ko_KR korean.txt
@(#) International Ispell Version 3.2.06 (but really Hunspell 1.7.2)
# 안녕하세이 0

[mfabian@fedora ~]$

Comment 9 Mike FABIAN 2023-01-06 15:39:11 UTC
Downgrading to hunspell-1.7.1-1.fc38.x86_64 fixes the problem.

[mfabian@fedora ~]$ cat /etc/fedora-release 
Fedora release 38 (Rawhide)
[mfabian@fedora ~]$ rpm -q hunspell
hunspell-1.7.1-1.fc38.x86_64
[mfabian@fedora ~]$ hunspell -a -d ko_KR korean.txt
@(#) International Ispell Version 3.2.06 (but really Hunspell 1.7.1)
& 안녕하세이 2 0: 안녕하세요, 안녕하여있다

[mfabian@fedora ~]$

Comment 10 Mike FABIAN 2023-01-06 15:40:17 UTC
I.e. this commit broke it:

commit 8ac6886a8ade8e2a840aca56b88f232a4e9ffe44 (HEAD -> rawhide, origin/rawhide, origin/main, origin/HEAD)
Author: Caolán McNamara <caolanm>
Date:   Fri Dec 30 14:20:15 2022 +0000

    Resolves: rhbz#2157049 latest release

diff --git a/.gitignore b/.gitignore
index fa61aab..088efb4 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1 @@
-/hunspell-1.7.1.tar.gz
+/hunspell-1.7.2.tar.gz
diff --git a/hunspell.spec b/hunspell.spec
index e0b16d6..13924d8 100644
--- a/hunspell.spec
+++ b/hunspell.spec
@@ -2,7 +2,7 @@
 
 Name:      hunspell
 Summary:   A spell checker and morphological analyzer library
-Version:   1.7.1
+Version:   1.7.2
 Release:   1%{?dist}
 Source:    https://github.com/hunspell/hunspell/releases/download/v%{version}/hunspell-%{version}.tar.gz
 URL:       https://github.com/hunspell/hunspell
@@ -126,6 +126,9 @@ mkdir $RPM_BUILD_ROOT/%{_datadir}/myspell
 %{_datadir}/myspell
 
 %changelog
+* Fri Dec 30 2022 Caolán McNamara <caolanm> - 1.7.2-1
+- Resolves: rhbz#2157049 latest release
+
 * Mon Aug 22 2022 Caolán McNamara <caolanm> - 1.7.1-1
 - latest release
 
diff --git a/sources b/sources
index 4990421..0338530 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (hunspell-1.7.1.tar.gz) = e177fadd39e89abf47c6cec7d12d1976d21af5c924fb62402433af202c07db50156cd9f60ceae44952b05740e76a98548afb7ac12b666a9fa170ef52e6f8e808
+SHA512 (hunspell-1.7.2.tar.gz) = 49b3619bff12e111b6cc3f3d9463612b116f9b2a976896718e65f5bc4a83ece11100aaf56a4d18127ea39107446c495e12affe5ff3c9159ae8aba70e512f44ac
lines 1-43/43 (END)

Comment 11 Caolan McNamara 2023-01-06 15:41:54 UTC
i'll bisect the upstream hunspell

Comment 12 Mike FABIAN 2023-01-06 15:50:09 UTC
https://github.com/hunspell/hunspell/issues/903

Comment 13 Fedora Update System 2023-01-06 16:58:32 UTC
FEDORA-2023-b07169ee73 has been submitted as an update to Fedora 38. https://bodhi.fedoraproject.org/updates/FEDORA-2023-b07169ee73

Comment 14 Fedora Update System 2023-01-06 16:59:55 UTC
FEDORA-2023-b07169ee73 has been pushed to the Fedora 38 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.