The GLib unicode backend is unused in Gnome and incomplete at the moment. Additionally it requires conversion to UTF-8 everywhere, so it will never match the performance of the ICU one. ICU is used by almost all other ports and gives us consistency.
Carlos did a lot of really nice cleanup to the GLib backend a few years back, so I'm a bit sad to be proposing this. At the same time, the design of the GLib API (UTF-8 only) suggest that the performance characteristics of the backend will be worse than those of the ICU backend. Since this is used throughout WebCore we really need this code to be fast.
Created attachment 188006 [details] Patch
Comment on attachment 188006 [details] Patch I think focusing on ICU is a great idea.
Comment on attachment 188006 [details] Patch Clearing flags on attachment: 188006 Committed r142724: <http://trac.webkit.org/changeset/142724>
All reviewed patches have been landed. Closing bug.
Reopening to attach new patch.
Sorry, didn't mean to reopen this.
It seems some traces of GLib unicode are still present in the sources: WTF/WTF.gypi:258: 'wtf/unicode/glib/UnicodeGLib.cpp', WTF/WTF.gypi:259: 'wtf/unicode/glib/UnicodeGLib.h', WTF/wtf/unicode/Unicode.h:34:#include <wtf/unicode/glib/UnicodeGLib.h> WebCore/platform/text/TextEncoding.cpp:40:#elif USE(GLIB_UNICODE) WebCore/platform/text/TextEncoding.cpp:107:#elif USE(GLIB_UNICODE) WebCore/platform/text/TextEncodingRegistry.cpp:48:#if USE(GLIB_UNICODE) WebCore/platform/text/TextEncodingRegistry.cpp:229:#if USE(GLIB_UNICODE) WebCore/platform/text/TextEncodingRegistry.cpp:301:#if USE(GLIB_UNICODE) WebCore/platform/KURL.cpp:47:#elif USE(GLIB_UNICODE) WebCore/platform/KURL.cpp:1483:#elif USE(GLIB_UNICODE) WebKit/blackberry/WebCoreSupport/AboutDataUseFeatures.in:37:GLIB_UNICODE WTF/wtf/unicode/Unicode.h:33:#elif USE(GLIB_UNICODE)
I'm fixing the .gypi references since they break the chromium bots. I'm not doing anything with the #defines in the code, though.
*sniff* Feeling nostalgic to see my first ever WebKit contribution going away... But agree it makes sense. Performance isn't the only thing where it wouldn't match ICU. Word breaking behavior was not really identical.
Cleanup is here: https://bugs.webkit.org/show_bug.cgi?id=109707