diff --git a/plugins/package-managers/cocoapods/src/funTest/assets/projects/synthetic/external-sources-expected-output.yml b/plugins/package-managers/cocoapods/src/funTest/assets/projects/synthetic/external-sources-expected-output.yml index 6bfaf20bc657..1720c1b2d254 100644 --- a/plugins/package-managers/cocoapods/src/funTest/assets/projects/synthetic/external-sources-expected-output.yml +++ b/plugins/package-managers/cocoapods/src/funTest/assets/projects/synthetic/external-sources-expected-output.yml @@ -28,7 +28,6 @@ project: - id: "Pod::AFNetworking/Reachability:3.2.1" - id: "Pod::AFNetworking/Security:3.2.1" - id: "Pod::AFNetworking/Serialization:3.2.1" - - id: "Pod::AFNetworking/UIKit:3.2.1" - id: "Pod::CocoaSecurity:1.2.4" - id: "Pod::MLHudAlert:0.0.4-3f23fa41632f8935fed028b04335576633ec53a2" - id: "Pod::Ono:2.1.1" @@ -173,34 +172,6 @@ packages: url: "https://github.com/AFNetworking/AFNetworking.git" revision: "3.2.1" path: "" -- id: "Pod::AFNetworking/UIKit:3.2.1" - purl: "pkg:cocoapods/AFNetworking%2FUIKit@3.2.1" - declared_licenses: - - "MIT" - declared_licenses_processed: - spdx_expression: "MIT" - description: "A delightful iOS and OS X networking framework." - homepage_url: "https://github.com/AFNetworking/AFNetworking" - binary_artifact: - url: "" - hash: - value: "" - algorithm: "" - source_artifact: - url: "" - hash: - value: "" - algorithm: "" - vcs: - type: "Git" - url: "https://github.com/AFNetworking/AFNetworking.git" - revision: "3.2.1" - path: "" - vcs_processed: - type: "Git" - url: "https://github.com/AFNetworking/AFNetworking.git" - revision: "3.2.1" - path: "" - id: "Pod::CocoaSecurity:1.2.4" purl: "pkg:cocoapods/CocoaSecurity@1.2.4" declared_licenses: diff --git a/plugins/package-managers/cocoapods/src/funTest/assets/projects/synthetic/version-resolution-expected-output.yml b/plugins/package-managers/cocoapods/src/funTest/assets/projects/synthetic/version-resolution-expected-output.yml new file mode 100644 index 000000000000..e0bd17ec787f --- /dev/null +++ b/plugins/package-managers/cocoapods/src/funTest/assets/projects/synthetic/version-resolution-expected-output.yml @@ -0,0 +1,2011 @@ +--- +project: + id: "CocoaPods::src/funTest/assets/projects/synthetic/version-resolution/Podfile:" + definition_file_path: "plugins/package-managers/cocoapods/src/funTest/assets/projects/synthetic/version-resolution/Podfile" + declared_licenses: [] + declared_licenses_processed: {} + vcs: + type: "" + url: "" + revision: "" + path: "" + vcs_processed: + type: "Git" + url: "" + revision: "" + path: "" + homepage_url: "" + scopes: + - name: "dependencies" + dependencies: + - id: "Pod::AnalyticsEvents:0.1.0-53ad46ba1ea1ee8f21139dda3c351890846a202f" + - id: "Pod::DSBottomSheet:0.3.0" + - id: "Pod::DSWaveformImage:6.1.1" + - id: "Pod::DTCoreText:1.6.26" + dependencies: + - id: "Pod::DTCoreText/Core:1.6.26" + dependencies: + - id: "Pod::DTFoundation/Core:1.7.18" + - id: "Pod::DTFoundation/DTAnimatedGIF:1.7.18" + - id: "Pod::DTFoundation/DTHTMLParser:1.7.18" + dependencies: + - id: "Pod::DTFoundation/Core:1.7.18" + - id: "Pod::DTFoundation/UIKit:1.7.18" + dependencies: + - id: "Pod::DTFoundation/Core:1.7.18" + - id: "Pod::DTFoundation/Core:1.7.18" + - id: "Pod::DTFoundation/DTAnimatedGIF:1.7.18" + - id: "Pod::DTFoundation/DTHTMLParser:1.7.18" + dependencies: + - id: "Pod::DTFoundation/Core:1.7.18" + - id: "Pod::DTFoundation/UIKit:1.7.18" + dependencies: + - id: "Pod::DTFoundation/Core:1.7.18" + - id: "Pod::Down:0.11.0" + - id: "Pod::FLEX:4.5.0" + - id: "Pod::FlowCommoniOS:1.12.2" + - id: "Pod::GBDeviceInfo:6.6.0" + dependencies: + - id: "Pod::GBDeviceInfo/Core:6.6.0" + - id: "Pod::Introspect:0.1.4" + - id: "Pod::KTCenterFlowLayout:1.3.1" + - id: "Pod::KeychainAccess:4.2.2" + - id: "Pod::MatrixSDK:0.23.18" + dependencies: + - id: "Pod::MatrixSDK/Core:0.23.18" + dependencies: + - id: "Pod::AFNetworking:4.0.1" + dependencies: + - id: "Pod::AFNetworking/NSURLSession:4.0.1" + dependencies: + - id: "Pod::AFNetworking/Reachability:4.0.1" + - id: "Pod::AFNetworking/Security:4.0.1" + - id: "Pod::AFNetworking/Serialization:4.0.1" + - id: "Pod::AFNetworking/Reachability:4.0.1" + - id: "Pod::AFNetworking/Security:4.0.1" + - id: "Pod::AFNetworking/Serialization:4.0.1" + - id: "Pod::AFNetworking/UIKit:4.0.1" + dependencies: + - id: "Pod::AFNetworking/NSURLSession:4.0.1" + dependencies: + - id: "Pod::AFNetworking/Reachability:4.0.1" + - id: "Pod::AFNetworking/Security:4.0.1" + - id: "Pod::AFNetworking/Serialization:4.0.1" + - id: "Pod::GZIP:1.3.0" + - id: "Pod::MatrixSDK/CryptoSDK:0.23.18" + dependencies: + - id: "Pod::MatrixSDKCrypto:0.1.0" + - id: "Pod::OLMKit:3.2.12" + dependencies: + - id: "Pod::OLMKit/olmc:3.2.12" + - id: "Pod::OLMKit/olmcpp:3.2.12" + - id: "Pod::Realm:10.27.0" + dependencies: + - id: "Pod::Realm/Headers:10.27.0" + - id: "Pod::SwiftyBeaver:1.9.5" + - id: "Pod::libbase58:0.1.4" + - id: "Pod::MatrixSDK/JingleCallStack:0.23.18" + dependencies: + - id: "Pod::JitsiMeetSDK:5.0.2" + - id: "Pod::MatrixSDK/Core:0.23.18" + dependencies: + - id: "Pod::AFNetworking:4.0.1" + dependencies: + - id: "Pod::AFNetworking/NSURLSession:4.0.1" + dependencies: + - id: "Pod::AFNetworking/Reachability:4.0.1" + - id: "Pod::AFNetworking/Security:4.0.1" + - id: "Pod::AFNetworking/Serialization:4.0.1" + - id: "Pod::AFNetworking/Reachability:4.0.1" + - id: "Pod::AFNetworking/Security:4.0.1" + - id: "Pod::AFNetworking/Serialization:4.0.1" + - id: "Pod::AFNetworking/UIKit:4.0.1" + dependencies: + - id: "Pod::AFNetworking/NSURLSession:4.0.1" + dependencies: + - id: "Pod::AFNetworking/Reachability:4.0.1" + - id: "Pod::AFNetworking/Security:4.0.1" + - id: "Pod::AFNetworking/Serialization:4.0.1" + - id: "Pod::GZIP:1.3.0" + - id: "Pod::MatrixSDK/CryptoSDK:0.23.18" + dependencies: + - id: "Pod::MatrixSDKCrypto:0.1.0" + - id: "Pod::OLMKit:3.2.12" + dependencies: + - id: "Pod::OLMKit/olmc:3.2.12" + - id: "Pod::OLMKit/olmcpp:3.2.12" + - id: "Pod::Realm:10.27.0" + dependencies: + - id: "Pod::Realm/Headers:10.27.0" + - id: "Pod::SwiftyBeaver:1.9.5" + - id: "Pod::libbase58:0.1.4" + - id: "Pod::OLMKit:3.2.12" + dependencies: + - id: "Pod::OLMKit/olmc:3.2.12" + - id: "Pod::OLMKit/olmcpp:3.2.12" + - id: "Pod::PostHog:1.4.4" + - id: "Pod::ReadMoreTextView:3.0.1" + - id: "Pod::Reusable:4.1.2" + dependencies: + - id: "Pod::Reusable/Storyboard:4.1.2" + - id: "Pod::Reusable/View:4.1.2" + - id: "Pod::Sentry:7.15.0" + dependencies: + - id: "Pod::Sentry/Core:7.15.0" + - id: "Pod::SideMenu:6.5.0" + - id: "Pod::SwiftBase32:0.9.0" + - id: "Pod::SwiftGen:6.6.2" + - id: "Pod::SwiftJWT:3.6.200" + dependencies: + - id: "Pod::BlueCryptor:1.0.32" + - id: "Pod::BlueECC:1.2.5" + - id: "Pod::BlueRSA:1.0.200" + - id: "Pod::KituraContracts:1.2.1" + dependencies: + - id: "Pod::LoggerAPI:1.9.200" + dependencies: + - id: "Pod::Logging:1.4.0" + - id: "Pod::LoggerAPI:1.9.200" + dependencies: + - id: "Pod::Logging:1.4.0" + - id: "Pod::SwiftLint:0.44.0" + - id: "Pod::UICollectionViewLeftAlignedLayout:1.0.2" + - id: "Pod::UICollectionViewRightAlignedLayout:0.0.3" + - id: "Pod::WeakDictionary:2.0.2" + - id: "Pod::ZXingObjC:3.6.5" + dependencies: + - id: "Pod::ZXingObjC/All:3.6.5" + - id: "Pod::ffmpeg-kit-ios-audio:4.5.1" + - id: "Pod::libPhoneNumber-iOS:0.9.15" + - id: "Pod::zxcvbn-ios:1.0.4" +packages: +- id: "Pod::AFNetworking:4.0.1" + purl: "pkg:cocoapods/AFNetworking@4.0.1" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "A delightful networking framework for Apple platforms." + homepage_url: "https://github.com/AFNetworking/AFNetworking" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/AFNetworking/AFNetworking.git" + revision: "4.0.1" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/AFNetworking/AFNetworking.git" + revision: "4.0.1" + path: "" +- id: "Pod::AFNetworking/NSURLSession:4.0.1" + purl: "pkg:cocoapods/AFNetworking%2FNSURLSession@4.0.1" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "A delightful networking framework for Apple platforms." + homepage_url: "https://github.com/AFNetworking/AFNetworking" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/AFNetworking/AFNetworking.git" + revision: "4.0.1" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/AFNetworking/AFNetworking.git" + revision: "4.0.1" + path: "" +- id: "Pod::AFNetworking/Reachability:4.0.1" + purl: "pkg:cocoapods/AFNetworking%2FReachability@4.0.1" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "A delightful networking framework for Apple platforms." + homepage_url: "https://github.com/AFNetworking/AFNetworking" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/AFNetworking/AFNetworking.git" + revision: "4.0.1" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/AFNetworking/AFNetworking.git" + revision: "4.0.1" + path: "" +- id: "Pod::AFNetworking/Security:4.0.1" + purl: "pkg:cocoapods/AFNetworking%2FSecurity@4.0.1" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "A delightful networking framework for Apple platforms." + homepage_url: "https://github.com/AFNetworking/AFNetworking" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/AFNetworking/AFNetworking.git" + revision: "4.0.1" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/AFNetworking/AFNetworking.git" + revision: "4.0.1" + path: "" +- id: "Pod::AFNetworking/Serialization:4.0.1" + purl: "pkg:cocoapods/AFNetworking%2FSerialization@4.0.1" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "A delightful networking framework for Apple platforms." + homepage_url: "https://github.com/AFNetworking/AFNetworking" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/AFNetworking/AFNetworking.git" + revision: "4.0.1" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/AFNetworking/AFNetworking.git" + revision: "4.0.1" + path: "" +- id: "Pod::AFNetworking/UIKit:4.0.1" + purl: "pkg:cocoapods/AFNetworking%2FUIKit@4.0.1" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "A delightful networking framework for Apple platforms." + homepage_url: "https://github.com/AFNetworking/AFNetworking" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/AFNetworking/AFNetworking.git" + revision: "4.0.1" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/AFNetworking/AFNetworking.git" + revision: "4.0.1" + path: "" +- id: "Pod::AnalyticsEvents:0.1.0-53ad46ba1ea1ee8f21139dda3c351890846a202f" + purl: "pkg:cocoapods/AnalyticsEvents@0.1.0-53ad46ba1ea1ee8f21139dda3c351890846a202f" + declared_licenses: [] + declared_licenses_processed: {} + description: "" + homepage_url: "https://github.com/matrix-org/matrix-analytics-events.git" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/matrix-org/matrix-analytics-events.git" + revision: "53ad46ba1ea1ee8f21139dda3c351890846a202f" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/matrix-org/matrix-analytics-events.git" + revision: "53ad46ba1ea1ee8f21139dda3c351890846a202f" + path: "" +- id: "Pod::BlueCryptor:1.0.32" + purl: "pkg:cocoapods/BlueCryptor@1.0.32" + declared_licenses: + - "Apache License, Version 2.0" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache License, Version 2.0: "Apache-2.0" + description: "Swift cross-platform crypto library using CommonCrypto/libcrypto via\ + \ Package Manager." + homepage_url: "https://github.com/IBM-Swift/BlueCryptor" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/IBM-Swift/BlueCryptor.git" + revision: "1.0.32" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/IBM-Swift/BlueCryptor.git" + revision: "1.0.32" + path: "" +- id: "Pod::BlueECC:1.2.5" + purl: "pkg:cocoapods/BlueECC@1.2.5" + declared_licenses: + - "Apache License, Version 2.0" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache License, Version 2.0: "Apache-2.0" + description: "Swift cross-platform ECC crypto library using CommonCrypto/libcrypto\ + \ via Package Manager." + homepage_url: "https://github.com/IBM-Swift/BlueECC" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/IBM-Swift/BlueECC.git" + revision: "1.2.5" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/IBM-Swift/BlueECC.git" + revision: "1.2.5" + path: "" +- id: "Pod::BlueRSA:1.0.200" + purl: "pkg:cocoapods/BlueRSA@1.0.200" + declared_licenses: + - "Apache License, Version 2.0" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache License, Version 2.0: "Apache-2.0" + description: "Swift cross-platform RSA crypto library using CommonCrypto/libcrypto\ + \ via Package Manager." + homepage_url: "https://github.com/Kitura/BlueRSA" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/Kitura/BlueRSA.git" + revision: "1.0.200" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/Kitura/BlueRSA.git" + revision: "1.0.200" + path: "" +- id: "Pod::DSBottomSheet:0.3.0" + purl: "pkg:cocoapods/DSBottomSheet@0.3.0" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "DSBottomSheet makes it easy to add custom bottom sheets to your SwiftUI\ + \ apps." + homepage_url: "https://github.com/danielsaidi" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/danielsaidi/BottomSheet.git" + revision: "0.3.0" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/danielsaidi/BottomSheet.git" + revision: "0.3.0" + path: "" +- id: "Pod::DSWaveformImage:6.1.1" + purl: "pkg:cocoapods/DSWaveformImage@6.1.1" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "generate waveform images from audio files in iOS" + homepage_url: "https://github.com/dmrschmidt/DSWaveformImage" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/dmrschmidt/DSWaveformImage.git" + revision: "6.1.1" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/dmrschmidt/DSWaveformImage.git" + revision: "6.1.1" + path: "" +- id: "Pod::DTCoreText:1.6.26" + purl: "pkg:cocoapods/DTCoreText@1.6.26" + declared_licenses: + - "BSD" + declared_licenses_processed: + spdx_expression: "BSD-3-Clause" + mapped: + BSD: "BSD-3-Clause" + description: "Methods to allow using HTML code with CoreText." + homepage_url: "https://github.com/Cocoanetics/DTCoreText" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/Cocoanetics/DTCoreText.git" + revision: "1.6.26" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/Cocoanetics/DTCoreText.git" + revision: "1.6.26" + path: "" +- id: "Pod::DTCoreText/Core:1.6.26" + purl: "pkg:cocoapods/DTCoreText%2FCore@1.6.26" + declared_licenses: + - "BSD" + declared_licenses_processed: + spdx_expression: "BSD-3-Clause" + mapped: + BSD: "BSD-3-Clause" + description: "Methods to allow using HTML code with CoreText." + homepage_url: "https://github.com/Cocoanetics/DTCoreText" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/Cocoanetics/DTCoreText.git" + revision: "1.6.26" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/Cocoanetics/DTCoreText.git" + revision: "1.6.26" + path: "" +- id: "Pod::DTFoundation/Core:1.7.18" + purl: "pkg:cocoapods/DTFoundation%2FCore@1.7.18" + declared_licenses: + - "BSD" + declared_licenses_processed: + spdx_expression: "BSD-3-Clause" + mapped: + BSD: "BSD-3-Clause" + description: "Standard toolset classes and categories." + homepage_url: "https://github.com/Cocoanetics/DTFoundation" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/Cocoanetics/DTFoundation.git" + revision: "1.7.18" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/Cocoanetics/DTFoundation.git" + revision: "1.7.18" + path: "" +- id: "Pod::DTFoundation/DTAnimatedGIF:1.7.18" + purl: "pkg:cocoapods/DTFoundation%2FDTAnimatedGIF@1.7.18" + declared_licenses: + - "BSD" + declared_licenses_processed: + spdx_expression: "BSD-3-Clause" + mapped: + BSD: "BSD-3-Clause" + description: "Standard toolset classes and categories." + homepage_url: "https://github.com/Cocoanetics/DTFoundation" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/Cocoanetics/DTFoundation.git" + revision: "1.7.18" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/Cocoanetics/DTFoundation.git" + revision: "1.7.18" + path: "" +- id: "Pod::DTFoundation/DTHTMLParser:1.7.18" + purl: "pkg:cocoapods/DTFoundation%2FDTHTMLParser@1.7.18" + declared_licenses: + - "BSD" + declared_licenses_processed: + spdx_expression: "BSD-3-Clause" + mapped: + BSD: "BSD-3-Clause" + description: "Standard toolset classes and categories." + homepage_url: "https://github.com/Cocoanetics/DTFoundation" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/Cocoanetics/DTFoundation.git" + revision: "1.7.18" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/Cocoanetics/DTFoundation.git" + revision: "1.7.18" + path: "" +- id: "Pod::DTFoundation/UIKit:1.7.18" + purl: "pkg:cocoapods/DTFoundation%2FUIKit@1.7.18" + declared_licenses: + - "BSD" + declared_licenses_processed: + spdx_expression: "BSD-3-Clause" + mapped: + BSD: "BSD-3-Clause" + description: "Standard toolset classes and categories." + homepage_url: "https://github.com/Cocoanetics/DTFoundation" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/Cocoanetics/DTFoundation.git" + revision: "1.7.18" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/Cocoanetics/DTFoundation.git" + revision: "1.7.18" + path: "" +- id: "Pod::Down:0.11.0" + purl: "pkg:cocoapods/Down@0.11.0" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "Blazing fast Markdown rendering in Swift, built upon cmark." + homepage_url: "https://github.com/johnxnguyen/Down" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/johnxnguyen/Down.git" + revision: "v0.11.0" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/johnxnguyen/Down.git" + revision: "v0.11.0" + path: "" +- id: "Pod::FLEX:4.5.0" + purl: "pkg:cocoapods/FLEX@4.5.0" + declared_licenses: + - "BSD" + declared_licenses_processed: + spdx_expression: "BSD-3-Clause" + mapped: + BSD: "BSD-3-Clause" + description: "A set of in-app debugging and exploration tools for iOS" + homepage_url: "https://github.com/Flipboard/FLEX" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/Flipboard/FLEX.git" + revision: "4.5.0" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/Flipboard/FLEX.git" + revision: "4.5.0" + path: "" +- id: "Pod::FlowCommoniOS:1.12.2" + purl: "pkg:cocoapods/FlowCommoniOS@1.12.2" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "Common files required for running any iOS project that uses Flow timelines." + homepage_url: "https://github.com/createwithflow/FlowCommoniOS.git" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/createwithflow/FlowCommoniOS.git" + revision: "1.12.2" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/createwithflow/FlowCommoniOS.git" + revision: "1.12.2" + path: "" +- id: "Pod::GBDeviceInfo:6.6.0" + purl: "pkg:cocoapods/GBDeviceInfo@6.6.0" + declared_licenses: + - "Apache License, Version 2.0" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache License, Version 2.0: "Apache-2.0" + description: "Detects the hardware, software and display of the current iOS or Mac\ + \ OS X device at runtime." + homepage_url: "https://github.com/lmirosevic/GBDeviceInfo" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/lmirosevic/GBDeviceInfo.git" + revision: "6.6.0" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/lmirosevic/GBDeviceInfo.git" + revision: "6.6.0" + path: "" +- id: "Pod::GBDeviceInfo/Core:6.6.0" + purl: "pkg:cocoapods/GBDeviceInfo%2FCore@6.6.0" + declared_licenses: + - "Apache License, Version 2.0" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache License, Version 2.0: "Apache-2.0" + description: "Detects the hardware, software and display of the current iOS or Mac\ + \ OS X device at runtime." + homepage_url: "https://github.com/lmirosevic/GBDeviceInfo" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/lmirosevic/GBDeviceInfo.git" + revision: "6.6.0" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/lmirosevic/GBDeviceInfo.git" + revision: "6.6.0" + path: "" +- id: "Pod::GZIP:1.3.0" + purl: "pkg:cocoapods/GZIP@1.3.0" + declared_licenses: + - "zlib" + declared_licenses_processed: + spdx_expression: "Zlib" + mapped: + zlib: "Zlib" + description: "GZIP is category on NSData that provides simple gzip compression and\ + \ decompression functionality." + homepage_url: "https://github.com/nicklockwood/GZIP" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/nicklockwood/GZIP.git" + revision: "1.3.0" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/nicklockwood/GZIP.git" + revision: "1.3.0" + path: "" +- id: "Pod::Introspect:0.1.4" + purl: "pkg:cocoapods/Introspect@0.1.4" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "Introspect the underlying UIKit element of a SwiftUI view." + homepage_url: "https://github.com/siteline/SwiftUI-Introspect.git" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/siteline/SwiftUI-Introspect.git" + revision: "0.1.4" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/siteline/SwiftUI-Introspect.git" + revision: "0.1.4" + path: "" +- id: "Pod::JitsiMeetSDK:5.0.2" + purl: "pkg:cocoapods/JitsiMeetSDK@5.0.2" + declared_licenses: + - "Apache 2" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache 2: "Apache-2.0" + description: "Jitsi Meet iOS SDK" + homepage_url: "https://github.com/jitsi/jitsi-meet-ios-sdk-releases" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/jitsi/jitsi-meet-ios-sdk-releases.git" + revision: "5.0.2" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/jitsi/jitsi-meet-ios-sdk-releases.git" + revision: "5.0.2" + path: "" +- id: "Pod::KTCenterFlowLayout:1.3.1" + purl: "pkg:cocoapods/KTCenterFlowLayout@1.3.1" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "Aligns cells to the center of a collection view." + homepage_url: "https://github.com/keighl/KTCenterFlowLayout" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/keighl/KTCenterFlowLayout.git" + revision: "1.3.1" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/keighl/KTCenterFlowLayout.git" + revision: "1.3.1" + path: "" +- id: "Pod::KeychainAccess:4.2.2" + purl: "pkg:cocoapods/KeychainAccess@4.2.2" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "KeychainAccess is a simple Swift wrapper for Keychain that works on\ + \ iOS and OS X." + homepage_url: "https://github.com/kishikawakatsumi/KeychainAccess" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/kishikawakatsumi/KeychainAccess.git" + revision: "v4.2.2" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/kishikawakatsumi/KeychainAccess.git" + revision: "v4.2.2" + path: "" +- id: "Pod::KituraContracts:1.2.1" + purl: "pkg:cocoapods/KituraContracts@1.2.1" + declared_licenses: + - "Apache License, Version 2.0" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache License, Version 2.0: "Apache-2.0" + description: "KituraContracts is a library containing type definitions shared by\ + \ client and server code." + homepage_url: "https://github.com/IBM-Swift/KituraContracts" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/IBM-Swift/KituraContracts.git" + revision: "1.2.1" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/IBM-Swift/KituraContracts.git" + revision: "1.2.1" + path: "" +- id: "Pod::LoggerAPI:1.9.200" + purl: "pkg:cocoapods/LoggerAPI@1.9.200" + declared_licenses: + - "Apache License, Version 2.0" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache License, Version 2.0: "Apache-2.0" + description: "A logger protocol that provides a common logging interface for different\ + \ kinds of loggers." + homepage_url: "https://github.com/Kitura/LoggerAPI" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/Kitura/LoggerAPI.git" + revision: "1.9.200" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/Kitura/LoggerAPI.git" + revision: "1.9.200" + path: "" +- id: "Pod::Logging:1.4.0" + purl: "pkg:cocoapods/Logging@1.4.0" + declared_licenses: + - "Apache 2.0" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache 2.0: "Apache-2.0" + description: "A Logging API for Swift." + homepage_url: "https://github.com/apple/swift-log" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/apple/swift-log.git" + revision: "1.4.0" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/apple/swift-log.git" + revision: "1.4.0" + path: "" +- id: "Pod::MatrixSDK:0.23.18" + purl: "pkg:cocoapods/MatrixSDK@0.23.18" + declared_licenses: + - "Apache License, Version 2.0" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache License, Version 2.0: "Apache-2.0" + description: "The iOS SDK to build apps compatible with Matrix (https://www.matrix.org)" + homepage_url: "https://www.matrix.org" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/matrix-org/matrix-ios-sdk.git" + revision: "v0.23.18" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/matrix-org/matrix-ios-sdk.git" + revision: "v0.23.18" + path: "" +- id: "Pod::MatrixSDK/Core:0.23.18" + purl: "pkg:cocoapods/MatrixSDK%2FCore@0.23.18" + declared_licenses: + - "Apache License, Version 2.0" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache License, Version 2.0: "Apache-2.0" + description: "The iOS SDK to build apps compatible with Matrix (https://www.matrix.org)" + homepage_url: "https://www.matrix.org" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/matrix-org/matrix-ios-sdk.git" + revision: "v0.23.18" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/matrix-org/matrix-ios-sdk.git" + revision: "v0.23.18" + path: "" +- id: "Pod::MatrixSDK/CryptoSDK:0.23.18" + purl: "pkg:cocoapods/MatrixSDK%2FCryptoSDK@0.23.18" + declared_licenses: + - "Apache License, Version 2.0" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache License, Version 2.0: "Apache-2.0" + description: "The iOS SDK to build apps compatible with Matrix (https://www.matrix.org)" + homepage_url: "https://www.matrix.org" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/matrix-org/matrix-ios-sdk.git" + revision: "v0.23.18" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/matrix-org/matrix-ios-sdk.git" + revision: "v0.23.18" + path: "" +- id: "Pod::MatrixSDK/JingleCallStack:0.23.18" + purl: "pkg:cocoapods/MatrixSDK%2FJingleCallStack@0.23.18" + declared_licenses: + - "Apache License, Version 2.0" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache License, Version 2.0: "Apache-2.0" + description: "The iOS SDK to build apps compatible with Matrix (https://www.matrix.org)" + homepage_url: "https://www.matrix.org" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/matrix-org/matrix-ios-sdk.git" + revision: "v0.23.18" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/matrix-org/matrix-ios-sdk.git" + revision: "v0.23.18" + path: "" +- id: "Pod::MatrixSDKCrypto:0.1.0" + purl: "pkg:cocoapods/MatrixSDKCrypto@0.1.0" + declared_licenses: + - "Apache License, Version 2.0" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache License, Version 2.0: "Apache-2.0" + description: "Uniffi based bindings for the Rust SDK crypto crate." + homepage_url: "https://github.com/matrix-org/matrix-rust-sdk" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "https://github.com/matrix-org/matrix-rust-sdk/releases/download/matrix-sdk-crypto-ffi-0.1.0/MatrixSDKCryptoFFI.zip" + hash: + value: "" + algorithm: "" + vcs: + type: "" + url: "" + revision: "" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/matrix-org/matrix-rust-sdk.git" + revision: "" + path: "" +- id: "Pod::OLMKit:3.2.12" + purl: "pkg:cocoapods/OLMKit@3.2.12" + declared_licenses: + - "Apache License, Version 2.0" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache License, Version 2.0: "Apache-2.0" + description: "An Objective-C wrapper of olm (http://matrix.org/git/olm)" + homepage_url: "https://gitlab.matrix.org/matrix-org/olm" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://gitlab.matrix.org/matrix-org/olm.git" + revision: "3.2.12" + path: "" + vcs_processed: + type: "Git" + url: "https://gitlab.matrix.org/matrix-org/olm.git" + revision: "3.2.12" + path: "" +- id: "Pod::OLMKit/olmc:3.2.12" + purl: "pkg:cocoapods/OLMKit%2Folmc@3.2.12" + declared_licenses: + - "Apache License, Version 2.0" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache License, Version 2.0: "Apache-2.0" + description: "An Objective-C wrapper of olm (http://matrix.org/git/olm)" + homepage_url: "https://gitlab.matrix.org/matrix-org/olm" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://gitlab.matrix.org/matrix-org/olm.git" + revision: "3.2.12" + path: "" + vcs_processed: + type: "Git" + url: "https://gitlab.matrix.org/matrix-org/olm.git" + revision: "3.2.12" + path: "" +- id: "Pod::OLMKit/olmcpp:3.2.12" + purl: "pkg:cocoapods/OLMKit%2Folmcpp@3.2.12" + declared_licenses: + - "Apache License, Version 2.0" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache License, Version 2.0: "Apache-2.0" + description: "An Objective-C wrapper of olm (http://matrix.org/git/olm)" + homepage_url: "https://gitlab.matrix.org/matrix-org/olm" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://gitlab.matrix.org/matrix-org/olm.git" + revision: "3.2.12" + path: "" + vcs_processed: + type: "Git" + url: "https://gitlab.matrix.org/matrix-org/olm.git" + revision: "3.2.12" + path: "" +- id: "Pod::PostHog:1.4.4" + purl: "pkg:cocoapods/PostHog@1.4.4" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "The hassle-free way to add posthog to your iOS app." + homepage_url: "http://posthog.com/" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/PostHog/posthog-ios.git" + revision: "1.4.4" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/PostHog/posthog-ios.git" + revision: "1.4.4" + path: "" +- id: "Pod::ReadMoreTextView:3.0.1" + purl: "pkg:cocoapods/ReadMoreTextView@3.0.1" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "UITextView subclass with \"read more\"/\"read less\" capabilities\ + \ and UITextView extensions to handle touches in characters range." + homepage_url: "http://ilya.puchka.me/custom-uitextview-in-swift/" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/ilyapuchka/ReadMoreTextView.git" + revision: "3.0.1" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/ilyapuchka/ReadMoreTextView.git" + revision: "3.0.1" + path: "" +- id: "Pod::Realm:10.27.0" + purl: "pkg:cocoapods/Realm@10.27.0" + declared_licenses: + - "Apache 2.0" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache 2.0: "Apache-2.0" + description: "Realm is a modern data framework & database for iOS, macOS, tvOS &\ + \ watchOS." + homepage_url: "https://realm.io" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/realm/realm-swift.git" + revision: "v10.27.0" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/realm/realm-swift.git" + revision: "v10.27.0" + path: "" +- id: "Pod::Realm/Headers:10.27.0" + purl: "pkg:cocoapods/Realm%2FHeaders@10.27.0" + declared_licenses: + - "Apache 2.0" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache 2.0: "Apache-2.0" + description: "Realm is a modern data framework & database for iOS, macOS, tvOS &\ + \ watchOS." + homepage_url: "https://realm.io" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/realm/realm-swift.git" + revision: "v10.27.0" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/realm/realm-swift.git" + revision: "v10.27.0" + path: "" +- id: "Pod::Reusable:4.1.2" + purl: "pkg:cocoapods/Reusable@4.1.2" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "A Swift Mixin to deal with reusable UITableView & UICollectionView\ + \ cells and XIB-based views" + homepage_url: "https://github.com/AliSoftware/Reusable" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/AliSoftware/Reusable.git" + revision: "4.1.2" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/AliSoftware/Reusable.git" + revision: "4.1.2" + path: "" +- id: "Pod::Reusable/Storyboard:4.1.2" + purl: "pkg:cocoapods/Reusable%2FStoryboard@4.1.2" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "A Swift Mixin to deal with reusable UITableView & UICollectionView\ + \ cells and XIB-based views" + homepage_url: "https://github.com/AliSoftware/Reusable" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/AliSoftware/Reusable.git" + revision: "4.1.2" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/AliSoftware/Reusable.git" + revision: "4.1.2" + path: "" +- id: "Pod::Reusable/View:4.1.2" + purl: "pkg:cocoapods/Reusable%2FView@4.1.2" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "A Swift Mixin to deal with reusable UITableView & UICollectionView\ + \ cells and XIB-based views" + homepage_url: "https://github.com/AliSoftware/Reusable" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/AliSoftware/Reusable.git" + revision: "4.1.2" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/AliSoftware/Reusable.git" + revision: "4.1.2" + path: "" +- id: "Pod::Sentry:7.15.0" + purl: "pkg:cocoapods/Sentry@7.15.0" + declared_licenses: + - "mit" + declared_licenses_processed: + spdx_expression: "MIT" + mapped: + mit: "MIT" + description: "Sentry client for cocoa" + homepage_url: "https://github.com/getsentry/sentry-cocoa" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/getsentry/sentry-cocoa.git" + revision: "7.15.0" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/getsentry/sentry-cocoa.git" + revision: "7.15.0" + path: "" +- id: "Pod::Sentry/Core:7.15.0" + purl: "pkg:cocoapods/Sentry%2FCore@7.15.0" + declared_licenses: + - "mit" + declared_licenses_processed: + spdx_expression: "MIT" + mapped: + mit: "MIT" + description: "Sentry client for cocoa" + homepage_url: "https://github.com/getsentry/sentry-cocoa" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/getsentry/sentry-cocoa.git" + revision: "7.15.0" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/getsentry/sentry-cocoa.git" + revision: "7.15.0" + path: "" +- id: "Pod::SideMenu:6.5.0" + purl: "pkg:cocoapods/SideMenu@6.5.0" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "Simple side menu control for iOS in Swift inspired by Facebook. Right\ + \ and Left sides. No coding required." + homepage_url: "https://github.com/jonkykong/SideMenu" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/jonkykong/SideMenu.git" + revision: "6.5.0" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/jonkykong/SideMenu.git" + revision: "6.5.0" + path: "" +- id: "Pod::SwiftBase32:0.9.0" + purl: "pkg:cocoapods/SwiftBase32@0.9.0" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "Base32 implementation for Swift." + homepage_url: "https://github.com/norio-nomura/Base32" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/norio-nomura/Base32.git" + revision: "0.9.0" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/norio-nomura/Base32.git" + revision: "0.9.0" + path: "" +- id: "Pod::SwiftGen:6.6.2" + purl: "pkg:cocoapods/SwiftGen@6.6.2" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "A collection of Swift tools to generate Swift code for your assets,\ + \ storyboards, strings, …" + homepage_url: "https://github.com/SwiftGen/SwiftGen" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "https://github.com/SwiftGen/SwiftGen/releases/download/6.6.2/swiftgen-6.6.2.zip" + hash: + value: "" + algorithm: "" + vcs: + type: "" + url: "" + revision: "" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/SwiftGen/SwiftGen.git" + revision: "" + path: "" +- id: "Pod::SwiftJWT:3.6.200" + purl: "pkg:cocoapods/SwiftJWT@3.6.200" + declared_licenses: + - "Apache License, Version 2.0" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache License, Version 2.0: "Apache-2.0" + description: "An implementation of JSON Web Token using Swift." + homepage_url: "https://github.com/Kitura/Swift-JWT" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/Kitura/Swift-JWT.git" + revision: "3.6.200" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/Kitura/Swift-JWT.git" + revision: "3.6.200" + path: "" +- id: "Pod::SwiftLint:0.44.0" + purl: "pkg:cocoapods/SwiftLint@0.44.0" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "A tool to enforce Swift style and conventions." + homepage_url: "https://github.com/realm/SwiftLint" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "https://github.com/realm/SwiftLint/releases/download/0.44.0/portable_swiftlint.zip" + hash: + value: "" + algorithm: "" + vcs: + type: "" + url: "" + revision: "" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/realm/SwiftLint.git" + revision: "" + path: "" +- id: "Pod::SwiftyBeaver:1.9.5" + purl: "pkg:cocoapods/SwiftyBeaver@1.9.5" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "Convenient logging during development & release in Swift 4 & 5." + homepage_url: "https://github.com/SwiftyBeaver/SwiftyBeaver" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/SwiftyBeaver/SwiftyBeaver.git" + revision: "1.9.5" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/SwiftyBeaver/SwiftyBeaver.git" + revision: "1.9.5" + path: "" +- id: "Pod::UICollectionViewLeftAlignedLayout:1.0.2" + purl: "pkg:cocoapods/UICollectionViewLeftAlignedLayout@1.0.2" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "A layout for UICollectionView that aligns the cells to the left" + homepage_url: "https://github.com/mokagio/UICollectionViewLeftAlignedLayout" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/mokagio/UICollectionViewLeftAlignedLayout.git" + revision: "1.0.2" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/mokagio/UICollectionViewLeftAlignedLayout.git" + revision: "1.0.2" + path: "" +- id: "Pod::UICollectionViewRightAlignedLayout:0.0.3" + purl: "pkg:cocoapods/UICollectionViewRightAlignedLayout@0.0.3" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "A layout for UICollectionView that aligns the cells to the right." + homepage_url: "https://github.com/mokagio/UICollectionViewRightAlignedLayout" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/mokagio/UICollectionViewRightAlignedLayout.git" + revision: "0.0.3" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/mokagio/UICollectionViewRightAlignedLayout.git" + revision: "0.0.3" + path: "" +- id: "Pod::WeakDictionary:2.0.2" + purl: "pkg:cocoapods/WeakDictionary@2.0.2" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "A naive (strong key/weak value) dictionary & (weak key/weak value)\ + \ dictionary implementations in swift" + homepage_url: "https://github.com/nicholascross/WeakDictionary" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/nicholascross/WeakDictionary.git" + revision: "2.0.2" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/nicholascross/WeakDictionary.git" + revision: "2.0.2" + path: "" +- id: "Pod::ZXingObjC:3.6.5" + purl: "pkg:cocoapods/ZXingObjC@3.6.5" + declared_licenses: + - "Apache License 2.0" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache License 2.0: "Apache-2.0" + description: "An Objective-C Port of the ZXing barcode framework." + homepage_url: "https://github.com/zxingify/zxingify-objc" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/zxingify/zxingify-objc.git" + revision: "3.6.5" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/zxingify/zxingify-objc.git" + revision: "3.6.5" + path: "" +- id: "Pod::ZXingObjC/All:3.6.5" + purl: "pkg:cocoapods/ZXingObjC%2FAll@3.6.5" + declared_licenses: + - "Apache License 2.0" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache License 2.0: "Apache-2.0" + description: "An Objective-C Port of the ZXing barcode framework." + homepage_url: "https://github.com/zxingify/zxingify-objc" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/zxingify/zxingify-objc.git" + revision: "3.6.5" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/zxingify/zxingify-objc.git" + revision: "3.6.5" + path: "" +- id: "Pod::ffmpeg-kit-ios-audio:4.5.1" + purl: "pkg:cocoapods/ffmpeg-kit-ios-audio@4.5.1" + declared_licenses: + - "LGPL-3.0" + declared_licenses_processed: + spdx_expression: "LGPL-3.0-only" + mapped: + LGPL-3.0: "LGPL-3.0-only" + description: "FFmpeg Kit iOS Audio Shared Framework" + homepage_url: "https://github.com/tanersener/ffmpeg-kit" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "https://github.com/tanersener/ffmpeg-kit/releases/download/v4.5.1/ffmpeg-kit-audio-4.5.1-ios-xcframework.zip" + hash: + value: "" + algorithm: "" + vcs: + type: "" + url: "" + revision: "" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/tanersener/ffmpeg-kit.git" + revision: "" + path: "" +- id: "Pod::libPhoneNumber-iOS:0.9.15" + purl: "pkg:cocoapods/libPhoneNumber-iOS@0.9.15" + declared_licenses: + - "Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0)" + declared_licenses_processed: + spdx_expression: "Apache-2.0" + mapped: + Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0): "Apache-2.0" + description: "iOS library for parsing, formatting, storing and validating international\ + \ phone numbers from libphonenumber library." + homepage_url: "https://github.com/iziz/libPhoneNumber-iOS.git" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/iziz/libPhoneNumber-iOS.git" + revision: "0.9.15" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/iziz/libPhoneNumber-iOS.git" + revision: "0.9.15" + path: "" +- id: "Pod::libbase58:0.1.4" + purl: "pkg:cocoapods/libbase58@0.1.4" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "C library for Bitcoin's base58 encoding" + homepage_url: "https://github.com/luke-jr/libbase58" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/luke-jr/libbase58.git" + revision: "v0.1.4" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/luke-jr/libbase58.git" + revision: "v0.1.4" + path: "" +- id: "Pod::zxcvbn-ios:1.0.4" + purl: "pkg:cocoapods/zxcvbn-ios@1.0.4" + declared_licenses: + - "MIT" + declared_licenses_processed: + spdx_expression: "MIT" + description: "A realistic password strength estimator." + homepage_url: "https://github.com/dropbox/zxcvbn-ios" + binary_artifact: + url: "" + hash: + value: "" + algorithm: "" + source_artifact: + url: "" + hash: + value: "" + algorithm: "" + vcs: + type: "Git" + url: "https://github.com/dropbox/zxcvbn-ios.git" + revision: "v1.0.4" + path: "" + vcs_processed: + type: "Git" + url: "https://github.com/dropbox/zxcvbn-ios.git" + revision: "v1.0.4" + path: "" diff --git a/plugins/package-managers/cocoapods/src/funTest/assets/projects/synthetic/version-resolution/Podfile b/plugins/package-managers/cocoapods/src/funTest/assets/projects/synthetic/version-resolution/Podfile new file mode 100644 index 000000000000..78aaa6b7e7fc --- /dev/null +++ b/plugins/package-managers/cocoapods/src/funTest/assets/projects/synthetic/version-resolution/Podfile @@ -0,0 +1,158 @@ +source 'https://cdn.cocoapods.org/' + +# Uncomment this line to define a global platform for your project +platform :ios, '14.0' + +# By default, ignore all warnings from any pod +inhibit_all_warnings! + +# Use frameworks to allow usage of pods written in Swift +use_frameworks! + +# Different flavours of pods to MatrixSDK. Can be one of: +# - a String indicating an official MatrixSDK released version number +# - `:local` (to use Development Pods) +# - `{ :branch => 'sdk branch name'}` to depend on specific branch of MatrixSDK repo +# - `{ :specHash => {sdk spec hash}` to depend on specific pod options (:git => …, :podspec => …) for MatrixSDK repo. Used by Fastfile during CI +# +# Warning: our internal tooling depends on the name of this variable name, so be sure not to change it +$matrixSDKVersion = '= 0.23.18' +# $matrixSDKVersion = :local +# $matrixSDKVersion = { :branch => 'develop'} +# $matrixSDKVersion = { :specHash => { git: 'https://git.io/fork123', branch: 'fix' } } + +######################################## + +case $matrixSDKVersion +when :local +$matrixSDKVersionSpec = { :path => '../matrix-ios-sdk/MatrixSDK.podspec' } +when Hash +spec_mode, sdk_spec = $matrixSDKVersion.first # extract first and only key/value pair; key is spec_mode, value is sdk_spec + + case spec_mode + when :branch + # :branch => sdk branch name + sdk_spec = { :git => 'https://github.com/matrix-org/matrix-ios-sdk.git', :branch => sdk_spec.to_s } unless sdk_spec.is_a?(Hash) + when :specHash + # :specHash => {sdk spec Hash} + sdk_spec = sdk_spec + end + +$matrixSDKVersionSpec = sdk_spec +when String # specific MatrixSDK released version +$matrixSDKVersionSpec = $matrixSDKVersion +end + +# Method to import the MatrixSDK +def import_MatrixSDK + pod 'MatrixSDK', $matrixSDKVersionSpec, :inhibit_warnings => false + pod 'MatrixSDK/JingleCallStack', $matrixSDKVersionSpec, :inhibit_warnings => false +end + +######################################## + +def import_MatrixKit_pods + pod 'libPhoneNumber-iOS', '~> 0.9.13' + pod 'DTCoreText', '~> 1.6.25' + #pod 'DTCoreText/Extension', '~> 1.6.25' + pod 'Down', '~> 0.11.0' +end + +def import_SwiftUI_pods + pod 'Introspect', '~> 0.1' + pod 'DSBottomSheet', '~> 0.3' +end + +abstract_target 'RiotPods' do + + pod 'GBDeviceInfo', '~> 6.6.0' + pod 'Reusable', '~> 4.1' + pod 'KeychainAccess', '~> 4.2.2' + pod 'WeakDictionary', '~> 2.0' + + # PostHog for analytics + pod 'PostHog', '~> 1.4.4' + pod 'Sentry', '~> 7.15.0' + pod 'AnalyticsEvents', :git => 'https://github.com/matrix-org/matrix-analytics-events.git', :branch => 'release/swift', :inhibit_warnings => false + # pod 'AnalyticsEvents', :path => '../matrix-analytics-events/AnalyticsEvents.podspec' + + pod 'OLMKit' + pod 'zxcvbn-ios' + + # Tools + pod 'SwiftGen', '~> 6.3' + pod 'SwiftLint', '~> 0.44.0' + + target "Riot" do + import_MatrixSDK + import_MatrixKit_pods + + import_SwiftUI_pods + + pod 'UICollectionViewRightAlignedLayout', '~> 0.0.3' + pod 'UICollectionViewLeftAlignedLayout', '~> 1.0.2' + pod 'KTCenterFlowLayout', '~> 1.3.1' + pod 'ZXingObjC', '~> 3.6.5' + pod 'FlowCommoniOS', '~> 1.12.0' + pod 'ReadMoreTextView', '~> 3.0.1' + pod 'SwiftBase32', '~> 0.9.0' + pod 'SwiftJWT', '~> 3.6.200' + pod 'SideMenu', '~> 6.5' + pod 'DSWaveformImage', '~> 6.1.1' + pod 'ffmpeg-kit-ios-audio', '4.5.1' + + pod 'FLEX', '~> 4.5.0', :configurations => ['Debug'], :inhibit_warnings => true + + target 'RiotTests' do + inherit! :search_paths + end + end + + target "RiotShareExtension" do + import_MatrixSDK + import_MatrixKit_pods + end + + target "RiotSwiftUI" do + import_SwiftUI_pods + end + + target "RiotSwiftUITests" do + import_SwiftUI_pods + end + + target "SiriIntents" do + import_MatrixSDK + import_MatrixKit_pods + end + + target "RiotNSE" do + import_MatrixSDK + import_MatrixKit_pods + end + +end + +post_install do |installer| + installer.pods_project.targets.each do |target| + + target.build_configurations.each do |config| + # Disable bitcode for each pod framework + # Because the WebRTC pod (included by the JingleCallStack pod) does not support it. + # Plus the app does not enable it + config.build_settings['ENABLE_BITCODE'] = 'NO' + + # Force ReadMoreTextView to use Swift 5.2 version (as there is no code changes to perform) + if target.name.include? 'ReadMoreTextView' + config.build_settings['SWIFT_VERSION'] = '5.2' + end + + # Stop Xcode 12 complaining about old IPHONEOS_DEPLOYMENT_TARGET from pods + config.build_settings.delete 'IPHONEOS_DEPLOYMENT_TARGET' + + # Disable nullability checks + config.build_settings['WARNING_CFLAGS'] ||= ['$(inherited)','-Wno-nullability-completeness'] + config.build_settings['OTHER_SWIFT_FLAGS'] ||= ['$(inherited)', '-Xcc', '-Wno-nullability-completeness'] + end + end +end diff --git a/plugins/package-managers/cocoapods/src/funTest/assets/projects/synthetic/version-resolution/Podfile.lock b/plugins/package-managers/cocoapods/src/funTest/assets/projects/synthetic/version-resolution/Podfile.lock new file mode 100644 index 000000000000..7f62c51f7002 --- /dev/null +++ b/plugins/package-managers/cocoapods/src/funTest/assets/projects/synthetic/version-resolution/Podfile.lock @@ -0,0 +1,246 @@ +PODS: + - AFNetworking (4.0.1): + - AFNetworking/NSURLSession (= 4.0.1) + - AFNetworking/Reachability (= 4.0.1) + - AFNetworking/Security (= 4.0.1) + - AFNetworking/Serialization (= 4.0.1) + - AFNetworking/UIKit (= 4.0.1) + - AFNetworking/NSURLSession (4.0.1): + - AFNetworking/Reachability + - AFNetworking/Security + - AFNetworking/Serialization + - AFNetworking/Reachability (4.0.1) + - AFNetworking/Security (4.0.1) + - AFNetworking/Serialization (4.0.1) + - AFNetworking/UIKit (4.0.1): + - AFNetworking/NSURLSession + - AnalyticsEvents (0.1.0) + - BlueCryptor (1.0.32) + - BlueECC (1.2.5) + - BlueRSA (1.0.200) + - Down (0.11.0) + - DSBottomSheet (0.3.0) + - DSWaveformImage (6.1.1) + - DTCoreText (1.6.26): + - DTCoreText/Core (= 1.6.26) + - DTFoundation/Core (~> 1.7.5) + - DTFoundation/DTAnimatedGIF (~> 1.7.5) + - DTFoundation/DTHTMLParser (~> 1.7.5) + - DTFoundation/UIKit (~> 1.7.5) + - DTCoreText/Core (1.6.26): + - DTFoundation/Core (~> 1.7.5) + - DTFoundation/DTAnimatedGIF (~> 1.7.5) + - DTFoundation/DTHTMLParser (~> 1.7.5) + - DTFoundation/UIKit (~> 1.7.5) + - DTFoundation/Core (1.7.18) + - DTFoundation/DTAnimatedGIF (1.7.18) + - DTFoundation/DTHTMLParser (1.7.18): + - DTFoundation/Core + - DTFoundation/UIKit (1.7.18): + - DTFoundation/Core + - ffmpeg-kit-ios-audio (4.5.1) + - FLEX (4.5.0) + - FlowCommoniOS (1.12.2) + - GBDeviceInfo (6.6.0): + - GBDeviceInfo/Core (= 6.6.0) + - GBDeviceInfo/Core (6.6.0) + - GZIP (1.3.0) + - Introspect (0.1.4) + - JitsiMeetSDK (5.0.2) + - KeychainAccess (4.2.2) + - KituraContracts (1.2.1): + - LoggerAPI (~> 1.7) + - KTCenterFlowLayout (1.3.1) + - libbase58 (0.1.4) + - libPhoneNumber-iOS (0.9.15) + - LoggerAPI (1.9.200): + - Logging (~> 1.1) + - Logging (1.4.0) + - MatrixSDK (0.23.18): + - MatrixSDK/Core (= 0.23.18) + - MatrixSDK/Core (0.23.18): + - AFNetworking (~> 4.0.0) + - GZIP (~> 1.3.0) + - libbase58 (~> 0.1.4) + - MatrixSDK/CryptoSDK + - OLMKit (~> 3.2.5) + - Realm (= 10.27.0) + - SwiftyBeaver (= 1.9.5) + - MatrixSDK/CryptoSDK (0.23.18): + - MatrixSDKCrypto (= 0.1.0) + - MatrixSDK/JingleCallStack (0.23.18): + - JitsiMeetSDK (= 5.0.2) + - MatrixSDK/Core + - MatrixSDKCrypto (0.1.0) + - OLMKit (3.2.12): + - OLMKit/olmc (= 3.2.12) + - OLMKit/olmcpp (= 3.2.12) + - OLMKit/olmc (3.2.12) + - OLMKit/olmcpp (3.2.12) + - PostHog (1.4.4) + - ReadMoreTextView (3.0.1) + - Realm (10.27.0): + - Realm/Headers (= 10.27.0) + - Realm/Headers (10.27.0) + - Reusable (4.1.2): + - Reusable/Storyboard (= 4.1.2) + - Reusable/View (= 4.1.2) + - Reusable/Storyboard (4.1.2) + - Reusable/View (4.1.2) + - Sentry (7.15.0): + - Sentry/Core (= 7.15.0) + - Sentry/Core (7.15.0) + - SideMenu (6.5.0) + - SwiftBase32 (0.9.0) + - SwiftGen (6.6.2) + - SwiftJWT (3.6.200): + - BlueCryptor (~> 1.0) + - BlueECC (~> 1.1) + - BlueRSA (~> 1.0) + - KituraContracts (~> 1.2) + - LoggerAPI (~> 1.7) + - SwiftLint (0.44.0) + - SwiftyBeaver (1.9.5) + - UICollectionViewLeftAlignedLayout (1.0.2) + - UICollectionViewRightAlignedLayout (0.0.3) + - WeakDictionary (2.0.2) + - zxcvbn-ios (1.0.4) + - ZXingObjC (3.6.5): + - ZXingObjC/All (= 3.6.5) + - ZXingObjC/All (3.6.5) + +DEPENDENCIES: + - AnalyticsEvents (from `https://github.com/matrix-org/matrix-analytics-events.git`, branch `release/swift`) + - Down (~> 0.11.0) + - DSBottomSheet (~> 0.3) + - DSWaveformImage (~> 6.1.1) + - DTCoreText (~> 1.6.25) + - ffmpeg-kit-ios-audio (= 4.5.1) + - FLEX (~> 4.5.0) + - FlowCommoniOS (~> 1.12.0) + - GBDeviceInfo (~> 6.6.0) + - Introspect (~> 0.1) + - KeychainAccess (~> 4.2.2) + - KTCenterFlowLayout (~> 1.3.1) + - libPhoneNumber-iOS (~> 0.9.13) + - MatrixSDK (= 0.23.18) + - MatrixSDK/JingleCallStack (= 0.23.18) + - OLMKit + - PostHog (~> 1.4.4) + - ReadMoreTextView (~> 3.0.1) + - Reusable (~> 4.1) + - Sentry (~> 7.15.0) + - SideMenu (~> 6.5) + - SwiftBase32 (~> 0.9.0) + - SwiftGen (~> 6.3) + - SwiftJWT (~> 3.6.200) + - SwiftLint (~> 0.44.0) + - UICollectionViewLeftAlignedLayout (~> 1.0.2) + - UICollectionViewRightAlignedLayout (~> 0.0.3) + - WeakDictionary (~> 2.0) + - zxcvbn-ios + - ZXingObjC (~> 3.6.5) + +SPEC REPOS: + trunk: + - AFNetworking + - BlueCryptor + - BlueECC + - BlueRSA + - Down + - DSBottomSheet + - DSWaveformImage + - DTCoreText + - DTFoundation + - ffmpeg-kit-ios-audio + - FLEX + - FlowCommoniOS + - GBDeviceInfo + - GZIP + - Introspect + - JitsiMeetSDK + - KeychainAccess + - KituraContracts + - KTCenterFlowLayout + - libbase58 + - libPhoneNumber-iOS + - LoggerAPI + - Logging + - MatrixSDK + - MatrixSDKCrypto + - OLMKit + - PostHog + - ReadMoreTextView + - Realm + - Reusable + - Sentry + - SideMenu + - SwiftBase32 + - SwiftGen + - SwiftJWT + - SwiftLint + - SwiftyBeaver + - UICollectionViewLeftAlignedLayout + - UICollectionViewRightAlignedLayout + - WeakDictionary + - zxcvbn-ios + - ZXingObjC + +EXTERNAL SOURCES: + AnalyticsEvents: + :branch: release/swift + :git: https://github.com/matrix-org/matrix-analytics-events.git + +CHECKOUT OPTIONS: + AnalyticsEvents: + :commit: 53ad46ba1ea1ee8f21139dda3c351890846a202f + :git: https://github.com/matrix-org/matrix-analytics-events.git + +SPEC CHECKSUMS: + AFNetworking: 7864c38297c79aaca1500c33288e429c3451fdce + AnalyticsEvents: 0cc8cf52da2fd464a2f39b788a295988151116ce + BlueCryptor: b0aee3d9b8f367b49b30de11cda90e1735571c24 + BlueECC: 0d18e93347d3ec6d41416de21c1ffa4d4cd3c2cc + BlueRSA: dfeef51db96bcc4edec654956c1581adbda4e6a3 + Down: b6ba1bc985c9d2f4e15e3b293d2207766fa12612 + DSBottomSheet: ca0ac37eb5af2dd54663f86b84382ed90a59be2a + DSWaveformImage: 3c718a0cf99291887ee70d1d0c18d80101d3d9ce + DTCoreText: ec749e013f2e1f76de5e7c7634642e600a7467ce + DTFoundation: a53f8cda2489208cbc71c648be177f902ee17536 + ffmpeg-kit-ios-audio: 662ce2064e56733ca7d8216705efbc38d9e1c3fe + FLEX: e51461dd6f0bfb00643c262acdfea5d5d12c596b + FlowCommoniOS: ca92071ab526dc89905495a37844fd7e78d1a7f2 + GBDeviceInfo: ed0db16230d2fa280e1cbb39a5a7f60f6946aaec + GZIP: 416858efbe66b41b206895ac6dfd5493200d95b3 + Introspect: b62c4dd2063072327c21d618ef2bedc3c87bc366 + JitsiMeetSDK: edcac8e2b92ee0c7f3e75bd0aefefbe9faccfc93 + KeychainAccess: c0c4f7f38f6fc7bbe58f5702e25f7bd2f65abf51 + KituraContracts: e845e60dc8627ad0a76fa55ef20a45451d8f830b + KTCenterFlowLayout: 6e02b50ab2bd865025ae82fe266ed13b6d9eaf97 + libbase58: 7c040313537b8c44b6e2d15586af8e21f7354efd + libPhoneNumber-iOS: 0a32a9525cf8744fe02c5206eb30d571e38f7d75 + LoggerAPI: ad9c4a6f1e32f518fdb43a1347ac14d765ab5e3d + Logging: beeb016c9c80cf77042d62e83495816847ef108b + MatrixSDK: 26da2e3a9f3b02fc6ea67f5bc311d30f06f9ffba + MatrixSDKCrypto: 4b9146d5ef484550341be056a164c6930038028e + OLMKit: da115f16582e47626616874e20f7bb92222c7a51 + PostHog: 4b6321b521569092d4ef3a02238d9435dbaeb99f + ReadMoreTextView: 19147adf93abce6d7271e14031a00303fe28720d + Realm: 9ca328bd7e700cc19703799785e37f77d1a130f2 + Reusable: 6bae6a5e8aa793c9c441db0213c863a64bce9136 + Sentry: 63ca44f5e0c8cea0ee5a07686b02e56104f41ef7 + SideMenu: f583187d21c5b1dd04c72002be544b555a2627a2 + SwiftBase32: 9399c25a80666dc66b51e10076bf591e3bbb8f17 + SwiftGen: 1366a7f71aeef49954ca5a63ba4bef6b0f24138c + SwiftJWT: 88c412708f58c169d431d344c87bc79a87c830ae + SwiftLint: e96c0a8c770c7ebbc4d36c55baf9096bb65c4584 + SwiftyBeaver: 84069991dd5dca07d7069100985badaca7f0ce82 + UICollectionViewLeftAlignedLayout: 830bf6fa5bab9f9b464f62e3384f9d2e00b3c0f6 + UICollectionViewRightAlignedLayout: 823eef8c567eba4a44c21bc2ffcb0d0d5f361e2d + WeakDictionary: 8cd038acd77e5d54ca4ebaec3d20853d732b45e0 + zxcvbn-ios: fef98b7c80f1512ff0eec47ac1fa399fc00f7e3c + ZXingObjC: fdbb269f25dd2032da343e06f10224d62f537bdb + +PODFILE CHECKSUM: 45176df406c18b0c23321a308f58535fbe425a93 + +COCOAPODS: 1.11.2 diff --git a/plugins/package-managers/cocoapods/src/funTest/kotlin/CocoaPodsFunTest.kt b/plugins/package-managers/cocoapods/src/funTest/kotlin/CocoaPodsFunTest.kt index ef67e9666b0d..89bc3ca5d28e 100644 --- a/plugins/package-managers/cocoapods/src/funTest/kotlin/CocoaPodsFunTest.kt +++ b/plugins/package-managers/cocoapods/src/funTest/kotlin/CocoaPodsFunTest.kt @@ -58,6 +58,15 @@ class CocoaPodsFunTest : WordSpec({ result.toYaml() should matchExpectedResult(expectedResultFile, definitionFile) } + "determine dependencies from a Podfile that upgrades a version during resolution" { + val definitionFile = getAssetFile("projects/synthetic/version-resolution/Podfile") + val expectedResultFile = getAssetFile("projects/synthetic/version-resolution-expected-output.yml") + + val result = create("CocoaPods").resolveSingleProject(definitionFile) + + result.toYaml() should matchExpectedResult(expectedResultFile, definitionFile) + } + "return no dependencies along with an issue if the lockfile is absent" { val definitionFile = getAssetFile("projects/synthetic/no-lockfile/Podfile") val expectedResultFile = getAssetFile("projects/synthetic/no-lockfile-expected-output.yml") diff --git a/plugins/package-managers/cocoapods/src/main/kotlin/CocoaPods.kt b/plugins/package-managers/cocoapods/src/main/kotlin/CocoaPods.kt index 3445ed0f8b8f..cc6ef0a64412 100644 --- a/plugins/package-managers/cocoapods/src/main/kotlin/CocoaPods.kt +++ b/plugins/package-managers/cocoapods/src/main/kotlin/CocoaPods.kt @@ -237,7 +237,7 @@ private fun parseNameAndVersion(entry: String): Pair { // A version entry could look something like "(6.3.0)", "(= 2021.06.28.00-v2)", "(~> 8.15.0)", etc. Also see // https://guides.cocoapods.org/syntax/podfile.html#pod. - val version = info.getOrNull(1)?.removeSurrounding("(", ")")?.substringAfterLast(' ') + val version = info.getOrNull(1)?.removeSurrounding("(", ")") return name to version } @@ -252,24 +252,24 @@ private fun parseLockfile(podfileLock: File): LockfileData { val dependencyConstraints = mutableMapOf>() val root = yamlMapper.readTree(podfileLock) - // The "PODS" section lists the direct dependencies and, if applicable, their direct dependencies each. That is, the - // nesting never goes deeper than two levels, and in order to build up a full dependency tree, one needs to - // recursively step through all direct dependencies. - root.get("PODS").asIterable().forEach { node -> - val entry = when (node) { - is ObjectNode -> node.fieldNames().asSequence().first() - else -> node.textValue() - } - - val (name, version) = parseNameAndVersion(entry) - resolvedVersions[name] = checkNotNull(version) - - val dependencies = node[entry]?.map { depNode -> - val (depName, depVersion) = parseNameAndVersion(depNode.textValue()) - depName.also { if (depVersion != null) resolvedVersions[it] = depVersion } - }.orEmpty() + // The "PODS" section lists the resolved dependencies and, nested by one level, any version constraints of their + // direct dependencies. That is, the nesting never goes deeper than two levels. + root.get("PODS").forEach { node -> + when (node) { + is ObjectNode -> { + val (name, version) = parseNameAndVersion(node.fieldNames().asSequence().single()) + resolvedVersions[name] = checkNotNull(version) + dependencyConstraints[name] = node.single().mapTo(mutableSetOf()) { + // Discard the version (which is only a constraint in this case) and just take the name. + parseNameAndVersion(it.textValue()).first + } + } - dependencyConstraints.getOrPut(name) { mutableSetOf() } += dependencies + else -> { + val (name, version) = parseNameAndVersion(node.textValue()) + resolvedVersions[name] = checkNotNull(version) + } + } } val externalSources = root.get("CHECKOUT OPTIONS")?.fields()?.asSequence()?.mapNotNull { @@ -301,7 +301,12 @@ private fun parseLockfile(podfileLock: File): LockfileData { fun createPackageReference(name: String): PackageReference = PackageReference( id = Identifier("Pod", "", name, resolvedVersions.getValue(name)), - dependencies = dependencyConstraints[name].orEmpty().mapTo(mutableSetOf()) { createPackageReference(it) } + dependencies = dependencyConstraints[name].orEmpty().filter { + // Only use a constraint as a dependency if it has a resolved version. + it in resolvedVersions + }.mapTo(mutableSetOf()) { + createPackageReference(it) + } ) // The "DEPENDENCIES" section lists direct dependencies, but only along with version constraints, not with their