Skip to content
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

Can't upgrade firebase_core to 3.4.0, because macOS deployment target #1116

Open
gnprice opened this issue Dec 9, 2024 · 3 comments · May be fixed by #1184
Open

Can't upgrade firebase_core to 3.4.0, because macOS deployment target #1116

gnprice opened this issue Dec 9, 2024 · 3 comments · May be fixed by #1184
Assignees
Labels
a-tools Our own development tooling, scripts, and infrastructure upstream Would benefit from work in Flutter or another upstream
Milestone

Comments

@gnprice
Copy link
Member

gnprice commented Dec 9, 2024

When I try upgrading our dependencies with tools/upgrade pub, I get the following error from CocoaPods:

+ pod update --project-directory=macos/
Update all pods
Updating local specs repositories
Analyzing dependencies
firebase_core: Using Firebase SDK version '11.0.0' defined in 'firebase_core'
firebase_messaging: Using Firebase SDK version '11.0.0' defined in 'firebase_core'
[!] CocoaPods could not find compatible versions for pod "Firebase/Messaging":
  In Podfile:
    firebase_messaging (from `Flutter/ephemeral/.symlinks/plugins/firebase_messaging/macos`) was resolved to 15.1.0, which depends on
      Firebase/Messaging (~> 11.0.0)

Specs satisfying the `Firebase/Messaging (~> 11.0.0)` dependency were found, but they required a higher minimum deployment target.

This appears to correspond to the following release note:
https://firebase.google.com/support/release-notes/ios#version_1100_-_july_30_2024
saying version 11.0.0 of the Firebase Apple SDK started requiring a minimum deployment target of macOS 10.15.

