mirror of
https://github.com/BookStackApp/BookStack.git
synced 2026-02-08 11:19:36 +03:00
Cyrillic is displayed as garbage on old and new pages #4342
Closed
opened 2026-02-05 08:35:51 +03:00 by OVERLORD
·
11 comments
No Branch/Tag Specified
development
further_theme_development
l10n_development
release
llm_only
vectors
v25-11
docker_env
drawio_rendering
user_permissions
ldap_host_failover
svg_image
prosemirror
captcha_example
fix/video-export
v25.12.3
v25.12.2
v25.12.1
v25.12
v25.11.6
v25.11.5
v25.11.4
v24.11.4
v25.11.3
v25.11.2
v25.11.1
v25.11
v25.07.3
v25.07.2
v25.07.1
v25.07
v25.05.2
v25.05.1
v25.05
v25.02.5
v25.02.4
v25.02.3
v25.02.2
v25.02.1
v25.02
v24.12.1
v24.12
v24.10.3
v24.10.2
v24.10.1
v24.10
v24.05.4
v24.05.3
v24.05.2
v24.05.1
v24.05
v24.02.3
v24.02.2
v24.02.1
v24.02
v23.12.3
v23.12.2
v23.12.1
v23.12
v23.10.4
v23.10.3
v23.10.2
v23.10.1
v23.10
v23.08.3
v23.08.2
v23.08.1
v23.08
v23.06.2
v23.06.1
v23.06
v23.05.2
v23.05.1
v23.05
v23.02.3
v23.02.2
v23.02.1
v23.02
v23.01.1
v23.01
v22.11.1
v22.11
v22.10.2
v22.10.1
v22.10
v22.09.1
v22.09
v22.07.3
v22.07.2
v22.07.1
v22.07
v22.06.2
v22.06.1
v22.06
v22.04.2
v22.04.1
v22.04
v22.03.1
v22.03
v22.02.3
v22.02.2
v22.02.1
v22.02
v21.12.5
v21.12.4
v21.12.3
v21.12.2
v21.12.1
v21.12
v21.11.3
v21.11.2
v21.11.1
v21.11
v21.10.3
v21.10.2
v21.10.1
v21.10
v21.08.6
v21.08.5
v21.08.4
v21.08.3
v21.08.2
v21.08.1
v21.08
v21.05.4
v21.05.3
v21.05.2
v21.05.1
v21.05
v21.04.6
v21.04.5
v21.04.4
v21.04.3
v21.04.2
v21.04.1
v21.04
v0.31.8
v0.31.7
v0.31.6
v0.31.5
v0.31.4
v0.31.3
v0.31.2
v0.31.1
v0.31.0
v0.30.7
v0.30.6
v0.30.5
v0.30.4
v0.30.3
v0.30.2
v0.30.1
v0.30.0
v0.29.3
v0.29.2
v0.29.1
v0.29.0
v0.28.3
v0.28.2
v0.28.1
v0.28.0
v0.27.5
v0.27.4
v0.27.3
v0.27.2
v0.27.1
v0.27
v0.26.4
v0.26.3
v0.26.2
v0.26.1
v0.26.0
v0.25.5
v0.25.4
v0.25.3
v0.25.2
v0.25.1
v0.25.0
v0.24.3
v0.24.2
v0.24.1
v0.24.0
v0.23.2
v0.23.1
v0.23.0
v0.22.0
v0.21.0
v0.20.3
v0.20.2
v0.20.1
v0.20.0
v0.19.0
v0.18.5
v0.18.4
v0.18.3
v0.18.2
v0.18.1
v0.18.0
v0.17.4
v0.17.3
v0.17.2
v0.17.1
v0.17.0
v0.16.3
v0.16.2
v0.16.1
v0.16.0
v0.15.3
v0.15.2
v0.15.1
v0.15.0
v0.14.3
v0.14.2
v0.14.1
v0.14.0
v0.13.1
v0.13.0
v0.12.2
v0.12.1
v0.12.0
v0.11.2
v0.11.1
v0.11.0
v0.10.0
v0.9.3
v0.9.2
v0.9.1
v0.9.0
v0.8.2
v0.8.1
v0.8.0
v0.7.6
v0.7.5
v0.7.4
v0.7.3
0.7.2
v.0.7.1
v0.7.0
v0.6.3
v0.6.2
v0.6.1
v0.6.0
v0.5.0
Labels
Clear labels
🎨 Design
📖 Docs Update
🐛 Bug
🐛 Bug
:cat2:🐈 Possible duplicate
💿 Database
☕ Open to discussion
💻 Front-End
🐕 Support
🚪 Authentication
🌍 Translations
🔌 API Task
🏭 Back-End
⛲ Upstream
🔨 Feature Request
🛠️ Enhancement
🛠️ Enhancement
🛠️ Enhancement
❤️ Happy feedback
🔒 Security
🔍 Pending Validation
💆 UX
📝 WYSIWYG Editor
🌔 Out of scope
🔩 API Request
:octocat: Admin/Meta
🖌️ View Customization
❓ Question
🚀 Priority
🛡️ Blocked
🚚 Export System
♿ A11y
🔧 Maintenance
> Markdown Editor
pull-request
Mirrored from GitHub Pull Request
No Label
🐛 Bug
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: starred/BookStack#4342
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @gentoo-root on GitHub (Nov 29, 2023).
Describe the Bug
Some while ago, everything worked properly. Now all pages with Cyrillic text display garbage, as if a wrong encoding is used:
Only the page titles are OK. The previews in the page list are OK for old pages, but not OK for the new ones.
I checked that the database (still) uses utf8mb4, old pages are readable by SELECTing them with SQL (but not from Bookstack), while the new pages are stored into the database like this.
Arch Linux (both server and client)
MariaDB 11.1.3
Bookstack 23.10.4
Firefox 119.0
Steps to Reproduce
OR:
Expected Behaviour
The text should be readable.
Screenshots or Additional Context
No response
Browser Details
Firefox 119.0 (64-bit, Arch Linux)
Exact BookStack Version
v23.10.4
@Preycon commented on GitHub (Dec 1, 2023):
Hello, developer helped me on Discord, the culprit is libxml, on arch the error is fixed by downgrading to a previous version, in my case it was:
sudo pacman -U libxml2-2.11.5-1-x86_64.pkg.tar.zst
With this all is working again, in case you still see some random gargabe glyphs, clear cache and edit/save the affected previews.
@ssddanbrown commented on GitHub (Dec 1, 2023):
Copying my message(s) from Discord:
Okay, I've spent a good few hours playing in an Arch environment, and testing things and attempting to validate my thoughts by building PHP and libxml from source.
I've been unsuccessful in validating things though, due to my inexperience with arch, and building these libs, and time consumption due to the speed of my VM.
That said, I'm pretty sure it's due to an upstream change in libxml, related to this thread:
https://gitlab.gnome.org/GNOME/libxml2/-/issues/637
Was a change made in 2.12, which entered arch a couple of weeks back.
It's now reverted as per that thread but might be a while more before that gets made into a release, for it to trickle down for arch and your PHP.
Okay, I built an older libxml package and installed it via pacman, that seemed to fix the issue on my test system.
To save some work, if using an x86_64 system, I've uploaded the built package here:
https://user.fm/files/v2-ac3a5382574b64895fa53c171a7440bf/libxml2-2.11.5-1-x86_64.pkg.tar.zst
Download that then pacman -U libxml2-2.11.5-1-x86_64.pkg.tar.zst to install and downgrade libxml.
DO AT YOUR OWN RISK though. I'm not being malicious but I have very little experience & knowledge with arch, plus it's always dangerous to trust internet strangers.
If you prefer to go to the arch sources, there's a PKGBUILD for the repo and tag linked here:
https://gitlab.archlinux.org/archlinux/packaging/packages/libxml2/-/tree/2.11.5-1?ref_type=tags
@fxthomas commented on GitHub (Dec 1, 2023):
Thank you so much for the pointer and for your quick tests, I can confirm this fixes everything on my system!
Arch has an archive of previous package versions for libxml2-2.11.5-1-x86_64 (signature), that's what I used.
@gentoo-root commented on GitHub (Dec 2, 2023):
Thanks a lot for the workaround! I confirm that downgrading libxml to 2.11.5 worked for me too. I used my local package cache to get the old version.
What are the next steps? Is it a new bug in libxml that they need to fix, or is it some misuse of libxml APIs that needs to be fixed on BookStack side?
@fxthomas commented on GitHub (Dec 2, 2023):
My understanding is that libxml are rolling back the changes in a next point release until they have a better implementation, there is nothing to fix on BookStack side.
@ssddanbrown commented on GitHub (Dec 2, 2023):
@gentoo-root this is something that has already been reverted in libxml, as per this thread. The use that BookStack's using could potentially be considered hacky, but it's pretty common as a method in PHP to force utf8 parsing, and I'm not sure of a better option (recently reviewed this and doubled-down on the approach in use here, due to other PHP deprecations).
@gentoo-root commented on GitHub (Dec 2, 2023):
Understood; waiting for the next update of libxml then. Thank you for stepping in and debugging it!
@ssddanbrown commented on GitHub (Dec 2, 2023):
Happy I could help and find the cause.
I'll therefore close this off but if anything changes and potential action is needed on the BookStack side of things feel free to comment still.
@C0rn3j commented on GitHub (Dec 25, 2023):
So supposedly 2.12.2 should have brought the old behavior back.
I am on 2.12.3 on Arch Linux, but still experiencing this or something akin to it.
This is not cyrillic but Czech alphabet, supposed to say Bábovka.
https://rys.pw/books/recipes/page/recipes#bkmrk-b%C3%83%C2%A1bovka
I've rebuilt BookStack with the new libraries (which also clears cache) but this did not help the situation.
Did the issue with cyrillic for people in this thread go away with 2.12.2+ and I am experiencing something else?
@ssddanbrown commented on GitHub (Dec 25, 2023):
@C0rn3j Seems to be working for me, but having trouble getting into a non-working state to re-test the change from non-working to working.
My output, and running of BookStack for testing:
@C0rn3j commented on GitHub (Dec 25, 2023):
If getting the env to run was a problem (and not actually triggering the bug with the env) - you should be able to downgrade the entire system to let's say 2023-11-14 (since Nov 16 is when 2.12 shipped) using the Arch archive.
It would be then best to install bookstack from AUR/bookstack (that I maintain) as that's probably what majority Arch users are using BookStack through.
I will make a new issue then as it seems I shouldn't be suffering from this one.