[swift-evolution] Strings in Swift 4
Ben Rimmington
me at benrimmington.com
Wed Jan 25 20:10:51 CST 2017
> On 25 Jan 2017, Dave Abrahams wrote:
>
>> on Tue Jan 24 2017, Ben Rimmington wrote:
>>
>> Could you include the latest ICU alongside the Swift standard library?
>
> To what end?
When iOS 10 and macOS 10.12 were released (2016-09-13),
their "libicucore" was based on ICU 57 (2016-03-23),
with support for Unicode 8 (2015-06-17).
They were using a Unicode standard from 15 months ago,
instead of Unicode 9 from 3 months ago (2016-06-21).
This can only be fixed by changing the ICU schedule.
However, the Swift 4 libraries could include ICU 58 now.
They'd have Unicode 9 conformance during implementation,
and also when deployed back to iOS 7 or macOS 10.9.
That's assuming you need ICU 58 for Unicode 9 conformance:
<https://github.com/apple/swift/blob/master/docs/StringManifesto.md#unicode-9-conformance>
> If Swift always uses the latest ICU it will sometimes behave
> inconsistently with Foundation. If you want to use the latest ICU
> yourself, you can always put it in your app bundle.
I think Linux apps can bundle ICU for swift-corelibs-foundation.
But a Swift 4 app deployed to iOS 7 or macOS 10.9 will be using
ICU 51 with Unicode 6.2 support.
-- Ben
More information about the swift-evolution
mailing list