Skip to content

Add Swift Package Manager support (SPM) #1239

New issue

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

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

Already on GitHub? Sign in to your account

Open
developersauron opened this issue Jan 23, 2025 · 1 comment
Open

Add Swift Package Manager support (SPM) #1239

developersauron opened this issue Jan 23, 2025 · 1 comment
Labels
feature request Feature request covers a product enhancement

Comments

@developersauron
Copy link

[REQUIRED] Step 1: Describe your environment

Plugin Version

5.3.0

[REQUIRED] Step 2: Describe the problem

Swift package manager doesn't supported.

Steps to Reproduce

  1. Run flutter run.
    flutter run
    Launching lib/main.dart on iPhone SE (3rd generation) in debug mode...
    Running pod install... 706ms
    CocoaPods' output:

    Preparing

    Analyzing dependencies

    Inspecting targets to integrate
    Using ARCHS setting to build architectures of target Pods-Runner: () Using `ARCHS` setting to build architectures of target `Pods-RunnerTests`: ()

    Finding Podfile changes
    R cloud_firestore
    R connectivity_plus
    R firebase_auth
    R firebase_core
    R firebase_dynamic_links
    R package_info_plus
    R path_provider_foundation
    R share_plus
    R shared_preferences_foundation
    R sqflite_darwin
    R url_launcher_ios
    R webview_flutter_wkwebview

    • Flutter
    • desktop_webview_auth
    • device_info_plus
    • flutter_secure_storage
    • google_mobile_ads
    • google_sign_in_ios
    • sign_in_with_apple

    Fetching external sources
    -> Fetching podspec for Flutter from Flutter
    -> Fetching podspec for desktop_webview_auth from .symlinks/plugins/desktop_webview_auth/ios
    -> Fetching podspec for device_info_plus from .symlinks/plugins/device_info_plus/ios
    -> Fetching podspec for flutter_secure_storage from .symlinks/plugins/flutter_secure_storage/ios
    -> Fetching podspec for google_mobile_ads from .symlinks/plugins/google_mobile_ads/ios
    -> Fetching podspec for google_sign_in_ios from .symlinks/plugins/google_sign_in_ios/darwin
    -> Fetching podspec for sign_in_with_apple from .symlinks/plugins/sign_in_with_apple/ios

    Resolving dependencies of Podfile
    CDN: trunk Relative path: CocoaPods-version.yml exists! Returning local because checking is only performed in repo update
    CDN: trunk Relative path: all_pods_versions_5_9_a.txt exists! Returning local because checking is only performed in repo update
    CDN: trunk Relative path: Specs/5/9/a/Google-Mobile-Ads-SDK/11.13.0/Google-Mobile-Ads-SDK.podspec.json exists! Returning local because checking is only performed
    in repo update
    CDN: trunk Relative path: all_pods_versions_e_9_b.txt exists! Returning local because checking is only performed in repo update
    [!] Unable to find a specification for webview_flutter_wkwebview depended upon by google_mobile_ads

    You have either:

    • out-of-date source repos which you can update with pod repo update or with pod install --repo-update.
    • mistyped the name or version.
    • not added the source repo that hosts the Podspec to your Podfile.

    /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/cocoapods-1.16.2/lib/cocoapods/resolver.rb:389:in find_cached_set' /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/cocoapods-1.16.2/lib/cocoapods/resolver.rb:360:in specifications_for_dependency'
    /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/cocoapods-1.16.2/lib/cocoapods/resolver.rb:165:in search_for' /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/cocoapods-1.16.2/lib/cocoapods/resolver.rb:274:in block in sort_dependencies'
    /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/cocoapods-1.16.2/lib/cocoapods/resolver.rb:267:in each' /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/cocoapods-1.16.2/lib/cocoapods/resolver.rb:267:in sort_by'
    /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/cocoapods-1.16.2/lib/cocoapods/resolver.rb:267:in sort_by!' /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/cocoapods-1.16.2/lib/cocoapods/resolver.rb:267:in sort_dependencies'
    /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/molinillo-0.8.0/lib/molinillo/delegates/specification_provider.rb:60:in block in sort_dependencies' /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/molinillo-0.8.0/lib/molinillo/delegates/specification_provider.rb:77:in with_no_such_dependency_error_handling'
    /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/molinillo-0.8.0/lib/molinillo/delegates/specification_provider.rb:59:in sort_dependencies' /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:754:in push_state_for_requirements'
    /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:744:in require_nested_dependencies_for' /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:727:in activate_new_spec'
    /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:684:in attempt_to_activate' /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:254:in process_topmost_state'
    /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/molinillo-0.8.0/lib/molinillo/resolution.rb:182:in resolve' /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/molinillo-0.8.0/lib/molinillo/resolver.rb:43:in resolve'
    /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/cocoapods-1.16.2/lib/cocoapods/resolver.rb:94:in resolve' /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/cocoapods-1.16.2/lib/cocoapods/installer/analyzer.rb:1082:in block in resolve_dependencies'
    /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/cocoapods-1.16.2/lib/cocoapods/user_interface.rb:64:in section' /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/cocoapods-1.16.2/lib/cocoapods/installer/analyzer.rb:1080:in resolve_dependencies'
    /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/cocoapods-1.16.2/lib/cocoapods/installer/analyzer.rb:125:in analyze' /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/cocoapods-1.16.2/lib/cocoapods/installer.rb:422:in analyze'
    /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/cocoapods-1.16.2/lib/cocoapods/installer.rb:244:in block in resolve_dependencies' /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/cocoapods-1.16.2/lib/cocoapods/user_interface.rb:64:in section'
    /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/cocoapods-1.16.2/lib/cocoapods/installer.rb:243:in resolve_dependencies' /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/cocoapods-1.16.2/lib/cocoapods/installer.rb:162:in install!'
    /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/cocoapods-1.16.2/lib/cocoapods/command/install.rb:52:in run' /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/claide-1.1.0/lib/claide/command.rb:334:in run'
    /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/cocoapods-1.16.2/lib/cocoapods/command.rb:52:in run' /Users/mehmetfiskindal/.rbenv/versions/3.3.6/lib/ruby/gems/3.3.0/gems/cocoapods-1.16.2/bin/pod:55:in <top (required)>'
    /Users/mehmetfiskindal/.rbenv/versions/3.3.6/bin/pod:25:in load' /Users/mehmetfiskindal/.rbenv/versions/3.3.6/bin/pod:25:in

    '

