14:27 | <littledan> | rkirsling: Oh, hmm, I work with Igalians... I wonder if we could just #ifdef your feature out if the ICU version isn't high enough |
14:27 | <littledan> | rkirsling: Who in Igalia gave you that limit? |
14:27 | <littledan> | (or, what thread was this limit presented on?) |
18:19 | <rkirsling> | littledan: we can always #ifdef out specific features, yeah. comment was here: https://bugs.webkit.org/show_bug.cgi?id=209694#c30 |
18:22 | <rkirsling> | it's a pretty fair constraint, so long as system ICU for a given platform is involved... |
18:35 | <littledan> | thanks for the reference; i'll talk with Carlos |
18:36 | <littledan> | I'm not sure if Ubuntu needs to be the point of reference; at the end of the day, Epiphany could upgrade to a later version of ICU and package that, like Chrome and Firefox do |
18:39 | <littledan> | just curious, are you thinking of using the new Intl APIs more in PlayStation? |
18:45 | <rkirsling> | hoping to! |
18:46 | <rkirsling> | it'd be super cool if app devs on our platforms didn't need to rely on moment.js or custom localized strings just for, e.g., relative time strings |
18:48 | <rkirsling> | (meant to say "our platform", but I guess "platforms" isn't wrong since desktop/mobile is important for anybody) |
18:49 | <rkirsling> | I guess the best I can do is make noise about "hey did you realize this is available? it's already there in the engine for you!" and have them push back against any "but do the strings produced actually meet our spec?" whining that arises |
18:49 | <littledan> | yeah ultimately people could wrap it with something that gives other strings when they need it |
18:49 | <rkirsling> | indeed |
18:49 | <littledan> | anyway it's a great little endorsement if you think these things will be useful for your customers! |
18:50 | <rkirsling> | and memory constraints are pretty important for us (since the hardware is for the games so our apps are supposed to be as lightweight as we can make 'em) so I think it could be a real win |
18:50 | <rkirsling> | for sure! it's really neat stuff, I just didn't have time to jump into it before now |
18:53 | <littledan> | rkirsling: Do you think it'd work out to develop features like Intl.RelativeTimeFormat in a way that the entire feature would just be omitted if a new enough ICU is not present? Would this be taxing from a maintenance perspective? |
18:54 | <littledan> | we're OK if tests fail on older versions of ICU (either due to outdated data or APIs that are entirely missing), we just want WebKitGTK and WPE to be able to build using a variety of system libraries |
18:55 | <rkirsling> | littledan: so my plan was originally to #ifdef formatToParts because I thought we needed ureldatefmt_formatToResult, but that turned out to be bug-ridden in ICU 64 anyway? so then I just implemented it in terms of NumberFormat's formatToParts, at which point I needed to go through which tests would succeed with which version, which was tedious, but ultimately I made it available to everyone, data bugs or not |
18:56 | <littledan> | oh I see... yeah Chrome has historically shipped some workarounds like this too |
18:57 | <littledan> | but it can get through somewhat more flexibly since it can make downstream ICU changes, since ICU is always bundled |
18:57 | <rkirsling> | ah yeah |
18:58 | <littledan> | I guess the WebKitGTK/WPE projects rely on the surrounding distro to maintain packages, which is why we have the more conservative policy. If it ever prevents you from making progress in Intl, let me know, but I guess you're unblocked anyway now. |
18:58 | <rkirsling> | so I think the current plan is: if there's actually a "this doesn't exist before X version" then we'll #ifdef, otherwise I think we'll just let data bugs live? |
18:58 | <littledan> | yeah, that plan sounds *100 emoji* to me |
18:58 | <rkirsling> | oh yeah, I'm not viewing it as blockage |
19:00 | <littledan> | good |
21:01 | <littledan> | (yeah, seems like I was missing a lot of context on embedded toolchains; the situation is really complicated) |
21:02 | <rkirsling> | yeah I'm not surprised :) |