Skip to content

Fix import formatting in models.py#1247

Merged
RisingOrange merged 2 commits intoclaude/remove-aqt-import-v1YsXfrom
claude/review-pr-JXYYM
Feb 13, 2026
Merged

Fix import formatting in models.py#1247
RisingOrange merged 2 commits intoclaude/remove-aqt-import-v1YsXfrom
claude/review-pr-JXYYM

Conversation

@RisingOrange
Copy link
Collaborator

Related issues

  • Closes #

Proposed changes

This PR fixes the import statement formatting in ankihub/ankihub_client/models.py by adding a blank line after the standard library imports and before the third-party imports, following PEP 8 style guidelines.

The change improves code readability and consistency by properly separating import groups:

  1. Standard library imports (datetime, enum, typing)
  2. Third-party imports (mashumaro)

How to reproduce

No manual testing needed - this is a code style fix.

Further comments

This is a minor formatting improvement that aligns with PEP 8 conventions for organizing imports. The blank line separates standard library imports from third-party library imports, making the code more readable and maintainable.

https://claude.ai/code/session_01K8GeVjG7MjJzhZMtrzRh48

…orts

Ruff I001 was failing because the typing import ran directly into
the mashumaro import without a blank line separator.

https://claude.ai/code/session_01K8GeVjG7MjJzhZMtrzRh48
Replace `lambda mid: {}` (which would crash with KeyError if the mock
were removed) with a proper empty notetype dict `{"css": "", "tmpls": []}`.
This removes the implicit dependency on the get_media_names_from_notetype
mock and makes each call site self-sufficient.

https://claude.ai/code/session_01K8GeVjG7MjJzhZMtrzRh48
@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @RisingOrange, 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 primarily focuses on improving code style and test maintainability. It addresses import formatting in a core models file to enhance readability and consistency, while also refactoring test helper logic in a client test file to make the test suite clearer and more robust.

Highlights

  • Code Style Improvement: A blank line was added in ankihub/ankihub_client/models.py to separate standard library imports from third-party imports, aligning with PEP 8 guidelines for import formatting.
  • Test Refactoring: In tests/client/test_client.py, an inline lambda function used for creating an empty notetype was refactored into a new static helper method _empty_notetype to improve readability and reusability. Related typing imports were also updated.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Changelog
  • ankihub/ankihub_client/models.py
    • Added a blank line to separate standard library imports from third-party imports, adhering to PEP 8.
  • tests/client/test_client.py
    • Updated typing imports to include Any and Dict.
    • Refactored an inline lambda function into a new static helper method _empty_notetype.
    • Removed an unnecessary mocker.patch call in _upload_media_for_notes_data.
Activity
  • The author, RisingOrange, created this pull request to fix import formatting and refactor test code.
  • The PR description indicates that no manual testing is needed as it's primarily a code style and refactoring change.
  • A link to a Claude AI session was provided by the author, suggesting AI assistance in generating or reviewing the changes.
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 by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

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 pull request 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.

@RisingOrange RisingOrange marked this pull request as ready for review February 13, 2026 12:24
@RisingOrange RisingOrange merged commit b10a74f into claude/remove-aqt-import-v1YsX Feb 13, 2026
5 checks passed
@RisingOrange RisingOrange deleted the claude/review-pr-JXYYM branch February 13, 2026 12:25
RisingOrange added a commit that referenced this pull request Feb 13, 2026
* Remove aqt import from client models.py

Refactor get_media_names_from_notetype to accept a note type dict
instead of an ID, removing the aqt dependency from the client layer.
Add a get_notetype_by_id callback parameter to get_media_names_from_notes_data
so callers in the GUI/business layer provide the lookup function.

https://claude.ai/code/session_01ENEZrvFPchRVdnATauZfo9

* Apply suggestion from @RisingOrange

* Fix import formatting in models.py (#1247)

* Fix import sorting: add blank line between stdlib and third-party imports

Ruff I001 was failing because the typing import ran directly into
the mashumaro import without a blank line separator.

https://claude.ai/code/session_01K8GeVjG7MjJzhZMtrzRh48

* Remove fragile get_media_names_from_notetype mock in client tests

Replace `lambda mid: {}` (which would crash with KeyError if the mock
were removed) with a proper empty notetype dict `{"css": "", "tmpls": []}`.
This removes the implicit dependency on the get_media_names_from_notetype
mock and makes each call site self-sufficient.

https://claude.ai/code/session_01K8GeVjG7MjJzhZMtrzRh48

---------

Co-authored-by: Claude <noreply@anthropic.com>

* fix mypy errors (#1248)

* Fix import sorting: add blank line between stdlib and third-party imports

Ruff I001 was failing because the typing import ran directly into
the mashumaro import without a blank line separator.

https://claude.ai/code/session_01K8GeVjG7MjJzhZMtrzRh48

* Remove fragile get_media_names_from_notetype mock in client tests

Replace `lambda mid: {}` (which would crash with KeyError if the mock
were removed) with a proper empty notetype dict `{"css": "", "tmpls": []}`.
This removes the implicit dependency on the get_media_names_from_notetype
mock and makes each call site self-sufficient.

https://claude.ai/code/session_01K8GeVjG7MjJzhZMtrzRh48

* Fix mypy errors: wrap mid with NotetypeId() for ModelManager.get() calls

https://claude.ai/code/session_01K8GeVjG7MjJzhZMtrzRh48

---------

Co-authored-by: Claude <noreply@anthropic.com>

---------

Co-authored-by: Claude <noreply@anthropic.com>
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.

2 participants