The Swift Package Index logo.Swift Package Index

Build Information

Failed to build IP2LocationSwift, reference main (d0822e), with Swift 6.3 for Wasm on 4 Sep 2026 09:19:12 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-54344845-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:wasm-6.3-latest swift build --swift-sdk swift-6.3.2-RELEASE_wasm 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 5.0.2
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/ip2location/ip2location-swift.git
Reference: main
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
From https://github.com/ip2location/ip2location-swift
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at d0822e0 First commit.
Cloned https://github.com/ip2location/ip2location-swift.git
Revision (git rev-parse @):
d0822e0ed171ff60af0719b884c578526dbdd03d
SUCCESS checkout https://github.com/ip2location/ip2location-swift.git at main
========================================
Build
========================================
Selected platform:         wasm
Swift version:             6.3
Building package at path:  $PWD
https://github.com/ip2location/ip2location-swift.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344845-0":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:wasm-6.3-latest swift build --swift-sdk swift-6.3.2-RELEASE_wasm 2>&1
wasm-6.3-latest: Pulling from saguaro1/spi-images
Digest: sha256:e92e38b97676c18adb57b57429ddfb766786102cb50cb918e0d9e8055d05b35d
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:wasm-6.3-latest
Building for debugging...
[0/7] Write sources
[2/7] Write swift-version-24593BA9C3E375BF.txt
[4/14] Compiling IP2LocationSwift IP2Location.swift
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2Location.swift:66:65: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 64 |                 lang: IP2Language? = nil,
 65 |                 baseURL: URL = IP2Location.defaultBaseURL,
 66 |                 session: any IP2LocationNetworking = URLSession.shared) {
    |                                                                 `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 67 |         self.apiKey = apiKey
 68 |         self.authStyle = authStyle
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2Location.swift:143:74: error: cannot find type 'URLRequest' in scope
141 |
142 |     /// Builds the GET request for a lookup.
143 |     internal func makeRequest(ip: String?, lang: IP2Language?) throws -> URLRequest {
    |                                                                          `- error: cannot find type 'URLRequest' in scope
144 |         let effectiveLang = lang ?? self.lang
145 |
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2Location.swift:181:55: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
179 |     /// Decodes a raw HTTP response into an `IP2LocationResult`, translating
180 |     /// API error payloads and unexpected status codes into `IP2LocationError`.
181 |     internal static func handle(data: Data, response: URLResponse) throws -> IP2LocationResult {
    |                                                       `- error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
182 |         guard let http = response as? HTTPURLResponse else {
183 |             throw IP2LocationError.invalidResponse
Foundation.URLResponse:2:18: note: 'URLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLResponse = AnyObject
  |                  `- note: 'URLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2Location.swift:113:22: error: cannot find type 'URLRequest' in scope
111 |                        lang: IP2Language? = nil,
112 |                        completion: @escaping (Result<IP2LocationResult, IP2LocationError>) -> Void) {
113 |         let request: URLRequest
    |                      `- error: cannot find type 'URLRequest' in scope
114 |         do {
115 |             request = try makeRequest(ip: ip, lang: lang)
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2LocationNetworking.swift:13:29: error: cannot find type 'URLRequest' in scope
11 |     /// The implementation owns scheduling — `URLSession` starts its task and
12 |     /// calls `.resume()` automatically.
13 |     func perform(_ request: URLRequest,
   |                             `- error: cannot find type 'URLRequest' in scope
14 |                  completion: @escaping @Sendable (Data?, URLResponse?, Error?) -> Void)
15 | }
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2Location.swift:170:23: error: cannot find 'URLRequest' in scope
168 |         }
169 |
170 |         var request = URLRequest(url: url)
    |                       `- error: cannot find 'URLRequest' in scope
171 |         request.httpMethod = "GET"
172 |         request.timeoutInterval = 30
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2Location.swift:182:35: warning: conditional cast from 'URLResponse' (aka 'AnyObject') to 'HTTPURLResponse' (aka 'AnyObject') always succeeds
180 |     /// API error payloads and unexpected status codes into `IP2LocationError`.
181 |     internal static func handle(data: Data, response: URLResponse) throws -> IP2LocationResult {
182 |         guard let http = response as? HTTPURLResponse else {
    |                                   `- warning: conditional cast from 'URLResponse' (aka 'AnyObject') to 'HTTPURLResponse' (aka 'AnyObject') always succeeds
