-
Notifications
You must be signed in to change notification settings - Fork 17
Open
Labels
transmittedIssue transmitted to inner serviceIssue transmitted to inner service
Description
Choose the appropriate description of the issue
Issues with ad behavior/display
Does the issue occur in the latest SDK version?
Haven't checked
Can the issue be reproduced in our public sample?
Haven't checked
Can you reproduce the issue?
No
Specify the versions of dependencies you are using
Resolved source packages:
cmark-gfm: https://github.com/swiftlang/swift-cmark.git @ 0.7.1
MyPackageWithYandexInstream: /Users/denis_dmitriev/Documents/Playground/MyPackageWithYandexInstream
KSCrash: https://github.com/kstenerud/KSCrash @ 2.1.2
swift-markdown: https://github.com/apple/swift-markdown.git @ 0.6.0
DivKitBinaryCompatibilityFacade: https://github.com/divkit/divkit-ios-facade @ 5.2.1
vgsl: https://github.com/yandex/vgsl.git @ 7.12.3
AppMetrica: https://github.com/appmetrica/appmetrica-sdk-ios @ 5.15.0
DivKit: https://github.com/divkit/divkit-ios.git @ 32.26.0
Provide your application identifier from the partner interface
No response
Provide any additional information that will help us resolve the issue as quickly as possible
При попытке собрать релизную версию возникают ошибки
** BUILD FAILED **
The following build commands failed:
EmitSwiftModule normal arm64 (in target 'VGSLFundamentals' from project 'vgsl')
SwiftEmitModule normal arm64 Emitting\ module\ for\ VGSLFundamentals (in target 'VGSLFundamentals' from project 'vgsl')
Building workspace MyPackageWithYandexInstream with scheme MyPackageWithYandexInstream and configuration Release
(3 failures)
Ошибки
SwiftEmitModule normal arm64 Emitting\ module\ for\ VGSLFundamentals (in target 'VGSLFundamentals' from project 'vgsl')
EmitSwiftModule normal arm64 (in target 'VGSLFundamentals' from project 'vgsl')
cd /Users/denis_dmitriev/Documents/Playground/MyPackageWithYandexInstream/.swiftpm/xcode
/Users/denis_dmitriev/Documents/Playground/MyPackageWithYandexInstream/Build/derived/iphoneos/SourcePackages/checkouts/vgsl/VGSLFundamentals/Zip3.swift:43:5: error: 'let' property '_seq' may not be initialized directly; use "self.init(...)" or "self = ..." instead
_seq = (seq1, seq2, seq3)
^
/Users/denis_dmitriev/Documents/Playground/MyPackageWithYandexInstream/Build/derived/iphoneos/SourcePackages/checkouts/vgsl/VGSLFundamentals/Zip3.swift:39:16: note: '_seq' declared here
internal let _seq: (Seq1, Seq2, Seq3)
^
/Users/denis_dmitriev/Documents/Playground/MyPackageWithYandexInstream/Build/derived/iphoneos/SourcePackages/checkouts/vgsl/VGSLFundamentals/concurrency/AllocatedUnfairLock.swift:18:5: error: 'let' property 'buffer' may not be initialized directly; use "self.init(...)" or "self = ..." instead
buffer = Buffer.create(minimumCapacity: 1) { buffer in
^
/Users/denis_dmitriev/Documents/Playground/MyPackageWithYandexInstream/Build/derived/iphoneos/SourcePackages/checkouts/vgsl/VGSLFundamentals/concurrency/AllocatedUnfairLock.swift:14:7: note: 'buffer' declared here
let buffer: Buffer
^
/Users/denis_dmitriev/Documents/Playground/MyPackageWithYandexInstream/Build/derived/iphoneos/SourcePackages/checkouts/vgsl/VGSLFundamentals/reactive/Lazy.swift:35:3: error: deinitializer can only be '@inlinable' if the class is '@_fixed_layout'
@inlinable
^~~~~~~~~~
/Users/denis_dmitriev/Documents/Playground/MyPackageWithYandexInstream/Build/derived/iphoneos/SourcePackages/checkouts/vgsl/VGSLFundamentals/reactive/Lazy.swift:31:12: error: initializer for class 'Lazy<T>' is '@inlinable' and must delegate to another initializer
internal init(state: State) {
^
Зависимости
Resolved source packages:
cmark-gfm: https://github.com/swiftlang/swift-cmark.git @ 0.7.1
MyPackageWithYandexInstream: /Users/denis_dmitriev/Documents/Playground/MyPackageWithYandexInstream
KSCrash: https://github.com/kstenerud/KSCrash @ 2.1.2
swift-markdown: https://github.com/apple/swift-markdown.git @ 0.6.0
DivKitBinaryCompatibilityFacade: https://github.com/divkit/divkit-ios-facade @ 5.2.1
vgsl: https://github.com/yandex/vgsl.git @ 7.12.3
AppMetrica: https://github.com/appmetrica/appmetrica-sdk-ios @ 5.15.0
DivKit: https://github.com/divkit/divkit-ios.git @ 32.26.0
Comments
При сборке библиотеки в релизной версии, возникает ** BUILD FAILED **. Проблема в зависимости от библиотеки VGSL. divkit-ios-facade -> divkit-ios -> vgsl
Проблема проявляется давно, в том числе на последней актуальной версии divkit-ios-facade 5.2.1
Скрипт сборки
#!/usr/bin/env bash
set -euo pipefail
OTHER_SWIFT_FLAGS="-no-verify-emitted-module-interface -enable-library-evolution"
rm -rf "./Build/DerivedData"
mkdir -p "./Build/DerivedData"
xcodebuild clean build \
-scheme "MyPackageWithYandexInstream" \
-configuration Release \
-sdk "iphoneos" \
-destination "generic/platform=iOS" \
-derivedDataPath "./Build/DerivedData/iphoneos" \
BUILD_LIBRARY_FOR_DISTRIBUTION=YES \
OTHER_SWIFT_FLAGS="$OTHER_SWIFT_FLAGS"
xcodebuild clean build \
-scheme "MyPackageWithYandexInstream" \
-configuration Release \
-sdk "iphonesimulator" \
-destination "generic/platform=iOS Simulator" \
-derivedDataPath "./Build/DerivedData/iphonesimulator" \
BUILD_LIBRARY_FOR_DISTRIBUTION=YES \
OTHER_SWIFT_FLAGS="$OTHER_SWIFT_FLAGS"Вот Package.swift
// swift-tools-version: 5.9
// The swift-tools-version declares the minimum version of Swift required to build this package.
import PackageDescription
let package = Package(
name: "MyPackageWithYandexInstream",
platforms: [
.iOS(.v13)
],
products: [
.library(
name: "MyPackageWithYandexInstream",
type: .static,
targets: ["MyPackageWithYandexInstream", "YandexMobileAdsInstreamWrapper"]
),
],
dependencies: [
// .package(url: "https://github.com/namiai/vgsl.git", branch: "swift6-fixes"), // Решает проблему
.package(url: "https://github.com/appmetrica/appmetrica-sdk-ios", from: "5.14.0"),
.package(url: "https://github.com/divkit/divkit-ios-facade", exact: "5.2.1")
],
targets: [
.target(
name: "MyPackageWithYandexInstream"
),
.target(
name: "YandexMobileAdsInstreamWrapper",
dependencies: [
.target(name: "YandexMobileAdsInstream"),
.target(name: "YandexMobileAdsWrapper"),
]
),
.target(
name: "YandexMobileAdsWrapper",
dependencies: [
.target(name: "YandexMobileAds", condition: .when(platforms: [.iOS])),
.product(name: "AppMetricaCore", package: "appmetrica-sdk-ios"),
.product(name: "AppMetricaCrashes", package: "appmetrica-sdk-ios"),
.product(name: "AppMetricaLibraryAdapter", package: "appmetrica-sdk-ios"),
.product(name: "DivKitBinaryCompatibilityFacade", package: "divkit-ios-facade")
],
resources: [
.process("Resources")
]
),
.binaryTarget(
name: "YandexMobileAdsInstream",
url: "https://ads-mobile-sdk.s3.yandex.net/Yandex/YandexMobileAdsInstream/0.61.0/spm/10ff9698-3b6b-4c29-b4ab-66cdfcb5a0b2.zip",
checksum: "dd133334b9569fc876eea05884e178dc0d355189a88f2b4c86961dcc27e1febd"
),
.binaryTarget(
name: "YandexMobileAds",
url: "https://ads-mobile-sdk.s3.yandex.net/Yandex/YandexMobileAds/7.17.1/spm/5177c6a0-8b16-4da1-8d24-8cb968316b04.zip",
checksum: "f71f60586a3fcc513bc89fd8b09457da033eeb78782dc33af923118d3bcb4886"
)
]
)В форк библиотеке [namiai/vgsl.git"](https://github.com/namiai/vgsl.git", branch: "swift6-fixes) эта проблема решена, namiai столкнулся с тем же.
Приложил SPM с проблемой
Metadata
Metadata
Assignees
Labels
transmittedIssue transmitted to inner serviceIssue transmitted to inner service