Build fails with Swift 6.2 + swift-collections 1.4.0: MemberImportVisibility error in RequestBody.swift
## Description
`HummingbirdCore` fails to build with Swift 6.2 when `swift-collections` 1.4.0 is resolved, due to `MemberImportVisibility` ([SE-0444](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0444-member-import-visibility.md)) enforcement.
## Error
```
Sources/HummingbirdCore/Request/RequestBody.swift:164:52: error: instance method 'popFirst()' is not available due to missing import of defining module 'DequeModule' [#MemberImportVisibility]
Sources/HummingbirdCore/Request/RequestBody.swift:187:52: error: instance method 'popFirst()' is not available due to missing import of defining module 'DequeModule' [#MemberImportVisibility]
Sources/HummingbirdCore/Request/RequestBody.swift:210:91: error: initializer 'init()' is not available due to missing import of defining module 'DequeModule' [#MemberImportVisibility]
```
## Cause
`RequestBody.swift` does `import Collections` and uses `Deque` (type) and `Deque.popFirst()` (extension method defined in `DequeModule`).
In `swift-collections` < 1.4.0, the `Collections` umbrella module used `@_exported import DequeModule`, so importing `Collections` brought all of `DequeModule`'s extension methods into scope.
In `swift-collections` 1.4.0, `@_exported import` was [replaced with typealiases](https://github.com/apple/swift-collections/commit/eac10aba). The type name `Deque` is still visible through the typealias, but extension methods like `popFirst()` and `init()` are defined in `DequeModule` and are no longer transitively visible.
Swift 6.2 enforces [SE-0444 MemberImportVisibility](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0444-member-import-visibility.md) by default, so these members are now errors rather than warnings.
## Suggested Fix
Add `import DequeModule` to `Sources/HummingbirdCore/Request/RequestBody.swift` (or replace `import Collections` with `import DequeModule` since `Deque` is the only collections type used in that file).
## Environment
- Swift 6.2 (swift-6.2-RELEASE)
- swift-collections 1.4.0
- hummingbird 2.20.1
关闭于 2026-03-07 1 条评论