183 |             throw IP2LocationError.invalidResponse
184 |         }
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2Location.swift:182:39: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
180 |     /// API error payloads and unexpected status codes into `IP2LocationError`.
181 |     internal static func handle(data: Data, response: URLResponse) throws -> IP2LocationResult {
182 |         guard let http = response as? HTTPURLResponse else {
    |                                       `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
183 |             throw IP2LocationError.invalidResponse
184 |         }
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2Location.swift:185:51: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
183 |             throw IP2LocationError.invalidResponse
184 |         }
185 |         let isSuccess = (200..<300).contains(http.statusCode)
    |                                                   `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
186 |
187 |         // The API returns either a lookup result or an error envelope:
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2Location.swift:197:56: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
195 |             }
196 |             guard isSuccess else {
197 |                 throw IP2LocationError.httpStatus(http.statusCode)
    |                                                        `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
198 |             }
199 |             return result
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2Location.swift:203:52: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
201 |
202 |         guard isSuccess else {
203 |             throw IP2LocationError.httpStatus(http.statusCode)
    |                                                    `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
204 |         }
205 |         throw IP2LocationError.decodingFailed
error: emit-module command failed with exit code 1 (use -v to see invocation)
[5/14] Compiling IP2LocationSwift IP2Language.swift
[6/14] Emitting module IP2LocationSwift
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2Location.swift:66:65: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 64 |                 lang: IP2Language? = nil,
 65 |                 baseURL: URL = IP2Location.defaultBaseURL,
 66 |                 session: any IP2LocationNetworking = URLSession.shared) {
    |                                                                 `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 67 |         self.apiKey = apiKey
 68 |         self.authStyle = authStyle
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2Location.swift:143:74: error: cannot find type 'URLRequest' in scope
141 |
142 |     /// Builds the GET request for a lookup.
143 |     internal func makeRequest(ip: String?, lang: IP2Language?) throws -> URLRequest {
    |                                                                          `- error: cannot find type 'URLRequest' in scope
144 |         let effectiveLang = lang ?? self.lang
145 |
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2Location.swift:181:55: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
179 |     /// Decodes a raw HTTP response into an `IP2LocationResult`, translating
180 |     /// API error payloads and unexpected status codes into `IP2LocationError`.
181 |     internal static func handle(data: Data, response: URLResponse) throws -> IP2LocationResult {
    |                                                       `- error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
182 |         guard let http = response as? HTTPURLResponse else {
183 |             throw IP2LocationError.invalidResponse
Foundation.URLResponse:2:18: note: 'URLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLResponse = AnyObject
  |                  `- note: 'URLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2LocationBulk.swift:51:65: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 49 |                 authStyle: IP2Location.AuthStyle = .queryParameter,
 50 |                 baseURL: URL = IP2LocationBulk.defaultBaseURL,
 51 |                 session: any IP2LocationNetworking = URLSession.shared) {
    |                                                                 `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 52 |         self.apiKey = apiKey
 53 |         self.authStyle = authStyle
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2LocationBulk.swift:125:74: error: cannot find type 'URLRequest' in scope
123 |     // MARK: - Internal
124 |
125 |     private func makeRequest(ips: [String], fields: [String]?) throws -> URLRequest {
    |                                                                          `- error: cannot find type 'URLRequest' in scope
126 |         var components = URLComponents(url: baseURL, resolvingAgainstBaseURL: false) ?? URLComponents()
127 |         var items: [URLQueryItem] = []
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2LocationBulk.swift:166:55: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
164 |     /// Decodes a raw HTTP response into an `IP2LocationBulkResult`, translating
165 |     /// API error payloads and unexpected status codes into `IP2LocationError`.
166 |     internal static func handle(data: Data, response: URLResponse) throws -> IP2LocationBulkResult {
    |                                                       `- error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
167 |         guard let http = response as? HTTPURLResponse else {
168 |             throw IP2LocationError.invalidResponse
Foundation.URLResponse:2:18: note: 'URLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLResponse = AnyObject
  |                  `- note: 'URLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2LocationNetworking.swift:13:29: error: cannot find type 'URLRequest' in scope
11 |     /// The implementation owns scheduling — `URLSession` starts its task and
12 |     /// calls `.resume()` automatically.
13 |     func perform(_ request: URLRequest,
   |                             `- error: cannot find type 'URLRequest' in scope
14 |                  completion: @escaping @Sendable (Data?, URLResponse?, Error?) -> Void)
15 | }
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2LocationNetworking.swift:14:58: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
12 |     /// calls `.resume()` automatically.
13 |     func perform(_ request: URLRequest,
14 |                  completion: @escaping @Sendable (Data?, URLResponse?, Error?) -> Void)
   |                                                          `- error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
15 | }
16 |
Foundation.URLResponse:2:18: note: 'URLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLResponse = AnyObject
  |                  `- note: 'URLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2LocationNetworking.swift:17:1: error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended [#NominalTypes]
15 | }
16 |
17 | extension URLSession: IP2LocationNetworking {
   | `- error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended [#NominalTypes]
18 |     public func perform(_ request: URLRequest,
19 |                         completion: @escaping @Sendable (Data?, URLResponse?, Error?) -> Void) {
[#NominalTypes]: <https://docs.swift.org/compiler/documentation/diagnostics/nominal-types>
[7/14] Compiling IP2LocationSwift IP2LocationError.swift
[8/14] Compiling IP2LocationSwift IP2LocationBulk.swift
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2LocationBulk.swift:51:65: error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 49 |                 authStyle: IP2Location.AuthStyle = .queryParameter,
 50 |                 baseURL: URL = IP2LocationBulk.defaultBaseURL,
 51 |                 session: any IP2LocationNetworking = URLSession.shared) {
    |                                                                 `- error: type 'URLSession' (aka 'AnyObject') has no member 'shared'
 52 |         self.apiKey = apiKey
 53 |         self.authStyle = authStyle
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2LocationBulk.swift:125:74: error: cannot find type 'URLRequest' in scope
123 |     // MARK: - Internal
124 |
125 |     private func makeRequest(ips: [String], fields: [String]?) throws -> URLRequest {
    |                                                                          `- error: cannot find type 'URLRequest' in scope
126 |         var components = URLComponents(url: baseURL, resolvingAgainstBaseURL: false) ?? URLComponents()
127 |         var items: [URLQueryItem] = []
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2LocationBulk.swift:166:55: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
164 |     /// Decodes a raw HTTP response into an `IP2LocationBulkResult`, translating
165 |     /// API error payloads and unexpected status codes into `IP2LocationError`.
166 |     internal static func handle(data: Data, response: URLResponse) throws -> IP2LocationBulkResult {
    |                                                       `- error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
167 |         guard let http = response as? HTTPURLResponse else {
168 |             throw IP2LocationError.invalidResponse
Foundation.URLResponse:2:18: note: 'URLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLResponse = AnyObject
  |                  `- note: 'URLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2LocationBulk.swift:96:22: error: cannot find type 'URLRequest' in scope
 94 |                        fields: [String]? = nil,
 95 |                        completion: @escaping (Result<IP2LocationBulkResult, IP2LocationError>) -> Void) {
 96 |         let request: URLRequest
    |                      `- error: cannot find type 'URLRequest' in scope
 97 |         do {
 98 |             request = try makeRequest(ips: ips, fields: fields)
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2LocationNetworking.swift:13:29: error: cannot find type 'URLRequest' in scope
11 |     /// The implementation owns scheduling — `URLSession` starts its task and
12 |     /// calls `.resume()` automatically.
13 |     func perform(_ request: URLRequest,
   |                             `- error: cannot find type 'URLRequest' in scope
14 |                  completion: @escaping @Sendable (Data?, URLResponse?, Error?) -> Void)
15 | }
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2LocationBulk.swift:147:23: error: cannot find 'URLRequest' in scope
145 |         }
146 |
147 |         var request = URLRequest(url: url)
    |                       `- error: cannot find 'URLRequest' in scope
148 |         request.httpMethod = "POST"
149 |         request.timeoutInterval = 30
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2LocationBulk.swift:167:35: warning: conditional cast from 'URLResponse' (aka 'AnyObject') to 'HTTPURLResponse' (aka 'AnyObject') always succeeds
165 |     /// API error payloads and unexpected status codes into `IP2LocationError`.
166 |     internal static func handle(data: Data, response: URLResponse) throws -> IP2LocationBulkResult {
167 |         guard let http = response as? HTTPURLResponse else {
    |                                   `- warning: conditional cast from 'URLResponse' (aka 'AnyObject') to 'HTTPURLResponse' (aka 'AnyObject') always succeeds
168 |             throw IP2LocationError.invalidResponse
169 |         }
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2LocationBulk.swift:167:39: error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
165 |     /// API error payloads and unexpected status codes into `IP2LocationError`.
166 |     internal static func handle(data: Data, response: URLResponse) throws -> IP2LocationBulkResult {
167 |         guard let http = response as? HTTPURLResponse else {
    |                                       `- error: 'HTTPURLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
168 |             throw IP2LocationError.invalidResponse
169 |         }
Foundation.HTTPURLResponse:2:18: note: 'HTTPURLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias HTTPURLResponse = AnyObject
  |                  `- note: 'HTTPURLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2LocationBulk.swift:170:51: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
168 |             throw IP2LocationError.invalidResponse
169 |         }
170 |         let isSuccess = (200..<300).contains(http.statusCode)
    |                                                   `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
171 |
172 |         if let result = try? JSONDecoder().decode(IP2LocationBulkResult.self, from: data) {
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2LocationBulk.swift:180:56: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
178 |             }
179 |             guard isSuccess else {
180 |                 throw IP2LocationError.httpStatus(http.statusCode)
    |                                                        `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
181 |             }
182 |             return result
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2LocationBulk.swift:186:52: error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
184 |
185 |         guard isSuccess else {
186 |             throw IP2LocationError.httpStatus(http.statusCode)
    |                                                    `- error: value of type 'HTTPURLResponse' (aka 'AnyObject') has no member 'statusCode'
187 |         }
188 |         throw IP2LocationError.decodingFailed
[9/14] Compiling IP2LocationSwift IP2LocationResult.swift
[10/14] Compiling IP2LocationSwift IP2LocationNetworking.swift
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2LocationNetworking.swift:13:29: error: cannot find type 'URLRequest' in scope
11 |     /// The implementation owns scheduling — `URLSession` starts its task and
12 |     /// calls `.resume()` automatically.
13 |     func perform(_ request: URLRequest,
   |                             `- error: cannot find type 'URLRequest' in scope
14 |                  completion: @escaping @Sendable (Data?, URLResponse?, Error?) -> Void)
15 | }
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2LocationNetworking.swift:14:58: error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
12 |     /// calls `.resume()` automatically.
13 |     func perform(_ request: URLRequest,
14 |                  completion: @escaping @Sendable (Data?, URLResponse?, Error?) -> Void)
   |                                                          `- error: 'URLResponse' is unavailable: This type has moved to the FoundationNetworking module. Import that module to use it.
15 | }
16 |
Foundation.URLResponse:2:18: note: 'URLResponse' has been explicitly marked unavailable here
1 | @available(*, unavailable, message: "This type has moved to the FoundationNetworking module. Import that module to use it.")
2 | public typealias URLResponse = AnyObject
  |                  `- note: 'URLResponse' has been explicitly marked unavailable here
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2LocationNetworking.swift:17:1: error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended [#NominalTypes]
15 | }
16 |
17 | extension URLSession: IP2LocationNetworking {
   | `- error: non-nominal type 'URLSession' (aka 'AnyObject') cannot be extended [#NominalTypes]
18 |     public func perform(_ request: URLRequest,
19 |                         completion: @escaping @Sendable (Data?, URLResponse?, Error?) -> Void) {
/host/spi-builder-workspace/Sources/IP2LocationSwift/IP2LocationNetworking.swift:18:36: error: cannot find type 'URLRequest' in scope
16 |
17 | extension URLSession: IP2LocationNetworking {
18 |     public func perform(_ request: URLRequest,
   |                                    `- error: cannot find type 'URLRequest' in scope
19 |                         completion: @escaping @Sendable (Data?, URLResponse?, Error?) -> Void) {
20 |         dataTask(with: request, completionHandler: completion).resume()
[#NominalTypes]: <https://docs.swift.org/compiler/documentation/diagnostics/nominal-types>
BUILD FAILURE 6.3 wasm