Re: Where are the ICU Headers?
Apple has historically suggested using ICU for functionality that it's higher-level frameworks don't provide, and it's easy enough to get at all needed functionality through its C functions without using C++ (at least what I care about). Since most significant changes only occur in the data across releases, or below an API layer, the interfaces would not be as much of an issue for most when using the current installed library. -- Gary L. Wade (Sent from my iPad) http://www.garywade.com/ > On Oct 6, 2016, at 5:23 AM, Alastair Houghton> wrote: > >> On 6 Oct 2016, at 10:43, dangerwillrobinsondan...@gmail.com wrote: >> >> Pretty sure the reason is a simple one. >> If you look at the history of open source in the OS on the Apple open source >> page, you'll notice they pretty much bump the ICU version they use annually. >> Although unlikely, ICU might change in ways that breaks your app. They don't >> want to support ICU directly. It's a pretty tough API in C or C++ > > Also, historically, C++ ABI compatibility has been a thorny issue. Even now, > if you want a C++ dynamic library to provide binary compatibility you have to > be pretty careful. > > ICU is largely a C++ library. It does have a C interface, but I’m not sure > the entire feature set is available without using C++, and ICU explicitly > doesn’t provide for binary compatibility at the C++ API level (or even for > some of its C API(!)) - see > > http://userguide.icu-project.org/design#TOC-ICU-Binary-Compatibility:-Using-ICU-as-an-Operating-System-Level-Library > > Kind regards, > > Alastair. > > -- > http://alastairs-place.net > ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Re: Where are the ICU Headers?
On 6 Oct 2016, at 10:43, dangerwillrobinsondan...@gmail.com wrote: > > Pretty sure the reason is a simple one. > If you look at the history of open source in the OS on the Apple open source > page, you'll notice they pretty much bump the ICU version they use annually. > Although unlikely, ICU might change in ways that breaks your app. They don't > want to support ICU directly. It's a pretty tough API in C or C++ Also, historically, C++ ABI compatibility has been a thorny issue. Even now, if you want a C++ dynamic library to provide binary compatibility you have to be pretty careful. ICU is largely a C++ library. It does have a C interface, but I’m not sure the entire feature set is available without using C++, and ICU explicitly doesn’t provide for binary compatibility at the C++ API level (or even for some of its C API(!)) - see http://userguide.icu-project.org/design#TOC-ICU-Binary-Compatibility:-Using-ICU-as-an-Operating-System-Level-Library Kind regards, Alastair. -- http://alastairs-place.net ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Re: Where are the ICU Headers?
Pretty sure the reason is a simple one. If you look at the history of open source in the OS on the Apple open source page, you'll notice they pretty much bump the ICU version they use annually. Although unlikely, ICU might change in ways that breaks your app. They don't want to support ICU directly. It's a pretty tough API in C or C++ You could always build your own version and bundle it. If you download the open source version they post you'll get the right settings. It's not easy to build it right, but it's doable and you can link to one you build and bundle in your app. Linking to theirs would leave them beholden to a fast outdated version to support your app. Sent from my iPhone > On 6 Oct 2016, at 18:32, Gary L. Wadewrote: > > My experience has been that last year (iOS 9 and OS X 10.11) Apple made ICU a > private framework worthy of rejection from its App Store if you used its APIs > directly. I encountered this because like in years past when Apple did not > provide ICU through a higher-level framework, we were encouraged to call ICU > directly, and that's when I supplied a signature to translate between > 2-letter and 3-letter language codes to work around the no-headers issue, > which I needed to support a 3rd party services requirement. However, the app > was rejected as using a private API. I was going to challenge it, but my > management decided we should hard code the mappings. > -- > Gary L. Wade (Sent from my iPad) > http://www.garywade.com/ > >> On Oct 6, 2016, at 1:22 AM, Gerriet M. Denkmann wrote: >> >> The Icu stuff (57.1) is included in macOS 12. >> >> There is: >> /usr/lib/libicucore.A.dylib >> >> and Xcode has: >> /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib/libicucore.tbd >> >> >> But I cannot find the headers. >> >> Gerriet. >> >> >> ___ >> >> Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) >> >> Please do not post admin requests or moderator comments to the list. >> Contact the moderators at cocoa-dev-admins(at)lists.apple.com >> >> Help/Unsubscribe/Update your Subscription: >> https://lists.apple.com/mailman/options/cocoa-dev/garywade%40desisoftsystems.com >> >> This email sent to garyw...@desisoftsystems.com > > > ___ > > Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) > > Please do not post admin requests or moderator comments to the list. > Contact the moderators at cocoa-dev-admins(at)lists.apple.com > > Help/Unsubscribe/Update your Subscription: > https://lists.apple.com/mailman/options/cocoa-dev/dangerwillrobinsondanger%40gmail.com > > This email sent to dangerwillrobinsondan...@gmail.com ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Re: Where are the ICU Headers?
My experience has been that last year (iOS 9 and OS X 10.11) Apple made ICU a private framework worthy of rejection from its App Store if you used its APIs directly. I encountered this because like in years past when Apple did not provide ICU through a higher-level framework, we were encouraged to call ICU directly, and that's when I supplied a signature to translate between 2-letter and 3-letter language codes to work around the no-headers issue, which I needed to support a 3rd party services requirement. However, the app was rejected as using a private API. I was going to challenge it, but my management decided we should hard code the mappings. -- Gary L. Wade (Sent from my iPad) http://www.garywade.com/ > On Oct 6, 2016, at 1:22 AM, Gerriet M. Denkmannwrote: > > The Icu stuff (57.1) is included in macOS 12. > > There is: > /usr/lib/libicucore.A.dylib > > and Xcode has: > /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib/libicucore.tbd > > > But I cannot find the headers. > > Gerriet. > > > ___ > > Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) > > Please do not post admin requests or moderator comments to the list. > Contact the moderators at cocoa-dev-admins(at)lists.apple.com > > Help/Unsubscribe/Update your Subscription: > https://lists.apple.com/mailman/options/cocoa-dev/garywade%40desisoftsystems.com > > This email sent to garyw...@desisoftsystems.com ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com
Where are the ICU Headers?
The Icu stuff (57.1) is included in macOS 12. There is: /usr/lib/libicucore.A.dylib and Xcode has: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/lib/libicucore.tbd But I cannot find the headers. Gerriet. ___ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com