Naturally we're happy to bump up our minimum macOS deployment target — 10.15 is from 2019, and even increasing to last year's macOS 14 would be perfectly fine. But I spent a few minutes just now attempting to do so — editing the MACOSX_DEPLOYMENT_TARGET = 10.14; lines in the project.pbxproj file so they say 10.15 (or 13.0) instead, then also tried setting it in Xcode which added some new lines of that form — and the error persisted. (Perhaps there's somewhere else that pod update is looking? Perhaps it has a cache of some kind that it fails to update?)

So further debugging is required.

Meanwhile, we'll be holding back firebase_core at 3.3.0 rather than 3.4.0 (and so holding back the other Firebase-related packages too), because that's the upgrade that triggers this.

@gnprice gnprice added a-tools Our own development tooling, scripts, and infrastructure upstream Would benefit from work in Flutter or another upstream labels Dec 9, 2024
@gnprice gnprice added this to the M5: Launch milestone Dec 9, 2024
gnprice added a commit to gnprice/zulip-flutter that referenced this issue Dec 9, 2024
The upgrade to the Dart package firebase_core 3.4.0 (from 3.3.0)
leads to the CocoaPods pod Firebase/CoreOnly 11.0.0 (from 10.29.0)
and the further pod Firebase/Messaging 11.0.0 (from 10.29.0).
That produces the following `pod update` error message when
attempting to run `tools/upgrade pub`:

```
+ pod update --project-directory=macos/
Update all pods
Updating local specs repositories
Analyzing dependencies
firebase_core: Using Firebase SDK version '11.0.0' defined in 'firebase_core'
firebase_messaging: Using Firebase SDK version '11.0.0' defined in 'firebase_core'
[!] CocoaPods could not find compatible versions for pod "Firebase/Messaging":
  In Podfile:
    firebase_messaging (from `Flutter/ephemeral/.symlinks/plugins/firebase_messaging/macos`) was resolved to 15.1.0, which depends on
      Firebase/Messaging (~> 11.0.0)

Specs satisfying the `Firebase/Messaging (~> 11.0.0)` dependency were found, but they required a higher minimum deployment target.
```

Fundamentally that should be fixable, but with some effort just now
I wasn't able to actually increase that minimum deployment target
in a way that satisfied CocoaPods so as to resolve this error.
So, filed zulip#1116 for that.  Meanwhile, let our other upgrades proceed.
gnprice added a commit to gnprice/zulip-flutter that referenced this issue Dec 9, 2024
The upgrade to the Dart package firebase_core 3.4.0 (from 3.3.0)
leads to the CocoaPods pod Firebase/CoreOnly 11.0.0 (from 10.29.0)
and the further pod Firebase/Messaging 11.0.0 (from 10.29.0).
That produces the following `pod update` error message when
attempting to run `tools/upgrade pub`:

```
+ pod update --project-directory=macos/
Update all pods
Updating local specs repositories
Analyzing dependencies
firebase_core: Using Firebase SDK version '11.0.0' defined in 'firebase_core'
firebase_messaging: Using Firebase SDK version '11.0.0' defined in 'firebase_core'
[!] CocoaPods could not find compatible versions for pod "Firebase/Messaging":
  In Podfile:
    firebase_messaging (from `Flutter/ephemeral/.symlinks/plugins/firebase_messaging/macos`) was resolved to 15.1.0, which depends on
      Firebase/Messaging (~> 11.0.0)

Specs satisfying the `Firebase/Messaging (~> 11.0.0)` dependency were found, but they required a higher minimum deployment target.
```

Fundamentally that should be fixable, but with some effort just now
I wasn't able to actually increase that minimum deployment target
in a way that satisfied CocoaPods so as to resolve this error.
So, filed zulip#1116 for that.  Meanwhile, let our other upgrades proceed.
gnprice added a commit to gnprice/zulip-flutter that referenced this issue Dec 9, 2024
The upgrade to the Dart package firebase_core 3.4.0 (from 3.3.0)
leads to the CocoaPods pod Firebase/CoreOnly 11.0.0 (from 10.29.0)
and the further pod Firebase/Messaging 11.0.0 (from 10.29.0).
That produces the following `pod update` error message when
attempting to run `tools/upgrade pub`:

```
+ pod update --project-directory=macos/
Update all pods
Updating local specs repositories
Analyzing dependencies
firebase_core: Using Firebase SDK version '11.0.0' defined in 'firebase_core'
firebase_messaging: Using Firebase SDK version '11.0.0' defined in 'firebase_core'
[!] CocoaPods could not find compatible versions for pod "Firebase/Messaging":
  In Podfile:
    firebase_messaging (from `Flutter/ephemeral/.symlinks/plugins/firebase_messaging/macos`) was resolved to 15.1.0, which depends on
      Firebase/Messaging (~> 11.0.0)

Specs satisfying the `Firebase/Messaging (~> 11.0.0)` dependency were found, but they required a higher minimum deployment target.
```

Fundamentally that should be fixable, but with some effort just now
I wasn't able to actually increase that minimum deployment target
in a way that satisfied CocoaPods so as to resolve this error.
So, filed zulip#1116 for that.  Meanwhile, let our other upgrades proceed.
gnprice added a commit to gnprice/zulip-flutter that referenced this issue Dec 9, 2024
The upgrade to the Dart package firebase_core 3.4.0 (from 3.3.0)
leads to the CocoaPods pod Firebase/CoreOnly 11.0.0 (from 10.29.0)
and the further pod Firebase/Messaging 11.0.0 (from 10.29.0).
That produces the following `pod update` error message when
attempting to run `tools/upgrade pub`:

```
+ pod update --project-directory=macos/
Update all pods
Updating local specs repositories
Analyzing dependencies
firebase_core: Using Firebase SDK version '11.0.0' defined in 'firebase_core'
firebase_messaging: Using Firebase SDK version '11.0.0' defined in 'firebase_core'
[!] CocoaPods could not find compatible versions for pod "Firebase/Messaging":
  In Podfile:
    firebase_messaging (from `Flutter/ephemeral/.symlinks/plugins/firebase_messaging/macos`) was resolved to 15.1.0, which depends on
      Firebase/Messaging (~> 11.0.0)

Specs satisfying the `Firebase/Messaging (~> 11.0.0)` dependency were found, but they required a higher minimum deployment target.
```

Fundamentally that should be fixable, but with some effort just now
I wasn't able to actually increase that minimum deployment target
in a way that satisfied CocoaPods so as to resolve this error.
So, filed zulip#1116 for that.  Meanwhile, let our other upgrades proceed.
gnprice added a commit to gnprice/zulip-flutter that referenced this issue Dec 9, 2024
The upgrade to the Dart package firebase_core 3.4.0 (from 3.3.0)
leads to the CocoaPods pod Firebase/CoreOnly 11.0.0 (from 10.29.0)
and the further pod Firebase/Messaging 11.0.0 (from 10.29.0).
That produces the following `pod update` error message when
attempting to run `tools/upgrade pub`:

```
+ pod update --project-directory=macos/
Update all pods
Updating local specs repositories
Analyzing dependencies
firebase_core: Using Firebase SDK version '11.0.0' defined in 'firebase_core'
firebase_messaging: Using Firebase SDK version '11.0.0' defined in 'firebase_core'
[!] CocoaPods could not find compatible versions for pod "Firebase/Messaging":
  In Podfile:
    firebase_messaging (from `Flutter/ephemeral/.symlinks/plugins/firebase_messaging/macos`) was resolved to 15.1.0, which depends on
      Firebase/Messaging (~> 11.0.0)

Specs satisfying the `Firebase/Messaging (~> 11.0.0)` dependency were found, but they required a higher minimum deployment target.
```

Fundamentally that should be fixable, but with some effort just now
I wasn't able to actually increase that minimum deployment target
in a way that satisfied CocoaPods so as to resolve this error.
So, filed zulip#1116 for that.  Meanwhile, let our other upgrades proceed.
gnprice added a commit to gnprice/zulip-flutter that referenced this issue Dec 9, 2024
The upgrade to the Dart package firebase_core 3.4.0 (from 3.3.0)
leads to the CocoaPods pod Firebase/CoreOnly 11.0.0 (from 10.29.0)
and the further pod Firebase/Messaging 11.0.0 (from 10.29.0).
That produces the following `pod update` error message when
attempting to run `tools/upgrade pub`:

```
+ pod update --project-directory=macos/
Update all pods
Updating local specs repositories
Analyzing dependencies
firebase_core: Using Firebase SDK version '11.0.0' defined in 'firebase_core'
firebase_messaging: Using Firebase SDK version '11.0.0' defined in 'firebase_core'
[!] CocoaPods could not find compatible versions for pod "Firebase/Messaging":
  In Podfile:
    firebase_messaging (from `Flutter/ephemeral/.symlinks/plugins/firebase_messaging/macos`) was resolved to 15.1.0, which depends on
      Firebase/Messaging (~> 11.0.0)

Specs satisfying the `Firebase/Messaging (~> 11.0.0)` dependency were found, but they required a higher minimum deployment target.
```

Fundamentally that should be fixable, but with some effort just now
I wasn't able to actually increase that minimum deployment target
in a way that satisfied CocoaPods so as to resolve this error.
So, filed zulip#1116 for that.  Meanwhile, let our other upgrades proceed.
shivanshsharma13 pushed a commit to shivanshsharma13/zulip-flutter that referenced this issue Dec 13, 2024
The upgrade to the Dart package firebase_core 3.4.0 (from 3.3.0)
leads to the CocoaPods pod Firebase/CoreOnly 11.0.0 (from 10.29.0)
and the further pod Firebase/Messaging 11.0.0 (from 10.29.0).
That produces the following `pod update` error message when
attempting to run `tools/upgrade pub`:

```
+ pod update --project-directory=macos/
Update all pods
Updating local specs repositories
Analyzing dependencies
firebase_core: Using Firebase SDK version '11.0.0' defined in 'firebase_core'
firebase_messaging: Using Firebase SDK version '11.0.0' defined in 'firebase_core'
[!] CocoaPods could not find compatible versions for pod "Firebase/Messaging":
  In Podfile:
    firebase_messaging (from `Flutter/ephemeral/.symlinks/plugins/firebase_messaging/macos`) was resolved to 15.1.0, which depends on
      Firebase/Messaging (~> 11.0.0)

Specs satisfying the `Firebase/Messaging (~> 11.0.0)` dependency were found, but they required a higher minimum deployment target.
```

Fundamentally that should be fixable, but with some effort just now
I wasn't able to actually increase that minimum deployment target
in a way that satisfied CocoaPods so as to resolve this error.
So, filed zulip#1116 for that.  Meanwhile, let our other upgrades proceed.
@sher999
Copy link

sher999 commented Dec 14, 2024

Log
Update all pods
Updating local specs repositories
Analyzing dependencies
firebase_core: Using Firebase SDK version '11.0.0' defined in 'firebase_core'
firebase_messaging: Using Firebase SDK version '11.0.0' defined in 'firebase_core'
Downloading dependencies
Installing Firebase (11.0.0)
Installing FirebaseCore (11.0.0)
Installing FirebaseCoreInternal (11.6.0)
Installing FirebaseInstallations (11.4.0)
Installing FirebaseMessaging (11.0.0)
Installing FlutterMacOS (1.0.0)
Installing GoogleDataTransport (10.1.0)
Installing GoogleUtilities (8.0.2)
Installing PromisesObjC (2.4.0)
Installing device_info_plus (0.0.1)
Installing file_selector_macos (0.0.1)
Installing firebase_core (3.4.0)
Installing firebase_messaging (15.0.4)
Installing nanopb (3.30910.0)
Installing package_info_plus (0.0.1)
Installing path_provider_foundation (0.0.1)
Installing share_plus (0.0.1)
Installing sqlite3 (3.47.1)
Installing sqlite3_flutter_libs (0.0.1)
Installing url_launcher_macos (0.0.1)
Installing video_player_avfoundation (0.0.1)
Installing wakelock_plus (0.0.1)
Applying patches if necessary
Generating Pods project
Integrating client project
Pod installation complete! There are 12 dependencies from the Podfile and 22 total pods installed.

[!] CocoaPods did not set the base configuration of your project because your project already has a custom config set. In order for CocoaPods integration to work at all, please either set the base configurations of the target `Runner` to `Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig` or include the `Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig` in your build configuration (`Runner/Configs/AppInfo.xcconfig`).

[!] CocoaPods did not set the base configuration of your project because your project already has a custom config set. In order for CocoaPods integration to work at all, please either set the base configurations of the target `Runner` to `Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig` or include the `Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig` in your build configuration (`Runner/Configs/AppInfo.xcconfig`).

[!] CocoaPods did not set the base configuration of your project because your project already has a custom config set. In order for CocoaPods integration to work at all, please either set the base configurations of the target `Runner` to `Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig` or include the `Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig` in your build configuration (`Runner/Configs/AppInfo.xcconfig`).

But I spent a few minutes just now attempting to do so — editing the MACOSX_DEPLOYMENT_TARGET = 10.14; lines in the project.pbxproj

Changes is needed inside the macOS/Podfile line:1 from platform :osx, '10.14' to platform :osx, '10.15'

@gnprice
Copy link
Member Author

gnprice commented Dec 19, 2024

In addition to firebase_core and the other Firebase-related packages like firebase_messaging — which is how we receive notifications — @PIG208 pointed out to me that this is holding back upgrades of drift.

Specifically, newer drift requires newer web; but firebase_messaging also depends on web, via firebase_messaging_web, and the version of firebase_messaging_web that this issue has us held back at depends on older web.

(You can demonstrate this by bumping drift in pubspec.yaml, running flutter pub get, then trying to upgrade other packages to resolve it.)

@gnprice gnprice assigned chrisbobbe and unassigned sher999 Dec 19, 2024
@gnprice
Copy link
Member Author

gnprice commented Dec 19, 2024

(@sher999 since you haven't replied to the feedback on your PR #1163 and you closed it today, I'm assuming you don't plan to finish it soon. You're welcome to try contributing on a different issue in the future.)

chrisbobbe added a commit to chrisbobbe/zulip-flutter that referenced this issue Dec 19, 2024
Fixes zulip#1116.

Done by changing the line in the Podfile, and following the
(recently added) comment there by changing a setting in the Xcode
GUI.

The Podfile change seems to be the only thing missing when Greg
attempted this bump:

(from zulip#1116)
> Naturally we're happy to bump up our minimum macOS deployment
> target — 10.15 is from 2019, and even increasing to last year's
> macOS 14 would be perfectly fine. But I spent a few minutes just
> now attempting to do so — editing the `MACOSX_DEPLOYMENT_TARGET =
> 10.14;` lines in the `project.pbxproj` file so they say 10.15 (or
> 13.0) instead, then also tried setting it in Xcode which added
> some new lines of that form — and the error persisted. (Perhaps
> there's somewhere *else* that `pod update` is looking? Perhaps it
> has a cache of some kind that it fails to update?)
chrisbobbe added a commit to chrisbobbe/zulip-flutter that referenced this issue Dec 19, 2024
As Greg said in zulip#1116:

> 10.15 is from 2019, and even increasing to last year's macOS 14
> would be perfectly fine.
chrisbobbe added a commit to chrisbobbe/zulip-flutter that referenced this issue Dec 20, 2024
Fixes zulip#1116.

Done by changing the line in the Podfile, and following the
(recently added) comment there by changing a setting in the Xcode
GUI.

The Podfile change seems to be the only thing missing when Greg
attempted this bump:

(from zulip#1116)
> Naturally we're happy to bump up our minimum macOS deployment
> target — 10.15 is from 2019, and even increasing to last year's
> macOS 14 would be perfectly fine. But I spent a few minutes just
> now attempting to do so — editing the `MACOSX_DEPLOYMENT_TARGET =
> 10.14;` lines in the `project.pbxproj` file so they say 10.15 (or
> 13.0) instead, then also tried setting it in Xcode which added
> some new lines of that form — and the error persisted. (Perhaps
> there's somewhere *else* that `pod update` is looking? Perhaps it
> has a cache of some kind that it fails to update?)
chrisbobbe added a commit to chrisbobbe/zulip-flutter that referenced this issue Dec 20, 2024
As Greg said in zulip#1116:

> 10.15 is from 2019, and even increasing to last year's macOS 14
> would be perfectly fine.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
a-tools Our own development tooling, scripts, and infrastructure upstream Would benefit from work in Flutter or another upstream
Projects
Status: No status
3 participants