<html><head><meta http-equiv="Content-Type" content="text/html; charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><br class=""><div><blockquote type="cite" class=""><div class="">On 28 Jul 2017, at 20:30, Alex Blewitt via swift-corelibs-dev <<a href="mailto:swift-corelibs-dev@swift.org" class="">swift-corelibs-dev@swift.org</a>> wrote:</div><div class=""><div style="font-family: Helvetica; font-size: 18px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class=""><br class=""></div><div style="font-family: Helvetica; font-size: 18px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">In the meantime I'll take a stab next week at proposing some unavailability annotations for some of the stuff which almost certainly doesn't make sense, to do with Mach ports and NSZone. </div></div></blockquote><br class=""></div><div>I've created a pull request which adds NSUnsupported, and uses that to wrap NSPort and NSMessagePort:</div><div><br class=""></div><div><a href="https://github.com/apple/swift-corelibs-foundation/pull/1150" class="">https://github.com/apple/swift-corelibs-foundation/pull/1150</a></div><div><br class=""></div><div>What do you think? Should we use 'deprecated' (so that it's a warning) or 'unavailable' (so that it's a compile time error)?</div><div><br class=""></div><div><table class=" diff-table tab-size" data-tab-size="8" style="box-sizing: border-box; border-spacing: 0px; width: 978.4000244140625px; tab-size: 8; color: rgb(36, 41, 46); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; font-size: 14px;"><tbody style="box-sizing: border-box;" class=""><tr style="box-sizing: border-box;" class=""><td class="blob-code-addition blob-code" style="box-sizing: border-box; padding: 0px 10px; position: relative; line-height: 20px; vertical-align: top; background-color: rgb(230, 255, 237);"></td></tr><tr style="box-sizing: border-box;" class=""><td class="blob-code-addition is-hovered blob-code" style="box-sizing: border-box; padding: 0px 10px; position: relative; line-height: 20px; vertical-align: top; background-color: rgb(230, 255, 237);"><span class="blob-code-inner" style="box-sizing: border-box; overflow: visible; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 12px; word-wrap: normal; white-space: pre;">+ <span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">@available</span>(<span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">*</span>,<span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">deprecated</span>,<span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">message</span>:<span class="pl-s" style="box-sizing: border-box; color: rgb(3, 47, 98);"><span class="pl-pds" style="box-sizing: border-box;">"</span>Not available on non-Darwin platforms<span class="pl-pds" style="box-sizing: border-box;">"</span></span>)</span></td></tr><tr style="box-sizing: border-box;" class=""><td class="blob-num-addition blob-num empty-cell" style="box-sizing: border-box; padding: 0px 10px; width: 50px; min-width: 50px; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 12px; line-height: 20px; color: rgba(27, 31, 35, 0.298039); text-align: right; white-space: nowrap; vertical-align: top; cursor: pointer; -webkit-user-select: none; background-color: rgb(205, 255, 216); border-color: rgb(190, 245, 203);"></td><td id="diff-8bf7bfc80743d7354cec7f95dc553c89R81" data-line-number="81" class="blob-num-addition blob-num js-linkable-line-number" style="box-sizing: border-box; padding: 0px 10px; width: 50px; min-width: 50px; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 12px; line-height: 20px; color: rgba(27, 31, 35, 0.298039); text-align: right; white-space: nowrap; vertical-align: top; cursor: pointer; -webkit-user-select: none; background-color: rgb(205, 255, 216); border-color: rgb(190, 245, 203);"></td><td class="blob-code-addition blob-code" style="box-sizing: border-box; padding: 0px 10px; position: relative; line-height: 20px; vertical-align: top; background-color: rgb(230, 255, 237);"><button class="add-line-comment btn-link js-add-line-comment js-add-single-line-comment" data-path="Foundation/Bundle.swift" data-anchor="diff-8bf7bfc80743d7354cec7f95dc553c89" data-position="6" data-line="81" type="button" aria-label="Add line comment" style="font-family: inherit; font-size: inherit; font-style: inherit; font-variant-caps: inherit; font-stretch: inherit; line-height: 21px; margin: -2px -10px -2px -20px; overflow: visible; cursor: pointer; padding: 0px; color: rgb(255, 255, 255); white-space: nowrap; -webkit-user-select: none; background-color: rgb(3, 102, 214); border: 0px; position: relative; z-index: 5; float: left; width: 22px; height: 22px; background-image: linear-gradient(rgb(3, 114, 239), rgb(3, 102, 214)); border-top-left-radius: 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px; box-shadow: rgba(27, 31, 35, 0.14902) 0px 1px 4px; opacity: 0; transition: transform 0.1s ease-in-out; transform: scale(0.8, 0.8);"><svg aria-hidden="true" class="octicon octicon-plus" height="16" version="1.1" viewBox="0 0 12 16" width="12"><path fill-rule="evenodd" d="M12 9H7v5H5V9H0V7h5V2h2v5h5z"></path></svg></button><span class="blob-code-inner" style="box-sizing: border-box; overflow: visible; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 12px; word-wrap: normal; white-space: pre;"></span></td></tr></tbody></table><table class=" diff-table tab-size" data-tab-size="8" style="box-sizing: border-box; border-spacing: 0px; width: 978.4000244140625px; tab-size: 8; color: rgb(36, 41, 46); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; font-size: 14px;"><tbody style="box-sizing: border-box;" class=""><tr style="box-sizing: border-box;" class=""><td class="blob-code-addition blob-code" style="box-sizing: border-box; padding: 0px 10px; position: relative; line-height: 20px; vertical-align: top; background-color: rgb(230, 255, 237);"></td></tr><tr style="box-sizing: border-box;" class=""><td class="blob-code-addition is-hovered blob-code" style="box-sizing: border-box; padding: 0px 10px; position: relative; line-height: 20px; vertical-align: top; background-color: rgb(230, 255, 237);"><span class="blob-code-inner" style="box-sizing: border-box; overflow: visible; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 12px; word-wrap: normal; white-space: pre;">+ <span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">@available</span>(<span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">*</span>,<span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">unavailable</span>,<span class="pl-k" style="box-sizing: border-box; color: rgb(215, 58, 73);">message</span>:<span class="pl-s" style="box-sizing: border-box; color: rgb(3, 47, 98);"><span class="pl-pds" style="box-sizing: border-box;">"</span>Not available on non-Darwin platforms<span class="pl-pds" style="box-sizing: border-box;">"</span></span>)</span></td></tr><tr style="box-sizing: border-box;" class=""><td class="blob-num-addition blob-num empty-cell" style="box-sizing: border-box; padding: 0px 10px; width: 50px; min-width: 50px; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 12px; line-height: 20px; color: rgba(27, 31, 35, 0.298039); text-align: right; white-space: nowrap; vertical-align: top; cursor: pointer; -webkit-user-select: none; background-color: rgb(205, 255, 216); border-color: rgb(190, 245, 203);"></td><td id="diff-8bf7bfc80743d7354cec7f95dc553c89R81" data-line-number="81" class="blob-num-addition blob-num js-linkable-line-number" style="box-sizing: border-box; padding: 0px 10px; width: 50px; min-width: 50px; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 12px; line-height: 20px; color: rgba(27, 31, 35, 0.298039); text-align: right; white-space: nowrap; vertical-align: top; cursor: pointer; -webkit-user-select: none; background-color: rgb(205, 255, 216); border-color: rgb(190, 245, 203);"></td><td class="blob-code-addition blob-code" style="box-sizing: border-box; padding: 0px 10px; position: relative; line-height: 20px; vertical-align: top; background-color: rgb(230, 255, 237);"><button class="add-line-comment btn-link js-add-line-comment js-add-single-line-comment" data-path="Foundation/Bundle.swift" data-anchor="diff-8bf7bfc80743d7354cec7f95dc553c89" data-position="6" data-line="81" type="button" aria-label="Add line comment" style="font-family: inherit; font-size: inherit; font-style: inherit; font-variant-caps: inherit; font-stretch: inherit; line-height: 21px; margin: -2px -10px -2px -20px; overflow: visible; cursor: pointer; padding: 0px; color: rgb(255, 255, 255); white-space: nowrap; -webkit-user-select: none; background-color: rgb(3, 102, 214); border: 0px; position: relative; z-index: 5; float: left; width: 22px; height: 22px; background-image: linear-gradient(rgb(3, 114, 239), rgb(3, 102, 214)); border-top-left-radius: 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px; box-shadow: rgba(27, 31, 35, 0.14902) 0px 1px 4px; opacity: 0; transition: transform 0.1s ease-in-out; transform: scale(0.8, 0.8);"><svg aria-hidden="true" class="octicon octicon-plus" height="16" version="1.1" viewBox="0 0 12 16" width="12"><path fill-rule="evenodd" d="M12 9H7v5H5V9H0V7h5V2h2v5h5z"></path></svg></button><span class="blob-code-inner" style="box-sizing: border-box; overflow: visible; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 12px; word-wrap: normal; white-space: pre;"></span></td></tr></tbody></table></div><div><br class=""></div><div>Alex</div><br class=""></body></html>