View Issue Details

IDProjectCategoryView StatusLast Update
0000807XMB1New Featurespublic2025-07-15 14:26
Reportermiqrogroove Assigned To 
PrioritynormalSeverityfeatureReproducibilityN/A
Status confirmedResolutionopen 
Target Version1.12.00 
Summary0000807: UTF-8 Schema
DescriptionThe diverse string formats in the schema are one of the last things still driving me crazy in terms of maintaining this code base. This is the path forward:

Convert all "double-slashed" strings to unslashed strings, no exceptions.

Start brainstorming tools and procedures for conversion to UTF-8 encoding.

If helpful, add schema columns that would aid the encoding conversion.

Update page headers and templates with the new charset.

Start addressing PHP charset use and any security implications.

Create new translation files.

Determine if non UTF-8 encodings will be supported or dropped completely.
Additional Informationhttps://docs.xmbforum2.com/index.php?title=XMB_1.9.12_Schema_String_Audit

Also note the bbrulestxt setting is still saved as raw HTML.
TagsNo tags attached.
MySQL Version
PHP Version
Web Server
Browser
FlagsSchema Updates
Original Reporter
SVN Revision
Git Commit

Relationships

related to 0000802 resolvedmiqrogroove Audit All Schema Value Formats 
child of 0000810 new Adopt the Symfony Translate API 

Activities

miqrogroove

2025-07-14 23:22

administrator   ~0000582

I took a deep dive into the schema issues tonight. The good news is that the ISO-8859-1 languages can be converted in place using MySQL statements. All of the other languages have been assigned the 'latin1' charset in the schema out of convenience and will have to be converted to binary data types to avoid being interpreted incorrectly when reassigning the correct charset. The bad news is that we also have a Finnish language translation encoded as ISO-8859-10 which is not supported in MySQL. To support those data in the upgrader, we will have to convert them in the PHP layer and update all of the binary values with UTF-8 equivalents before reassigning a utf8mb4 charset.

miqrogroove

2025-07-15 14:26

administrator   ~0000583

Extra consideration: The existing upgrader is built on latin1 charset connections. It will need to set and update the connection charset between schema versions.

Issue History

Date Modified Username Field Change
2025-07-05 23:11 miqrogroove New Issue
2025-07-05 23:11 miqrogroove Status new => assigned
2025-07-05 23:11 miqrogroove Assigned To => miqrogroove
2025-07-05 23:11 miqrogroove Issue generated from: 0000802
2025-07-05 23:11 miqrogroove Relationship added related to 0000802
2025-07-05 23:11 miqrogroove Assigned To miqrogroove =>
2025-07-05 23:11 miqrogroove Status assigned => confirmed
2025-07-10 07:25 miqrogroove Relationship added child of 0000810
2025-07-14 07:06 miqrogroove Target Version 1.12.00 => 1.10.00
2025-07-14 07:06 miqrogroove Flags Schema Updates => Schema Updates
2025-07-14 23:22 miqrogroove Note Added: 0000582
2025-07-15 06:36 miqrogroove Target Version 1.10.00 => 1.12.00
2025-07-15 14:26 miqrogroove Note Added: 0000583