Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[SR-9505] Source compatibility breakage in vapor-routing #3571

Closed
moiseev mannequin opened this issue Dec 13, 2018 · 10 comments
Closed

[SR-9505] Source compatibility breakage in vapor-routing #3571

moiseev mannequin opened this issue Dec 13, 2018 · 10 comments

Comments

@moiseev
Copy link
Mannequin

moiseev mannequin commented Dec 13, 2018

Previous ID SR-9505
Radar rdar://problem/46850346
Original Reporter @moiseev
Type Task
Status Resolved
Resolution Done
Additional Detail from JIRA
Votes 0
Component/s Foundation
Labels Task, SourceCompatibility
Assignee @moiseev
Priority Medium

md5: b2f089832ff65d4f4d06c40289643089

Issue Description:

[16/16] /Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/build/compat_macos/install/toolchain/usr/bin/swiftc -module-name Routing -incremental -emit-dependencies -emit-module -emit-module-path /Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/.build/x86_64-apple-macosx/release/Routing.swiftmodule -output-file-map /Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/.build/x86_64-apple-macosx/release/Routing.build/output-file-map.json -parse-as-library -whole-module-optimization -num-threads 4 -c /Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/Sources/Routing/Parameter/Parameter.swift /Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/Sources/Routing/Parameter/ParameterValue.swift /Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/Sources/Routing/Parameter/Parameters.swift /Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/Sources/Routing/Register/PathComponent.swift /Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/Sources/Routing/Register/Route.swift /Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/Sources/Routing/Register/RouterOption.swift /Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/Sources/Routing/Routing/RoutableComponent.swift /Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/Sources/Routing/Routing/RouterNode.swift /Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/Sources/Routing/Routing/TrieRouter.swift /Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/Sources/Routing/Utilities/Deprecated.swift /Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/Sources/Routing/Utilities/Exports.swift /Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/Sources/Routing/Utilities/RoutingError.swift -I /Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/.build/x86_64-apple-macosx/release -target x86_64-apple-macosx10.10 -swift-version 4 -sdk /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -O -j4 -DSWIFT_PACKAGE -Xcc -fmodule-map-file=/Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/.build/x86_64-apple-macosx/release/CNIOSHA1.build/module.modulemap -I /Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/.build/checkouts/swift-nio-b68c973e/Sources/CNIOSHA1/include -Xcc -fmodule-map-file=/Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/.build/x86_64-apple-macosx/release/CNIOAtomics.build/module.modulemap -I /Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/.build/checkouts/swift-nio-b68c973e/Sources/CNIOAtomics/include -Xcc -fmodule-map-file=/Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/.build/x86_64-apple-macosx/release/CNIODarwin.build/module.modulemap -I /Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/.build/checkouts/swift-nio-b68c973e/Sources/CNIODarwin/include -Xcc -fmodule-map-file=/Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/.build/x86_64-apple-macosx/release/CNIOLinux.build/module.modulemap -I /Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/.build/checkouts/swift-nio-b68c973e/Sources/CNIOLinux/include -Xcc -fmodule-map-file=/Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/.build/checkouts/swift-nio-zlib-support-c4b8a10c/module.modulemap -module-cache-path /Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/.build/x86_64-apple-macosx/release/ModuleCache
/Users/buildnode/jenkins/workspace-private/swift-master-source-compat-suite/project_cache/vapor_routing/Sources/Routing/Routing/TrieRouter.swift:77:29: error: ambiguous use of 'withUnsafeBytes'
if constant.value.withUnsafeBytes({ path.routerCompare(to: $0, options: options) }) {
^
Foundation.Data:42:28: note: found this candidate
@inlinable public func withUnsafeBytes(_ body: (UnsafeRawBufferPointer) throws -> ResultType) rethrows -> ResultType
^
NIOFoundationCompat.Data:2:28: note: found this candidate
@inlinable public func withUnsafeBytes(_ body: (UnsafeRawBufferPointer) throws -> R) rethrows -> R
^

@moiseev
Copy link
Mannequin Author

moiseev mannequin commented Dec 13, 2018

Likely caused by apple/swift#20225

@belkadan
Copy link

cc @millenomi, @phausler

@millenomi
Copy link
Contributor

We intend to offer that call as a first-class API on Data in master and it is no longer appropriate that downstream clients implement it unprefixed. @weissi how can we stage a transition from your category to the new API?

@millenomi
Copy link
Contributor

cc @itaiferber

@weissi
Copy link
Member

weissi commented Dec 14, 2018

@millenomi oh yes, of course. No idea why we made that extension public, apologies!

@weissi
Copy link
Member

weissi commented Dec 14, 2018

@millenomi ok, made a pull request for NIO to a) rename our ContiguousCollection and b) remove the public Data extension: https://github.com/apple/swift-nio/pull/708/files#diff-76552d4c365010edf062b5baeb763f70R42

CC @Lukasa

@weissi
Copy link
Member

weissi commented Dec 14, 2018

ah hang on, that's a public protocol... For now, I'll rename our method until we can get rid of the complete protocol. For NIO 1 thought we won't be able to fix as this is SemVer major.

@millenomi
Copy link
Contributor

Yeah. we should coordinate because that could make the Swift where it lands incompatible with NIO 1.

@weissi
Copy link
Member

weissi commented Dec 14, 2018

@millenomi agreed.

@xedin
Copy link
Member

xedin commented Jan 24, 2019

Looks like this has been fixed by apple/swift#22074 I'm going to Un-XFAIL vapor project which is currently UPASS'ing.

@swift-ci swift-ci transferred this issue from apple/swift-issues Apr 25, 2022
@shahmishal shahmishal transferred this issue from apple/swift May 5, 2022
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants