-
Notifications
You must be signed in to change notification settings - Fork 6.6k
chore(deps): update dependency firebase-admin to v7 #13508
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
base: main
Are you sure you want to change the base?
chore(deps): update dependency firebase-admin to v7 #13508
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Summary of Changes
Hello @renovate-bot, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!
This pull request performs a major version upgrade for the firebase-admin
Python dependency. This update brings the project up to the latest stable version of the SDK, but it also introduces significant breaking changes that may require code modifications and careful testing to ensure continued functionality and compatibility with the updated library and its new Python version requirements.
Highlights
- Dependency Update: This pull request updates the
firebase-admin
Python dependency from version6.6.0
to7.0.0
. - Breaking Changes in
firebase-admin
v7.0.0: The newfirebase-admin
version introduces several breaking changes, including dropping support for Python 3.7 and 3.8, deprecating Python 3.9, removing AutoML support, and removingsend_all()
andsend_multicast()
FCM APIs. It also removes thegoogle-api-python-client
dependency, which significantly reduces the SDK's bundle size. - Python Compatibility: Due to the breaking changes in
firebase-admin
v7.0.0, applications using this dependency should ensure compatibility with Python 3.10 or higher, as older Python versions are no longer supported or are deprecated by the new SDK.
Using Gemini Code Assist
The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.
Invoking Gemini
You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command>
or @gemini-code-assist <command>
. Below is a summary of the supported commands.
Feature | Command | Description |
---|---|---|
Code Review | /gemini review |
Performs a code review for the current pull request in its current state. |
Pull Request Summary | /gemini summary |
Provides a summary of the current pull request in its current state. |
Comment | @gemini-code-assist | Responds in comments when explicitly tagged, both in issue comments and review comments. |
Help | /gemini help |
Displays a list of available commands. |
Customization
To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/
folder in the base of the repository. Detailed instructions can be found here.
Limitations & Feedback
Gemini Code Assist is currently in preview and may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments to provide feedback.
You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.
Footnotes
-
Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution. ↩
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code Review
This pull request updates firebase-admin
to the new major version 7.0.0. My review focuses on the implications of the breaking changes introduced in this version. The upgrade appears safe for this project, and I've also identified a potential for dependency simplification that this upgrade enables, as well as a recommendation for the testing environment.
@@ -2,6 +2,6 @@ Flask==3.0.3 | |||
SQLAlchemy==2.0.40 | |||
pg8000==1.31.2 | |||
gunicorn==23.0.0 | |||
firebase-admin==6.6.0 | |||
firebase-admin==7.0.0 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for updating firebase-admin
to a new major version. This is a good maintenance step.
After reviewing the v7.0.0 release notes and the project's code, I have two suggestions related to this upgrade:
-
Dependency Simplification
The pin forurllib3<2.0.0
on line 7 is likely no longer necessary. This was required because older versions ofgoogle-auth
(a transitive dependency offirebase-admin
) were incompatible withurllib3
v2. The updated dependencies infirebase-admin
v7 resolve this. You can likely remove that line to simplify yourrequirements.txt
. -
Test Environment Python Version
firebase-admin
v7 deprecates support for Python 3.9. The project'snoxfile_config.py
appears to run tests against Python 3.9. While this won't break the build now, it's good practice to align the test environment with the dependency's supported versions (>=3.10) to avoid future issues. This would be a good follow-up change.
The core breaking changes in v7 (like removed FCM APIs) don't seem to affect this application, so the upgrade itself looks safe.
This PR contains the following updates:
==6.6.0
->==7.0.0
Release Notes
firebase/firebase-admin-python (firebase-admin)
v7.0.0
: Firebase Admin Python SDK v7.0.0Compare Source
Breaking Changes
send_all()
andsend_multicast()
FCM APIs (#890)google-api-python-client
greatly reducing the SDK's bundle size. (#890)Bug Fixes
datetime.utcnow()
and fix flaky unit test (#896)Miscellaneous
v6.9.0
: Firebase Admin Python SDK v6.9.0Compare Source
New Features
live_activity_token
toAPNSConfig
(#880)send_each_async
andsend_each_for_multicast_async
for FCM async and HTTP/2 support (#882)Miscellaneous
v6.8.0
: Firebase Admin Python SDK v6.8.0Compare Source
New Features
proxy
field in FCMAndroidNotification
(#868)Miscellaneous
v6.7.0
: Firebase Admin Python SDK v6.7.0Compare Source
New Features
Miscellaneous
Reference.listen()
(#851)Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Never, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.