Error output from CocoaPods:

[!] Automatically assigning platform `iOS` with version `13.0` on target `Runner` because no platform was specified. Please specify a platform for this target in
your Podfile. See `https://guides.cocoapods.org/syntax/podfile.html#platform`.

Error: CocoaPods's specs repository is too out-of-date to satisfy dependencies.
To update the CocoaPods specs, run:
pod repo update

Error running pod install
Expected results:

Actual results:

Logs

flutter doctor -v
[✓] Flutter (Channel stable, 3.27.2, on macOS 15.2 24C101 darwin-arm64, locale en-GB)
• Flutter version 3.27.2 on channel stable at /Users/mehmetfiskindal/development/flutter
• Upstream repository https://github.com/flutter/flutter.git
• Framework revision 68415ad1d9 (10 days ago), 2025-01-13 10:22:03 -0800
• Engine revision e672b006cb
• Dart version 3.6.1
• DevTools version 2.40.2

[✓] Android toolchain - develop for Android devices (Android SDK version 35.0.0)
• Android SDK at /Users/mehmetfiskindal/Library/Android/sdk
• Platform android-35, build-tools 35.0.0
• ANDROID_HOME = /Users/mehmetfiskindal/Library/Android/sdk
• Java binary at: /Library/Java/JavaVirtualMachines/zulu-17.jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment Zulu17.54+21-CA (build 17.0.13+11-LTS)
• All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 16.2)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Build 16C5032a
• CocoaPods version 1.16.2

[✓] Chrome - develop for the web
• Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2024.2)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 21.0.3+-79915917-b509.11)

[✓] VS Code (version 1.96.4)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension version 3.102.0

[✓] Connected device (4 available)
• iPhone SE (3rd generation) (mobile) • 68E48E40-17E6-4633-8867-6C80B94FAF40 • ios • com.apple.CoreSimulator.SimRuntime.iOS-18-2 (simulator)
• macOS (desktop) • macos • darwin-arm64 • macOS 15.2 24C101 darwin-arm64
• Mac Designed for iPad (desktop) • mac-designed-for-ipad • darwin • macOS 15.2 24C101 darwin-arm64
• Chrome (web) • chrome • web-javascript • Google Chrome 131.0.6778.265

[✓] Network resources
• All expected network resources are available.

• No issues found!

@malandr2 malandr2 added the feature request Feature request covers a product enhancement label Jan 24, 2025
@malandr2
Copy link
Collaborator

malandr2 commented Jan 24, 2025

Hi @developersauron, thanks for sharing. We are aware of this and are expecting to have SPM support in 2025 H2. For now we have labeled this a feature request and will close out once support has been added. Thanks!

@malandr2 malandr2 changed the title SPM(Swift package manager) support doesn't have Add Swift Package Manager support (SPM) Jan 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature request Feature request covers a product enhancement
Projects
None yet
Development

No branches or pull requests

2 participants