Skip to content

Conversation

@dorklein
Copy link
Contributor

NOTE: this PR builds on top of the changes from "Support analyzer: ^7 and source_gen: ^2 and Freezed ^3" #41

  • Updated version to 1.3.0 in pubspec.yaml files
  • Upgraded packages to support analyzer ^8 and set minimum SDK to 3.8.0
  • Updated CHANGELOG to reflect changes

Fixes #<issue_number_goes_here>

It's a good idea to open an issue first for discussion.

  • Tests pass
  • Appropriate changes to README are included in PR

dorklein added 4 commits March 5, 2025 14:43
…encies

- Resolve compatibility issues with Freezed 3.0.0 and above
- Update Dart SDK to >=3.0.0
- Upgrade dependencies to latest versions
- Add support for Freezed mixed mode classes
- Update generator to handle new Freezed class structures
- Improve compatibility with newer analyzer and source_gen versions
- Upgrade cloud_firestore dependency to ^6.0.0
- Update pubspec.yaml and CHANGELOG for versioning
- Modify transaction and batch methods to remove 'id' field from documents
- Enhance testing setup in README for running integration tests
- Add new tests for Freezed and other integration scenarios
…m and generator

- Upgrade Dart SDK constraints to >=3.8.0 <4.0.0 in pubspec.yaml files
- Update dependencies in example and generator packages to latest versions
- Modify integration tests and example code for compatibility with updated dependencies
- Refactor code for improved readability and maintainability
…tore_odm and generator

- Updated version to 1.3.0 in pubspec.yaml files
- Upgraded packages to support analyzer ^8 and set minimum SDK to 3.8.0
- Updated CHANGELOG to reflect changes
Copy link

@gemini-code-assist gemini-code-assist bot left a 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 @dorklein, 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 focuses on enhancing the project's compatibility with the latest Dart SDK and key FlutterFire dependencies. It includes significant version bumps for analyzer, cloud_firestore, and freezed, ensuring the codebase remains up-to-date with the ecosystem's advancements. Additionally, it refines the generated code for data manipulation operations and updates documentation to reflect these changes, providing a more robust and future-proof foundation.

Highlights

  • Dependency Upgrades: Upgraded analyzer to ^8.0.0, cloud_firestore to ^6.0.0, freezed_annotation to ^3.1.0, json_annotation to ^4.9.0, and set the minimum SDK version to 3.8.0 across relevant packages.
  • Freezed 3.x Compatibility: Introduced support for Freezed 3.x mixed mode classes, allowing for more flexible model definitions.
  • Generated Code Refinements: Improved the generated set, batchSet, and transactionSet methods to correctly handle @Id fields, ensuring they are not inadvertently written to the database.
  • Documentation Updates: The README.md files have been updated to reflect the new compatibility requirements and include a new section on development and testing procedures.
  • Test Infrastructure: Added a new run-tests.sh script to streamline the testing process, including integration tests with Firebase emulators and Chromedriver.
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 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. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

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

  1. 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.

Copy link

@gemini-code-assist gemini-code-assist bot left a 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 effectively upgrades the project to support analyzer version 8 and newer SDK versions, which is a crucial maintenance task. The changes are extensive, touching many files to adapt to new APIs from dependencies like analyzer and freezed, and also include several important bug fixes, particularly in the generated code for data serialization and querying. My review has identified a few minor issues: an inconsistency in the README's SDK version example, some leftover debug print statements in a test file, and a small typo in the changelog. Addressing these will improve the overall quality and clarity of the pull request.

dorklein and others added 4 commits August 29, 2025 12:17
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
- Streamlined expect statements in integration tests for better readability.
- Removed unnecessary print statements from collection data and generator files.
- Enhanced code clarity by consolidating multi-line statements into single lines where appropriate.
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
…eodm-flutter into feat/upgrade-analyzer8

merge
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant